From a29f665769ab79a119f0f3670734ff743c42e1a1 Mon Sep 17 00:00:00 2001 From: Skyler Hawthorne Date: Sun, 19 May 2024 00:37:33 -0400 Subject: [PATCH 001/519] Insert delay between shifted chars in send_string_with_delay for AVR (#23673) --- quantum/send_string/send_string.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/quantum/send_string/send_string.c b/quantum/send_string/send_string.c index 8b59c19219f..44c5ec5ab99 100644 --- a/quantum/send_string/send_string.c +++ b/quantum/send_string/send_string.c @@ -294,7 +294,7 @@ void tap_random_base64(void) { #if defined(__AVR__) void send_string_P(const char *string) { - send_string_with_delay_P(string, 0); + send_string_with_delay_P(string, TAP_CODE_DELAY); } void send_string_with_delay_P(const char *string, uint8_t interval) { @@ -303,6 +303,7 @@ void send_string_with_delay_P(const char *string, uint8_t interval) { if (!ascii_code) break; if (ascii_code == SS_QMK_PREFIX) { ascii_code = pgm_read_byte(++string); + if (ascii_code == SS_TAP_CODE) { // tap uint8_t keycode = pgm_read_byte(++string); @@ -319,24 +320,19 @@ void send_string_with_delay_P(const char *string, uint8_t interval) { // delay int ms = 0; uint8_t keycode = pgm_read_byte(++string); + while (isdigit(keycode)) { ms *= 10; ms += keycode - '0'; keycode = pgm_read_byte(++string); } - while (ms--) - wait_ms(1); + wait_ms(ms); } } else { - send_char(ascii_code); + send_char_with_delay(ascii_code, interval); } + ++string; - // interval - { - uint8_t ms = interval; - while (ms--) - wait_ms(1); - } } } #endif From dd56bee9e13979a140b2e691bf7ab8a0ec9a066d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=83=95=E3=82=A3=E3=83=AB=E3=82=BF=E3=83=BC=E3=83=9A?= =?UTF-8?q?=E3=83=BC=E3=83=91=E3=83=BC?= <76888457+filterpaper@users.noreply.github.com> Date: Sun, 19 May 2024 12:41:03 +0800 Subject: [PATCH 002/519] [Doc] Reference advance keycodes in combos (#23666) --- docs/feature_combo.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/feature_combo.md b/docs/feature_combo.md index 61f8b2ee197..496e97bd3c1 100644 --- a/docs/feature_combo.md +++ b/docs/feature_combo.md @@ -17,11 +17,12 @@ combo_t key_combos[] = { This will send "Escape" if you hit the A and B keys, and Ctrl+Z when you hit the C and D keys. -## Mod-Tap Support -[Mod-Tap](mod_tap.md) feature is also supported together with combos. You will need to use the full Mod-Tap keycode in the combo definition, e.g.: +## Advanced Keycodes Support +Advanced keycodes, such as [Mod-Tap](mod_tap.md) and [Tap Dance](feature_tap_dance.md) are also supported together with combos. If you use these advanced keycodes in your keymap, you will need to place the full keycode in the combo definition, e.g.: ```c const uint16_t PROGMEM test_combo1[] = {LSFT_T(KC_A), LT(1, KC_B), COMBO_END}; +const uint16_t PROGMEM test_combo2[] = {TD(TD_ESC_CAPS), KC_F1, COMBO_END}; ``` ## Overlapping Combos From 5bb01794ee51f984d5bd904a1234da89a5762149 Mon Sep 17 00:00:00 2001 From: Coby Sher <63015754+CobyPear@users.noreply.github.com> Date: Sat, 18 May 2024 23:51:36 -0500 Subject: [PATCH 003/519] Add sleepy_craft_studios sleepy_keeb (#23659) Co-authored-by: Duncan Sutherland --- .../sleepy_keeb/info.json | 92 +++++++++++++++++++ .../sleepy_keeb/keymaps/default/keymap.c | 31 +++++++ .../sleepy_keeb/keymaps/via/keymap.c | 31 +++++++ .../sleepy_keeb/keymaps/via/rules.mk | 1 + .../sleepy_keeb/readme.md | 27 ++++++ .../sleepy_craft_studios/sleepy_keeb/rules.mk | 1 + 6 files changed, 183 insertions(+) create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb/info.json create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/default/keymap.c create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/via/keymap.c create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/via/rules.mk create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb/readme.md create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb/rules.mk diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb/info.json b/keyboards/sleepy_craft_studios/sleepy_keeb/info.json new file mode 100644 index 00000000000..635a780ed4a --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb/info.json @@ -0,0 +1,92 @@ +{ + "manufacturer": "Sleepy Craft Studios", + "keyboard_name": "sleepy_keeb", + "maintainer": "Sleepy Craft Studios", + "development_board": "promicro", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgblight": true + }, + "matrix_pins": { + "cols": ["D7", "E6", "B4", "B5", "F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], + "rows": ["D1", "D0", "D4", "C6"] + }, + "rgblight": { + "animations": { + "alternating": true, + "breathing": true, + "rainbow_mood": true, + "rainbow_swirl": true, + "static_gradient": true, + "twinkle": true + }, + "led_count": 17 + }, + "url": "https://sleepycraftstudios.com/downloads/sleepy-keeb", + "usb": { + "device_version": "1.0.0", + "pid": "0x0001", + "vid": "0x7373" + }, + "ws2812": { + "pin": "D2" + }, + "community_layouts": ["planck_mit"], + "layouts": { + "LAYOUT_planck_mit": { + "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": [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": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + {"matrix": [2, 6], "x": 6, "y": 2}, + {"matrix": [2, 7], "x": 7, "y": 2}, + {"matrix": [2, 8], "x": 8, "y": 2}, + {"matrix": [2, 9], "x": 9, "y": 2}, + {"matrix": [2, 10], "x": 10, "y": 2}, + {"matrix": [2, 11], "x": 11, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 6], "x": 5, "y": 3, "w": 2}, + {"matrix": [3, 7], "x": 7, "y": 3}, + {"matrix": [3, 8], "x": 8, "y": 3}, + {"matrix": [3, 9], "x": 9, "y": 3}, + {"matrix": [3, 10], "x": 10, "y": 3}, + {"matrix": [3, 11], "x": 11, "y": 3} + ] + } + } +} diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/default/keymap.c b/keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/default/keymap.c new file mode 100644 index 00000000000..1082b0afa6b --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/default/keymap.c @@ -0,0 +1,31 @@ +// Copyright 2024 Sleepy Craft Studios +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum keeb_layers { + _BASE, + _RAISE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_planck_mit( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_GRV, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, MO(2), KC_UP, KC_DOWN, KC_LEFT, KC_RGHT + ), + [_RAISE] = LAYOUT_planck_mit( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, RGB_MOD, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, + _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + [_FN] = LAYOUT_planck_mit( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, RGB_TOG, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), +}; diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/via/keymap.c b/keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/via/keymap.c new file mode 100644 index 00000000000..1082b0afa6b --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/via/keymap.c @@ -0,0 +1,31 @@ +// Copyright 2024 Sleepy Craft Studios +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum keeb_layers { + _BASE, + _RAISE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_planck_mit( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_GRV, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, MO(2), KC_UP, KC_DOWN, KC_LEFT, KC_RGHT + ), + [_RAISE] = LAYOUT_planck_mit( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, RGB_MOD, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, + _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + [_FN] = LAYOUT_planck_mit( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, RGB_TOG, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), +}; diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/via/rules.mk b/keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb/readme.md b/keyboards/sleepy_craft_studios/sleepy_keeb/readme.md new file mode 100644 index 00000000000..9e99b9002a7 --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb/readme.md @@ -0,0 +1,27 @@ +# Sleepy Keeb + +![sleepy_keeb](https://i.imgur.com/y3cessF.jpeg) + +The Sleepy Keeb is a hand-wired keyboard based on the 4x12 Planck layout. The Sleepy Keeb integrates hot-swap socket and diode holders into the plate for easier building. + +- Keyboard Maintainer: [Sleepy Craft Studios](https://github.com/sleepy-craft-studios) +- Hardware Supported: Pro Micro development board (and clones/adapations of) +- Hardware Availability: [Sleepy Craft Studios Shop](https://sleepycraftstudios.com/shop) for kits and full builds, [Sleepy Craft Studios Downloads](https://sleepycraftstudios.com/downloads) for CC-BY-SA-NC licensed stl files for 3D printing. + +Make example for this keyboard (after setting up your build environment): + + make sleepy_keeb:default + +Flashing example for this keyboard: + + make sleepy_keeb: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 diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb/rules.mk b/keyboards/sleepy_craft_studios/sleepy_keeb/rules.mk new file mode 100644 index 00000000000..6e7633bfe01 --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank From eab07b865568fb11198889451a28b33b75dfca81 Mon Sep 17 00:00:00 2001 From: sotoba Date: Sun, 19 May 2024 13:51:52 +0900 Subject: [PATCH 004/519] Add via support for craftwalk (#23658) Co-authored-by: Less/Rikki <86894501+lesshonor@users.noreply.github.com> --- keyboards/craftwalk/keyboard.json | 8 ++-- keyboards/craftwalk/keymaps/via/keymap.c | 47 ++++++++++++++++++++++++ keyboards/craftwalk/keymaps/via/rules.mk | 2 + 3 files changed, 54 insertions(+), 3 deletions(-) create mode 100644 keyboards/craftwalk/keymaps/via/keymap.c create mode 100644 keyboards/craftwalk/keymaps/via/rules.mk diff --git a/keyboards/craftwalk/keyboard.json b/keyboards/craftwalk/keyboard.json index e1cee6d56b9..0458c8f8c46 100644 --- a/keyboards/craftwalk/keyboard.json +++ b/keyboards/craftwalk/keyboard.json @@ -4,10 +4,13 @@ "url": "https://github.com/sotoba/craftwalk", "maintainer": "sotoba", "usb": { - "vid": "0xFEED", + "vid": "0x7364", "pid": "0x2E8F", "device_version": "0.0.1" }, + "bootmagic": { + "matrix": [1, 0] + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, @@ -40,8 +43,7 @@ "rows": ["F6", "B3", "B5"] }, "diode_direction": "COL2ROW", - "processor": "atmega32u4", - "bootloader": "caterina", + "development_board": "promicro", "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/craftwalk/keymaps/via/keymap.c b/keyboards/craftwalk/keymaps/via/keymap.c new file mode 100644 index 00000000000..ceb01d1e2be --- /dev/null +++ b/keyboards/craftwalk/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2020 sotoba + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _NUM, + _ADJUST +}; + +#define MO_NUM MO(_NUM) +#define MO_ADJ MO(_ADJUST) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT( + KC_Q, KC_W, KC_E, + KC_LCTL, KC_A, KC_S, KC_D, + KC_LSFT, MO_ADJ, KC_WH_U, KC_WH_D, KC_F, MO_NUM, KC_SPC + ), + /* Number */ + [_NUM] = LAYOUT( + KC_7, KC_8, KC_9, + KC_ESC, KC_4, KC_5, KC_6, + KC_TRNS, KC_1, KC_2, KC_3, KC_F3, KC_TRNS, KC_TRNS + ), + /* Adjust */ + [_ADJUST] = LAYOUT( + RGB_HUI, RGB_SAI, RGB_VAI, + QK_BOOT, RGB_HUD, RGB_SAD, RGB_VAD, + RGB_M_T, KC_TRNS, RGB_MOD, RGB_RMOD,RGB_TOG, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/craftwalk/keymaps/via/rules.mk b/keyboards/craftwalk/keymaps/via/rules.mk new file mode 100644 index 00000000000..36b7ba9cbc9 --- /dev/null +++ b/keyboards/craftwalk/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes From 2420487e55fb922e93fae846cee1a73244358019 Mon Sep 17 00:00:00 2001 From: blindassassin111 <38090555+blindassassin111@users.noreply.github.com> Date: Sun, 19 May 2024 00:19:32 -0500 Subject: [PATCH 005/519] [Keyboard] Adding TX_Roundup_Pad PCB (#23526) Co-authored-by: jack <0x6a73@protonmail.com> Co-authored-by: Drashna Jaelre --- keyboards/viktus/tx_roundup_pad/info.json | 54 +++++++++++++++++++ .../tx_roundup_pad/keymaps/default/keymap.c | 28 ++++++++++ .../tx_roundup_pad/keymaps/via/keymap.c | 28 ++++++++++ .../tx_roundup_pad/keymaps/via/rules.mk | 1 + keyboards/viktus/tx_roundup_pad/readme.md | 27 ++++++++++ keyboards/viktus/tx_roundup_pad/rules.mk | 1 + 6 files changed, 139 insertions(+) create mode 100644 keyboards/viktus/tx_roundup_pad/info.json create mode 100644 keyboards/viktus/tx_roundup_pad/keymaps/default/keymap.c create mode 100644 keyboards/viktus/tx_roundup_pad/keymaps/via/keymap.c create mode 100644 keyboards/viktus/tx_roundup_pad/keymaps/via/rules.mk create mode 100644 keyboards/viktus/tx_roundup_pad/readme.md create mode 100644 keyboards/viktus/tx_roundup_pad/rules.mk diff --git a/keyboards/viktus/tx_roundup_pad/info.json b/keyboards/viktus/tx_roundup_pad/info.json new file mode 100644 index 00000000000..c4b013bb0ef --- /dev/null +++ b/keyboards/viktus/tx_roundup_pad/info.json @@ -0,0 +1,54 @@ +{ + "manufacturer": "Viktus Design LLC", + "keyboard_name": "TX Roundup Pad", + "maintainer": "BlindAssassin111", + "build": { + "lto": true + }, + "development_board": "promicro", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["F7", "F6", "F5", "F4"], + "rows": ["B5", "B4", "E6", "D7", "C6", "D4"] + }, + "url": "https://viktus.design", + "usb": { + "device_version": "1.0.0", + "pid": "0x5458", + "vid": "0x5644" + }, + "community_layouts": [ "numpad_6x4" ], + "layouts": { + "LAYOUT_numpad_6x4": { + "layout": [ + {"label": "K00", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "K01", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "K02", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "K03", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "K10", "matrix": [1, 0], "x": 0, "y": 1}, + {"label": "K11", "matrix": [1, 1], "x": 1, "y": 1}, + {"label": "K12", "matrix": [1, 2], "x": 2, "y": 1}, + {"label": "K13", "matrix": [1, 3], "x": 3, "y": 1}, + {"label": "K20", "matrix": [2, 0], "x": 0, "y": 2}, + {"label": "K21", "matrix": [2, 1], "x": 1, "y": 2}, + {"label": "K22", "matrix": [2, 2], "x": 2, "y": 2}, + {"label": "K30", "matrix": [3, 0], "x": 0, "y": 3}, + {"label": "K31", "matrix": [3, 1], "x": 1, "y": 3}, + {"label": "K32", "matrix": [3, 2], "x": 2, "y": 3}, + {"label": "K23", "matrix": [2, 3], "x": 3, "y": 2, "h": 2}, + {"label": "K40", "matrix": [4, 0], "x": 0, "y": 4}, + {"label": "K41", "matrix": [4, 1], "x": 1, "y": 4}, + {"label": "K42", "matrix": [4, 2], "x": 2, "y": 4}, + {"label": "K51", "matrix": [5, 1], "x": 0, "y": 5, "w": 2}, + {"label": "K52", "matrix": [5, 2], "x": 2, "y": 5}, + {"label": "K53", "matrix": [5, 3], "x": 3, "y": 4, "h": 2} + ] + } + } +} diff --git a/keyboards/viktus/tx_roundup_pad/keymaps/default/keymap.c b/keyboards/viktus/tx_roundup_pad/keymaps/default/keymap.c new file mode 100644 index 00000000000..50d4c092845 --- /dev/null +++ b/keyboards/viktus/tx_roundup_pad/keymaps/default/keymap.c @@ -0,0 +1,28 @@ +/* Copyright 2024 Viktus Design 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_numpad_6x4( + KC_F1, KC_F2, KC_F3, KC_F4, + KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, + KC_P0, KC_PDOT, KC_PENT + ) +}; diff --git a/keyboards/viktus/tx_roundup_pad/keymaps/via/keymap.c b/keyboards/viktus/tx_roundup_pad/keymaps/via/keymap.c new file mode 100644 index 00000000000..50d4c092845 --- /dev/null +++ b/keyboards/viktus/tx_roundup_pad/keymaps/via/keymap.c @@ -0,0 +1,28 @@ +/* Copyright 2024 Viktus Design 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_numpad_6x4( + KC_F1, KC_F2, KC_F3, KC_F4, + KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, + KC_P0, KC_PDOT, KC_PENT + ) +}; diff --git a/keyboards/viktus/tx_roundup_pad/keymaps/via/rules.mk b/keyboards/viktus/tx_roundup_pad/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/viktus/tx_roundup_pad/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/viktus/tx_roundup_pad/readme.md b/keyboards/viktus/tx_roundup_pad/readme.md new file mode 100644 index 00000000000..ab034ed8c5a --- /dev/null +++ b/keyboards/viktus/tx_roundup_pad/readme.md @@ -0,0 +1,27 @@ +# TX Roundup Pad + +![tx_roundup_pad](https://i.imgur.com/7O9CkPw.jpeg) + +The PCB badge for the April 27, 2024 Texas Roundup meet in Dallas, Tx. + +- Keyboard Maintainer: BlindAssassin111 +- Hardware Supported: TX Roundup Pad Badge PCB +- Hardware Availability: At meetup only + +Make example for this keyboard (after setting up your build environment): + + make viktus/tx_roundup_pad:default + +Flashing example for this keyboard: + + make viktus/tx_roundup_pad: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 diff --git a/keyboards/viktus/tx_roundup_pad/rules.mk b/keyboards/viktus/tx_roundup_pad/rules.mk new file mode 100644 index 00000000000..6e7633bfe01 --- /dev/null +++ b/keyboards/viktus/tx_roundup_pad/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank From 93023511ab0f334bb0394d279b9175d46fe1b3c6 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 19 May 2024 15:23:24 +1000 Subject: [PATCH 006/519] macOS install script: remove `brew upgrade --ignore-pinned` (#23735) --- util/install/macos.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/install/macos.sh b/util/install/macos.sh index 8890c5a3f08..a1b79fe8683 100755 --- a/util/install/macos.sh +++ b/util/install/macos.sh @@ -9,7 +9,7 @@ _qmk_install_prepare() { return 1 fi - brew update && brew upgrade --formulae --ignore-pinned + brew update && brew upgrade --formulae } _qmk_install() { From 2fd56317763e8b3b73f0db7488ef42a70f5b946e Mon Sep 17 00:00:00 2001 From: gskygithub <106651989+gskygithub@users.noreply.github.com> Date: Sun, 19 May 2024 13:25:19 +0800 Subject: [PATCH 007/519] [Keyboard] Add Projectd 75 iso (#21942) Co-authored-by: Ryan Co-authored-by: gksygithub <106651989+gksygithub@users.noreply.github.com> --- keyboards/projectd/75/iso/config.h | 30 ++ keyboards/projectd/75/iso/halconf.h | 23 ++ keyboards/projectd/75/iso/info.json | 287 ++++++++++++++++++ keyboards/projectd/75/iso/iso.c | 206 +++++++++++++ keyboards/projectd/75/iso/iso.h | 27 ++ .../projectd/75/iso/keymaps/default/keymap.c | 46 +++ .../projectd/75/iso/keymaps/via/keymap.c | 46 +++ .../projectd/75/iso/keymaps/via/rules.mk | 1 + keyboards/projectd/75/iso/mcuconf.h | 25 ++ keyboards/projectd/75/iso/readme.md | 25 ++ keyboards/projectd/75/iso/rules.mk | 1 + 11 files changed, 717 insertions(+) create mode 100644 keyboards/projectd/75/iso/config.h create mode 100644 keyboards/projectd/75/iso/halconf.h create mode 100644 keyboards/projectd/75/iso/info.json create mode 100644 keyboards/projectd/75/iso/iso.c create mode 100644 keyboards/projectd/75/iso/iso.h create mode 100644 keyboards/projectd/75/iso/keymaps/default/keymap.c create mode 100644 keyboards/projectd/75/iso/keymaps/via/keymap.c create mode 100644 keyboards/projectd/75/iso/keymaps/via/rules.mk create mode 100644 keyboards/projectd/75/iso/mcuconf.h create mode 100644 keyboards/projectd/75/iso/readme.md create mode 100644 keyboards/projectd/75/iso/rules.mk diff --git a/keyboards/projectd/75/iso/config.h b/keyboards/projectd/75/iso/config.h new file mode 100644 index 00000000000..282e20a8e2b --- /dev/null +++ b/keyboards/projectd/75/iso/config.h @@ -0,0 +1,30 @@ +/* Copyright 2023 GSKY + * + * 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 . + */ + +#pragma once + +/* External spi flash */ +#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14 + +/* SPI Config for LED Driver */ +#define SPI_DRIVER SPIDQ +#define SPI_SCK_PIN A5 +#define SPI_MOSI_PIN A7 +#define SPI_MISO_PIN A6 + +#define AW20216S_CS_PIN_1 A15 +#define AW20216S_CS_PIN_2 B15 +#define AW20216S_EN_PIN C13 diff --git a/keyboards/projectd/75/iso/halconf.h b/keyboards/projectd/75/iso/halconf.h new file mode 100644 index 00000000000..64a184eb924 --- /dev/null +++ b/keyboards/projectd/75/iso/halconf.h @@ -0,0 +1,23 @@ +/* Copyright (C) 2023 Westberry Technology (ChangZhou) Corp., Ltd + * + * 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 . + */ + +#pragma once + +#define HAL_USE_SPI TRUE +#define SPI_USE_WAIT TRUE +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD + +#include_next diff --git a/keyboards/projectd/75/iso/info.json b/keyboards/projectd/75/iso/info.json new file mode 100644 index 00000000000..d8615000316 --- /dev/null +++ b/keyboards/projectd/75/iso/info.json @@ -0,0 +1,287 @@ +{ + "manufacturer": "ProjectD", + "keyboard_name": "ProjectD 75% ISO", + "maintainer": "Gsky", + "bootloader": "wb32-dfu", + "bootmagic": { + "matrix": [1, 3] + }, + "diode_direction": "COL2ROW", + "dynamic_keymap": { + "layer_count": 10 + }, + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "matrix_pins": { + "cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"], + "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10"] + }, + "processor": "WB32FQ95", + "qmk": { + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } + }, + "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, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "rainbow_moving_chevron": 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_fractal": true, + "pixel_flow": true, + "pixel_rain": 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 + }, + "center_point": [78, 20], + "driver": "aw20216s", + "sleep": true, + "layout": [ + { "flags": 4, "matrix": [1, 3], "x": 0, "y": 0 }, + { "flags": 4, "matrix": [2, 6], "x": 12.5, "y": 0 }, + { "flags": 4, "matrix": [3, 6], "x": 22.5, "y": 0 }, + { "flags": 4, "matrix": [3, 1], "x": 32.5, "y": 0 }, + { "flags": 4, "matrix": [3, 3], "x": 42.5, "y": 0 }, + { "flags": 4, "matrix": [0, 7], "x": 55, "y": 0 }, + { "flags": 4, "matrix": [6, 3], "x": 65, "y": 0 }, + { "flags": 4, "matrix": [7, 1], "x": 75, "y": 0 }, + { "flags": 4, "matrix": [7, 6], "x": 85, "y": 0 }, + { "flags": 4, "matrix": [10, 6], "x": 97.5, "y": 0 }, + { "flags": 4, "matrix": [10, 7], "x": 107.5, "y": 0 }, + { "flags": 4, "matrix": [10, 3], "x": 117.5, "y": 0 }, + { "flags": 4, "matrix": [10, 5], "x": 127.5, "y": 0 }, + { "flags": 4, "matrix": [9, 7], "x": 140, "y": 0 }, + { "flags": 4, "matrix": [6, 5], "x": 155, "y": 0 }, + + { "flags": 4, "matrix": [1, 6], "x": 0, "y": 12.5 }, + { "flags": 4, "matrix": [1, 7], "x": 10, "y": 12.5 }, + { "flags": 4, "matrix": [2, 7], "x": 20, "y": 12.5 }, + { "flags": 4, "matrix": [3, 7], "x": 30, "y": 12.5 }, + { "flags": 4, "matrix": [4, 7], "x": 40, "y": 12.5 }, + { "flags": 4, "matrix": [4, 6], "x": 50, "y": 12.5 }, + { "flags": 4, "matrix": [5, 6], "x": 60, "y": 12.5 }, + { "flags": 4, "matrix": [5, 7], "x": 70, "y": 12.5 }, + { "flags": 4, "matrix": [6, 7], "x": 80, "y": 12.5 }, + { "flags": 4, "matrix": [7, 7], "x": 90, "y": 12.5 }, + { "flags": 4, "matrix": [8, 7], "x": 100, "y": 12.5 }, + { "flags": 4, "matrix": [8, 6], "x": 110, "y": 12.5 }, + { "flags": 4, "matrix": [6, 6], "x": 120, "y": 12.5 }, + { "flags": 4, "matrix": [10, 1], "x": 130, "y": 12.5 }, + { "flags": 4, "matrix": [0, 2], "x": 155, "y": 12.5 }, + + { "flags": 4, "matrix": [1, 1], "x": 0, "y": 22.5 }, + { "flags": 4, "matrix": [1, 0], "x": 15, "y": 22.5 }, + { "flags": 4, "matrix": [2, 0], "x": 25, "y": 22.5 }, + { "flags": 4, "matrix": [3, 0], "x": 35, "y": 22.5 }, + { "flags": 4, "matrix": [4, 0], "x": 45, "y": 22.5 }, + { "flags": 4, "matrix": [4, 1], "x": 55, "y": 22.5 }, + { "flags": 4, "matrix": [5, 1], "x": 65, "y": 22.5 }, + { "flags": 4, "matrix": [5, 0], "x": 75, "y": 22.5 }, + { "flags": 4, "matrix": [6, 0], "x": 85, "y": 22.5 }, + { "flags": 4, "matrix": [7, 0], "x": 95, "y": 22.5 }, + { "flags": 4, "matrix": [8, 0], "x": 105, "y": 22.5 }, + { "flags": 4, "matrix": [8, 1], "x": 115, "y": 22.5 }, + { "flags": 4, "matrix": [6, 1], "x": 125, "y": 22.5 }, + { "flags": 4, "matrix": [1, 5], "x": 155.5, "y": 22.5 }, + + { "flags": 8, "matrix": [2, 1], "x": 0, "y": 32.5 }, + { "flags": 4, "matrix": [1, 2], "x": 17.5, "y": 32.5 }, + { "flags": 4, "matrix": [2, 2], "x": 27.5, "y": 32.5 }, + { "flags": 4, "matrix": [3, 2], "x": 37.5, "y": 32.5 }, + { "flags": 4, "matrix": [4, 2], "x": 47.5, "y": 32.5 }, + { "flags": 4, "matrix": [4, 3], "x": 57.5, "y": 32.5 }, + { "flags": 4, "matrix": [5, 3], "x": 67.5, "y": 32.5 }, + { "flags": 4, "matrix": [5, 2], "x": 77.5, "y": 32.5 }, + { "flags": 4, "matrix": [6, 2], "x": 87.5, "y": 32.5 }, + { "flags": 4, "matrix": [7, 2], "x": 97.5, "y": 32.5 }, + { "flags": 4, "matrix": [8, 2], "x": 107.5, "y": 32.5 }, + { "flags": 4, "matrix": [8, 3], "x": 117.5, "y": 32.5 }, + { "flags": 4, "matrix": [10, 2], "x": 127.5, "y": 32.5 }, + { "flags": 4, "matrix": [10, 4], "x": 137.5, "y": 22.5 }, + { "flags": 4, "matrix": [2, 5], "x": 155.5, "y": 32.5 }, + + { "flags": 4, "matrix": [0, 0], "x": 0, "y": 42.5 }, + { "flags": 4, "matrix": [0, 1], "x": 12.5, "y": 42.5 }, + { "flags": 4, "matrix": [1, 4], "x": 22.5, "y": 42.5 }, + { "flags": 4, "matrix": [2, 4], "x": 32.5, "y": 42.5 }, + { "flags": 4, "matrix": [3, 4], "x": 42.5, "y": 42.5 }, + { "flags": 4, "matrix": [4, 4], "x": 52.5, "y": 42.5 }, + { "flags": 4, "matrix": [4, 5], "x": 62.5, "y": 42.5 }, + { "flags": 4, "matrix": [5, 5], "x": 72.5, "y": 42.5 }, + { "flags": 4, "matrix": [5, 4], "x": 82.5, "y": 42.5 }, + { "flags": 4, "matrix": [6, 4], "x": 92.5, "y": 42.5 }, + { "flags": 4, "matrix": [7, 4], "x": 102.5, "y": 42.5 }, + { "flags": 4, "matrix": [8, 5], "x": 112.5, "y": 42.5 }, + { "flags": 4, "matrix": [9, 1], "x": 122.5, "y": 42.5 }, + { "flags": 4, "matrix": [3, 5], "x": 142.5, "y": 45 }, + { "flags": 4, "matrix": [7, 5], "x": 155, "y": 42.5 }, + + { "flags": 4, "matrix": [0, 6], "x": 0, "y": 52.5 }, + { "flags": 4, "matrix": [9, 0], "x": 12.5, "y": 52.5 }, + { "flags": 4, "matrix": [9, 3], "x": 25, "y": 52.5 }, + { "flags": 4, "x": 61.5, "y": 52.5 }, + { "flags": 4, "x": 62.5, "y": 52.5 }, + { "flags": 4, "matrix": [9, 4], "x": 65, "y": 52.5 }, + { "flags": 4, "x": 67.5, "y": 52.5 }, + { "flags": 4, "x": 68.5, "y": 52.5 }, + { "flags": 4, "matrix": [9, 5], "x": 100, "y": 52.5 }, + { "flags": 4, "matrix": [9, 2], "x": 110, "y": 52.5 }, + { "flags": 4, "matrix": [0, 4], "x": 120, "y": 52.5 }, + { "flags": 4, "matrix": [0, 3], "x": 132.5, "y": 52.5 }, + { "flags": 4, "matrix": [7, 3], "x": 142.5, "y": 52.5 }, + { "flags": 4, "matrix": [0, 5], "x": 152.5, "y": 52.5 } + ] + }, + "url": "", + "usb": { + "device_version": "0.0.2", + "pid": "0x0011", + "vid": "0x3233" + }, + "eeprom": { + "driver": "wear_leveling", + "wear_leveling": { + "driver": "spi_flash", + "backing_size": 4096 + } + }, + "layouts": { + "LAYOUT": { + "layout": [ + { "label": "Esc", "matrix": [1, 3], "x": 0, "y": 0 }, + { "label": "F1", "matrix": [2, 6], "x": 1.25, "y": 0 }, + { "label": "F2", "matrix": [3, 6], "x": 2.25, "y": 0 }, + { "label": "F3", "matrix": [3, 1], "x": 3.25, "y": 0 }, + { "label": "F4", "matrix": [3, 3], "x": 4.25, "y": 0 }, + { "label": "F5", "matrix": [0, 7], "x": 5.5, "y": 0 }, + { "label": "F6", "matrix": [6, 3], "x": 6.5, "y": 0 }, + { "label": "F7", "matrix": [7, 1], "x": 7.5, "y": 0 }, + { "label": "F8", "matrix": [7, 6], "x": 8.5, "y": 0 }, + { "label": "F9", "matrix": [10, 6], "x": 9.75, "y": 0 }, + { "label": "F10", "matrix": [10, 7], "x": 10.75, "y": 0 }, + { "label": "F11", "matrix": [10, 3], "x": 11.75, "y": 0 }, + { "label": "F12", "matrix": [10, 5], "x": 12.75, "y": 0 }, + { "label": "PrintScreen", "matrix": [9, 7], "x": 14, "y": 0 }, + { "label": "Delete", "matrix": [6, 5], "x": 15.5, "y": 0 }, + + { "label": "`", "matrix": [1, 6], "x": 0, "y": 1.25 }, + { "label": "1", "matrix": [1, 7], "x": 1, "y": 1.25 }, + { "label": "2", "matrix": [2, 7], "x": 2, "y": 1.25 }, + { "label": "3", "matrix": [3, 7], "x": 3, "y": 1.25 }, + { "label": "4", "matrix": [4, 7], "x": 4, "y": 1.25 }, + { "label": "5", "matrix": [4, 6], "x": 5, "y": 1.25 }, + { "label": "6", "matrix": [5, 6], "x": 6, "y": 1.25 }, + { "label": "7", "matrix": [5, 7], "x": 7, "y": 1.25 }, + { "label": "8", "matrix": [6, 7], "x": 8, "y": 1.25 }, + { "label": "9", "matrix": [7, 7], "x": 9, "y": 1.25 }, + { "label": "0", "matrix": [8, 7], "x": 10, "y": 1.25 }, + { "label": "-", "matrix": [8, 6], "x": 11, "y": 1.25 }, + { "label": "=", "matrix": [6, 6], "x": 12, "y": 1.25 }, + { "label": "Backspace", "matrix": [10, 1], "w": 2, "x": 13, "y": 1.25 }, + { "label": "Home", "matrix": [0, 2], "x": 15.5, "y": 1.25 }, + + { "label": "Tab", "matrix": [1, 1], "w": 1.5, "x": 0, "y": 2.25 }, + { "label": "Q", "matrix": [1, 0], "x": 1.5, "y": 2.25 }, + { "label": "W", "matrix": [2, 0], "x": 2.5, "y": 2.25 }, + { "label": "E", "matrix": [3, 0], "x": 3.5, "y": 2.25 }, + { "label": "R", "matrix": [4, 0], "x": 4.5, "y": 2.25 }, + { "label": "T", "matrix": [4, 1], "x": 5.5, "y": 2.25 }, + { "label": "Y", "matrix": [5, 1], "x": 6.5, "y": 2.25 }, + { "label": "U", "matrix": [5, 0], "x": 7.5, "y": 2.25 }, + { "label": "I", "matrix": [6, 0], "x": 8.5, "y": 2.25 }, + { "label": "O", "matrix": [7, 0], "x": 9.5, "y": 2.25 }, + { "label": "P", "matrix": [8, 0], "x": 10.5, "y": 2.25 }, + { "label": "[", "matrix": [8, 1], "x": 11.5, "y": 2.25 }, + { "label": "]", "matrix": [6, 1], "x": 12.5, "y": 2.25 }, + { "label": "PGUP", "matrix": [1, 5], "x": 15.5, "y": 2.25 }, + + { "label": "Caps Lock", "matrix": [2, 1], "w": 1.75, "x": 0, "y": 3.25 }, + { "label": "A", "matrix": [1, 2], "x": 1.75, "y": 3.25 }, + { "label": "S", "matrix": [2, 2], "x": 2.75, "y": 3.25 }, + { "label": "D", "matrix": [3, 2], "x": 3.75, "y": 3.25 }, + { "label": "F", "matrix": [4, 2], "x": 4.75, "y": 3.25 }, + { "label": "G", "matrix": [4, 3], "x": 5.75, "y": 3.25 }, + { "label": "H", "matrix": [5, 3], "x": 6.75, "y": 3.25 }, + { "label": "J", "matrix": [5, 2], "x": 7.75, "y": 3.25 }, + { "label": "K", "matrix": [6, 2], "x": 8.75, "y": 3.25 }, + { "label": "L", "matrix": [7, 2], "x": 9.75, "y": 3.25 }, + { "label": ";", "matrix": [8, 2], "x": 10.75, "y": 3.25 }, + { "label": "'", "matrix": [8, 3], "x": 11.75, "y": 3.25 }, + { "label": "|", "matrix": [10, 2], "x": 12.75, "y": 3.25 }, + { "label": "ENTER", "matrix": [10, 4], "w": 1.25, "h": 2, "x": 13.75, "y": 2.25 }, + { "label": "PGDN", "matrix": [2, 5], "x": 15.5, "y": 3.25 }, + + { "label": "L Shift", "matrix": [0, 0], "w": 1.25, "x": 0, "y": 4.25 }, + { "label": "|", "matrix": [0, 1], "x": 1.25, "y": 4.25 }, + { "label": "Z", "matrix": [1, 4], "x": 2.25, "y": 4.25 }, + { "label": "X", "matrix": [2, 4], "x": 3.25, "y": 4.25 }, + { "label": "C", "matrix": [3, 4], "x": 4.25, "y": 4.25 }, + { "label": "V", "matrix": [4, 4], "x": 5.25, "y": 4.25 }, + { "label": "B", "matrix": [4, 5], "x": 6.25, "y": 4.25 }, + { "label": "N", "matrix": [5, 5], "x": 7.25, "y": 4.25 }, + { "label": "M", "matrix": [5, 4], "x": 8.25, "y": 4.25 }, + { "label": ",", "matrix": [6, 4], "x": 9.25, "y": 4.25 }, + { "label": ".", "matrix": [7, 4], "x": 10.25, "y": 4.25 }, + { "label": "/", "matrix": [8, 5], "x": 11.25, "y": 4.25 }, + { "label": "R Shift", "matrix": [9, 1], "w": 1.75, "x": 12.25, "y": 4.25 }, + { "label": "Up", "matrix": [3, 5], "x": 14.25, "y": 4.5 }, + { "label": "End", "matrix": [7, 5], "x": 15.5, "y": 4.25 }, + + { "label": "L Ctrl", "matrix": [0, 6], "w": 1.25, "x": 0, "y": 5.25 }, + { "label": "L Win", "matrix": [9, 0], "w": 1.25, "x": 1.25, "y": 5.25 }, + { "label": "L Alt", "matrix": [9, 3], "w": 1.25, "x": 2.5, "y": 5.25 }, + { "label": "Space", "matrix": [9, 4], "w": 6.25, "x": 3.75, "y": 5.25 }, + { "label": "R Alt", "matrix": [9, 5], "x": 10, "y": 5.25 }, + { "label": "FN", "matrix": [9, 2], "x": 11, "y": 5.25 }, + { "label": "R Ctrl", "matrix": [0, 4], "x": 12, "y": 5.25 }, + { "label": "Left", "matrix": [0, 3], "x": 13.25, "y": 5.5 }, + { "label": "Down", "matrix": [7, 3], "x": 14.25, "y": 5.5 }, + { "label": "Right", "matrix": [0, 5], "x": 15.25, "y": 5.5 } + ] + } + } +} diff --git a/keyboards/projectd/75/iso/iso.c b/keyboards/projectd/75/iso/iso.c new file mode 100644 index 00000000000..59544db359d --- /dev/null +++ b/keyboards/projectd/75/iso/iso.c @@ -0,0 +1,206 @@ +/* Copyright 2023 GSKY + * + * 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 . + */ + +#include "iso.h" + +#ifdef RGB_MATRIX_ENABLE + +const aw20216s_led_t g_aw20216s_leds[AW20216S_LED_COUNT] = { +/* Refer to IS31 manual for these locations + * driver + * | R location + * | | G location + * | | | B location + * | | | | */ + //{0, CS1_SW4, CS2_SW4, CS3_SW4}, // 0, k00, Esc + + {0, SW1_CS1, SW1_CS2, SW1_CS3}, // Esc + {0, SW2_CS1, SW2_CS2, SW2_CS3}, // F1 + {0, SW3_CS1, SW3_CS2, SW3_CS3}, // F2 + {0, SW4_CS1, SW4_CS2, SW4_CS3}, // F3 + {0, SW5_CS1, SW5_CS2, SW5_CS3}, // F4 + {0, SW6_CS1, SW6_CS2, SW6_CS3}, // F5 + {0, SW7_CS1, SW7_CS2, SW7_CS3}, // F6 + {0, SW8_CS1, SW8_CS2, SW8_CS3}, // F7 + {0, SW9_CS1, SW9_CS2, SW9_CS3}, // F8 + {0, SW10_CS1, SW10_CS2, SW10_CS3}, // F9 + {0, SW11_CS1, SW11_CS2, SW11_CS3}, // F10 + {0, SW12_CS1, SW12_CS2, SW12_CS3}, // F11 + {1, SW1_CS1, SW1_CS2, SW1_CS3}, // F12 + {1, SW1_CS4, SW1_CS5, SW1_CS6}, // Printscreen + {1, SW3_CS4, SW3_CS5, SW3_CS6}, // Delete + + {0, SW1_CS4, SW1_CS5, SW1_CS6}, // ` + {0, SW2_CS4, SW2_CS5, SW2_CS6}, // 1 + {0, SW3_CS4, SW3_CS5, SW3_CS6}, // 2 + {0, SW4_CS4, SW4_CS5, SW4_CS6}, // 3 + {0, SW5_CS4, SW5_CS5, SW5_CS6}, // 4 + {0, SW6_CS4, SW6_CS5, SW6_CS6}, // 5 + {0, SW7_CS4, SW7_CS5, SW7_CS6}, // 6 + {0, SW8_CS4, SW8_CS5, SW8_CS6}, // 7 + {0, SW9_CS4, SW9_CS5, SW9_CS6}, // 8 + {0, SW10_CS4, SW10_CS5, SW10_CS6}, // 9 + {0, SW11_CS4, SW11_CS5, SW11_CS6}, // 0 + {0, SW12_CS4, SW12_CS5, SW12_CS6}, // - + {1, SW5_CS1, SW5_CS2, SW5_CS3}, // = + {1, SW7_CS1, SW7_CS2, SW7_CS3}, // Backspace + {1, SW5_CS4, SW5_CS5, SW5_CS6}, // Home + + {0, SW1_CS7, SW1_CS8, SW1_CS9}, // Tab + {0, SW2_CS7, SW2_CS8, SW2_CS9}, // Q + {0, SW3_CS7, SW3_CS8, SW3_CS9}, // W + {0, SW4_CS7, SW4_CS8, SW4_CS9}, // E + {0, SW5_CS7, SW5_CS8, SW5_CS9}, // R + {0, SW6_CS7, SW6_CS8, SW6_CS9}, // T + {0, SW7_CS7, SW7_CS8, SW7_CS9}, // Y + {0, SW8_CS7, SW8_CS8, SW8_CS9}, // U + {0, SW9_CS7, SW9_CS8, SW9_CS9}, // I + {0, SW10_CS7, SW10_CS8, SW10_CS9}, // O + {0, SW11_CS7, SW11_CS8, SW11_CS9}, // P + {0, SW12_CS7, SW12_CS8, SW12_CS9}, // [ + {1, SW8_CS1, SW8_CS2, SW8_CS3}, // ] + {1, SW4_CS4, SW4_CS5, SW4_CS6}, // PGUP + + {0, SW1_CS10, SW1_CS11, SW1_CS12}, // Caps Lock + {0, SW2_CS10, SW2_CS11, SW2_CS12}, // A + {0, SW3_CS10, SW3_CS11, SW3_CS12}, // S + {0, SW4_CS10, SW4_CS11, SW4_CS12}, // D + {0, SW5_CS10, SW5_CS11, SW5_CS12}, // F + {0, SW6_CS10, SW6_CS11, SW6_CS12}, // G + {0, SW7_CS10, SW7_CS11, SW7_CS12}, // H + {0, SW8_CS10, SW8_CS11, SW8_CS12}, // J + {0, SW9_CS10, SW9_CS11, SW9_CS12}, // K + {0, SW10_CS10, SW10_CS11, SW10_CS12}, // L + {0, SW11_CS10, SW11_CS11, SW11_CS12}, // ; + {0, SW12_CS10, SW12_CS11, SW12_CS12}, // ' + {1, SW9_CS1, SW9_CS2, SW9_CS3}, // || + {1, SW11_CS1, SW11_CS2, SW11_CS3}, // Enter + {1, SW7_CS4, SW7_CS5, SW7_CS6}, // PGDN + + {0, SW1_CS13, SW1_CS14, SW1_CS15}, // L Shift + {0, SW12_CS13, SW12_CS14, SW12_CS15}, // | + {0, SW2_CS13, SW2_CS14, SW2_CS15}, // Z + {0, SW3_CS13, SW3_CS14, SW3_CS15}, // X + {0, SW4_CS13, SW4_CS14, SW4_CS15}, // C + {0, SW5_CS13, SW5_CS14, SW5_CS15}, // V + {0, SW6_CS13, SW6_CS14, SW6_CS15}, // B + {0, SW7_CS13, SW7_CS14, SW7_CS15}, // N + {0, SW8_CS13, SW8_CS14, SW8_CS15}, // M + {0, SW9_CS13, SW9_CS14, SW9_CS15}, // , + {0, SW10_CS13, SW10_CS14, SW10_CS15}, // . + {0, SW11_CS13, SW11_CS14, SW11_CS15}, // "/"" + {1, SW8_CS4, SW8_CS5, SW8_CS6}, // R Shift + {1, SW9_CS4, SW9_CS5, SW9_CS6}, // Up + {1, SW6_CS4, SW6_CS5, SW6_CS6}, // END + + {0, SW1_CS16, SW1_CS17, SW1_CS18}, // L Ctrl + {0, SW2_CS16, SW2_CS17, SW2_CS18}, // L Win + {0, SW3_CS16, SW3_CS17, SW3_CS18}, // L Alt + {0, SW4_CS16, SW4_CS17, SW4_CS18}, // LED1 + {0, SW5_CS16, SW5_CS17, SW5_CS18}, // LED2 + {0, SW6_CS16, SW6_CS17, SW6_CS18}, // Space + {0, SW7_CS16, SW7_CS17, SW7_CS18}, // LED3 + {0, SW8_CS16, SW8_CS17, SW8_CS18}, // LED4 + {0, SW9_CS16, SW9_CS17, SW9_CS18}, // R Alt + {0, SW10_CS16, SW10_CS17, SW10_CS18}, // FN + {0, SW12_CS16, SW12_CS17, SW12_CS18}, // R Ctrl + + {1, SW10_CS4, SW10_CS5, SW10_CS6}, // Left + {1, SW11_CS4, SW11_CS5, SW11_CS6}, // Down + {1, SW5_CS10, SW5_CS11, SW5_CS12}, // Right +}; + +#endif + +#ifdef EEPROM_ENABLE + +#include "spi_master.h" + +void spi_init(void) { + static bool is_initialised = false; + if (!is_initialised) { + is_initialised = true; + + // Try releasing special pins for a short time + gpio_set_pin_input(SPI_SCK_PIN); + gpio_set_pin_input(SPI_MOSI_PIN); + gpio_set_pin_input(SPI_MISO_PIN); + + chThdSleepMilliseconds(10); + + palSetPadMode(PAL_PORT(SPI_SCK_PIN), PAL_PAD(SPI_SCK_PIN), PAL_MODE_ALTERNATE(SPI_SCK_PAL_MODE) | PAL_OUTPUT_TYPE_PUSHPULL | PAL_OUTPUT_SPEED_HIGHEST | PAL_WB32_CURRENT_LEVEL3); + palSetPadMode(PAL_PORT(SPI_MOSI_PIN), PAL_PAD(SPI_MOSI_PIN), PAL_MODE_ALTERNATE(SPI_MOSI_PAL_MODE) | PAL_OUTPUT_TYPE_PUSHPULL | PAL_OUTPUT_SPEED_HIGHEST); + palSetPadMode(PAL_PORT(SPI_MISO_PIN), PAL_PAD(SPI_MISO_PIN), PAL_MODE_ALTERNATE(SPI_MISO_PAL_MODE) | PAL_OUTPUT_TYPE_PUSHPULL | PAL_OUTPUT_SPEED_HIGHEST); + } +} + +#endif +bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { + if (!rgb_matrix_indicators_advanced_user(led_min, led_max)) { + return false; + } + + if (host_keyboard_led_state().caps_lock) { + RGB_MATRIX_INDICATOR_SET_COLOR(44, 255, 255, 255); + } + + return false; +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (!process_record_user(keycode, record)) { + return false; + } + switch (keycode) { + + case RGB_R: + if (record->event.pressed) { + rgb_matrix_sethsv(0, 255, 255); + rgb_matrix_mode(1); + } + return false; /* Skip all further processing of this key */ + + case RGB_G: + if (record->event.pressed) { + rgb_matrix_sethsv(85, 255, 255); + rgb_matrix_mode(1); + } + return false; /* Skip all further processing of this key */ + + case RGB_B: + if (record->event.pressed) { + rgb_matrix_sethsv(170, 255, 255); + rgb_matrix_mode(1); + } + return false; /* Skip all further processing of this key */ + + case RGB_W: + if (record->event.pressed) { + rgb_matrix_sethsv(0, 0, 255); + rgb_matrix_mode(1); + } + return false; /* Skip all further processing of this key */ + + case SW_cy: + rgb_matrix_sethsv(0, 255, 255); + rgb_matrix_mode(13); + return false; /* Skip all further processing of this key */ + + + default: + return true; /* Process all other keycodes normally */ + } +}; diff --git a/keyboards/projectd/75/iso/iso.h b/keyboards/projectd/75/iso/iso.h new file mode 100644 index 00000000000..4e65d84ba74 --- /dev/null +++ b/keyboards/projectd/75/iso/iso.h @@ -0,0 +1,27 @@ +/* Copyright 2023 GSKY + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +enum my_keycodes { + RGB_R = QK_KB, + RGB_G, + RGB_B, + RGB_W, + SW_cy, +}; diff --git a/keyboards/projectd/75/iso/keymaps/default/keymap.c b/keyboards/projectd/75/iso/keymaps/default/keymap.c new file mode 100644 index 00000000000..2f6e6cf3105 --- /dev/null +++ b/keyboards/projectd/75/iso/keymaps/default/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2023 GSKY + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap _BL: Base Layer (Default Layer) + */ +[0] = LAYOUT( + QK_GESC, 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_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_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_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_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), +[1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, _______, + _______, _______, _______, _______, MO(2), _______, _______, RGB_SPD, RGB_VAD, RGB_SPI), +[2] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, RGB_R, RGB_G, RGB_B, RGB_W, SW_cy, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), +}; diff --git a/keyboards/projectd/75/iso/keymaps/via/keymap.c b/keyboards/projectd/75/iso/keymaps/via/keymap.c new file mode 100644 index 00000000000..2f6e6cf3105 --- /dev/null +++ b/keyboards/projectd/75/iso/keymaps/via/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2023 GSKY + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap _BL: Base Layer (Default Layer) + */ +[0] = LAYOUT( + QK_GESC, 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_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_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_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_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), +[1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, _______, + _______, _______, _______, _______, MO(2), _______, _______, RGB_SPD, RGB_VAD, RGB_SPI), +[2] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, RGB_R, RGB_G, RGB_B, RGB_W, SW_cy, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), +}; diff --git a/keyboards/projectd/75/iso/keymaps/via/rules.mk b/keyboards/projectd/75/iso/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/projectd/75/iso/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/projectd/75/iso/mcuconf.h b/keyboards/projectd/75/iso/mcuconf.h new file mode 100644 index 00000000000..e4b8d1f9732 --- /dev/null +++ b/keyboards/projectd/75/iso/mcuconf.h @@ -0,0 +1,25 @@ +/* Copyright (C) 2023 Westberry Technology (ChangZhou) Corp., Ltd + * + * 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 . + */ + +#pragma once + +#include_next + +#undef WB32_SPI_USE_QSPI +#define WB32_SPI_USE_QSPI TRUE + +#undef WB32_SPI_USE_SPIM2 +#define WB32_SPI_USE_SPIM2 TRUE diff --git a/keyboards/projectd/75/iso/readme.md b/keyboards/projectd/75/iso/readme.md new file mode 100644 index 00000000000..1b9f7f48975 --- /dev/null +++ b/keyboards/projectd/75/iso/readme.md @@ -0,0 +1,25 @@ +# ProjectD 75% ISO + +![ProjectD 75 ISO](https://imgur.com/pbGXTUd.png) + +A 75% keyboard with the WestBerry Q95 microcontroller integrated into PCB. + +* Keyboard Maintainer: [GSKY](https://github.com/gksygithub) +* Hardware Supported: ProjectD 75% ISO PCB +* Hardware Availability: [GSKY](https://github.com/gskygithub/projectd_75_iso) + +Make example for this keyboard (after setting up your build environment): + + make projectd/75/iso:default + +Flashing example for this keyboard: + + make projectd/75/iso:default:flash + +To reset the board into bootloader mode, do one of the following: + +* Hold the Reset switch mounted under the space key after the USB cable is connected +* Hold the Esc key while connecting the USB cable (also erases persistent settings) +* Fn+Alt+Tab will reset the board to bootloader mode + +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/projectd/75/iso/rules.mk b/keyboards/projectd/75/iso/rules.mk new file mode 100644 index 00000000000..6e7633bfe01 --- /dev/null +++ b/keyboards/projectd/75/iso/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank From 48c0b601412513c83e31bd818c1ce2127682d567 Mon Sep 17 00:00:00 2001 From: Vertex-kb <102476474+Vertex-kb@users.noreply.github.com> Date: Sun, 19 May 2024 13:36:45 +0800 Subject: [PATCH 008/519] KB name change to Part.1-75-HS (#23403) --- keyboards/vertex/t75/keyboard.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/vertex/t75/keyboard.json b/keyboards/vertex/t75/keyboard.json index 82f7b7a5e86..32e85cf8b41 100644 --- a/keyboards/vertex/t75/keyboard.json +++ b/keyboards/vertex/t75/keyboard.json @@ -1,6 +1,6 @@ { "manufacturer": "vertex", - "keyboard_name": "T75", + "keyboard_name": "Part.1-75-HS", "board": "STM32_F103_STM32DUINO", "bootloader": "stm32duino", "diode_direction": "ROW2COL", From 5fda3490187a7448176b7d37bf16c1cd1d80b736 Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 20 May 2024 17:11:49 +1000 Subject: [PATCH 009/519] Remove RGB keycodes from boards with no RGB config (#23709) --- .../shark/alpha/keymaps/default/keymap.c | 2 +- .../acheron/shark/alpha/keymaps/via/keymap.c | 2 +- .../ext65/rev1/keymaps/default/keymap.c | 6 +-- .../aeboards/ext65/rev1/keymaps/via/keymap.c | 6 +-- .../ext65/rev3/keymaps/default/keymap.c | 6 +-- .../aeboards/ext65/rev3/keymaps/via/keymap.c | 6 +-- .../slice/rev1/keymaps/default_all/keymap.c | 18 ++++----- .../keymaps/default_split_backspace/keymap.c | 18 ++++----- .../basekeys/slice/rev1/keymaps/via/keymap.c | 24 ++++++------ .../piantor_pro/keymaps/default/keymap.c | 4 +- keyboards/boardsource/the_mark/keyboard.json | 3 +- .../ellipse/keymaps/default/keymap.c | 2 +- .../cannonkeys/ellipse/keymaps/via/keymap.c | 2 +- .../gentoo_hs/keymaps/default/keymap.c | 4 +- .../cannonkeys/gentoo_hs/keymaps/via/keymap.c | 4 +- .../leviatan/keymaps/default/keymap.c | 2 +- .../cannonkeys/leviatan/keymaps/iso/keymap.c | 2 +- .../leviatan/keymaps/tsangan/keymap.c | 2 +- .../cannonkeys/leviatan/keymaps/via/keymap.c | 2 +- .../moment/keymaps/default/keymap.c | 2 +- .../cannonkeys/moment/keymaps/via/keymap.c | 2 +- .../ortho48v2/keymaps/default/keymap.c | 2 +- .../cannonkeys/ortho48v2/keymaps/via/keymap.c | 2 +- .../ortho60v2/keymaps/default/keymap.c | 2 +- .../cannonkeys/ortho60v2/keymaps/via/keymap.c | 2 +- .../ripple_hs/keymaps/default/keymap.c | 2 +- .../cannonkeys/ripple_hs/keymaps/via/keymap.c | 2 +- .../vector/keymaps/default/keymap.c | 2 +- .../cu75/keymaps/default/keymap.c | 16 ++++---- .../capsunlocked/cu75/keymaps/iso/keymap.c | 16 ++++---- .../chlx/merro60/keymaps/default/keymap.c | 2 +- keyboards/chlx/merro60/keymaps/via/keymap.c | 2 +- .../66_hotswap/gen1/keymaps/66_ansi/keymap.c | 8 ++-- .../66_hotswap/gen1/keymaps/default/keymap.c | 6 +-- keyboards/contra/keymaps/default/keymap.c | 2 +- .../vaneelaex/keymaps/default/keymap.c | 2 +- .../delikeeb/vaneelaex/keymaps/via/keymap.c | 2 +- .../doro67/regular/keymaps/default/keymap.c | 2 +- .../dztech/dz96/keymaps/default/keymap.c | 2 +- keyboards/dztech/dz96/keymaps/iso/keymap.c | 2 +- keyboards/dztech/dz96/keymaps/via/keymap.c | 2 +- keyboards/edda/keymaps/default/keymap.c | 6 +-- .../fjlabs/bolsa65/keymaps/default/keymap.c | 4 +- keyboards/fjlabs/bolsa65/keymaps/via/keymap.c | 4 +- .../fjlabs/ldk65/keymaps/default/keymap.c | 4 +- keyboards/fjlabs/ldk65/keymaps/via/keymap.c | 4 +- .../fjlabs/midway60/keymaps/default/keymap.c | 2 +- .../fjlabs/midway60/keymaps/via/keymap.c | 2 +- .../fjlabs/sinanju/keymaps/default/keymap.c | 2 +- .../sinanju/keymaps/default_ansi_wkl/keymap.c | 2 +- keyboards/fjlabs/sinanju/keymaps/via/keymap.c | 2 +- .../fjlabs/sinanjuwk/keymaps/default/keymap.c | 2 +- .../fjlabs/sinanjuwk/keymaps/via/keymap.c | 2 +- .../gh60/revc/keymaps/default_abnt2/keymap.c | 2 +- keyboards/gh60/satan/keymaps/colemak/keymap.c | 8 ---- keyboards/giabalanai/keyboard.json | 3 +- .../handwired/hnah40/keymaps/default/keymap.c | 4 +- .../ortho_brass/keymaps/default/keymap.c | 2 +- .../pilcrow/keymaps/default/keymap.c | 2 +- .../riblee_split/keymaps/default/keymap.c | 2 +- .../split_5x7/keymaps/stef9998/keymap.c | 2 +- keyboards/hotdox/keymaps/default/keymap.c | 19 +++------- .../idank/sweeq/keymaps/default/keymap.json | 4 +- .../ergodox_infinity/keymaps/default/keymap.c | 17 ++------- .../kapcave/gskt00/keymaps/default/keymap.c | 2 +- .../maja_soldered/keymaps/default/keymap.c | 4 +- .../maja_soldered/keymaps/via/keymap.c | 4 +- .../kezewa/enter80/keymaps/default/keymap.c | 2 +- keyboards/kezewa/enter80/keymaps/via/keymap.c | 2 +- keyboards/kikoslab/kl90/keymaps/via/keymap.c | 4 +- .../pteron56/keymaps/via/keymap.c | 4 +- .../ktec/ergodone/keymaps/default/keymap.c | 8 ++-- keyboards/ktec/ergodone/keymaps/via/keymap.c | 8 ++-- .../palmetto/keymaps/default/keymap.c | 2 +- .../montsinger/palmetto/keymaps/via/keymap.c | 2 +- keyboards/neson_design/810e/keyboard.json | 3 +- .../810e/keymaps/default/keymap.c | 2 +- .../neson_design/810e/keymaps/via/keymap.c | 2 +- keyboards/p3d/glitch/glitch.c | 2 - .../titan65/soldered/keymaps/default/keymap.c | 4 +- .../titan65/soldered/keymaps/via/keymap.c | 4 +- keyboards/ploopyco/mouse/keyboard.json | 1 - .../vault45/keymaps/default/keymap.c | 2 +- keyboards/punk75/keymaps/default/keymap.c | 8 ++-- keyboards/punk75/keymaps/via/keymap.c | 8 ++-- keyboards/rart/rart75/keymaps/ansi/keymap.c | 2 +- .../rart/rart75/keymaps/default/keymap.c | 2 +- keyboards/rart/rart75/keymaps/via/keymap.c | 2 +- keyboards/reviung/reviung39/keyboard.json | 25 ++++++++++++- .../reviung39/keymaps/default/config.h | 37 ------------------- .../reviung39/keymaps/default/rules.mk | 1 - .../reviung39/keymaps/default_s/config.h | 21 +---------- .../reviung39/keymaps/default_s/rules.mk | 1 - .../reviung/reviung39/keymaps/via/keymap.c | 4 +- .../reviung/reviung39/keymaps/via/rules.mk | 1 - .../reviung61/keymaps/default/keymap.c | 2 +- keyboards/rgbkb/mun/rev1/keyboard.json | 3 +- keyboards/rgbkb/sol/rev1/keyboard.json | 1 - keyboards/rgbkb/sol/rev2/keyboard.json | 3 +- keyboards/rgbkb/sol3/rev1/keyboard.json | 3 +- keyboards/scatter42/keymaps/default/keymap.c | 2 +- keyboards/sirius/unigo66/keyboard.json | 1 - .../switchplate910/keymaps/default/keymap.c | 8 ++-- .../switchplate910/keymaps/via/keymap.c | 8 ++-- .../ergomirage/keymaps/default/keymap.c | 6 +-- .../ergomirage/keymaps/via/keymap.c | 6 +-- .../rev1/keymaps/default/keymap.c | 4 +- .../rev1/keymaps/default_big_space/keymap.c | 4 +- .../wekey/polaris/keymaps/default/keymap.c | 2 +- 109 files changed, 223 insertions(+), 302 deletions(-) delete mode 100644 keyboards/reviung/reviung39/keymaps/default/config.h delete mode 100644 keyboards/reviung/reviung39/keymaps/default/rules.mk delete mode 100644 keyboards/reviung/reviung39/keymaps/default_s/rules.mk diff --git a/keyboards/acheron/shark/alpha/keymaps/default/keymap.c b/keyboards/acheron/shark/alpha/keymaps/default/keymap.c index 7238d8b49e0..19161ebea42 100644 --- a/keyboards/acheron/shark/alpha/keymaps/default/keymap.c +++ b/keyboards/acheron/shark/alpha/keymaps/default/keymap.c @@ -95,7 +95,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_ortho_4x12( _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_UP, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/acheron/shark/alpha/keymaps/via/keymap.c b/keyboards/acheron/shark/alpha/keymaps/via/keymap.c index 1f006a79222..77343b2e6da 100644 --- a/keyboards/acheron/shark/alpha/keymaps/via/keymap.c +++ b/keyboards/acheron/shark/alpha/keymaps/via/keymap.c @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_ortho_4x12( _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_UP, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/aeboards/ext65/rev1/keymaps/default/keymap.c b/keyboards/aeboards/ext65/rev1/keymaps/default/keymap.c index e246b5c471d..1cbbbddce89 100644 --- a/keyboards/aeboards/ext65/rev1/keymaps/default/keymap.c +++ b/keyboards/aeboards/ext65/rev1/keymaps/default/keymap.c @@ -39,9 +39,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, - KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, - KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG, - KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/aeboards/ext65/rev1/keymaps/via/keymap.c b/keyboards/aeboards/ext65/rev1/keymaps/via/keymap.c index e246b5c471d..1cbbbddce89 100644 --- a/keyboards/aeboards/ext65/rev1/keymaps/via/keymap.c +++ b/keyboards/aeboards/ext65/rev1/keymaps/via/keymap.c @@ -39,9 +39,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, - KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, - KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG, - KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/aeboards/ext65/rev3/keymaps/default/keymap.c b/keyboards/aeboards/ext65/rev3/keymaps/default/keymap.c index ac6dd4dfede..56930cacc66 100644 --- a/keyboards/aeboards/ext65/rev3/keymaps/default/keymap.c +++ b/keyboards/aeboards/ext65/rev3/keymaps/default/keymap.c @@ -39,9 +39,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, - KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, - RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG, - KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/aeboards/ext65/rev3/keymaps/via/keymap.c b/keyboards/aeboards/ext65/rev3/keymaps/via/keymap.c index ac6dd4dfede..56930cacc66 100644 --- a/keyboards/aeboards/ext65/rev3/keymaps/via/keymap.c +++ b/keyboards/aeboards/ext65/rev3/keymaps/via/keymap.c @@ -39,9 +39,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, - KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, - RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG, - KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/basekeys/slice/rev1/keymaps/default_all/keymap.c b/keyboards/basekeys/slice/rev1/keymaps/default_all/keymap.c index 548e0acf29d..4e224397e25 100644 --- a/keyboards/basekeys/slice/rev1/keymaps/default_all/keymap.c +++ b/keyboards/basekeys/slice/rev1/keymaps/default_all/keymap.c @@ -27,22 +27,18 @@ enum layer_number { _ADJUST, }; -enum custom_keycodes { - RGB_RST = SAFE_RANGE -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_all( //,------------------------------------------------------------------------| |--------------------------------------------------------------------------------------. KC_ESC, KC_GRAVE, 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_BSPC, KC_BSPC, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_MOD, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_M_G, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_M_X, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_RSFT, + XXXXXXX, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_RSFT, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_TOG, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) + XXXXXXX, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) //`------------------------------------------------------------------------| |--------------------------------------------------------------------------------------' ), @@ -64,11 +60,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //,------------------------------------------------------------------------| |--------------------------------------------------------------------------------------. XXXXXXX,TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX //`------------------------------------------------------------------------| |--------------------------------------------------------------------------------------' diff --git a/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/keymap.c b/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/keymap.c index 6d99f5b74d9..22a3912938c 100644 --- a/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/keymap.c +++ b/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/keymap.c @@ -27,22 +27,18 @@ enum layer_number { _ADJUST, }; -enum custom_keycodes { - RGB_RST = SAFE_RANGE -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_split_backspace( //,------------------------------------------------------------------------| |---------------------------------------------------------------------------. KC_ESC, KC_GRAVE, 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_BSPC, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| - RGB_MOD, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| - RGB_M_G, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| - RGB_M_X, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, + XXXXXXX, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| - RGB_TOG, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) + XXXXXXX, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) //`------------------------------------------------------------------------| |---------------------------------------------------------------------------' ), @@ -64,11 +60,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //,-------------------------------------------------------------------------| |---------------------------------------------------------------------------. XXXXXXX, TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX //`-------------------------------------------------------------------------| |---------------------------------------------------------------------------' diff --git a/keyboards/basekeys/slice/rev1/keymaps/via/keymap.c b/keyboards/basekeys/slice/rev1/keymaps/via/keymap.c index 53bf2fae0b1..e4fbf1fcf7f 100644 --- a/keyboards/basekeys/slice/rev1/keymaps/via/keymap.c +++ b/keyboards/basekeys/slice/rev1/keymaps/via/keymap.c @@ -31,13 +31,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //,------------------------------------------------------------------------| |--------------------------------------------------------------------------------------. KC_ESC, KC_GRAVE, 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_BSPC, KC_BSPC, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_MOD, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_M_G, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_M_X, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_RSFT, + XXXXXXX, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_RSFT, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_TOG, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) + XXXXXXX, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) //`------------------------------------------------------------------------| |--------------------------------------------------------------------------------------' ), @@ -59,13 +59,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //,------------------------------------------------------------------------| |--------------------------------------------------------------------------------------. KC_ESC, KC_GRAVE, 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_BSPC, KC_BSPC, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_MOD, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_M_G, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_M_X, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_RSFT, + XXXXXXX, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_RSFT, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_TOG, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) + XXXXXXX, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) //`------------------------------------------------------------------------| |--------------------------------------------------------------------------------------' ), @@ -73,13 +73,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //,------------------------------------------------------------------------| |--------------------------------------------------------------------------------------. KC_ESC, KC_GRAVE, 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_BSPC, KC_BSPC, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_MOD, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_M_G, 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, + XXXXXXX, 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, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_M_X, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_RSFT, + XXXXXXX, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_RSFT, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| - RGB_TOG, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) + XXXXXXX, KC_LCTL, KC_LALT, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, MO(_FN) //`------------------------------------------------------------------------| |--------------------------------------------------------------------------------------' ) }; diff --git a/keyboards/beekeeb/piantor_pro/keymaps/default/keymap.c b/keyboards/beekeeb/piantor_pro/keymaps/default/keymap.c index ed09dd7d069..300597ddb55 100644 --- a/keyboards/beekeeb/piantor_pro/keymaps/default/keymap.c +++ b/keyboards/beekeeb/piantor_pro/keymaps/default/keymap.c @@ -45,9 +45,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //,-----------------------------------------------------. ,-----------------------------------------------------. QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| KC_LGUI, _______, KC_SPC, KC_ENT, _______, KC_RALT //`--------------------------' `--------------------------' diff --git a/keyboards/boardsource/the_mark/keyboard.json b/keyboards/boardsource/the_mark/keyboard.json index 8dc08e4fc45..69c5f681eb5 100644 --- a/keyboards/boardsource/the_mark/keyboard.json +++ b/keyboards/boardsource/the_mark/keyboard.json @@ -8,8 +8,7 @@ "bootmagic": true, "extrakey": true, "mousekey": true, - "rgblight": true, - "rgb_matrix": false + "rgblight": true }, "matrix_pins": { "cols": ["B5", "B6", "B7", "F5", "C7", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "F0", "F1", "F4"], diff --git a/keyboards/cannonkeys/ellipse/keymaps/default/keymap.c b/keyboards/cannonkeys/ellipse/keymaps/default/keymap.c index 646a0769c38..f1b692131f9 100644 --- a/keyboards/cannonkeys/ellipse/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/ellipse/keymaps/default/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_GRV, 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_DEL, KC_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN,BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/cannonkeys/ellipse/keymaps/via/keymap.c b/keyboards/cannonkeys/ellipse/keymaps/via/keymap.c index 4d32b2bd1e3..ea45b14a615 100644 --- a/keyboards/cannonkeys/ellipse/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/ellipse/keymaps/via/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_GRV, 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_DEL, KC_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN,BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/cannonkeys/gentoo_hs/keymaps/default/keymap.c b/keyboards/cannonkeys/gentoo_hs/keymaps/default/keymap.c index 2d614d1801b..07222de58ad 100644 --- a/keyboards/cannonkeys/gentoo_hs/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/gentoo_hs/keymaps/default/keymap.c @@ -37,8 +37,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_65_ansi_rwkl( - QK_GESC, 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_DEL, RGB_TOG, - KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, + QK_GESC, 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_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_UP, BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS diff --git a/keyboards/cannonkeys/gentoo_hs/keymaps/via/keymap.c b/keyboards/cannonkeys/gentoo_hs/keymaps/via/keymap.c index 5df21f66c59..a1817427ab7 100644 --- a/keyboards/cannonkeys/gentoo_hs/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/gentoo_hs/keymaps/via/keymap.c @@ -39,8 +39,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_65_ansi_rwkl( - QK_GESC, 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_DEL, RGB_TOG, - KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, + QK_GESC, 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_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_UP, BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS diff --git a/keyboards/cannonkeys/leviatan/keymaps/default/keymap.c b/keyboards/cannonkeys/leviatan/keymaps/default/keymap.c index 317eeab093d..63a2f3bc007 100644 --- a/keyboards/cannonkeys/leviatan/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/leviatan/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_60_ansi( QK_GESC, 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_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_GRV, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/cannonkeys/leviatan/keymaps/iso/keymap.c b/keyboards/cannonkeys/leviatan/keymaps/iso/keymap.c index a0cacca0f5c..75ed5d80e59 100644 --- a/keyboards/cannonkeys/leviatan/keymaps/iso/keymap.c +++ b/keyboards/cannonkeys/leviatan/keymaps/iso/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_60_iso( QK_GESC, 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_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, _______, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_GRV, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/cannonkeys/leviatan/keymaps/tsangan/keymap.c b/keyboards/cannonkeys/leviatan/keymaps/tsangan/keymap.c index d280f72d1ec..c735160c3d6 100644 --- a/keyboards/cannonkeys/leviatan/keymaps/tsangan/keymap.c +++ b/keyboards/cannonkeys/leviatan/keymaps/tsangan/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_60_tsangan_hhkb( KC_GRV, 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_DEL, _______, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/cannonkeys/leviatan/keymaps/via/keymap.c b/keyboards/cannonkeys/leviatan/keymaps/via/keymap.c index b3b684cf198..056634dab4d 100644 --- a/keyboards/cannonkeys/leviatan/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/leviatan/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_GRV, 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_DEL, KC_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/cannonkeys/moment/keymaps/default/keymap.c b/keyboards/cannonkeys/moment/keymaps/default/keymap.c index e81469c48f4..a72db1eda1a 100644 --- a/keyboards/cannonkeys/moment/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/moment/keymaps/default/keymap.c @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_GRV, 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_DEL, KC_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/cannonkeys/moment/keymaps/via/keymap.c b/keyboards/cannonkeys/moment/keymaps/via/keymap.c index e81469c48f4..a72db1eda1a 100644 --- a/keyboards/cannonkeys/moment/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/moment/keymaps/via/keymap.c @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_GRV, 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_DEL, KC_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/cannonkeys/ortho48v2/keymaps/default/keymap.c b/keyboards/cannonkeys/ortho48v2/keymaps/default/keymap.c index 1c2f38355eb..7bfc7a5cf07 100644 --- a/keyboards/cannonkeys/ortho48v2/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/ortho48v2/keymaps/default/keymap.c @@ -79,7 +79,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_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, - RGB_TOG, RGB_MOD, BL_UP , BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + _______, _______, BL_UP , BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), }; diff --git a/keyboards/cannonkeys/ortho48v2/keymaps/via/keymap.c b/keyboards/cannonkeys/ortho48v2/keymaps/via/keymap.c index c0a823f9f8f..1776d294afb 100644 --- a/keyboards/cannonkeys/ortho48v2/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/ortho48v2/keymaps/via/keymap.c @@ -37,7 +37,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_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, - RGB_TOG, RGB_MOD, BL_UP , BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + _______, _______, BL_UP , BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [3] = LAYOUT_ortho_4x12( diff --git a/keyboards/cannonkeys/ortho60v2/keymaps/default/keymap.c b/keyboards/cannonkeys/ortho60v2/keymaps/default/keymap.c index 9b9f11ab052..30876d111cd 100644 --- a/keyboards/cannonkeys/ortho60v2/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/ortho60v2/keymaps/default/keymap.c @@ -94,6 +94,6 @@ 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_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, - RGB_TOG, RGB_MOD, BL_UP, BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + _______, _______, BL_UP, BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ) }; diff --git a/keyboards/cannonkeys/ortho60v2/keymaps/via/keymap.c b/keyboards/cannonkeys/ortho60v2/keymaps/via/keymap.c index a5d88980dcd..37a0f8794f3 100644 --- a/keyboards/cannonkeys/ortho60v2/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/ortho60v2/keymaps/via/keymap.c @@ -40,7 +40,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_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, - RGB_TOG, RGB_MOD, BL_UP, BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + _______, _______, BL_UP, BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [3] = LAYOUT_ortho_5x12( diff --git a/keyboards/cannonkeys/ripple_hs/keymaps/default/keymap.c b/keyboards/cannonkeys/ripple_hs/keymaps/default/keymap.c index d7d05641193..9e0ef1b6c51 100644 --- a/keyboards/cannonkeys/ripple_hs/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/ripple_hs/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN1] = LAYOUT_tkl_f13_ansi_tsangan( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DOWN, BL_UP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_DOWN, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/cannonkeys/ripple_hs/keymaps/via/keymap.c b/keyboards/cannonkeys/ripple_hs/keymaps/via/keymap.c index d4b94f0defa..fd80ec93d68 100644 --- a/keyboards/cannonkeys/ripple_hs/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/ripple_hs/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN1] = LAYOUT_tkl_f13_ansi_tsangan( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DOWN, BL_UP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_DOWN, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/cannonkeys/vector/keymaps/default/keymap.c b/keyboards/cannonkeys/vector/keymaps/default/keymap.c index a4ce417ac49..26a69ba35da 100644 --- a/keyboards/cannonkeys/vector/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/vector/keymaps/default/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_GRV, 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_DEL, KC_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/capsunlocked/cu75/keymaps/default/keymap.c b/keyboards/capsunlocked/cu75/keymaps/default/keymap.c index 2afc7399e8f..268cce036fd 100644 --- a/keyboards/capsunlocked/cu75/keymaps/default/keymap.c +++ b/keyboards/capsunlocked/cu75/keymaps/default/keymap.c @@ -39,21 +39,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |-------------------------------------------------------------------| * | | | | | | | | | | | | | | | | * |-------------------------------------------------------------------| - * | | | | | | | | | | | | | | | RGB_TOG| + * | | | | | | | | | | | | | | | | * |-------------------------------------------------------------------| - * | | | | | | | | | | | | |QK_BOOT |RGB_MODE| + * | | | | | | | | | | | | |QK_BOOT | | * |-------------------------------------------------------------------| - * | | | | | | | | | |VAD|VAI| |RGB_HUI| | + * | | | | | | | | | | | | | | | * |-------------------------------------------------------------------| - * | | | | | | | |RGB_SAD|RGB_HUD|RGB_SAI| + * | | | | | | | | | | | * `-------------------------------------------------------------------' */ [FUNC] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, RGB_MOD, - _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, _______, _______, RGB_HUI, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_SAI + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/capsunlocked/cu75/keymaps/iso/keymap.c b/keyboards/capsunlocked/cu75/keymaps/iso/keymap.c index 95f742db4b3..479ec6f58ed 100644 --- a/keyboards/capsunlocked/cu75/keymaps/iso/keymap.c +++ b/keyboards/capsunlocked/cu75/keymaps/iso/keymap.c @@ -38,21 +38,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |---------------------------------------------------------------| * | | | | | | | | | | | | | | | | * |---------------------------------------------------------------| - * | | | | | | | | | | | | | | |TOG| + * | | | | | | | | | | | | | | | | * |------------------------------------------------------. |---| - * | | | | | | | | | | | | |RST| |MOD| + * | | | | | | | | | | | | |RST| | | * |---------------------------------------------------------------| - * | | | | | | | | | |VAD|VAI| | |HUI| | + * | | | | | | | | | | | | | | | | * |---------------------------------------------------------------| - * | | | | | | | |SAD|HUD|SAI| + * | | | | | | | | | | | * `---------------------------------------------------------------' */ [FUNC] = LAYOUT_iso( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, RGB_MOD, - _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, _______, _______, RGB_HUI, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_SAI + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/chlx/merro60/keymaps/default/keymap.c b/keyboards/chlx/merro60/keymaps/default/keymap.c index 9d9c34d9197..ca673bbb744 100644 --- a/keyboards/chlx/merro60/keymaps/default/keymap.c +++ b/keyboards/chlx/merro60/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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_DEL, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DOWN, BL_TOGG, BL_UP, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/chlx/merro60/keymaps/via/keymap.c b/keyboards/chlx/merro60/keymaps/via/keymap.c index 5459a2558a3..5abec5736c8 100644 --- a/keyboards/chlx/merro60/keymaps/via/keymap.c +++ b/keyboards/chlx/merro60/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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_DEL, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DOWN, BL_TOGG, BL_UP, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/clueboard/66_hotswap/gen1/keymaps/66_ansi/keymap.c b/keyboards/clueboard/66_hotswap/gen1/keymaps/66_ansi/keymap.c index 4dcc09c913f..a5a7adfefbd 100644 --- a/keyboards/clueboard/66_hotswap/gen1/keymaps/66_ansi/keymap.c +++ b/keyboards/clueboard/66_hotswap/gen1/keymaps/66_ansi/keymap.c @@ -44,9 +44,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _CL: Control layer */ [_CL] = LAYOUT_66_ansi( - LM_NEXT,RGB_M_P,RGB_M_B,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______, RGB_TOG, RGB_VAI, - _______,_______,_______,_______,QK_BOOT,_______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, + LM_NEXT,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, LM_TOGG, LM_BRIU, + _______,_______,_______,_______,QK_BOOT,_______,_______,_______,_______,_______,_______,_______,_______,_______, LM_BRID, _______,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, - _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, RGB_SAI, - _______,_______,_______, RGB_MOD, _______,MO(_FL),_______,RGB_HUD,RGB_SAD,RGB_HUI), + _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, + _______,_______,_______, LM_NEXT, _______,MO(_FL),_______,_______,_______,_______), }; diff --git a/keyboards/clueboard/66_hotswap/gen1/keymaps/default/keymap.c b/keyboards/clueboard/66_hotswap/gen1/keymaps/default/keymap.c index 507aa80f7ce..2d0873ccc02 100644 --- a/keyboards/clueboard/66_hotswap/gen1/keymaps/default/keymap.c +++ b/keyboards/clueboard/66_hotswap/gen1/keymaps/default/keymap.c @@ -68,11 +68,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _CL: Control layer */ [_CL] = LAYOUT( - LM_NEXT,S_ONEUP,S_SCALE,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______, LM_TOGG, LM_BRIU, + LM_NEXT,S_ONEUP,S_SCALE,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, LM_TOGG, LM_BRIU, _______,_______,_______,_______,QK_BOOT,_______,_______,_______,_______,_______,_______,_______,_______,_______, LM_BRID, _______,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, - _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, RGB_SAI, - _______,_______,_______, _______,_______, _______,_______,MO(_FL),_______,RGB_HUD,RGB_SAD,RGB_HUI), + _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, + _______,_______,_______, _______,_______, _______,_______,MO(_FL),_______,_______,_______,_______), }; diff --git a/keyboards/contra/keymaps/default/keymap.c b/keyboards/contra/keymaps/default/keymap.c index e8e967b0d6c..29f98033d61 100644 --- a/keyboards/contra/keymaps/default/keymap.c +++ b/keyboards/contra/keymaps/default/keymap.c @@ -161,7 +161,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_planck_mit( - _______, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , _______, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/delikeeb/vaneelaex/keymaps/default/keymap.c b/keyboards/delikeeb/vaneelaex/keymaps/default/keymap.c index f6a08015eb0..3c7d3b9a581 100644 --- a/keyboards/delikeeb/vaneelaex/keymaps/default/keymap.c +++ b/keyboards/delikeeb/vaneelaex/keymaps/default/keymap.c @@ -94,7 +94,7 @@ KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_DOT, _______, KC_0, _______, ____ * `---------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_ss_6x12( -KC_KP_EQUAL, KC_7, KC_8, KC_9, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUI, RGB_VAI, RGB_VAD, RGB_SAI, RGB_SAD, _______, _______, _______, KC_DEL, +KC_KP_EQUAL, KC_7, KC_8, KC_9, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_KP_MINUS, KC_4, KC_5, KC_6, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, KC_KP_PLUS, KC_1, KC_2, KC_3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_DOT, KC_0, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/delikeeb/vaneelaex/keymaps/via/keymap.c b/keyboards/delikeeb/vaneelaex/keymaps/via/keymap.c index a126bc65b72..6dcb93a07eb 100644 --- a/keyboards/delikeeb/vaneelaex/keymaps/via/keymap.c +++ b/keyboards/delikeeb/vaneelaex/keymaps/via/keymap.c @@ -95,7 +95,7 @@ KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_DOT, _______, KC_0, _______, ____ * `---------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_ss_6x12( -KC_KP_EQUAL, KC_7, KC_8, KC_9, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUI, RGB_VAI, RGB_VAD, RGB_SAI, RGB_SAD, _______, _______, _______, KC_DEL, +KC_KP_EQUAL, KC_7, KC_8, KC_9, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_KP_MINUS, KC_4, KC_5, KC_6, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, KC_KP_PLUS, KC_1, KC_2, KC_3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_DOT, KC_0, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/doro67/regular/keymaps/default/keymap.c b/keyboards/doro67/regular/keymaps/default/keymap.c index a86075c616d..8b45f736cbe 100644 --- a/keyboards/doro67/regular/keymaps/default/keymap.c +++ b/keyboards/doro67/regular/keymaps/default/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/dztech/dz96/keymaps/default/keymap.c b/keyboards/dztech/dz96/keymaps/default/keymap.c index 16d79d5a564..88680c80aae 100644 --- a/keyboards/dztech/dz96/keymaps/default/keymap.c +++ b/keyboards/dztech/dz96/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_default( QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, BL_TOGG, BL_UP, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/dztech/dz96/keymaps/iso/keymap.c b/keyboards/dztech/dz96/keymaps/iso/keymap.c index fe6218a3236..b61455932fb 100644 --- a/keyboards/dztech/dz96/keymaps/iso/keymap.c +++ b/keyboards/dztech/dz96/keymaps/iso/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_iso( QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, BL_TOGG, BL_UP, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/dztech/dz96/keymaps/via/keymap.c b/keyboards/dztech/dz96/keymaps/via/keymap.c index 4a357efd1a4..f265d35c304 100644 --- a/keyboards/dztech/dz96/keymaps/via/keymap.c +++ b/keyboards/dztech/dz96/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_default( QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, BL_TOGG, BL_UP, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/edda/keymaps/default/keymap.c b/keyboards/edda/keymaps/default/keymap.c index 79c55717802..07993d19b51 100644 --- a/keyboards/edda/keymaps/default/keymap.c +++ b/keyboards/edda/keymaps/default/keymap.c @@ -31,9 +31,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_alice_split_bs( - RGB_TOG, _______, 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_DEL, - RGB_MOD, _______, _______, KC_UP, _______, _______, _______, RGB_SAI, RGB_HUI, RGB_VAI, _______, _______, _______, _______, _______, - RGB_RMOD, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, RGB_SAD, RGB_HUD, RGB_VAD, _______, _______, _______, _______, + _______, _______, 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_DEL, + _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN, BL_TOGG, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ) diff --git a/keyboards/fjlabs/bolsa65/keymaps/default/keymap.c b/keyboards/fjlabs/bolsa65/keymaps/default/keymap.c index d36898e0c61..5e8350ad313 100644 --- a/keyboards/fjlabs/bolsa65/keymaps/default/keymap.c +++ b/keyboards/fjlabs/bolsa65/keymaps/default/keymap.c @@ -31,8 +31,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi_blocker( 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_TRNS, TG(1), - KC_TRNS, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_SPI, RGB_SPD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) diff --git a/keyboards/fjlabs/bolsa65/keymaps/via/keymap.c b/keyboards/fjlabs/bolsa65/keymaps/via/keymap.c index 0db9e52210a..6e55141cff7 100644 --- a/keyboards/fjlabs/bolsa65/keymaps/via/keymap.c +++ b/keyboards/fjlabs/bolsa65/keymaps/via/keymap.c @@ -33,8 +33,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi_blocker( 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_TRNS, TG(1), - KC_TRNS, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_SPI, RGB_SPD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/fjlabs/ldk65/keymaps/default/keymap.c b/keyboards/fjlabs/ldk65/keymaps/default/keymap.c index 17090ae052e..1d4f47e62a7 100644 --- a/keyboards/fjlabs/ldk65/keymaps/default/keymap.c +++ b/keyboards/fjlabs/ldk65/keymaps/default/keymap.c @@ -31,8 +31,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( QK_GESC, 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_DEL, KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUSE, QK_BOOT, KC_PGUP, - KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUSE, QK_BOOT, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK ) diff --git a/keyboards/fjlabs/ldk65/keymaps/via/keymap.c b/keyboards/fjlabs/ldk65/keymaps/via/keymap.c index 55a217d9090..ae4e8931611 100644 --- a/keyboards/fjlabs/ldk65/keymaps/via/keymap.c +++ b/keyboards/fjlabs/ldk65/keymaps/via/keymap.c @@ -33,8 +33,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( QK_GESC, 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_DEL, KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUSE, QK_BOOT, KC_PGUP, - KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUSE, QK_BOOT, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK ), diff --git a/keyboards/fjlabs/midway60/keymaps/default/keymap.c b/keyboards/fjlabs/midway60/keymaps/default/keymap.c index e1c921c4191..8f42ce31319 100644 --- a/keyboards/fjlabs/midway60/keymaps/default/keymap.c +++ b/keyboards/fjlabs/midway60/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( QK_GESC, 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_DEL, KC_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/fjlabs/midway60/keymaps/via/keymap.c b/keyboards/fjlabs/midway60/keymaps/via/keymap.c index 31f21f09081..2860c0cdad0 100644 --- a/keyboards/fjlabs/midway60/keymaps/via/keymap.c +++ b/keyboards/fjlabs/midway60/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( QK_GESC, 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_DEL, KC_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/fjlabs/sinanju/keymaps/default/keymap.c b/keyboards/fjlabs/sinanju/keymaps/default/keymap.c index b82b513b1ed..0107383011a 100644 --- a/keyboards/fjlabs/sinanju/keymaps/default/keymap.c +++ b/keyboards/fjlabs/sinanju/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi_wkl_split_bs_rshift( QK_GESC, 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_DEL, KC_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/fjlabs/sinanju/keymaps/default_ansi_wkl/keymap.c b/keyboards/fjlabs/sinanju/keymaps/default_ansi_wkl/keymap.c index 5035004e2f6..15ab2b37702 100644 --- a/keyboards/fjlabs/sinanju/keymaps/default_ansi_wkl/keymap.c +++ b/keyboards/fjlabs/sinanju/keymaps/default_ansi_wkl/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi_wkl( QK_GESC, 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_DEL, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/fjlabs/sinanju/keymaps/via/keymap.c b/keyboards/fjlabs/sinanju/keymaps/via/keymap.c index dc910d93f15..33ea65b440d 100644 --- a/keyboards/fjlabs/sinanju/keymaps/via/keymap.c +++ b/keyboards/fjlabs/sinanju/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi_wkl_split_bs_rshift( QK_GESC, 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_DEL, KC_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/fjlabs/sinanjuwk/keymaps/default/keymap.c b/keyboards/fjlabs/sinanjuwk/keymaps/default/keymap.c index 1bfbfead427..cb0a01ca538 100644 --- a/keyboards/fjlabs/sinanjuwk/keymaps/default/keymap.c +++ b/keyboards/fjlabs/sinanjuwk/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi_split_bs_rshift( QK_GESC, 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_DEL, KC_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/fjlabs/sinanjuwk/keymaps/via/keymap.c b/keyboards/fjlabs/sinanjuwk/keymaps/via/keymap.c index d1635acc544..7081b24c054 100644 --- a/keyboards/fjlabs/sinanjuwk/keymaps/via/keymap.c +++ b/keyboards/fjlabs/sinanjuwk/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi_split_bs_rshift( QK_GESC, 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_DEL, KC_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/gh60/revc/keymaps/default_abnt2/keymap.c b/keyboards/gh60/revc/keymaps/default_abnt2/keymap.c index fc6075f3379..d69402c841b 100644 --- a/keyboards/gh60/revc/keymaps/default_abnt2/keymap.c +++ b/keyboards/gh60/revc/keymaps/default_abnt2/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FL] = LAYOUT_60_abnt2( KC_GRV, 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_DEL, - XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LSFT, XXXXXXX, XXXXXXX, XXXXXXX, BL_DOWN, BL_TOGG, BL_UP, BL_STEP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LCTL, KC_LGUI, KC_LGUI, XXXXXXX, KC_RALT, KC_RGUI, _______, KC_RCTL), diff --git a/keyboards/gh60/satan/keymaps/colemak/keymap.c b/keyboards/gh60/satan/keymaps/colemak/keymap.c index 0fc195fe6c6..93dba80fc30 100644 --- a/keyboards/gh60/satan/keymaps/colemak/keymap.c +++ b/keyboards/gh60/satan/keymaps/colemak/keymap.c @@ -51,19 +51,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------' */ [_FL] = LAYOUT_60_ansi( - #ifdef RGBLIGHT_ENABLE - KC_GRV, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,QK_BOOT, - _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, BL_DOWN,BL_UP, BL_TOGG, - _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, - _______,RGB_TOG,RGB_MOD,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD,_______,_______,_______, - _______,_______,_______, _______, _______,_______,_______, _______ - #else KC_GRV, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,QK_BOOT, _______,KC_MPRV,KC_MPLY,KC_MNXT,_______,_______,_______,KC_HOME,KC_PGDN,KC_PGUP, KC_END, BL_DOWN,BL_UP, BL_TOGG, KC_DEL, KC_VOLD,KC_MUTE,KC_VOLU,_______,_______,_______,KC_LEFT,KC_DOWN,KC_UP, KC_RGHT,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______,_______,_______,_______ - #endif ), }; diff --git a/keyboards/giabalanai/keyboard.json b/keyboards/giabalanai/keyboard.json index ae5787cec6e..6cadf023281 100644 --- a/keyboards/giabalanai/keyboard.json +++ b/keyboards/giabalanai/keyboard.json @@ -38,8 +38,7 @@ "mousekey": false, "nkro": false, "command": false, - "backlight": false, - "rgb_matrix": false + "backlight": false }, "build": { "lto": true diff --git a/keyboards/handwired/hnah40/keymaps/default/keymap.c b/keyboards/handwired/hnah40/keymaps/default/keymap.c index ecea89280cd..9842e7408d3 100644 --- a/keyboards/handwired/hnah40/keymaps/default/keymap.c +++ b/keyboards/handwired/hnah40/keymaps/default/keymap.c @@ -40,8 +40,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_SPACE, KC_APP, KC_TRNS, KC_RCTL ), [_RAISE] = LAYOUT( /* Base */ - QK_BOOT, KC_1, KC_UP, RGB_TOG, RGB_MOD, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, - KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT , RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_ENT, + QK_BOOT, KC_1, KC_UP, KC_TRNS, KC_TRNS, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPACE, KC_SPACE, KC_LEFT, KC_DOWN, KC_RGHT ), diff --git a/keyboards/handwired/ortho_brass/keymaps/default/keymap.c b/keyboards/handwired/ortho_brass/keymaps/default/keymap.c index 4101bb7b02d..d5ab0ba3985 100644 --- a/keyboards/handwired/ortho_brass/keymaps/default/keymap.c +++ b/keyboards/handwired/ortho_brass/keymaps/default/keymap.c @@ -160,7 +160,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12_1x2uC( - _______, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , _______, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/pilcrow/keymaps/default/keymap.c b/keyboards/handwired/pilcrow/keymaps/default/keymap.c index 34b75c417a7..8882fdb3ea5 100644 --- a/keyboards/handwired/pilcrow/keymaps/default/keymap.c +++ b/keyboards/handwired/pilcrow/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT( QK_BOOT, KC_UP, _______, _______, _______, _______, _______, KC_WH_D, KC_MS_U, KC_WH_U, KC_LEFT, KC_DOWN, KC_RGHT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, KC_MS_L, KC_MS_D, KC_MS_R, - RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_BTN2, _______, _______, _______, _______ ) }; diff --git a/keyboards/handwired/riblee_split/keymaps/default/keymap.c b/keyboards/handwired/riblee_split/keymaps/default/keymap.c index f954599c90e..9bcb8134ec5 100644 --- a/keyboards/handwired/riblee_split/keymaps/default/keymap.c +++ b/keyboards/handwired/riblee_split/keymaps/default/keymap.c @@ -146,7 +146,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/stef9998/split_5x7/keymaps/stef9998/keymap.c b/keyboards/handwired/stef9998/split_5x7/keymaps/stef9998/keymap.c index 833a245c543..ce807018d93 100644 --- a/keyboards/handwired/stef9998/split_5x7/keymaps/stef9998/keymap.c +++ b/keyboards/handwired/stef9998/split_5x7/keymaps/stef9998/keymap.c @@ -160,7 +160,7 @@ _______ ,_______ ,RALT_T(KC_S),LCTL_T(KC_D),LSFT_T(KC_F),LT(_SYM,KC_G),_______ , // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┐ XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,XXXXXXX , XXXXXXX ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,XXXXXXX , // ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - XXXXXXX ,QK_BOOT ,RGB_M_P ,RGB_TOG ,RGB_MOD ,RGB_HUD ,RGB_HUI , RGB_SAD ,RGB_SAI ,RGB_VAD ,RGB_VAI ,XXXXXXX ,XXXXXXX ,XXXXXXX , + XXXXXXX ,QK_BOOT ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , // ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , // ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/hotdox/keymaps/default/keymap.c b/keyboards/hotdox/keymaps/default/keymap.c index 5a52c055868..45e81b7fcf1 100644 --- a/keyboards/hotdox/keymaps/default/keymap.c +++ b/keyboards/hotdox/keymaps/default/keymap.c @@ -6,8 +6,7 @@ #define MDIA 2 // media keys enum custom_keycodes { - VRSN = SAFE_RANGE, - RGB_SLD + VRSN = SAFE_RANGE }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -83,18 +82,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, EE_CLR, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - RGB_MOD,KC_TRNS, + KC_TRNS,KC_TRNS, KC_TRNS, - RGB_VAD,RGB_VAI,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, // right hand KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, - RGB_TOG, RGB_SLD, + KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_HUD, RGB_HUI + KC_TRNS, KC_TRNS, KC_TRNS ), /* Keymap 2: Media and mouse keys * @@ -148,14 +147,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; - case RGB_SLD: - if (record->event.pressed) { - #ifdef RGBLIGHT_ENABLE - rgblight_mode(1); - #endif - } - return false; - break; } return true; } diff --git a/keyboards/idank/sweeq/keymaps/default/keymap.json b/keyboards/idank/sweeq/keymaps/default/keymap.json index a7845f6e238..efd87277c7f 100644 --- a/keyboards/idank/sweeq/keymaps/default/keymap.json +++ b/keyboards/idank/sweeq/keymaps/default/keymap.json @@ -51,8 +51,8 @@ "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", "KC_TRNS" , "KC_MINS" , "KC_BSLS" , "KC_GRV" , "KC_TRNS", - "RGB_RMOD" , "KC_TRNS", - "KC_TRNS" , "RGB_MOD" + "KC_TRNS" , "KC_TRNS", + "KC_TRNS" , "KC_TRNS" ], ["KC_TRNS" , "KC_COLN" , "KC_LT" , "KC_GT" , "KC_SCLN", "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", diff --git a/keyboards/input_club/ergodox_infinity/keymaps/default/keymap.c b/keyboards/input_club/ergodox_infinity/keymaps/default/keymap.c index b84f83c3ad5..8b3d110c882 100644 --- a/keyboards/input_club/ergodox_infinity/keymaps/default/keymap.c +++ b/keyboards/input_club/ergodox_infinity/keymaps/default/keymap.c @@ -11,7 +11,6 @@ enum custom_layers { enum custom_keycodes { PLACEHOLDER = SAFE_RANGE, // can always be here VRSN, - RGB_SLD }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -87,18 +86,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, EE_CLR, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - RGB_MOD,KC_TRNS, + LM_NEXT,KC_TRNS, KC_TRNS, - RGB_VAD,RGB_VAI,KC_TRNS, + LM_BRID,LM_BRIU,KC_TRNS, // right hand KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, - RGB_TOG, RGB_SLD, + LM_TOGG, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_HUD, RGB_HUI + KC_TRNS, KC_TRNS, KC_TRNS ), /* Keymap 2: Media and mouse keys * @@ -152,14 +151,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; - case RGB_SLD: - if (record->event.pressed) { - #ifdef RGBLIGHT_ENABLE - rgblight_mode(1); - #endif - } - return false; - break; } return true; } diff --git a/keyboards/kapcave/gskt00/keymaps/default/keymap.c b/keyboards/kapcave/gskt00/keymaps/default/keymap.c index 0df9320a326..f52894db187 100755 --- a/keyboards/kapcave/gskt00/keymaps/default/keymap.c +++ b/keyboards/kapcave/gskt00/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SCRL, KC_PAUS, KC_UP, KC_PAUS, KC_DEL, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_TOG) + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) }; diff --git a/keyboards/kbdfans/maja_soldered/keymaps/default/keymap.c b/keyboards/kbdfans/maja_soldered/keymaps/default/keymap.c index 31eeb0cd960..68cdcf6de54 100755 --- a/keyboards/kbdfans/maja_soldered/keymaps/default/keymap.c +++ b/keyboards/kbdfans/maja_soldered/keymaps/default/keymap.c @@ -24,8 +24,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT( /* FN */ QK_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, KC_TRNS,KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGUP, - CTL_T(KC_CAPS),RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_PGDN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGUP, + CTL_T(KC_CAPS),KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), [2] = LAYOUT( /* FN */ diff --git a/keyboards/kbdfans/maja_soldered/keymaps/via/keymap.c b/keyboards/kbdfans/maja_soldered/keymaps/via/keymap.c index e7a8b5f27a9..636ae3af727 100755 --- a/keyboards/kbdfans/maja_soldered/keymaps/via/keymap.c +++ b/keyboards/kbdfans/maja_soldered/keymaps/via/keymap.c @@ -24,8 +24,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT( /* FN */ QK_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, KC_TRNS,KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGUP, - CTL_T(KC_CAPS),RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_PGDN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGUP, + CTL_T(KC_CAPS),KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), [2] = LAYOUT( diff --git a/keyboards/kezewa/enter80/keymaps/default/keymap.c b/keyboards/kezewa/enter80/keymaps/default/keymap.c index e3bc2d65262..85638e0a9c6 100644 --- a/keyboards/kezewa/enter80/keymaps/default/keymap.c +++ b/keyboards/kezewa/enter80/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1]=LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/kezewa/enter80/keymaps/via/keymap.c b/keyboards/kezewa/enter80/keymaps/via/keymap.c index e3bc2d65262..85638e0a9c6 100644 --- a/keyboards/kezewa/enter80/keymaps/via/keymap.c +++ b/keyboards/kezewa/enter80/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1]=LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/kikoslab/kl90/keymaps/via/keymap.c b/keyboards/kikoslab/kl90/keymaps/via/keymap.c index 7534fa27612..758da22d58b 100644 --- a/keyboards/kikoslab/kl90/keymaps/via/keymap.c +++ b/keyboards/kikoslab/kl90/keymaps/via/keymap.c @@ -52,8 +52,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { #if defined(ENCODER_MAP_ENABLE) const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { [_BASE] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [_LOWER] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, - [_RAISE] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, + [_LOWER] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [_RAISE] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, }; #endif diff --git a/keyboards/kraken_jones/pteron56/keymaps/via/keymap.c b/keyboards/kraken_jones/pteron56/keymaps/via/keymap.c index 3a1da6324e8..b3a56ac7f43 100644 --- a/keyboards/kraken_jones/pteron56/keymaps/via/keymap.c +++ b/keyboards/kraken_jones/pteron56/keymaps/via/keymap.c @@ -27,8 +27,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( QK_BOOT, KC_SLEP, KC_WAKE, KC_TRNS, KC_PWR, KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_DEL, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSEL, KC_MYCM, KC_PSLS, KC_PAST, - RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD, RGB_M_P, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSEL, KC_MYCM, KC_PSLS, KC_PAST, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PDOT ), diff --git a/keyboards/ktec/ergodone/keymaps/default/keymap.c b/keyboards/ktec/ergodone/keymaps/default/keymap.c index 837af0fa03c..41d5da8deed 100644 --- a/keyboards/ktec/ergodone/keymaps/default/keymap.c +++ b/keyboards/ktec/ergodone/keymaps/default/keymap.c @@ -82,18 +82,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, EE_CLR,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - RGB_MOD,KC_TRNS, + KC_TRNS,KC_TRNS, KC_TRNS, - RGB_VAD,RGB_VAI,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, // right hand KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, - RGB_TOG, RGB_M_P, + KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_HUD, RGB_HUI + KC_TRNS, KC_TRNS, KC_TRNS ), /* Keymap 2: Media and mouse keys * diff --git a/keyboards/ktec/ergodone/keymaps/via/keymap.c b/keyboards/ktec/ergodone/keymaps/via/keymap.c index f475ef009cf..60298b820af 100644 --- a/keyboards/ktec/ergodone/keymaps/via/keymap.c +++ b/keyboards/ktec/ergodone/keymaps/via/keymap.c @@ -96,18 +96,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, EE_CLR ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - RGB_MOD,KC_TRNS, + KC_TRNS,KC_TRNS, KC_TRNS, - RGB_VAD,RGB_VAI,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, // right hand KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, - RGB_TOG, RGB_M_P , + KC_TRNS, KC_TRNS , KC_TRNS, - KC_TRNS, RGB_HUD, RGB_HUI + KC_TRNS, KC_TRNS, KC_TRNS ), /* Keymap 2: Media and mouse keys * diff --git a/keyboards/montsinger/palmetto/keymaps/default/keymap.c b/keyboards/montsinger/palmetto/keymaps/default/keymap.c index 5d7b042b27a..5239736c1ab 100644 --- a/keyboards/montsinger/palmetto/keymaps/default/keymap.c +++ b/keyboards/montsinger/palmetto/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_60_ansi( QK_GESC, 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_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_GRV, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/montsinger/palmetto/keymaps/via/keymap.c b/keyboards/montsinger/palmetto/keymaps/via/keymap.c index 5d7b042b27a..5239736c1ab 100644 --- a/keyboards/montsinger/palmetto/keymaps/via/keymap.c +++ b/keyboards/montsinger/palmetto/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_60_ansi( QK_GESC, 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_DEL, - RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_GRV, _______, _______, _______, _______, _______, _______, QK_BOOT diff --git a/keyboards/neson_design/810e/keyboard.json b/keyboards/neson_design/810e/keyboard.json index ee80a34afbd..2c62eb1f88e 100644 --- a/keyboards/neson_design/810e/keyboard.json +++ b/keyboards/neson_design/810e/keyboard.json @@ -8,8 +8,7 @@ "bootmagic": true, "extrakey": true, "mousekey": true, - "nkro": true, - "rgblight": false + "nkro": true }, "indicators": { "caps_lock": "A10", diff --git a/keyboards/neson_design/810e/keymaps/default/keymap.c b/keyboards/neson_design/810e/keymaps/default/keymap.c index f4893faa357..261314f2655 100644 --- a/keyboards/neson_design/810e/keymaps/default/keymap.c +++ b/keyboards/neson_design/810e/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1]=LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, KC_F13, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, KC_F13, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU,_______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______) diff --git a/keyboards/neson_design/810e/keymaps/via/keymap.c b/keyboards/neson_design/810e/keymaps/via/keymap.c index c5fff9823dd..963adba913f 100644 --- a/keyboards/neson_design/810e/keymaps/via/keymap.c +++ b/keyboards/neson_design/810e/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1]=LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, KC_F13, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, KC_F13, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU,_______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______) diff --git a/keyboards/p3d/glitch/glitch.c b/keyboards/p3d/glitch/glitch.c index 6680e6506a2..6ce1cf6e2e6 100644 --- a/keyboards/p3d/glitch/glitch.c +++ b/keyboards/p3d/glitch/glitch.c @@ -21,10 +21,8 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { return false; } if (clockwise) { - // tap_code(RGB_MOD); rgblight_step(); } else { - // tap_code(RGB_RMOD); rgblight_step_reverse(); } diff --git a/keyboards/phase_studio/titan65/soldered/keymaps/default/keymap.c b/keyboards/phase_studio/titan65/soldered/keymaps/default/keymap.c index b6bb5f03234..05d34a0c56a 100644 --- a/keyboards/phase_studio/titan65/soldered/keymaps/default/keymap.c +++ b/keyboards/phase_studio/titan65/soldered/keymaps/default/keymap.c @@ -27,8 +27,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, - _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/phase_studio/titan65/soldered/keymaps/via/keymap.c b/keyboards/phase_studio/titan65/soldered/keymaps/via/keymap.c index 08448e679c1..0e6a9f4328a 100644 --- a/keyboards/phase_studio/titan65/soldered/keymaps/via/keymap.c +++ b/keyboards/phase_studio/titan65/soldered/keymaps/via/keymap.c @@ -26,8 +26,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, - _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/ploopyco/mouse/keyboard.json b/keyboards/ploopyco/mouse/keyboard.json index e24572cc54c..4c81ee73383 100644 --- a/keyboards/ploopyco/mouse/keyboard.json +++ b/keyboards/ploopyco/mouse/keyboard.json @@ -15,7 +15,6 @@ "mousekey": true, "nkro": false, "pointing_device": true, - "rgblight": false, "encoder": true }, "bootmagic": { diff --git a/keyboards/projectcain/vault45/keymaps/default/keymap.c b/keyboards/projectcain/vault45/keymaps/default/keymap.c index 87baccad045..275d2bf3a6f 100644 --- a/keyboards/projectcain/vault45/keymaps/default/keymap.c +++ b/keyboards/projectcain/vault45/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [SYM] = LAYOUT_split_4space( - RGB_TOG, S(KC_GRV), KC_GRV, KC_BSLS, S(KC_BSLS), KC_TRNS, KC_TRNS, S(KC_MINS), KC_EQL, KC_TRNS, C(KC_W), C(KC_T), KC_TRNS, + KC_TRNS, S(KC_GRV), KC_GRV, KC_BSLS, S(KC_BSLS), KC_TRNS, KC_TRNS, S(KC_MINS), KC_EQL, KC_TRNS, C(KC_W), C(KC_T), KC_TRNS, KC_TRNS, S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8), KC_SCLN, S(KC_SCLN), KC_TRNS, S(KC_LBRC), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, S(KC_RBRC), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, KC_NUM, KC_TRNS diff --git a/keyboards/punk75/keymaps/default/keymap.c b/keyboards/punk75/keymaps/default/keymap.c index b6e8884eb9e..c867e0e493d 100644 --- a/keyboards/punk75/keymaps/default/keymap.c +++ b/keyboards/punk75/keymaps/default/keymap.c @@ -60,10 +60,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_5x15( /* FUNCTION */ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_NUM, KC_SLSH, KC_ASTR, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, - KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, - KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, RGB_VAD, RGB_VAI, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, - _______, _______, RGB_TOG, MO(_FN), RGB_RMOD,RGB_MOD, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, MO(_FN), _______, _______, _______ + KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, _______, _______, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _______, _______, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, + KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, _______, _______, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, + _______, _______, _______, MO(_FN), _______, _______, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, MO(_FN), _______, _______, _______ ) }; diff --git a/keyboards/punk75/keymaps/via/keymap.c b/keyboards/punk75/keymaps/via/keymap.c index 97ebc96593b..e284c525b64 100644 --- a/keyboards/punk75/keymaps/via/keymap.c +++ b/keyboards/punk75/keymaps/via/keymap.c @@ -39,10 +39,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ortho_5x15( /* FUNCTION */ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_NUM, KC_SLSH, KC_ASTR, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, - KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, - KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, RGB_VAD, RGB_VAI, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, - _______, _______, RGB_TOG, MO(1), RGB_RMOD,RGB_MOD, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, MO(1), _______, _______, _______ + KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, _______, _______, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _______, _______, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, + KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, _______, _______, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, + _______, _______, _______, MO(1), _______, _______, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, MO(1), _______, _______, _______ ), [2] = LAYOUT_ortho_5x15( diff --git a/keyboards/rart/rart75/keymaps/ansi/keymap.c b/keyboards/rart/rart75/keymaps/ansi/keymap.c index b4579c5dfb0..7c31568b7ca 100644 --- a/keyboards/rart/rart75/keymaps/ansi/keymap.c +++ b/keyboards/rart/rart75/keymaps/ansi/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DOWN, BL_TOGG, BL_UP, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/rart/rart75/keymaps/default/keymap.c b/keyboards/rart/rart75/keymaps/default/keymap.c index f8266cce55d..5a7bb1e97c3 100644 --- a/keyboards/rart/rart75/keymaps/default/keymap.c +++ b/keyboards/rart/rart75/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_split_space_split_bs( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DOWN, BL_TOGG, BL_UP, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/rart/rart75/keymaps/via/keymap.c b/keyboards/rart/rart75/keymaps/via/keymap.c index 786e77ac7ee..7db4b58b32d 100644 --- a/keyboards/rart/rart75/keymaps/via/keymap.c +++ b/keyboards/rart/rart75/keymaps/via/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_split_space_split_bs( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DOWN, BL_TOGG, BL_UP, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/reviung/reviung39/keyboard.json b/keyboards/reviung/reviung39/keyboard.json index fca69124b1b..56200a6a3d3 100644 --- a/keyboards/reviung/reviung39/keyboard.json +++ b/keyboards/reviung/reviung39/keyboard.json @@ -14,7 +14,30 @@ "console": true, "extrakey": true, "mousekey": false, - "nkro": false + "nkro": false, + "rgblight": true + }, + "rgblight": { + "led_count": 11, + "hue_steps": 16, + "saturation_steps": 16, + "brightness_steps": 16, + "sleep": true, + "animations": { + "breathing": true, + "rainbow_mood": true, + "rainbow_swirl": true, + "snake": true, + "knight": true, + "christmas": true, + "static_gradient": true, + "rgb_test": true, + "alternating": true, + "twinkle": true + } + }, + "ws2812": { + "pin": "D3" }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], diff --git a/keyboards/reviung/reviung39/keymaps/default/config.h b/keyboards/reviung/reviung39/keymaps/default/config.h deleted file mode 100644 index d882e8ad949..00000000000 --- a/keyboards/reviung/reviung39/keymaps/default/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2019 gtips - * - * 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 . - */ - -#pragma once - -// place overrides here - -#define WS2812_DI_PIN D3 - #define RGBLIGHT_LED_COUNT 11 - #define RGBLIGHT_HUE_STEP 16 - #define RGBLIGHT_SAT_STEP 16 - #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ - #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -#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 diff --git a/keyboards/reviung/reviung39/keymaps/default/rules.mk b/keyboards/reviung/reviung39/keymaps/default/rules.mk deleted file mode 100644 index 1e3cebb1451..00000000000 --- a/keyboards/reviung/reviung39/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -RGBLIGHT_ENABLE = yes diff --git a/keyboards/reviung/reviung39/keymaps/default_s/config.h b/keyboards/reviung/reviung39/keymaps/default_s/config.h index 3fd3c73fcc2..816f0b0fcf6 100644 --- a/keyboards/reviung/reviung39/keymaps/default_s/config.h +++ b/keyboards/reviung/reviung39/keymaps/default_s/config.h @@ -16,22 +16,5 @@ #pragma once -// place overrides here - -#define WS2812_DI_PIN D3 - #define RGBLIGHT_LED_COUNT 6 - #define RGBLIGHT_HUE_STEP 16 - #define RGBLIGHT_SAT_STEP 16 - #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ - #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -#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 +#undef RGBLIGHT_LED_COUNT +#define RGBLIGHT_LED_COUNT 6 diff --git a/keyboards/reviung/reviung39/keymaps/default_s/rules.mk b/keyboards/reviung/reviung39/keymaps/default_s/rules.mk deleted file mode 100644 index 1e3cebb1451..00000000000 --- a/keyboards/reviung/reviung39/keymaps/default_s/rules.mk +++ /dev/null @@ -1 +0,0 @@ -RGBLIGHT_ENABLE = yes diff --git a/keyboards/reviung/reviung39/keymaps/via/keymap.c b/keyboards/reviung/reviung39/keymaps/via/keymap.c index 585cdb35188..aba882337d3 100644 --- a/keyboards/reviung/reviung39/keymaps/via/keymap.c +++ b/keyboards/reviung/reviung39/keymaps/via/keymap.c @@ -45,8 +45,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + UG_VALU, UG_SATU, UG_HUEU, UG_NEXT, XXXXXXX, UG_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + UG_VALD, UG_SATD, UG_HUED, UG_PREV, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, _______ ), diff --git a/keyboards/reviung/reviung39/keymaps/via/rules.mk b/keyboards/reviung/reviung39/keymaps/via/rules.mk index 5d85ccd1031..36b7ba9cbc9 100644 --- a/keyboards/reviung/reviung39/keymaps/via/rules.mk +++ b/keyboards/reviung/reviung39/keymaps/via/rules.mk @@ -1,3 +1,2 @@ VIA_ENABLE = yes -RGBLIGHT_ENABLE = no LTO_ENABLE = yes diff --git a/keyboards/reviung/reviung61/keymaps/default/keymap.c b/keyboards/reviung/reviung61/keymaps/default/keymap.c index dc795062510..5e5d97f0187 100644 --- a/keyboards/reviung/reviung61/keymaps/default/keymap.c +++ b/keyboards/reviung/reviung61/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_60_ansi( KC_GRV, 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_DEL, - _______, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, + _______, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, KC_INS, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______ diff --git a/keyboards/rgbkb/mun/rev1/keyboard.json b/keyboards/rgbkb/mun/rev1/keyboard.json index daed72b4d2d..cf988d8f95b 100644 --- a/keyboards/rgbkb/mun/rev1/keyboard.json +++ b/keyboards/rgbkb/mun/rev1/keyboard.json @@ -18,8 +18,7 @@ "mousekey": false, "nkro": true, "oled": true, - "rgb_matrix": true, - "rgblight": false + "rgb_matrix": true }, "rgblight": { "led_count": 98, diff --git a/keyboards/rgbkb/sol/rev1/keyboard.json b/keyboards/rgbkb/sol/rev1/keyboard.json index 937ed97ce1b..9607e762595 100644 --- a/keyboards/rgbkb/sol/rev1/keyboard.json +++ b/keyboards/rgbkb/sol/rev1/keyboard.json @@ -15,7 +15,6 @@ "mousekey": false, "nkro": false, "oled": false, - "rgb_matrix": false, "rgblight": true }, "rgb_matrix": { diff --git a/keyboards/rgbkb/sol/rev2/keyboard.json b/keyboards/rgbkb/sol/rev2/keyboard.json index b080319f174..1a5ca12ed95 100644 --- a/keyboards/rgbkb/sol/rev2/keyboard.json +++ b/keyboards/rgbkb/sol/rev2/keyboard.json @@ -18,8 +18,7 @@ "mousekey": false, "nkro": false, "oled": false, - "rgb_matrix": true, - "rgblight": false + "rgb_matrix": true }, "rgb_matrix": { "animations": { diff --git a/keyboards/rgbkb/sol3/rev1/keyboard.json b/keyboards/rgbkb/sol3/rev1/keyboard.json index 0df040e6e08..54e57e3f8fe 100644 --- a/keyboards/rgbkb/sol3/rev1/keyboard.json +++ b/keyboards/rgbkb/sol3/rev1/keyboard.json @@ -21,8 +21,7 @@ "mousekey": true, "nkro": true, "oled": true, - "rgb_matrix": true, - "rgblight": false + "rgb_matrix": true }, "rgblight": { "led_count": 156, diff --git a/keyboards/scatter42/keymaps/default/keymap.c b/keyboards/scatter42/keymaps/default/keymap.c index 8f3da5498b1..5c6d932aac1 100644 --- a/keyboards/scatter42/keymaps/default/keymap.c +++ b/keyboards/scatter42/keymaps/default/keymap.c @@ -27,5 +27,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT(KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LCTL, KC_LSFT, KC_TAB, KC_LGUI, MO(1), KC_SPC, KC_ENT, MO(2), KC_RALT, KC_BSPC, KC_RSFT, KC_RCTL), [1] = LAYOUT(KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F11, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_LCTL, KC_LSFT, KC_ESC, KC_LGUI, KC_TRNS, KC_SPC, KC_ENT, MO(3), KC_RALT, KC_DEL, KC_RSFT, KC_PSCR), [2] = LAYOUT(KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_NO, KC_NO, KC_NO, KC_BSLS, KC_GRV, KC_MINS, KC_EQL, KC_QUOT, KC_LCBR, KC_RCBR, KC_NO, KC_NO, KC_NO, KC_PIPE, KC_TILD, KC_UNDS, KC_PLUS, KC_DQUO, KC_LBRC, KC_RBRC, KC_LCTL, KC_LSFT, KC_ESC, KC_LGUI, MO(3), KC_SPC, KC_ENT, KC_TRNS, KC_RALT, KC_DEL, KC_RSFT, KC_RCTL), - [3] = LAYOUT(KC_VOLU, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRIU, KC_VOLD, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRID, KC_MUTE, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO) + [3] = LAYOUT(KC_VOLU, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRIU, KC_VOLD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRID, KC_MUTE, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO) }; diff --git a/keyboards/sirius/unigo66/keyboard.json b/keyboards/sirius/unigo66/keyboard.json index ac683a0f1db..0b3463013c8 100644 --- a/keyboards/sirius/unigo66/keyboard.json +++ b/keyboards/sirius/unigo66/keyboard.json @@ -13,7 +13,6 @@ "extrakey": true, "mousekey": false, "nkro": false, - "rgblight": false, "usb_hid": true }, "processor": "atmega32u4", diff --git a/keyboards/switchplate/switchplate910/keymaps/default/keymap.c b/keyboards/switchplate/switchplate910/keymaps/default/keymap.c index 9ba001dc46d..9c00a28480a 100644 --- a/keyboards/switchplate/switchplate910/keymaps/default/keymap.c +++ b/keyboards/switchplate/switchplate910/keymaps/default/keymap.c @@ -32,9 +32,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_65_ansi_blocker_split_bs( /* L1 */ KC_GRV, 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_DEL, KC_INS, KC_TRNS, - KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, - QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_MOD, RGB_SAI, RGB_TOG, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI + KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), }; diff --git a/keyboards/switchplate/switchplate910/keymaps/via/keymap.c b/keyboards/switchplate/switchplate910/keymaps/via/keymap.c index c4a2589e9ac..98098784cce 100644 --- a/keyboards/switchplate/switchplate910/keymaps/via/keymap.c +++ b/keyboards/switchplate/switchplate910/keymaps/via/keymap.c @@ -32,10 +32,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_65_ansi_blocker_split_bs( /* L1 */ KC_GRV, 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_DEL, KC_INS, KC_TRNS, - KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, - QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_MOD, RGB_SAI, RGB_TOG, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI + KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), LAYOUT_65_ansi_blocker_split_bs( /* L2 */ diff --git a/keyboards/takashicompany/ergomirage/keymaps/default/keymap.c b/keyboards/takashicompany/ergomirage/keymaps/default/keymap.c index c3f4faf59a0..1c33054ce93 100644 --- a/keyboards/takashicompany/ergomirage/keymaps/default/keymap.c +++ b/keyboards/takashicompany/ergomirage/keymaps/default/keymap.c @@ -62,9 +62,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), LAYOUT( - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, DF(0), DF(3), KC_TRNS, - KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, - KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, DF(0), DF(3), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/takashicompany/ergomirage/keymaps/via/keymap.c b/keyboards/takashicompany/ergomirage/keymaps/via/keymap.c index c3f4faf59a0..1c33054ce93 100644 --- a/keyboards/takashicompany/ergomirage/keymaps/via/keymap.c +++ b/keyboards/takashicompany/ergomirage/keymaps/via/keymap.c @@ -62,9 +62,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), LAYOUT( - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, DF(0), DF(3), KC_TRNS, - KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, - KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, DF(0), DF(3), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/tominabox1/underscore33/rev1/keymaps/default/keymap.c b/keyboards/tominabox1/underscore33/rev1/keymaps/default/keymap.c index 8ed4720fdf3..4dcb222cea5 100644 --- a/keyboards/tominabox1/underscore33/rev1/keymaps/default/keymap.c +++ b/keyboards/tominabox1/underscore33/rev1/keymaps/default/keymap.c @@ -57,8 +57,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NAV] = LAYOUT_33_split_space( QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, - RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, - RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_MINS, KC_INT1, KC_COMM, KC_DOT, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_MINS, KC_INT1, KC_COMM, KC_DOT, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), }; diff --git a/keyboards/tominabox1/underscore33/rev1/keymaps/default_big_space/keymap.c b/keyboards/tominabox1/underscore33/rev1/keymaps/default_big_space/keymap.c index 0aa2a412c92..ce513872c50 100644 --- a/keyboards/tominabox1/underscore33/rev1/keymaps/default_big_space/keymap.c +++ b/keyboards/tominabox1/underscore33/rev1/keymaps/default_big_space/keymap.c @@ -57,8 +57,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NAV] = LAYOUT_33_big_space( QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, - RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, - RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_MINS, KC_INT1, KC_COMM, KC_DOT, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_MINS, KC_INT1, KC_COMM, KC_DOT, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS ), }; diff --git a/keyboards/wekey/polaris/keymaps/default/keymap.c b/keyboards/wekey/polaris/keymaps/default/keymap.c index 5c137002efd..8bc5eca945c 100644 --- a/keyboards/wekey/polaris/keymaps/default/keymap.c +++ b/keyboards/wekey/polaris/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { QK_BOOT, 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_DEL, KC_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, - _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_PSCR, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; From 4d31c5172515a3cf5ea92010142ae11a2743e235 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 20 May 2024 12:31:42 -0700 Subject: [PATCH 010/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: D, Part 1 (#23749) Affects: - `dailycraft/owl8` - `dailycraft/sandbox/rev1` - `dailycraft/sandbox/rev2` - `dailycraft/stickey4` - `dailycraft/wings42/rev1` - `dailycraft/wings42/rev1_extkeys` - `dailycraft/wings42/rev2` - `daji/seis_cinco` - `dark/magnum_ergo_1` - `darkproject/kd83a_bfg_edition` - `darkproject/kd87a_bfg_edition` - `dc01/arrow` - `dc01/left` - `dc01/numpad` - `dc01/right` - `dcpedit/redherring` - `delikeeb/flatbread60` - `delikeeb/vaguettelite` - `delikeeb/vanana/rev1` - `delikeeb/vanana/rev2` - `delikeeb/vaneela` - `delikeeb/vaneelaex` - `delikeeb/waaffle/rev3/elite_c` - `delikeeb/waaffle/rev3/pro_micro` - `deltapad` - `deltasplit75/v2` - `dk60` - `dm9records/lain` - `dm9records/plaid` - `dm9records/tartan` - `dmqdesign/spin` --- keyboards/dailycraft/owl8/config.h | 39 ------------------- keyboards/dailycraft/owl8/keyboard.json | 6 +++ keyboards/dailycraft/sandbox/rev1/config.h | 39 ------------------- .../dailycraft/sandbox/rev1/keyboard.json | 6 +++ keyboards/dailycraft/sandbox/rev2/config.h | 39 ------------------- .../dailycraft/sandbox/rev2/keyboard.json | 6 +++ keyboards/dailycraft/stickey4/config.h | 39 ------------------- keyboards/dailycraft/stickey4/keyboard.json | 6 +++ keyboards/dailycraft/wings42/rev1/config.h | 39 ------------------- .../dailycraft/wings42/rev1/keyboard.json | 6 +++ .../dailycraft/wings42/rev1_extkeys/config.h | 39 ------------------- .../wings42/rev1_extkeys/keyboard.json | 6 +++ keyboards/dailycraft/wings42/rev2/config.h | 39 ------------------- .../dailycraft/wings42/rev2/keyboard.json | 6 +++ keyboards/daji/seis_cinco/config.h | 5 --- keyboards/daji/seis_cinco/keyboard.json | 6 +++ keyboards/dark/magnum_ergo_1/config.h | 4 -- keyboards/dark/magnum_ergo_1/keyboard.json | 6 +++ .../darkproject/kd83a_bfg_edition/config.h | 5 --- .../kd83a_bfg_edition/keyboard.json | 6 ++- .../darkproject/kd87a_bfg_edition/config.h | 5 --- .../kd87a_bfg_edition/keyboard.json | 6 ++- keyboards/dc01/arrow/config.h | 5 --- keyboards/dc01/arrow/keyboard.json | 6 +++ keyboards/dc01/left/config.h | 5 --- keyboards/dc01/left/keyboard.json | 6 +++ keyboards/dc01/numpad/config.h | 5 --- keyboards/dc01/numpad/keyboard.json | 6 +++ keyboards/dc01/right/config.h | 5 --- keyboards/dc01/right/keyboard.json | 6 +++ keyboards/dcpedit/redherring/config.h | 4 +- keyboards/dcpedit/redherring/keyboard.json | 6 ++- keyboards/delikeeb/flatbread60/config.h | 39 ------------------- keyboards/delikeeb/flatbread60/keyboard.json | 6 +++ keyboards/delikeeb/vaguettelite/config.h | 39 ------------------- keyboards/delikeeb/vaguettelite/keyboard.json | 6 +++ keyboards/delikeeb/vanana/rev1/config.h | 5 --- keyboards/delikeeb/vanana/rev1/keyboard.json | 6 +++ keyboards/delikeeb/vanana/rev2/config.h | 5 --- keyboards/delikeeb/vanana/rev2/keyboard.json | 6 +++ keyboards/delikeeb/vaneela/config.h | 39 ------------------- keyboards/delikeeb/vaneela/keyboard.json | 6 +++ keyboards/delikeeb/vaneelaex/config.h | 39 ------------------- keyboards/delikeeb/vaneelaex/keyboard.json | 6 +++ keyboards/delikeeb/waaffle/rev3/config.h | 5 --- .../waaffle/rev3/elite_c/keyboard.json | 6 +++ .../waaffle/rev3/pro_micro/keyboard.json | 6 +++ keyboards/deltapad/config.h | 39 ------------------- keyboards/deltapad/keyboard.json | 6 +++ keyboards/deltasplit75/v2/config.h | 39 ------------------- keyboards/deltasplit75/v2/keyboard.json | 6 +++ keyboards/dk60/config.h | 39 ------------------- keyboards/dk60/keyboard.json | 6 +++ keyboards/dm9records/lain/config.h | 5 --- keyboards/dm9records/lain/keyboard.json | 6 +++ keyboards/dm9records/plaid/config.h | 39 ------------------- keyboards/dm9records/plaid/keyboard.json | 6 +++ keyboards/dm9records/tartan/config.h | 39 ------------------- keyboards/dm9records/tartan/keyboard.json | 6 +++ keyboards/dmqdesign/spin/config.h | 23 ----------- keyboards/dmqdesign/spin/keyboard.json | 6 +++ 61 files changed, 184 insertions(+), 712 deletions(-) delete mode 100644 keyboards/dailycraft/owl8/config.h delete mode 100644 keyboards/dailycraft/sandbox/rev1/config.h delete mode 100644 keyboards/dailycraft/sandbox/rev2/config.h delete mode 100644 keyboards/dailycraft/stickey4/config.h delete mode 100644 keyboards/dailycraft/wings42/rev1/config.h delete mode 100644 keyboards/dailycraft/wings42/rev1_extkeys/config.h delete mode 100644 keyboards/dailycraft/wings42/rev2/config.h delete mode 100644 keyboards/delikeeb/flatbread60/config.h delete mode 100644 keyboards/delikeeb/vaguettelite/config.h delete mode 100644 keyboards/delikeeb/vaneela/config.h delete mode 100644 keyboards/delikeeb/vaneelaex/config.h delete mode 100644 keyboards/deltapad/config.h delete mode 100644 keyboards/deltasplit75/v2/config.h delete mode 100644 keyboards/dk60/config.h delete mode 100644 keyboards/dm9records/plaid/config.h delete mode 100644 keyboards/dm9records/tartan/config.h delete mode 100644 keyboards/dmqdesign/spin/config.h diff --git a/keyboards/dailycraft/owl8/config.h b/keyboards/dailycraft/owl8/config.h deleted file mode 100644 index 7da6e3f1bf2..00000000000 --- a/keyboards/dailycraft/owl8/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 yfuku - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dailycraft/owl8/keyboard.json b/keyboards/dailycraft/owl8/keyboard.json index 9d654b7d3fb..a4a1a70e3ed 100644 --- a/keyboards/dailycraft/owl8/keyboard.json +++ b/keyboards/dailycraft/owl8/keyboard.json @@ -25,6 +25,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["F4", "F7", "B3", "B6", "F5", "F6", "B1", "B2", "D4", "C6", "D7", "E6"] diff --git a/keyboards/dailycraft/sandbox/rev1/config.h b/keyboards/dailycraft/sandbox/rev1/config.h deleted file mode 100644 index 7da6e3f1bf2..00000000000 --- a/keyboards/dailycraft/sandbox/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 yfuku - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dailycraft/sandbox/rev1/keyboard.json b/keyboards/dailycraft/sandbox/rev1/keyboard.json index 0a48996815e..8658de96df2 100644 --- a/keyboards/dailycraft/sandbox/rev1/keyboard.json +++ b/keyboards/dailycraft/sandbox/rev1/keyboard.json @@ -21,6 +21,12 @@ "extrakey": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/dailycraft/sandbox/rev2/config.h b/keyboards/dailycraft/sandbox/rev2/config.h deleted file mode 100644 index 7da6e3f1bf2..00000000000 --- a/keyboards/dailycraft/sandbox/rev2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 yfuku - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dailycraft/sandbox/rev2/keyboard.json b/keyboards/dailycraft/sandbox/rev2/keyboard.json index d6f0ac2c2a5..c9f2b8f567f 100644 --- a/keyboards/dailycraft/sandbox/rev2/keyboard.json +++ b/keyboards/dailycraft/sandbox/rev2/keyboard.json @@ -25,6 +25,12 @@ "extrakey": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/dailycraft/stickey4/config.h b/keyboards/dailycraft/stickey4/config.h deleted file mode 100644 index 7da6e3f1bf2..00000000000 --- a/keyboards/dailycraft/stickey4/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 yfuku - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dailycraft/stickey4/keyboard.json b/keyboards/dailycraft/stickey4/keyboard.json index 101c796b4ea..d0e2a491d39 100644 --- a/keyboards/dailycraft/stickey4/keyboard.json +++ b/keyboards/dailycraft/stickey4/keyboard.json @@ -25,6 +25,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D4", "C6", "D7", "E6"] diff --git a/keyboards/dailycraft/wings42/rev1/config.h b/keyboards/dailycraft/wings42/rev1/config.h deleted file mode 100644 index 7da6e3f1bf2..00000000000 --- a/keyboards/dailycraft/wings42/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 yfuku - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dailycraft/wings42/rev1/keyboard.json b/keyboards/dailycraft/wings42/rev1/keyboard.json index a32b591bd6e..6b19954d881 100644 --- a/keyboards/dailycraft/wings42/rev1/keyboard.json +++ b/keyboards/dailycraft/wings42/rev1/keyboard.json @@ -24,6 +24,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "split_3x6_3" ], diff --git a/keyboards/dailycraft/wings42/rev1_extkeys/config.h b/keyboards/dailycraft/wings42/rev1_extkeys/config.h deleted file mode 100644 index 7da6e3f1bf2..00000000000 --- a/keyboards/dailycraft/wings42/rev1_extkeys/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 yfuku - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dailycraft/wings42/rev1_extkeys/keyboard.json b/keyboards/dailycraft/wings42/rev1_extkeys/keyboard.json index ff665a3bb75..1d77f044fbb 100644 --- a/keyboards/dailycraft/wings42/rev1_extkeys/keyboard.json +++ b/keyboards/dailycraft/wings42/rev1_extkeys/keyboard.json @@ -24,6 +24,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/dailycraft/wings42/rev2/config.h b/keyboards/dailycraft/wings42/rev2/config.h deleted file mode 100644 index 7da6e3f1bf2..00000000000 --- a/keyboards/dailycraft/wings42/rev2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 yfuku - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dailycraft/wings42/rev2/keyboard.json b/keyboards/dailycraft/wings42/rev2/keyboard.json index 13f283d92b3..c3b686cec44 100644 --- a/keyboards/dailycraft/wings42/rev2/keyboard.json +++ b/keyboards/dailycraft/wings42/rev2/keyboard.json @@ -31,6 +31,12 @@ "extrakey": true, "mousekey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_split_3x6_3_2": "LAYOUT_split_3x6_3" }, diff --git a/keyboards/daji/seis_cinco/config.h b/keyboards/daji/seis_cinco/config.h index d212094077a..a8afb615725 100644 --- a/keyboards/daji/seis_cinco/config.h +++ b/keyboards/daji/seis_cinco/config.h @@ -17,11 +17,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* VIA layouts * 2 bits = 4 layout options */ diff --git a/keyboards/daji/seis_cinco/keyboard.json b/keyboards/daji/seis_cinco/keyboard.json index a358ae86a1c..358dfc17ced 100644 --- a/keyboards/daji/seis_cinco/keyboard.json +++ b/keyboards/daji/seis_cinco/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B0", "A7", "B14", "A8", "B15", "A0", "C15", "C14", "C13", "B5", "B4", "B3", "A15", "A10", "A14"], "rows": ["B2", "B10", "B11", "A9", "A6"] diff --git a/keyboards/dark/magnum_ergo_1/config.h b/keyboards/dark/magnum_ergo_1/config.h index 6b153f69df6..a62055722be 100644 --- a/keyboards/dark/magnum_ergo_1/config.h +++ b/keyboards/dark/magnum_ergo_1/config.h @@ -16,10 +16,6 @@ along with this program. If not, see . #pragma once - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE - #define BACKLIGHT_PWM_DRIVER PWMD3 #define BACKLIGHT_PWM_CHANNEL 2 #define BACKLIGHT_PAL_MODE 2 diff --git a/keyboards/dark/magnum_ergo_1/keyboard.json b/keyboards/dark/magnum_ergo_1/keyboard.json index 1aecfe86305..a52de6decc0 100644 --- a/keyboards/dark/magnum_ergo_1/keyboard.json +++ b/keyboards/dark/magnum_ergo_1/keyboard.json @@ -25,6 +25,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "diode_direction": "COL2ROW", "backlight": { "pin": "C7", diff --git a/keyboards/darkproject/kd83a_bfg_edition/config.h b/keyboards/darkproject/kd83a_bfg_edition/config.h index cb7cdb57fc1..880aabd5d71 100644 --- a/keyboards/darkproject/kd83a_bfg_edition/config.h +++ b/keyboards/darkproject/kd83a_bfg_edition/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* External spi flash */ #define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14 diff --git a/keyboards/darkproject/kd83a_bfg_edition/keyboard.json b/keyboards/darkproject/kd83a_bfg_edition/keyboard.json index 56c45a222f3..23bd2b69817 100644 --- a/keyboards/darkproject/kd83a_bfg_edition/keyboard.json +++ b/keyboards/darkproject/kd83a_bfg_edition/keyboard.json @@ -31,7 +31,11 @@ }, "processor": "WB32FQ95", "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgb_matrix": { "animations": { diff --git a/keyboards/darkproject/kd87a_bfg_edition/config.h b/keyboards/darkproject/kd87a_bfg_edition/config.h index 1d4c0772a24..a32f7122311 100644 --- a/keyboards/darkproject/kd87a_bfg_edition/config.h +++ b/keyboards/darkproject/kd87a_bfg_edition/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* External spi flash */ #define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14 diff --git a/keyboards/darkproject/kd87a_bfg_edition/keyboard.json b/keyboards/darkproject/kd87a_bfg_edition/keyboard.json index 76cd497b0f3..856dbea6488 100644 --- a/keyboards/darkproject/kd87a_bfg_edition/keyboard.json +++ b/keyboards/darkproject/kd87a_bfg_edition/keyboard.json @@ -30,7 +30,11 @@ }, "processor": "WB32FQ95", "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgb_matrix": { "animations": { diff --git a/keyboards/dc01/arrow/config.h b/keyboards/dc01/arrow/config.h index ef008e5dfe4..0edb8002c8a 100644 --- a/keyboards/dc01/arrow/config.h +++ b/keyboards/dc01/arrow/config.h @@ -37,8 +37,3 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/dc01/arrow/keyboard.json b/keyboards/dc01/arrow/keyboard.json index 85ca25c23e8..72fa1b4e22c 100644 --- a/keyboards/dc01/arrow/keyboard.json +++ b/keyboards/dc01/arrow/keyboard.json @@ -17,6 +17,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/dc01/left/config.h b/keyboards/dc01/left/config.h index dbaed0d54df..1f58007ac19 100644 --- a/keyboards/dc01/left/config.h +++ b/keyboards/dc01/left/config.h @@ -41,11 +41,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/dc01/left/keyboard.json b/keyboards/dc01/left/keyboard.json index e2967909955..2238f67564d 100644 --- a/keyboards/dc01/left/keyboard.json +++ b/keyboards/dc01/left/keyboard.json @@ -16,6 +16,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "debounce": 0, "layouts": { "LAYOUT_ansi": { diff --git a/keyboards/dc01/numpad/config.h b/keyboards/dc01/numpad/config.h index bcaf26b3f06..b2b71f574f2 100644 --- a/keyboards/dc01/numpad/config.h +++ b/keyboards/dc01/numpad/config.h @@ -37,8 +37,3 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/dc01/numpad/keyboard.json b/keyboards/dc01/numpad/keyboard.json index 0cf73c23e33..900af6e542a 100644 --- a/keyboards/dc01/numpad/keyboard.json +++ b/keyboards/dc01/numpad/keyboard.json @@ -17,6 +17,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["numpad_5x4", "ortho_5x4"], "layouts": { "LAYOUT_numpad_5x4": { diff --git a/keyboards/dc01/right/config.h b/keyboards/dc01/right/config.h index 0e19af15256..6529b8e788b 100644 --- a/keyboards/dc01/right/config.h +++ b/keyboards/dc01/right/config.h @@ -37,8 +37,3 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/dc01/right/keyboard.json b/keyboards/dc01/right/keyboard.json index 6f48e05483e..36dc7a7056b 100644 --- a/keyboards/dc01/right/keyboard.json +++ b/keyboards/dc01/right/keyboard.json @@ -17,6 +17,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/dcpedit/redherring/config.h b/keyboards/dcpedit/redherring/config.h index 115be3306e5..790b9cd631d 100755 --- a/keyboards/dcpedit/redherring/config.h +++ b/keyboards/dcpedit/redherring/config.h @@ -3,8 +3,6 @@ #pragma once -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE #define SOLENOID_PIN B5 #define OLED_IC OLED_IC_SH1107 -#define OLED_DISPLAY_64X128 \ No newline at end of file +#define OLED_DISPLAY_64X128 diff --git a/keyboards/dcpedit/redherring/keyboard.json b/keyboards/dcpedit/redherring/keyboard.json index a2f87c90b9a..a6747402d01 100644 --- a/keyboards/dcpedit/redherring/keyboard.json +++ b/keyboards/dcpedit/redherring/keyboard.json @@ -29,7 +29,11 @@ }, "processor": "atmega32a", "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "haptic": { "driver": "solenoid" diff --git a/keyboards/delikeeb/flatbread60/config.h b/keyboards/delikeeb/flatbread60/config.h deleted file mode 100644 index 93fec1ee2da..00000000000 --- a/keyboards/delikeeb/flatbread60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 noclew - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/delikeeb/flatbread60/keyboard.json b/keyboards/delikeeb/flatbread60/keyboard.json index 8a4614e5b46..b0cf794dfb0 100644 --- a/keyboards/delikeeb/flatbread60/keyboard.json +++ b/keyboards/delikeeb/flatbread60/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "D3"], "rows": ["F6", "B1", "B3", "B2", "B6"] diff --git a/keyboards/delikeeb/vaguettelite/config.h b/keyboards/delikeeb/vaguettelite/config.h deleted file mode 100644 index 93fec1ee2da..00000000000 --- a/keyboards/delikeeb/vaguettelite/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 noclew - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/delikeeb/vaguettelite/keyboard.json b/keyboards/delikeeb/vaguettelite/keyboard.json index 98311fe1155..56919958f26 100644 --- a/keyboards/delikeeb/vaguettelite/keyboard.json +++ b/keyboards/delikeeb/vaguettelite/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B2", "B6", "B5", "B4", "E6", "D7", "C6", "D0", "D4"], "rows": ["F4", "B3", "D1", "D2", "D3", "F5"] diff --git a/keyboards/delikeeb/vanana/rev1/config.h b/keyboards/delikeeb/vanana/rev1/config.h index f5d10c1915f..97281151068 100644 --- a/keyboards/delikeeb/vanana/rev1/config.h +++ b/keyboards/delikeeb/vanana/rev1/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define B7_AUDIO -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/delikeeb/vanana/rev1/keyboard.json b/keyboards/delikeeb/vanana/rev1/keyboard.json index 9ae59761de9..d8d5d2e4c96 100644 --- a/keyboards/delikeeb/vanana/rev1/keyboard.json +++ b/keyboards/delikeeb/vanana/rev1/keyboard.json @@ -37,6 +37,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/delikeeb/vanana/rev2/config.h b/keyboards/delikeeb/vanana/rev2/config.h index f5d10c1915f..97281151068 100644 --- a/keyboards/delikeeb/vanana/rev2/config.h +++ b/keyboards/delikeeb/vanana/rev2/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define B7_AUDIO -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/delikeeb/vanana/rev2/keyboard.json b/keyboards/delikeeb/vanana/rev2/keyboard.json index a15ad3e71a3..9da7a9dd885 100644 --- a/keyboards/delikeeb/vanana/rev2/keyboard.json +++ b/keyboards/delikeeb/vanana/rev2/keyboard.json @@ -39,6 +39,12 @@ "rgblight": true, "audio": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/delikeeb/vaneela/config.h b/keyboards/delikeeb/vaneela/config.h deleted file mode 100644 index 93fec1ee2da..00000000000 --- a/keyboards/delikeeb/vaneela/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 noclew - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/delikeeb/vaneela/keyboard.json b/keyboards/delikeeb/vaneela/keyboard.json index 226014b8a0b..5f76c8b7ab1 100644 --- a/keyboards/delikeeb/vaneela/keyboard.json +++ b/keyboards/delikeeb/vaneela/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "D3"], "rows": ["F6", "F7", "B3", "B2", "B6"] diff --git a/keyboards/delikeeb/vaneelaex/config.h b/keyboards/delikeeb/vaneelaex/config.h deleted file mode 100644 index 93fec1ee2da..00000000000 --- a/keyboards/delikeeb/vaneelaex/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 noclew - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/delikeeb/vaneelaex/keyboard.json b/keyboards/delikeeb/vaneelaex/keyboard.json index 8bf40b169bc..9810d341abe 100644 --- a/keyboards/delikeeb/vaneelaex/keyboard.json +++ b/keyboards/delikeeb/vaneelaex/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B5", "B4", "E6", "D7", "C6", "D4"], "rows": ["D3", "D2", "D1", "D0", "B2", "B6"] diff --git a/keyboards/delikeeb/waaffle/rev3/config.h b/keyboards/delikeeb/waaffle/rev3/config.h index 6450b251b79..43f6a43b6fe 100644 --- a/keyboards/delikeeb/waaffle/rev3/config.h +++ b/keyboards/delikeeb/waaffle/rev3/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/delikeeb/waaffle/rev3/elite_c/keyboard.json b/keyboards/delikeeb/waaffle/rev3/elite_c/keyboard.json index 44fd177e020..22fb33aade1 100644 --- a/keyboards/delikeeb/waaffle/rev3/elite_c/keyboard.json +++ b/keyboards/delikeeb/waaffle/rev3/elite_c/keyboard.json @@ -10,5 +10,11 @@ "nkro": false, "rgblight": true, "encoder": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/delikeeb/waaffle/rev3/pro_micro/keyboard.json b/keyboards/delikeeb/waaffle/rev3/pro_micro/keyboard.json index a97bf794ea1..55e68c43935 100644 --- a/keyboards/delikeeb/waaffle/rev3/pro_micro/keyboard.json +++ b/keyboards/delikeeb/waaffle/rev3/pro_micro/keyboard.json @@ -8,5 +8,11 @@ "extrakey": true, "mousekey": true, "nkro": false + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/deltapad/config.h b/keyboards/deltapad/config.h deleted file mode 100644 index a62147158e1..00000000000 --- a/keyboards/deltapad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Richard Snijder - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/deltapad/keyboard.json b/keyboards/deltapad/keyboard.json index 256f2ba1055..23683bbd1e2 100644 --- a/keyboards/deltapad/keyboard.json +++ b/keyboards/deltapad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "B4", "B5"], "rows": ["D2", "D3", "D1", "D0"] diff --git a/keyboards/deltasplit75/v2/config.h b/keyboards/deltasplit75/v2/config.h deleted file mode 100644 index 9b7700e0139..00000000000 --- a/keyboards/deltasplit75/v2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/deltasplit75/v2/keyboard.json b/keyboards/deltasplit75/v2/keyboard.json index 2c1968e0b59..d175633d71e 100644 --- a/keyboards/deltasplit75/v2/keyboard.json +++ b/keyboards/deltasplit75/v2/keyboard.json @@ -30,6 +30,12 @@ "extrakey": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_v2": { "layout": [ diff --git a/keyboards/dk60/config.h b/keyboards/dk60/config.h deleted file mode 100644 index cfa9c05154c..00000000000 --- a/keyboards/dk60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 Damien Broqua - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dk60/keyboard.json b/keyboards/dk60/keyboard.json index 3e451a5c8dc..a88920814d1 100644 --- a/keyboards/dk60/keyboard.json +++ b/keyboards/dk60/keyboard.json @@ -18,6 +18,12 @@ "sleep_led": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B3", "B2", "B1", "D3", "D5", "B5", "B7", "C6", "C7", "D0", "D1", "D2"], "rows": ["B6", "B4", "D7", "D6", "D4"] diff --git a/keyboards/dm9records/lain/config.h b/keyboards/dm9records/lain/config.h index ddb4b6702fc..7c9ddea707a 100644 --- a/keyboards/dm9records/lain/config.h +++ b/keyboards/dm9records/lain/config.h @@ -7,8 +7,3 @@ #define LED_NUM 3 #define LED_PINS \ { B6, B5, B4 } - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/dm9records/lain/keyboard.json b/keyboards/dm9records/lain/keyboard.json index 3736d04aeee..32cece9f152 100644 --- a/keyboards/dm9records/lain/keyboard.json +++ b/keyboards/dm9records/lain/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "F7", "F6", "F5", "F4", "F1", "F0", "B3", "B2", "B1", "D2", "D3", "D5"], "rows": ["C6", "D7", "D6", "D4"] diff --git a/keyboards/dm9records/plaid/config.h b/keyboards/dm9records/plaid/config.h deleted file mode 100644 index 71400c3cf88..00000000000 --- a/keyboards/dm9records/plaid/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Takuya Urakawa (dm9records.com) - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dm9records/plaid/keyboard.json b/keyboards/dm9records/plaid/keyboard.json index a2052e55621..661b4addcaa 100644 --- a/keyboards/dm9records/plaid/keyboard.json +++ b/keyboards/dm9records/plaid/keyboard.json @@ -21,6 +21,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["ortho_4x12", "planck_mit"], "layout_aliases": { "LAYOUT": "LAYOUT_ortho_4x12", diff --git a/keyboards/dm9records/tartan/config.h b/keyboards/dm9records/tartan/config.h deleted file mode 100644 index 71400c3cf88..00000000000 --- a/keyboards/dm9records/tartan/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Takuya Urakawa (dm9records.com) - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/dm9records/tartan/keyboard.json b/keyboards/dm9records/tartan/keyboard.json index 208dcf330b9..feb0722c01f 100644 --- a/keyboards/dm9records/tartan/keyboard.json +++ b/keyboards/dm9records/tartan/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_ansi", "60_ansi_split_bs_rshift", "60_iso", "60_iso_split_bs_rshift"], "layout_aliases": { "LAYOUT_all": "LAYOUT_60_iso_split_bs_rshift" diff --git a/keyboards/dmqdesign/spin/config.h b/keyboards/dmqdesign/spin/config.h deleted file mode 100644 index cc43876148b..00000000000 --- a/keyboards/dmqdesign/spin/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019-2020 DMQ Design - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/dmqdesign/spin/keyboard.json b/keyboards/dmqdesign/spin/keyboard.json index a2bc050e910..b271f1ebd5d 100644 --- a/keyboards/dmqdesign/spin/keyboard.json +++ b/keyboards/dmqdesign/spin/keyboard.json @@ -19,6 +19,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "C7", "C6"], "rows": ["F0", "F1", "F4"] From 03f0d683420a1efa9709f61dd778e764300d86ea Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 20 May 2024 12:34:57 -0700 Subject: [PATCH 011/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: D, Part 2 (#23750) Affects: - `do60` - `doio/kb30` - `donutcables/scrabblepad` - `doppelganger` - `doro67/rgb` - `dotmod/dymium65` - `draytronics/daisy` - `draytronics/elise` - `draytronics/elise_v2` - `drewkeys/iskar` - `drhigsby/bkf` - `drhigsby/dubba175` - `drhigsby/ogurec` - `drhigsby/packrat` - `dtisaac/cg108` - `dumbo` - `dz60` - `dztech/bocc` - `dztech/duo_s` --- keyboards/do60/config.h | 23 ----------- keyboards/do60/keyboard.json | 6 +++ keyboards/doio/kb30/config.h | 5 --- keyboards/doio/kb30/keyboard.json | 6 +++ keyboards/donutcables/scrabblepad/config.h | 39 ------------------- .../donutcables/scrabblepad/keyboard.json | 6 +++ keyboards/doppelganger/config.h | 5 --- keyboards/doppelganger/keyboard.json | 6 +++ keyboards/doro67/rgb/config.h | 23 ----------- keyboards/doro67/rgb/keyboard.json | 6 +++ keyboards/dotmod/dymium65/config.h | 23 ----------- keyboards/dotmod/dymium65/keyboard.json | 6 +++ keyboards/draytronics/daisy/config.h | 37 ------------------ keyboards/draytronics/daisy/keyboard.json | 6 ++- keyboards/draytronics/elise/config.h | 24 ------------ keyboards/draytronics/elise/keyboard.json | 6 +++ keyboards/draytronics/elise_v2/config.h | 24 ------------ keyboards/draytronics/elise_v2/keyboard.json | 6 +++ keyboards/drewkeys/iskar/config.h | 23 ----------- keyboards/drewkeys/iskar/keyboard.json | 6 +++ keyboards/drhigsby/bkf/config.h | 21 ---------- keyboards/drhigsby/bkf/keyboard.json | 6 +++ keyboards/drhigsby/dubba175/config.h | 21 ---------- keyboards/drhigsby/dubba175/keyboard.json | 6 +++ keyboards/drhigsby/ogurec/config.h | 21 ---------- keyboards/drhigsby/ogurec/info.json | 6 +++ keyboards/drhigsby/packrat/config.h | 21 ---------- keyboards/drhigsby/packrat/keyboard.json | 6 +++ keyboards/dtisaac/cg108/config.h | 23 ----------- keyboards/dtisaac/cg108/keyboard.json | 6 +++ keyboards/dumbo/config.h | 20 ---------- keyboards/dumbo/keyboard.json | 6 +++ keyboards/dz60/config.h | 5 --- keyboards/dz60/keyboard.json | 6 +++ keyboards/dztech/bocc/config.h | 5 --- keyboards/dztech/bocc/keyboard.json | 6 +++ keyboards/dztech/duo_s/config.h | 5 --- keyboards/dztech/duo_s/keyboard.json | 6 +++ 38 files changed, 113 insertions(+), 369 deletions(-) delete mode 100644 keyboards/do60/config.h delete mode 100644 keyboards/donutcables/scrabblepad/config.h delete mode 100644 keyboards/doro67/rgb/config.h delete mode 100644 keyboards/dotmod/dymium65/config.h delete mode 100644 keyboards/draytronics/daisy/config.h delete mode 100644 keyboards/draytronics/elise/config.h delete mode 100644 keyboards/draytronics/elise_v2/config.h delete mode 100644 keyboards/drewkeys/iskar/config.h delete mode 100644 keyboards/drhigsby/bkf/config.h delete mode 100644 keyboards/drhigsby/dubba175/config.h delete mode 100644 keyboards/drhigsby/ogurec/config.h delete mode 100644 keyboards/drhigsby/packrat/config.h delete mode 100644 keyboards/dtisaac/cg108/config.h delete mode 100644 keyboards/dumbo/config.h diff --git a/keyboards/do60/config.h b/keyboards/do60/config.h deleted file mode 100644 index 5a870e5f7ee..00000000000 --- a/keyboards/do60/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2012 Doyu Studio - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/do60/keyboard.json b/keyboards/do60/keyboard.json index 76de66f6d7d..2a7d585f65c 100644 --- a/keyboards/do60/keyboard.json +++ b/keyboards/do60/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "F4", "B4", "D7", "D6", "B3", "B0"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/doio/kb30/config.h b/keyboards/doio/kb30/config.h index 7050e67b7e3..04730a1f18c 100644 --- a/keyboards/doio/kb30/config.h +++ b/keyboards/doio/kb30/config.h @@ -17,11 +17,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* OLED */ #ifdef OLED_ENABLE # define OLED_BRIGHTNESS 5 diff --git a/keyboards/doio/kb30/keyboard.json b/keyboards/doio/kb30/keyboard.json index 637a1fe68b1..b14eab1c33a 100644 --- a/keyboards/doio/kb30/keyboard.json +++ b/keyboards/doio/kb30/keyboard.json @@ -59,6 +59,12 @@ "oled": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B14", "B13", "B12", "B0", "A7", "A9", "A8"], "rows": ["B3", "B4", "B9", "B8", "A5", "A6"] diff --git a/keyboards/donutcables/scrabblepad/config.h b/keyboards/donutcables/scrabblepad/config.h deleted file mode 100644 index 76f004028fa..00000000000 --- a/keyboards/donutcables/scrabblepad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 DonutCables - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/donutcables/scrabblepad/keyboard.json b/keyboards/donutcables/scrabblepad/keyboard.json index ed31e35018d..aa03523ed81 100644 --- a/keyboards/donutcables/scrabblepad/keyboard.json +++ b/keyboards/donutcables/scrabblepad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D7", "E0", "E1", "B7", "D2", "D3", "D4", "C0", "B4", "B5", "B6", "F0", "E6", "E7"], "rows": ["D5", "F1", "C7", "F2", "C6", "F3", "C5", "F4", "C4", "F5", "C3", "F6", "C2", "F7", "C1"] diff --git a/keyboards/doppelganger/config.h b/keyboards/doppelganger/config.h index a18b4847465..20a23ab6dad 100644 --- a/keyboards/doppelganger/config.h +++ b/keyboards/doppelganger/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . // #define USE_I2C -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/doppelganger/keyboard.json b/keyboards/doppelganger/keyboard.json index 2be90e30abf..9ea2241a807 100644 --- a/keyboards/doppelganger/keyboard.json +++ b/keyboards/doppelganger/keyboard.json @@ -41,6 +41,12 @@ "extrakey": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/doro67/rgb/config.h b/keyboards/doro67/rgb/config.h deleted file mode 100644 index b5a6d1893cf..00000000000 --- a/keyboards/doro67/rgb/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/doro67/rgb/keyboard.json b/keyboards/doro67/rgb/keyboard.json index 87a31e6e21e..9b660fd1aec 100644 --- a/keyboards/doro67/rgb/keyboard.json +++ b/keyboards/doro67/rgb/keyboard.json @@ -65,6 +65,12 @@ "nkro": false, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F5", "F6", "F7"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/dotmod/dymium65/config.h b/keyboards/dotmod/dymium65/config.h deleted file mode 100644 index ca6e56156de..00000000000 --- a/keyboards/dotmod/dymium65/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2023 Finalkey - * Copyright 2023 LiWenLiu - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/dotmod/dymium65/keyboard.json b/keyboards/dotmod/dymium65/keyboard.json index 6095f4c3f1c..c5cd1b2cb7d 100644 --- a/keyboards/dotmod/dymium65/keyboard.json +++ b/keyboards/dotmod/dymium65/keyboard.json @@ -25,6 +25,12 @@ "mousekey": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/draytronics/daisy/config.h b/keyboards/draytronics/daisy/config.h deleted file mode 100644 index 96a43955847..00000000000 --- a/keyboards/draytronics/daisy/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/*Copyright 2021 Blake Drayson / Draytronics - -Contact info@draytronics.co.uk - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/draytronics/daisy/keyboard.json b/keyboards/draytronics/daisy/keyboard.json index f871517e879..92b0b54f43c 100644 --- a/keyboards/draytronics/daisy/keyboard.json +++ b/keyboards/draytronics/daisy/keyboard.json @@ -30,7 +30,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgblight": { "saturation_steps": 8, diff --git a/keyboards/draytronics/elise/config.h b/keyboards/draytronics/elise/config.h deleted file mode 100644 index 0df48812aa3..00000000000 --- a/keyboards/draytronics/elise/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/*Copyright 2021 Blake Drayson / Draytronics - -Contact info@draytronics.co.uk - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/draytronics/elise/keyboard.json b/keyboards/draytronics/elise/keyboard.json index 62ccd9babbe..782c61d7643 100644 --- a/keyboards/draytronics/elise/keyboard.json +++ b/keyboards/draytronics/elise/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D2", "D3", "D5"], "rows": ["B2", "B3", "B1", "F0", "F1"] diff --git a/keyboards/draytronics/elise_v2/config.h b/keyboards/draytronics/elise_v2/config.h deleted file mode 100644 index 0df48812aa3..00000000000 --- a/keyboards/draytronics/elise_v2/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/*Copyright 2021 Blake Drayson / Draytronics - -Contact info@draytronics.co.uk - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/draytronics/elise_v2/keyboard.json b/keyboards/draytronics/elise_v2/keyboard.json index 91f34c23f87..217f837e197 100644 --- a/keyboards/draytronics/elise_v2/keyboard.json +++ b/keyboards/draytronics/elise_v2/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D2", "D3", "D5"], "rows": ["B2", "B3", "B1", "F0", "F1"] diff --git a/keyboards/drewkeys/iskar/config.h b/keyboards/drewkeys/iskar/config.h deleted file mode 100644 index fb8fbcaac5b..00000000000 --- a/keyboards/drewkeys/iskar/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Drewkeys - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/drewkeys/iskar/keyboard.json b/keyboards/drewkeys/iskar/keyboard.json index c3f1aace78c..66d4ebd74d6 100644 --- a/keyboards/drewkeys/iskar/keyboard.json +++ b/keyboards/drewkeys/iskar/keyboard.json @@ -19,6 +19,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "C6", "C7", "F6", "F5", "F4", "F7", "F1", "F0", "E6", "B7", "D0", "D1", "D2", "D3", "D5"], "rows": ["D6", "D7", "B4", "B5", "D4"] diff --git a/keyboards/drhigsby/bkf/config.h b/keyboards/drhigsby/bkf/config.h deleted file mode 100644 index 44c01661259..00000000000 --- a/keyboards/drhigsby/bkf/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021 drhigsby - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/drhigsby/bkf/keyboard.json b/keyboards/drhigsby/bkf/keyboard.json index 97bb5919fb7..a3933c8228a 100644 --- a/keyboards/drhigsby/bkf/keyboard.json +++ b/keyboards/drhigsby/bkf/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B2", "D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F6", "F7", "B1", "B3"] diff --git a/keyboards/drhigsby/dubba175/config.h b/keyboards/drhigsby/dubba175/config.h deleted file mode 100644 index 7cfb519fe9e..00000000000 --- a/keyboards/drhigsby/dubba175/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 drhigsby - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE \ No newline at end of file diff --git a/keyboards/drhigsby/dubba175/keyboard.json b/keyboards/drhigsby/dubba175/keyboard.json index ad964408063..69570a1c2fa 100644 --- a/keyboards/drhigsby/dubba175/keyboard.json +++ b/keyboards/drhigsby/dubba175/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B6"], "rows": ["B1", "B3", "B2", "B5"] diff --git a/keyboards/drhigsby/ogurec/config.h b/keyboards/drhigsby/ogurec/config.h deleted file mode 100644 index 44c01661259..00000000000 --- a/keyboards/drhigsby/ogurec/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021 drhigsby - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/drhigsby/ogurec/info.json b/keyboards/drhigsby/ogurec/info.json index bddd3359d9e..f3c753f2c03 100644 --- a/keyboards/drhigsby/ogurec/info.json +++ b/keyboards/drhigsby/ogurec/info.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "F4", "F5"], "rows": ["F6", "B6", "B2"] diff --git a/keyboards/drhigsby/packrat/config.h b/keyboards/drhigsby/packrat/config.h deleted file mode 100644 index 44c01661259..00000000000 --- a/keyboards/drhigsby/packrat/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021 drhigsby - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/drhigsby/packrat/keyboard.json b/keyboards/drhigsby/packrat/keyboard.json index a1b00f835ca..a836b0bf96d 100644 --- a/keyboards/drhigsby/packrat/keyboard.json +++ b/keyboards/drhigsby/packrat/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "B3"], "rows": ["F7", "B1", "B6", "B2"] diff --git a/keyboards/dtisaac/cg108/config.h b/keyboards/dtisaac/cg108/config.h deleted file mode 100644 index d39c818a739..00000000000 --- a/keyboards/dtisaac/cg108/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 DTIsaac - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/dtisaac/cg108/keyboard.json b/keyboards/dtisaac/cg108/keyboard.json index 703586e3d06..28e5563111e 100644 --- a/keyboards/dtisaac/cg108/keyboard.json +++ b/keyboards/dtisaac/cg108/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "C6", "B4", "D7", "B3", "B2", "B0", "E6", "B1", "D1", "D6"], "rows": ["F4", "F1", "F0", "F5", "F6", "F7", "D4", "D5", "D3", "D2", "D0"] diff --git a/keyboards/dumbo/config.h b/keyboards/dumbo/config.h deleted file mode 100644 index 5a4dcfdd8f1..00000000000 --- a/keyboards/dumbo/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Adam Naldal -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/dumbo/keyboard.json b/keyboards/dumbo/keyboard.json index 84993a6b6d9..df0f1100128 100644 --- a/keyboards/dumbo/keyboard.json +++ b/keyboards/dumbo/keyboard.json @@ -38,6 +38,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/dz60/config.h b/keyboards/dz60/config.h index bec7fcc3dcd..2e5656e5f8f 100644 --- a/keyboards/dz60/config.h +++ b/keyboards/dz60/config.h @@ -1,9 +1,4 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* VIA related config */ #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/dz60/keyboard.json b/keyboards/dz60/keyboard.json index a6beff0d63a..e3e74959582 100644 --- a/keyboards/dz60/keyboard.json +++ b/keyboards/dz60/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/dztech/bocc/config.h b/keyboards/dztech/bocc/config.h index 9ad357341e9..4e0c90ca260 100644 --- a/keyboards/dztech/bocc/config.h +++ b/keyboards/dztech/bocc/config.h @@ -15,10 +15,5 @@ */ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* VIA related config */ #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/dztech/bocc/keyboard.json b/keyboards/dztech/bocc/keyboard.json index 5d56524b3fb..7e40fde49cb 100644 --- a/keyboards/dztech/bocc/keyboard.json +++ b/keyboards/dztech/bocc/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4"], "rows": ["B0", "B1", "B2", "B3", "F0"] diff --git a/keyboards/dztech/duo_s/config.h b/keyboards/dztech/duo_s/config.h index 14d66caf12a..c180c019a43 100644 --- a/keyboards/dztech/duo_s/config.h +++ b/keyboards/dztech/duo_s/config.h @@ -18,9 +18,4 @@ #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 6) -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/dztech/duo_s/keyboard.json b/keyboards/dztech/duo_s/keyboard.json index 46f9b4fc349..7bf8b0bfddb 100644 --- a/keyboards/dztech/duo_s/keyboard.json +++ b/keyboards/dztech/duo_s/keyboard.json @@ -42,6 +42,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B12", "B13", "B14", "A8", "B9", "C13", "C14", "C15", "A1", "A2", "A3", "A4", "A5", "A6", "A7"], "rows": ["A15", "B3", "B4", "B5", "B11"] From bf42707eed2cee8e6b0ad579df2924e50eada841 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 20 May 2024 12:40:23 -0700 Subject: [PATCH 012/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: E (#23751) Affects: - `e88` - `ealdin/quadrant` - `earth_rover` - `eco` - `edc40` - `edi/standaside` - `eek` - `ein_60` - `eniigmakeyboards/ek65` - `eniigmakeyboards/ek87` - `ep/96` - `ep/comsn/hs68` - `ep/comsn/mollydooker` - `ep/comsn/tf_longeboye` - `ergodox_ez` - `ergotravel/rev1` - `eternal_keypad` - `evil80` - `evolv` - `evyd13/atom47/rev2` - `evyd13/atom47/rev5` - `evyd13/eon65` - `evyd13/eon75` - `evyd13/eon87` - `evyd13/eon95` - `evyd13/gh80_1800` - `evyd13/gh80_3700` - `evyd13/minitomic` - `evyd13/mx5160` - `evyd13/nt750` - `evyd13/nt980` - `evyd13/omrontkl` - `evyd13/quackfire` - `evyd13/solheim68` - `evyd13/ta65` - `evyd13/wasdat_code` - `exclusive/e65` - `exclusive/e7v1` - `exclusive/e7v1se` - `exclusive/e85/hotswap` - `exclusive/e85/soldered` --- keyboards/e88/config.h | 38 ------------------ keyboards/e88/keyboard.json | 6 +++ keyboards/ealdin/quadrant/config.h | 5 --- keyboards/ealdin/quadrant/keyboard.json | 6 +++ keyboards/earth_rover/config.h | 39 ------------------- keyboards/earth_rover/keyboard.json | 6 +++ keyboards/eco/config.h | 39 ------------------- keyboards/eco/info.json | 8 +++- keyboards/edc40/config.h | 19 --------- keyboards/edc40/keyboard.json | 6 +++ keyboards/edi/standaside/config.h | 24 ------------ keyboards/edi/standaside/keyboard.json | 6 +++ keyboards/eek/config.h | 39 ------------------- keyboards/eek/info.json | 6 +++ keyboards/ein_60/config.h | 5 --- keyboards/ein_60/keyboard.json | 6 +++ keyboards/eniigmakeyboards/ek65/config.h | 39 ------------------- keyboards/eniigmakeyboards/ek65/keyboard.json | 6 +++ keyboards/eniigmakeyboards/ek87/config.h | 39 ------------------- keyboards/eniigmakeyboards/ek87/keyboard.json | 6 +++ keyboards/ep/96/config.h | 39 ------------------- keyboards/ep/96/keyboard.json | 6 +++ keyboards/ep/comsn/hs68/config.h | 23 ----------- keyboards/ep/comsn/hs68/keyboard.json | 6 +++ keyboards/ep/comsn/mollydooker/config.h | 39 ------------------- keyboards/ep/comsn/mollydooker/keyboard.json | 6 +++ keyboards/ep/comsn/tf_longeboye/config.h | 23 ----------- keyboards/ep/comsn/tf_longeboye/keyboard.json | 6 +++ keyboards/ergodox_ez/config.h | 5 --- keyboards/ergodox_ez/info.json | 6 +++ keyboards/ergotravel/rev1/config.h | 39 ------------------- keyboards/ergotravel/rev1/keyboard.json | 6 +++ keyboards/eternal_keypad/config.h | 39 ------------------- keyboards/eternal_keypad/keyboard.json | 6 +++ keyboards/evil80/config.h | 23 ----------- keyboards/evil80/keyboard.json | 6 +++ keyboards/evolv/config.h | 39 ------------------- keyboards/evolv/keyboard.json | 6 +++ keyboards/evyd13/atom47/rev2/config.h | 23 ----------- keyboards/evyd13/atom47/rev2/keyboard.json | 6 +++ keyboards/evyd13/atom47/rev5/config.h | 5 --- keyboards/evyd13/atom47/rev5/keyboard.json | 6 +++ keyboards/evyd13/eon65/config.h | 38 ------------------ keyboards/evyd13/eon65/keyboard.json | 6 +++ keyboards/evyd13/eon75/config.h | 38 ------------------ keyboards/evyd13/eon75/keyboard.json | 6 +++ keyboards/evyd13/eon87/config.h | 38 ------------------ keyboards/evyd13/eon87/keyboard.json | 6 +++ keyboards/evyd13/eon95/config.h | 38 ------------------ keyboards/evyd13/eon95/keyboard.json | 6 +++ keyboards/evyd13/gh80_1800/config.h | 38 ------------------ keyboards/evyd13/gh80_1800/keyboard.json | 6 +++ keyboards/evyd13/gh80_3700/config.h | 38 ------------------ keyboards/evyd13/gh80_3700/keyboard.json | 6 +++ keyboards/evyd13/minitomic/config.h | 38 ------------------ keyboards/evyd13/minitomic/keyboard.json | 6 +++ keyboards/evyd13/mx5160/config.h | 38 ------------------ keyboards/evyd13/mx5160/keyboard.json | 6 +++ keyboards/evyd13/nt750/config.h | 39 ------------------- keyboards/evyd13/nt750/keyboard.json | 6 +++ keyboards/evyd13/nt980/config.h | 39 ------------------- keyboards/evyd13/nt980/keyboard.json | 6 +++ keyboards/evyd13/omrontkl/config.h | 38 ------------------ keyboards/evyd13/omrontkl/keyboard.json | 6 +++ keyboards/evyd13/quackfire/config.h | 39 ------------------- keyboards/evyd13/quackfire/keyboard.json | 6 +++ keyboards/evyd13/solheim68/config.h | 38 ------------------ keyboards/evyd13/solheim68/keyboard.json | 6 +++ keyboards/evyd13/ta65/config.h | 23 ----------- keyboards/evyd13/ta65/keyboard.json | 6 +++ keyboards/evyd13/wasdat_code/config.h | 5 --- keyboards/evyd13/wasdat_code/keyboard.json | 6 +++ keyboards/exclusive/e65/config.h | 23 ----------- keyboards/exclusive/e65/keyboard.json | 6 +++ keyboards/exclusive/e7v1/config.h | 7 ---- keyboards/exclusive/e7v1/keyboard.json | 6 +++ keyboards/exclusive/e7v1se/config.h | 39 ------------------- keyboards/exclusive/e7v1se/keyboard.json | 6 +++ keyboards/exclusive/e85/config.h | 39 ------------------- keyboards/exclusive/e85/hotswap/keyboard.json | 6 +++ .../exclusive/e85/soldered/keyboard.json | 6 +++ 81 files changed, 247 insertions(+), 1217 deletions(-) delete mode 100644 keyboards/e88/config.h delete mode 100644 keyboards/earth_rover/config.h delete mode 100644 keyboards/eco/config.h delete mode 100644 keyboards/edc40/config.h delete mode 100644 keyboards/edi/standaside/config.h delete mode 100644 keyboards/eek/config.h delete mode 100644 keyboards/eniigmakeyboards/ek65/config.h delete mode 100644 keyboards/eniigmakeyboards/ek87/config.h delete mode 100644 keyboards/ep/96/config.h delete mode 100644 keyboards/ep/comsn/hs68/config.h delete mode 100644 keyboards/ep/comsn/mollydooker/config.h delete mode 100644 keyboards/ep/comsn/tf_longeboye/config.h delete mode 100644 keyboards/ergotravel/rev1/config.h delete mode 100644 keyboards/eternal_keypad/config.h delete mode 100644 keyboards/evil80/config.h delete mode 100644 keyboards/evolv/config.h delete mode 100644 keyboards/evyd13/atom47/rev2/config.h delete mode 100644 keyboards/evyd13/eon65/config.h delete mode 100644 keyboards/evyd13/eon75/config.h delete mode 100644 keyboards/evyd13/eon87/config.h delete mode 100644 keyboards/evyd13/eon95/config.h delete mode 100644 keyboards/evyd13/gh80_1800/config.h delete mode 100644 keyboards/evyd13/gh80_3700/config.h delete mode 100644 keyboards/evyd13/minitomic/config.h delete mode 100644 keyboards/evyd13/mx5160/config.h delete mode 100644 keyboards/evyd13/nt750/config.h delete mode 100644 keyboards/evyd13/nt980/config.h delete mode 100644 keyboards/evyd13/omrontkl/config.h delete mode 100644 keyboards/evyd13/quackfire/config.h delete mode 100644 keyboards/evyd13/solheim68/config.h delete mode 100644 keyboards/evyd13/ta65/config.h delete mode 100644 keyboards/exclusive/e65/config.h delete mode 100644 keyboards/exclusive/e7v1/config.h delete mode 100644 keyboards/exclusive/e7v1se/config.h delete mode 100644 keyboards/exclusive/e85/config.h diff --git a/keyboards/e88/config.h b/keyboards/e88/config.h deleted file mode 100644 index 230ff5e311e..00000000000 --- a/keyboards/e88/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/e88/keyboard.json b/keyboards/e88/keyboard.json index 4d3fe72caa6..32ee42aefd4 100644 --- a/keyboards/e88/keyboard.json +++ b/keyboards/e88/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "D0", "D1", "D2", "D3", "B3", "B2", "B1", "E6", "D5", "D6", "D4"], "rows": ["B7", "D7", "B4", "C6", "B5", "B6"] diff --git a/keyboards/ealdin/quadrant/config.h b/keyboards/ealdin/quadrant/config.h index bce1fbc662e..64c816e57ef 100644 --- a/keyboards/ealdin/quadrant/config.h +++ b/keyboards/ealdin/quadrant/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/ealdin/quadrant/keyboard.json b/keyboards/ealdin/quadrant/keyboard.json index 12ef41c41bd..9f7a6143d2f 100644 --- a/keyboards/ealdin/quadrant/keyboard.json +++ b/keyboards/ealdin/quadrant/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "B7", "F6", "F5", "F4"], "rows": ["B2", "F7", "B3", "B6", "B1"] diff --git a/keyboards/earth_rover/config.h b/keyboards/earth_rover/config.h deleted file mode 100644 index e03d0cfcbb8..00000000000 --- a/keyboards/earth_rover/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 k.bigwheel - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/earth_rover/keyboard.json b/keyboards/earth_rover/keyboard.json index 0ab2cb08a0c..0c760f612cd 100644 --- a/keyboards/earth_rover/keyboard.json +++ b/keyboards/earth_rover/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7"], "rows": ["D4", "C6", "D7", "E6"] diff --git a/keyboards/eco/config.h b/keyboards/eco/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/eco/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/eco/info.json b/keyboards/eco/info.json index 6a1b2adda1b..1bb5c79eb20 100644 --- a/keyboards/eco/info.json +++ b/keyboards/eco/info.json @@ -8,5 +8,11 @@ "pid": "0x6006" }, "processor": "atmega32u4", - "bootloader": "caterina" + "bootloader": "caterina", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + } } diff --git a/keyboards/edc40/config.h b/keyboards/edc40/config.h deleted file mode 100644 index 55d7cb23a71..00000000000 --- a/keyboards/edc40/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2020 OJtheTiny - * - * 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 . - */ -#pragma once - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/edc40/keyboard.json b/keyboards/edc40/keyboard.json index 304fb3f1123..7ad2fdd3b85 100644 --- a/keyboards/edc40/keyboard.json +++ b/keyboards/edc40/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "D0", "D1", "D2", "D3", "D5", "B4", "B5"], "rows": ["D4", "D6", "D7", "F7"] diff --git a/keyboards/edi/standaside/config.h b/keyboards/edi/standaside/config.h deleted file mode 100644 index 7caa265c1a1..00000000000 --- a/keyboards/edi/standaside/config.h +++ /dev/null @@ -1,24 +0,0 @@ - - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/edi/standaside/keyboard.json b/keyboards/edi/standaside/keyboard.json index ccfa5cf1da7..410f8f693a6 100644 --- a/keyboards/edi/standaside/keyboard.json +++ b/keyboards/edi/standaside/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D0", "D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["D1", "F4", "F6", "F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/eek/config.h b/keyboards/eek/config.h deleted file mode 100644 index 95a2527d403..00000000000 --- a/keyboards/eek/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 klackygears - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/eek/info.json b/keyboards/eek/info.json index 0caca6df3bd..86ff2843470 100644 --- a/keyboards/eek/info.json +++ b/keyboards/eek/info.json @@ -24,6 +24,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D7", "E6", "B4", "B5"] diff --git a/keyboards/ein_60/config.h b/keyboards/ein_60/config.h index ccb31b8612a..18b19202d7a 100644 --- a/keyboards/ein_60/config.h +++ b/keyboards/ein_60/config.h @@ -28,8 +28,3 @@ along with this program. If not, see . # define AUDIO_CLICKY # define AUDIO_DAC_SAMPLE_MAX 4095U #endif - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ein_60/keyboard.json b/keyboards/ein_60/keyboard.json index cb84c45095f..a7902af490e 100644 --- a/keyboards/ein_60/keyboard.json +++ b/keyboards/ein_60/keyboard.json @@ -46,6 +46,12 @@ "nkro": false, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A3", "A2", "A1", "A0", "F6", "F5", "F0", "E0", "E1", "C0", "C1", "C2", "C3"], "rows": ["F1", "F2", "F3", "F4"] diff --git a/keyboards/eniigmakeyboards/ek65/config.h b/keyboards/eniigmakeyboards/ek65/config.h deleted file mode 100644 index 5bb07f46312..00000000000 --- a/keyboards/eniigmakeyboards/ek65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 adamws - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/eniigmakeyboards/ek65/keyboard.json b/keyboards/eniigmakeyboards/ek65/keyboard.json index 129a73e5651..fa6ad3566ad 100644 --- a/keyboards/eniigmakeyboards/ek65/keyboard.json +++ b/keyboards/eniigmakeyboards/ek65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "E6", "B2", "B1", "B0"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/eniigmakeyboards/ek87/config.h b/keyboards/eniigmakeyboards/ek87/config.h deleted file mode 100644 index 5bb07f46312..00000000000 --- a/keyboards/eniigmakeyboards/ek87/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 adamws - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/eniigmakeyboards/ek87/keyboard.json b/keyboards/eniigmakeyboards/ek87/keyboard.json index 553c34ac53e..900a74a4b62 100644 --- a/keyboards/eniigmakeyboards/ek87/keyboard.json +++ b/keyboards/eniigmakeyboards/ek87/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "F0", "F1", "E6", "D3", "D2", "D1"], "rows": ["B0", "B1", "B2", "B3", "B7", "D0"] diff --git a/keyboards/ep/96/config.h b/keyboards/ep/96/config.h deleted file mode 100644 index 8b29e416c80..00000000000 --- a/keyboards/ep/96/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Elliot Powell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ep/96/keyboard.json b/keyboards/ep/96/keyboard.json index a6708a3a80b..cd267eda898 100644 --- a/keyboards/ep/96/keyboard.json +++ b/keyboards/ep/96/keyboard.json @@ -15,6 +15,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "E6"], "rows": ["B0", "B1", "B3", "B2", "B7", "C6"] diff --git a/keyboards/ep/comsn/hs68/config.h b/keyboards/ep/comsn/hs68/config.h deleted file mode 100644 index a86557f6cec..00000000000 --- a/keyboards/ep/comsn/hs68/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Elliot Powell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ep/comsn/hs68/keyboard.json b/keyboards/ep/comsn/hs68/keyboard.json index 80ebbcf9a87..d87b2741447 100644 --- a/keyboards/ep/comsn/hs68/keyboard.json +++ b/keyboards/ep/comsn/hs68/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B3", "B2", "B7", "D3", "F1", "D5", "D6", "D7", "F4", "F5", "C7", "C6", "F0"], "rows": ["B6", "B5", "B4", "D0", "F6"] diff --git a/keyboards/ep/comsn/mollydooker/config.h b/keyboards/ep/comsn/mollydooker/config.h deleted file mode 100644 index d5971524a69..00000000000 --- a/keyboards/ep/comsn/mollydooker/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Elliot Powell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ep/comsn/mollydooker/keyboard.json b/keyboards/ep/comsn/mollydooker/keyboard.json index dd5f9e6739a..d54920df6ba 100644 --- a/keyboards/ep/comsn/mollydooker/keyboard.json +++ b/keyboards/ep/comsn/mollydooker/keyboard.json @@ -16,6 +16,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B2", "B3", "E6", "B7", "F1", "F0", "D0", "D1", "D7", "D5", "D4", "D6", "B4", "B5", "D3", "B6", "C6", "C7"], "rows": ["F4", "F5", "F6", "F7", "D2"] diff --git a/keyboards/ep/comsn/tf_longeboye/config.h b/keyboards/ep/comsn/tf_longeboye/config.h deleted file mode 100644 index a86557f6cec..00000000000 --- a/keyboards/ep/comsn/tf_longeboye/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Elliot Powell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ep/comsn/tf_longeboye/keyboard.json b/keyboards/ep/comsn/tf_longeboye/keyboard.json index deb00d24061..73a18c1ebb9 100644 --- a/keyboards/ep/comsn/tf_longeboye/keyboard.json +++ b/keyboards/ep/comsn/tf_longeboye/keyboard.json @@ -15,6 +15,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "F0", "F1", "C7", "D5", "B7", "E6", "D7", "C6", "D4", "D0"], "rows": ["B5", "B4", "D1", "D2", "D3"] diff --git a/keyboards/ergodox_ez/config.h b/keyboards/ergodox_ez/config.h index 3688e007854..b57968b81b9 100644 --- a/keyboards/ergodox_ez/config.h +++ b/keyboards/ergodox_ez/config.h @@ -44,11 +44,6 @@ along with this program. If not, see . #define MOUSEKEY_WHEEL_MAX_SPEED MOUSEKEY_MAX_SPEED #define MOUSEKEY_WHEEL_TIME_TO_MAX MOUSEKEY_TIME_TO_MAX -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* key combination for command */ #define IS_COMMAND() ( \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ diff --git a/keyboards/ergodox_ez/info.json b/keyboards/ergodox_ez/info.json index a560e97a0b5..f7b20b19e07 100644 --- a/keyboards/ergodox_ez/info.json +++ b/keyboards/ergodox_ez/info.json @@ -6,6 +6,12 @@ "vid": "0x3297", "device_version": "0.0.1" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "hue_steps": 12, "brightness_steps": 12, diff --git a/keyboards/ergotravel/rev1/config.h b/keyboards/ergotravel/rev1/config.h deleted file mode 100644 index 790a2696fbe..00000000000 --- a/keyboards/ergotravel/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Pierre Constantineau - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ergotravel/rev1/keyboard.json b/keyboards/ergotravel/rev1/keyboard.json index 14c645d2f0c..7a6710c7bd8 100644 --- a/keyboards/ergotravel/rev1/keyboard.json +++ b/keyboards/ergotravel/rev1/keyboard.json @@ -32,6 +32,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/eternal_keypad/config.h b/keyboards/eternal_keypad/config.h deleted file mode 100644 index e2e4c258cc4..00000000000 --- a/keyboards/eternal_keypad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 duckyb - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/eternal_keypad/keyboard.json b/keyboards/eternal_keypad/keyboard.json index c35a66986d7..f50f235c981 100644 --- a/keyboards/eternal_keypad/keyboard.json +++ b/keyboards/eternal_keypad/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["B5", "B4", "E6", "D7", "C6"] diff --git a/keyboards/evil80/config.h b/keyboards/evil80/config.h deleted file mode 100644 index a559a9698ef..00000000000 --- a/keyboards/evil80/config.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evil80/keyboard.json b/keyboards/evil80/keyboard.json index 68e99167843..9610718b342 100644 --- a/keyboards/evil80/keyboard.json +++ b/keyboards/evil80/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B1", "C6", "C7", "E6", "F6", "F7"], "rows": ["F1", "F4", "F5", "F0", "B3", "B0"] diff --git a/keyboards/evolv/config.h b/keyboards/evolv/config.h deleted file mode 100644 index f962b74196e..00000000000 --- a/keyboards/evolv/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - Copyright 2020 Álvaro "Gondolindrim" Volpato - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evolv/keyboard.json b/keyboards/evolv/keyboard.json index ab4ccfd9d79..8373bbb5365 100644 --- a/keyboards/evolv/keyboard.json +++ b/keyboards/evolv/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A6", "A5", "A4", "A3", "A2", "A1", "A0", "C14", "F0", "C15", "B9", "B8", "B7", "B6", "B5", "B4"], "rows": ["B10", "B11", "A7", "B0", "B1", "B2"] diff --git a/keyboards/evyd13/atom47/rev2/config.h b/keyboards/evyd13/atom47/rev2/config.h deleted file mode 100644 index e14ecadbf09..00000000000 --- a/keyboards/evyd13/atom47/rev2/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Evelien Dekkers - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/evyd13/atom47/rev2/keyboard.json b/keyboards/evyd13/atom47/rev2/keyboard.json index 62927b70a36..6466c1b7b81 100644 --- a/keyboards/evyd13/atom47/rev2/keyboard.json +++ b/keyboards/evyd13/atom47/rev2/keyboard.json @@ -40,6 +40,12 @@ "extrakey": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_all": "LAYOUT_split_space" }, diff --git a/keyboards/evyd13/atom47/rev5/config.h b/keyboards/evyd13/atom47/rev5/config.h index 83d433f08d1..117eb270578 100644 --- a/keyboards/evyd13/atom47/rev5/config.h +++ b/keyboards/evyd13/atom47/rev5/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/evyd13/atom47/rev5/keyboard.json b/keyboards/evyd13/atom47/rev5/keyboard.json index c002dcb18c0..074d34ab437 100644 --- a/keyboards/evyd13/atom47/rev5/keyboard.json +++ b/keyboards/evyd13/atom47/rev5/keyboard.json @@ -55,6 +55,12 @@ "extrakey": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_all": "LAYOUT_split_space" }, diff --git a/keyboards/evyd13/eon65/config.h b/keyboards/evyd13/eon65/config.h deleted file mode 100644 index 230ff5e311e..00000000000 --- a/keyboards/evyd13/eon65/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/eon65/keyboard.json b/keyboards/evyd13/eon65/keyboard.json index 66bae813826..05506e0ea8c 100644 --- a/keyboards/evyd13/eon65/keyboard.json +++ b/keyboards/evyd13/eon65/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "D2", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["D3", "D5", "B1", "B2", "B3"] diff --git a/keyboards/evyd13/eon75/config.h b/keyboards/evyd13/eon75/config.h deleted file mode 100644 index 230ff5e311e..00000000000 --- a/keyboards/evyd13/eon75/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/eon75/keyboard.json b/keyboards/evyd13/eon75/keyboard.json index 9908f4a9cc1..fe6ee01832c 100644 --- a/keyboards/evyd13/eon75/keyboard.json +++ b/keyboards/evyd13/eon75/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "B3"], "rows": ["D1", "D0", "D3", "D2", "D6", "D4", "D7", "B4", "B5", "B6", "C6", "C7"] diff --git a/keyboards/evyd13/eon87/config.h b/keyboards/evyd13/eon87/config.h deleted file mode 100644 index 230ff5e311e..00000000000 --- a/keyboards/evyd13/eon87/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/eon87/keyboard.json b/keyboards/evyd13/eon87/keyboard.json index ad0d42eaf93..a0d73d442ee 100644 --- a/keyboards/evyd13/eon87/keyboard.json +++ b/keyboards/evyd13/eon87/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "E6", "B7", "D3", "D2"], "rows": ["B1", "B2", "B3", "D4", "D1", "D5"] diff --git a/keyboards/evyd13/eon95/config.h b/keyboards/evyd13/eon95/config.h deleted file mode 100644 index 230ff5e311e..00000000000 --- a/keyboards/evyd13/eon95/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/eon95/keyboard.json b/keyboards/evyd13/eon95/keyboard.json index 6b5ee8f191b..20be437ea1b 100644 --- a/keyboards/evyd13/eon95/keyboard.json +++ b/keyboards/evyd13/eon95/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "B3", "B2", "B1"], "rows": ["D1", "D0", "D3", "D2", "D6", "D4", "D7", "B4", "B5", "B6", "C6", "C7"] diff --git a/keyboards/evyd13/gh80_1800/config.h b/keyboards/evyd13/gh80_1800/config.h deleted file mode 100644 index 4183c7db05e..00000000000 --- a/keyboards/evyd13/gh80_1800/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2020 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/gh80_1800/keyboard.json b/keyboards/evyd13/gh80_1800/keyboard.json index 3200086a171..4fb513cc3c4 100644 --- a/keyboards/evyd13/gh80_1800/keyboard.json +++ b/keyboards/evyd13/gh80_1800/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "D3", "D2", "D1", "D0", "B7"], "rows": ["D5", "B4", "B5", "B6", "C6", "C7", "B0", "B2", "B1", "B3"] diff --git a/keyboards/evyd13/gh80_3700/config.h b/keyboards/evyd13/gh80_3700/config.h deleted file mode 100644 index 4183c7db05e..00000000000 --- a/keyboards/evyd13/gh80_3700/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2020 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/gh80_3700/keyboard.json b/keyboards/evyd13/gh80_3700/keyboard.json index fee94f3a55f..fa11a482df0 100644 --- a/keyboards/evyd13/gh80_3700/keyboard.json +++ b/keyboards/evyd13/gh80_3700/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "D7", "D6", "D4"], "rows": ["B3", "C7", "C6", "B6", "B5", "B4"] diff --git a/keyboards/evyd13/minitomic/config.h b/keyboards/evyd13/minitomic/config.h deleted file mode 100644 index 230ff5e311e..00000000000 --- a/keyboards/evyd13/minitomic/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/minitomic/keyboard.json b/keyboards/evyd13/minitomic/keyboard.json index 4bf23b1a564..7a8d6d8c234 100644 --- a/keyboards/evyd13/minitomic/keyboard.json +++ b/keyboards/evyd13/minitomic/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "B6", "B5", "B4", "D7", "F0", "F1", "F4", "F5", "F6", "F7", "B7", "E6"], "rows": ["B1", "B3", "D4", "D6"] diff --git a/keyboards/evyd13/mx5160/config.h b/keyboards/evyd13/mx5160/config.h deleted file mode 100644 index 230ff5e311e..00000000000 --- a/keyboards/evyd13/mx5160/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/mx5160/keyboard.json b/keyboards/evyd13/mx5160/keyboard.json index 5b430797ec7..b50f6130cec 100644 --- a/keyboards/evyd13/mx5160/keyboard.json +++ b/keyboards/evyd13/mx5160/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "F7", "F6", "F5", "F4", "F1", "F0", "E6"], "rows": ["C6", "C7", "B5", "B6", "D7", "B4", "D4", "D6", "D5", "D3"] diff --git a/keyboards/evyd13/nt750/config.h b/keyboards/evyd13/nt750/config.h deleted file mode 100644 index f64827d05f1..00000000000 --- a/keyboards/evyd13/nt750/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Evy Dekkers - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/nt750/keyboard.json b/keyboards/evyd13/nt750/keyboard.json index 5ead6193dea..03c76f10406 100644 --- a/keyboards/evyd13/nt750/keyboard.json +++ b/keyboards/evyd13/nt750/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "E6", "B1", "B0"], "rows": ["B2", "B3", "B7", "D0", "D1", "D2"] diff --git a/keyboards/evyd13/nt980/config.h b/keyboards/evyd13/nt980/config.h deleted file mode 100644 index f64827d05f1..00000000000 --- a/keyboards/evyd13/nt980/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Evy Dekkers - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/nt980/keyboard.json b/keyboards/evyd13/nt980/keyboard.json index 307f35cecc1..65ba93d73d3 100644 --- a/keyboards/evyd13/nt980/keyboard.json +++ b/keyboards/evyd13/nt980/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "E6", "D3", "D2"], "rows": ["B0", "B1", "D1", "D0", "C6", "C7", "B5", "B6", "B4", "D7", "D4", "D6"] diff --git a/keyboards/evyd13/omrontkl/config.h b/keyboards/evyd13/omrontkl/config.h deleted file mode 100644 index 230ff5e311e..00000000000 --- a/keyboards/evyd13/omrontkl/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/omrontkl/keyboard.json b/keyboards/evyd13/omrontkl/keyboard.json index 28f59b4f537..1ea340acaaf 100644 --- a/keyboards/evyd13/omrontkl/keyboard.json +++ b/keyboards/evyd13/omrontkl/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "C7", "F1", "C6", "F4", "B6", "F5", "B5", "F6", "B4", "F7", "D7", "D6", "D5", "B3", "B1", "B2"], "rows": ["D0", "D1", "D2", "D3", "D4", "B7"] diff --git a/keyboards/evyd13/quackfire/config.h b/keyboards/evyd13/quackfire/config.h deleted file mode 100644 index f64827d05f1..00000000000 --- a/keyboards/evyd13/quackfire/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Evy Dekkers - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/quackfire/keyboard.json b/keyboards/evyd13/quackfire/keyboard.json index a0d0e819fa5..85c2ae81fbc 100644 --- a/keyboards/evyd13/quackfire/keyboard.json +++ b/keyboards/evyd13/quackfire/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "F1", "B1", "D5", "D2", "D1", "D0", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["D3", "F5", "F4", "F0", "B7", "B2", "E6", "B0"] diff --git a/keyboards/evyd13/solheim68/config.h b/keyboards/evyd13/solheim68/config.h deleted file mode 100644 index 82eff7341c7..00000000000 --- a/keyboards/evyd13/solheim68/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2020 Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/evyd13/solheim68/keyboard.json b/keyboards/evyd13/solheim68/keyboard.json index d48281763e8..9e04b9caab9 100644 --- a/keyboards/evyd13/solheim68/keyboard.json +++ b/keyboards/evyd13/solheim68/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3"], "rows": ["E6", "B0", "B1", "B2", "B3"] diff --git a/keyboards/evyd13/ta65/config.h b/keyboards/evyd13/ta65/config.h deleted file mode 100644 index 28be4f1a5b4..00000000000 --- a/keyboards/evyd13/ta65/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Evy Dekkers - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/evyd13/ta65/keyboard.json b/keyboards/evyd13/ta65/keyboard.json index 97090c611cb..1f58de02003 100644 --- a/keyboards/evyd13/ta65/keyboard.json +++ b/keyboards/evyd13/ta65/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D1", "D0", "D3", "D5", "C7", "C6", "B6", "B5", "F0", "F1", "F4", "F5", "F6", "F7", "B0"], "rows": ["B4", "D7", "D6", "D4", "B3"] diff --git a/keyboards/evyd13/wasdat_code/config.h b/keyboards/evyd13/wasdat_code/config.h index 769751b19d8..5254d35e463 100644 --- a/keyboards/evyd13/wasdat_code/config.h +++ b/keyboards/evyd13/wasdat_code/config.h @@ -38,11 +38,6 @@ along with this program. If not, see . #define SN74X138_ADDRESS_PINS { D2, D1, D0 } #define SN74X138_E3_PIN D4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/evyd13/wasdat_code/keyboard.json b/keyboards/evyd13/wasdat_code/keyboard.json index 8c1bb52b6bf..836047cdf1a 100644 --- a/keyboards/evyd13/wasdat_code/keyboard.json +++ b/keyboards/evyd13/wasdat_code/keyboard.json @@ -39,6 +39,12 @@ "nkro": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["fullsize_ansi", "fullsize_iso", "tkl_ansi", "tkl_iso"], "layout_aliases": { "LAYOUT_all": "LAYOUT_fullsize_iso" diff --git a/keyboards/exclusive/e65/config.h b/keyboards/exclusive/e65/config.h deleted file mode 100644 index b7e8690b3cc..00000000000 --- a/keyboards/exclusive/e65/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2019 Brice Figureau - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/exclusive/e65/keyboard.json b/keyboards/exclusive/e65/keyboard.json index 14bed7b7651..9735155abe4 100644 --- a/keyboards/exclusive/e65/keyboard.json +++ b/keyboards/exclusive/e65/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "F0", "F1", "F4", "F5", "F6", "F7"], "rows": ["B0", "B1", "B2", "B3", "B4"] diff --git a/keyboards/exclusive/e7v1/config.h b/keyboards/exclusive/e7v1/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/exclusive/e7v1/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/exclusive/e7v1/keyboard.json b/keyboards/exclusive/e7v1/keyboard.json index c6efe800b4f..ac0eb5549ab 100644 --- a/keyboards/exclusive/e7v1/keyboard.json +++ b/keyboards/exclusive/e7v1/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "C6", "C7", "F4", "F5", "F6", "F7", "F1"], "rows": ["B0", "B1", "B2", "B3", "B4", "B5"] diff --git a/keyboards/exclusive/e7v1se/config.h b/keyboards/exclusive/e7v1se/config.h deleted file mode 100644 index f6e1e895abd..00000000000 --- a/keyboards/exclusive/e7v1se/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Bart Riemens - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/exclusive/e7v1se/keyboard.json b/keyboards/exclusive/e7v1se/keyboard.json index 6dcb6ac8664..4cd9484ae4b 100644 --- a/keyboards/exclusive/e7v1se/keyboard.json +++ b/keyboards/exclusive/e7v1se/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "D3", "D2", "D1", "D0", "D7", "D6", "D4", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F4"], "rows": ["E6", "B0", "B1", "B2", "B3", "F0"] diff --git a/keyboards/exclusive/e85/config.h b/keyboards/exclusive/e85/config.h deleted file mode 100644 index 0ccb642711a..00000000000 --- a/keyboards/exclusive/e85/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/exclusive/e85/hotswap/keyboard.json b/keyboards/exclusive/e85/hotswap/keyboard.json index c64509496aa..4bd8e738829 100644 --- a/keyboards/exclusive/e85/hotswap/keyboard.json +++ b/keyboards/exclusive/e85/hotswap/keyboard.json @@ -49,6 +49,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/exclusive/e85/soldered/keyboard.json b/keyboards/exclusive/e85/soldered/keyboard.json index 5f7458e851b..8b4ebbfc575 100644 --- a/keyboards/exclusive/e85/soldered/keyboard.json +++ b/keyboards/exclusive/e85/soldered/keyboard.json @@ -49,6 +49,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, From b7b4ffc44974e8f8c65bf54b32a8fc8f1b2ee043 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 20 May 2024 12:55:19 -0700 Subject: [PATCH 013/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: A-C, Part 3 (#23747) Affects: - `ck60i` - `coarse/cordillera` - `contender` - `converter/a1200/mistress1200` - `converter/adb_usb` - `converter/m0110_usb` - `converter/siemens_tastatur` - `cool836a` - `copenhagen_click/click_pad_v1` - `coseyfannitutti/discipad` - `coseyfannitutti/discipline` - `coseyfannitutti/mysterium` - `coseyfannitutti/romeo` - `cozykeys/bloomer` - `cozykeys/speedo/v2` - `cozykeys/speedo/v3` - `craftwalk` - `crawlpad` - `crazy_keyboard_68` - `crbn` - `creatkeebs/glacier` - `crimsonkeyboards/resume1800` - `crin` - `cutie_club/borsdorf` - `cutie_club/fidelity` - `cutie_club/giant_macro_pad` - `cutie_club/keebcats/denis` - `cutie_club/keebcats/dougal` - `cutie_club/novus` - `cutie_club/wraith` --- keyboards/ck60i/config.h | 5 --- keyboards/ck60i/keyboard.json | 6 +++ keyboards/coarse/cordillera/config.h | 5 --- keyboards/coarse/cordillera/keyboard.json | 6 +++ keyboards/contender/config.h | 39 ------------------- keyboards/contender/keyboard.json | 6 +++ .../converter/a1200/mistress1200/config.h | 2 - keyboards/converter/adb_usb/config.h | 5 --- keyboards/converter/adb_usb/info.json | 6 +++ keyboards/converter/m0110_usb/config.h | 5 --- keyboards/converter/m0110_usb/keyboard.json | 6 +++ keyboards/converter/siemens_tastatur/config.h | 6 --- .../converter/siemens_tastatur/keyboard.json | 6 +++ keyboards/cool836a/config.h | 39 ------------------- keyboards/cool836a/keyboard.json | 6 +++ .../copenhagen_click/click_pad_v1/config.h | 39 ------------------- .../click_pad_v1/keyboard.json | 6 +++ keyboards/coseyfannitutti/discipad/config.h | 39 ------------------- .../coseyfannitutti/discipad/keyboard.json | 6 +++ keyboards/coseyfannitutti/discipline/config.h | 38 ------------------ .../coseyfannitutti/discipline/keyboard.json | 6 +++ keyboards/coseyfannitutti/mysterium/config.h | 38 ------------------ .../coseyfannitutti/mysterium/keyboard.json | 6 +++ keyboards/coseyfannitutti/romeo/config.h | 39 ------------------- keyboards/coseyfannitutti/romeo/keyboard.json | 6 +++ keyboards/cozykeys/bloomer/config.h | 22 ----------- keyboards/cozykeys/bloomer/info.json | 6 +++ keyboards/cozykeys/speedo/v2/config.h | 22 ----------- keyboards/cozykeys/speedo/v2/keyboard.json | 6 +++ keyboards/cozykeys/speedo/v3/config.h | 22 ----------- keyboards/cozykeys/speedo/v3/keyboard.json | 6 +++ keyboards/craftwalk/config.h | 39 ------------------- keyboards/craftwalk/keyboard.json | 6 +++ keyboards/crawlpad/config.h | 6 --- keyboards/crawlpad/keyboard.json | 6 +++ keyboards/crazy_keyboard_68/config.h | 39 ------------------- keyboards/crazy_keyboard_68/keyboard.json | 6 +++ keyboards/crbn/config.h | 23 ----------- keyboards/crbn/keyboard.json | 6 +++ keyboards/creatkeebs/glacier/config.h | 23 ----------- keyboards/creatkeebs/glacier/keyboard.json | 6 +++ .../crimsonkeyboards/resume1800/config.h | 38 ------------------ .../crimsonkeyboards/resume1800/keyboard.json | 6 +++ keyboards/crin/config.h | 21 ---------- keyboards/crin/keyboard.json | 6 +++ keyboards/cutie_club/borsdorf/config.h | 23 ----------- keyboards/cutie_club/borsdorf/keyboard.json | 6 +++ keyboards/cutie_club/fidelity/config.h | 20 ---------- keyboards/cutie_club/fidelity/keyboard.json | 6 +++ keyboards/cutie_club/giant_macro_pad/config.h | 22 ----------- .../cutie_club/giant_macro_pad/keyboard.json | 6 +++ keyboards/cutie_club/keebcats/denis/config.h | 22 ----------- .../cutie_club/keebcats/denis/keyboard.json | 6 +++ keyboards/cutie_club/keebcats/dougal/config.h | 22 ----------- .../cutie_club/keebcats/dougal/keyboard.json | 6 +++ keyboards/cutie_club/novus/config.h | 23 ----------- keyboards/cutie_club/novus/keyboard.json | 6 +++ keyboards/cutie_club/wraith/config.h | 39 ------------------- keyboards/cutie_club/wraith/keyboard.json | 6 +++ 59 files changed, 174 insertions(+), 725 deletions(-) delete mode 100644 keyboards/contender/config.h delete mode 100644 keyboards/cool836a/config.h delete mode 100755 keyboards/copenhagen_click/click_pad_v1/config.h delete mode 100644 keyboards/coseyfannitutti/discipad/config.h delete mode 100644 keyboards/coseyfannitutti/discipline/config.h delete mode 100644 keyboards/coseyfannitutti/mysterium/config.h delete mode 100644 keyboards/coseyfannitutti/romeo/config.h delete mode 100644 keyboards/cozykeys/bloomer/config.h delete mode 100644 keyboards/cozykeys/speedo/v2/config.h delete mode 100644 keyboards/cozykeys/speedo/v3/config.h delete mode 100644 keyboards/craftwalk/config.h delete mode 100644 keyboards/crazy_keyboard_68/config.h delete mode 100644 keyboards/crbn/config.h delete mode 100644 keyboards/creatkeebs/glacier/config.h delete mode 100644 keyboards/crimsonkeyboards/resume1800/config.h delete mode 100644 keyboards/crin/config.h delete mode 100644 keyboards/cutie_club/borsdorf/config.h delete mode 100644 keyboards/cutie_club/fidelity/config.h delete mode 100755 keyboards/cutie_club/giant_macro_pad/config.h delete mode 100644 keyboards/cutie_club/keebcats/denis/config.h delete mode 100644 keyboards/cutie_club/keebcats/dougal/config.h delete mode 100644 keyboards/cutie_club/novus/config.h delete mode 100644 keyboards/cutie_club/wraith/config.h diff --git a/keyboards/ck60i/config.h b/keyboards/ck60i/config.h index 7506922b008..efc249f466e 100644 --- a/keyboards/ck60i/config.h +++ b/keyboards/ck60i/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/ck60i/keyboard.json b/keyboards/ck60i/keyboard.json index 62ddd817288..72b57598a4e 100644 --- a/keyboards/ck60i/keyboard.json +++ b/keyboards/ck60i/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B12", "A2", "A1", "A0", "F1", "F0", "B11", "B10", "B2", "B1", "B0", "A7", "C15", "C14"], "rows": ["B9", "C13", "A3", "B14", "A8"] diff --git a/keyboards/coarse/cordillera/config.h b/keyboards/coarse/cordillera/config.h index 4282937c7cd..3d552b3f19c 100644 --- a/keyboards/coarse/cordillera/config.h +++ b/keyboards/coarse/cordillera/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_DRIVER PWMD1 #define BACKLIGHT_PWM_CHANNEL 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/coarse/cordillera/keyboard.json b/keyboards/coarse/cordillera/keyboard.json index de78b3027c2..33e0ac06c0b 100644 --- a/keyboards/coarse/cordillera/keyboard.json +++ b/keyboards/coarse/cordillera/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"], "rows": ["A13", "B9", "F1", "A10", "A9"] diff --git a/keyboards/contender/config.h b/keyboards/contender/config.h deleted file mode 100644 index 4254bdc63c3..00000000000 --- a/keyboards/contender/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 sotoba - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/contender/keyboard.json b/keyboards/contender/keyboard.json index 5bef1f0633c..2e5ef844124 100644 --- a/keyboards/contender/keyboard.json +++ b/keyboards/contender/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "D6", "B3", "B0", "B1"], "rows": ["D4", "D3", "B5", "B7", "B4", "B2"] diff --git a/keyboards/converter/a1200/mistress1200/config.h b/keyboards/converter/a1200/mistress1200/config.h index bc137dc1856..1e86b7c7072 100644 --- a/keyboards/converter/a1200/mistress1200/config.h +++ b/keyboards/converter/a1200/mistress1200/config.h @@ -17,8 +17,6 @@ along with this program. If not, see . #pragma once -#undef LOCKING_SUPPORT_ENABLE -#undef LOCKING_RESYNC_ENABLE #define LAYER_STATE_8BIT /* disable action features */ diff --git a/keyboards/converter/adb_usb/config.h b/keyboards/converter/adb_usb/config.h index b6eb105bbd5..ac1bfbe2f70 100644 --- a/keyboards/converter/adb_usb/config.h +++ b/keyboards/converter/adb_usb/config.h @@ -23,11 +23,6 @@ Ported to QMK by Peter Roe #define MATRIX_ROWS 16 // keycode bit: 3-0 #define MATRIX_COLS 8 // keycode bit: 6-4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* ADB port setting */ #define ADB_PORT PORTD #define ADB_PIN PIND diff --git a/keyboards/converter/adb_usb/info.json b/keyboards/converter/adb_usb/info.json index 47467a97c72..3fbe2c0c74e 100644 --- a/keyboards/converter/adb_usb/info.json +++ b/keyboards/converter/adb_usb/info.json @@ -13,6 +13,12 @@ "mousekey": false, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_ext_ansi": { "layout": [ diff --git a/keyboards/converter/m0110_usb/config.h b/keyboards/converter/m0110_usb/config.h index 62fdaf0869c..a3b56ed9d10 100644 --- a/keyboards/converter/m0110_usb/config.h +++ b/keyboards/converter/m0110_usb/config.h @@ -25,11 +25,6 @@ Ported to QMK by Techsock #define MATRIX_ROWS 14 #define MATRIX_COLS 8 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* magic key */ #define IS_COMMAND() ( \ get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_LALT) | MOD_BIT(KC_LGUI)) || \ diff --git a/keyboards/converter/m0110_usb/keyboard.json b/keyboards/converter/m0110_usb/keyboard.json index 522f83caba1..11b83bbb18d 100644 --- a/keyboards/converter/m0110_usb/keyboard.json +++ b/keyboards/converter/m0110_usb/keyboard.json @@ -17,6 +17,12 @@ "extrakey": true, "usb_hid": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_ansi": { "layout": [ diff --git a/keyboards/converter/siemens_tastatur/config.h b/keyboards/converter/siemens_tastatur/config.h index 49725a9592b..cdd98443447 100644 --- a/keyboards/converter/siemens_tastatur/config.h +++ b/keyboards/converter/siemens_tastatur/config.h @@ -21,12 +21,6 @@ along with this program. If not, see . #define MATRIX_ROWS 5 #define MATRIX_COLS 19 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/converter/siemens_tastatur/keyboard.json b/keyboards/converter/siemens_tastatur/keyboard.json index 639859f2081..710a2902cbf 100644 --- a/keyboards/converter/siemens_tastatur/keyboard.json +++ b/keyboards/converter/siemens_tastatur/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/cool836a/config.h b/keyboards/cool836a/config.h deleted file mode 100644 index 886f8a69f1d..00000000000 --- a/keyboards/cool836a/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Ohashi - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/cool836a/keyboard.json b/keyboards/cool836a/keyboard.json index 18dd9cfcdc9..3d32f45c9d5 100644 --- a/keyboards/cool836a/keyboard.json +++ b/keyboards/cool836a/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D0", "B2", "C6", "D7", "E6"], "rows": ["D1", "B5", "B4", "F4", "B1", "B6"] diff --git a/keyboards/copenhagen_click/click_pad_v1/config.h b/keyboards/copenhagen_click/click_pad_v1/config.h deleted file mode 100755 index 970e69e7f62..00000000000 --- a/keyboards/copenhagen_click/click_pad_v1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 mini-ninja-64 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/copenhagen_click/click_pad_v1/keyboard.json b/keyboards/copenhagen_click/click_pad_v1/keyboard.json index 1c402db576b..d84630cfbc9 100755 --- a/keyboards/copenhagen_click/click_pad_v1/keyboard.json +++ b/keyboards/copenhagen_click/click_pad_v1/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5"], "rows": ["F7"] diff --git a/keyboards/coseyfannitutti/discipad/config.h b/keyboards/coseyfannitutti/discipad/config.h deleted file mode 100644 index 31a3fe8cb01..00000000000 --- a/keyboards/coseyfannitutti/discipad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 coseyfannitutti - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/coseyfannitutti/discipad/keyboard.json b/keyboards/coseyfannitutti/discipad/keyboard.json index a169863dba2..5c491876e4e 100644 --- a/keyboards/coseyfannitutti/discipad/keyboard.json +++ b/keyboards/coseyfannitutti/discipad/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C0", "C1", "C2", "C3"], "rows": ["B1", "B0", "D7", "D6", "D4"] diff --git a/keyboards/coseyfannitutti/discipline/config.h b/keyboards/coseyfannitutti/discipline/config.h deleted file mode 100644 index 0acee7345a5..00000000000 --- a/keyboards/coseyfannitutti/discipline/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/*Copyright 2019 coseyfannitutti - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/coseyfannitutti/discipline/keyboard.json b/keyboards/coseyfannitutti/discipline/keyboard.json index 1fb94c7052c..26c5f95bb4e 100644 --- a/keyboards/coseyfannitutti/discipline/keyboard.json +++ b/keyboards/coseyfannitutti/discipline/keyboard.json @@ -21,6 +21,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_65_ansi_2_right_mods": "LAYOUT_65_ansi_blocker", "LAYOUT_65_iso_2_right_mods": "LAYOUT_65_iso_blocker", diff --git a/keyboards/coseyfannitutti/mysterium/config.h b/keyboards/coseyfannitutti/mysterium/config.h deleted file mode 100644 index 0acee7345a5..00000000000 --- a/keyboards/coseyfannitutti/mysterium/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/*Copyright 2019 coseyfannitutti - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/coseyfannitutti/mysterium/keyboard.json b/keyboards/coseyfannitutti/mysterium/keyboard.json index 0d75d192293..ae6adf0ae69 100644 --- a/keyboards/coseyfannitutti/mysterium/keyboard.json +++ b/keyboards/coseyfannitutti/mysterium/keyboard.json @@ -20,6 +20,12 @@ "mousekey": false, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["tkl_ansi"], "layouts": { "LAYOUT_tkl_ansi": { diff --git a/keyboards/coseyfannitutti/romeo/config.h b/keyboards/coseyfannitutti/romeo/config.h deleted file mode 100644 index 31a3fe8cb01..00000000000 --- a/keyboards/coseyfannitutti/romeo/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 coseyfannitutti - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/coseyfannitutti/romeo/keyboard.json b/keyboards/coseyfannitutti/romeo/keyboard.json index 5392cf00f1a..260589889a4 100644 --- a/keyboards/coseyfannitutti/romeo/keyboard.json +++ b/keyboards/coseyfannitutti/romeo/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C5", "C4", "C3", "D0", "C2", "D1", "C1", "C0", "D4", "B0", "D7", "D6"], "rows": ["B1", "B4", "B3", "B2"] diff --git a/keyboards/cozykeys/bloomer/config.h b/keyboards/cozykeys/bloomer/config.h deleted file mode 100644 index 922dec71d15..00000000000 --- a/keyboards/cozykeys/bloomer/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2021 Paul Ewing - -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 . -*/ -#pragma once - -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cozykeys/bloomer/info.json b/keyboards/cozykeys/bloomer/info.json index dd0232bbcb5..37a80f8fb44 100644 --- a/keyboards/cozykeys/bloomer/info.json +++ b/keyboards/cozykeys/bloomer/info.json @@ -7,6 +7,12 @@ "vid": "0xFEED", "pid": "0x1191" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/cozykeys/speedo/v2/config.h b/keyboards/cozykeys/speedo/v2/config.h deleted file mode 100644 index 2643e4de4a1..00000000000 --- a/keyboards/cozykeys/speedo/v2/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2020 Paul Ewing - -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 . -*/ -#pragma once - -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cozykeys/speedo/v2/keyboard.json b/keyboards/cozykeys/speedo/v2/keyboard.json index 48412e7e7d6..69dd33d6b6e 100644 --- a/keyboards/cozykeys/speedo/v2/keyboard.json +++ b/keyboards/cozykeys/speedo/v2/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "B6", "B5", "D0", "B7", "B3", "B2", "B1", "B0"], "rows": ["D1", "D2", "D3", "C6", "C7"] diff --git a/keyboards/cozykeys/speedo/v3/config.h b/keyboards/cozykeys/speedo/v3/config.h deleted file mode 100644 index 2643e4de4a1..00000000000 --- a/keyboards/cozykeys/speedo/v3/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2020 Paul Ewing - -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 . -*/ -#pragma once - -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cozykeys/speedo/v3/keyboard.json b/keyboards/cozykeys/speedo/v3/keyboard.json index c4aaaecb6d1..7e91058cd5e 100644 --- a/keyboards/cozykeys/speedo/v3/keyboard.json +++ b/keyboards/cozykeys/speedo/v3/keyboard.json @@ -43,6 +43,12 @@ "extrakey": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/craftwalk/config.h b/keyboards/craftwalk/config.h deleted file mode 100644 index 4254bdc63c3..00000000000 --- a/keyboards/craftwalk/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 sotoba - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/craftwalk/keyboard.json b/keyboards/craftwalk/keyboard.json index 0458c8f8c46..8659bb42236 100644 --- a/keyboards/craftwalk/keyboard.json +++ b/keyboards/craftwalk/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "F7", "F5", "F4", "B2", "E6", "B4"], "rows": ["F6", "B3", "B5"] diff --git a/keyboards/crawlpad/config.h b/keyboards/crawlpad/config.h index cf006905ab2..6e1c5089781 100755 --- a/keyboards/crawlpad/config.h +++ b/keyboards/crawlpad/config.h @@ -3,12 +3,6 @@ /* Pins for custom per-row LEDs. Should be changed to use named pins. */ #define LED_ROW_PINS { 8, 9, 10, 11 } -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* key combination for command */ #define IS_COMMAND() ( \ false \ diff --git a/keyboards/crawlpad/keyboard.json b/keyboards/crawlpad/keyboard.json index 1e9bb74c765..d4f1c439715 100644 --- a/keyboards/crawlpad/keyboard.json +++ b/keyboards/crawlpad/keyboard.json @@ -34,6 +34,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "D5", "D6", "D7"], "rows": ["F0", "F1", "F4", "F5"] diff --git a/keyboards/crazy_keyboard_68/config.h b/keyboards/crazy_keyboard_68/config.h deleted file mode 100644 index b5128c93651..00000000000 --- a/keyboards/crazy_keyboard_68/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 chent7 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/crazy_keyboard_68/keyboard.json b/keyboards/crazy_keyboard_68/keyboard.json index fa36b106be0..a53013bfb97 100644 --- a/keyboards/crazy_keyboard_68/keyboard.json +++ b/keyboards/crazy_keyboard_68/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3", "F4"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/crbn/config.h b/keyboards/crbn/config.h deleted file mode 100644 index f7584af0bb2..00000000000 --- a/keyboards/crbn/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Harry Herring - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/crbn/keyboard.json b/keyboards/crbn/keyboard.json index 63c82470471..9febd33ed6c 100644 --- a/keyboards/crbn/keyboard.json +++ b/keyboards/crbn/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "B6", "B2"], "rows": ["B3", "B1", "F7", "F6"] diff --git a/keyboards/creatkeebs/glacier/config.h b/keyboards/creatkeebs/glacier/config.h deleted file mode 100644 index 81016b23a03..00000000000 --- a/keyboards/creatkeebs/glacier/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2022 Tim (https://github.com/Timliuzhaolu) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/creatkeebs/glacier/keyboard.json b/keyboards/creatkeebs/glacier/keyboard.json index c6b5dccd2c1..61e6bd9136a 100644 --- a/keyboards/creatkeebs/glacier/keyboard.json +++ b/keyboards/creatkeebs/glacier/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "D6", "D7", "B4", "B5", "F6", "B0", "B6", "C6", "C7", "B1", "B2", "B3", "B7", "D3", "D2", "D1"], "rows": ["F0", "F1", "F4", "E6", "F5", "D0"] diff --git a/keyboards/crimsonkeyboards/resume1800/config.h b/keyboards/crimsonkeyboards/resume1800/config.h deleted file mode 100644 index bdc484a3b31..00000000000 --- a/keyboards/crimsonkeyboards/resume1800/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2022 CrimsonKeyboards - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/crimsonkeyboards/resume1800/keyboard.json b/keyboards/crimsonkeyboards/resume1800/keyboard.json index f88b7032086..aa54b048018 100644 --- a/keyboards/crimsonkeyboards/resume1800/keyboard.json +++ b/keyboards/crimsonkeyboards/resume1800/keyboard.json @@ -25,6 +25,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_resume1800_ansi_all": "LAYOUT_ansi_all", "LAYOUT_resume1800_iso_all": "LAYOUT_iso_all" diff --git a/keyboards/crin/config.h b/keyboards/crin/config.h deleted file mode 100644 index 3fe5a403296..00000000000 --- a/keyboards/crin/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* -Copyright 2020 KnoblesseOblige - -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 . -*/ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/crin/keyboard.json b/keyboards/crin/keyboard.json index e6680219363..f54c1db1dc2 100644 --- a/keyboards/crin/keyboard.json +++ b/keyboards/crin/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "B9", "B8", "B7", "B6", "B5", "B4", "B3"], "rows": ["A9", "A8", "B15", "B14", "B13"] diff --git a/keyboards/cutie_club/borsdorf/config.h b/keyboards/cutie_club/borsdorf/config.h deleted file mode 100644 index c25df59397a..00000000000 --- a/keyboards/cutie_club/borsdorf/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 Cutie Club - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cutie_club/borsdorf/keyboard.json b/keyboards/cutie_club/borsdorf/keyboard.json index ba3b6f8376e..30b5a74d64d 100644 --- a/keyboards/cutie_club/borsdorf/keyboard.json +++ b/keyboards/cutie_club/borsdorf/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "F1", "F0"], "rows": ["A15", "A14", "B12", "B5", "B4"] diff --git a/keyboards/cutie_club/fidelity/config.h b/keyboards/cutie_club/fidelity/config.h deleted file mode 100644 index 6615bd2ab72..00000000000 --- a/keyboards/cutie_club/fidelity/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2023 Cutie Club - * - * 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 . - */ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cutie_club/fidelity/keyboard.json b/keyboards/cutie_club/fidelity/keyboard.json index 0b06e1e5672..47e7789506f 100644 --- a/keyboards/cutie_club/fidelity/keyboard.json +++ b/keyboards/cutie_club/fidelity/keyboard.json @@ -10,6 +10,12 @@ "command": false, "console": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "usb": { "vid": "0xFB9C", "pid": "0x4D1B", diff --git a/keyboards/cutie_club/giant_macro_pad/config.h b/keyboards/cutie_club/giant_macro_pad/config.h deleted file mode 100755 index c5eb6384a37..00000000000 --- a/keyboards/cutie_club/giant_macro_pad/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Cutie Club - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cutie_club/giant_macro_pad/keyboard.json b/keyboards/cutie_club/giant_macro_pad/keyboard.json index fc5ce85a2a8..f5cde334c04 100644 --- a/keyboards/cutie_club/giant_macro_pad/keyboard.json +++ b/keyboards/cutie_club/giant_macro_pad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C9", "C8", "C7", "C6", "B15", "B14", "B13", "B12", "A8", "A15", "B9", "A2", "A1", "A0", "C3", "C2", "C1", "C0", "F1", "F0"], "rows": ["C10", "C11", "C12", "D2", "B3", "B4", "B5", "B6", "B7", "B8", "A3", "B2", "B1", "B0", "C5", "C4", "A7", "A6", "A5", "A4"] diff --git a/keyboards/cutie_club/keebcats/denis/config.h b/keyboards/cutie_club/keebcats/denis/config.h deleted file mode 100644 index c5eb6384a37..00000000000 --- a/keyboards/cutie_club/keebcats/denis/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Cutie Club - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cutie_club/keebcats/denis/keyboard.json b/keyboards/cutie_club/keebcats/denis/keyboard.json index 9f583d9797b..f9d06af12ad 100644 --- a/keyboards/cutie_club/keebcats/denis/keyboard.json +++ b/keyboards/cutie_club/keebcats/denis/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1"], "rows": ["B2", "D0", "F5", "F4", "F1"] diff --git a/keyboards/cutie_club/keebcats/dougal/config.h b/keyboards/cutie_club/keebcats/dougal/config.h deleted file mode 100644 index c5eb6384a37..00000000000 --- a/keyboards/cutie_club/keebcats/dougal/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Cutie Club - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cutie_club/keebcats/dougal/keyboard.json b/keyboards/cutie_club/keebcats/dougal/keyboard.json index 19a422b9ba5..915e3ad15c5 100644 --- a/keyboards/cutie_club/keebcats/dougal/keyboard.json +++ b/keyboards/cutie_club/keebcats/dougal/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "B7"], "rows": ["B2", "D0", "F5", "F4", "F1"] diff --git a/keyboards/cutie_club/novus/config.h b/keyboards/cutie_club/novus/config.h deleted file mode 100644 index 4c65b71f76e..00000000000 --- a/keyboards/cutie_club/novus/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 Cutie Club - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cutie_club/novus/keyboard.json b/keyboards/cutie_club/novus/keyboard.json index 8738fcc32c8..97bb81a71f8 100644 --- a/keyboards/cutie_club/novus/keyboard.json +++ b/keyboards/cutie_club/novus/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "C6", "C7", "B2", "B3", "D0", "D1", "D2", "D3", "D7", "B4", "B5", "D5", "D4", "D6"], "rows": ["F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/cutie_club/wraith/config.h b/keyboards/cutie_club/wraith/config.h deleted file mode 100644 index 46a265902c4..00000000000 --- a/keyboards/cutie_club/wraith/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Amber Holly - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/cutie_club/wraith/keyboard.json b/keyboards/cutie_club/wraith/keyboard.json index 6f217e420f3..7cc29caf25d 100644 --- a/keyboards/cutie_club/wraith/keyboard.json +++ b/keyboards/cutie_club/wraith/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "B7"] From 079ac7c1665c292ea086e8457d2a83dad805ea31 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 20 May 2024 13:00:35 -0700 Subject: [PATCH 014/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: A-C, Part 2 (#23746) Affects: - `chalice` - `charue/sunsetter_r2` - `checkerboards/axon40` - `checkerboards/candybar_ortho` - `checkerboards/g_idb60` - `checkerboards/nop60` - `checkerboards/phoenix45_ortho` - `checkerboards/plexus75` - `checkerboards/plexus75_he` - `checkerboards/pursuit40` - `checkerboards/quark` - `checkerboards/quark_lp` - `checkerboards/quark_plus` - `checkerboards/quark_squared` - `checkerboards/snop60` - `checkerboards/ud40_ortho_alt` - `cheshire/curiosity` - `chickenman/ciel` - `chlx/merro60` - `chlx/str_merro60` - `chosfox/cf81` - `citrus/erdnuss65` - `ckeys/handwire_101` - `ckeys/nakey` - `ckeys/obelus` - `ckeys/thedora` - `ckeys/washington` - `clueboard/2x1800/2018` - `clueboard/2x1800/2021` --- keyboards/chalice/config.h | 23 ----------- keyboards/chalice/keyboard.json | 6 +++ keyboards/charue/sunsetter_r2/config.h | 9 ----- keyboards/charue/sunsetter_r2/keyboard.json | 6 +++ keyboards/checkerboards/axon40/config.h | 23 ----------- keyboards/checkerboards/axon40/keyboard.json | 6 +++ .../checkerboards/candybar_ortho/config.h | 23 ----------- .../candybar_ortho/keyboard.json | 6 +++ keyboards/checkerboards/g_idb60/config.h | 24 ------------ keyboards/checkerboards/g_idb60/keyboard.json | 6 +++ keyboards/checkerboards/nop60/config.h | 24 ------------ keyboards/checkerboards/nop60/keyboard.json | 6 +++ .../checkerboards/phoenix45_ortho/config.h | 23 ----------- .../phoenix45_ortho/keyboard.json | 6 +++ keyboards/checkerboards/plexus75/config.h | 38 ------------------ .../checkerboards/plexus75/keyboard.json | 6 +++ keyboards/checkerboards/plexus75_he/config.h | 23 ----------- .../checkerboards/plexus75_he/keyboard.json | 6 +++ keyboards/checkerboards/pursuit40/config.h | 39 ------------------- .../checkerboards/pursuit40/keyboard.json | 6 +++ keyboards/checkerboards/quark/config.h | 23 ----------- keyboards/checkerboards/quark/keyboard.json | 6 +++ keyboards/checkerboards/quark_lp/config.h | 23 ----------- .../checkerboards/quark_lp/keyboard.json | 6 +++ keyboards/checkerboards/quark_plus/config.h | 23 ----------- .../checkerboards/quark_plus/keyboard.json | 6 +++ .../checkerboards/quark_squared/config.h | 23 ----------- .../checkerboards/quark_squared/keyboard.json | 6 +++ keyboards/checkerboards/snop60/config.h | 24 ------------ keyboards/checkerboards/snop60/keyboard.json | 6 +++ .../checkerboards/ud40_ortho_alt/config.h | 23 ----------- .../ud40_ortho_alt/keyboard.json | 6 +++ keyboards/cheshire/curiosity/config.h | 23 ----------- keyboards/cheshire/curiosity/keyboard.json | 6 +++ keyboards/chickenman/ciel/config.h | 39 ------------------- keyboards/chickenman/ciel/keyboard.json | 6 +++ keyboards/chlx/merro60/config.h | 5 --- keyboards/chlx/merro60/keyboard.json | 6 +++ keyboards/chlx/str_merro60/config.h | 5 --- keyboards/chlx/str_merro60/keyboard.json | 6 +++ keyboards/chosfox/cf81/config.h | 5 --- keyboards/chosfox/cf81/keyboard.json | 6 +++ keyboards/citrus/erdnuss65/config.h | 3 -- keyboards/citrus/erdnuss65/keyboard.json | 6 +++ keyboards/ckeys/handwire_101/config.h | 5 --- keyboards/ckeys/handwire_101/keyboard.json | 6 +++ keyboards/ckeys/nakey/config.h | 39 ------------------- keyboards/ckeys/nakey/keyboard.json | 6 +++ keyboards/ckeys/obelus/config.h | 5 --- keyboards/ckeys/obelus/keyboard.json | 6 +++ keyboards/ckeys/thedora/config.h | 5 --- keyboards/ckeys/thedora/keyboard.json | 6 +++ keyboards/ckeys/washington/config.h | 37 ------------------ keyboards/ckeys/washington/keyboard.json | 6 +++ keyboards/clueboard/2x1800/2018/config.h | 6 --- keyboards/clueboard/2x1800/2018/keyboard.json | 6 +++ keyboards/clueboard/2x1800/2021/config.h | 6 --- keyboards/clueboard/2x1800/2021/keyboard.json | 6 +++ 58 files changed, 174 insertions(+), 571 deletions(-) delete mode 100644 keyboards/chalice/config.h delete mode 100644 keyboards/charue/sunsetter_r2/config.h delete mode 100644 keyboards/checkerboards/axon40/config.h delete mode 100644 keyboards/checkerboards/candybar_ortho/config.h delete mode 100644 keyboards/checkerboards/g_idb60/config.h delete mode 100644 keyboards/checkerboards/nop60/config.h delete mode 100644 keyboards/checkerboards/phoenix45_ortho/config.h delete mode 100644 keyboards/checkerboards/plexus75/config.h delete mode 100644 keyboards/checkerboards/plexus75_he/config.h delete mode 100644 keyboards/checkerboards/pursuit40/config.h delete mode 100644 keyboards/checkerboards/quark/config.h delete mode 100644 keyboards/checkerboards/quark_lp/config.h delete mode 100644 keyboards/checkerboards/quark_plus/config.h delete mode 100644 keyboards/checkerboards/quark_squared/config.h delete mode 100644 keyboards/checkerboards/snop60/config.h delete mode 100644 keyboards/checkerboards/ud40_ortho_alt/config.h delete mode 100644 keyboards/cheshire/curiosity/config.h delete mode 100644 keyboards/chickenman/ciel/config.h delete mode 100644 keyboards/ckeys/nakey/config.h delete mode 100644 keyboards/ckeys/washington/config.h diff --git a/keyboards/chalice/config.h b/keyboards/chalice/config.h deleted file mode 100644 index f53b6e90992..00000000000 --- a/keyboards/chalice/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 null-ll - * Copyright 2021 Jels, Josh Johnson - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/chalice/keyboard.json b/keyboards/chalice/keyboard.json index 9332431184f..b8b44369661 100644 --- a/keyboards/chalice/keyboard.json +++ b/keyboards/chalice/keyboard.json @@ -36,6 +36,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "C6", "B1", "D2", "E6", "B3", "D7"], "rows": ["F4", "D1", "D0", "F5", "D4", "F6", "B4", "B5", "B2", "B6"] diff --git a/keyboards/charue/sunsetter_r2/config.h b/keyboards/charue/sunsetter_r2/config.h deleted file mode 100644 index bb09fb145c7..00000000000 --- a/keyboards/charue/sunsetter_r2/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2022 Charue Design -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/charue/sunsetter_r2/keyboard.json b/keyboards/charue/sunsetter_r2/keyboard.json index b961c21e26c..b7b7cc8d92b 100644 --- a/keyboards/charue/sunsetter_r2/keyboard.json +++ b/keyboards/charue/sunsetter_r2/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F7", "B1", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["B3", "B2", "F4", "F5", "F6"] diff --git a/keyboards/checkerboards/axon40/config.h b/keyboards/checkerboards/axon40/config.h deleted file mode 100644 index 21d76ea1ac7..00000000000 --- a/keyboards/checkerboards/axon40/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/axon40/keyboard.json b/keyboards/checkerboards/axon40/keyboard.json index 8a3f0d58572..ca492690b9d 100644 --- a/keyboards/checkerboards/axon40/keyboard.json +++ b/keyboards/checkerboards/axon40/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "B7", "D4", "D6", "F0", "F1", "C6", "B6", "B5", "B4", "E6", "B0"], "rows": ["D2", "D3", "D1", "D5"] diff --git a/keyboards/checkerboards/candybar_ortho/config.h b/keyboards/checkerboards/candybar_ortho/config.h deleted file mode 100644 index e9b1b6d1052..00000000000 --- a/keyboards/checkerboards/candybar_ortho/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Nathan Spears - * - * 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 . - */ - - #pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/candybar_ortho/keyboard.json b/keyboards/checkerboards/candybar_ortho/keyboard.json index 6067d1c2771..d7908a04f4d 100644 --- a/keyboards/checkerboards/candybar_ortho/keyboard.json +++ b/keyboards/checkerboards/candybar_ortho/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "D0", "D1", "D2"], "rows": ["B4", "D4", "D7", "D6", "B5", "B6", "C7", "C6"] diff --git a/keyboards/checkerboards/g_idb60/config.h b/keyboards/checkerboards/g_idb60/config.h deleted file mode 100644 index 9b8adff3ecf..00000000000 --- a/keyboards/checkerboards/g_idb60/config.h +++ /dev/null @@ -1,24 +0,0 @@ - /* -Copyright 2021 Nathan Spears - - 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/g_idb60/keyboard.json b/keyboards/checkerboards/g_idb60/keyboard.json index 7ef5a8e0cdc..b4fc0f9b6d9 100644 --- a/keyboards/checkerboards/g_idb60/keyboard.json +++ b/keyboards/checkerboards/g_idb60/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "C6", "C7", "D4", "F6", "F0", "B0", "F1", "F4", "F5", "D1", "D0", "D3", "D5"], "rows": ["D6", "D7", "B4", "B5", "F7"] diff --git a/keyboards/checkerboards/nop60/config.h b/keyboards/checkerboards/nop60/config.h deleted file mode 100644 index 9b8adff3ecf..00000000000 --- a/keyboards/checkerboards/nop60/config.h +++ /dev/null @@ -1,24 +0,0 @@ - /* -Copyright 2021 Nathan Spears - - 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/nop60/keyboard.json b/keyboards/checkerboards/nop60/keyboard.json index f12b7a54d28..a07c2af3bc5 100644 --- a/keyboards/checkerboards/nop60/keyboard.json +++ b/keyboards/checkerboards/nop60/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F4", "D0", "D7", "D3", "D4", "D5", "D6", "F7", "C7", "B4", "B6", "B5"], "rows": ["F0", "F1", "E6", "B7", "C6"] diff --git a/keyboards/checkerboards/phoenix45_ortho/config.h b/keyboards/checkerboards/phoenix45_ortho/config.h deleted file mode 100644 index 21d76ea1ac7..00000000000 --- a/keyboards/checkerboards/phoenix45_ortho/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/phoenix45_ortho/keyboard.json b/keyboards/checkerboards/phoenix45_ortho/keyboard.json index 43565b98529..ecec354c561 100644 --- a/keyboards/checkerboards/phoenix45_ortho/keyboard.json +++ b/keyboards/checkerboards/phoenix45_ortho/keyboard.json @@ -29,6 +29,12 @@ "unicode": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_ortho_2x225u": { "layout": [ diff --git a/keyboards/checkerboards/plexus75/config.h b/keyboards/checkerboards/plexus75/config.h deleted file mode 100644 index c71a85e7db8..00000000000 --- a/keyboards/checkerboards/plexus75/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2020 Nathan Spears - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/checkerboards/plexus75/keyboard.json b/keyboards/checkerboards/plexus75/keyboard.json index 1757cdeb572..14bd4deb75f 100644 --- a/keyboards/checkerboards/plexus75/keyboard.json +++ b/keyboards/checkerboards/plexus75/keyboard.json @@ -39,6 +39,12 @@ "rgblight": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B0", "D1", "F7", "F6", "F5", "F4", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["D2", "B3", "B1", "F1", "F0"] diff --git a/keyboards/checkerboards/plexus75_he/config.h b/keyboards/checkerboards/plexus75_he/config.h deleted file mode 100644 index 21d76ea1ac7..00000000000 --- a/keyboards/checkerboards/plexus75_he/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/plexus75_he/keyboard.json b/keyboards/checkerboards/plexus75_he/keyboard.json index c089e58e613..2da1bf34f39 100644 --- a/keyboards/checkerboards/plexus75_he/keyboard.json +++ b/keyboards/checkerboards/plexus75_he/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C4", "C5", "D3", "C7", "B7", "B6", "B5", "B4"], "rows": ["C2", "D0", "D1", "D2", "D6", "B0", "B3", "B2", "C6", "B1"] diff --git a/keyboards/checkerboards/pursuit40/config.h b/keyboards/checkerboards/pursuit40/config.h deleted file mode 100644 index 4552a750928..00000000000 --- a/keyboards/checkerboards/pursuit40/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2020 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/checkerboards/pursuit40/keyboard.json b/keyboards/checkerboards/pursuit40/keyboard.json index 6e65dde2f1c..974bab5c920 100644 --- a/keyboards/checkerboards/pursuit40/keyboard.json +++ b/keyboards/checkerboards/pursuit40/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "E6", "B7", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["D2", "D1", "F4", "F5"] diff --git a/keyboards/checkerboards/quark/config.h b/keyboards/checkerboards/quark/config.h deleted file mode 100644 index 876e59daa07..00000000000 --- a/keyboards/checkerboards/quark/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/quark/keyboard.json b/keyboards/checkerboards/quark/keyboard.json index 22fa758e7ed..4bb7c7fef7f 100644 --- a/keyboards/checkerboards/quark/keyboard.json +++ b/keyboards/checkerboards/quark/keyboard.json @@ -51,6 +51,12 @@ "unicode": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["ortho_4x12", "planck_mit"], "layouts": { "LAYOUT_ortho_5x12_2x225u": { diff --git a/keyboards/checkerboards/quark_lp/config.h b/keyboards/checkerboards/quark_lp/config.h deleted file mode 100644 index 21d76ea1ac7..00000000000 --- a/keyboards/checkerboards/quark_lp/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/quark_lp/keyboard.json b/keyboards/checkerboards/quark_lp/keyboard.json index 35b599879eb..59fda2efc8a 100644 --- a/keyboards/checkerboards/quark_lp/keyboard.json +++ b/keyboards/checkerboards/quark_lp/keyboard.json @@ -47,6 +47,12 @@ "nkro": false, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B5", "B4", "B3", "B0", "D6", "D5", "D4", "D3", "D2", "D1", "D0"], "rows": ["C5", "C4", "C6", "C7"] diff --git a/keyboards/checkerboards/quark_plus/config.h b/keyboards/checkerboards/quark_plus/config.h deleted file mode 100644 index 07fe2e4c7b8..00000000000 --- a/keyboards/checkerboards/quark_plus/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2022 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/quark_plus/keyboard.json b/keyboards/checkerboards/quark_plus/keyboard.json index 6e7f5a8cc28..311d21c219c 100644 --- a/keyboards/checkerboards/quark_plus/keyboard.json +++ b/keyboards/checkerboards/quark_plus/keyboard.json @@ -40,6 +40,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "D1", "D5", "D4", "D3", "D2"], "rows": ["B4", "B1", "C2", "D0", "D6", "B0", "B6", "B5"] diff --git a/keyboards/checkerboards/quark_squared/config.h b/keyboards/checkerboards/quark_squared/config.h deleted file mode 100644 index 21d76ea1ac7..00000000000 --- a/keyboards/checkerboards/quark_squared/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/quark_squared/keyboard.json b/keyboards/checkerboards/quark_squared/keyboard.json index e242bfc5d9a..efec5e50e75 100644 --- a/keyboards/checkerboards/quark_squared/keyboard.json +++ b/keyboards/checkerboards/quark_squared/keyboard.json @@ -51,6 +51,12 @@ "unicode": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_4_2x225u": { "layout": [ diff --git a/keyboards/checkerboards/snop60/config.h b/keyboards/checkerboards/snop60/config.h deleted file mode 100644 index e335720fd1e..00000000000 --- a/keyboards/checkerboards/snop60/config.h +++ /dev/null @@ -1,24 +0,0 @@ - /* -Copyright 2022 Nathan Spears - - 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/snop60/keyboard.json b/keyboards/checkerboards/snop60/keyboard.json index 60b22caf76a..443c27d9b4f 100644 --- a/keyboards/checkerboards/snop60/keyboard.json +++ b/keyboards/checkerboards/snop60/keyboard.json @@ -60,6 +60,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_7u": "LAYOUT_60_ansi_tsangan_split_bs_rshift", "LAYOUT_2x3u": "LAYOUT_60_ansi_tsangan_split_bs_rshift_space" diff --git a/keyboards/checkerboards/ud40_ortho_alt/config.h b/keyboards/checkerboards/ud40_ortho_alt/config.h deleted file mode 100644 index 21d76ea1ac7..00000000000 --- a/keyboards/checkerboards/ud40_ortho_alt/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/checkerboards/ud40_ortho_alt/keyboard.json b/keyboards/checkerboards/ud40_ortho_alt/keyboard.json index 4e025c181fb..2aae3d1cc85 100644 --- a/keyboards/checkerboards/ud40_ortho_alt/keyboard.json +++ b/keyboards/checkerboards/ud40_ortho_alt/keyboard.json @@ -39,6 +39,12 @@ "rgblight": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B1", "F7", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F5", "F6"], "rows": ["E6", "F0", "F1", "F4"] diff --git a/keyboards/cheshire/curiosity/config.h b/keyboards/cheshire/curiosity/config.h deleted file mode 100644 index 2687b628f58..00000000000 --- a/keyboards/cheshire/curiosity/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 zvecr - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cheshire/curiosity/keyboard.json b/keyboards/cheshire/curiosity/keyboard.json index 09b01e896fe..679f2a45d1a 100644 --- a/keyboards/cheshire/curiosity/keyboard.json +++ b/keyboards/cheshire/curiosity/keyboard.json @@ -34,6 +34,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15"], "rows": ["B13", "B14", "A4", "A2", "A1"] diff --git a/keyboards/chickenman/ciel/config.h b/keyboards/chickenman/ciel/config.h deleted file mode 100644 index 2a4bb26963d..00000000000 --- a/keyboards/chickenman/ciel/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Koichi Katano, 2022 Ramon Imbao - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/chickenman/ciel/keyboard.json b/keyboards/chickenman/ciel/keyboard.json index d6813a23aaf..554d41c3945 100644 --- a/keyboards/chickenman/ciel/keyboard.json +++ b/keyboards/chickenman/ciel/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "B6", "B5", "B4", "B3", "B2", "B1", "D6", "D5", "D4", "D3", "D2", "D1", "D0", "C2"], "rows": ["C5", "C4", "B0", "C7", "B7"] diff --git a/keyboards/chlx/merro60/config.h b/keyboards/chlx/merro60/config.h index 18198a8bce8..c16e7f09f55 100644 --- a/keyboards/chlx/merro60/config.h +++ b/keyboards/chlx/merro60/config.h @@ -17,10 +17,5 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* VIA related config */ #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/chlx/merro60/keyboard.json b/keyboards/chlx/merro60/keyboard.json index d34489607ac..700af7e7e74 100644 --- a/keyboards/chlx/merro60/keyboard.json +++ b/keyboards/chlx/merro60/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "D1", "D0", "B0", "B1", "E6", "B2", "B3", "D2", "D7", "B4", "B6", "C6", "C7", "D6"], "rows": ["D4", "D5", "D3", "B5", "F4"] diff --git a/keyboards/chlx/str_merro60/config.h b/keyboards/chlx/str_merro60/config.h index 763f2a4d5cc..2e886ebef5b 100644 --- a/keyboards/chlx/str_merro60/config.h +++ b/keyboards/chlx/str_merro60/config.h @@ -19,10 +19,5 @@ along with this program. If not, see . # define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL + 5 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* VIA related config */ #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/chlx/str_merro60/keyboard.json b/keyboards/chlx/str_merro60/keyboard.json index 15903f2f6cb..cfd0286dd35 100644 --- a/keyboards/chlx/str_merro60/keyboard.json +++ b/keyboards/chlx/str_merro60/keyboard.json @@ -43,6 +43,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_default": "LAYOUT_all", "LAYOUT_hhkb": "LAYOUT_60_hhkb", diff --git a/keyboards/chosfox/cf81/config.h b/keyboards/chosfox/cf81/config.h index 71e783f2bcc..fea36a590c2 100644 --- a/keyboards/chosfox/cf81/config.h +++ b/keyboards/chosfox/cf81/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* SPI Config for spi flash*/ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN B3 diff --git a/keyboards/chosfox/cf81/keyboard.json b/keyboards/chosfox/cf81/keyboard.json index de125801b79..aae2421a034 100644 --- a/keyboards/chosfox/cf81/keyboard.json +++ b/keyboards/chosfox/cf81/keyboard.json @@ -28,6 +28,12 @@ "encoder": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C1","C2","C3","A0","A1","A2","A3","A4","A5","A6","A7","C4","C5","B0","B1","B2"], "rows": ["B15", "C6", "C7", "C8", "C9", "A8"] diff --git a/keyboards/citrus/erdnuss65/config.h b/keyboards/citrus/erdnuss65/config.h index 5e4a88b9e23..b2cc0677486 100644 --- a/keyboards/citrus/erdnuss65/config.h +++ b/keyboards/citrus/erdnuss65/config.h @@ -18,6 +18,3 @@ // The pin connected to the data pin of the LEDs #define RGBLIGHT_LAYERS//允许您定义可打开或关闭的照明层。非常适合显示当前键盘层或大写锁定状态。 #define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF//如果已定义,则即使 RGB 光源处于关闭状态,也会显示照明图层。 - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE//尝试使开关状态与键盘指示灯状态保持一致 \ No newline at end of file diff --git a/keyboards/citrus/erdnuss65/keyboard.json b/keyboards/citrus/erdnuss65/keyboard.json index 4faaa054310..43b075e2c6a 100644 --- a/keyboards/citrus/erdnuss65/keyboard.json +++ b/keyboards/citrus/erdnuss65/keyboard.json @@ -11,6 +11,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B12", "B14", "B15", "B5", "B13", "B3", "B4", "B6", "A0", "A1", "A2", "A3", "A4", "A5", "B11"], "rows": ["B10", "B1", "B0", "A7", "A6"] diff --git a/keyboards/ckeys/handwire_101/config.h b/keyboards/ckeys/handwire_101/config.h index 95780766c57..d8c0c5d99d7 100755 --- a/keyboards/ckeys/handwire_101/config.h +++ b/keyboards/ckeys/handwire_101/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // Audio Click //#define AUDIO_CLICKY diff --git a/keyboards/ckeys/handwire_101/keyboard.json b/keyboards/ckeys/handwire_101/keyboard.json index f8e2b383c23..642d0d8a255 100644 --- a/keyboards/ckeys/handwire_101/keyboard.json +++ b/keyboards/ckeys/handwire_101/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6"], "rows": ["F4", "F5", "F6", "F7"] diff --git a/keyboards/ckeys/nakey/config.h b/keyboards/ckeys/nakey/config.h deleted file mode 100644 index 60f42fbcda9..00000000000 --- a/keyboards/ckeys/nakey/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 James Underwood - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ckeys/nakey/keyboard.json b/keyboards/ckeys/nakey/keyboard.json index 1454858d9d4..85f744217fb 100644 --- a/keyboards/ckeys/nakey/keyboard.json +++ b/keyboards/ckeys/nakey/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3"], "rows": ["F1", "F4", "F5", "F6", "F7"] diff --git a/keyboards/ckeys/obelus/config.h b/keyboards/ckeys/obelus/config.h index 0588edea278..5c7585f5628 100644 --- a/keyboards/ckeys/obelus/config.h +++ b/keyboards/ckeys/obelus/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/ckeys/obelus/keyboard.json b/keyboards/ckeys/obelus/keyboard.json index 969e6a2d495..797bb870b9e 100644 --- a/keyboards/ckeys/obelus/keyboard.json +++ b/keyboards/ckeys/obelus/keyboard.json @@ -18,6 +18,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "B2", "B3"], "rows": ["F4", "F5", "F6", "F7"] diff --git a/keyboards/ckeys/thedora/config.h b/keyboards/ckeys/thedora/config.h index 8eaf7dc2f30..8dc681eccb2 100755 --- a/keyboards/ckeys/thedora/config.h +++ b/keyboards/ckeys/thedora/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define AUDIO_CLICKY #define DAC_SAMPLE_MAX 65535U diff --git a/keyboards/ckeys/thedora/keyboard.json b/keyboards/ckeys/thedora/keyboard.json index 08448e761c4..d287e81a0bc 100644 --- a/keyboards/ckeys/thedora/keyboard.json +++ b/keyboards/ckeys/thedora/keyboard.json @@ -19,6 +19,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "B3", "B2", "B1", "B0"], "rows": ["A2", "A1", "A0", "B8"] diff --git a/keyboards/ckeys/washington/config.h b/keyboards/ckeys/washington/config.h deleted file mode 100644 index 1b4e5a6d87e..00000000000 --- a/keyboards/ckeys/washington/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ckeys/washington/keyboard.json b/keyboards/ckeys/washington/keyboard.json index b6952fe44af..b410e16f930 100644 --- a/keyboards/ckeys/washington/keyboard.json +++ b/keyboards/ckeys/washington/keyboard.json @@ -19,6 +19,12 @@ "nkro": false, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "B1", "B3"], "rows": ["F4", "F5", "F6"] diff --git a/keyboards/clueboard/2x1800/2018/config.h b/keyboards/clueboard/2x1800/2018/config.h index 95cde576688..ac6f646c644 100644 --- a/keyboards/clueboard/2x1800/2018/config.h +++ b/keyboards/clueboard/2x1800/2018/config.h @@ -22,9 +22,3 @@ along with this program. If not, see . #define AUDIO_PIN_ALT B7 #define AUDIO_PIN C4 #define AUDIO_CLICKY - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/clueboard/2x1800/2018/keyboard.json b/keyboards/clueboard/2x1800/2018/keyboard.json index fe0b5210343..1a926c62b9a 100644 --- a/keyboards/clueboard/2x1800/2018/keyboard.json +++ b/keyboards/clueboard/2x1800/2018/keyboard.json @@ -15,6 +15,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "num_lock": "B4", "caps_lock": "B5", diff --git a/keyboards/clueboard/2x1800/2021/config.h b/keyboards/clueboard/2x1800/2021/config.h index eb4fd4bbf68..6cb7bd2c9fd 100644 --- a/keyboards/clueboard/2x1800/2021/config.h +++ b/keyboards/clueboard/2x1800/2021/config.h @@ -23,12 +23,6 @@ along with this program. If not, see . #define AUDIO_PIN C4 #define AUDIO_CLICKY -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // Configure our MAX7219's //#define MAX7219_LOAD B0 //#define MAX7219_CONTROLLERS 4 diff --git a/keyboards/clueboard/2x1800/2021/keyboard.json b/keyboards/clueboard/2x1800/2021/keyboard.json index 8800d05cf2d..b87c9fd755f 100644 --- a/keyboards/clueboard/2x1800/2021/keyboard.json +++ b/keyboards/clueboard/2x1800/2021/keyboard.json @@ -13,6 +13,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "B5", "num_lock": "B4", From 3029a23cfa2c1fcaaad841542d09753512db25ac Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 20 May 2024 21:01:20 +0100 Subject: [PATCH 015/519] Bump JamesIves/github-pages-deploy-action from 4.6.0 to 4.6.1 (#23752) --- updated-dependencies: - dependency-name: JamesIves/github-pages-deploy-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 3f7fbbe7aff..a00e6616a64 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -37,7 +37,7 @@ jobs: qmk --verbose generate-docs - name: Deploy - uses: JamesIves/github-pages-deploy-action@v4.6.0 + uses: JamesIves/github-pages-deploy-action@v4.6.1 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BASE_BRANCH: master From 8ad2e307323415ac0a0198daf79223b3ae90de97 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 20 May 2024 13:07:40 -0700 Subject: [PATCH 016/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: A-C, Part 1 (#23745) Affects: - `atreus` - `cablecardesigns/cypher/rev6` - `caffeinated/serpent65` - `cannonkeys/adelie` - `cannonkeys/aella` - `cannonkeys/an_c` - `cannonkeys/atlas` - `cannonkeys/atlas_alps` - `cannonkeys/balance` - `cannonkeys/brutalv2_65` - `cannonkeys/chimera65` - `cannonkeys/cloudline` - `cannonkeys/crin` - `cannonkeys/db60` - `cannonkeys/devastatingtkl` - `cannonkeys/gentoo` - `cannonkeys/gentoo_hs` - `cannonkeys/hoodrowg` - `cannonkeys/instant60` - `cannonkeys/instant65` - `cannonkeys/iron165` - `cannonkeys/malicious_ergo` - `cannonkeys/obliterated75` - `cannonkeys/onyx` - `cannonkeys/ortho48` - `cannonkeys/ortho60` - `cannonkeys/ortho75` - `cannonkeys/practice60` - `cannonkeys/practice65` - `cannonkeys/rekt1800` - `cannonkeys/ripple` - `cannonkeys/sagittarius` - `cannonkeys/satisfaction75` - `cannonkeys/savage65` - `cannonkeys/tmov2` - `cannonkeys/tsukuyomi` - `cannonkeys/vicious40` - `capsunlocked/cu24` - `capsunlocked/cu65` - `capsunlocked/cu7` - `capsunlocked/cu75` - `capsunlocked/cu80/v1` --- keyboards/atreus/config.h | 38 ------------------ keyboards/atreus/info.json | 6 +++ .../cablecardesigns/cypher/rev6/config.h | 8 ---- .../cablecardesigns/cypher/rev6/keyboard.json | 6 +++ keyboards/caffeinated/serpent65/config.h | 39 ------------------- keyboards/caffeinated/serpent65/keyboard.json | 6 +++ keyboards/cannonkeys/adelie/config.h | 5 --- keyboards/cannonkeys/adelie/keyboard.json | 6 +++ keyboards/cannonkeys/aella/config.h | 39 ------------------- keyboards/cannonkeys/aella/keyboard.json | 6 +++ keyboards/cannonkeys/an_c/config.h | 5 --- keyboards/cannonkeys/an_c/keyboard.json | 6 +++ keyboards/cannonkeys/atlas/config.h | 5 --- keyboards/cannonkeys/atlas/keyboard.json | 6 +++ keyboards/cannonkeys/atlas_alps/config.h | 23 ----------- keyboards/cannonkeys/atlas_alps/keyboard.json | 6 +++ keyboards/cannonkeys/balance/config.h | 39 ------------------- keyboards/cannonkeys/balance/keyboard.json | 4 ++ keyboards/cannonkeys/brutalv2_65/config.h | 39 ------------------- .../cannonkeys/brutalv2_65/keyboard.json | 6 +++ keyboards/cannonkeys/chimera65/config.h | 5 --- keyboards/cannonkeys/chimera65/keyboard.json | 6 +++ keyboards/cannonkeys/cloudline/config.h | 5 --- keyboards/cannonkeys/cloudline/keyboard.json | 6 +++ keyboards/cannonkeys/crin/config.h | 5 --- keyboards/cannonkeys/crin/keyboard.json | 6 +++ keyboards/cannonkeys/db60/config.h | 5 --- keyboards/cannonkeys/db60/info.json | 6 +++ keyboards/cannonkeys/devastatingtkl/config.h | 5 --- .../cannonkeys/devastatingtkl/keyboard.json | 6 +++ keyboards/cannonkeys/gentoo/config.h | 39 ------------------- keyboards/cannonkeys/gentoo/keyboard.json | 6 +++ keyboards/cannonkeys/gentoo_hs/config.h | 39 ------------------- keyboards/cannonkeys/gentoo_hs/keyboard.json | 6 +++ keyboards/cannonkeys/hoodrowg/config.h | 5 --- keyboards/cannonkeys/hoodrowg/keyboard.json | 6 +++ keyboards/cannonkeys/instant60/config.h | 5 --- keyboards/cannonkeys/instant60/keyboard.json | 6 +++ keyboards/cannonkeys/instant65/config.h | 5 --- keyboards/cannonkeys/instant65/keyboard.json | 6 +++ keyboards/cannonkeys/iron165/config.h | 6 --- keyboards/cannonkeys/iron165/keyboard.json | 6 +++ keyboards/cannonkeys/malicious_ergo/config.h | 5 --- .../cannonkeys/malicious_ergo/keyboard.json | 6 +++ keyboards/cannonkeys/obliterated75/config.h | 5 --- .../cannonkeys/obliterated75/keyboard.json | 6 +++ keyboards/cannonkeys/onyx/config.h | 5 --- keyboards/cannonkeys/onyx/keyboard.json | 6 +++ keyboards/cannonkeys/ortho48/config.h | 5 --- keyboards/cannonkeys/ortho48/keyboard.json | 6 +++ keyboards/cannonkeys/ortho60/config.h | 5 --- keyboards/cannonkeys/ortho60/keyboard.json | 6 +++ keyboards/cannonkeys/ortho75/config.h | 5 --- keyboards/cannonkeys/ortho75/keyboard.json | 6 +++ keyboards/cannonkeys/practice60/config.h | 5 --- keyboards/cannonkeys/practice60/keyboard.json | 6 +++ keyboards/cannonkeys/practice65/config.h | 5 --- keyboards/cannonkeys/practice65/keyboard.json | 6 +++ keyboards/cannonkeys/rekt1800/config.h | 5 --- keyboards/cannonkeys/rekt1800/keyboard.json | 6 +++ keyboards/cannonkeys/ripple/config.h | 5 --- keyboards/cannonkeys/ripple/keyboard.json | 6 +++ keyboards/cannonkeys/sagittarius/config.h | 5 --- .../cannonkeys/sagittarius/keyboard.json | 6 +++ keyboards/cannonkeys/satisfaction75/config.h | 5 --- keyboards/cannonkeys/satisfaction75/info.json | 8 +++- keyboards/cannonkeys/savage65/config.h | 5 --- keyboards/cannonkeys/savage65/keyboard.json | 6 +++ keyboards/cannonkeys/tmov2/config.h | 5 --- keyboards/cannonkeys/tmov2/keyboard.json | 6 +++ keyboards/cannonkeys/tsukuyomi/config.h | 5 --- keyboards/cannonkeys/tsukuyomi/keyboard.json | 6 +++ keyboards/cannonkeys/vicious40/config.h | 5 --- keyboards/cannonkeys/vicious40/keyboard.json | 6 +++ keyboards/capsunlocked/cu24/config.h | 38 ------------------ keyboards/capsunlocked/cu24/keyboard.json | 6 +++ keyboards/capsunlocked/cu65/config.h | 39 ------------------- keyboards/capsunlocked/cu65/keyboard.json | 6 +++ keyboards/capsunlocked/cu7/config.h | 22 ----------- keyboards/capsunlocked/cu7/keyboard.json | 6 +++ keyboards/capsunlocked/cu75/config.h | 39 ------------------- keyboards/capsunlocked/cu75/keyboard.json | 6 +++ keyboards/capsunlocked/cu80/v1/config.h | 22 ----------- keyboards/capsunlocked/cu80/v1/keyboard.json | 6 +++ 84 files changed, 251 insertions(+), 605 deletions(-) delete mode 100644 keyboards/atreus/config.h delete mode 100644 keyboards/cablecardesigns/cypher/rev6/config.h delete mode 100644 keyboards/caffeinated/serpent65/config.h delete mode 100644 keyboards/cannonkeys/aella/config.h delete mode 100644 keyboards/cannonkeys/atlas_alps/config.h delete mode 100644 keyboards/cannonkeys/balance/config.h delete mode 100644 keyboards/cannonkeys/brutalv2_65/config.h delete mode 100644 keyboards/cannonkeys/gentoo/config.h delete mode 100644 keyboards/cannonkeys/gentoo_hs/config.h delete mode 100644 keyboards/capsunlocked/cu24/config.h delete mode 100644 keyboards/capsunlocked/cu65/config.h delete mode 100644 keyboards/capsunlocked/cu7/config.h delete mode 100644 keyboards/capsunlocked/cu75/config.h delete mode 100644 keyboards/capsunlocked/cu80/v1/config.h diff --git a/keyboards/atreus/config.h b/keyboards/atreus/config.h deleted file mode 100644 index c30966d9d2f..00000000000 --- a/keyboards/atreus/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/atreus/info.json b/keyboards/atreus/info.json index ff1a77579ca..a0f592105f1 100644 --- a/keyboards/atreus/info.json +++ b/keyboards/atreus/info.json @@ -17,6 +17,12 @@ "pid": "0xA1E5", "device_version": "0.0.8" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/cablecardesigns/cypher/rev6/config.h b/keyboards/cablecardesigns/cypher/rev6/config.h deleted file mode 100644 index 791ecc26877..00000000000 --- a/keyboards/cablecardesigns/cypher/rev6/config.h +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2022 Cable Car Designs (@westfoxtrot) -// SPDX-License-Identifier: GPL-2.0-or-later -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cablecardesigns/cypher/rev6/keyboard.json b/keyboards/cablecardesigns/cypher/rev6/keyboard.json index 57bd4356351..644f2f1aa69 100644 --- a/keyboards/cablecardesigns/cypher/rev6/keyboard.json +++ b/keyboards/cablecardesigns/cypher/rev6/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D7", "B4", "B5", "B6", "B7", "B3", "B2", "B1", "F0"], "rows": ["B0", "F1", "F5", "F6", "F7", "D1", "F4", "D4", "C6", "C7"] diff --git a/keyboards/caffeinated/serpent65/config.h b/keyboards/caffeinated/serpent65/config.h deleted file mode 100644 index bb14ae71b11..00000000000 --- a/keyboards/caffeinated/serpent65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 jrfhoutx - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/caffeinated/serpent65/keyboard.json b/keyboards/caffeinated/serpent65/keyboard.json index f8c7a90ce9f..add48547204 100644 --- a/keyboards/caffeinated/serpent65/keyboard.json +++ b/keyboards/caffeinated/serpent65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A1", "A2", "A3", "A4", "B14", "B15", "A8", "A9"], "rows": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "B13", "B12"] diff --git a/keyboards/cannonkeys/adelie/config.h b/keyboards/cannonkeys/adelie/config.h index 9027c44df53..9d031073f8d 100644 --- a/keyboards/cannonkeys/adelie/config.h +++ b/keyboards/cannonkeys/adelie/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/cannonkeys/adelie/keyboard.json b/keyboards/cannonkeys/adelie/keyboard.json index f4d46b35d16..6b36af3082b 100644 --- a/keyboards/cannonkeys/adelie/keyboard.json +++ b/keyboards/cannonkeys/adelie/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "B2"], "rows": ["F4", "F1", "B1", "B0"] diff --git a/keyboards/cannonkeys/aella/config.h b/keyboards/cannonkeys/aella/config.h deleted file mode 100644 index 4b007cf387e..00000000000 --- a/keyboards/cannonkeys/aella/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/cannonkeys/aella/keyboard.json b/keyboards/cannonkeys/aella/keyboard.json index 54679d57921..b29a9e546de 100644 --- a/keyboards/cannonkeys/aella/keyboard.json +++ b/keyboards/cannonkeys/aella/keyboard.json @@ -23,6 +23,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/cannonkeys/an_c/config.h b/keyboards/cannonkeys/an_c/config.h index f3d6237a78d..b8c68bc65d4 100644 --- a/keyboards/cannonkeys/an_c/config.h +++ b/keyboards/cannonkeys/an_c/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/an_c/keyboard.json b/keyboards/cannonkeys/an_c/keyboard.json index e1e18f51670..ea127998710 100644 --- a/keyboards/cannonkeys/an_c/keyboard.json +++ b/keyboards/cannonkeys/an_c/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_ansi", "60_tsangan_hhkb"], "layouts": { "LAYOUT_60_ansi": { diff --git a/keyboards/cannonkeys/atlas/config.h b/keyboards/cannonkeys/atlas/config.h index 38f684a8617..70a2d7fc634 100644 --- a/keyboards/cannonkeys/atlas/config.h +++ b/keyboards/cannonkeys/atlas/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/atlas/keyboard.json b/keyboards/cannonkeys/atlas/keyboard.json index 86eaec2d519..bdb7347af5e 100644 --- a/keyboards/cannonkeys/atlas/keyboard.json +++ b/keyboards/cannonkeys/atlas/keyboard.json @@ -36,6 +36,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A2", "A1", "A0", "F1", "F0", "C15", "C14", "C13", "B9", "A15", "A10", "A9"], "rows": ["A8", "B14", "B12", "B4", "B3"] diff --git a/keyboards/cannonkeys/atlas_alps/config.h b/keyboards/cannonkeys/atlas_alps/config.h deleted file mode 100644 index 876e59daa07..00000000000 --- a/keyboards/cannonkeys/atlas_alps/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Nathan Spears - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/cannonkeys/atlas_alps/keyboard.json b/keyboards/cannonkeys/atlas_alps/keyboard.json index 6f8c1305c38..39bfa968b9f 100644 --- a/keyboards/cannonkeys/atlas_alps/keyboard.json +++ b/keyboards/cannonkeys/atlas_alps/keyboard.json @@ -39,6 +39,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "C6", "D2", "E6", "C7", "B3", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["B5", "B4", "D1", "D7", "D6"] diff --git a/keyboards/cannonkeys/balance/config.h b/keyboards/cannonkeys/balance/config.h deleted file mode 100644 index 4b007cf387e..00000000000 --- a/keyboards/cannonkeys/balance/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/cannonkeys/balance/keyboard.json b/keyboards/cannonkeys/balance/keyboard.json index c7ecea37f8e..5aef1f7d5ba 100644 --- a/keyboards/cannonkeys/balance/keyboard.json +++ b/keyboards/cannonkeys/balance/keyboard.json @@ -19,6 +19,10 @@ ] }, "qmk": { + "locking": { + "enabled": true, + "resync": true + }, "tap_keycode_delay": 25 }, "indicators": { diff --git a/keyboards/cannonkeys/brutalv2_65/config.h b/keyboards/cannonkeys/brutalv2_65/config.h deleted file mode 100644 index ae9c049bc11..00000000000 --- a/keyboards/cannonkeys/brutalv2_65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2022 Andrew Kannan - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/cannonkeys/brutalv2_65/keyboard.json b/keyboards/cannonkeys/brutalv2_65/keyboard.json index 4cff1a7571f..496ea2066fa 100644 --- a/keyboards/cannonkeys/brutalv2_65/keyboard.json +++ b/keyboards/cannonkeys/brutalv2_65/keyboard.json @@ -27,6 +27,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "65_ansi_blocker", "65_ansi_blocker_split_bs", diff --git a/keyboards/cannonkeys/chimera65/config.h b/keyboards/cannonkeys/chimera65/config.h index a47b76953a2..974ecf1c6c0 100644 --- a/keyboards/cannonkeys/chimera65/config.h +++ b/keyboards/cannonkeys/chimera65/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/cannonkeys/chimera65/keyboard.json b/keyboards/cannonkeys/chimera65/keyboard.json index 7cf30d2ea7b..d9b33085021 100644 --- a/keyboards/cannonkeys/chimera65/keyboard.json +++ b/keyboards/cannonkeys/chimera65/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B2", "B1", "A5", "A4", "A3", "A2", "A1", "F0", "C15", "C14", "A9", "A8", "A10", "B3"], "rows": ["A13", "A14", "A15", "C13", "B8"] diff --git a/keyboards/cannonkeys/cloudline/config.h b/keyboards/cannonkeys/cloudline/config.h index 41e58784b48..2f601da00fb 100644 --- a/keyboards/cannonkeys/cloudline/config.h +++ b/keyboards/cannonkeys/cloudline/config.h @@ -7,11 +7,6 @@ #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/cloudline/keyboard.json b/keyboards/cannonkeys/cloudline/keyboard.json index ac1bca976b1..f0388cf8946 100644 --- a/keyboards/cannonkeys/cloudline/keyboard.json +++ b/keyboards/cannonkeys/cloudline/keyboard.json @@ -54,6 +54,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "tkl_f13_ansi_tsangan", "tkl_f13_ansi_tsangan_split_bs_rshift", diff --git a/keyboards/cannonkeys/crin/config.h b/keyboards/cannonkeys/crin/config.h index d6e974b21d9..9617128befe 100644 --- a/keyboards/cannonkeys/crin/config.h +++ b/keyboards/cannonkeys/crin/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/cannonkeys/crin/keyboard.json b/keyboards/cannonkeys/crin/keyboard.json index f61d0e12e5b..d5f60a1c216 100644 --- a/keyboards/cannonkeys/crin/keyboard.json +++ b/keyboards/cannonkeys/crin/keyboard.json @@ -33,6 +33,12 @@ "nkro": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_all": "LAYOUT" }, diff --git a/keyboards/cannonkeys/db60/config.h b/keyboards/cannonkeys/db60/config.h index f3d6237a78d..b8c68bc65d4 100644 --- a/keyboards/cannonkeys/db60/config.h +++ b/keyboards/cannonkeys/db60/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/db60/info.json b/keyboards/cannonkeys/db60/info.json index 0c437ed921f..b369e628357 100644 --- a/keyboards/cannonkeys/db60/info.json +++ b/keyboards/cannonkeys/db60/info.json @@ -46,5 +46,11 @@ "nkro": true, "backlight": true, "rgblight": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/cannonkeys/devastatingtkl/config.h b/keyboards/cannonkeys/devastatingtkl/config.h index f3d6237a78d..b8c68bc65d4 100644 --- a/keyboards/cannonkeys/devastatingtkl/config.h +++ b/keyboards/cannonkeys/devastatingtkl/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/devastatingtkl/keyboard.json b/keyboards/cannonkeys/devastatingtkl/keyboard.json index 7acea3fe8b1..b4e8281b889 100644 --- a/keyboards/cannonkeys/devastatingtkl/keyboard.json +++ b/keyboards/cannonkeys/devastatingtkl/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "tkl_f13_ansi", "tkl_f13_ansi_split_bs_rshift", diff --git a/keyboards/cannonkeys/gentoo/config.h b/keyboards/cannonkeys/gentoo/config.h deleted file mode 100644 index ae9c049bc11..00000000000 --- a/keyboards/cannonkeys/gentoo/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2022 Andrew Kannan - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/cannonkeys/gentoo/keyboard.json b/keyboards/cannonkeys/gentoo/keyboard.json index 3d8a4acac93..7aa76d5efc2 100644 --- a/keyboards/cannonkeys/gentoo/keyboard.json +++ b/keyboards/cannonkeys/gentoo/keyboard.json @@ -27,6 +27,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "65_ansi", "65_ansi_split_bs", diff --git a/keyboards/cannonkeys/gentoo_hs/config.h b/keyboards/cannonkeys/gentoo_hs/config.h deleted file mode 100644 index 4b007cf387e..00000000000 --- a/keyboards/cannonkeys/gentoo_hs/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/cannonkeys/gentoo_hs/keyboard.json b/keyboards/cannonkeys/gentoo_hs/keyboard.json index fa97ae58772..bef60fb5d7e 100644 --- a/keyboards/cannonkeys/gentoo_hs/keyboard.json +++ b/keyboards/cannonkeys/gentoo_hs/keyboard.json @@ -27,6 +27,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_default": "LAYOUT_65_ansi_rwkl" }, diff --git a/keyboards/cannonkeys/hoodrowg/config.h b/keyboards/cannonkeys/hoodrowg/config.h index dabdb5ee30e..47aff1530bb 100644 --- a/keyboards/cannonkeys/hoodrowg/config.h +++ b/keyboards/cannonkeys/hoodrowg/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/cannonkeys/hoodrowg/keyboard.json b/keyboards/cannonkeys/hoodrowg/keyboard.json index 231b67e244f..971779411d4 100644 --- a/keyboards/cannonkeys/hoodrowg/keyboard.json +++ b/keyboards/cannonkeys/hoodrowg/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "D7", "F5", "F6", "F7", "F4", "D2", "D0"], "rows": ["E6", "B7", "B0", "B1", "F1", "F0", "C6", "C7", "D4", "D6", "D5", "D3"] diff --git a/keyboards/cannonkeys/instant60/config.h b/keyboards/cannonkeys/instant60/config.h index f3d6237a78d..b8c68bc65d4 100644 --- a/keyboards/cannonkeys/instant60/config.h +++ b/keyboards/cannonkeys/instant60/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/instant60/keyboard.json b/keyboards/cannonkeys/instant60/keyboard.json index bca90e50157..3261a82f28b 100644 --- a/keyboards/cannonkeys/instant60/keyboard.json +++ b/keyboards/cannonkeys/instant60/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_ansi", "60_tsangan_hhkb"], "layouts": { "LAYOUT_60_ansi": { diff --git a/keyboards/cannonkeys/instant65/config.h b/keyboards/cannonkeys/instant65/config.h index 0b1e0948b31..55989a7676d 100644 --- a/keyboards/cannonkeys/instant65/config.h +++ b/keyboards/cannonkeys/instant65/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/instant65/keyboard.json b/keyboards/cannonkeys/instant65/keyboard.json index 63e84be0aa4..92af662b6e2 100644 --- a/keyboards/cannonkeys/instant65/keyboard.json +++ b/keyboards/cannonkeys/instant65/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_default": { "layout": [ diff --git a/keyboards/cannonkeys/iron165/config.h b/keyboards/cannonkeys/iron165/config.h index eb890c1cbf6..974ecf1c6c0 100644 --- a/keyboards/cannonkeys/iron165/config.h +++ b/keyboards/cannonkeys/iron165/config.h @@ -21,12 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/cannonkeys/iron165/keyboard.json b/keyboards/cannonkeys/iron165/keyboard.json index bc0c6af503b..e4569a7bd82 100644 --- a/keyboards/cannonkeys/iron165/keyboard.json +++ b/keyboards/cannonkeys/iron165/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A5", "B10", "A3", "A2", "B0", "A8", "C13", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"], "rows": ["B12", "B13", "B14", "B15", "A1"] diff --git a/keyboards/cannonkeys/malicious_ergo/config.h b/keyboards/cannonkeys/malicious_ergo/config.h index f2314b6077d..8dce4c5c2e3 100644 --- a/keyboards/cannonkeys/malicious_ergo/config.h +++ b/keyboards/cannonkeys/malicious_ergo/config.h @@ -23,11 +23,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/malicious_ergo/keyboard.json b/keyboards/cannonkeys/malicious_ergo/keyboard.json index 3897aea08b9..e7bec98200f 100644 --- a/keyboards/cannonkeys/malicious_ergo/keyboard.json +++ b/keyboards/cannonkeys/malicious_ergo/keyboard.json @@ -55,6 +55,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_default": { "layout": [ diff --git a/keyboards/cannonkeys/obliterated75/config.h b/keyboards/cannonkeys/obliterated75/config.h index 0b1e0948b31..55989a7676d 100644 --- a/keyboards/cannonkeys/obliterated75/config.h +++ b/keyboards/cannonkeys/obliterated75/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/obliterated75/keyboard.json b/keyboards/cannonkeys/obliterated75/keyboard.json index 19227c51507..2b57f9b4364 100644 --- a/keyboards/cannonkeys/obliterated75/keyboard.json +++ b/keyboards/cannonkeys/obliterated75/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/cannonkeys/onyx/config.h b/keyboards/cannonkeys/onyx/config.h index a47b76953a2..974ecf1c6c0 100644 --- a/keyboards/cannonkeys/onyx/config.h +++ b/keyboards/cannonkeys/onyx/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/cannonkeys/onyx/keyboard.json b/keyboards/cannonkeys/onyx/keyboard.json index 5ae7039049a..463ad72e239 100644 --- a/keyboards/cannonkeys/onyx/keyboard.json +++ b/keyboards/cannonkeys/onyx/keyboard.json @@ -29,6 +29,12 @@ "nkro": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/cannonkeys/ortho48/config.h b/keyboards/cannonkeys/ortho48/config.h index 32412b1d544..63929b7aea6 100644 --- a/keyboards/cannonkeys/ortho48/config.h +++ b/keyboards/cannonkeys/ortho48/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_DRIVER PWMD1 #define BACKLIGHT_PWM_CHANNEL 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 /* diff --git a/keyboards/cannonkeys/ortho48/keyboard.json b/keyboards/cannonkeys/ortho48/keyboard.json index facd47633d0..2e045c183ec 100644 --- a/keyboards/cannonkeys/ortho48/keyboard.json +++ b/keyboards/cannonkeys/ortho48/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B1", "B0", "A7", "A6", "A5", "B14", "A15", "A0", "C15", "C14"], "rows": ["B12", "C13", "A2", "A1"] diff --git a/keyboards/cannonkeys/ortho60/config.h b/keyboards/cannonkeys/ortho60/config.h index 32412b1d544..63929b7aea6 100644 --- a/keyboards/cannonkeys/ortho60/config.h +++ b/keyboards/cannonkeys/ortho60/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_DRIVER PWMD1 #define BACKLIGHT_PWM_CHANNEL 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 /* diff --git a/keyboards/cannonkeys/ortho60/keyboard.json b/keyboards/cannonkeys/ortho60/keyboard.json index d8eea8a6ae9..2e8ad772979 100644 --- a/keyboards/cannonkeys/ortho60/keyboard.json +++ b/keyboards/cannonkeys/ortho60/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0"], "rows": ["B3", "B4", "B5", "B6", "B7"] diff --git a/keyboards/cannonkeys/ortho75/config.h b/keyboards/cannonkeys/ortho75/config.h index 32412b1d544..63929b7aea6 100644 --- a/keyboards/cannonkeys/ortho75/config.h +++ b/keyboards/cannonkeys/ortho75/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_DRIVER PWMD1 #define BACKLIGHT_PWM_CHANNEL 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 /* diff --git a/keyboards/cannonkeys/ortho75/keyboard.json b/keyboards/cannonkeys/ortho75/keyboard.json index 49595685ef3..af09fd47a70 100644 --- a/keyboards/cannonkeys/ortho75/keyboard.json +++ b/keyboards/cannonkeys/ortho75/keyboard.json @@ -20,6 +20,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B1", "B0", "A7", "A6", "A5", "B14", "A15", "A0", "C15", "C14", "B7", "B6", "B5"], "rows": ["B12", "C13", "A2", "A1", "A3"] diff --git a/keyboards/cannonkeys/practice60/config.h b/keyboards/cannonkeys/practice60/config.h index 32412b1d544..63929b7aea6 100644 --- a/keyboards/cannonkeys/practice60/config.h +++ b/keyboards/cannonkeys/practice60/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_DRIVER PWMD1 #define BACKLIGHT_PWM_CHANNEL 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 /* diff --git a/keyboards/cannonkeys/practice60/keyboard.json b/keyboards/cannonkeys/practice60/keyboard.json index ff8cf00cb04..ad8cde6d6b3 100644 --- a/keyboards/cannonkeys/practice60/keyboard.json +++ b/keyboards/cannonkeys/practice60/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "C15", "C14"], "rows": ["B3", "B4", "B5", "B6", "B7"] diff --git a/keyboards/cannonkeys/practice65/config.h b/keyboards/cannonkeys/practice65/config.h index 32412b1d544..63929b7aea6 100644 --- a/keyboards/cannonkeys/practice65/config.h +++ b/keyboards/cannonkeys/practice65/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_DRIVER PWMD1 #define BACKLIGHT_PWM_CHANNEL 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 /* diff --git a/keyboards/cannonkeys/practice65/keyboard.json b/keyboards/cannonkeys/practice65/keyboard.json index 36fb46dd518..ce0a1b12cfe 100644 --- a/keyboards/cannonkeys/practice65/keyboard.json +++ b/keyboards/cannonkeys/practice65/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B8", "B0", "A0", "B5", "B10", "B9", "A6", "B12", "A7", "A5", "A4", "A3", "A2", "A1", "B13", "B14"], "rows": ["B4", "B11", "B1", "B7", "B6"] diff --git a/keyboards/cannonkeys/rekt1800/config.h b/keyboards/cannonkeys/rekt1800/config.h index a47b76953a2..974ecf1c6c0 100644 --- a/keyboards/cannonkeys/rekt1800/config.h +++ b/keyboards/cannonkeys/rekt1800/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/cannonkeys/rekt1800/keyboard.json b/keyboards/cannonkeys/rekt1800/keyboard.json index f9a58afa020..8172af1184a 100644 --- a/keyboards/cannonkeys/rekt1800/keyboard.json +++ b/keyboards/cannonkeys/rekt1800/keyboard.json @@ -29,6 +29,12 @@ "nkro": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/cannonkeys/ripple/config.h b/keyboards/cannonkeys/ripple/config.h index d95e23cfaad..8cffc2447d8 100644 --- a/keyboards/cannonkeys/ripple/config.h +++ b/keyboards/cannonkeys/ripple/config.h @@ -7,11 +7,6 @@ #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/ripple/keyboard.json b/keyboards/cannonkeys/ripple/keyboard.json index e416ad44a36..3dc11719a14 100644 --- a/keyboards/cannonkeys/ripple/keyboard.json +++ b/keyboards/cannonkeys/ripple/keyboard.json @@ -23,6 +23,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "ws2812": { "pin": "B15", "driver": "spi" diff --git a/keyboards/cannonkeys/sagittarius/config.h b/keyboards/cannonkeys/sagittarius/config.h index f3d6237a78d..b8c68bc65d4 100644 --- a/keyboards/cannonkeys/sagittarius/config.h +++ b/keyboards/cannonkeys/sagittarius/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/sagittarius/keyboard.json b/keyboards/cannonkeys/sagittarius/keyboard.json index 876c68e82e2..8f83a42984b 100644 --- a/keyboards/cannonkeys/sagittarius/keyboard.json +++ b/keyboards/cannonkeys/sagittarius/keyboard.json @@ -54,6 +54,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_default": { "layout": [ diff --git a/keyboards/cannonkeys/satisfaction75/config.h b/keyboards/cannonkeys/satisfaction75/config.h index 1ca72c9c7c5..969206b19a3 100644 --- a/keyboards/cannonkeys/satisfaction75/config.h +++ b/keyboards/cannonkeys/satisfaction75/config.h @@ -25,11 +25,6 @@ #define I2C1_TIMINGR_SCLH 0x03U #define I2C1_TIMINGR_SCLL 0x09U -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // configure oled driver for the 128x32 oled #define OLED_UPDATE_INTERVAL 66 // ~15fps diff --git a/keyboards/cannonkeys/satisfaction75/info.json b/keyboards/cannonkeys/satisfaction75/info.json index a06faccd230..96aeca80ee3 100644 --- a/keyboards/cannonkeys/satisfaction75/info.json +++ b/keyboards/cannonkeys/satisfaction75/info.json @@ -19,9 +19,15 @@ "nkro": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "processor": "STM32F072", "url": "https://cannonkeys.com", "usb": { "vid": "0xCA04" } -} \ No newline at end of file +} diff --git a/keyboards/cannonkeys/savage65/config.h b/keyboards/cannonkeys/savage65/config.h index 0b1e0948b31..55989a7676d 100644 --- a/keyboards/cannonkeys/savage65/config.h +++ b/keyboards/cannonkeys/savage65/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/savage65/keyboard.json b/keyboards/cannonkeys/savage65/keyboard.json index 9d7d454e550..bc9c1d77e50 100644 --- a/keyboards/cannonkeys/savage65/keyboard.json +++ b/keyboards/cannonkeys/savage65/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["65_ansi_blocker", "65_ansi_blocker_split_bs", "65_ansi_blocker_tsangan", "65_iso_blocker"], "layouts": { "LAYOUT_default": { diff --git a/keyboards/cannonkeys/tmov2/config.h b/keyboards/cannonkeys/tmov2/config.h index f3d6237a78d..b8c68bc65d4 100644 --- a/keyboards/cannonkeys/tmov2/config.h +++ b/keyboards/cannonkeys/tmov2/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/tmov2/keyboard.json b/keyboards/cannonkeys/tmov2/keyboard.json index acc5093221d..859607813d2 100644 --- a/keyboards/cannonkeys/tmov2/keyboard.json +++ b/keyboards/cannonkeys/tmov2/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_default": { "layout": [ diff --git a/keyboards/cannonkeys/tsukuyomi/config.h b/keyboards/cannonkeys/tsukuyomi/config.h index 0b1e0948b31..55989a7676d 100644 --- a/keyboards/cannonkeys/tsukuyomi/config.h +++ b/keyboards/cannonkeys/tsukuyomi/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/cannonkeys/tsukuyomi/keyboard.json b/keyboards/cannonkeys/tsukuyomi/keyboard.json index a874d3d2935..48057a82e1b 100644 --- a/keyboards/cannonkeys/tsukuyomi/keyboard.json +++ b/keyboards/cannonkeys/tsukuyomi/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_default": { "layout": [ diff --git a/keyboards/cannonkeys/vicious40/config.h b/keyboards/cannonkeys/vicious40/config.h index a47b76953a2..974ecf1c6c0 100644 --- a/keyboards/cannonkeys/vicious40/config.h +++ b/keyboards/cannonkeys/vicious40/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/cannonkeys/vicious40/keyboard.json b/keyboards/cannonkeys/vicious40/keyboard.json index b2d68545f0b..184093fd23b 100644 --- a/keyboards/cannonkeys/vicious40/keyboard.json +++ b/keyboards/cannonkeys/vicious40/keyboard.json @@ -29,6 +29,12 @@ "nkro": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_default": { "layout": [ diff --git a/keyboards/capsunlocked/cu24/config.h b/keyboards/capsunlocked/cu24/config.h deleted file mode 100644 index 8ec34286fc3..00000000000 --- a/keyboards/capsunlocked/cu24/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2018 Yiancar - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/capsunlocked/cu24/keyboard.json b/keyboards/capsunlocked/cu24/keyboard.json index c3c262734d9..ceec64611c7 100644 --- a/keyboards/capsunlocked/cu24/keyboard.json +++ b/keyboards/capsunlocked/cu24/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "D0", "D1"], "rows": ["E6", "F5", "B4", "B6", "C6", "C7"] diff --git a/keyboards/capsunlocked/cu65/config.h b/keyboards/capsunlocked/cu65/config.h deleted file mode 100644 index cf38d9dcc64..00000000000 --- a/keyboards/capsunlocked/cu65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 CapsUnlocked - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/capsunlocked/cu65/keyboard.json b/keyboards/capsunlocked/cu65/keyboard.json index eabb7694688..80f11496611 100644 --- a/keyboards/capsunlocked/cu65/keyboard.json +++ b/keyboards/capsunlocked/cu65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D7", "D4", "B4", "B5", "B6", "C6", "D5", "C7", "F0", "E6", "B0", "B1", "B7", "B3", "B2"], "rows": ["F1", "F4", "F5", "F6", "D3"] diff --git a/keyboards/capsunlocked/cu7/config.h b/keyboards/capsunlocked/cu7/config.h deleted file mode 100644 index b7767c19ec4..00000000000 --- a/keyboards/capsunlocked/cu7/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2021 CapsUnlocked - -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 . -*/ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/capsunlocked/cu7/keyboard.json b/keyboards/capsunlocked/cu7/keyboard.json index 6f96c00e50b..46f8b34213f 100644 --- a/keyboards/capsunlocked/cu7/keyboard.json +++ b/keyboards/capsunlocked/cu7/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F7", "F4"], "rows": ["D7", "F0", "F6"] diff --git a/keyboards/capsunlocked/cu75/config.h b/keyboards/capsunlocked/cu75/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/capsunlocked/cu75/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/capsunlocked/cu75/keyboard.json b/keyboards/capsunlocked/cu75/keyboard.json index 25e3ca049f1..f7a8356bccf 100644 --- a/keyboards/capsunlocked/cu75/keyboard.json +++ b/keyboards/capsunlocked/cu75/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x6062", "device_version": "0.0.1" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "B1", "B0", "F0"], "rows": ["F1", "B7", "B3", "D2", "D3", "B2"] diff --git a/keyboards/capsunlocked/cu80/v1/config.h b/keyboards/capsunlocked/cu80/v1/config.h deleted file mode 100644 index 991c996ea80..00000000000 --- a/keyboards/capsunlocked/cu80/v1/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2020 Andy Holland - -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 . -*/ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/capsunlocked/cu80/v1/keyboard.json b/keyboards/capsunlocked/cu80/v1/keyboard.json index a5379a45cc9..e3283d99cb7 100644 --- a/keyboards/capsunlocked/cu80/v1/keyboard.json +++ b/keyboards/capsunlocked/cu80/v1/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F4", "F1", "F0", "C7", "C6", "B6", "B0", "E6", "B7", "B3", "B2", "D2", "D3", "D5", "D4"], "rows": ["B1", "B5", "B4", "F7", "D7", "D6"] From a850f7d69509a99ef46dd2790c2e55171db16e7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20B=C3=BCchler?= Date: Tue, 21 May 2024 01:36:48 +0200 Subject: [PATCH 017/519] Fix PS/2 Trackpoint mouse clicks (#22265) (#23694) --- drivers/ps2/ps2_mouse.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/ps2/ps2_mouse.c b/drivers/ps2/ps2_mouse.c index 88c9bdcebef..ef1a0e26f9e 100644 --- a/drivers/ps2/ps2_mouse.c +++ b/drivers/ps2/ps2_mouse.c @@ -88,6 +88,8 @@ void ps2_mouse_task(void) { # endif } else { if (debug_mouse) print("ps2_mouse: fail to get mouse packet\n"); + /* return here to avoid updating the mouse button state */ + return; } #else if (pbuf_has_data()) { @@ -99,6 +101,8 @@ void ps2_mouse_task(void) { # endif } else { if (debug_mouse) print("ps2_mouse: fail to get mouse packet\n"); + /* return here to avoid updating the mouse button state */ + return; } #endif From bf918a8f6ccb4b1c56e7bac2bf632bd5ee264f1f Mon Sep 17 00:00:00 2001 From: VertorWang <1479115496@qq.com> Date: Tue, 21 May 2024 07:48:26 +0800 Subject: [PATCH 018/519] Add moky67 keyboard (#23118) --- keyboards/moky/moky67/config.h | 18 ++ keyboards/moky/moky67/halconf.h | 10 + keyboards/moky/moky67/info.json | 233 ++++++++++++++++++ .../moky/moky67/keymaps/default/keymap.c | 50 ++++ .../moky/moky67/keymaps/default/rules.mk | 1 + keyboards/moky/moky67/keymaps/via/keymap.c | 50 ++++ keyboards/moky/moky67/keymaps/via/rules.mk | 2 + keyboards/moky/moky67/mcuconf.h | 29 +++ keyboards/moky/moky67/readme.md | 26 ++ keyboards/moky/moky67/rules.mk | 1 + 10 files changed, 420 insertions(+) create mode 100644 keyboards/moky/moky67/config.h create mode 100644 keyboards/moky/moky67/halconf.h create mode 100644 keyboards/moky/moky67/info.json create mode 100644 keyboards/moky/moky67/keymaps/default/keymap.c create mode 100644 keyboards/moky/moky67/keymaps/default/rules.mk create mode 100644 keyboards/moky/moky67/keymaps/via/keymap.c create mode 100644 keyboards/moky/moky67/keymaps/via/rules.mk create mode 100644 keyboards/moky/moky67/mcuconf.h create mode 100644 keyboards/moky/moky67/readme.md create mode 100644 keyboards/moky/moky67/rules.mk diff --git a/keyboards/moky/moky67/config.h b/keyboards/moky/moky67/config.h new file mode 100644 index 00000000000..7b247bf9700 --- /dev/null +++ b/keyboards/moky/moky67/config.h @@ -0,0 +1,18 @@ +// Copyright 2023 VertorWang (@itarze) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +/* SPI */ +#define SPI_DRIVER SPIDQ +#define SPI_SCK_PIN B3 +#define SPI_MOSI_PIN B5 +#define SPI_MISO_PIN B4 + +/* Flash */ +#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12 + +/* RGB Driver */ +#define WS2812_SPI_DRIVER SPIDM2 +#define WS2812_SPI_MOSI_PAL_MODE 0 +#define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/moky/moky67/halconf.h b/keyboards/moky/moky67/halconf.h new file mode 100644 index 00000000000..0a59a1fcb8e --- /dev/null +++ b/keyboards/moky/moky67/halconf.h @@ -0,0 +1,10 @@ +// Copyright 2023 VertorWang (@itarze) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define HAL_USE_SPI TRUE +#define SPI_USE_WAIT TRUE +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD + +#include_next diff --git a/keyboards/moky/moky67/info.json b/keyboards/moky/moky67/info.json new file mode 100644 index 00000000000..8737790b69e --- /dev/null +++ b/keyboards/moky/moky67/info.json @@ -0,0 +1,233 @@ +{ + "manufacturer": "moky", + "keyboard_name": "moky67", + "url": "", + "processor": "WB32FQ95", + "bootloader": "wb32-dfu", + "usb": { + "device_version": "1.0.0", + "vid": "0xBB4F", + "pid": "0x0002", + "suspend_wakeup_delay": 1000 + }, + "diode_direction": "ROW2COL", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true, + "encoder": true + }, + "matrix_pins": { + "cols": ["C0", "C1", "C2", "C3", "A6", "B10", "B11", "B12", "B13", "B14", "A10", "C6", "C7", "C8", "C9", "A8", "C4"], + "rows": ["A1", "A2", "A3", "A4", "C13"] + }, + "eeprom": { + "wear_leveling": { + "backing_size": 4096, + "driver": "spi_flash" + } + }, + "encoder": { + "rotary": [ + {"pin_a": "B6", "pin_b": "B7"} + ] + }, + "ws2812": { + "driver": "spi", + "pin": "B15" + }, + "rgb_matrix": { + "driver": "ws2812", + "max_brightness": 100, + "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, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "rainbow_moving_chevron": 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_fractal": true, + "pixel_flow": true, + "pixel_rain": 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 + }, + "layout": [ + {"flags": 4, "matrix": [2, 16], "x": 210 , "y": 32 }, + {"flags": 4, "matrix": [1, 16], "x": 210 , "y": 18 }, + {"flags": 4, "matrix": [0, 13], "x": 183 , "y": 4 }, + {"flags": 4, "matrix": [0, 12], "x": 163 , "y": 4 }, + {"flags": 4, "matrix": [0, 11], "x": 149 , "y": 4 }, + {"flags": 4, "matrix": [0, 10], "x": 136 , "y": 4 }, + {"flags": 4, "matrix": [0, 9], "x": 122 , "y": 4 }, + {"flags": 4, "matrix": [0, 8], "x": 109 , "y": 4 }, + {"flags": 4, "matrix": [0, 7], "x": 95 , "y": 4 }, + {"flags": 4, "matrix": [0, 6], "x": 81 , "y": 4 }, + {"flags": 4, "matrix": [0, 5], "x": 68 , "y": 4 }, + {"flags": 4, "matrix": [0, 4], "x": 54 , "y": 4 }, + {"flags": 4, "matrix": [0, 3], "x": 41 , "y": 4 }, + {"flags": 4, "matrix": [0, 2], "x": 27 , "y": 4 }, + {"flags": 4, "matrix": [0, 1], "x": 14 , "y": 4 }, + {"flags": 4, "matrix": [0, 0], "x": 0 , "y": 4 }, + {"flags": 4, "matrix": [1, 0], "x": 3 , "y": 18 }, + {"flags": 4, "matrix": [1, 1], "x": 20 , "y": 18 }, + {"flags": 4, "matrix": [1, 2], "x": 34 , "y": 18 }, + {"flags": 4, "matrix": [1, 3], "x": 48 , "y": 18 }, + {"flags": 4, "matrix": [1, 4], "x": 61 , "y": 18 }, + {"flags": 4, "matrix": [1, 5], "x": 75 , "y": 18 }, + {"flags": 4, "matrix": [1, 6], "x": 88 , "y": 18 }, + {"flags": 4, "matrix": [1, 7], "x": 102 , "y": 18 }, + {"flags": 4, "matrix": [1, 8], "x": 115 , "y": 18 }, + {"flags": 4, "matrix": [1, 9], "x": 129 , "y": 18 }, + {"flags": 4, "matrix": [1, 10], "x": 143 , "y": 18 }, + {"flags": 4, "matrix": [1, 11], "x": 156 , "y": 18 }, + {"flags": 4, "matrix": [1, 12], "x": 170 , "y": 18 }, + {"flags": 4, "matrix": [1, 13], "x": 187 , "y": 18 }, + {"flags": 4, "matrix": [2, 13], "x": 182 , "y": 32 }, + {"flags": 4, "matrix": [2, 11], "x": 160 , "y": 32 }, + {"flags": 4, "matrix": [2, 10], "x": 146 , "y": 32 }, + {"flags": 4, "matrix": [2, 9], "x": 132 , "y": 32 }, + {"flags": 4, "matrix": [2, 8], "x": 119 , "y": 32 }, + {"flags": 4, "matrix": [2, 7], "x": 105 , "y": 32 }, + {"flags": 4, "matrix": [2, 6], "x": 92 , "y": 32 }, + {"flags": 4, "matrix": [2, 5], "x": 78 , "y": 32 }, + {"flags": 4, "matrix": [2, 4], "x": 64 , "y": 32 }, + {"flags": 4, "matrix": [2, 3], "x": 51 , "y": 32 }, + {"flags": 4, "matrix": [2, 2], "x": 37 , "y": 32 }, + {"flags": 4, "matrix": [2, 1], "x": 24 , "y": 32 }, + {"flags": 4, "matrix": [2, 0], "x": 5 , "y": 32 }, + {"flags": 4, "matrix": [3, 0], "x": 8 , "y": 46 }, + {"flags": 4, "matrix": [3, 1], "x": 31 , "y": 46 }, + {"flags": 4, "matrix": [3, 2], "x": 44 , "y": 46 }, + {"flags": 4, "matrix": [3, 3], "x": 58 , "y": 46 }, + {"flags": 4, "matrix": [3, 4], "x": 71 , "y": 46 }, + {"flags": 4, "matrix": [3, 5], "x": 85 , "y": 46 }, + {"flags": 4, "matrix": [3, 6], "x": 98 , "y": 46 }, + {"flags": 4, "matrix": [3, 7], "x": 112 , "y": 46 }, + {"flags": 4, "matrix": [3, 8], "x": 126 , "y": 46 }, + {"flags": 4, "matrix": [3, 9], "x": 139 , "y": 46 }, + {"flags": 4, "matrix": [3, 10], "x": 153 , "y": 46 }, + {"flags": 4, "matrix": [3, 13], "x": 171 , "y": 46 }, + {"flags": 4, "matrix": [3, 15], "x": 193 , "y": 50 }, + {"flags": 4, "matrix": [4, 16], "x": 207 , "y": 64 }, + {"flags": 4, "matrix": [4, 15], "x": 193 , "y": 64 }, + {"flags": 4, "matrix": [4, 14], "x": 180 , "y": 64 }, + {"flags": 4, "matrix": [4, 13], "x": 163 , "y": 60 }, + {"flags": 4, "matrix": [4, 10], "x": 149 , "y": 60 }, + {"flags": 4, "matrix": [4, 9], "x": 136 , "y": 60 }, + {"flags": 4, "matrix": [4, 6], "x": 87 , "y": 60 }, + {"flags": 4, "matrix": [4, 2], "x": 36 , "y": 60 }, + {"flags": 4, "matrix": [4, 1], "x": 19 , "y": 60 }, + {"flags": 4, "matrix": [4, 0], "x": 2 , "y": 60 }, + {"flags": 4, "matrix": [0, 16], "x": 210 , "y": 4 } + ], + "sleep": true + }, + "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, "w": 2}, + {"matrix": [0, 16], "x": 15.5, "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, 16], "x": 15.5, "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, 13], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [2, 16], "x": 15.5, "y": 2}, + {"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": [3, 13], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 15], "x": 14.25, "y": 3.25}, + {"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, 9], "x": 10, "y": 4}, + {"matrix": [4, 10], "x": 11, "y": 4}, + {"matrix": [4, 13], "x": 12, "y": 4}, + {"matrix": [4, 14], "x": 13.25, "y": 4.25}, + {"matrix": [4, 15], "x": 14.25, "y": 4.25}, + {"matrix": [4, 16], "x": 15.25, "y": 4.25} + ] + } + } +} \ No newline at end of file diff --git a/keyboards/moky/moky67/keymaps/default/keymap.c b/keyboards/moky/moky67/keymaps/default/keymap.c new file mode 100644 index 00000000000..aab6493c2e9 --- /dev/null +++ b/keyboards/moky/moky67/keymaps/default/keymap.c @@ -0,0 +1,50 @@ +// Copyright 2023 VertorWang (@itarze) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( /* Base */ + 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_BSPC, _______, + 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_SCRL, + 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_DEL, + 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, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [1] = LAYOUT( /* Base */ + KC_GRV, KC_MYCM, KC_WHOM, KC_MAIL, KC_CALC, KC_MSEL, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, + _______, TO(0), TO(2), _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, + _______, GU_TOGG, _______, EE_CLR, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI), + + [2] = LAYOUT( /* Base */ + KC_ESC, KC_BRMD, KC_BRMU, KC_F3, _______, KC_F5, KC_F6, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSPC, _______, + 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_SCRL, + 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_DEL, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MO(3), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [3] = LAYOUT( /* FN */ + 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, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, + _______, TO(0), TO(2), _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, + _______, _______, _______, EE_CLR, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI), +}; + +// clang-format on + +#ifdef ENCODER_MAP_ENABLE + +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + + [0] = { ENCODER_CCW_CW(KC_VOLU, KC_VOLD)}, + [1] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD)}, + [2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS)}, + [3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS)}, +}; + +#endif diff --git a/keyboards/moky/moky67/keymaps/default/rules.mk b/keyboards/moky/moky67/keymaps/default/rules.mk new file mode 100644 index 00000000000..ee325681483 --- /dev/null +++ b/keyboards/moky/moky67/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/moky/moky67/keymaps/via/keymap.c b/keyboards/moky/moky67/keymaps/via/keymap.c new file mode 100644 index 00000000000..aab6493c2e9 --- /dev/null +++ b/keyboards/moky/moky67/keymaps/via/keymap.c @@ -0,0 +1,50 @@ +// Copyright 2023 VertorWang (@itarze) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( /* Base */ + 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_BSPC, _______, + 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_SCRL, + 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_DEL, + 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, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [1] = LAYOUT( /* Base */ + KC_GRV, KC_MYCM, KC_WHOM, KC_MAIL, KC_CALC, KC_MSEL, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, + _______, TO(0), TO(2), _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, + _______, GU_TOGG, _______, EE_CLR, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI), + + [2] = LAYOUT( /* Base */ + KC_ESC, KC_BRMD, KC_BRMU, KC_F3, _______, KC_F5, KC_F6, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSPC, _______, + 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_SCRL, + 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_DEL, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MO(3), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [3] = LAYOUT( /* FN */ + 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, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, + _______, TO(0), TO(2), _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, + _______, _______, _______, EE_CLR, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI), +}; + +// clang-format on + +#ifdef ENCODER_MAP_ENABLE + +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + + [0] = { ENCODER_CCW_CW(KC_VOLU, KC_VOLD)}, + [1] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD)}, + [2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS)}, + [3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS)}, +}; + +#endif diff --git a/keyboards/moky/moky67/keymaps/via/rules.mk b/keyboards/moky/moky67/keymaps/via/rules.mk new file mode 100644 index 00000000000..715838ecc5d --- /dev/null +++ b/keyboards/moky/moky67/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +ENCODER_MAP_ENABLE = yes +VIA_ENABLE = yes diff --git a/keyboards/moky/moky67/mcuconf.h b/keyboards/moky/moky67/mcuconf.h new file mode 100644 index 00000000000..2b674fffd3d --- /dev/null +++ b/keyboards/moky/moky67/mcuconf.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2023 Westberry Technology Corp., Ltd + * + * 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 . + */ + +#pragma once + +#include_next + +#undef WB32_GPT_TIM1_IRQ_PRIORITY +#define WB32_GPT_TIM1_IRQ_PRIORITY 3 + +#undef WB32_SPI_USE_QSPI +#define WB32_SPI_USE_QSPI TRUE + +#undef WB32_SPI_USE_SPIM2 +#define WB32_SPI_USE_SPIM2 TRUE + diff --git a/keyboards/moky/moky67/readme.md b/keyboards/moky/moky67/readme.md new file mode 100644 index 00000000000..15b3513d1d7 --- /dev/null +++ b/keyboards/moky/moky67/readme.md @@ -0,0 +1,26 @@ +# moky67 +![moky/moky67](https://i.imgur.com/9k4QiqR.png) + +An in-switch RGB LED keyboard with RGB underglow. + +* Keyboard Maintainer: [Vertor](https://github.com/VertorWang) +* Hardware Supported: moky67 +* Hardware Availability: Private GB + +Make example for this keyboard (after setting up your build environment): + + make moky/moky67:default + +Flashing example for this keyboard: + + make moky/moky67: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 diff --git a/keyboards/moky/moky67/rules.mk b/keyboards/moky/moky67/rules.mk new file mode 100644 index 00000000000..7ff128fa692 --- /dev/null +++ b/keyboards/moky/moky67/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank \ No newline at end of file From 02af906de1df017dfeecddff85f9bf8ce5e48648 Mon Sep 17 00:00:00 2001 From: Duncan Sutherland Date: Tue, 21 May 2024 00:49:14 +0100 Subject: [PATCH 019/519] Add second encoder to matrix info of arrowmechanics/wings (#23390) --- keyboards/arrowmechanics/wings/keyboard.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/arrowmechanics/wings/keyboard.json b/keyboards/arrowmechanics/wings/keyboard.json index 0f1e6696f75..1da4077baa8 100644 --- a/keyboards/arrowmechanics/wings/keyboard.json +++ b/keyboards/arrowmechanics/wings/keyboard.json @@ -237,7 +237,7 @@ {"matrix": [1, 7], "x": 7.25, "y": 1.15}, {"matrix": [1, 8], "x": 8.25, "y": 1.15, "encoder": 0}, - {"matrix": [7, 0], "x": 9.45, "y": 1.15}, + {"matrix": [7, 0], "x": 9.45, "y": 1.15, "encoder": 1}, {"matrix": [7, 1], "x": 10.45, "y": 1.15}, {"matrix": [7, 2], "x": 11.45, "y": 1.08}, {"matrix": [7, 3], "x": 12.45, "y": 1}, From a8de554d22ace15b70e3b20da162b1c571267b95 Mon Sep 17 00:00:00 2001 From: eason <98533237+EasonQian1@users.noreply.github.com> Date: Tue, 21 May 2024 08:16:55 +0800 Subject: [PATCH 020/519] Add Meow65 (#23427) --- keyboards/eason/meow65/config.h | 6 + keyboards/eason/meow65/halconf.h | 8 + keyboards/eason/meow65/info.json | 265 ++++++++++++++++++ .../eason/meow65/keymaps/default/keymap.c | 15 + keyboards/eason/meow65/keymaps/via/keymap.c | 15 + keyboards/eason/meow65/keymaps/via/rules.mk | 2 + keyboards/eason/meow65/mcuconf.h | 9 + keyboards/eason/meow65/readme.md | 27 ++ keyboards/eason/meow65/rules.mk | 1 + 9 files changed, 348 insertions(+) create mode 100644 keyboards/eason/meow65/config.h create mode 100644 keyboards/eason/meow65/halconf.h create mode 100644 keyboards/eason/meow65/info.json create mode 100644 keyboards/eason/meow65/keymaps/default/keymap.c create mode 100644 keyboards/eason/meow65/keymaps/via/keymap.c create mode 100644 keyboards/eason/meow65/keymaps/via/rules.mk create mode 100644 keyboards/eason/meow65/mcuconf.h create mode 100644 keyboards/eason/meow65/readme.md create mode 100644 keyboards/eason/meow65/rules.mk diff --git a/keyboards/eason/meow65/config.h b/keyboards/eason/meow65/config.h new file mode 100644 index 00000000000..ea83fd49fa4 --- /dev/null +++ b/keyboards/eason/meow65/config.h @@ -0,0 +1,6 @@ +// Copyright 2022 Eason +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define WS2812_SPI_DRIVER SPID2 diff --git a/keyboards/eason/meow65/halconf.h b/keyboards/eason/meow65/halconf.h new file mode 100644 index 00000000000..7dda577da1b --- /dev/null +++ b/keyboards/eason/meow65/halconf.h @@ -0,0 +1,8 @@ +// Copyright 2022 Eason +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define HAL_USE_SPI TRUE + +#include_next diff --git a/keyboards/eason/meow65/info.json b/keyboards/eason/meow65/info.json new file mode 100644 index 00000000000..340a7410407 --- /dev/null +++ b/keyboards/eason/meow65/info.json @@ -0,0 +1,265 @@ +{ + "keyboard_name": "Meow65", + "manufacturer": "Eason", + "url": "", + "maintainer": "Eason", + "usb": { + "vid": "0x68F4", + "pid": "0x70A0", + "device_version": "0.0.1", + "force_nkro": true + }, + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgblight": true + }, + "rgblight": { + "led_count": 2, + "animations": { + "breathing": true, + "rainbow_mood": true, + "rainbow_swirl": true, + "snake": true, + "knight": true, + "christmas": true, + "static_gradient": true, + "rgb_test": true, + "alternating": true, + "twinkle": true + } + }, + "ws2812": { + "pin": "B15", + "driver": "spi" + }, + "indicators": { + "caps_lock": "C13" + }, + "matrix_pins": { + "rows": [ "A15", "B3", "B4", "B5", "B6"], + "cols": ["A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "B10", "B11", "B12", "B13", "B14", "A8"] + }, + "diode_direction": "ROW2COL", + "processor": "STM32F103", + "bootloader": "uf2boot", + "layouts":{ + "LAYOUT_all": { + "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, "w": 2}, + {"matrix": [0, 14], "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, 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}, + {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25}, + {"matrix": [2, 14], "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": [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, 14], "x": 15, "y": 4} + ] + }, + "LAYOUT_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, "w": 2}, + {"matrix": [0, 14], "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, 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, 13], "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": [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, 14], "x": 15, "y": 4} + ] + }, + "LAYOUT_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, "w": 2}, + {"matrix": [0, 14], "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": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"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}, + {"matrix": [2, 14], "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": [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, 14], "x": 15, "y": 4} + ] + } + } +} diff --git a/keyboards/eason/meow65/keymaps/default/keymap.c b/keyboards/eason/meow65/keymaps/default/keymap.c new file mode 100644 index 00000000000..f70a94c0d96 --- /dev/null +++ b/keyboards/eason/meow65/keymaps/default/keymap.c @@ -0,0 +1,15 @@ +// Copyright 2022 Eason +// SPDX-License-Identifier: GPL-2.0-or-later + + #include QMK_KEYBOARD_H + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + 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_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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_LGUI, KC_LEFT, KC_DOWN, KC_RGHT + ) + }; diff --git a/keyboards/eason/meow65/keymaps/via/keymap.c b/keyboards/eason/meow65/keymaps/via/keymap.c new file mode 100644 index 00000000000..61c6323ea04 --- /dev/null +++ b/keyboards/eason/meow65/keymaps/via/keymap.c @@ -0,0 +1,15 @@ +// Copyright 2022 Eason +// SPDX-License-Identifier: GPL-2.0-or-later + + #include QMK_KEYBOARD_H + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + 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_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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_LGUI, KC_LEFT, KC_DOWN, KC_RGHT + ) + }; diff --git a/keyboards/eason/meow65/keymaps/via/rules.mk b/keyboards/eason/meow65/keymaps/via/rules.mk new file mode 100644 index 00000000000..36b7ba9cbc9 --- /dev/null +++ b/keyboards/eason/meow65/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/eason/meow65/mcuconf.h b/keyboards/eason/meow65/mcuconf.h new file mode 100644 index 00000000000..bac8fc07c5f --- /dev/null +++ b/keyboards/eason/meow65/mcuconf.h @@ -0,0 +1,9 @@ +// Copyright 2022 Eason +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include_next + +#undef STM32_SPI_USE_SPI2 +#define STM32_SPI_USE_SPI2 TRUE diff --git a/keyboards/eason/meow65/readme.md b/keyboards/eason/meow65/readme.md new file mode 100644 index 00000000000..5c72d73c6e0 --- /dev/null +++ b/keyboards/eason/meow65/readme.md @@ -0,0 +1,27 @@ +# Meow65 + +![meow65](https://i.imgur.com/i5tM4nY.jpg) + +A customizable hotswap 65% keyboard. + +* Keyboard Maintainer: [EASON](https://github.com/EasonQian1) +* Hardware Supported: Meow65 PCB +* Hardware Availability: [EASON](https://github.com/EasonQian1) + +Make example for this keyboard (after setting up your build environment): + + make eason/meow65:default + +Flashing example for this keyboard: + + make eason/meow65: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 Esc in the keyboard then replug +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `QK_BOOT` diff --git a/keyboards/eason/meow65/rules.mk b/keyboards/eason/meow65/rules.mk new file mode 100644 index 00000000000..6e7633bfe01 --- /dev/null +++ b/keyboards/eason/meow65/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank From 2b926774cae11e55001435d0475436137afda7fb Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Tue, 21 May 2024 05:00:53 -0700 Subject: [PATCH 021/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: H, Part 1 (#23759) Affects: - `h0oni/deskpad` - `h0oni/hotduck` - `halfcliff` - `halokeys/elemental75` - `han60` - `hardlineworks/otd_plus` - `helix/rev3_4rows` - `helix/rev3_5rows` - `hfdkb/ac001` - `hidtech/bastyl` - `hineybush/h08_ocelot` - `hineybush/h10` - `hineybush/h60` - `hineybush/h65` - `hineybush/h65_hotswap` - `hineybush/h660s` - `hineybush/h75_singa` - `hineybush/h87a` - `hineybush/h88` - `hineybush/hbcp` - `hineybush/hineyg80` - `hineybush/physix` - `hineybush/sm68` - `hnahkb/freyr` - `hnahkb/stella` - `hnahkb/vn66` - `horizon` - `hotdox` - `hs60/v1` --- keyboards/h0oni/deskpad/config.h | 22 ----------- keyboards/h0oni/deskpad/keyboard.json | 6 +++ keyboards/h0oni/hotduck/config.h | 22 ----------- keyboards/h0oni/hotduck/keyboard.json | 6 +++ keyboards/halfcliff/config.h | 5 --- keyboards/halfcliff/keyboard.json | 6 +++ keyboards/halokeys/elemental75/config.h | 22 ----------- keyboards/halokeys/elemental75/keyboard.json | 6 ++- keyboards/han60/config.h | 39 ------------------- keyboards/han60/keyboard.json | 6 +++ keyboards/hardlineworks/otd_plus/config.h | 7 ---- .../hardlineworks/otd_plus/keyboard.json | 6 +++ keyboards/helix/rev3_4rows/config.h | 5 --- keyboards/helix/rev3_4rows/info.json | 6 +++ keyboards/helix/rev3_5rows/config.h | 5 --- keyboards/helix/rev3_5rows/info.json | 6 +++ keyboards/hfdkb/ac001/config.h | 5 --- keyboards/hfdkb/ac001/keyboard.json | 6 ++- keyboards/hidtech/bastyl/config.h | 2 - keyboards/hidtech/bastyl/keyboard.json | 6 +++ keyboards/hineybush/h08_ocelot/config.h | 39 ------------------- keyboards/hineybush/h08_ocelot/keyboard.json | 6 +++ keyboards/hineybush/h10/config.h | 23 ----------- keyboards/hineybush/h10/keyboard.json | 6 +++ keyboards/hineybush/h60/config.h | 23 ----------- keyboards/hineybush/h60/keyboard.json | 6 +++ keyboards/hineybush/h65/config.h | 39 ------------------- keyboards/hineybush/h65/keyboard.json | 6 +++ keyboards/hineybush/h65_hotswap/config.h | 39 ------------------- keyboards/hineybush/h65_hotswap/keyboard.json | 6 +++ keyboards/hineybush/h660s/config.h | 39 ------------------- keyboards/hineybush/h660s/keyboard.json | 6 +++ keyboards/hineybush/h75_singa/config.h | 39 ------------------- keyboards/hineybush/h75_singa/keyboard.json | 6 +++ keyboards/hineybush/h87a/config.h | 23 ----------- keyboards/hineybush/h87a/keyboard.json | 6 +++ keyboards/hineybush/h88/config.h | 23 ----------- keyboards/hineybush/h88/keyboard.json | 6 +++ keyboards/hineybush/hbcp/config.h | 5 --- keyboards/hineybush/hbcp/keyboard.json | 6 +++ keyboards/hineybush/hineyg80/config.h | 7 ---- keyboards/hineybush/hineyg80/keyboard.json | 6 +++ keyboards/hineybush/physix/config.h | 39 ------------------- keyboards/hineybush/physix/keyboard.json | 6 +++ keyboards/hineybush/sm68/config.h | 39 ------------------- keyboards/hineybush/sm68/keyboard.json | 6 +++ keyboards/hnahkb/freyr/config.h | 39 ------------------- keyboards/hnahkb/freyr/keyboard.json | 6 +++ keyboards/hnahkb/stella/config.h | 39 ------------------- keyboards/hnahkb/stella/keyboard.json | 6 +++ keyboards/hnahkb/vn66/config.h | 5 --- keyboards/hnahkb/vn66/keyboard.json | 6 +++ keyboards/horizon/config.h | 23 ----------- keyboards/horizon/keyboard.json | 6 +++ keyboards/hotdox/config.h | 5 --- keyboards/hotdox/keyboard.json | 6 +++ keyboards/hs60/v1/config.h | 5 --- keyboards/hs60/v1/keyboard.json | 6 +++ 58 files changed, 172 insertions(+), 629 deletions(-) delete mode 100644 keyboards/h0oni/deskpad/config.h delete mode 100644 keyboards/h0oni/hotduck/config.h delete mode 100644 keyboards/halokeys/elemental75/config.h delete mode 100644 keyboards/han60/config.h delete mode 100644 keyboards/hardlineworks/otd_plus/config.h delete mode 100644 keyboards/hineybush/h08_ocelot/config.h delete mode 100644 keyboards/hineybush/h10/config.h delete mode 100644 keyboards/hineybush/h60/config.h delete mode 100644 keyboards/hineybush/h65/config.h delete mode 100644 keyboards/hineybush/h65_hotswap/config.h delete mode 100644 keyboards/hineybush/h660s/config.h delete mode 100644 keyboards/hineybush/h75_singa/config.h delete mode 100644 keyboards/hineybush/h87a/config.h delete mode 100644 keyboards/hineybush/h88/config.h delete mode 100644 keyboards/hineybush/hineyg80/config.h delete mode 100644 keyboards/hineybush/physix/config.h delete mode 100644 keyboards/hineybush/sm68/config.h delete mode 100644 keyboards/hnahkb/freyr/config.h delete mode 100644 keyboards/hnahkb/stella/config.h delete mode 100644 keyboards/horizon/config.h diff --git a/keyboards/h0oni/deskpad/config.h b/keyboards/h0oni/deskpad/config.h deleted file mode 100644 index 441e3b8c1a6..00000000000 --- a/keyboards/h0oni/deskpad/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Hydrogen BD - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/h0oni/deskpad/keyboard.json b/keyboards/h0oni/deskpad/keyboard.json index 471d101693b..d240acf9d33 100644 --- a/keyboards/h0oni/deskpad/keyboard.json +++ b/keyboards/h0oni/deskpad/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D4", "D1"], "rows": ["D7", "C6"] diff --git a/keyboards/h0oni/hotduck/config.h b/keyboards/h0oni/hotduck/config.h deleted file mode 100644 index 4c8c95e41ec..00000000000 --- a/keyboards/h0oni/hotduck/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Md Mashur Shalehin, aka h0oni - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/h0oni/hotduck/keyboard.json b/keyboards/h0oni/hotduck/keyboard.json index c034e7a3a48..605d614d6af 100644 --- a/keyboards/h0oni/hotduck/keyboard.json +++ b/keyboards/h0oni/hotduck/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "D3"], "rows": ["B6", "B2", "B3", "B1", "F7", "F6", "F5"] diff --git a/keyboards/halfcliff/config.h b/keyboards/halfcliff/config.h index d3c5de43387..be92d93d938 100644 --- a/keyboards/halfcliff/config.h +++ b/keyboards/halfcliff/config.h @@ -24,8 +24,3 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { F5, F6, F7, D7, B5, F5, F6, F7, D7, B5 } #define MATRIX_COL_PINS { B4, E6, C6, B6, B2 } - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/halfcliff/keyboard.json b/keyboards/halfcliff/keyboard.json index 1f60537b249..a864c4ce332 100644 --- a/keyboards/halfcliff/keyboard.json +++ b/keyboards/halfcliff/keyboard.json @@ -34,6 +34,12 @@ "mousekey": false, "extrakey": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/halokeys/elemental75/config.h b/keyboards/halokeys/elemental75/config.h deleted file mode 100644 index ea52da29280..00000000000 --- a/keyboards/halokeys/elemental75/config.h +++ /dev/null @@ -1,22 +0,0 @@ - /* Copyright 2022 Halokeys - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/halokeys/elemental75/keyboard.json b/keyboards/halokeys/elemental75/keyboard.json index ccb1de12b68..866916b69b9 100644 --- a/keyboards/halokeys/elemental75/keyboard.json +++ b/keyboards/halokeys/elemental75/keyboard.json @@ -32,7 +32,11 @@ "term": 300 }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "ws2812": { "pin": "A10" diff --git a/keyboards/han60/config.h b/keyboards/han60/config.h deleted file mode 100644 index 9c95070341a..00000000000 --- a/keyboards/han60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 farhandsome - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/han60/keyboard.json b/keyboards/han60/keyboard.json index d1dcff6baf6..41d33b1ba87 100644 --- a/keyboards/han60/keyboard.json +++ b/keyboards/han60/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["D5", "D3", "D2", "D1", "D0"] diff --git a/keyboards/hardlineworks/otd_plus/config.h b/keyboards/hardlineworks/otd_plus/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/hardlineworks/otd_plus/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/hardlineworks/otd_plus/keyboard.json b/keyboards/hardlineworks/otd_plus/keyboard.json index 50a7eb22246..e0afc03893f 100644 --- a/keyboards/hardlineworks/otd_plus/keyboard.json +++ b/keyboards/hardlineworks/otd_plus/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2", "B1", "B7", "B0", "F1", "D7", "F7", "C7"], "rows": ["D2", "D4", "D1", "E6", "F5", "C6", "B6", "F6", "F0", "D0", "D6", "D3"] diff --git a/keyboards/helix/rev3_4rows/config.h b/keyboards/helix/rev3_4rows/config.h index cc1a9252959..56d9a13feba 100644 --- a/keyboards/helix/rev3_4rows/config.h +++ b/keyboards/helix/rev3_4rows/config.h @@ -43,11 +43,6 @@ along with this program. If not, see . /* Custom font */ #define OLED_FONT_H "keyboards/helix/common/glcdfont.c" -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/helix/rev3_4rows/info.json b/keyboards/helix/rev3_4rows/info.json index ce7bcde3e03..5e9fd2dcd84 100644 --- a/keyboards/helix/rev3_4rows/info.json +++ b/keyboards/helix/rev3_4rows/info.json @@ -8,6 +8,12 @@ "pid": "0x0004", "device_version": "0.0.1" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgb_matrix": { "driver": "ws2812", "sat_steps": 8, diff --git a/keyboards/helix/rev3_5rows/config.h b/keyboards/helix/rev3_5rows/config.h index 733f8b5a55f..84173da2dee 100644 --- a/keyboards/helix/rev3_5rows/config.h +++ b/keyboards/helix/rev3_5rows/config.h @@ -43,11 +43,6 @@ along with this program. If not, see . /* Custom font */ #define OLED_FONT_H "keyboards/helix/common/glcdfont.c" -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/helix/rev3_5rows/info.json b/keyboards/helix/rev3_5rows/info.json index e867f033262..b61db7df86e 100644 --- a/keyboards/helix/rev3_5rows/info.json +++ b/keyboards/helix/rev3_5rows/info.json @@ -8,6 +8,12 @@ "pid": "0x0003", "device_version": "0.0.1" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgb_matrix": { "driver": "ws2812", "sat_steps": 8, diff --git a/keyboards/hfdkb/ac001/config.h b/keyboards/hfdkb/ac001/config.h index e069609fad2..d82b4602542 100644 --- a/keyboards/hfdkb/ac001/config.h +++ b/keyboards/hfdkb/ac001/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* SPI Config for spi flash*/ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN B3 diff --git a/keyboards/hfdkb/ac001/keyboard.json b/keyboards/hfdkb/ac001/keyboard.json index daf3e735f0e..87f6e40bc30 100644 --- a/keyboards/hfdkb/ac001/keyboard.json +++ b/keyboards/hfdkb/ac001/keyboard.json @@ -46,7 +46,11 @@ "pin": "A1" }, "qmk": { - "tap_keycode_delay": 5 + "tap_keycode_delay": 5, + "locking": { + "enabled": true, + "resync": true + } }, "processor": "WB32FQ95", "bootloader": "wb32-dfu", diff --git a/keyboards/hidtech/bastyl/config.h b/keyboards/hidtech/bastyl/config.h index a033888b412..455c1771d83 100644 --- a/keyboards/hidtech/bastyl/config.h +++ b/keyboards/hidtech/bastyl/config.h @@ -18,6 +18,4 @@ #pragma once -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE #define MASTER_RIGHT diff --git a/keyboards/hidtech/bastyl/keyboard.json b/keyboards/hidtech/bastyl/keyboard.json index 5c3a9fcfcff..7ebb9157396 100644 --- a/keyboards/hidtech/bastyl/keyboard.json +++ b/keyboards/hidtech/bastyl/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "E6", "C6", "B1", "B3", "B2"], "rows": ["D7", "B5", "F7", "F6", "B6"] diff --git a/keyboards/hineybush/h08_ocelot/config.h b/keyboards/hineybush/h08_ocelot/config.h deleted file mode 100644 index 474c1d6701d..00000000000 --- a/keyboards/hineybush/h08_ocelot/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 hineybush - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/hineybush/h08_ocelot/keyboard.json b/keyboards/hineybush/h08_ocelot/keyboard.json index 0e6ccb732bc..bca579aab8d 100644 --- a/keyboards/hineybush/h08_ocelot/keyboard.json +++ b/keyboards/hineybush/h08_ocelot/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "C7", "D0", "D1"], "rows": ["B4", "B6"] diff --git a/keyboards/hineybush/h10/config.h b/keyboards/hineybush/h10/config.h deleted file mode 100644 index 994b108d8e8..00000000000 --- a/keyboards/hineybush/h10/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 hineybush - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/hineybush/h10/keyboard.json b/keyboards/hineybush/h10/keyboard.json index 924acb515f9..73205f85ffc 100644 --- a/keyboards/hineybush/h10/keyboard.json +++ b/keyboards/hineybush/h10/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "C7", "B1", "B2"], "rows": ["B0", "C6", "B6", "B5", "B4", "D7"] diff --git a/keyboards/hineybush/h60/config.h b/keyboards/hineybush/h60/config.h deleted file mode 100644 index 994b108d8e8..00000000000 --- a/keyboards/hineybush/h60/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 hineybush - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/hineybush/h60/keyboard.json b/keyboards/hineybush/h60/keyboard.json index 63d41a55b41..8a019d42da3 100644 --- a/keyboards/hineybush/h60/keyboard.json +++ b/keyboards/hineybush/h60/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "D0", "D1", "D2", "D3", "D5", "D6", "C7", "F0", "F1", "F4", "F5", "F6", "F7"], "rows": ["B6", "B5", "B4", "D7", "E6"] diff --git a/keyboards/hineybush/h65/config.h b/keyboards/hineybush/h65/config.h deleted file mode 100644 index 474c1d6701d..00000000000 --- a/keyboards/hineybush/h65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 hineybush - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/hineybush/h65/keyboard.json b/keyboards/hineybush/h65/keyboard.json index cacc673311e..8560c7774c5 100644 --- a/keyboards/hineybush/h65/keyboard.json +++ b/keyboards/hineybush/h65/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "B0", "B1", "B2", "B3"], "rows": ["D7", "D6", "D4", "D1", "D0"] diff --git a/keyboards/hineybush/h65_hotswap/config.h b/keyboards/hineybush/h65_hotswap/config.h deleted file mode 100644 index 474c1d6701d..00000000000 --- a/keyboards/hineybush/h65_hotswap/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 hineybush - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/hineybush/h65_hotswap/keyboard.json b/keyboards/hineybush/h65_hotswap/keyboard.json index 0cabdf074bb..510836f22ff 100644 --- a/keyboards/hineybush/h65_hotswap/keyboard.json +++ b/keyboards/hineybush/h65_hotswap/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "B0", "B1", "B2", "B3"], "rows": ["D7", "D6", "D4", "D1", "D0"] diff --git a/keyboards/hineybush/h660s/config.h b/keyboards/hineybush/h660s/config.h deleted file mode 100644 index 373b97179ea..00000000000 --- a/keyboards/hineybush/h660s/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Josh Hinnebusch - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/hineybush/h660s/keyboard.json b/keyboards/hineybush/h660s/keyboard.json index de658ff1296..d76664080e6 100644 --- a/keyboards/hineybush/h660s/keyboard.json +++ b/keyboards/hineybush/h660s/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5"], "rows": ["B1", "E6", "B3", "D3", "D2"] diff --git a/keyboards/hineybush/h75_singa/config.h b/keyboards/hineybush/h75_singa/config.h deleted file mode 100644 index 2e3e4304220..00000000000 --- a/keyboards/hineybush/h75_singa/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 hineybush - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/hineybush/h75_singa/keyboard.json b/keyboards/hineybush/h75_singa/keyboard.json index a313213e67e..30dbd8d6a1f 100644 --- a/keyboards/hineybush/h75_singa/keyboard.json +++ b/keyboards/hineybush/h75_singa/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "B2", "D4", "D5", "D3"], "rows": ["B0", "B1", "D0", "D1", "D2", "D6"] diff --git a/keyboards/hineybush/h87a/config.h b/keyboards/hineybush/h87a/config.h deleted file mode 100644 index 68b99c1a55d..00000000000 --- a/keyboards/hineybush/h87a/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2018 Josh Hinnebusch - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/hineybush/h87a/keyboard.json b/keyboards/hineybush/h87a/keyboard.json index 196a3aa8fe5..e9096201d92 100644 --- a/keyboards/hineybush/h87a/keyboard.json +++ b/keyboards/hineybush/h87a/keyboard.json @@ -21,6 +21,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "D2"], "rows": ["B0", "B1", "B2", "B3", "D0", "D1", "B5", "B6", "D7", "B4", "D6", "D4"] diff --git a/keyboards/hineybush/h88/config.h b/keyboards/hineybush/h88/config.h deleted file mode 100644 index 8099d5a0e41..00000000000 --- a/keyboards/hineybush/h88/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Josh Hinnebusch - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/hineybush/h88/keyboard.json b/keyboards/hineybush/h88/keyboard.json index 2adb661273f..e74a3f36234 100644 --- a/keyboards/hineybush/h88/keyboard.json +++ b/keyboards/hineybush/h88/keyboard.json @@ -21,6 +21,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "D2"], "rows": ["B0", "B1", "B2", "B3", "D0", "D1", "B5", "B6", "D7", "B4", "D6", "D4"] diff --git a/keyboards/hineybush/hbcp/config.h b/keyboards/hineybush/hbcp/config.h index f76948d482b..bde356232d8 100644 --- a/keyboards/hineybush/hbcp/config.h +++ b/keyboards/hineybush/hbcp/config.h @@ -34,8 +34,3 @@ along with this program. If not, see . */ #define MATRIX_ROW_PINS { B1, B6, D0, C7, C6, C5 } #define MATRIX_COL_PINS { F0, F1, F2, F3, F4, F5, F6, F7, A0, A1, A2, A3, A4, A5, B5, B4, B3, B2 } - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/hineybush/hbcp/keyboard.json b/keyboards/hineybush/hbcp/keyboard.json index ab36bfaea09..f03c4d57540 100644 --- a/keyboards/hineybush/hbcp/keyboard.json +++ b/keyboards/hineybush/hbcp/keyboard.json @@ -46,6 +46,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/hineybush/hineyg80/config.h b/keyboards/hineybush/hineyg80/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/hineybush/hineyg80/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/hineybush/hineyg80/keyboard.json b/keyboards/hineybush/hineyg80/keyboard.json index fa6e3401204..933d689225d 100644 --- a/keyboards/hineybush/hineyg80/keyboard.json +++ b/keyboards/hineybush/hineyg80/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "F7", "F6", "F5", "F4", "F1", "F0", "B7", "B0"], "rows": ["B2", "B3", "D0", "B1", "D2", "D1", "D5", "D3", "D6", "D4", "B4", "D7"] diff --git a/keyboards/hineybush/physix/config.h b/keyboards/hineybush/physix/config.h deleted file mode 100644 index 2e3e4304220..00000000000 --- a/keyboards/hineybush/physix/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 hineybush - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/hineybush/physix/keyboard.json b/keyboards/hineybush/physix/keyboard.json index a08e09af185..b7b1c05393e 100644 --- a/keyboards/hineybush/physix/keyboard.json +++ b/keyboards/hineybush/physix/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "B3", "B2", "B1", "B0", "B5", "B4", "D7", "D6", "D4"], "rows": ["D0", "D1", "D2", "C7", "C6"] diff --git a/keyboards/hineybush/sm68/config.h b/keyboards/hineybush/sm68/config.h deleted file mode 100644 index 2e3e4304220..00000000000 --- a/keyboards/hineybush/sm68/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 hineybush - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/hineybush/sm68/keyboard.json b/keyboards/hineybush/sm68/keyboard.json index d4280b6747f..8350ca03807 100644 --- a/keyboards/hineybush/sm68/keyboard.json +++ b/keyboards/hineybush/sm68/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D3", "D2"], "rows": ["B2", "B1", "B0", "D4", "D1"] diff --git a/keyboards/hnahkb/freyr/config.h b/keyboards/hnahkb/freyr/config.h deleted file mode 100644 index 9f9d81bea91..00000000000 --- a/keyboards/hnahkb/freyr/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 HnahKB - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/hnahkb/freyr/keyboard.json b/keyboards/hnahkb/freyr/keyboard.json index 4ddc37d3dce..635c9d59897 100644 --- a/keyboards/hnahkb/freyr/keyboard.json +++ b/keyboards/hnahkb/freyr/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "D7", "D6", "D4", "B5", "C7", "C6", "F5", "F6", "F7"], "rows": ["D3", "B2", "B1", "B0", "E6", "F0", "D2", "D5", "F4", "F1"] diff --git a/keyboards/hnahkb/stella/config.h b/keyboards/hnahkb/stella/config.h deleted file mode 100644 index 9f9d81bea91..00000000000 --- a/keyboards/hnahkb/stella/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 HnahKB - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/hnahkb/stella/keyboard.json b/keyboards/hnahkb/stella/keyboard.json index 13abbffbec2..7c69ec3de21 100644 --- a/keyboards/hnahkb/stella/keyboard.json +++ b/keyboards/hnahkb/stella/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "D7", "D6", "D4", "B5", "C7", "C6", "F5", "F6", "F7"], "rows": ["D3", "B2", "B1", "B0", "E6", "F0", "D2", "D5", "F4", "F1"] diff --git a/keyboards/hnahkb/vn66/config.h b/keyboards/hnahkb/vn66/config.h index 0369461b671..b8f23d935b0 100644 --- a/keyboards/hnahkb/vn66/config.h +++ b/keyboards/hnahkb/vn66/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/hnahkb/vn66/keyboard.json b/keyboards/hnahkb/vn66/keyboard.json index 6934fd1f8fa..a83948f5cd0 100644 --- a/keyboards/hnahkb/vn66/keyboard.json +++ b/keyboards/hnahkb/vn66/keyboard.json @@ -22,6 +22,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F4", "F1", "F0", "C6", "C7", "B5", "B4", "D7", "D6", "D4", "D5", "D3"], "rows": ["B1", "B2", "B3", "D2", "F7"] diff --git a/keyboards/horizon/config.h b/keyboards/horizon/config.h deleted file mode 100644 index 24264fee6c6..00000000000 --- a/keyboards/horizon/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Steven Karrmann - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/horizon/keyboard.json b/keyboards/horizon/keyboard.json index 0d1c633e5fd..0fea8cb74ca 100644 --- a/keyboards/horizon/keyboard.json +++ b/keyboards/horizon/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6", "B5", "B4", "E6", "D7", "C6", "D4", "D0"], "rows": ["D3", "D2", "D1", "F4"] diff --git a/keyboards/hotdox/config.h b/keyboards/hotdox/config.h index 60d9fe62174..c7458176162 100644 --- a/keyboards/hotdox/config.h +++ b/keyboards/hotdox/config.h @@ -11,11 +11,6 @@ #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* key combination for command */ #ifndef IS_COMMAND #define IS_COMMAND() ( \ diff --git a/keyboards/hotdox/keyboard.json b/keyboards/hotdox/keyboard.json index 5d2c3ec5acd..dee1decb947 100644 --- a/keyboards/hotdox/keyboard.json +++ b/keyboards/hotdox/keyboard.json @@ -21,6 +21,12 @@ "backlight": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "tapping": { "toggle": 1 }, diff --git a/keyboards/hs60/v1/config.h b/keyboards/hs60/v1/config.h index 95730e10e46..1bbc88ac1d4 100644 --- a/keyboards/hs60/v1/config.h +++ b/keyboards/hs60/v1/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/hs60/v1/keyboard.json b/keyboards/hs60/v1/keyboard.json index 3c07491a3db..f4a05dfe27e 100644 --- a/keyboards/hs60/v1/keyboard.json +++ b/keyboards/hs60/v1/keyboard.json @@ -75,6 +75,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_ansi", "60_iso"], "layouts": { "LAYOUT_60_iso": { From 73f9fb91a391555748d4839161154b98f95eb8fc Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Tue, 21 May 2024 05:04:53 -0700 Subject: [PATCH 022/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: G (#23758) Affects: - `gboards/ergotaco` - `gboards/georgi` - `gboards/gergo` - `geekboards/tester` - `geonworks/frogmini/fmh` - `geonworks/frogmini/fms` - `gh60/revc` - `gh60/satan` - `ghs/rar` - `gkeyboard/gkb_m16` - `gkeyboard/gpad8_2r` - `gl516/a52gl` - `gl516/j73gl` - `gl516/n51gl` - `gmmk/gmmk2/p65` - `gmmk/gmmk2/p96` - `gmmk/numpad` - `gmmk/pro` - `gon/nerd60` - `gon/nerdtkl` - `gray_studio/aero75` - `gray_studio/cod67` - `gray_studio/space65` - `gray_studio/space65r3` - `gray_studio/think65v3` - `grid600/press` --- keyboards/gboards/ergotaco/config.h | 5 --- keyboards/gboards/ergotaco/keyboard.json | 6 +++ keyboards/gboards/georgi/config.h | 5 --- keyboards/gboards/georgi/keyboard.json | 6 +++ keyboards/gboards/gergo/config.h | 5 --- keyboards/gboards/gergo/keyboard.json | 6 +++ keyboards/geekboards/tester/config.h | 3 -- keyboards/geekboards/tester/keyboard.json | 6 +++ keyboards/geonworks/frogmini/fmh/config.h | 3 -- .../geonworks/frogmini/fmh/keyboard.json | 6 +++ keyboards/geonworks/frogmini/fms/config.h | 3 -- .../geonworks/frogmini/fms/keyboard.json | 6 +++ keyboards/gh60/revc/config.h | 39 ------------------- keyboards/gh60/revc/keyboard.json | 6 +++ keyboards/gh60/satan/config.h | 39 ------------------- keyboards/gh60/satan/keyboard.json | 6 +++ keyboards/ghs/rar/config.h | 39 ------------------- keyboards/ghs/rar/keyboard.json | 6 +++ keyboards/gkeyboard/gkb_m16/config.h | 39 ------------------- keyboards/gkeyboard/gkb_m16/keyboard.json | 6 +++ keyboards/gkeyboard/gpad8_2r/config.h | 9 ----- keyboards/gkeyboard/gpad8_2r/keyboard.json | 6 +++ keyboards/gl516/a52gl/config.h | 5 --- keyboards/gl516/a52gl/keyboard.json | 6 +++ keyboards/gl516/j73gl/config.h | 5 --- keyboards/gl516/j73gl/keyboard.json | 6 +++ keyboards/gl516/n51gl/config.h | 5 --- keyboards/gl516/n51gl/keyboard.json | 6 +++ keyboards/gmmk/gmmk2/p65/config.h | 5 --- keyboards/gmmk/gmmk2/p65/info.json | 8 +++- keyboards/gmmk/gmmk2/p96/config.h | 5 --- keyboards/gmmk/gmmk2/p96/info.json | 8 +++- keyboards/gmmk/numpad/config.h | 3 -- keyboards/gmmk/numpad/keyboard.json | 6 +++ keyboards/gmmk/pro/config.h | 5 --- keyboards/gmmk/pro/info.json | 8 +++- keyboards/gon/nerd60/config.h | 6 --- keyboards/gon/nerd60/keyboard.json | 6 +++ keyboards/gon/nerdtkl/config.h | 6 --- keyboards/gon/nerdtkl/keyboard.json | 6 +++ keyboards/gray_studio/aero75/config.h | 10 ----- keyboards/gray_studio/aero75/keyboard.json | 6 +++ keyboards/gray_studio/cod67/config.h | 23 ----------- keyboards/gray_studio/cod67/keyboard.json | 6 +++ keyboards/gray_studio/space65/config.h | 39 ------------------- keyboards/gray_studio/space65/keyboard.json | 6 +++ keyboards/gray_studio/space65r3/config.h | 8 ---- keyboards/gray_studio/space65r3/keyboard.json | 6 +++ keyboards/gray_studio/think65v3/config.h | 9 ----- keyboards/gray_studio/think65v3/keyboard.json | 6 +++ keyboards/grid600/press/config.h | 23 ----------- keyboards/grid600/press/keyboard.json | 6 +++ 52 files changed, 159 insertions(+), 349 deletions(-) delete mode 100644 keyboards/gh60/revc/config.h delete mode 100644 keyboards/gh60/satan/config.h delete mode 100644 keyboards/ghs/rar/config.h delete mode 100644 keyboards/gkeyboard/gkb_m16/config.h delete mode 100644 keyboards/gkeyboard/gpad8_2r/config.h delete mode 100644 keyboards/gon/nerd60/config.h delete mode 100644 keyboards/gon/nerdtkl/config.h delete mode 100644 keyboards/gray_studio/aero75/config.h delete mode 100644 keyboards/gray_studio/cod67/config.h delete mode 100644 keyboards/gray_studio/space65/config.h delete mode 100644 keyboards/gray_studio/space65r3/config.h delete mode 100644 keyboards/gray_studio/think65v3/config.h delete mode 100644 keyboards/grid600/press/config.h diff --git a/keyboards/gboards/ergotaco/config.h b/keyboards/gboards/ergotaco/config.h index 0ab992eac30..dccdbf8528d 100644 --- a/keyboards/gboards/ergotaco/config.h +++ b/keyboards/gboards/ergotaco/config.h @@ -33,10 +33,5 @@ along with this program. If not, see . #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* key combination for command */ #define IS_COMMAND() (get_mods() == MOD_MASK_CTRL || get_mods() == MOD_MASK_SHIFT) diff --git a/keyboards/gboards/ergotaco/keyboard.json b/keyboards/gboards/ergotaco/keyboard.json index 1d13c2458a7..dfd1177c9eb 100644 --- a/keyboards/gboards/ergotaco/keyboard.json +++ b/keyboards/gboards/ergotaco/keyboard.json @@ -17,6 +17,12 @@ "console": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "tapping": { "toggle": 1 }, diff --git a/keyboards/gboards/georgi/config.h b/keyboards/gboards/georgi/config.h index f0785f24bc6..279ccca596e 100644 --- a/keyboards/gboards/georgi/config.h +++ b/keyboards/gboards/georgi/config.h @@ -38,11 +38,6 @@ along with this program. If not, see . #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* key combination for command */ #define IS_COMMAND() ( \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ diff --git a/keyboards/gboards/georgi/keyboard.json b/keyboards/gboards/georgi/keyboard.json index 066797a2415..0b403a5a448 100644 --- a/keyboards/gboards/georgi/keyboard.json +++ b/keyboards/gboards/georgi/keyboard.json @@ -19,6 +19,12 @@ "nkro": true, "steno": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/gboards/gergo/config.h b/keyboards/gboards/gergo/config.h index 44cb5a4304a..b18d58aeed7 100644 --- a/keyboards/gboards/gergo/config.h +++ b/keyboards/gboards/gergo/config.h @@ -42,11 +42,6 @@ along with this program. If not, see . #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* key combination for command */ #define IS_COMMAND() ( \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ diff --git a/keyboards/gboards/gergo/keyboard.json b/keyboards/gboards/gergo/keyboard.json index e576ac8012e..9446b3d1830 100644 --- a/keyboards/gboards/gergo/keyboard.json +++ b/keyboards/gboards/gergo/keyboard.json @@ -23,6 +23,12 @@ "console": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "tapping": { "toggle": 1 }, diff --git a/keyboards/geekboards/tester/config.h b/keyboards/geekboards/tester/config.h index 1c78a34e604..20bed345131 100644 --- a/keyboards/geekboards/tester/config.h +++ b/keyboards/geekboards/tester/config.h @@ -1,6 +1,3 @@ #pragma once #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND - -#define LOCKING_SUPPORT_ENABL -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/geekboards/tester/keyboard.json b/keyboards/geekboards/tester/keyboard.json index 0bd115906d2..60c6b34e002 100644 --- a/keyboards/geekboards/tester/keyboard.json +++ b/keyboards/geekboards/tester/keyboard.json @@ -61,6 +61,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "D2", "D3"], "rows": ["B0", "D4"] diff --git a/keyboards/geonworks/frogmini/fmh/config.h b/keyboards/geonworks/frogmini/fmh/config.h index 7410a49e598..68fdadddc7c 100644 --- a/keyboards/geonworks/frogmini/fmh/config.h +++ b/keyboards/geonworks/frogmini/fmh/config.h @@ -25,6 +25,3 @@ along with this program. If not, see . #define EEPROM_I2C_24LC256 #define I2C1_CLOCK_SPEED 400000 #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/geonworks/frogmini/fmh/keyboard.json b/keyboards/geonworks/frogmini/fmh/keyboard.json index 899f5084d19..29c5ee8272c 100644 --- a/keyboards/geonworks/frogmini/fmh/keyboard.json +++ b/keyboards/geonworks/frogmini/fmh/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C4", "C5", "B0", "C13", "C14", "C15", "B9", "C1", "C2", "C3", "A6", "A5", "A4", "A0"], "rows": ["A3", "A2", "A1", "B8", "A7", "C0"] diff --git a/keyboards/geonworks/frogmini/fms/config.h b/keyboards/geonworks/frogmini/fms/config.h index ddeaa2abff0..4949570d707 100644 --- a/keyboards/geonworks/frogmini/fms/config.h +++ b/keyboards/geonworks/frogmini/fms/config.h @@ -28,6 +28,3 @@ along with this program. If not, see . #define EEPROM_I2C_24LC256 #define I2C1_CLOCK_SPEED 400000 #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/geonworks/frogmini/fms/keyboard.json b/keyboards/geonworks/frogmini/fms/keyboard.json index 66a28805856..06a9c560473 100644 --- a/keyboards/geonworks/frogmini/fms/keyboard.json +++ b/keyboards/geonworks/frogmini/fms/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C4", "C5", "B0", "C13", "C14", "C15", "B9", "C1", "C2", "C3", "A6", "A5", "A4", "A0"], "rows": ["A3", "A2", "A1", "B8", "A7", "C0"] diff --git a/keyboards/gh60/revc/config.h b/keyboards/gh60/revc/config.h deleted file mode 100644 index baf09cebb5e..00000000000 --- a/keyboards/gh60/revc/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/gh60/revc/keyboard.json b/keyboards/gh60/revc/keyboard.json index bc30efd02f5..ea9794d9d27 100644 --- a/keyboards/gh60/revc/keyboard.json +++ b/keyboards/gh60/revc/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/gh60/satan/config.h b/keyboards/gh60/satan/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/gh60/satan/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/gh60/satan/keyboard.json b/keyboards/gh60/satan/keyboard.json index 54e9d42bcd4..e3f26852970 100644 --- a/keyboards/gh60/satan/keyboard.json +++ b/keyboards/gh60/satan/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/ghs/rar/config.h b/keyboards/ghs/rar/config.h deleted file mode 100644 index 13265701b04..00000000000 --- a/keyboards/ghs/rar/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Gone Hacking Studio - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ghs/rar/keyboard.json b/keyboards/ghs/rar/keyboard.json index e033b08f510..22b133c8f99 100644 --- a/keyboards/ghs/rar/keyboard.json +++ b/keyboards/ghs/rar/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "D1"], "rows": ["B0", "B7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2"] diff --git a/keyboards/gkeyboard/gkb_m16/config.h b/keyboards/gkeyboard/gkb_m16/config.h deleted file mode 100644 index a8deb9de2aa..00000000000 --- a/keyboards/gkeyboard/gkb_m16/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 gkeyboard - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/gkeyboard/gkb_m16/keyboard.json b/keyboards/gkeyboard/gkb_m16/keyboard.json index 0d4ddbd4c3c..1f1fe50a678 100644 --- a/keyboards/gkeyboard/gkb_m16/keyboard.json +++ b/keyboards/gkeyboard/gkb_m16/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7"], "rows": ["D4", "D5", "D6", "D7"] diff --git a/keyboards/gkeyboard/gpad8_2r/config.h b/keyboards/gkeyboard/gpad8_2r/config.h deleted file mode 100644 index 82f451e0065..00000000000 --- a/keyboards/gkeyboard/gpad8_2r/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2023 gkeyboard (@gkeyboard) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/gkeyboard/gpad8_2r/keyboard.json b/keyboards/gkeyboard/gpad8_2r/keyboard.json index 52e733f9617..6c9a779b05e 100644 --- a/keyboards/gkeyboard/gpad8_2r/keyboard.json +++ b/keyboards/gkeyboard/gpad8_2r/keyboard.json @@ -20,6 +20,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["GP12", "GP11", "GP10", "GP9"], "rows": ["GP4", "GP5", "GP6"] diff --git a/keyboards/gl516/a52gl/config.h b/keyboards/gl516/a52gl/config.h index a4114e1ca6e..7296abd723b 100644 --- a/keyboards/gl516/a52gl/config.h +++ b/keyboards/gl516/a52gl/config.h @@ -25,8 +25,3 @@ along with this program. If not, see . // wiring of each half #define MATRIX_ROW_PINS { D1, D0, D4, C6 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2 } - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/gl516/a52gl/keyboard.json b/keyboards/gl516/a52gl/keyboard.json index 54fbce6bdad..ad4921f6358 100644 --- a/keyboards/gl516/a52gl/keyboard.json +++ b/keyboards/gl516/a52gl/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/gl516/j73gl/config.h b/keyboards/gl516/j73gl/config.h index 16d7526f814..dc93e327c31 100644 --- a/keyboards/gl516/j73gl/config.h +++ b/keyboards/gl516/j73gl/config.h @@ -25,8 +25,3 @@ along with this program. If not, see . // wiring of each half #define MATRIX_ROW_PINS { D1, D0, D4, C6, D7 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, E6 } - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/gl516/j73gl/keyboard.json b/keyboards/gl516/j73gl/keyboard.json index b252363f700..5fba198a718 100644 --- a/keyboards/gl516/j73gl/keyboard.json +++ b/keyboards/gl516/j73gl/keyboard.json @@ -34,6 +34,12 @@ "extrakey": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/gl516/n51gl/config.h b/keyboards/gl516/n51gl/config.h index a4114e1ca6e..7296abd723b 100644 --- a/keyboards/gl516/n51gl/config.h +++ b/keyboards/gl516/n51gl/config.h @@ -25,8 +25,3 @@ along with this program. If not, see . // wiring of each half #define MATRIX_ROW_PINS { D1, D0, D4, C6 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2 } - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/gl516/n51gl/keyboard.json b/keyboards/gl516/n51gl/keyboard.json index 0e54ee52a45..c1ea4ab5791 100644 --- a/keyboards/gl516/n51gl/keyboard.json +++ b/keyboards/gl516/n51gl/keyboard.json @@ -40,6 +40,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/gmmk/gmmk2/p65/config.h b/keyboards/gmmk/gmmk2/p65/config.h index 4ea6b3d7392..6d66d0147d2 100644 --- a/keyboards/gmmk/gmmk2/p65/config.h +++ b/keyboards/gmmk/gmmk2/p65/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* SPI Config for LED Driver */ #define SPI_DRIVER SPIDM2 #define SPI_SCK_PIN B13 diff --git a/keyboards/gmmk/gmmk2/p65/info.json b/keyboards/gmmk/gmmk2/p65/info.json index 91080575194..aa93e87f624 100644 --- a/keyboards/gmmk/gmmk2/p65/info.json +++ b/keyboards/gmmk/gmmk2/p65/info.json @@ -1,4 +1,10 @@ { + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgb_matrix": { "animations": { "alphas_mods": true, @@ -48,4 +54,4 @@ "driver": "aw20216s", "sleep": true } -} \ No newline at end of file +} diff --git a/keyboards/gmmk/gmmk2/p96/config.h b/keyboards/gmmk/gmmk2/p96/config.h index 2b73b4a396c..1b246e4f3fa 100644 --- a/keyboards/gmmk/gmmk2/p96/config.h +++ b/keyboards/gmmk/gmmk2/p96/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* External spi flash */ #define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14 diff --git a/keyboards/gmmk/gmmk2/p96/info.json b/keyboards/gmmk/gmmk2/p96/info.json index 91080575194..aa93e87f624 100644 --- a/keyboards/gmmk/gmmk2/p96/info.json +++ b/keyboards/gmmk/gmmk2/p96/info.json @@ -1,4 +1,10 @@ { + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgb_matrix": { "animations": { "alphas_mods": true, @@ -48,4 +54,4 @@ "driver": "aw20216s", "sleep": true } -} \ No newline at end of file +} diff --git a/keyboards/gmmk/numpad/config.h b/keyboards/gmmk/numpad/config.h index 8f8c893af44..11507c56b9f 100644 --- a/keyboards/gmmk/numpad/config.h +++ b/keyboards/gmmk/numpad/config.h @@ -20,9 +20,6 @@ #define SLIDER_PIN B0 #define MIDI_ADVANCED -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE - #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN B3 #define SPI_MOSI_PIN B5 diff --git a/keyboards/gmmk/numpad/keyboard.json b/keyboards/gmmk/numpad/keyboard.json index 70e2d3e6791..f5d64bf6cb1 100644 --- a/keyboards/gmmk/numpad/keyboard.json +++ b/keyboards/gmmk/numpad/keyboard.json @@ -82,6 +82,12 @@ "encoder": true, "midi": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/gmmk/pro/config.h b/keyboards/gmmk/pro/config.h index 258b57e49d6..0b14de1bab5 100644 --- a/keyboards/gmmk/pro/config.h +++ b/keyboards/gmmk/pro/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* SPI Config for LED Driver */ #define SPI_SCK_PIN A5 #define SPI_MOSI_PIN A6 diff --git a/keyboards/gmmk/pro/info.json b/keyboards/gmmk/pro/info.json index 91080575194..aa93e87f624 100644 --- a/keyboards/gmmk/pro/info.json +++ b/keyboards/gmmk/pro/info.json @@ -1,4 +1,10 @@ { + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgb_matrix": { "animations": { "alphas_mods": true, @@ -48,4 +54,4 @@ "driver": "aw20216s", "sleep": true } -} \ No newline at end of file +} diff --git a/keyboards/gon/nerd60/config.h b/keyboards/gon/nerd60/config.h deleted file mode 100644 index fa9a83d08ec..00000000000 --- a/keyboards/gon/nerd60/config.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/gon/nerd60/keyboard.json b/keyboards/gon/nerd60/keyboard.json index 33ad716b4fd..590b3f3d9ed 100644 --- a/keyboards/gon/nerd60/keyboard.json +++ b/keyboards/gon/nerd60/keyboard.json @@ -28,6 +28,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_ansi", "60_ansi_split_bs_rshift", "60_iso", "60_iso_split_bs_rshift"], "layouts": { "LAYOUT_all": { diff --git a/keyboards/gon/nerdtkl/config.h b/keyboards/gon/nerdtkl/config.h deleted file mode 100644 index fa9a83d08ec..00000000000 --- a/keyboards/gon/nerdtkl/config.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/gon/nerdtkl/keyboard.json b/keyboards/gon/nerdtkl/keyboard.json index 301cbaf19f1..ccf13ec3251 100644 --- a/keyboards/gon/nerdtkl/keyboard.json +++ b/keyboards/gon/nerdtkl/keyboard.json @@ -28,6 +28,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_tkl": { "layout": [ diff --git a/keyboards/gray_studio/aero75/config.h b/keyboards/gray_studio/aero75/config.h deleted file mode 100644 index 57da6a8ac13..00000000000 --- a/keyboards/gray_studio/aero75/config.h +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2022 Yizhen Liu (@edwardslau) -// SPDX-License-Identifier: GPL-2.0 - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/gray_studio/aero75/keyboard.json b/keyboards/gray_studio/aero75/keyboard.json index 4119aff5b6e..c0ede794c24 100644 --- a/keyboards/gray_studio/aero75/keyboard.json +++ b/keyboards/gray_studio/aero75/keyboard.json @@ -46,6 +46,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A3", "A5", "A4", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "B1", "A8", "B15", "B14", "B13"], "rows": ["A7", "A6", "B12", "A2", "A1", "A0"] diff --git a/keyboards/gray_studio/cod67/config.h b/keyboards/gray_studio/cod67/config.h deleted file mode 100644 index 578f469599a..00000000000 --- a/keyboards/gray_studio/cod67/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2018 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/gray_studio/cod67/keyboard.json b/keyboards/gray_studio/cod67/keyboard.json index e3687ce9591..fa946d9b339 100644 --- a/keyboards/gray_studio/cod67/keyboard.json +++ b/keyboards/gray_studio/cod67/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/gray_studio/space65/config.h b/keyboards/gray_studio/space65/config.h deleted file mode 100644 index b5b661bef2a..00000000000 --- a/keyboards/gray_studio/space65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/gray_studio/space65/keyboard.json b/keyboards/gray_studio/space65/keyboard.json index 7d5270d0da6..ffe825ff4c8 100644 --- a/keyboards/gray_studio/space65/keyboard.json +++ b/keyboards/gray_studio/space65/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B3", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2"], "rows": ["D0", "D1", "F0", "F4", "F1"] diff --git a/keyboards/gray_studio/space65r3/config.h b/keyboards/gray_studio/space65r3/config.h deleted file mode 100644 index 67315123e53..00000000000 --- a/keyboards/gray_studio/space65r3/config.h +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2022 Yizhen Liu (@edwardslau) -// SPDX-License-Identifier: GPL-2.0 -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/gray_studio/space65r3/keyboard.json b/keyboards/gray_studio/space65r3/keyboard.json index 5895a591944..bdf3624c58f 100644 --- a/keyboards/gray_studio/space65r3/keyboard.json +++ b/keyboards/gray_studio/space65r3/keyboard.json @@ -46,6 +46,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A3", "A5", "A4", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "B0", "A8", "B15", "B14", "B13"], "rows": ["A6", "B12", "A2", "A0", "A1"] diff --git a/keyboards/gray_studio/think65v3/config.h b/keyboards/gray_studio/think65v3/config.h deleted file mode 100644 index 6b1f49b5925..00000000000 --- a/keyboards/gray_studio/think65v3/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2023 Yizhen Liu (@edwardslau) -// SPDX-License-Identifier: GPL-2.0 -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - \ No newline at end of file diff --git a/keyboards/gray_studio/think65v3/keyboard.json b/keyboards/gray_studio/think65v3/keyboard.json index a61dd5efe1d..0c6b8e7938d 100644 --- a/keyboards/gray_studio/think65v3/keyboard.json +++ b/keyboards/gray_studio/think65v3/keyboard.json @@ -20,6 +20,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "ws2812": { "pin": "B10" }, diff --git a/keyboards/grid600/press/config.h b/keyboards/grid600/press/config.h deleted file mode 100644 index a7f362f47b7..00000000000 --- a/keyboards/grid600/press/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 mechmerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/grid600/press/keyboard.json b/keyboards/grid600/press/keyboard.json index df8f857afeb..74c3e7aad1a 100644 --- a/keyboards/grid600/press/keyboard.json +++ b/keyboards/grid600/press/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F4", "F5", "F6"], "rows": ["F0"] From 3400908b08284a8e2e17efa19053af874cd44e0c Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 21 May 2024 13:25:28 +0100 Subject: [PATCH 023/519] Move VIA config to keymap level (#23754) --- keyboards/atlantis/ak81_ve/ak81_ve.c | 4 +- keyboards/bandominedoni/config.h | 45 +++++++++---------- keyboards/bandominedoni/keymaps/via/config.h | 24 +++++++++- .../bemeier/bmek/{ => keymaps/via}/config.h | 0 keyboards/bioi/g60/config.h | 3 -- keyboards/bioi/g60/keymaps/via/config.h | 21 +++++++++ keyboards/bioi/morgan65/config.h | 2 - keyboards/bioi/morgan65/keymaps/via/config.h | 20 +++++++++ keyboards/cannonkeys/malicious_ergo/config.h | 8 ---- .../malicious_ergo/keymaps/via/config.h | 21 +++++++++ .../chlx/merro60/{ => keymaps/via}/config.h | 0 .../ppr_merro60/{ => keymaps/via}/config.h | 0 keyboards/chlx/str_merro60/config.h | 5 +-- .../chlx/str_merro60/keymaps/via/config.h | 21 +++++++++ .../seis_cinco/{ => keymaps/via}/config.h | 0 keyboards/dz60/{ => keymaps/via}/config.h | 0 .../dztech/bocc/{ => keymaps/via}/config.h | 0 keyboards/dztech/duo_s/config.h | 2 - keyboards/dztech/duo_s/keymaps/via/config.h | 19 ++++++++ keyboards/dztech/dz64rgb/config.h | 2 - keyboards/dztech/dz64rgb/keymaps/via/config.h | 19 ++++++++ keyboards/era/linx3/n8x/config.h | 2 - keyboards/era/linx3/n8x/keymaps/via/config.h | 6 +++ keyboards/ilumkb/primus75/config.h | 2 - .../ilumkb/primus75/keymaps/via/config.h | 18 ++++++++ keyboards/ilumkb/volcano660/config.h | 3 -- .../ilumkb/volcano660/keymaps/via/config.h | 19 ++++++++ keyboards/kbdfans/baguette66/rgb/config.h | 2 - .../baguette66/rgb/keymaps/via/config.h | 19 ++++++++ .../kbdfans/baguette66/soldered/config.h | 1 - .../baguette66/soldered/keymaps/via/config.h | 19 ++++++++ keyboards/kbdfans/boop65/rgb/config.h | 2 - .../kbdfans/boop65/rgb/keymaps/via/config.h | 19 ++++++++ keyboards/kbdfans/bounce/75/hotswap/config.h | 2 - .../bounce/75/hotswap/keymaps/via/config.h | 19 ++++++++ keyboards/kbdfans/bounce/75/soldered/config.h | 2 - .../bounce/75/soldered/keymaps/via/config.h | 19 ++++++++ .../kbd67/mkiirgb/keymaps/via/config.h | 19 ++++++++ keyboards/kbdfans/kbd67/mkiirgb/v4/config.h | 2 - keyboards/kbdfans/kbd67/mkiirgb_iso/config.h | 1 - .../kbd67/mkiirgb_iso/keymaps/via/config.h | 19 ++++++++ keyboards/kbdfans/kbd75hs/config.h | 2 - .../kbdfans/kbd75hs/keymaps/via/config.h | 19 ++++++++ keyboards/kbdfans/kbd75rgb/config.h | 1 - .../kbdfans/kbd75rgb/keymaps/via/config.h | 19 ++++++++ keyboards/kbdfans/odin/soldered/config.h | 2 - .../odin/soldered/keymaps/via/config.h | 5 ++- keyboards/kbdfans/phaseone/config.h | 2 - .../kbdfans/phaseone/keymaps/via/config.h | 19 ++++++++ keyboards/kbdfans/tiger80/config.h | 2 - .../kbdfans/tiger80/keymaps/via/config.h | 19 ++++++++ .../{rev1 => keymaps/via}/config.h | 0 .../keebio/quefrency/keymaps/via/config.h | 35 +++++++++++++++ keyboards/keebio/quefrency/rev1/config.h | 3 -- keyboards/keebio/quefrency/rev2/config.h | 4 -- keyboards/keebio/quefrency/rev3/config.h | 4 -- keyboards/keebio/sinc/keymaps/via/config.h | 23 ++++++++++ keyboards/keebio/sinc/rev1/config.h | 2 - keyboards/keebio/sinc/rev2/config.h | 2 - keyboards/keebsforall/coarse60/config.h | 3 -- .../keebsforall/coarse60/keymaps/via/config.h | 20 +++++++++ keyboards/melgeek/mj6xy/config.h | 4 -- keyboards/melgeek/mj6xy/keymaps/via/config.h | 21 +++++++++ keyboards/mt/mt64rgb/config.h | 3 -- keyboards/mt/mt64rgb/keymaps/via/config.h | 19 ++++++++ keyboards/playkbtw/pk64rgb/config.h | 3 -- .../playkbtw/pk64rgb/keymaps/via/config.h | 20 +++++++++ .../projectkb/alice/keymaps/via/config.h | 21 +++++++++ keyboards/projectkb/alice/rev1/config.h | 3 -- keyboards/projectkb/alice/rev2/config.h | 4 -- 70 files changed, 582 insertions(+), 113 deletions(-) rename keyboards/bemeier/bmek/{ => keymaps/via}/config.h (100%) create mode 100644 keyboards/bioi/g60/keymaps/via/config.h create mode 100644 keyboards/bioi/morgan65/keymaps/via/config.h create mode 100644 keyboards/cannonkeys/malicious_ergo/keymaps/via/config.h rename keyboards/chlx/merro60/{ => keymaps/via}/config.h (100%) rename keyboards/chlx/ppr_merro60/{ => keymaps/via}/config.h (100%) create mode 100644 keyboards/chlx/str_merro60/keymaps/via/config.h rename keyboards/daji/seis_cinco/{ => keymaps/via}/config.h (100%) rename keyboards/dz60/{ => keymaps/via}/config.h (100%) rename keyboards/dztech/bocc/{ => keymaps/via}/config.h (100%) create mode 100644 keyboards/dztech/duo_s/keymaps/via/config.h create mode 100644 keyboards/dztech/dz64rgb/keymaps/via/config.h create mode 100644 keyboards/era/linx3/n8x/keymaps/via/config.h create mode 100644 keyboards/ilumkb/primus75/keymaps/via/config.h create mode 100644 keyboards/ilumkb/volcano660/keymaps/via/config.h create mode 100644 keyboards/kbdfans/baguette66/rgb/keymaps/via/config.h create mode 100644 keyboards/kbdfans/baguette66/soldered/keymaps/via/config.h create mode 100644 keyboards/kbdfans/boop65/rgb/keymaps/via/config.h create mode 100644 keyboards/kbdfans/bounce/75/hotswap/keymaps/via/config.h create mode 100644 keyboards/kbdfans/bounce/75/soldered/keymaps/via/config.h create mode 100644 keyboards/kbdfans/kbd67/mkiirgb/keymaps/via/config.h create mode 100644 keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/via/config.h create mode 100644 keyboards/kbdfans/kbd75hs/keymaps/via/config.h create mode 100644 keyboards/kbdfans/kbd75rgb/keymaps/via/config.h create mode 100644 keyboards/kbdfans/phaseone/keymaps/via/config.h create mode 100644 keyboards/kbdfans/tiger80/keymaps/via/config.h rename keyboards/keebio/convolution/{rev1 => keymaps/via}/config.h (100%) create mode 100644 keyboards/keebio/quefrency/keymaps/via/config.h create mode 100644 keyboards/keebio/sinc/keymaps/via/config.h create mode 100644 keyboards/keebsforall/coarse60/keymaps/via/config.h create mode 100755 keyboards/melgeek/mj6xy/keymaps/via/config.h create mode 100644 keyboards/mt/mt64rgb/keymaps/via/config.h create mode 100644 keyboards/playkbtw/pk64rgb/keymaps/via/config.h create mode 100644 keyboards/projectkb/alice/keymaps/via/config.h diff --git a/keyboards/atlantis/ak81_ve/ak81_ve.c b/keyboards/atlantis/ak81_ve/ak81_ve.c index 2eda87b5b06..5f4ae20f15d 100644 --- a/keyboards/atlantis/ak81_ve/ak81_ve.c +++ b/keyboards/atlantis/ak81_ve/ak81_ve.c @@ -46,7 +46,7 @@ led_config_t g_led_config = { { } }; #endif -#if !defined(VIA_ENABLE) && defined(ENCODER_ENABLE) +#if defined(ENCODER_ENABLE) && !defined(ENCODER_MAP_ENABLE) bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; @@ -79,4 +79,4 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { } return true; } -#endif \ No newline at end of file +#endif diff --git a/keyboards/bandominedoni/config.h b/keyboards/bandominedoni/config.h index ecab8fc61fc..03bff281333 100644 --- a/keyboards/bandominedoni/config.h +++ b/keyboards/bandominedoni/config.h @@ -75,30 +75,27 @@ // RAINDROPS don't match well with layer LED indicator (oc) using rgb_matrix_set_color(). // #define ENABLE_RGB_MATRIX_RAINDROPS // #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS -// Recommended not to use these. -# ifndef VIA_ENABLE -# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT -# define ENABLE_RGB_MATRIX_BAND_VAL -# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL -# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL -# define ENABLE_RGB_MATRIX_CYCLE_ALL -# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN -# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON -# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN -# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL -# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL -# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL -# define ENABLE_RGB_MATRIX_DUAL_BEACON -# define ENABLE_RGB_MATRIX_RAINBOW_BEACON -# define ENABLE_RGB_MATRIX_HUE_BREATHING -# define ENABLE_RGB_MATRIX_HUE_PENDULUM -# define ENABLE_RGB_MATRIX_HUE_WAVE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS -# define ENABLE_RGB_MATRIX_MULTISPLASH -# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS -# endif +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_DUAL_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_BEACON +# define ENABLE_RGB_MATRIX_HUE_BREATHING +# define ENABLE_RGB_MATRIX_HUE_PENDULUM +# define ENABLE_RGB_MATRIX_HUE_WAVE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_MULTISPLASH +# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS # endif // CONSOLE_ENABLE #endif // RGB_MATRIX_ENABLE diff --git a/keyboards/bandominedoni/keymaps/via/config.h b/keyboards/bandominedoni/keymaps/via/config.h index 4dcac5104f0..6f27c9aea80 100644 --- a/keyboards/bandominedoni/keymaps/via/config.h +++ b/keyboards/bandominedoni/keymaps/via/config.h @@ -13,6 +13,26 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ - #pragma once +#pragma once -#define DYNAMIC_KEYMAP_LAYER_COUNT 4 +#undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +#undef ENABLE_RGB_MATRIX_BAND_VAL +#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +#undef ENABLE_RGB_MATRIX_CYCLE_ALL +#undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +#undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN +#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +#undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +#undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL +#undef ENABLE_RGB_MATRIX_DUAL_BEACON +#undef ENABLE_RGB_MATRIX_RAINBOW_BEACON +#undef ENABLE_RGB_MATRIX_HUE_BREATHING +#undef ENABLE_RGB_MATRIX_HUE_PENDULUM +#undef ENABLE_RGB_MATRIX_HUE_WAVE +#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +#undef ENABLE_RGB_MATRIX_MULTISPLASH +#undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS diff --git a/keyboards/bemeier/bmek/config.h b/keyboards/bemeier/bmek/keymaps/via/config.h similarity index 100% rename from keyboards/bemeier/bmek/config.h rename to keyboards/bemeier/bmek/keymaps/via/config.h diff --git a/keyboards/bioi/g60/config.h b/keyboards/bioi/g60/config.h index 30ce798073d..9f005f2d79f 100644 --- a/keyboards/bioi/g60/config.h +++ b/keyboards/bioi/g60/config.h @@ -20,6 +20,3 @@ along with this program. If not, see . /* key combination for magic key command */ #define KEYBOARD_LOCK_ENABLE #define MAGIC_KEY_LOCK L - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 3 -#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 1 diff --git a/keyboards/bioi/g60/keymaps/via/config.h b/keyboards/bioi/g60/keymaps/via/config.h new file mode 100644 index 00000000000..d934386e798 --- /dev/null +++ b/keyboards/bioi/g60/keymaps/via/config.h @@ -0,0 +1,21 @@ +/* +Copyright 2019 Basic I/O Instruments(Scott Wei) + +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 . +*/ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 3 +#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 1 diff --git a/keyboards/bioi/morgan65/config.h b/keyboards/bioi/morgan65/config.h index 78f53856f79..9f005f2d79f 100644 --- a/keyboards/bioi/morgan65/config.h +++ b/keyboards/bioi/morgan65/config.h @@ -20,5 +20,3 @@ along with this program. If not, see . /* key combination for magic key command */ #define KEYBOARD_LOCK_ENABLE #define MAGIC_KEY_LOCK L - -#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 1 diff --git a/keyboards/bioi/morgan65/keymaps/via/config.h b/keyboards/bioi/morgan65/keymaps/via/config.h new file mode 100644 index 00000000000..6dafe92cba0 --- /dev/null +++ b/keyboards/bioi/morgan65/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* +Copyright 2019 Basic I/O Instruments(Scott Wei) + +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 . +*/ + +#pragma once + +#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 1 diff --git a/keyboards/cannonkeys/malicious_ergo/config.h b/keyboards/cannonkeys/malicious_ergo/config.h index 8dce4c5c2e3..5736094ee52 100644 --- a/keyboards/cannonkeys/malicious_ergo/config.h +++ b/keyboards/cannonkeys/malicious_ergo/config.h @@ -1,5 +1,3 @@ -#pragma once - /* Copyright 2022 Andrew Kannan @@ -28,9 +26,6 @@ along with this program. If not, see . #define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PIN B13 -// 2 bits for 4 layout options -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 - #define SLEEP_LED_GPT_DRIVER GPTD1 /* @@ -48,6 +43,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - - - diff --git a/keyboards/cannonkeys/malicious_ergo/keymaps/via/config.h b/keyboards/cannonkeys/malicious_ergo/keymaps/via/config.h new file mode 100644 index 00000000000..9a8629d439e --- /dev/null +++ b/keyboards/cannonkeys/malicious_ergo/keymaps/via/config.h @@ -0,0 +1,21 @@ +/* +Copyright 2022 Andrew Kannan + +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 . +*/ + +#pragma once + +// 2 bits for 4 layout options +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/chlx/merro60/config.h b/keyboards/chlx/merro60/keymaps/via/config.h similarity index 100% rename from keyboards/chlx/merro60/config.h rename to keyboards/chlx/merro60/keymaps/via/config.h diff --git a/keyboards/chlx/ppr_merro60/config.h b/keyboards/chlx/ppr_merro60/keymaps/via/config.h similarity index 100% rename from keyboards/chlx/ppr_merro60/config.h rename to keyboards/chlx/ppr_merro60/keymaps/via/config.h diff --git a/keyboards/chlx/str_merro60/config.h b/keyboards/chlx/str_merro60/config.h index 2e886ebef5b..db81c12b8cc 100644 --- a/keyboards/chlx/str_merro60/config.h +++ b/keyboards/chlx/str_merro60/config.h @@ -17,7 +17,4 @@ along with this program. If not, see . #pragma once -# define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL + 5 - -/* VIA related config */ -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 +#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL + 5 diff --git a/keyboards/chlx/str_merro60/keymaps/via/config.h b/keyboards/chlx/str_merro60/keymaps/via/config.h new file mode 100644 index 00000000000..c1db72f6f5a --- /dev/null +++ b/keyboards/chlx/str_merro60/keymaps/via/config.h @@ -0,0 +1,21 @@ +/* +Copyright 2022 Alexander Lee + +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 . +*/ + +#pragma once + +/* VIA related config */ +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/daji/seis_cinco/config.h b/keyboards/daji/seis_cinco/keymaps/via/config.h similarity index 100% rename from keyboards/daji/seis_cinco/config.h rename to keyboards/daji/seis_cinco/keymaps/via/config.h diff --git a/keyboards/dz60/config.h b/keyboards/dz60/keymaps/via/config.h similarity index 100% rename from keyboards/dz60/config.h rename to keyboards/dz60/keymaps/via/config.h diff --git a/keyboards/dztech/bocc/config.h b/keyboards/dztech/bocc/keymaps/via/config.h similarity index 100% rename from keyboards/dztech/bocc/config.h rename to keyboards/dztech/bocc/keymaps/via/config.h diff --git a/keyboards/dztech/duo_s/config.h b/keyboards/dztech/duo_s/config.h index c180c019a43..0cb10801f5d 100644 --- a/keyboards/dztech/duo_s/config.h +++ b/keyboards/dztech/duo_s/config.h @@ -17,5 +17,3 @@ #pragma once #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 6) - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/dztech/duo_s/keymaps/via/config.h b/keyboards/dztech/duo_s/keymaps/via/config.h new file mode 100644 index 00000000000..12ea38ce794 --- /dev/null +++ b/keyboards/dztech/duo_s/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2021 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/dztech/dz64rgb/config.h b/keyboards/dztech/dz64rgb/config.h index 970fce9d72f..9d8075fc34c 100644 --- a/keyboards/dztech/dz64rgb/config.h +++ b/keyboards/dztech/dz64rgb/config.h @@ -19,5 +19,3 @@ #define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND #define USB_SUSPEND_WAKEUP_DELAY 5000 - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/dztech/dz64rgb/keymaps/via/config.h b/keyboards/dztech/dz64rgb/keymaps/via/config.h new file mode 100644 index 00000000000..e308f7ec980 --- /dev/null +++ b/keyboards/dztech/dz64rgb/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2021 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/era/linx3/n8x/config.h b/keyboards/era/linx3/n8x/config.h index b2cffb1151a..28548bad000 100644 --- a/keyboards/era/linx3/n8x/config.h +++ b/keyboards/era/linx3/n8x/config.h @@ -10,5 +10,3 @@ /* BACKLIGHT PWM */ #define BACKLIGHT_PWM_DRIVER PWMD1 #define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_B - -#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 4 \ No newline at end of file diff --git a/keyboards/era/linx3/n8x/keymaps/via/config.h b/keyboards/era/linx3/n8x/keymaps/via/config.h new file mode 100644 index 00000000000..7326eac2c79 --- /dev/null +++ b/keyboards/era/linx3/n8x/keymaps/via/config.h @@ -0,0 +1,6 @@ +// Copyright 2024 Hyojin Bak (@eerraa) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 4 diff --git a/keyboards/ilumkb/primus75/config.h b/keyboards/ilumkb/primus75/config.h index 0e5e8b9d255..ee087cc051a 100644 --- a/keyboards/ilumkb/primus75/config.h +++ b/keyboards/ilumkb/primus75/config.h @@ -20,5 +20,3 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/ilumkb/primus75/keymaps/via/config.h b/keyboards/ilumkb/primus75/keymaps/via/config.h new file mode 100644 index 00000000000..ebf1bc97e9e --- /dev/null +++ b/keyboards/ilumkb/primus75/keymaps/via/config.h @@ -0,0 +1,18 @@ +/* Copyright 2021 dztech + * + * 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 . + */ +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/ilumkb/volcano660/config.h b/keyboards/ilumkb/volcano660/config.h index fdd18467535..fa9d81cec23 100644 --- a/keyboards/ilumkb/volcano660/config.h +++ b/keyboards/ilumkb/volcano660/config.h @@ -19,6 +19,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* VIA related config */ -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 4 diff --git a/keyboards/ilumkb/volcano660/keymaps/via/config.h b/keyboards/ilumkb/volcano660/keymaps/via/config.h new file mode 100644 index 00000000000..42718c96102 --- /dev/null +++ b/keyboards/ilumkb/volcano660/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2020 dztech + * + * 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 . + */ +#pragma once + +/* VIA related config */ +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 4 diff --git a/keyboards/kbdfans/baguette66/rgb/config.h b/keyboards/kbdfans/baguette66/rgb/config.h index d309ba55eeb..b7bf44d9b68 100644 --- a/keyboards/kbdfans/baguette66/rgb/config.h +++ b/keyboards/kbdfans/baguette66/rgb/config.h @@ -17,5 +17,3 @@ #pragma once #define USB_SUSPEND_WAKEUP_DELAY 5000 - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/baguette66/rgb/keymaps/via/config.h b/keyboards/kbdfans/baguette66/rgb/keymaps/via/config.h new file mode 100644 index 00000000000..269d09df1fa --- /dev/null +++ b/keyboards/kbdfans/baguette66/rgb/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/baguette66/soldered/config.h b/keyboards/kbdfans/baguette66/soldered/config.h index 707393a1979..b7bf44d9b68 100644 --- a/keyboards/kbdfans/baguette66/soldered/config.h +++ b/keyboards/kbdfans/baguette66/soldered/config.h @@ -17,4 +17,3 @@ #pragma once #define USB_SUSPEND_WAKEUP_DELAY 5000 -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/baguette66/soldered/keymaps/via/config.h b/keyboards/kbdfans/baguette66/soldered/keymaps/via/config.h new file mode 100644 index 00000000000..269d09df1fa --- /dev/null +++ b/keyboards/kbdfans/baguette66/soldered/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/boop65/rgb/config.h b/keyboards/kbdfans/boop65/rgb/config.h index daf59859966..ec4042f5121 100644 --- a/keyboards/kbdfans/boop65/rgb/config.h +++ b/keyboards/kbdfans/boop65/rgb/config.h @@ -19,5 +19,3 @@ #define USB_SUSPEND_WAKEUP_DELAY 5000 #define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/boop65/rgb/keymaps/via/config.h b/keyboards/kbdfans/boop65/rgb/keymaps/via/config.h new file mode 100644 index 00000000000..08f011077b2 --- /dev/null +++ b/keyboards/kbdfans/boop65/rgb/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2021 Dztech + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/bounce/75/hotswap/config.h b/keyboards/kbdfans/bounce/75/hotswap/config.h index 56a23d83219..ec3794e0673 100644 --- a/keyboards/kbdfans/bounce/75/hotswap/config.h +++ b/keyboards/kbdfans/bounce/75/hotswap/config.h @@ -17,5 +17,3 @@ #pragma once #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD +8 ) - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 \ No newline at end of file diff --git a/keyboards/kbdfans/bounce/75/hotswap/keymaps/via/config.h b/keyboards/kbdfans/bounce/75/hotswap/keymaps/via/config.h new file mode 100644 index 00000000000..0ecbf93f8b2 --- /dev/null +++ b/keyboards/kbdfans/bounce/75/hotswap/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 \ No newline at end of file diff --git a/keyboards/kbdfans/bounce/75/soldered/config.h b/keyboards/kbdfans/bounce/75/soldered/config.h index 56a23d83219..ec3794e0673 100644 --- a/keyboards/kbdfans/bounce/75/soldered/config.h +++ b/keyboards/kbdfans/bounce/75/soldered/config.h @@ -17,5 +17,3 @@ #pragma once #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD +8 ) - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 \ No newline at end of file diff --git a/keyboards/kbdfans/bounce/75/soldered/keymaps/via/config.h b/keyboards/kbdfans/bounce/75/soldered/keymaps/via/config.h new file mode 100644 index 00000000000..269d09df1fa --- /dev/null +++ b/keyboards/kbdfans/bounce/75/soldered/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/via/config.h b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/via/config.h new file mode 100644 index 00000000000..12ea38ce794 --- /dev/null +++ b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2021 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h b/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h index 8ed4d909cb4..3390984411e 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h +++ b/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h @@ -17,5 +17,3 @@ #pragma once #define USB_SUSPEND_WAKEUP_DELAY 5000 - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h b/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h index f20015619bb..3390984411e 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h +++ b/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h @@ -17,4 +17,3 @@ #pragma once #define USB_SUSPEND_WAKEUP_DELAY 5000 -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/via/config.h b/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/via/config.h new file mode 100644 index 00000000000..12ea38ce794 --- /dev/null +++ b/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2021 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/kbd75hs/config.h b/keyboards/kbdfans/kbd75hs/config.h index 05ad34d3f57..4c42ba3c62e 100644 --- a/keyboards/kbdfans/kbd75hs/config.h +++ b/keyboards/kbdfans/kbd75hs/config.h @@ -17,5 +17,3 @@ #pragma once #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 6) - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/kbd75hs/keymaps/via/config.h b/keyboards/kbdfans/kbd75hs/keymaps/via/config.h new file mode 100644 index 00000000000..e777326dd59 --- /dev/null +++ b/keyboards/kbdfans/kbd75hs/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2021 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/kbd75rgb/config.h b/keyboards/kbdfans/kbd75rgb/config.h index d7040d41727..40a0ab60c20 100644 --- a/keyboards/kbdfans/kbd75rgb/config.h +++ b/keyboards/kbdfans/kbd75rgb/config.h @@ -17,4 +17,3 @@ #pragma once #define USB_SUSPEND_WAKEUP_DELAY 5000 -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/kbd75rgb/keymaps/via/config.h b/keyboards/kbdfans/kbd75rgb/keymaps/via/config.h new file mode 100644 index 00000000000..e777326dd59 --- /dev/null +++ b/keyboards/kbdfans/kbd75rgb/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2021 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/odin/soldered/config.h b/keyboards/kbdfans/odin/soldered/config.h index 3586d1d96a4..f45d64b858a 100644 --- a/keyboards/kbdfans/odin/soldered/config.h +++ b/keyboards/kbdfans/odin/soldered/config.h @@ -17,5 +17,3 @@ #pragma once #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 8) - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/odin/soldered/keymaps/via/config.h b/keyboards/kbdfans/odin/soldered/keymaps/via/config.h index fc9fbf68cda..aaa7f148109 100644 --- a/keyboards/kbdfans/odin/soldered/keymaps/via/config.h +++ b/keyboards/kbdfans/odin/soldered/keymaps/via/config.h @@ -14,4 +14,7 @@ * along with this program. If not, see . */ #pragma once -#define DYNAMIC_KEYMAP_LAYER_COUNT 2 \ No newline at end of file + +#define DYNAMIC_KEYMAP_LAYER_COUNT 2 + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/phaseone/config.h b/keyboards/kbdfans/phaseone/config.h index b090729a50d..cc19b0f44fc 100644 --- a/keyboards/kbdfans/phaseone/config.h +++ b/keyboards/kbdfans/phaseone/config.h @@ -22,5 +22,3 @@ #define LOCKING_RESYNC_ENABLE #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 6) - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 \ No newline at end of file diff --git a/keyboards/kbdfans/phaseone/keymaps/via/config.h b/keyboards/kbdfans/phaseone/keymaps/via/config.h new file mode 100644 index 00000000000..3afd289d1d5 --- /dev/null +++ b/keyboards/kbdfans/phaseone/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2022 Dztech + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/tiger80/config.h b/keyboards/kbdfans/tiger80/config.h index b58aa329ecc..05101e6a08c 100644 --- a/keyboards/kbdfans/tiger80/config.h +++ b/keyboards/kbdfans/tiger80/config.h @@ -17,5 +17,3 @@ #pragma once #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 6) - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/tiger80/keymaps/via/config.h b/keyboards/kbdfans/tiger80/keymaps/via/config.h new file mode 100644 index 00000000000..269d09df1fa --- /dev/null +++ b/keyboards/kbdfans/tiger80/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#pragma once + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/keebio/convolution/rev1/config.h b/keyboards/keebio/convolution/keymaps/via/config.h similarity index 100% rename from keyboards/keebio/convolution/rev1/config.h rename to keyboards/keebio/convolution/keymaps/via/config.h diff --git a/keyboards/keebio/quefrency/keymaps/via/config.h b/keyboards/keebio/quefrency/keymaps/via/config.h new file mode 100644 index 00000000000..bb1373dee30 --- /dev/null +++ b/keyboards/keebio/quefrency/keymaps/via/config.h @@ -0,0 +1,35 @@ +/* +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +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 . +*/ + +#pragma once + +#if defined(KEYBOARD_keebio_quefrency_rev1) + // Set 65% column (option 1) and Macro (option 2) on by default + #define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x60 + +#elif defined(KEYBOARD_keebio_quefrency_rev2) + // Set 65% column (option 3) and Macro (option 4) on by default + #define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x00DE + #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 + +#elif defined(KEYBOARD_keebio_quefrency_rev3) + // Set 65% column (option 3) and Macro (option 4) on by default + #define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x00DE + #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 + +#endif diff --git a/keyboards/keebio/quefrency/rev1/config.h b/keyboards/keebio/quefrency/rev1/config.h index 84cfc900694..058d8b6cb53 100644 --- a/keyboards/keebio/quefrency/rev1/config.h +++ b/keyboards/keebio/quefrency/rev1/config.h @@ -24,6 +24,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -// Set 65% column (option 1) and Macro (option 2) on by default -#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x60 diff --git a/keyboards/keebio/quefrency/rev2/config.h b/keyboards/keebio/quefrency/rev2/config.h index 60db14d5fbd..edc732d668b 100644 --- a/keyboards/keebio/quefrency/rev2/config.h +++ b/keyboards/keebio/quefrency/rev2/config.h @@ -21,7 +21,3 @@ along with this program. If not, see . #define SPLIT_HAND_PIN F7 #define CAPS_LOCK_LED_PIN B6 - -// Set 65% column (option 3) and Macro (option 4) on by default -#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x00DE -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/keebio/quefrency/rev3/config.h b/keyboards/keebio/quefrency/rev3/config.h index 60db14d5fbd..edc732d668b 100644 --- a/keyboards/keebio/quefrency/rev3/config.h +++ b/keyboards/keebio/quefrency/rev3/config.h @@ -21,7 +21,3 @@ along with this program. If not, see . #define SPLIT_HAND_PIN F7 #define CAPS_LOCK_LED_PIN B6 - -// Set 65% column (option 3) and Macro (option 4) on by default -#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x00DE -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/keebio/sinc/keymaps/via/config.h b/keyboards/keebio/sinc/keymaps/via/config.h new file mode 100644 index 00000000000..c1b110bf861 --- /dev/null +++ b/keyboards/keebio/sinc/keymaps/via/config.h @@ -0,0 +1,23 @@ +/* Copyright 2021 Danny Nguyen + +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 . +*/ + +#pragma once + +#if defined(KEYBOARD_keebio_sinc_rev1) || defined(KEYBOARD_keebio_sinc_rev2) + + #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 + +#endif diff --git a/keyboards/keebio/sinc/rev1/config.h b/keyboards/keebio/sinc/rev1/config.h index e8024190b4b..7ddfa79fafe 100644 --- a/keyboards/keebio/sinc/rev1/config.h +++ b/keyboards/keebio/sinc/rev1/config.h @@ -25,5 +25,3 @@ along with this program. If not, see . #define LOCKING_RESYNC_ENABLE #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/keebio/sinc/rev2/config.h b/keyboards/keebio/sinc/rev2/config.h index e8024190b4b..7ddfa79fafe 100644 --- a/keyboards/keebio/sinc/rev2/config.h +++ b/keyboards/keebio/sinc/rev2/config.h @@ -25,5 +25,3 @@ along with this program. If not, see . #define LOCKING_RESYNC_ENABLE #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) - -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/keebsforall/coarse60/config.h b/keyboards/keebsforall/coarse60/config.h index 6ea9b9aae2d..9a4bf0a144d 100644 --- a/keyboards/keebsforall/coarse60/config.h +++ b/keyboards/keebsforall/coarse60/config.h @@ -30,9 +30,6 @@ along with this program. If not, see . #define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PIN B13 -// 2 bits for 4 layout options -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/keebsforall/coarse60/keymaps/via/config.h b/keyboards/keebsforall/coarse60/keymaps/via/config.h new file mode 100644 index 00000000000..f55b94a87b7 --- /dev/null +++ b/keyboards/keebsforall/coarse60/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* +Copyright 2021 Elliot Powell + +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 . +*/ +#pragma once + +// 2 bits for 4 layout options +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/melgeek/mj6xy/config.h b/keyboards/melgeek/mj6xy/config.h index 263092c8f7b..79f977638b0 100755 --- a/keyboards/melgeek/mj6xy/config.h +++ b/keyboards/melgeek/mj6xy/config.h @@ -20,7 +20,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* VIA related config */ -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 - diff --git a/keyboards/melgeek/mj6xy/keymaps/via/config.h b/keyboards/melgeek/mj6xy/keymaps/via/config.h new file mode 100755 index 00000000000..bdbac3f182f --- /dev/null +++ b/keyboards/melgeek/mj6xy/keymaps/via/config.h @@ -0,0 +1,21 @@ +/* Copyright 2020 MelGeek + * + * 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 . + */ + +#pragma once + +/* VIA related config */ +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 + diff --git a/keyboards/mt/mt64rgb/config.h b/keyboards/mt/mt64rgb/config.h index cc215ee9a16..50c9ca5f64b 100644 --- a/keyboards/mt/mt64rgb/config.h +++ b/keyboards/mt/mt64rgb/config.h @@ -23,6 +23,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* VIA related config */ -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/mt/mt64rgb/keymaps/via/config.h b/keyboards/mt/mt64rgb/keymaps/via/config.h new file mode 100644 index 00000000000..d0bd4208847 --- /dev/null +++ b/keyboards/mt/mt64rgb/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2020 MT + * + * 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 . + */ +#pragma once + +/* VIA related config */ +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/playkbtw/pk64rgb/config.h b/keyboards/playkbtw/pk64rgb/config.h index 3922034290b..abcdafdbd00 100644 --- a/keyboards/playkbtw/pk64rgb/config.h +++ b/keyboards/playkbtw/pk64rgb/config.h @@ -24,6 +24,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* VIA related config */ -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/playkbtw/pk64rgb/keymaps/via/config.h b/keyboards/playkbtw/pk64rgb/keymaps/via/config.h new file mode 100644 index 00000000000..e7db5195bac --- /dev/null +++ b/keyboards/playkbtw/pk64rgb/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* Copyright 2021 Play Keyboard + * + * 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 . + */ + +#pragma once + +/* VIA related config */ +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/projectkb/alice/keymaps/via/config.h b/keyboards/projectkb/alice/keymaps/via/config.h new file mode 100644 index 00000000000..ab0b2896897 --- /dev/null +++ b/keyboards/projectkb/alice/keymaps/via/config.h @@ -0,0 +1,21 @@ +/* +Copyright 2015 Jun Wako + +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 . +*/ + +#pragma once + +// 2 bits for 4 layout options +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/projectkb/alice/rev1/config.h b/keyboards/projectkb/alice/rev1/config.h index dca7542513d..829976ebd6a 100644 --- a/keyboards/projectkb/alice/rev1/config.h +++ b/keyboards/projectkb/alice/rev1/config.h @@ -35,9 +35,6 @@ along with this program. If not, see . #define INDICATOR_PIN_1 A1 #define INDICATOR_PIN_2 A2 -// 2 bits for 4 layout options -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/projectkb/alice/rev2/config.h b/keyboards/projectkb/alice/rev2/config.h index f5d9ca0c3e6..6e250bb14ef 100644 --- a/keyboards/projectkb/alice/rev2/config.h +++ b/keyboards/projectkb/alice/rev2/config.h @@ -35,10 +35,6 @@ along with this program. If not, see . #define INDICATOR_PIN_1 A8 #define INDICATOR_PIN_2 B12 - -// 2 bits for 4 layout options -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 - /* * Feature disable options * These options are also useful to firmware size reduction. From 1c650aa55ca410bd888bb419604aa4feab56764e Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 21 May 2024 13:38:30 +0100 Subject: [PATCH 024/519] Remove includes of config.h (#23760) --- keyboards/converter/hp_46010a/matrix.c | 3 --- .../satan/keymaps/iso_split_rshift/config.h | 7 +----- keyboards/handwired/owlet60/matrix.c | 1 - keyboards/handwired/xealous/matrix.c | 1 - keyboards/kinesis/alvicstep/matrix.c | 1 - .../mini/keymaps/default-gsm-newbs/config.h | 24 ------------------- .../rama_works_m6_a/keymaps/naut/config.h | 24 ------------------- 7 files changed, 1 insertion(+), 60 deletions(-) delete mode 100644 keyboards/knops/mini/keymaps/default-gsm-newbs/config.h delete mode 100644 keyboards/wilba_tech/rama_works_m6_a/keymaps/naut/config.h diff --git a/keyboards/converter/hp_46010a/matrix.c b/keyboards/converter/hp_46010a/matrix.c index a36e8821a38..d9d9eec48f0 100644 --- a/keyboards/converter/hp_46010a/matrix.c +++ b/keyboards/converter/hp_46010a/matrix.c @@ -31,9 +31,6 @@ along with this program. If not, see . #include "timer.h" #include -#include "config.h" - - #ifndef DEBOUNCE # define DEBOUNCE 5 #endif diff --git a/keyboards/gh60/satan/keymaps/iso_split_rshift/config.h b/keyboards/gh60/satan/keymaps/iso_split_rshift/config.h index 6795cf6c979..7f3ca253aa5 100644 --- a/keyboards/gh60/satan/keymaps/iso_split_rshift/config.h +++ b/keyboards/gh60/satan/keymaps/iso_split_rshift/config.h @@ -15,13 +15,8 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" +#pragma once // only change #undef WS2812_DI_PIN #define WS2812_DI_PIN B2 - -#endif diff --git a/keyboards/handwired/owlet60/matrix.c b/keyboards/handwired/owlet60/matrix.c index 43895468e9d..7ef5d66a9fb 100644 --- a/keyboards/handwired/owlet60/matrix.c +++ b/keyboards/handwired/owlet60/matrix.c @@ -26,7 +26,6 @@ along with this program. If not, see . #include "debug.h" #include "util.h" #include "matrix.h" -#include "config.h" #include "timer.h" #if (MATRIX_COLS <= 8) diff --git a/keyboards/handwired/xealous/matrix.c b/keyboards/handwired/xealous/matrix.c index 46410b986dc..b8ae9fd7385 100644 --- a/keyboards/handwired/xealous/matrix.c +++ b/keyboards/handwired/xealous/matrix.c @@ -27,7 +27,6 @@ along with this program. If not, see . #include "util.h" #include "matrix.h" #include "split_util.h" -#include "config.h" #include "timer.h" // Copy this code to split_common/matrix.c, diff --git a/keyboards/kinesis/alvicstep/matrix.c b/keyboards/kinesis/alvicstep/matrix.c index e1e637725b2..e45b9823c19 100644 --- a/keyboards/kinesis/alvicstep/matrix.c +++ b/keyboards/kinesis/alvicstep/matrix.c @@ -28,7 +28,6 @@ along with this program. If not, see . #include "util.h" #include "matrix.h" #include "led.h" -#include "config.h" #ifndef DEBOUNCE # define DEBOUNCE 5 diff --git a/keyboards/knops/mini/keymaps/default-gsm-newbs/config.h b/keyboards/knops/mini/keymaps/default-gsm-newbs/config.h deleted file mode 100644 index 999d8876c2b..00000000000 --- a/keyboards/knops/mini/keymaps/default-gsm-newbs/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2017 Pawnerd - * - * 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 . - */ - -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -// place overrides here - -#endif diff --git a/keyboards/wilba_tech/rama_works_m6_a/keymaps/naut/config.h b/keyboards/wilba_tech/rama_works_m6_a/keymaps/naut/config.h deleted file mode 100644 index 7f642203aac..00000000000 --- a/keyboards/wilba_tech/rama_works_m6_a/keymaps/naut/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2018 Wilba - * - * 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 . - */ - -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -// place overrides here - -#endif \ No newline at end of file From 0a84bf8b574b0efdf4ea729b3204ea32ffceef6e Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Tue, 21 May 2024 15:54:13 -0700 Subject: [PATCH 025/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: F (#23757) Affects: - `fallacy` - `ffkeebs/puca` - `fjlabs/7vhotswap` - `fjlabs/ad65` - `fjlabs/avalon` - `fjlabs/bks65` - `fjlabs/bks65solder` - `fjlabs/bolsa65` - `fjlabs/kf87` - `fjlabs/kyuu` - `fjlabs/ldk65` - `fjlabs/midway60` - `fjlabs/mk61rgbansi` - `fjlabs/peaker` - `fjlabs/polaris` - `fjlabs/ready100` - `fjlabs/sinanju` - `fjlabs/sinanjuwk` - `fjlabs/solanis` - `fjlabs/swordfish` - `fjlabs/tf60ansi` - `fjlabs/tf60v2` - `fjlabs/tf65rgbv2` - `flehrad/downbubble` - `flehrad/numbrero` - `flehrad/snagpad` - `flehrad/tradestation` - `fleuron` - `fluorite` - `flx/lodestone` - `flxlb/zplit` - `foostan/cornelius` - `forever65` - `fortitude60/rev1` - `foxlab/key65/hotswap` - `foxlab/key65/universal` - `foxlab/leaf60/hotswap` - `foxlab/leaf60/universal` - `foxlab/time80` - `fr4/southpaw75` - `fractal` - `fungo/rev1` - `funky40` --- keyboards/fallacy/config.h | 8 ---- keyboards/fallacy/keyboard.json | 6 +++ keyboards/ffkeebs/puca/config.h | 23 ----------- keyboards/ffkeebs/puca/keyboard.json | 6 +++ keyboards/fjlabs/7vhotswap/config.h | 41 ------------------- keyboards/fjlabs/7vhotswap/keyboard.json | 6 +++ keyboards/fjlabs/ad65/config.h | 41 ------------------- keyboards/fjlabs/ad65/keyboard.json | 6 +++ keyboards/fjlabs/avalon/config.h | 23 ----------- keyboards/fjlabs/avalon/keyboard.json | 6 +++ keyboards/fjlabs/bks65/config.h | 41 ------------------- keyboards/fjlabs/bks65/keyboard.json | 6 +++ keyboards/fjlabs/bks65solder/config.h | 41 ------------------- keyboards/fjlabs/bks65solder/keyboard.json | 6 +++ keyboards/fjlabs/bolsa65/config.h | 41 ------------------- keyboards/fjlabs/bolsa65/keyboard.json | 6 +++ keyboards/fjlabs/kf87/config.h | 41 ------------------- keyboards/fjlabs/kf87/keyboard.json | 6 +++ keyboards/fjlabs/kyuu/config.h | 41 ------------------- keyboards/fjlabs/kyuu/keyboard.json | 6 +++ keyboards/fjlabs/ldk65/config.h | 41 ------------------- keyboards/fjlabs/ldk65/keyboard.json | 6 +++ keyboards/fjlabs/midway60/config.h | 41 ------------------- keyboards/fjlabs/midway60/keyboard.json | 6 +++ keyboards/fjlabs/mk61rgbansi/config.h | 41 ------------------- keyboards/fjlabs/mk61rgbansi/keyboard.json | 6 +++ keyboards/fjlabs/peaker/config.h | 41 ------------------- keyboards/fjlabs/peaker/keyboard.json | 6 +++ keyboards/fjlabs/polaris/config.h | 41 ------------------- keyboards/fjlabs/polaris/keyboard.json | 6 +++ keyboards/fjlabs/ready100/config.h | 41 ------------------- keyboards/fjlabs/ready100/keyboard.json | 6 +++ keyboards/fjlabs/sinanju/config.h | 41 ------------------- keyboards/fjlabs/sinanju/keyboard.json | 6 +++ keyboards/fjlabs/sinanjuwk/config.h | 41 ------------------- keyboards/fjlabs/sinanjuwk/keyboard.json | 6 +++ keyboards/fjlabs/solanis/config.h | 41 ------------------- keyboards/fjlabs/solanis/keyboard.json | 6 +++ keyboards/fjlabs/swordfish/config.h | 41 ------------------- keyboards/fjlabs/swordfish/keyboard.json | 6 +++ keyboards/fjlabs/tf60ansi/config.h | 41 ------------------- keyboards/fjlabs/tf60ansi/keyboard.json | 6 +++ keyboards/fjlabs/tf60v2/config.h | 41 ------------------- keyboards/fjlabs/tf60v2/keyboard.json | 6 +++ keyboards/fjlabs/tf65rgbv2/config.h | 41 ------------------- keyboards/fjlabs/tf65rgbv2/keyboard.json | 6 +++ keyboards/flehrad/downbubble/config.h | 39 ------------------ keyboards/flehrad/downbubble/keyboard.json | 6 +++ keyboards/flehrad/numbrero/config.h | 7 ---- keyboards/flehrad/numbrero/keyboard.json | 6 +++ keyboards/flehrad/snagpad/config.h | 10 ----- keyboards/flehrad/snagpad/keyboard.json | 6 +++ keyboards/flehrad/tradestation/config.h | 22 ---------- keyboards/flehrad/tradestation/keyboard.json | 6 +++ keyboards/fleuron/config.h | 39 ------------------ keyboards/fleuron/keyboard.json | 6 +++ keyboards/fluorite/config.h | 39 ------------------ keyboards/fluorite/keyboard.json | 6 +++ keyboards/flx/lodestone/config.h | 22 ---------- keyboards/flx/lodestone/keyboard.json | 6 +++ keyboards/flxlb/zplit/config.h | 5 --- keyboards/flxlb/zplit/keyboard.json | 6 +++ keyboards/foostan/cornelius/config.h | 39 ------------------ keyboards/foostan/cornelius/keyboard.json | 6 +++ keyboards/forever65/config.h | 6 --- keyboards/forever65/keyboard.json | 6 +++ keyboards/fortitude60/rev1/config.h | 5 --- keyboards/fortitude60/rev1/keyboard.json | 6 +++ keyboards/foxlab/key65/hotswap/config.h | 38 ----------------- keyboards/foxlab/key65/hotswap/keyboard.json | 6 +++ keyboards/foxlab/key65/universal/config.h | 38 ----------------- .../foxlab/key65/universal/keyboard.json | 6 +++ keyboards/foxlab/leaf60/hotswap/config.h | 39 ------------------ keyboards/foxlab/leaf60/hotswap/keyboard.json | 6 +++ keyboards/foxlab/leaf60/universal/config.h | 39 ------------------ .../foxlab/leaf60/universal/keyboard.json | 6 +++ keyboards/foxlab/time80/config.h | 39 ------------------ keyboards/foxlab/time80/keyboard.json | 6 +++ keyboards/fr4/southpaw75/config.h | 23 ----------- keyboards/fr4/southpaw75/keyboard.json | 6 +++ keyboards/fractal/config.h | 7 ---- keyboards/fractal/keyboard.json | 6 +++ keyboards/fungo/rev1/config.h | 10 ----- keyboards/fungo/rev1/keyboard.json | 6 ++- keyboards/funky40/config.h | 22 ---------- keyboards/funky40/keyboard.json | 6 +++ 86 files changed, 257 insertions(+), 1363 deletions(-) delete mode 100644 keyboards/ffkeebs/puca/config.h delete mode 100644 keyboards/fjlabs/7vhotswap/config.h delete mode 100644 keyboards/fjlabs/ad65/config.h delete mode 100644 keyboards/fjlabs/avalon/config.h delete mode 100644 keyboards/fjlabs/bks65/config.h delete mode 100644 keyboards/fjlabs/bks65solder/config.h delete mode 100644 keyboards/fjlabs/bolsa65/config.h delete mode 100644 keyboards/fjlabs/kf87/config.h delete mode 100644 keyboards/fjlabs/kyuu/config.h delete mode 100644 keyboards/fjlabs/ldk65/config.h delete mode 100644 keyboards/fjlabs/midway60/config.h delete mode 100644 keyboards/fjlabs/mk61rgbansi/config.h delete mode 100644 keyboards/fjlabs/peaker/config.h delete mode 100644 keyboards/fjlabs/polaris/config.h delete mode 100644 keyboards/fjlabs/ready100/config.h delete mode 100644 keyboards/fjlabs/sinanju/config.h delete mode 100644 keyboards/fjlabs/sinanjuwk/config.h delete mode 100644 keyboards/fjlabs/solanis/config.h delete mode 100644 keyboards/fjlabs/swordfish/config.h delete mode 100644 keyboards/fjlabs/tf60ansi/config.h delete mode 100644 keyboards/fjlabs/tf60v2/config.h delete mode 100644 keyboards/fjlabs/tf65rgbv2/config.h delete mode 100644 keyboards/flehrad/downbubble/config.h delete mode 100644 keyboards/flehrad/numbrero/config.h delete mode 100644 keyboards/flehrad/snagpad/config.h delete mode 100644 keyboards/flehrad/tradestation/config.h delete mode 100644 keyboards/fleuron/config.h delete mode 100644 keyboards/fluorite/config.h delete mode 100644 keyboards/flx/lodestone/config.h delete mode 100644 keyboards/foostan/cornelius/config.h delete mode 100644 keyboards/foxlab/key65/hotswap/config.h delete mode 100644 keyboards/foxlab/key65/universal/config.h delete mode 100644 keyboards/foxlab/leaf60/hotswap/config.h delete mode 100644 keyboards/foxlab/leaf60/universal/config.h delete mode 100644 keyboards/foxlab/time80/config.h delete mode 100644 keyboards/fr4/southpaw75/config.h delete mode 100755 keyboards/fractal/config.h delete mode 100644 keyboards/funky40/config.h diff --git a/keyboards/fallacy/config.h b/keyboards/fallacy/config.h index 14df31805dd..ed6561e6aab 100755 --- a/keyboards/fallacy/config.h +++ b/keyboards/fallacy/config.h @@ -20,11 +20,3 @@ */ #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_LED_COUNT 3 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap - */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack - */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/fallacy/keyboard.json b/keyboards/fallacy/keyboard.json index fbeca239d9f..b1050f43541 100644 --- a/keyboards/fallacy/keyboard.json +++ b/keyboards/fallacy/keyboard.json @@ -40,6 +40,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["alice", "alice_split_bs"], "layout_aliases": { "LAYOUT_all": "LAYOUT_alice_split_bs", diff --git a/keyboards/ffkeebs/puca/config.h b/keyboards/ffkeebs/puca/config.h deleted file mode 100644 index ced239c8334..00000000000 --- a/keyboards/ffkeebs/puca/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sleepdealer - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ffkeebs/puca/keyboard.json b/keyboards/ffkeebs/puca/keyboard.json index 04f444869d7..2abd0cfc369 100644 --- a/keyboards/ffkeebs/puca/keyboard.json +++ b/keyboards/ffkeebs/puca/keyboard.json @@ -22,6 +22,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "B1", "B3", "B2", "B6"], "rows": ["B4", "E6", "D7", "B5", "C6", "F6"] diff --git a/keyboards/fjlabs/7vhotswap/config.h b/keyboards/fjlabs/7vhotswap/config.h deleted file mode 100644 index 2b28e8a484d..00000000000 --- a/keyboards/fjlabs/7vhotswap/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/7vhotswap/keyboard.json b/keyboards/fjlabs/7vhotswap/keyboard.json index 220cf28831f..03d8fe03b7d 100644 --- a/keyboards/fjlabs/7vhotswap/keyboard.json +++ b/keyboards/fjlabs/7vhotswap/keyboard.json @@ -41,6 +41,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_75_all": { "layout": [ diff --git a/keyboards/fjlabs/ad65/config.h b/keyboards/fjlabs/ad65/config.h deleted file mode 100644 index 084c49212ca..00000000000 --- a/keyboards/fjlabs/ad65/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/ad65/keyboard.json b/keyboards/fjlabs/ad65/keyboard.json index 19adad79325..853bc32f55d 100644 --- a/keyboards/fjlabs/ad65/keyboard.json +++ b/keyboards/fjlabs/ad65/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "65_ansi_blocker", "65_ansi_blocker_split_bs", diff --git a/keyboards/fjlabs/avalon/config.h b/keyboards/fjlabs/avalon/config.h deleted file mode 100644 index 46df2a0d6af..00000000000 --- a/keyboards/fjlabs/avalon/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/fjlabs/avalon/keyboard.json b/keyboards/fjlabs/avalon/keyboard.json index 2407c3ec26b..077286729cf 100644 --- a/keyboards/fjlabs/avalon/keyboard.json +++ b/keyboards/fjlabs/avalon/keyboard.json @@ -49,6 +49,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/fjlabs/bks65/config.h b/keyboards/fjlabs/bks65/config.h deleted file mode 100644 index 990e5335c31..00000000000 --- a/keyboards/fjlabs/bks65/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/bks65/keyboard.json b/keyboards/fjlabs/bks65/keyboard.json index 5be09bfe0d0..7b1a8db86e5 100644 --- a/keyboards/fjlabs/bks65/keyboard.json +++ b/keyboards/fjlabs/bks65/keyboard.json @@ -44,6 +44,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["65_ansi"], "layouts": { "LAYOUT_65_ansi": { diff --git a/keyboards/fjlabs/bks65solder/config.h b/keyboards/fjlabs/bks65solder/config.h deleted file mode 100644 index 990e5335c31..00000000000 --- a/keyboards/fjlabs/bks65solder/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/bks65solder/keyboard.json b/keyboards/fjlabs/bks65solder/keyboard.json index 609dc4cdbc0..59599bb5490 100644 --- a/keyboards/fjlabs/bks65solder/keyboard.json +++ b/keyboards/fjlabs/bks65solder/keyboard.json @@ -41,6 +41,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["65_ansi"], "layouts": { "LAYOUT_all": { diff --git a/keyboards/fjlabs/bolsa65/config.h b/keyboards/fjlabs/bolsa65/config.h deleted file mode 100644 index 990e5335c31..00000000000 --- a/keyboards/fjlabs/bolsa65/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/bolsa65/keyboard.json b/keyboards/fjlabs/bolsa65/keyboard.json index 9deb09fef29..dfa47e90bb5 100644 --- a/keyboards/fjlabs/bolsa65/keyboard.json +++ b/keyboards/fjlabs/bolsa65/keyboard.json @@ -22,6 +22,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["65_ansi_blocker"], "layouts": { "LAYOUT_65_ansi_blocker": { diff --git a/keyboards/fjlabs/kf87/config.h b/keyboards/fjlabs/kf87/config.h deleted file mode 100644 index 9f459585649..00000000000 --- a/keyboards/fjlabs/kf87/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/kf87/keyboard.json b/keyboards/fjlabs/kf87/keyboard.json index e4f48acc8ec..f0742b671e7 100644 --- a/keyboards/fjlabs/kf87/keyboard.json +++ b/keyboards/fjlabs/kf87/keyboard.json @@ -46,6 +46,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_tkl_all": { "layout": [ diff --git a/keyboards/fjlabs/kyuu/config.h b/keyboards/fjlabs/kyuu/config.h deleted file mode 100644 index 084c49212ca..00000000000 --- a/keyboards/fjlabs/kyuu/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/kyuu/keyboard.json b/keyboards/fjlabs/kyuu/keyboard.json index a16e2835cf2..a2c9732ad3e 100644 --- a/keyboards/fjlabs/kyuu/keyboard.json +++ b/keyboards/fjlabs/kyuu/keyboard.json @@ -45,6 +45,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_65_ansi_blocker_badge": { "layout": [ diff --git a/keyboards/fjlabs/ldk65/config.h b/keyboards/fjlabs/ldk65/config.h deleted file mode 100644 index 990e5335c31..00000000000 --- a/keyboards/fjlabs/ldk65/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/ldk65/keyboard.json b/keyboards/fjlabs/ldk65/keyboard.json index a9d997c67e0..c9b0946b9a2 100644 --- a/keyboards/fjlabs/ldk65/keyboard.json +++ b/keyboards/fjlabs/ldk65/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["65_ansi"], "layouts": { "LAYOUT_65_ansi": { diff --git a/keyboards/fjlabs/midway60/config.h b/keyboards/fjlabs/midway60/config.h deleted file mode 100644 index 9f459585649..00000000000 --- a/keyboards/fjlabs/midway60/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/midway60/keyboard.json b/keyboards/fjlabs/midway60/keyboard.json index 0f5b1e13bca..d05975699b6 100644 --- a/keyboards/fjlabs/midway60/keyboard.json +++ b/keyboards/fjlabs/midway60/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "60_ansi", "60_ansi_split_bs_rshift", diff --git a/keyboards/fjlabs/mk61rgbansi/config.h b/keyboards/fjlabs/mk61rgbansi/config.h deleted file mode 100644 index b352868d2d4..00000000000 --- a/keyboards/fjlabs/mk61rgbansi/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/mk61rgbansi/keyboard.json b/keyboards/fjlabs/mk61rgbansi/keyboard.json index de26f98ebe6..649a881a8da 100644 --- a/keyboards/fjlabs/mk61rgbansi/keyboard.json +++ b/keyboards/fjlabs/mk61rgbansi/keyboard.json @@ -46,6 +46,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_ansi"], "layouts": { "LAYOUT_60_ansi": { diff --git a/keyboards/fjlabs/peaker/config.h b/keyboards/fjlabs/peaker/config.h deleted file mode 100644 index 13c17d597d1..00000000000 --- a/keyboards/fjlabs/peaker/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2022 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/peaker/keyboard.json b/keyboards/fjlabs/peaker/keyboard.json index 73f4f754c31..4c07b348568 100644 --- a/keyboards/fjlabs/peaker/keyboard.json +++ b/keyboards/fjlabs/peaker/keyboard.json @@ -22,6 +22,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_tkl_all": { "layout": [ diff --git a/keyboards/fjlabs/polaris/config.h b/keyboards/fjlabs/polaris/config.h deleted file mode 100644 index 9f459585649..00000000000 --- a/keyboards/fjlabs/polaris/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/polaris/keyboard.json b/keyboards/fjlabs/polaris/keyboard.json index c4f3caf2879..674cf8484bc 100644 --- a/keyboards/fjlabs/polaris/keyboard.json +++ b/keyboards/fjlabs/polaris/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "60_ansi", "60_ansi_split_bs_rshift", diff --git a/keyboards/fjlabs/ready100/config.h b/keyboards/fjlabs/ready100/config.h deleted file mode 100644 index b352868d2d4..00000000000 --- a/keyboards/fjlabs/ready100/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/ready100/keyboard.json b/keyboards/fjlabs/ready100/keyboard.json index b5940b9c527..8b79b2b927a 100644 --- a/keyboards/fjlabs/ready100/keyboard.json +++ b/keyboards/fjlabs/ready100/keyboard.json @@ -42,6 +42,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_64key": "LAYOUT_64_ansi" }, diff --git a/keyboards/fjlabs/sinanju/config.h b/keyboards/fjlabs/sinanju/config.h deleted file mode 100644 index 13c17d597d1..00000000000 --- a/keyboards/fjlabs/sinanju/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2022 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/sinanju/keyboard.json b/keyboards/fjlabs/sinanju/keyboard.json index ef9cf0e872b..0ade74b77bd 100644 --- a/keyboards/fjlabs/sinanju/keyboard.json +++ b/keyboards/fjlabs/sinanju/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_60_ansi_wkl": { "layout": [ diff --git a/keyboards/fjlabs/sinanjuwk/config.h b/keyboards/fjlabs/sinanjuwk/config.h deleted file mode 100644 index 13c17d597d1..00000000000 --- a/keyboards/fjlabs/sinanjuwk/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2022 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/sinanjuwk/keyboard.json b/keyboards/fjlabs/sinanjuwk/keyboard.json index e825ae335e7..cb1565c6829 100644 --- a/keyboards/fjlabs/sinanjuwk/keyboard.json +++ b/keyboards/fjlabs/sinanjuwk/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_all": "LAYOUT_60_ansi_split_bs_rshift" }, diff --git a/keyboards/fjlabs/solanis/config.h b/keyboards/fjlabs/solanis/config.h deleted file mode 100644 index 68becd07670..00000000000 --- a/keyboards/fjlabs/solanis/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2022 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 \ No newline at end of file diff --git a/keyboards/fjlabs/solanis/keyboard.json b/keyboards/fjlabs/solanis/keyboard.json index 12103d10586..39cf7a1e69b 100644 --- a/keyboards/fjlabs/solanis/keyboard.json +++ b/keyboards/fjlabs/solanis/keyboard.json @@ -42,6 +42,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "tkl_ansi", "tkl_ansi_split_bs_rshift", diff --git a/keyboards/fjlabs/swordfish/config.h b/keyboards/fjlabs/swordfish/config.h deleted file mode 100644 index ea4c7011e14..00000000000 --- a/keyboards/fjlabs/swordfish/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2022 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/swordfish/keyboard.json b/keyboards/fjlabs/swordfish/keyboard.json index 331bae459c0..cc21269832e 100644 --- a/keyboards/fjlabs/swordfish/keyboard.json +++ b/keyboards/fjlabs/swordfish/keyboard.json @@ -41,6 +41,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_2u_bs": { "layout": [ diff --git a/keyboards/fjlabs/tf60ansi/config.h b/keyboards/fjlabs/tf60ansi/config.h deleted file mode 100644 index b352868d2d4..00000000000 --- a/keyboards/fjlabs/tf60ansi/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/tf60ansi/keyboard.json b/keyboards/fjlabs/tf60ansi/keyboard.json index 69ff0690a18..16ee46e833e 100644 --- a/keyboards/fjlabs/tf60ansi/keyboard.json +++ b/keyboards/fjlabs/tf60ansi/keyboard.json @@ -46,6 +46,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_ansi"], "layouts": { "LAYOUT_60_ansi": { diff --git a/keyboards/fjlabs/tf60v2/config.h b/keyboards/fjlabs/tf60v2/config.h deleted file mode 100644 index b352868d2d4..00000000000 --- a/keyboards/fjlabs/tf60v2/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/tf60v2/keyboard.json b/keyboards/fjlabs/tf60v2/keyboard.json index 337a06843f1..b38cde89aad 100644 --- a/keyboards/fjlabs/tf60v2/keyboard.json +++ b/keyboards/fjlabs/tf60v2/keyboard.json @@ -46,6 +46,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_ansi_arrow"], "layouts": { "LAYOUT_60_ansi_arrow": { diff --git a/keyboards/fjlabs/tf65rgbv2/config.h b/keyboards/fjlabs/tf65rgbv2/config.h deleted file mode 100644 index b352868d2d4..00000000000 --- a/keyboards/fjlabs/tf65rgbv2/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/fjlabs/tf65rgbv2/keyboard.json b/keyboards/fjlabs/tf65rgbv2/keyboard.json index dd567c63b85..7bcc4f60b97 100644 --- a/keyboards/fjlabs/tf65rgbv2/keyboard.json +++ b/keyboards/fjlabs/tf65rgbv2/keyboard.json @@ -46,6 +46,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["65_ansi"], "layouts": { "LAYOUT_65_ansi": { diff --git a/keyboards/flehrad/downbubble/config.h b/keyboards/flehrad/downbubble/config.h deleted file mode 100644 index 64455593edf..00000000000 --- a/keyboards/flehrad/downbubble/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Don Chiou - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/flehrad/downbubble/keyboard.json b/keyboards/flehrad/downbubble/keyboard.json index 94f29b89f2b..f4f2222fa84 100644 --- a/keyboards/flehrad/downbubble/keyboard.json +++ b/keyboards/flehrad/downbubble/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "C7", "C6", "C5", "C4", "C3", "C2", "C1", "C0", "E1", "E0", "D7", "D6", "D5", "D4", "D3", "D2", "D1", "D0", "B7"], "rows": ["F1", "F2", "F3", "F4", "F5", "F6"] diff --git a/keyboards/flehrad/numbrero/config.h b/keyboards/flehrad/numbrero/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/flehrad/numbrero/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/flehrad/numbrero/keyboard.json b/keyboards/flehrad/numbrero/keyboard.json index 035aaa85b9c..f72b06ca7c7 100644 --- a/keyboards/flehrad/numbrero/keyboard.json +++ b/keyboards/flehrad/numbrero/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D4", "F5", "F4"], "rows": ["F6", "B5", "B4", "E6", "F7"] diff --git a/keyboards/flehrad/snagpad/config.h b/keyboards/flehrad/snagpad/config.h deleted file mode 100644 index 57ae7860260..00000000000 --- a/keyboards/flehrad/snagpad/config.h +++ /dev/null @@ -1,10 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* prevent stuck modifiers */ -//#define STRICT_LAYER_RELEASE diff --git a/keyboards/flehrad/snagpad/keyboard.json b/keyboards/flehrad/snagpad/keyboard.json index 3c513a4b485..1b2a2c4ae17 100644 --- a/keyboards/flehrad/snagpad/keyboard.json +++ b/keyboards/flehrad/snagpad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7"], "rows": ["D1", "D0", "D4", "C6", "D7"] diff --git a/keyboards/flehrad/tradestation/config.h b/keyboards/flehrad/tradestation/config.h deleted file mode 100644 index 41dafc075d8..00000000000 --- a/keyboards/flehrad/tradestation/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2019 flehrad - * - * 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 - * - * http://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 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/flehrad/tradestation/keyboard.json b/keyboards/flehrad/tradestation/keyboard.json index 52620b87be8..24a1e07dd45 100644 --- a/keyboards/flehrad/tradestation/keyboard.json +++ b/keyboards/flehrad/tradestation/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "B1", "D7", "E6"], "rows": ["D1", "C6", "D4", "D0"] diff --git a/keyboards/fleuron/config.h b/keyboards/fleuron/config.h deleted file mode 100644 index 60f42fbcda9..00000000000 --- a/keyboards/fleuron/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 James Underwood - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/fleuron/keyboard.json b/keyboards/fleuron/keyboard.json index dbf11d6161c..5cd7b7d8b26 100644 --- a/keyboards/fleuron/keyboard.json +++ b/keyboards/fleuron/keyboard.json @@ -16,6 +16,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "B6", "B3", "B5", "B4", "D7", "D4", "D5", "D3", "D2", "D1", "D0", "B7", "B0", "B1", "B2"], "rows": ["F0", "F1", "F4", "F5", "F6", "F7"] diff --git a/keyboards/fluorite/config.h b/keyboards/fluorite/config.h deleted file mode 100644 index 21c3b72e603..00000000000 --- a/keyboards/fluorite/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Mafuyu Ihotsuno - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/fluorite/keyboard.json b/keyboards/fluorite/keyboard.json index ca23f773b0e..2338c726712 100644 --- a/keyboards/fluorite/keyboard.json +++ b/keyboards/fluorite/keyboard.json @@ -24,6 +24,12 @@ "mousekey": false, "extrakey": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/flx/lodestone/config.h b/keyboards/flx/lodestone/config.h deleted file mode 100644 index 1d22c074e20..00000000000 --- a/keyboards/flx/lodestone/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Shaun Mitchell (Flex) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/flx/lodestone/keyboard.json b/keyboards/flx/lodestone/keyboard.json index c6dd4197da8..3a70655f2a0 100644 --- a/keyboards/flx/lodestone/keyboard.json +++ b/keyboards/flx/lodestone/keyboard.json @@ -19,6 +19,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "F5", "F6", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["B3", "B7", "F0", "F1", "F4"] diff --git a/keyboards/flxlb/zplit/config.h b/keyboards/flxlb/zplit/config.h index 6bde2711c23..832108a54bf 100644 --- a/keyboards/flxlb/zplit/config.h +++ b/keyboards/flxlb/zplit/config.h @@ -23,11 +23,6 @@ along with this program. If not, see . #define SPLIT_USB_DETECT #define SPLIT_USB_TIMEOUT 500 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/flxlb/zplit/keyboard.json b/keyboards/flxlb/zplit/keyboard.json index 2d5c33f49f3..2fcbd81742c 100644 --- a/keyboards/flxlb/zplit/keyboard.json +++ b/keyboards/flxlb/zplit/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B3", "D6", "D7", "B4", "B5"], "rows": ["D4", "F5", "F4", "F1"] diff --git a/keyboards/foostan/cornelius/config.h b/keyboards/foostan/cornelius/config.h deleted file mode 100644 index bb5de46d11a..00000000000 --- a/keyboards/foostan/cornelius/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 foostan - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/foostan/cornelius/keyboard.json b/keyboards/foostan/cornelius/keyboard.json index a8dba9c3e74..75cf098c4d9 100644 --- a/keyboards/foostan/cornelius/keyboard.json +++ b/keyboards/foostan/cornelius/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["B0", "B1", "B2", "C7"] diff --git a/keyboards/forever65/config.h b/keyboards/forever65/config.h index 76b9a373f18..71c25e869e6 100644 --- a/keyboards/forever65/config.h +++ b/keyboards/forever65/config.h @@ -15,12 +15,6 @@ */ #pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/forever65/keyboard.json b/keyboards/forever65/keyboard.json index 210d550b8d6..9f128c1177a 100644 --- a/keyboards/forever65/keyboard.json +++ b/keyboards/forever65/keyboard.json @@ -22,6 +22,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/fortitude60/rev1/config.h b/keyboards/fortitude60/rev1/config.h index 5dec5df1f12..c7ae5a8416e 100644 --- a/keyboards/fortitude60/rev1/config.h +++ b/keyboards/fortitude60/rev1/config.h @@ -22,11 +22,6 @@ along with this program. If not, see . #define SPLIT_USB_DETECT #define SPLIT_USB_TIMEOUT 500 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/fortitude60/rev1/keyboard.json b/keyboards/fortitude60/rev1/keyboard.json index f651c784247..cf3af329a87 100644 --- a/keyboards/fortitude60/rev1/keyboard.json +++ b/keyboards/fortitude60/rev1/keyboard.json @@ -34,6 +34,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/foxlab/key65/hotswap/config.h b/keyboards/foxlab/key65/hotswap/config.h deleted file mode 100644 index 43bd4ee5716..00000000000 --- a/keyboards/foxlab/key65/hotswap/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2020 Jumail Mundekkat / MxBlue - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/foxlab/key65/hotswap/keyboard.json b/keyboards/foxlab/key65/hotswap/keyboard.json index 0a98932eb00..b21893fa880 100644 --- a/keyboards/foxlab/key65/hotswap/keyboard.json +++ b/keyboards/foxlab/key65/hotswap/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F4", "F1", "F0", "B0", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["D2", "D1", "D0", "D3", "B3"] diff --git a/keyboards/foxlab/key65/universal/config.h b/keyboards/foxlab/key65/universal/config.h deleted file mode 100644 index 43bd4ee5716..00000000000 --- a/keyboards/foxlab/key65/universal/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2020 Jumail Mundekkat / MxBlue - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/foxlab/key65/universal/keyboard.json b/keyboards/foxlab/key65/universal/keyboard.json index 7523d7051d3..daaa1b37b1b 100644 --- a/keyboards/foxlab/key65/universal/keyboard.json +++ b/keyboards/foxlab/key65/universal/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "B0"], "rows": ["D0", "D1", "F0", "F4", "F1"] diff --git a/keyboards/foxlab/leaf60/hotswap/config.h b/keyboards/foxlab/leaf60/hotswap/config.h deleted file mode 100644 index d4515ef219d..00000000000 --- a/keyboards/foxlab/leaf60/hotswap/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Fox Lab - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/foxlab/leaf60/hotswap/keyboard.json b/keyboards/foxlab/leaf60/hotswap/keyboard.json index 8c74898e37d..b452fb91e37 100644 --- a/keyboards/foxlab/leaf60/hotswap/keyboard.json +++ b/keyboards/foxlab/leaf60/hotswap/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F4", "F1", "F0", "B0", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["D2", "D1", "D0", "D3", "D5"] diff --git a/keyboards/foxlab/leaf60/universal/config.h b/keyboards/foxlab/leaf60/universal/config.h deleted file mode 100644 index d4515ef219d..00000000000 --- a/keyboards/foxlab/leaf60/universal/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Fox Lab - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/foxlab/leaf60/universal/keyboard.json b/keyboards/foxlab/leaf60/universal/keyboard.json index 1cf7f235a51..93bfe45cce4 100644 --- a/keyboards/foxlab/leaf60/universal/keyboard.json +++ b/keyboards/foxlab/leaf60/universal/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2"], "rows": ["D0", "D1", "F0", "F4", "F1"] diff --git a/keyboards/foxlab/time80/config.h b/keyboards/foxlab/time80/config.h deleted file mode 100644 index 0b0ee839718..00000000000 --- a/keyboards/foxlab/time80/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Lukas Alexander - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/foxlab/time80/keyboard.json b/keyboards/foxlab/time80/keyboard.json index 29a374b5649..9902ed770d5 100644 --- a/keyboards/foxlab/time80/keyboard.json +++ b/keyboards/foxlab/time80/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5", "C4", "C3", "C2", "D7", "A0"], "rows": ["B1", "B2", "B3", "B5", "B6", "B7", "B0"] diff --git a/keyboards/fr4/southpaw75/config.h b/keyboards/fr4/southpaw75/config.h deleted file mode 100644 index bbb0ecc339a..00000000000 --- a/keyboards/fr4/southpaw75/config.h +++ /dev/null @@ -1,23 +0,0 @@ - /* - Copyright 2020 Kelvin Hall - - 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/fr4/southpaw75/keyboard.json b/keyboards/fr4/southpaw75/keyboard.json index d29aa877373..47fb954bf96 100644 --- a/keyboards/fr4/southpaw75/keyboard.json +++ b/keyboards/fr4/southpaw75/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/fractal/config.h b/keyboards/fractal/config.h deleted file mode 100755 index 5f360813239..00000000000 --- a/keyboards/fractal/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/fractal/keyboard.json b/keyboards/fractal/keyboard.json index 4086ff969fe..1e322e63b4a 100644 --- a/keyboards/fractal/keyboard.json +++ b/keyboards/fractal/keyboard.json @@ -21,6 +21,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["ortho_5x12"], "layouts": { "LAYOUT_ortho_5x12": { diff --git a/keyboards/fungo/rev1/config.h b/keyboards/fungo/rev1/config.h index bebed352e22..6d362f70c02 100644 --- a/keyboards/fungo/rev1/config.h +++ b/keyboards/fungo/rev1/config.h @@ -18,13 +18,3 @@ /* select keyboard master board - I2C or Serial communication master */ #define MASTER_RIGHT - -/*************************************/ -/** public parameter **/ -/*************************************/ - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/fungo/rev1/keyboard.json b/keyboards/fungo/rev1/keyboard.json index 988ba0f6431..06ebf87f05e 100644 --- a/keyboards/fungo/rev1/keyboard.json +++ b/keyboards/fungo/rev1/keyboard.json @@ -34,7 +34,11 @@ } }, "qmk": { - "tap_keycode_delay": 50 + "tap_keycode_delay": 50, + "locking": { + "enabled": true, + "resync": true + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/funky40/config.h b/keyboards/funky40/config.h deleted file mode 100644 index 6ee0c16d92c..00000000000 --- a/keyboards/funky40/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 /u/TheFourthCow - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE \ No newline at end of file diff --git a/keyboards/funky40/keyboard.json b/keyboards/funky40/keyboard.json index 5825c0e3b70..d76b9eee2e1 100644 --- a/keyboards/funky40/keyboard.json +++ b/keyboards/funky40/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "F5", "F4", "F7", "B1", "B6", "B2", "B3", "D2", "F6", "E6", "D7"], "rows": ["D4", "C6", "B4", "B5"] From 89b9a39614f0d788aa9f2ac0a338b30fb34745b7 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Tue, 21 May 2024 15:57:59 -0700 Subject: [PATCH 026/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: H, Part 4 (#23764) Affects: - `handwired/reclined` - `handwired/retro_refit` - `handwired/selene` - `handwired/sick68` - `handwired/sick_pad` - `handwired/skakunm_dactyl` - `handwired/slash` - `handwired/snatchpad` - `handwired/sono1` - `handwired/space_oddity` - `handwired/split89` - `handwired/split_cloud` - `handwired/steamvan/rev1` - `handwired/sticc14` - `handwired/stream_cheap/2x3` - `handwired/stream_cheap/2x4` - `handwired/stream_cheap/2x5` - `handwired/symmetric70_proto/promicro` - `handwired/symmetric70_proto/proton_c` - `handwired/symmetry60` - `handwired/tennie` - `handwired/terminus_mini` - `handwired/trackpoint` - `handwired/tritium_numpad` - `handwired/twadlee/tp69` - `handwired/unk/rev1` - `handwired/uthol/rev3` - `handwired/videowriter` - `handwired/wabi` - `handwired/woodpad` --- keyboards/handwired/reclined/config.h | 42 ------------------- keyboards/handwired/reclined/keyboard.json | 6 +++ keyboards/handwired/retro_refit/config.h | 5 --- keyboards/handwired/retro_refit/keyboard.json | 6 +++ keyboards/handwired/selene/config.h | 20 --------- keyboards/handwired/selene/keyboard.json | 6 +++ keyboards/handwired/sick68/config.h | 39 ----------------- keyboards/handwired/sick68/keyboard.json | 6 +++ keyboards/handwired/sick_pad/config.h | 23 ---------- keyboards/handwired/sick_pad/keyboard.json | 6 +++ keyboards/handwired/skakunm_dactyl/config.h | 5 --- .../handwired/skakunm_dactyl/keyboard.json | 6 +++ keyboards/handwired/slash/config.h | 23 ---------- keyboards/handwired/slash/keyboard.json | 6 +++ keyboards/handwired/snatchpad/config.h | 25 ----------- keyboards/handwired/snatchpad/keyboard.json | 6 +++ keyboards/handwired/sono1/config.h | 22 ---------- keyboards/handwired/sono1/info.json | 6 +++ keyboards/handwired/space_oddity/config.h | 6 --- .../handwired/space_oddity/keyboard.json | 6 +++ keyboards/handwired/split89/config.h | 5 --- keyboards/handwired/split89/keyboard.json | 6 +++ keyboards/handwired/split_cloud/config.h | 5 --- keyboards/handwired/split_cloud/keyboard.json | 6 +++ keyboards/handwired/steamvan/rev1/config.h | 5 --- .../handwired/steamvan/rev1/keyboard.json | 6 +++ keyboards/handwired/sticc14/config.h | 39 ----------------- keyboards/handwired/sticc14/keyboard.json | 6 +++ keyboards/handwired/stream_cheap/2x3/config.h | 7 ---- .../handwired/stream_cheap/2x3/keyboard.json | 6 +++ keyboards/handwired/stream_cheap/2x4/config.h | 7 ---- .../handwired/stream_cheap/2x4/keyboard.json | 6 +++ keyboards/handwired/stream_cheap/2x5/config.h | 7 ---- .../handwired/stream_cheap/2x5/keyboard.json | 6 +++ .../symmetric70_proto/promicro/config.h | 5 --- .../symmetric70_proto/promicro/info.json | 6 +++ .../symmetric70_proto/proton_c/config.h | 5 --- .../symmetric70_proto/proton_c/info.json | 6 +++ keyboards/handwired/symmetry60/config.h | 23 ---------- keyboards/handwired/symmetry60/keyboard.json | 6 +++ keyboards/handwired/tennie/config.h | 39 ----------------- keyboards/handwired/tennie/keyboard.json | 6 +++ keyboards/handwired/terminus_mini/config.h | 39 ----------------- .../handwired/terminus_mini/keyboard.json | 6 +++ keyboards/handwired/trackpoint/config.h | 3 -- keyboards/handwired/trackpoint/keyboard.json | 6 +++ keyboards/handwired/tritium_numpad/config.h | 39 ----------------- .../handwired/tritium_numpad/keyboard.json | 6 +++ keyboards/handwired/twadlee/tp69/config.h | 39 ----------------- .../handwired/twadlee/tp69/keyboard.json | 6 +++ keyboards/handwired/unk/rev1/config.h | 5 --- keyboards/handwired/unk/rev1/keyboard.json | 6 +++ keyboards/handwired/uthol/rev3/config.h | 5 --- keyboards/handwired/uthol/rev3/keyboard.json | 6 +++ keyboards/handwired/videowriter/config.h | 23 ---------- keyboards/handwired/videowriter/keyboard.json | 6 +++ keyboards/handwired/wabi/config.h | 20 --------- keyboards/handwired/wabi/keyboard.json | 6 +++ keyboards/handwired/woodpad/config.h | 39 ----------------- keyboards/handwired/woodpad/keyboard.json | 6 +++ 60 files changed, 180 insertions(+), 569 deletions(-) delete mode 100644 keyboards/handwired/reclined/config.h delete mode 100644 keyboards/handwired/selene/config.h delete mode 100644 keyboards/handwired/sick68/config.h delete mode 100644 keyboards/handwired/sick_pad/config.h delete mode 100644 keyboards/handwired/slash/config.h delete mode 100644 keyboards/handwired/snatchpad/config.h delete mode 100644 keyboards/handwired/sono1/config.h delete mode 100644 keyboards/handwired/sticc14/config.h delete mode 100644 keyboards/handwired/stream_cheap/2x3/config.h delete mode 100644 keyboards/handwired/stream_cheap/2x4/config.h delete mode 100644 keyboards/handwired/stream_cheap/2x5/config.h delete mode 100644 keyboards/handwired/symmetry60/config.h delete mode 100644 keyboards/handwired/tennie/config.h delete mode 100644 keyboards/handwired/terminus_mini/config.h delete mode 100644 keyboards/handwired/tritium_numpad/config.h delete mode 100644 keyboards/handwired/twadlee/tp69/config.h delete mode 100644 keyboards/handwired/videowriter/config.h delete mode 100644 keyboards/handwired/wabi/config.h delete mode 100644 keyboards/handwired/woodpad/config.h diff --git a/keyboards/handwired/reclined/config.h b/keyboards/handwired/reclined/config.h deleted file mode 100644 index 0606be9b1b7..00000000000 --- a/keyboards/handwired/reclined/config.h +++ /dev/null @@ -1,42 +0,0 @@ -/* -Copyright 2018 Daniel Perrett - -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 . -*/ - -#pragma once - - - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/reclined/keyboard.json b/keyboards/handwired/reclined/keyboard.json index 993bcf407e2..ee57a40a71c 100644 --- a/keyboards/handwired/reclined/keyboard.json +++ b/keyboards/handwired/reclined/keyboard.json @@ -10,6 +10,12 @@ "extrakey": true, "mousekey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "F4", "B3", "F5", "B1", "F6", "D4", "D7", "D0", "E6", "D1", "B4"], "rows": ["D3", "C6", "B6", "B5"] diff --git a/keyboards/handwired/retro_refit/config.h b/keyboards/handwired/retro_refit/config.h index 8f6d8d5193f..fd2a955d8a3 100644 --- a/keyboards/handwired/retro_refit/config.h +++ b/keyboards/handwired/retro_refit/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* remap magic keys */ #define MAGIC_KEY_LOCK BSLS diff --git a/keyboards/handwired/retro_refit/keyboard.json b/keyboards/handwired/retro_refit/keyboard.json index d1a5831fc36..1e7812d578f 100644 --- a/keyboards/handwired/retro_refit/keyboard.json +++ b/keyboards/handwired/retro_refit/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "D2", "D3", "C7", "D5"], "rows": ["D4", "D7", "B4", "B5", "B6", "F7", "F6", "F5", "F4", "F1", "F0"] diff --git a/keyboards/handwired/selene/config.h b/keyboards/handwired/selene/config.h deleted file mode 100644 index 31c0cc59f75..00000000000 --- a/keyboards/handwired/selene/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2020 Bpendragon - * - * 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 . - */ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/selene/keyboard.json b/keyboards/handwired/selene/keyboard.json index 5e46cc4f324..592b51aaf40 100644 --- a/keyboards/handwired/selene/keyboard.json +++ b/keyboards/handwired/selene/keyboard.json @@ -23,6 +23,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A9", "A10", "B11", "B7", "B6", "B5", "B4", "B3", "B2", "B1", "B0", "C14", "A4", "A5", "A6", "A7", "A8", "A15", "A13", "A14", "B12"], "rows": ["B10", "B9", "B15", "B14", "B13", "B8"] diff --git a/keyboards/handwired/sick68/config.h b/keyboards/handwired/sick68/config.h deleted file mode 100644 index ee4bc0e70cf..00000000000 --- a/keyboards/handwired/sick68/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 umbynos - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/sick68/keyboard.json b/keyboards/handwired/sick68/keyboard.json index f5fbe24873c..339484791ff 100644 --- a/keyboards/handwired/sick68/keyboard.json +++ b/keyboards/handwired/sick68/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "D7", "E6", "B4", "B5", "B0", "D5", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D3", "D2", "D1", "D0", "D4"] diff --git a/keyboards/handwired/sick_pad/config.h b/keyboards/handwired/sick_pad/config.h deleted file mode 100644 index ee1c2446589..00000000000 --- a/keyboards/handwired/sick_pad/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Joel Schneider - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/sick_pad/keyboard.json b/keyboards/handwired/sick_pad/keyboard.json index 86457a704e2..ce76294a0d6 100644 --- a/keyboards/handwired/sick_pad/keyboard.json +++ b/keyboards/handwired/sick_pad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B9", "B15", "B14", "B13"], "rows": ["B0", "B1", "B2", "B3", "B4"] diff --git a/keyboards/handwired/skakunm_dactyl/config.h b/keyboards/handwired/skakunm_dactyl/config.h index 8b04fcdc713..168f20799e9 100644 --- a/keyboards/handwired/skakunm_dactyl/config.h +++ b/keyboards/handwired/skakunm_dactyl/config.h @@ -11,11 +11,6 @@ #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Enables This makes it easier for fast typists to use dual-function keys */ #define PERMISSIVE_HOLD diff --git a/keyboards/handwired/skakunm_dactyl/keyboard.json b/keyboards/handwired/skakunm_dactyl/keyboard.json index 91ee5b1fb6c..cc6f70b482d 100644 --- a/keyboards/handwired/skakunm_dactyl/keyboard.json +++ b/keyboards/handwired/skakunm_dactyl/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "D7", "E6", "B4", "B5"], "rows": ["B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/slash/config.h b/keyboards/handwired/slash/config.h deleted file mode 100644 index bde67936ea0..00000000000 --- a/keyboards/handwired/slash/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 4sdftemp - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/slash/keyboard.json b/keyboards/handwired/slash/keyboard.json index 4fd99ebeee3..a682624d8ef 100644 --- a/keyboards/handwired/slash/keyboard.json +++ b/keyboards/handwired/slash/keyboard.json @@ -24,6 +24,12 @@ "extrakey": true, "bluetooth": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/handwired/snatchpad/config.h b/keyboards/handwired/snatchpad/config.h deleted file mode 100644 index 4dee4933a81..00000000000 --- a/keyboards/handwired/snatchpad/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2022 xia0 (@xia0) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/snatchpad/keyboard.json b/keyboards/handwired/snatchpad/keyboard.json index 3ff80ad2fd6..d06fe2c0034 100644 --- a/keyboards/handwired/snatchpad/keyboard.json +++ b/keyboards/handwired/snatchpad/keyboard.json @@ -18,6 +18,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B3", "B2"], "rows": ["F4", "F5", "F6"] diff --git a/keyboards/handwired/sono1/config.h b/keyboards/handwired/sono1/config.h deleted file mode 100644 index c4105bdf5fe..00000000000 --- a/keyboards/handwired/sono1/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2021 DmNosachev - -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 . -*/ - -#pragma once - -/* mechanical locking support. NumLock key on the numpad uses Alps SKCL Lock switch */ -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/sono1/info.json b/keyboards/handwired/sono1/info.json index 85a698d2f4c..85e86051c3d 100644 --- a/keyboards/handwired/sono1/info.json +++ b/keyboards/handwired/sono1/info.json @@ -11,6 +11,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "usb": { "vid": "0x515A", "pid": "0x5331" diff --git a/keyboards/handwired/space_oddity/config.h b/keyboards/handwired/space_oddity/config.h index 400303c8b9e..85f8c623a5b 100644 --- a/keyboards/handwired/space_oddity/config.h +++ b/keyboards/handwired/space_oddity/config.h @@ -6,9 +6,3 @@ #define MOUSEKEY_TIME_TO_MAX 60 #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/space_oddity/keyboard.json b/keyboards/handwired/space_oddity/keyboard.json index b02b48ac627..ca4e10d16be 100644 --- a/keyboards/handwired/space_oddity/keyboard.json +++ b/keyboards/handwired/space_oddity/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B6", "B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "D3"], "rows": ["F4", "F5", "F6", "F7", "B1", "B3"] diff --git a/keyboards/handwired/split89/config.h b/keyboards/handwired/split89/config.h index 042c165a182..e12db37b971 100644 --- a/keyboards/handwired/split89/config.h +++ b/keyboards/handwired/split89/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . /* this will be tied to high (VCC with a 2k to 10k resistor) on the left keyboard half and tied to low (GND using a wire jumper only) on the right keyboard half. This allows a user to plug in a USB cable to either side and function correctly with or without a TRS/TRRS cable with a single hex file. */ #define SPLIT_HAND_PIN D1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/handwired/split89/keyboard.json b/keyboards/handwired/split89/keyboard.json index d30105844af..d28953ab5fa 100644 --- a/keyboards/handwired/split89/keyboard.json +++ b/keyboards/handwired/split89/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F4", "B5", "B4", "E6", "D7", "C6", "D4", "D2", "D3"], "rows": ["F6", "F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/split_cloud/config.h b/keyboards/handwired/split_cloud/config.h index faa2750cafe..f1ca0ce37bf 100644 --- a/keyboards/handwired/split_cloud/config.h +++ b/keyboards/handwired/split_cloud/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . /* left/right via compilation flag */ #define EE_HANDS -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronztize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/handwired/split_cloud/keyboard.json b/keyboards/handwired/split_cloud/keyboard.json index 6d28728f69a..8d242cc6e60 100644 --- a/keyboards/handwired/split_cloud/keyboard.json +++ b/keyboards/handwired/split_cloud/keyboard.json @@ -21,6 +21,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "split": { "enabled": true, "soft_serial_pin": "D3", diff --git a/keyboards/handwired/steamvan/rev1/config.h b/keyboards/handwired/steamvan/rev1/config.h index b1137a0122a..68fb8c595c9 100644 --- a/keyboards/handwired/steamvan/rev1/config.h +++ b/keyboards/handwired/steamvan/rev1/config.h @@ -17,10 +17,5 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID1 #define WS2812_SPI_MOSI_PAL_MODE 5 diff --git a/keyboards/handwired/steamvan/rev1/keyboard.json b/keyboards/handwired/steamvan/rev1/keyboard.json index 9808d50faae..9c4593bca77 100644 --- a/keyboards/handwired/steamvan/rev1/keyboard.json +++ b/keyboards/handwired/steamvan/rev1/keyboard.json @@ -19,6 +19,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A9", "A8", "B15", "B14", "B13", "A10", "B9", "B6", "B5", "B4", "B3", "A15"], "rows": ["A6", "A5", "A4", "A3"] diff --git a/keyboards/handwired/sticc14/config.h b/keyboards/handwired/sticc14/config.h deleted file mode 100644 index b4a9e4014d9..00000000000 --- a/keyboards/handwired/sticc14/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 ErkHal - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/sticc14/keyboard.json b/keyboards/handwired/sticc14/keyboard.json index 1c0d683a7c6..b3fb4a06e54 100644 --- a/keyboards/handwired/sticc14/keyboard.json +++ b/keyboards/handwired/sticc14/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B2", "B3"], "rows": ["F4", "F5", "F6", "F7", "B1"] diff --git a/keyboards/handwired/stream_cheap/2x3/config.h b/keyboards/handwired/stream_cheap/2x3/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/handwired/stream_cheap/2x3/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/stream_cheap/2x3/keyboard.json b/keyboards/handwired/stream_cheap/2x3/keyboard.json index b10b4f7a7c0..ff62fa8a271 100644 --- a/keyboards/handwired/stream_cheap/2x3/keyboard.json +++ b/keyboards/handwired/stream_cheap/2x3/keyboard.json @@ -18,6 +18,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D1", "C6", "B4"], diff --git a/keyboards/handwired/stream_cheap/2x4/config.h b/keyboards/handwired/stream_cheap/2x4/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/handwired/stream_cheap/2x4/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/stream_cheap/2x4/keyboard.json b/keyboards/handwired/stream_cheap/2x4/keyboard.json index 72e5e1814c0..3f058cfbe4c 100644 --- a/keyboards/handwired/stream_cheap/2x4/keyboard.json +++ b/keyboards/handwired/stream_cheap/2x4/keyboard.json @@ -21,6 +21,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D1", "D0", "D4", "C6"], diff --git a/keyboards/handwired/stream_cheap/2x5/config.h b/keyboards/handwired/stream_cheap/2x5/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/handwired/stream_cheap/2x5/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/stream_cheap/2x5/keyboard.json b/keyboards/handwired/stream_cheap/2x5/keyboard.json index ccf47996e35..8e2de67e627 100644 --- a/keyboards/handwired/stream_cheap/2x5/keyboard.json +++ b/keyboards/handwired/stream_cheap/2x5/keyboard.json @@ -18,6 +18,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D1", "C6", "B4", "B5", "B2"], diff --git a/keyboards/handwired/symmetric70_proto/promicro/config.h b/keyboards/handwired/symmetric70_proto/promicro/config.h index 07f30032e6b..43d9b1b4631 100644 --- a/keyboards/handwired/symmetric70_proto/promicro/config.h +++ b/keyboards/handwired/symmetric70_proto/promicro/config.h @@ -44,11 +44,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/handwired/symmetric70_proto/promicro/info.json b/keyboards/handwired/symmetric70_proto/promicro/info.json index e567fb283d0..f143f518eb7 100644 --- a/keyboards/handwired/symmetric70_proto/promicro/info.json +++ b/keyboards/handwired/symmetric70_proto/promicro/info.json @@ -5,6 +5,12 @@ "mousekey": false, "extrakey": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "split": { "soft_serial_pin": "D0" }, diff --git a/keyboards/handwired/symmetric70_proto/proton_c/config.h b/keyboards/handwired/symmetric70_proto/proton_c/config.h index e757e1e776f..97e64827f18 100644 --- a/keyboards/handwired/symmetric70_proto/proton_c/config.h +++ b/keyboards/handwired/symmetric70_proto/proton_c/config.h @@ -52,11 +52,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/handwired/symmetric70_proto/proton_c/info.json b/keyboards/handwired/symmetric70_proto/proton_c/info.json index 0b9e8584670..756fad94f91 100644 --- a/keyboards/handwired/symmetric70_proto/proton_c/info.json +++ b/keyboards/handwired/symmetric70_proto/proton_c/info.json @@ -5,5 +5,11 @@ "bootmagic": true, "mousekey": false, "extrakey": false + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/handwired/symmetry60/config.h b/keyboards/handwired/symmetry60/config.h deleted file mode 100644 index a85f398caec..00000000000 --- a/keyboards/handwired/symmetry60/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Marhalloweenvt - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/symmetry60/keyboard.json b/keyboards/handwired/symmetry60/keyboard.json index e8cbe495b1f..40afdf88c9e 100644 --- a/keyboards/handwired/symmetry60/keyboard.json +++ b/keyboards/handwired/symmetry60/keyboard.json @@ -40,6 +40,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "B6", "B5", "B4", "D7", "D6", "D4", "E6"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/handwired/tennie/config.h b/keyboards/handwired/tennie/config.h deleted file mode 100644 index dcbcfeaaa8c..00000000000 --- a/keyboards/handwired/tennie/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Jack Hildebrandt - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/tennie/keyboard.json b/keyboards/handwired/tennie/keyboard.json index 36c1266d50b..05143c1cb01 100644 --- a/keyboards/handwired/tennie/keyboard.json +++ b/keyboards/handwired/tennie/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "B4", "B5"], "rows": ["C6", "D4", "D0"] diff --git a/keyboards/handwired/terminus_mini/config.h b/keyboards/handwired/terminus_mini/config.h deleted file mode 100644 index 6243804dc58..00000000000 --- a/keyboards/handwired/terminus_mini/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 James Morgan - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/terminus_mini/keyboard.json b/keyboards/handwired/terminus_mini/keyboard.json index 1bf37da57b4..09346c81bf1 100644 --- a/keyboards/handwired/terminus_mini/keyboard.json +++ b/keyboards/handwired/terminus_mini/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "D0", "D5", "B6", "D4", "C7", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["B5", "B4", "D7", "D6"] diff --git a/keyboards/handwired/trackpoint/config.h b/keyboards/handwired/trackpoint/config.h index 8d4e88d3cb7..e7efa3e76b8 100644 --- a/keyboards/handwired/trackpoint/config.h +++ b/keyboards/handwired/trackpoint/config.h @@ -36,6 +36,3 @@ #define PS2_USART_ERROR (UCSR1A & ((1< - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/tritium_numpad/keyboard.json b/keyboards/handwired/tritium_numpad/keyboard.json index b87f4768219..e0cdf13ea20 100644 --- a/keyboards/handwired/tritium_numpad/keyboard.json +++ b/keyboards/handwired/tritium_numpad/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F6", "B1", "B2"], "rows": ["D1", "D0", "D4", "C6", "D7", "E6"] diff --git a/keyboards/handwired/twadlee/tp69/config.h b/keyboards/handwired/twadlee/tp69/config.h deleted file mode 100644 index 390c13b55cf..00000000000 --- a/keyboards/handwired/twadlee/tp69/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Tracy Wadleigh - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/twadlee/tp69/keyboard.json b/keyboards/handwired/twadlee/tp69/keyboard.json index 27e0325f92d..833aa8bdf85 100644 --- a/keyboards/handwired/twadlee/tp69/keyboard.json +++ b/keyboards/handwired/twadlee/tp69/keyboard.json @@ -22,6 +22,12 @@ "console": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/handwired/unk/rev1/config.h b/keyboards/handwired/unk/rev1/config.h index 2a7f301a6a9..4e339bd5530 100644 --- a/keyboards/handwired/unk/rev1/config.h +++ b/keyboards/handwired/unk/rev1/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define MASTER_LEFT // Comment this line for the right half firmware -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/handwired/unk/rev1/keyboard.json b/keyboards/handwired/unk/rev1/keyboard.json index acaca15f3b3..bfc4ee3c797 100644 --- a/keyboards/handwired/unk/rev1/keyboard.json +++ b/keyboards/handwired/unk/rev1/keyboard.json @@ -37,6 +37,12 @@ "extrakey": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/handwired/uthol/rev3/config.h b/keyboards/handwired/uthol/rev3/config.h index 569a38c699d..d6a4f17f0bc 100644 --- a/keyboards/handwired/uthol/rev3/config.h +++ b/keyboards/handwired/uthol/rev3/config.h @@ -26,9 +26,4 @@ #define OLED_DISPLAY_ADDRESS 0x3C #define OLED_RESET -1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define PERMISSIVE_HOLD diff --git a/keyboards/handwired/uthol/rev3/keyboard.json b/keyboards/handwired/uthol/rev3/keyboard.json index 8d826772b06..acb7c54e785 100644 --- a/keyboards/handwired/uthol/rev3/keyboard.json +++ b/keyboards/handwired/uthol/rev3/keyboard.json @@ -49,5 +49,11 @@ "extrakey": true, "encoder": true, "rgblight": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/handwired/videowriter/config.h b/keyboards/handwired/videowriter/config.h deleted file mode 100644 index d1f1e1b0bf2..00000000000 --- a/keyboards/handwired/videowriter/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 DmNosachev - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/videowriter/keyboard.json b/keyboards/handwired/videowriter/keyboard.json index c8b0141767e..f82a0cd07ea 100644 --- a/keyboards/handwired/videowriter/keyboard.json +++ b/keyboards/handwired/videowriter/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D7", "C6", "D1", "D0", "D4", "D2", "D3", "E6", "B4", "B5"] diff --git a/keyboards/handwired/wabi/config.h b/keyboards/handwired/wabi/config.h deleted file mode 100644 index 274c715a937..00000000000 --- a/keyboards/handwired/wabi/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Ross Montsinger -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/wabi/keyboard.json b/keyboards/handwired/wabi/keyboard.json index 26c82a209c2..68f9d910dae 100644 --- a/keyboards/handwired/wabi/keyboard.json +++ b/keyboards/handwired/wabi/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F1", "F0", "E6", "B3", "B7", "D0", "D1", "D2", "D3", "D4", "D6", "D7", "B5"], "rows": ["D5", "F5", "F6", "F7", "B0"] diff --git a/keyboards/handwired/woodpad/config.h b/keyboards/handwired/woodpad/config.h deleted file mode 100644 index 9113106abf3..00000000000 --- a/keyboards/handwired/woodpad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 WoodKeys - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/woodpad/keyboard.json b/keyboards/handwired/woodpad/keyboard.json index 3af8bd19df0..e6c07b2c425 100644 --- a/keyboards/handwired/woodpad/keyboard.json +++ b/keyboards/handwired/woodpad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B3", "B2", "B6"], "rows": ["D1", "D0", "D4", "C6", "D7"] From a1c142759480fbad6e947862c0995d040ae9d8d4 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Tue, 21 May 2024 16:03:56 -0700 Subject: [PATCH 027/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: H, Part 3 (#23763) Affects: - `handwired/jn68m` - `handwired/jopr` - `handwired/jot50` - `handwired/jotanck` - `handwired/jotpad16` - `handwired/jtallbean/split_65` - `handwired/juliet` - `handwired/k_numpad17` - `handwired/kbod` - `handwired/ks63` - `handwired/leftynumpad` - `handwired/lemonpad` - `handwired/m40/5x5_macropad` - `handwired/macroboard/f401` - `handwired/macroboard/f411` - `handwired/magicforce61` - `handwired/magicforce68` - `handwired/mechboards_micropad` - `handwired/minorca` - `handwired/mutepad` - `handwired/nicekey` - `handwired/nortontechpad` - `handwired/not_so_minidox` - `handwired/novem` - `handwired/nozbe_macro` - `handwired/numpad20` - `handwired/obuwunkunubi/spaget` - `handwired/oem_ansi_fullsize` - `handwired/onekey` - `handwired/ortho5x13` - `handwired/ortho5x14` - `handwired/p65rgb` - `handwired/pilcrow` - `handwired/polly40` - `handwired/postageboard/mini` - `handwired/postageboard/r1` - `handwired/prime_exl` - `handwired/prime_exl_plus` --- keyboards/handwired/jn68m/config.h | 24 ----------- keyboards/handwired/jn68m/keyboard.json | 6 +++ keyboards/handwired/jopr/config.h | 6 --- keyboards/handwired/jopr/keyboard.json | 6 +++ keyboards/handwired/jot50/config.h | 7 ---- keyboards/handwired/jot50/keyboard.json | 6 +++ keyboards/handwired/jotanck/config.h | 6 --- keyboards/handwired/jotanck/keyboard.json | 6 +++ keyboards/handwired/jotpad16/config.h | 6 --- keyboards/handwired/jotpad16/keyboard.json | 6 +++ .../handwired/jtallbean/split_65/config.h | 5 --- .../jtallbean/split_65/keyboard.json | 6 +++ keyboards/handwired/juliet/config.h | 39 ------------------ keyboards/handwired/juliet/keyboard.json | 6 +++ keyboards/handwired/k_numpad17/config.h | 25 ----------- keyboards/handwired/k_numpad17/keyboard.json | 6 +++ keyboards/handwired/kbod/config.h | 39 ------------------ keyboards/handwired/kbod/keyboard.json | 6 +++ keyboards/handwired/ks63/config.h | 5 --- keyboards/handwired/ks63/keyboard.json | 6 +++ keyboards/handwired/leftynumpad/config.h | 39 ------------------ keyboards/handwired/leftynumpad/keyboard.json | 6 +++ keyboards/handwired/lemonpad/config.h | 38 ----------------- keyboards/handwired/lemonpad/keyboard.json | 6 +++ keyboards/handwired/m40/5x5_macropad/config.h | 25 ----------- .../handwired/m40/5x5_macropad/keyboard.json | 6 +++ keyboards/handwired/macroboard/config.h | 5 --- .../handwired/macroboard/f401/keyboard.json | 6 +++ .../handwired/macroboard/f411/keyboard.json | 6 +++ keyboards/handwired/magicforce61/config.h | 39 ------------------ .../handwired/magicforce61/keyboard.json | 6 +++ keyboards/handwired/magicforce68/config.h | 39 ------------------ .../handwired/magicforce68/keyboard.json | 6 +++ .../handwired/mechboards_micropad/config.h | 39 ------------------ .../mechboards_micropad/keyboard.json | 6 +++ keyboards/handwired/minorca/config.h | 39 ------------------ keyboards/handwired/minorca/keyboard.json | 6 +++ keyboards/handwired/mutepad/config.h | 20 --------- keyboards/handwired/mutepad/keyboard.json | 6 ++- keyboards/handwired/nicekey/config.h | 39 ------------------ keyboards/handwired/nicekey/keyboard.json | 6 +++ keyboards/handwired/nortontechpad/config.h | 24 ----------- .../handwired/nortontechpad/keyboard.json | 6 +++ keyboards/handwired/not_so_minidox/config.h | 5 --- .../handwired/not_so_minidox/keyboard.json | 6 +++ keyboards/handwired/novem/config.h | 26 ------------ keyboards/handwired/novem/keyboard.json | 6 +++ keyboards/handwired/nozbe_macro/config.h | 25 ----------- keyboards/handwired/nozbe_macro/keyboard.json | 6 +++ keyboards/handwired/numpad20/config.h | 39 ------------------ keyboards/handwired/numpad20/keyboard.json | 6 +++ .../handwired/obuwunkunubi/spaget/config.h | 40 ------------------ .../obuwunkunubi/spaget/keyboard.json | 6 +++ .../handwired/oem_ansi_fullsize/config.h | 39 ------------------ .../handwired/oem_ansi_fullsize/keyboard.json | 6 +++ keyboards/handwired/onekey/config.h | 5 --- keyboards/handwired/onekey/info.json | 6 +++ keyboards/handwired/ortho5x13/config.h | 39 ------------------ keyboards/handwired/ortho5x13/keyboard.json | 6 +++ keyboards/handwired/ortho5x14/config.h | 41 ------------------- keyboards/handwired/ortho5x14/keyboard.json | 6 +++ keyboards/handwired/p65rgb/config.h | 5 --- keyboards/handwired/p65rgb/keyboard.json | 6 +++ keyboards/handwired/pilcrow/config.h | 39 ------------------ keyboards/handwired/pilcrow/keyboard.json | 6 +++ keyboards/handwired/polly40/config.h | 24 ----------- keyboards/handwired/polly40/keyboard.json | 6 +++ .../handwired/postageboard/mini/config.h | 23 ----------- .../handwired/postageboard/mini/keyboard.json | 6 +++ keyboards/handwired/postageboard/r1/config.h | 23 ----------- .../handwired/postageboard/r1/keyboard.json | 6 +++ keyboards/handwired/prime_exl/config.h | 5 --- keyboards/handwired/prime_exl/keyboard.json | 6 +++ keyboards/handwired/prime_exl_plus/config.h | 23 ----------- .../handwired/prime_exl_plus/keyboard.json | 6 +++ 75 files changed, 227 insertions(+), 910 deletions(-) delete mode 100644 keyboards/handwired/jn68m/config.h delete mode 100644 keyboards/handwired/jot50/config.h delete mode 100644 keyboards/handwired/juliet/config.h delete mode 100644 keyboards/handwired/k_numpad17/config.h delete mode 100644 keyboards/handwired/kbod/config.h delete mode 100644 keyboards/handwired/leftynumpad/config.h delete mode 100644 keyboards/handwired/lemonpad/config.h delete mode 100644 keyboards/handwired/m40/5x5_macropad/config.h delete mode 100644 keyboards/handwired/magicforce61/config.h delete mode 100644 keyboards/handwired/magicforce68/config.h delete mode 100644 keyboards/handwired/mechboards_micropad/config.h delete mode 100644 keyboards/handwired/minorca/config.h delete mode 100644 keyboards/handwired/mutepad/config.h delete mode 100644 keyboards/handwired/nicekey/config.h delete mode 100644 keyboards/handwired/nortontechpad/config.h delete mode 100644 keyboards/handwired/novem/config.h delete mode 100644 keyboards/handwired/nozbe_macro/config.h delete mode 100644 keyboards/handwired/numpad20/config.h delete mode 100644 keyboards/handwired/obuwunkunubi/spaget/config.h delete mode 100644 keyboards/handwired/oem_ansi_fullsize/config.h delete mode 100644 keyboards/handwired/ortho5x13/config.h delete mode 100644 keyboards/handwired/ortho5x14/config.h delete mode 100644 keyboards/handwired/pilcrow/config.h delete mode 100644 keyboards/handwired/polly40/config.h delete mode 100644 keyboards/handwired/postageboard/mini/config.h delete mode 100644 keyboards/handwired/postageboard/r1/config.h delete mode 100644 keyboards/handwired/prime_exl_plus/config.h diff --git a/keyboards/handwired/jn68m/config.h b/keyboards/handwired/jn68m/config.h deleted file mode 100644 index e736c430c0d..00000000000 --- a/keyboards/handwired/jn68m/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2018 Jumail Mundekkat / MxBlue - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/jn68m/keyboard.json b/keyboards/handwired/jn68m/keyboard.json index 25dfb005ebf..e2c833b0027 100644 --- a/keyboards/handwired/jn68m/keyboard.json +++ b/keyboards/handwired/jn68m/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "E6", "D1"], "rows": ["B0", "B1", "D5", "D3", "D2"] diff --git a/keyboards/handwired/jopr/config.h b/keyboards/handwired/jopr/config.h index 59717346c33..b4ee0992fe6 100644 --- a/keyboards/handwired/jopr/config.h +++ b/keyboards/handwired/jopr/config.h @@ -1,9 +1,3 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -/* #define LOCKING_SUPPORT_ENABLE */ - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define NO_ACTION_ONESHOT diff --git a/keyboards/handwired/jopr/keyboard.json b/keyboards/handwired/jopr/keyboard.json index c01e622325f..36aa7276b53 100644 --- a/keyboards/handwired/jopr/keyboard.json +++ b/keyboards/handwired/jopr/keyboard.json @@ -26,6 +26,12 @@ "nkro": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": false, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2", "B1", "B0", "F7", "E6", "F6", "B5", "C7", "B4", "D1"], "rows": ["D0", "D6", "D2", "D4", "D3", "D5", "D7", "C6", "B6", "F5"] diff --git a/keyboards/handwired/jot50/config.h b/keyboards/handwired/jot50/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/handwired/jot50/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/jot50/keyboard.json b/keyboards/handwired/jot50/keyboard.json index 260fd6dffc9..d272ffc6b19 100644 --- a/keyboards/handwired/jot50/keyboard.json +++ b/keyboards/handwired/jot50/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "D3", "D2", "D1", "D0", "D4", "C6"], "rows": ["D7", "E6", "B4", "B6", "B2"] diff --git a/keyboards/handwired/jotanck/config.h b/keyboards/handwired/jotanck/config.h index d78fb4d5bfb..ca1ac2450d8 100644 --- a/keyboards/handwired/jotanck/config.h +++ b/keyboards/handwired/jotanck/config.h @@ -20,9 +20,3 @@ #define JOTANCK_LEDS #define JOTANCK_LED1 B5 #define JOTANCK_LED2 B4 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/jotanck/keyboard.json b/keyboards/handwired/jotanck/keyboard.json index 4c81ac1a61b..94ec9c15e57 100644 --- a/keyboards/handwired/jotanck/keyboard.json +++ b/keyboards/handwired/jotanck/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "tapping": { "term": 175 }, diff --git a/keyboards/handwired/jotpad16/config.h b/keyboards/handwired/jotpad16/config.h index 0e9074f2ce7..44d323a5bb6 100644 --- a/keyboards/handwired/jotpad16/config.h +++ b/keyboards/handwired/jotpad16/config.h @@ -4,9 +4,3 @@ #define JOTPAD16_LEDS #define JOTPAD16_LED1 B5 #define JOTPAD16_LED2 B4 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/jotpad16/keyboard.json b/keyboards/handwired/jotpad16/keyboard.json index 944af735efe..6a8a5db44c3 100644 --- a/keyboards/handwired/jotpad16/keyboard.json +++ b/keyboards/handwired/jotpad16/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "D7", "B3", "B1"], "rows": ["B6", "B2", "D2", "D3"] diff --git a/keyboards/handwired/jtallbean/split_65/config.h b/keyboards/handwired/jtallbean/split_65/config.h index 313fe1940c1..2ae835db9d2 100644 --- a/keyboards/handwired/jtallbean/split_65/config.h +++ b/keyboards/handwired/jtallbean/split_65/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN D5 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/handwired/jtallbean/split_65/keyboard.json b/keyboards/handwired/jtallbean/split_65/keyboard.json index d1b974a59be..c8be82da8d4 100644 --- a/keyboards/handwired/jtallbean/split_65/keyboard.json +++ b/keyboards/handwired/jtallbean/split_65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "B5", "B4", "D7", "D6", "D4", "D2", "D3", "B7"], "rows": ["F4", "F1", "F0", "C7", "B6"] diff --git a/keyboards/handwired/juliet/config.h b/keyboards/handwired/juliet/config.h deleted file mode 100644 index 4570cdb18e1..00000000000 --- a/keyboards/handwired/juliet/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 na-cly - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/juliet/keyboard.json b/keyboards/handwired/juliet/keyboard.json index e08a0266923..49c2489e66e 100644 --- a/keyboards/handwired/juliet/keyboard.json +++ b/keyboards/handwired/juliet/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "B1", "B3", "B2", "B6"], "rows": ["F5", "D2", "D3", "F4"] diff --git a/keyboards/handwired/k_numpad17/config.h b/keyboards/handwired/k_numpad17/config.h deleted file mode 100644 index 9f71a07f90c..00000000000 --- a/keyboards/handwired/k_numpad17/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - diff --git a/keyboards/handwired/k_numpad17/keyboard.json b/keyboards/handwired/k_numpad17/keyboard.json index edf69bc5d58..7d48cd1f3ef 100644 --- a/keyboards/handwired/k_numpad17/keyboard.json +++ b/keyboards/handwired/k_numpad17/keyboard.json @@ -19,6 +19,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B1", "F6", "F4"], "rows": ["D1", "D4", "C6", "D7", "E6"] diff --git a/keyboards/handwired/kbod/config.h b/keyboards/handwired/kbod/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/kbod/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/kbod/keyboard.json b/keyboards/handwired/kbod/keyboard.json index 127595a0cee..91926b554d1 100644 --- a/keyboards/handwired/kbod/keyboard.json +++ b/keyboards/handwired/kbod/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "F0", "F1", "F4", "F5", "F6", "F7"], "rows": ["C6", "D7", "E6", "B4", "B5", "B6", "B7", "D6"] diff --git a/keyboards/handwired/ks63/config.h b/keyboards/handwired/ks63/config.h index f470196e1d6..9b05e85d644 100644 --- a/keyboards/handwired/ks63/config.h +++ b/keyboards/handwired/ks63/config.h @@ -25,11 +25,6 @@ along with this program. If not, see . #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Enables This makes it easier for fast typists to use dual-function keys */ #define PERMISSIVE_HOLD diff --git a/keyboards/handwired/ks63/keyboard.json b/keyboards/handwired/ks63/keyboard.json index 542cd76811e..6040074f071 100644 --- a/keyboards/handwired/ks63/keyboard.json +++ b/keyboards/handwired/ks63/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["B5", "B4", "E6", "D7", "C6"] diff --git a/keyboards/handwired/leftynumpad/config.h b/keyboards/handwired/leftynumpad/config.h deleted file mode 100644 index 831b41bcd2a..00000000000 --- a/keyboards/handwired/leftynumpad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Tom Swartz - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/leftynumpad/keyboard.json b/keyboards/handwired/leftynumpad/keyboard.json index 045fd7e8757..bb178be5be0 100644 --- a/keyboards/handwired/leftynumpad/keyboard.json +++ b/keyboards/handwired/leftynumpad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B4", "B5", "B6", "B2"], "rows": ["D1", "D0", "D4", "C6", "D7"] diff --git a/keyboards/handwired/lemonpad/config.h b/keyboards/handwired/lemonpad/config.h deleted file mode 100644 index 966e3d16f6e..00000000000 --- a/keyboards/handwired/lemonpad/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2022 dari-studios (@dari-studios) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/lemonpad/keyboard.json b/keyboards/handwired/lemonpad/keyboard.json index ba40689125e..aab7b946929 100644 --- a/keyboards/handwired/lemonpad/keyboard.json +++ b/keyboards/handwired/lemonpad/keyboard.json @@ -21,6 +21,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["E6", "D7", "C6"], diff --git a/keyboards/handwired/m40/5x5_macropad/config.h b/keyboards/handwired/m40/5x5_macropad/config.h deleted file mode 100644 index 6770ce638c1..00000000000 --- a/keyboards/handwired/m40/5x5_macropad/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2022 Tomek (@m40-dev) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/m40/5x5_macropad/keyboard.json b/keyboards/handwired/m40/5x5_macropad/keyboard.json index b4bc53afc54..41adb774376 100644 --- a/keyboards/handwired/m40/5x5_macropad/keyboard.json +++ b/keyboards/handwired/m40/5x5_macropad/keyboard.json @@ -21,6 +21,12 @@ "extrakey": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_ortho_5x5": { "layout": [ diff --git a/keyboards/handwired/macroboard/config.h b/keyboards/handwired/macroboard/config.h index b8e437bddf9..ca12d2c7539 100644 --- a/keyboards/handwired/macroboard/config.h +++ b/keyboards/handwired/macroboard/config.h @@ -23,8 +23,3 @@ along with this program. If not, see . #define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM6 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. #define WS2812_PWM_DMA_CHANNEL 2 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. #define WS2812_PWM_TARGET_PERIOD 800000 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/macroboard/f401/keyboard.json b/keyboards/handwired/macroboard/f401/keyboard.json index d5e217b2f3d..2107eebaa3b 100644 --- a/keyboards/handwired/macroboard/f401/keyboard.json +++ b/keyboards/handwired/macroboard/f401/keyboard.json @@ -19,5 +19,11 @@ "extrakey": true, "nkro": true, "rgblight": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/handwired/macroboard/f411/keyboard.json b/keyboards/handwired/macroboard/f411/keyboard.json index 8b1155d7740..83c438d3074 100644 --- a/keyboards/handwired/macroboard/f411/keyboard.json +++ b/keyboards/handwired/macroboard/f411/keyboard.json @@ -23,5 +23,11 @@ "nkro": true, "rgblight": true, "audio": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/handwired/magicforce61/config.h b/keyboards/handwired/magicforce61/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/magicforce61/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/magicforce61/keyboard.json b/keyboards/handwired/magicforce61/keyboard.json index dbcae2f21af..e15cc0590ec 100644 --- a/keyboards/handwired/magicforce61/keyboard.json +++ b/keyboards/handwired/magicforce61/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "B3", "B2", "B1", "B0", "E7", "E6", "F0", "F1", "F2", "F3", "F4", "F5"], "rows": ["D0", "D1", "D2", "D3", "D4"] diff --git a/keyboards/handwired/magicforce68/config.h b/keyboards/handwired/magicforce68/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/magicforce68/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/magicforce68/keyboard.json b/keyboards/handwired/magicforce68/keyboard.json index a9afdf913a2..6567c8b1cf2 100644 --- a/keyboards/handwired/magicforce68/keyboard.json +++ b/keyboards/handwired/magicforce68/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B0", "D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "B6", "B7", "D6"], "rows": ["F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/handwired/mechboards_micropad/config.h b/keyboards/handwired/mechboards_micropad/config.h deleted file mode 100644 index 3fd748d1824..00000000000 --- a/keyboards/handwired/mechboards_micropad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Yiancar - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/mechboards_micropad/keyboard.json b/keyboards/handwired/mechboards_micropad/keyboard.json index 16e6653a338..65ef6fb5b4e 100644 --- a/keyboards/handwired/mechboards_micropad/keyboard.json +++ b/keyboards/handwired/mechboards_micropad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B3", "B1", "F7"], "rows": ["B6"] diff --git a/keyboards/handwired/minorca/config.h b/keyboards/handwired/minorca/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/minorca/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/minorca/keyboard.json b/keyboards/handwired/minorca/keyboard.json index 9642927f1ae..9ac1f52d13a 100644 --- a/keyboards/handwired/minorca/keyboard.json +++ b/keyboards/handwired/minorca/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "D6", "D7", "B4", "B5", "B6", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["B0", "B1", "B2", "B3"] diff --git a/keyboards/handwired/mutepad/config.h b/keyboards/handwired/mutepad/config.h deleted file mode 100644 index 632465bba71..00000000000 --- a/keyboards/handwired/mutepad/config.h +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright 2022 JoshwJB (@JoshwJB) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * Feature disable options - * These options are also useful to firmware size reduction. - */ - -/* disable debug print */ -//#define NO_DEBUG - -/* disable print */ -//#define NO_PRINT diff --git a/keyboards/handwired/mutepad/keyboard.json b/keyboards/handwired/mutepad/keyboard.json index 9bb273d4e85..f727569c980 100644 --- a/keyboards/handwired/mutepad/keyboard.json +++ b/keyboards/handwired/mutepad/keyboard.json @@ -29,7 +29,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/nicekey/config.h b/keyboards/handwired/nicekey/config.h deleted file mode 100644 index 4b007cf387e..00000000000 --- a/keyboards/handwired/nicekey/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/nicekey/keyboard.json b/keyboards/handwired/nicekey/keyboard.json index 0ae1b3280bf..fe7267ab840 100644 --- a/keyboards/handwired/nicekey/keyboard.json +++ b/keyboards/handwired/nicekey/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6"], "rows": ["B6"] diff --git a/keyboards/handwired/nortontechpad/config.h b/keyboards/handwired/nortontechpad/config.h deleted file mode 100644 index 48ea26f0058..00000000000 --- a/keyboards/handwired/nortontechpad/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2020 Joel Schneider - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/handwired/nortontechpad/keyboard.json b/keyboards/handwired/nortontechpad/keyboard.json index 51871b42e32..e90b6b5482e 100644 --- a/keyboards/handwired/nortontechpad/keyboard.json +++ b/keyboards/handwired/nortontechpad/keyboard.json @@ -14,6 +14,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "B4", "B5"], "rows": ["F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/not_so_minidox/config.h b/keyboards/handwired/not_so_minidox/config.h index 6a4ebbec82e..7b7d4c06ae9 100644 --- a/keyboards/handwired/not_so_minidox/config.h +++ b/keyboards/handwired/not_so_minidox/config.h @@ -22,11 +22,6 @@ along with this program. If not, see . #define MASTER_LEFT //#define MASTER_RIGHT -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* disable debug print */ //#define NO_DEBUG diff --git a/keyboards/handwired/not_so_minidox/keyboard.json b/keyboards/handwired/not_so_minidox/keyboard.json index b48eba771bd..c3cc5988407 100644 --- a/keyboards/handwired/not_so_minidox/keyboard.json +++ b/keyboards/handwired/not_so_minidox/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B2", "B3", "B1", "F7", "D4"], "rows": ["D7", "E6", "B4", "B5"] diff --git a/keyboards/handwired/novem/config.h b/keyboards/handwired/novem/config.h deleted file mode 100644 index b5a88cb22e5..00000000000 --- a/keyboards/handwired/novem/config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2020 Jose I. Martinez - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - - diff --git a/keyboards/handwired/novem/keyboard.json b/keyboards/handwired/novem/keyboard.json index bc4fe2c1c95..c824f7809c1 100644 --- a/keyboards/handwired/novem/keyboard.json +++ b/keyboards/handwired/novem/keyboard.json @@ -20,6 +20,12 @@ "mousekey": false, "extrakey": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/handwired/nozbe_macro/config.h b/keyboards/handwired/nozbe_macro/config.h deleted file mode 100644 index 81860eaf4dd..00000000000 --- a/keyboards/handwired/nozbe_macro/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright 2021 Marcin Leon Omelan (@rozPierog) - * - * 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 . - */ - - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/handwired/nozbe_macro/keyboard.json b/keyboards/handwired/nozbe_macro/keyboard.json index c87205c9177..584509ad185 100644 --- a/keyboards/handwired/nozbe_macro/keyboard.json +++ b/keyboards/handwired/nozbe_macro/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D4", "C6"], "rows": ["B0"] diff --git a/keyboards/handwired/numpad20/config.h b/keyboards/handwired/numpad20/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/numpad20/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/numpad20/keyboard.json b/keyboards/handwired/numpad20/keyboard.json index 7e3888bbe0a..e47cfc5df52 100644 --- a/keyboards/handwired/numpad20/keyboard.json +++ b/keyboards/handwired/numpad20/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "F5", "F4"], "rows": ["F6", "B1", "B3", "B6", "B5"] diff --git a/keyboards/handwired/obuwunkunubi/spaget/config.h b/keyboards/handwired/obuwunkunubi/spaget/config.h deleted file mode 100644 index 55acb93cec0..00000000000 --- a/keyboards/handwired/obuwunkunubi/spaget/config.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2020 obuwunkunubi - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/obuwunkunubi/spaget/keyboard.json b/keyboards/handwired/obuwunkunubi/spaget/keyboard.json index 7cbf1b3c0bc..238736705dc 100644 --- a/keyboards/handwired/obuwunkunubi/spaget/keyboard.json +++ b/keyboards/handwired/obuwunkunubi/spaget/keyboard.json @@ -19,6 +19,12 @@ "oled": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/handwired/oem_ansi_fullsize/config.h b/keyboards/handwired/oem_ansi_fullsize/config.h deleted file mode 100644 index 8906351de9a..00000000000 --- a/keyboards/handwired/oem_ansi_fullsize/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Cian Johnston - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/oem_ansi_fullsize/keyboard.json b/keyboards/handwired/oem_ansi_fullsize/keyboard.json index 6c48bfcc369..e83b2c61d38 100644 --- a/keyboards/handwired/oem_ansi_fullsize/keyboard.json +++ b/keyboards/handwired/oem_ansi_fullsize/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C3", "C2", "C1", "C0", "E1", "E0", "D7", "E6", "D5", "D4", "D3", "D2", "D1", "D0", "B7", "B0", "B1", "B2", "B3", "B4", "B5", "F6"], "rows": ["F5", "F4", "F3", "F2", "F1", "F0"] diff --git a/keyboards/handwired/onekey/config.h b/keyboards/handwired/onekey/config.h index 09cf9659412..8b2755dc2c2 100644 --- a/keyboards/handwired/onekey/config.h +++ b/keyboards/handwired/onekey/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define PERMISSIVE_HOLD /* diff --git a/keyboards/handwired/onekey/info.json b/keyboards/handwired/onekey/info.json index 2d266f5ea3b..c952758265b 100644 --- a/keyboards/handwired/onekey/info.json +++ b/keyboards/handwired/onekey/info.json @@ -19,6 +19,12 @@ "command": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["ortho_1x1"], "layouts": { "LAYOUT_ortho_1x1": { diff --git a/keyboards/handwired/ortho5x13/config.h b/keyboards/handwired/ortho5x13/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/ortho5x13/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/ortho5x13/keyboard.json b/keyboards/handwired/ortho5x13/keyboard.json index 097ac3863d1..23591b5046c 100644 --- a/keyboards/handwired/ortho5x13/keyboard.json +++ b/keyboards/handwired/ortho5x13/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "D7", "E6", "B4", "B5", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D3", "D2", "D1", "D0", "D4"] diff --git a/keyboards/handwired/ortho5x14/config.h b/keyboards/handwired/ortho5x14/config.h deleted file mode 100644 index 5f60fd44d7e..00000000000 --- a/keyboards/handwired/ortho5x14/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 Richard Nunez - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -//#define PERMISSIVE_HOLD - -/* - * 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 diff --git a/keyboards/handwired/ortho5x14/keyboard.json b/keyboards/handwired/ortho5x14/keyboard.json index fe34f2b800f..1e6828190b1 100644 --- a/keyboards/handwired/ortho5x14/keyboard.json +++ b/keyboards/handwired/ortho5x14/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B4", "E6", "D7", "C6", "D4", "D0", "D1"], "rows": ["F0", "F1", "C7", "D5", "B7"] diff --git a/keyboards/handwired/p65rgb/config.h b/keyboards/handwired/p65rgb/config.h index 9a446a904b2..776088feb02 100644 --- a/keyboards/handwired/p65rgb/config.h +++ b/keyboards/handwired/p65rgb/config.h @@ -18,8 +18,3 @@ along with this program. If not, see . #pragma once #define RGB_MATRIX_LED_COUNT 83 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/p65rgb/keyboard.json b/keyboards/handwired/p65rgb/keyboard.json index 184d7b323c2..474e2b8edd4 100644 --- a/keyboards/handwired/p65rgb/keyboard.json +++ b/keyboards/handwired/p65rgb/keyboard.json @@ -77,6 +77,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "B0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "D7"], "rows": ["C7", "C6", "B6", "B5", "D5"] diff --git a/keyboards/handwired/pilcrow/config.h b/keyboards/handwired/pilcrow/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/pilcrow/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/pilcrow/keyboard.json b/keyboards/handwired/pilcrow/keyboard.json index b1c96a495e5..b44a4e2d3d4 100644 --- a/keyboards/handwired/pilcrow/keyboard.json +++ b/keyboards/handwired/pilcrow/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "F5", "F6", "B6", "B2", "F4", "B5"], "rows": ["B4", "F7", "B1", "B3"] diff --git a/keyboards/handwired/polly40/config.h b/keyboards/handwired/polly40/config.h deleted file mode 100644 index 79dcced2181..00000000000 --- a/keyboards/handwired/polly40/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2023 PAUL ENRICO N. VIOLA @PollyV1 - * - * 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 . - */ - -#pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -// generated by KBFirmware JSON to QMK Parser -// https://noroadsleft.github.io/kbf_qmk_converter/ diff --git a/keyboards/handwired/polly40/keyboard.json b/keyboards/handwired/polly40/keyboard.json index 9ff34b339ef..fde1b77aab6 100644 --- a/keyboards/handwired/polly40/keyboard.json +++ b/keyboards/handwired/polly40/keyboard.json @@ -23,6 +23,12 @@ "command": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/handwired/postageboard/mini/config.h b/keyboards/handwired/postageboard/mini/config.h deleted file mode 100644 index 091cb7b510b..00000000000 --- a/keyboards/handwired/postageboard/mini/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Yan-Fa Li - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/postageboard/mini/keyboard.json b/keyboards/handwired/postageboard/mini/keyboard.json index 13e83147bbd..31ceb066aab 100644 --- a/keyboards/handwired/postageboard/mini/keyboard.json +++ b/keyboards/handwired/postageboard/mini/keyboard.json @@ -15,5 +15,11 @@ "extrakey": true, "console": true, "command": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/handwired/postageboard/r1/config.h b/keyboards/handwired/postageboard/r1/config.h deleted file mode 100644 index 091cb7b510b..00000000000 --- a/keyboards/handwired/postageboard/r1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Yan-Fa Li - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/postageboard/r1/keyboard.json b/keyboards/handwired/postageboard/r1/keyboard.json index 78ab5d028e0..38bb66d3be2 100644 --- a/keyboards/handwired/postageboard/r1/keyboard.json +++ b/keyboards/handwired/postageboard/r1/keyboard.json @@ -15,5 +15,11 @@ "extrakey": true, "console": true, "command": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/handwired/prime_exl/config.h b/keyboards/handwired/prime_exl/config.h index 8f57ec2b911..3a8b8495f8b 100644 --- a/keyboards/handwired/prime_exl/config.h +++ b/keyboards/handwired/prime_exl/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define NUM_LOCK_LED_PIN B6 #define CAPS_LOCK_LED_PIN B5 #define SCROLL_LOCK_LED_PIN C6 diff --git a/keyboards/handwired/prime_exl/keyboard.json b/keyboards/handwired/prime_exl/keyboard.json index ea8f6821a29..13993a61b4d 100644 --- a/keyboards/handwired/prime_exl/keyboard.json +++ b/keyboards/handwired/prime_exl/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "B3", "B2", "D1", "D2", "D3", "F7", "F6", "F5"], "rows": ["B1", "E6", "D5", "D6", "B4", "D7", "D4", "F1", "F0", "B0"] diff --git a/keyboards/handwired/prime_exl_plus/config.h b/keyboards/handwired/prime_exl_plus/config.h deleted file mode 100644 index cb77f4eda20..00000000000 --- a/keyboards/handwired/prime_exl_plus/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 Holten Campbell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/prime_exl_plus/keyboard.json b/keyboards/handwired/prime_exl_plus/keyboard.json index 4ff9bb10494..43825a0ad88 100644 --- a/keyboards/handwired/prime_exl_plus/keyboard.json +++ b/keyboards/handwired/prime_exl_plus/keyboard.json @@ -35,6 +35,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "C7", "C6", "B6", "B7", "B3", "D1", "D0"], "rows": ["D2", "D6", "B4", "F1", "E6", "F0", "F4", "B5", "D7", "D3"] From 3d0f4fa6927a8b600f1f5fc63f1f2349dc1c79af Mon Sep 17 00:00:00 2001 From: Dasky <32983009+daskygit@users.noreply.github.com> Date: Wed, 22 May 2024 00:04:18 +0100 Subject: [PATCH 028/519] Fix font artefact on Reverb keyboard. (#23761) --- .../dasky/reverb/graphics/robotomono20.qff.c | 465 ++++++------------ .../dasky/reverb/graphics/robotomono20.qff.h | 6 +- 2 files changed, 157 insertions(+), 314 deletions(-) diff --git a/keyboards/dasky/reverb/graphics/robotomono20.qff.c b/keyboards/dasky/reverb/graphics/robotomono20.qff.c index a232ffadfbb..8874c1b016c 100644 --- a/keyboards/dasky/reverb/graphics/robotomono20.qff.c +++ b/keyboards/dasky/reverb/graphics/robotomono20.qff.c @@ -1,320 +1,163 @@ -// Copyright 2023 QMK -- generated source code only, font retains original copyright +// Copyright 2024 QMK -- generated source code only, font retains original copyright // SPDX-License-Identifier: GPL-2.0-or-later -// This file was auto-generated by `qmk painter-convert-font-image -i robotomono20.png -f mono4` +// This file was auto-generated by `qmk painter-convert-font-image -i robotomono20.png -f mono2` #include -const uint32_t font_robotomono20_length = 4904; +const uint32_t font_robotomono20_length = 2396; // clang-format off -const uint8_t font_robotomono20[4904] = { - 0x00, 0xFF, 0x14, 0x00, 0x00, 0x51, 0x46, 0x46, 0x01, 0x28, 0x13, 0x00, 0x00, 0xD7, 0xEC, 0xFF, - 0xFF, 0x16, 0x01, 0x00, 0x00, 0x01, 0x00, 0x01, 0xFF, 0x01, 0xFE, 0x1D, 0x01, 0x00, 0x0C, 0x00, - 0x00, 0x8C, 0x00, 0x00, 0x0C, 0x0E, 0x00, 0xCC, 0x12, 0x00, 0xCC, 0x1F, 0x00, 0x8C, 0x2F, 0x00, - 0x0C, 0x3D, 0x00, 0xCC, 0x49, 0x00, 0x4C, 0x4F, 0x00, 0x4C, 0x62, 0x00, 0x0C, 0x76, 0x00, 0x4C, - 0x7F, 0x00, 0xCC, 0x89, 0x00, 0x0C, 0x8F, 0x00, 0xCC, 0x91, 0x00, 0x4C, 0x95, 0x00, 0x0C, 0xA4, - 0x00, 0xCC, 0xB0, 0x00, 0x8C, 0xBE, 0x00, 0x4C, 0xCB, 0x00, 0x4C, 0xD8, 0x00, 0x8C, 0xE4, 0x00, - 0x4C, 0xF2, 0x00, 0x8C, 0xFF, 0x00, 0x0C, 0x0D, 0x01, 0xCC, 0x19, 0x01, 0x0C, 0x26, 0x01, 0x8C, - 0x2C, 0x01, 0x0C, 0x35, 0x01, 0xCC, 0x3C, 0x01, 0x8C, 0x42, 0x01, 0x8C, 0x4A, 0x01, 0x8C, 0x56, - 0x01, 0x4C, 0x63, 0x01, 0xCC, 0x70, 0x01, 0x4C, 0x7D, 0x01, 0x4C, 0x8B, 0x01, 0x8C, 0x97, 0x01, - 0x0C, 0xA6, 0x01, 0x4C, 0xB4, 0x01, 0xCC, 0xC1, 0x01, 0x4C, 0xCE, 0x01, 0x0C, 0xDD, 0x01, 0x0C, - 0xEC, 0x01, 0x8C, 0xF8, 0x01, 0x4C, 0x08, 0x02, 0xCC, 0x14, 0x02, 0x8C, 0x21, 0x02, 0x8C, 0x2E, - 0x02, 0x8C, 0x3B, 0x02, 0x8C, 0x49, 0x02, 0x0C, 0x56, 0x02, 0x4C, 0x63, 0x02, 0x4C, 0x72, 0x02, - 0x4C, 0x7F, 0x02, 0x4C, 0x8C, 0x02, 0x8C, 0x99, 0x02, 0xCC, 0xA6, 0x02, 0xCC, 0xB4, 0x02, 0x0C, - 0xC2, 0x02, 0x4C, 0xD6, 0x02, 0x0C, 0xE7, 0x02, 0x4C, 0xFB, 0x02, 0x0C, 0x03, 0x03, 0xCC, 0x05, - 0x03, 0x4C, 0x09, 0x03, 0x4C, 0x13, 0x03, 0x4C, 0x21, 0x03, 0xCC, 0x2B, 0x03, 0x0C, 0x39, 0x03, - 0x0C, 0x43, 0x03, 0x0C, 0x52, 0x03, 0x8C, 0x5E, 0x03, 0x0C, 0x6C, 0x03, 0x4C, 0x7A, 0x03, 0xCC, - 0x89, 0x03, 0x4C, 0x97, 0x03, 0x8C, 0xA6, 0x03, 0x0C, 0xB0, 0x03, 0x8C, 0xB9, 0x03, 0x4C, 0xC3, - 0x03, 0xCC, 0xCF, 0x03, 0x0C, 0xDD, 0x03, 0x4C, 0xE6, 0x03, 0x0C, 0xF0, 0x03, 0x4C, 0xFD, 0x03, - 0x4C, 0x07, 0x04, 0x4C, 0x11, 0x04, 0xCC, 0x1A, 0x04, 0xCC, 0x24, 0x04, 0x8C, 0x32, 0x04, 0x8C, - 0x3C, 0x04, 0xCC, 0x4F, 0x04, 0x4C, 0x62, 0x04, 0xCC, 0x75, 0x04, 0x04, 0xFB, 0xE8, 0x11, 0x00, - 0x42, 0x00, 0x07, 0x00, 0x80, 0x04, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, - 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, - 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x14, 0x08, 0x00, - 0x80, 0x2C, 0x02, 0x00, 0x80, 0x3C, 0x10, 0x00, 0x06, 0x00, 0x8D, 0x80, 0xC3, 0x01, 0x80, 0xC3, - 0x01, 0x80, 0xC3, 0x01, 0x80, 0xC2, 0x01, 0x40, 0x82, 0x2E, 0x00, 0x07, 0x00, 0x02, 0x04, 0x80, - 0x00, 0x02, 0x0D, 0x80, 0x00, 0x02, 0x0D, 0x80, 0x00, 0x02, 0x0A, 0x97, 0x00, 0x0A, 0x0B, 0xF8, - 0xFF, 0xBF, 0x50, 0x57, 0x17, 0x40, 0x43, 0x03, 0x80, 0x82, 0x02, 0xD4, 0xD6, 0x16, 0xFD, 0xFF, - 0x2F, 0xC0, 0xD1, 0x01, 0x02, 0xD0, 0x83, 0x00, 0xE0, 0xA0, 0x00, 0x02, 0xA0, 0x10, 0x00, 0x81, - 0x00, 0x24, 0x02, 0x00, 0x80, 0x34, 0x02, 0x00, 0x95, 0x78, 0x00, 0x80, 0xFF, 0x07, 0xD0, 0x56, - 0x0F, 0xE0, 0x00, 0x1E, 0xF0, 0x00, 0x2D, 0xE0, 0x01, 0x00, 0xD0, 0x07, 0x00, 0x40, 0xBF, 0x02, - 0x00, 0x95, 0xF4, 0x07, 0x00, 0x40, 0x1F, 0x10, 0x00, 0x2D, 0x74, 0x00, 0x2D, 0xB0, 0x00, 0x2D, - 0xE0, 0x96, 0x0F, 0x80, 0xFF, 0x06, 0x00, 0x38, 0x02, 0x00, 0x80, 0x38, 0x0A, 0x00, 0x06, 0x00, - 0x80, 0x50, 0x02, 0x00, 0x90, 0xFC, 0x03, 0x00, 0x0D, 0x0B, 0x01, 0x0A, 0x4A, 0x07, 0x0E, 0x8A, - 0x02, 0x6D, 0xD7, 0x00, 0xA4, 0xB1, 0x02, 0x00, 0x80, 0x34, 0x02, 0x00, 0x80, 0x1C, 0x02, 0x00, - 0x90, 0x8E, 0x2F, 0x00, 0xD7, 0x75, 0x80, 0xA2, 0xB0, 0xC0, 0xA1, 0xA0, 0x00, 0xE0, 0x70, 0x00, - 0x80, 0x2F, 0x0F, 0x00, 0x07, 0x00, 0xAD, 0x15, 0x00, 0x80, 0xFF, 0x00, 0xD0, 0xD2, 0x02, 0xE0, - 0xC1, 0x02, 0xE0, 0xC1, 0x02, 0xD0, 0xE2, 0x01, 0xC0, 0x7F, 0x00, 0x80, 0x0F, 0x00, 0xE0, 0x2E, - 0x24, 0xB4, 0x78, 0x74, 0x3C, 0xF0, 0x39, 0x3C, 0xD0, 0x2F, 0x38, 0x40, 0x0F, 0xF4, 0xE5, 0x2F, - 0xD0, 0xBF, 0x7D, 0x00, 0x04, 0x0D, 0x00, 0x07, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x1D, 0x02, - 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x08, 0x2E, 0x00, 0x04, 0x00, 0x86, - 0x40, 0x01, 0x00, 0xE0, 0x01, 0x00, 0x74, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x1D, 0x02, - 0x00, 0x80, 0x0E, 0x02, 0x00, 0x95, 0x0B, 0x00, 0x40, 0x0B, 0x00, 0x40, 0x07, 0x00, 0x40, 0x07, - 0x00, 0x80, 0x07, 0x00, 0x40, 0x07, 0x00, 0x40, 0x07, 0x00, 0x40, 0x0B, 0x02, 0x00, 0x80, 0x0B, - 0x02, 0x00, 0x80, 0x0E, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0xB0, - 0x02, 0x00, 0x81, 0xD0, 0x01, 0x02, 0x00, 0x80, 0x01, 0x03, 0x00, 0x84, 0x80, 0x01, 0x00, 0x40, - 0x07, 0x02, 0x00, 0x80, 0x0E, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x80, - 0xB4, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xE0, 0x02, 0x00, 0x8C, 0xE0, 0x01, 0x00, 0xE0, - 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x02, 0x00, 0x80, 0xE0, 0x02, 0x00, 0x80, - 0xB0, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x85, - 0x0B, 0x00, 0x80, 0x02, 0x00, 0x40, 0x02, 0x00, 0x07, 0x00, 0x80, 0x10, 0x02, 0x00, 0x80, 0x38, - 0x02, 0x00, 0x8C, 0x34, 0x00, 0x10, 0x34, 0x10, 0xF4, 0x7A, 0x2E, 0x90, 0xFF, 0x1A, 0x00, 0xBC, - 0x02, 0x00, 0x87, 0xDB, 0x01, 0x80, 0x87, 0x03, 0x80, 0x42, 0x07, 0x1E, 0x00, 0x10, 0x00, 0x80, - 0x28, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x8C, 0x3C, 0x00, 0xA8, 0xBE, - 0x2A, 0xFC, 0xFF, 0x3F, 0x50, 0x7D, 0x05, 0x00, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, - 0x3C, 0x02, 0x00, 0x80, 0x28, 0x13, 0x00, 0x2E, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, - 0x00, 0x80, 0x1E, 0x02, 0x00, 0x83, 0x0F, 0x00, 0x40, 0x07, 0x07, 0x00, 0x1E, 0x00, 0x85, 0xF0, - 0xFF, 0x0B, 0x90, 0xAA, 0x06, 0x1E, 0x00, 0x2B, 0x00, 0x80, 0x24, 0x02, 0x00, 0x80, 0xBC, 0x02, - 0x00, 0x80, 0x7C, 0x10, 0x00, 0x08, 0x00, 0x80, 0x04, 0x02, 0x00, 0x8E, 0x0B, 0x00, 0x40, 0x07, - 0x00, 0x80, 0x03, 0x00, 0xC0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xA0, 0x02, 0x00, 0x80, 0x74, 0x02, - 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x0E, 0x02, - 0x00, 0x8B, 0x0B, 0x00, 0x40, 0x03, 0x00, 0xC0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0x40, 0x0B, 0x00, - 0x07, 0x00, 0xAD, 0x55, 0x00, 0x80, 0xFF, 0x02, 0xE0, 0x42, 0x0B, 0xB0, 0x00, 0x1E, 0x74, 0x00, - 0x1D, 0x78, 0x00, 0x2E, 0x78, 0xD0, 0x2F, 0x78, 0xB8, 0x2D, 0x78, 0x1E, 0x2D, 0xF8, 0x07, 0x2D, - 0xB8, 0x00, 0x2D, 0x74, 0x00, 0x1D, 0xB0, 0x00, 0x0E, 0xE0, 0x96, 0x0B, 0x40, 0xFF, 0x02, 0x00, - 0x14, 0x0D, 0x00, 0x0A, 0x00, 0x89, 0xB4, 0x00, 0x90, 0xBF, 0x00, 0xF0, 0xB6, 0x00, 0x10, 0xB4, - 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, - 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, - 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x10, 0x00, 0x07, 0x00, 0x98, 0x15, 0x00, 0xD0, - 0xFF, 0x01, 0xB4, 0xD1, 0x07, 0x3C, 0x40, 0x0B, 0x2C, 0x00, 0x0B, 0x00, 0x40, 0x0B, 0x00, 0x80, - 0x07, 0x00, 0xD0, 0x02, 0x00, 0xB4, 0x02, 0x00, 0x80, 0x3D, 0x02, 0x00, 0x8D, 0x0F, 0x00, 0xC0, - 0x07, 0x00, 0xE0, 0x01, 0x00, 0xB8, 0x55, 0x15, 0xFC, 0xFF, 0x1F, 0x0F, 0x00, 0x07, 0x00, 0x9C, - 0x15, 0x00, 0xD0, 0xFF, 0x01, 0xB4, 0xD1, 0x07, 0x38, 0x40, 0x0B, 0x14, 0x00, 0x0B, 0x00, 0x40, - 0x0B, 0x00, 0xD0, 0x03, 0x40, 0xFF, 0x01, 0x00, 0xE9, 0x02, 0x00, 0x40, 0x0B, 0x02, 0x00, 0x8E, - 0x0F, 0x28, 0x00, 0x0F, 0x3C, 0x40, 0x0B, 0xF4, 0xD5, 0x07, 0xD0, 0xBF, 0x01, 0x00, 0x04, 0x0D, - 0x00, 0x07, 0x00, 0xAB, 0x40, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x03, 0x00, 0xF8, 0x03, 0x00, - 0x9D, 0x03, 0x00, 0x8B, 0x03, 0x80, 0x83, 0x03, 0xD0, 0x81, 0x03, 0xB0, 0x80, 0x03, 0x78, 0x80, - 0x03, 0xBC, 0xEA, 0x2B, 0xA9, 0xEA, 0x2B, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, - 0x0F, 0x00, 0x06, 0x00, 0x97, 0x40, 0x55, 0x05, 0xC0, 0xFF, 0x1F, 0xC0, 0xAA, 0x1A, 0xD0, 0x01, - 0x00, 0xD0, 0x01, 0x00, 0xD0, 0x51, 0x00, 0xE0, 0xFF, 0x07, 0xE0, 0x96, 0x0F, 0x02, 0x00, 0x80, - 0x1E, 0x02, 0x00, 0x80, 0x2D, 0x02, 0x00, 0x8E, 0x2C, 0x60, 0x00, 0x2C, 0xF0, 0x00, 0x1E, 0xD0, - 0x97, 0x0F, 0x40, 0xFF, 0x02, 0x00, 0x10, 0x0D, 0x00, 0x07, 0x00, 0x80, 0x40, 0x02, 0x00, 0x88, - 0xF9, 0x01, 0x80, 0x6F, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0x9F, 0xB4, 0x14, 0x00, 0xB4, - 0xFF, 0x02, 0xF8, 0x96, 0x0B, 0xB8, 0x00, 0x0F, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x1D, 0x74, 0x00, - 0x1E, 0xF0, 0x00, 0x0F, 0xD0, 0x96, 0x07, 0x40, 0xFF, 0x01, 0x00, 0x14, 0x0D, 0x00, 0x06, 0x00, - 0x88, 0x54, 0x55, 0x05, 0xFC, 0xFF, 0x2F, 0x54, 0x55, 0x1E, 0x02, 0x00, 0x8E, 0x0E, 0x00, 0x40, - 0x07, 0x00, 0x80, 0x03, 0x00, 0xC0, 0x02, 0x00, 0xE0, 0x01, 0x00, 0xB0, 0x02, 0x00, 0x80, 0x78, - 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x86, 0x0F, 0x00, 0x40, 0x07, 0x00, - 0xC0, 0x03, 0x10, 0x00, 0x07, 0x00, 0xAD, 0x54, 0x00, 0x80, 0xFF, 0x07, 0xD0, 0x46, 0x0F, 0xE0, - 0x00, 0x1E, 0xF0, 0x00, 0x1D, 0xE0, 0x00, 0x1E, 0xD0, 0x46, 0x0B, 0x40, 0xFF, 0x02, 0xD0, 0x9B, - 0x0B, 0xF0, 0x00, 0x1E, 0xB4, 0x00, 0x2C, 0xB4, 0x00, 0x2C, 0xF0, 0x00, 0x2D, 0xE0, 0x96, 0x0F, - 0x40, 0xFF, 0x02, 0x00, 0x10, 0x0D, 0x00, 0x07, 0x00, 0x9F, 0x15, 0x00, 0x80, 0xFF, 0x02, 0xE0, - 0x92, 0x07, 0xB4, 0x00, 0x0F, 0x74, 0x00, 0x1E, 0x78, 0x00, 0x1D, 0x74, 0x00, 0x1D, 0xB4, 0x00, - 0x1E, 0xE0, 0x96, 0x1F, 0x80, 0xBF, 0x1E, 0x00, 0x04, 0x0E, 0x02, 0x00, 0x88, 0x0B, 0x00, 0xD0, - 0x03, 0x40, 0xFA, 0x01, 0x80, 0x2F, 0x10, 0x00, 0x10, 0x00, 0x80, 0x60, 0x02, 0x00, 0x80, 0xF8, - 0x02, 0x00, 0x80, 0xF4, 0x14, 0x00, 0x80, 0x60, 0x02, 0x00, 0x80, 0xF8, 0x02, 0x00, 0x80, 0xF4, - 0x10, 0x00, 0x10, 0x00, 0x80, 0x60, 0x02, 0x00, 0x80, 0xF8, 0x02, 0x00, 0x80, 0xF8, 0x17, 0x00, - 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, - 0x80, 0x2C, 0x07, 0x00, 0x14, 0x00, 0x95, 0x04, 0x00, 0x90, 0x0F, 0x00, 0xF9, 0x06, 0xD0, 0x2F, - 0x00, 0xF4, 0x01, 0x00, 0xE0, 0x0B, 0x00, 0x40, 0xBE, 0x01, 0x00, 0xE0, 0x0F, 0x02, 0x00, 0x80, - 0x09, 0x15, 0x00, 0x15, 0x00, 0x88, 0x50, 0x55, 0x05, 0xF4, 0xFF, 0x1F, 0x50, 0x55, 0x05, 0x06, - 0x00, 0x85, 0xF4, 0xFF, 0x1F, 0x50, 0x55, 0x15, 0x18, 0x00, 0x12, 0x00, 0x80, 0x14, 0x02, 0x00, - 0x84, 0xF4, 0x02, 0x00, 0x90, 0x6F, 0x02, 0x00, 0x8E, 0xF8, 0x07, 0x00, 0x40, 0x1F, 0x00, 0xE4, - 0x0B, 0x40, 0xBF, 0x01, 0xF4, 0x07, 0x00, 0x64, 0x17, 0x00, 0x07, 0x00, 0x8A, 0x55, 0x00, 0x80, - 0xFF, 0x07, 0xE0, 0x96, 0x0F, 0xB0, 0x00, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x88, 0x0F, - 0x00, 0x80, 0x0B, 0x00, 0xD0, 0x02, 0x00, 0xB4, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x2C, - 0x08, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x10, 0x00, 0x07, 0x00, 0x89, 0x10, 0x00, 0x40, - 0xFE, 0x06, 0xD0, 0x02, 0x0E, 0x70, 0x10, 0x02, 0x28, 0x97, 0xFD, 0x31, 0x1C, 0x8B, 0x71, 0x4C, - 0x83, 0x61, 0x4D, 0xC2, 0x61, 0x8D, 0xC2, 0x70, 0x8D, 0xC2, 0x30, 0x4D, 0xFB, 0x29, 0x1C, 0x5A, - 0x0B, 0x38, 0x02, 0x00, 0x85, 0xE0, 0x55, 0x01, 0x80, 0xFF, 0x01, 0x0F, 0x00, 0x07, 0x00, 0x80, - 0x10, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x7D, 0x02, 0x00, 0x80, 0xBE, 0x02, 0x00, 0x80, - 0xEE, 0x02, 0x00, 0x9C, 0xDB, 0x01, 0x40, 0xC7, 0x02, 0x80, 0x83, 0x03, 0xC0, 0x42, 0x07, 0xD0, - 0x56, 0x0B, 0xE0, 0xFF, 0x0F, 0xB0, 0x55, 0x1E, 0x74, 0x00, 0x2C, 0x38, 0x00, 0x3C, 0x2C, 0x00, - 0x78, 0x0F, 0x00, 0x06, 0x00, 0xAC, 0x50, 0x15, 0x00, 0xF4, 0xFF, 0x02, 0xB4, 0x95, 0x0F, 0xB4, - 0x00, 0x1E, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x1E, 0xB4, 0x90, 0x0B, 0xF4, 0xFF, 0x02, 0xB4, 0x95, - 0x0F, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x3C, 0xB4, 0x00, 0x3C, 0xB4, 0x00, 0x2E, 0xB4, 0xAA, 0x0F, - 0xF4, 0xFF, 0x01, 0x0F, 0x00, 0x07, 0x00, 0x8E, 0x54, 0x00, 0x80, 0xFF, 0x07, 0xE0, 0x42, 0x0F, - 0xB4, 0x00, 0x2D, 0x78, 0x00, 0x2C, 0x38, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, - 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x90, 0x38, 0x00, 0x14, 0x78, 0x00, 0x2C, - 0xB0, 0x00, 0x1E, 0xD0, 0x96, 0x0B, 0x40, 0xFF, 0x02, 0x00, 0x10, 0x0D, 0x00, 0x06, 0x00, 0xAB, - 0x50, 0x05, 0x00, 0xF4, 0xBF, 0x01, 0xB4, 0xE5, 0x07, 0x74, 0x00, 0x0F, 0x74, 0x00, 0x2D, 0x74, - 0x00, 0x3C, 0x74, 0x00, 0x38, 0x74, 0x00, 0x38, 0x74, 0x00, 0x38, 0x74, 0x00, 0x38, 0x74, 0x00, - 0x2C, 0x74, 0x00, 0x1D, 0x74, 0x40, 0x0F, 0xB4, 0xE9, 0x03, 0xF4, 0x6F, 0x10, 0x00, 0x06, 0x00, - 0x89, 0x50, 0x55, 0x05, 0xF4, 0xFF, 0x1F, 0xB4, 0x55, 0x05, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, - 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x86, 0xF4, 0xFF, 0x0B, 0xB4, 0x55, 0x05, - 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x85, - 0xB4, 0xAA, 0x1A, 0xF4, 0xFF, 0x2F, 0x0F, 0x00, 0x06, 0x00, 0x89, 0x50, 0x55, 0x05, 0xF0, 0xFF, - 0x2F, 0xB0, 0x55, 0x15, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, - 0xB0, 0x02, 0x00, 0x86, 0xF0, 0xAA, 0x06, 0xF0, 0xAA, 0x06, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, - 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x11, - 0x00, 0x07, 0x00, 0x8E, 0x54, 0x00, 0x80, 0xFF, 0x06, 0xE0, 0x46, 0x0F, 0xB4, 0x00, 0x2D, 0x78, - 0x00, 0x2C, 0x3C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x96, 0x2C, 0xE0, - 0x3F, 0x3C, 0x50, 0x3D, 0x38, 0x00, 0x3C, 0x78, 0x00, 0x3C, 0xF0, 0x00, 0x3C, 0xD0, 0x57, 0x2E, - 0x40, 0xFF, 0x06, 0x00, 0x10, 0x0D, 0x00, 0x06, 0x00, 0xAC, 0x10, 0x00, 0x04, 0x38, 0x00, 0x2C, - 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x78, 0x00, 0x2D, 0xF8, - 0xFF, 0x2F, 0x78, 0x55, 0x2D, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, - 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x0F, 0x00, 0x06, 0x00, 0x8A, 0x50, 0x55, 0x05, 0xF4, - 0xFF, 0x1F, 0x50, 0x7D, 0x05, 0x00, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, - 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, - 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x87, 0x3C, 0x00, 0xA4, 0xBE, 0x1A, 0xF4, - 0xFF, 0x1F, 0x0F, 0x00, 0x08, 0x00, 0x80, 0x04, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, - 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, - 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x8E, 0x1E, - 0x3C, 0x00, 0x0E, 0x78, 0x40, 0x0B, 0xF0, 0xE6, 0x07, 0x90, 0xBF, 0x01, 0x00, 0x04, 0x0D, 0x00, - 0x06, 0x00, 0xAC, 0x10, 0x00, 0x14, 0xB4, 0x00, 0x2D, 0xB4, 0x40, 0x0F, 0xB4, 0xC0, 0x03, 0xB4, - 0xF0, 0x01, 0xB4, 0x78, 0x00, 0xB4, 0x2D, 0x00, 0xB4, 0x2F, 0x00, 0xF4, 0x7B, 0x00, 0xF4, 0xF5, - 0x00, 0xB4, 0xE0, 0x02, 0xB4, 0xC0, 0x07, 0xB4, 0x40, 0x0F, 0xB4, 0x00, 0x2E, 0xB4, 0x00, 0x7C, - 0x0F, 0x00, 0x06, 0x00, 0x80, 0x10, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, - 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, - 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, - 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x85, 0xF0, 0xAA, 0x1A, 0xF0, 0xFF, 0x2F, 0x0F, - 0x00, 0x06, 0x00, 0xAC, 0x10, 0x00, 0x04, 0xF8, 0x00, 0x2E, 0xF8, 0x01, 0x2F, 0xF8, 0x42, 0x2F, - 0xB8, 0x83, 0x2E, 0x78, 0xC7, 0x2D, 0x78, 0xEB, 0x2C, 0x38, 0xBE, 0x2C, 0x78, 0x7D, 0x2C, 0x78, - 0x3C, 0x2C, 0x78, 0x28, 0x2C, 0x78, 0x00, 0x2C, 0x78, 0x00, 0x2C, 0x78, 0x00, 0x2C, 0x78, 0x00, - 0x2C, 0x0F, 0x00, 0x06, 0x00, 0x97, 0x10, 0x00, 0x04, 0xB8, 0x00, 0x2D, 0xF8, 0x00, 0x2D, 0xF8, - 0x02, 0x2D, 0xF8, 0x07, 0x2D, 0x78, 0x0B, 0x2D, 0x78, 0x1E, 0x2D, 0x78, 0x2C, 0x2D, 0x02, 0x78, - 0x92, 0x2D, 0x78, 0xB0, 0x2D, 0x78, 0xE0, 0x2E, 0x78, 0xC0, 0x2F, 0x78, 0x80, 0x2F, 0x78, 0x00, - 0x2F, 0x78, 0x00, 0x2D, 0x0F, 0x00, 0x07, 0x00, 0x98, 0x15, 0x00, 0x80, 0xFF, 0x02, 0xE0, 0x96, - 0x0B, 0xB4, 0x00, 0x1E, 0x78, 0x00, 0x2D, 0x38, 0x00, 0x2C, 0x3C, 0x00, 0x3C, 0x2C, 0x00, 0x3C, - 0x2C, 0x00, 0x02, 0x3C, 0x92, 0x00, 0x3C, 0x38, 0x00, 0x2C, 0x78, 0x00, 0x2D, 0xB0, 0x00, 0x0E, - 0xD0, 0xD7, 0x07, 0x40, 0xFF, 0x01, 0x00, 0x14, 0x0D, 0x00, 0x06, 0x00, 0x9E, 0x50, 0x15, 0x00, - 0xF0, 0xFF, 0x07, 0xB0, 0x55, 0x1F, 0xB0, 0x00, 0x3C, 0xB0, 0x00, 0x38, 0xB0, 0x00, 0x38, 0xB0, - 0x00, 0x3C, 0xB0, 0x55, 0x1F, 0xF0, 0xFF, 0x07, 0xB0, 0x55, 0x00, 0xB0, 0x02, 0x00, 0x80, 0xB0, - 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x11, 0x00, 0x07, 0x00, - 0xAE, 0x55, 0x00, 0x80, 0xFF, 0x02, 0xE0, 0x96, 0x0B, 0xB4, 0x00, 0x1E, 0x38, 0x00, 0x2C, 0x3C, - 0x00, 0x3C, 0x2C, 0x00, 0x38, 0x2C, 0x00, 0x38, 0x2C, 0x00, 0x38, 0x2C, 0x00, 0x38, 0x3C, 0x00, - 0x3C, 0x78, 0x00, 0x2D, 0xB4, 0x00, 0x1E, 0xE0, 0x96, 0x0B, 0x40, 0xFF, 0x07, 0x00, 0x44, 0x2F, - 0x02, 0x00, 0x80, 0x38, 0x09, 0x00, 0x06, 0x00, 0xAC, 0x50, 0x15, 0x00, 0xF4, 0xFF, 0x02, 0xB4, - 0x95, 0x0F, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x2C, 0xB4, 0x00, 0x2C, 0xB4, 0x00, 0x1E, 0xB4, 0x95, - 0x0B, 0xF4, 0xFF, 0x02, 0xB4, 0xE5, 0x01, 0xB4, 0xC0, 0x03, 0xB4, 0x40, 0x07, 0xB4, 0x00, 0x0F, - 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x3C, 0x0F, 0x00, 0x07, 0x00, 0x8E, 0x54, 0x00, 0x80, 0xFF, 0x07, - 0xE0, 0x46, 0x1F, 0xB4, 0x00, 0x2D, 0x74, 0x00, 0x2C, 0xB4, 0x02, 0x00, 0x8B, 0xE0, 0x07, 0x00, - 0x80, 0xBF, 0x01, 0x00, 0xF4, 0x0B, 0x00, 0x40, 0x1F, 0x02, 0x00, 0x8E, 0x3C, 0x38, 0x00, 0x3C, - 0xB4, 0x00, 0x3D, 0xE0, 0x96, 0x1F, 0x40, 0xFF, 0x06, 0x00, 0x10, 0x0D, 0x00, 0x06, 0x00, 0x8A, - 0x54, 0x55, 0x15, 0xFD, 0xFF, 0x7F, 0x54, 0x7D, 0x15, 0x00, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, - 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, - 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x02, - 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x3C, 0x10, 0x00, 0x06, 0x00, 0xAE, 0x10, 0x00, 0x04, 0x38, - 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, - 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2D, 0x78, 0x00, 0x2D, - 0xB4, 0x00, 0x1E, 0xE0, 0x96, 0x0B, 0x40, 0xFF, 0x01, 0x00, 0x14, 0x0D, 0x00, 0x06, 0x00, 0xA2, - 0x04, 0x00, 0x10, 0x3C, 0x00, 0x3C, 0x38, 0x00, 0x2D, 0x74, 0x00, 0x1D, 0xB0, 0x00, 0x0E, 0xE0, - 0x00, 0x0B, 0xE0, 0x41, 0x07, 0xD0, 0x82, 0x03, 0xC0, 0xC3, 0x02, 0x80, 0xD7, 0x01, 0x40, 0xE7, - 0x01, 0x00, 0xFB, 0x02, 0x00, 0x80, 0xBE, 0x02, 0x00, 0x80, 0x7D, 0x02, 0x00, 0x80, 0x3C, 0x10, - 0x00, 0x06, 0x00, 0x80, 0x04, 0x02, 0x10, 0x8A, 0x2D, 0x38, 0x74, 0x2C, 0x7C, 0x74, 0x2C, 0x7C, - 0x74, 0x28, 0xBD, 0x02, 0x38, 0x80, 0xAD, 0x02, 0x38, 0x99, 0xDA, 0x38, 0x34, 0xDB, 0x2C, 0x74, - 0xC7, 0x2D, 0xB4, 0xC7, 0x1E, 0xB0, 0x83, 0x1E, 0xF0, 0x83, 0x1F, 0xF0, 0x42, 0x0F, 0xE0, 0x42, - 0x0F, 0xE0, 0x01, 0x0F, 0x0F, 0x00, 0x06, 0x00, 0x93, 0x14, 0x00, 0x14, 0x78, 0x00, 0x3D, 0xF0, - 0x00, 0x1E, 0xD0, 0x42, 0x0B, 0xC0, 0xC3, 0x03, 0x40, 0xDB, 0x02, 0x00, 0xFE, 0x02, 0x00, 0x80, - 0x7C, 0x02, 0x00, 0x80, 0xBD, 0x02, 0x00, 0x90, 0xEF, 0x01, 0x40, 0xD7, 0x02, 0xC0, 0x83, 0x07, - 0xE0, 0x01, 0x0F, 0xB4, 0x00, 0x2E, 0x7C, 0x00, 0x3C, 0x0F, 0x00, 0x06, 0x00, 0x96, 0x04, 0x00, - 0x14, 0x3C, 0x00, 0x2D, 0x78, 0x00, 0x1E, 0xF0, 0x00, 0x0F, 0xE0, 0x81, 0x07, 0xC0, 0xC2, 0x03, - 0x80, 0xD7, 0x01, 0x00, 0xFB, 0x02, 0x00, 0x80, 0x7E, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, - 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, 0x2C, 0x02, 0x00, 0x80, - 0x2C, 0x10, 0x00, 0x06, 0x00, 0x93, 0x54, 0x55, 0x05, 0xF8, 0xFF, 0x1F, 0x54, 0x55, 0x0F, 0x00, - 0x80, 0x07, 0x00, 0xD0, 0x02, 0x00, 0xE0, 0x01, 0x00, 0xB4, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, - 0x8B, 0x1E, 0x00, 0x40, 0x0B, 0x00, 0xC0, 0x03, 0x00, 0xE0, 0x01, 0x00, 0xB4, 0x02, 0x00, 0x85, - 0xB8, 0xAA, 0x1A, 0xFC, 0xFF, 0x2F, 0x0F, 0x00, 0x81, 0x00, 0x55, 0x02, 0x00, 0x80, 0xFF, 0x02, - 0x00, 0x80, 0x5F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, - 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, - 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, - 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, - 0x00, 0x80, 0x5F, 0x02, 0x00, 0x80, 0xFF, 0x07, 0x00, 0x06, 0x00, 0x80, 0x40, 0x02, 0x00, 0x8A, - 0xD0, 0x01, 0x00, 0xC0, 0x02, 0x00, 0x80, 0x03, 0x00, 0x40, 0x07, 0x02, 0x00, 0x80, 0x0B, 0x02, - 0x00, 0x80, 0x0E, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x74, 0x02, - 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xE0, 0x02, 0x00, 0x87, 0xD0, 0x01, 0x00, 0xC0, 0x02, 0x00, - 0x40, 0x07, 0x02, 0x00, 0x80, 0x0B, 0x02, 0x00, 0x80, 0x05, 0x09, 0x00, 0x81, 0x00, 0x55, 0x02, - 0x00, 0x80, 0xBF, 0x02, 0x00, 0x80, 0xB5, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, - 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, - 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, - 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, - 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB5, 0x02, 0x00, 0x80, 0xBF, 0x07, 0x00, 0x0A, 0x00, 0x80, - 0x3C, 0x02, 0x00, 0x80, 0x7D, 0x02, 0x00, 0x80, 0xBE, 0x02, 0x00, 0x8D, 0xEB, 0x00, 0x80, 0xC3, - 0x02, 0xC0, 0x82, 0x03, 0xD0, 0x41, 0x07, 0x50, 0x00, 0x05, 0x21, 0x00, 0x33, 0x00, 0x85, 0xF4, - 0xFF, 0x1F, 0x54, 0x55, 0x15, 0x09, 0x00, 0x07, 0x00, 0x80, 0x15, 0x02, 0x00, 0x80, 0x3C, 0x02, - 0x00, 0x80, 0xB4, 0x34, 0x00, 0x12, 0x00, 0xA2, 0x40, 0xAA, 0x01, 0xD0, 0xEB, 0x07, 0xF0, 0x40, - 0x0F, 0x50, 0x00, 0x0E, 0x00, 0x55, 0x0E, 0xD0, 0xFF, 0x0F, 0xF0, 0x01, 0x0E, 0x74, 0x00, 0x0E, - 0x74, 0x00, 0x0F, 0xF0, 0xE6, 0x1F, 0xD0, 0xBF, 0x1E, 0x00, 0x04, 0x0D, 0x00, 0x06, 0x00, 0x80, - 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0xA2, - 0xB4, 0xA9, 0x01, 0xF4, 0xEF, 0x07, 0xF4, 0x41, 0x0F, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x2D, 0xB4, - 0x00, 0x2D, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1E, 0xF4, 0x96, 0x0B, 0x74, 0xFE, - 0x02, 0x00, 0x10, 0x0D, 0x00, 0x13, 0x00, 0x8B, 0xA9, 0x01, 0xD0, 0xEB, 0x07, 0xF0, 0x01, 0x0F, - 0xB4, 0x00, 0x1D, 0x78, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x8D, 0x74, - 0x00, 0x04, 0xF0, 0x00, 0x1D, 0xD0, 0x96, 0x0B, 0x40, 0xFF, 0x02, 0x00, 0x10, 0x0D, 0x00, 0x08, - 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0xA3, 0x1E, 0x40, - 0x6A, 0x1E, 0xD0, 0xEF, 0x1F, 0xF0, 0x41, 0x1F, 0xB4, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x78, 0x00, - 0x1E, 0x78, 0x00, 0x1E, 0x74, 0x00, 0x1E, 0xF0, 0x00, 0x1E, 0xE0, 0x96, 0x1F, 0x80, 0xBF, 0x1E, - 0x00, 0x04, 0x0D, 0x00, 0x13, 0x00, 0x94, 0xA9, 0x01, 0xC0, 0xEB, 0x07, 0xE0, 0x01, 0x0F, 0xB4, - 0x00, 0x1D, 0x78, 0x55, 0x2D, 0xF8, 0xFF, 0x2F, 0x78, 0x55, 0x05, 0x78, 0x02, 0x00, 0x8A, 0xF0, - 0x00, 0x04, 0xD0, 0x57, 0x1F, 0x40, 0xFF, 0x06, 0x00, 0x10, 0x0D, 0x00, 0x04, 0x00, 0x89, 0x40, - 0x15, 0x00, 0xF4, 0x3F, 0x00, 0x7C, 0x10, 0x00, 0x1D, 0x02, 0x00, 0x89, 0x1E, 0x00, 0xA4, 0xAE, - 0x0A, 0xA4, 0xBF, 0x1A, 0x00, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, - 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, - 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x10, 0x00, 0x12, 0x00, 0xAC, 0x40, 0x6A, 0x09, 0xD0, 0xEF, - 0x1E, 0xF0, 0x41, 0x1F, 0xB4, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x1E, - 0x74, 0x00, 0x1E, 0xF0, 0x00, 0x1E, 0xE0, 0x96, 0x1F, 0x80, 0xBF, 0x1E, 0x00, 0x04, 0x1E, 0x10, - 0x00, 0x0F, 0xF0, 0xD6, 0x07, 0x80, 0xFF, 0x01, 0x03, 0x00, 0x06, 0x00, 0x80, 0xB4, 0x02, 0x00, - 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0xA0, 0xB4, 0xA8, 0x01, - 0xB4, 0xEF, 0x0B, 0xF4, 0x01, 0x0F, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, - 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0x0F, 0x00, - 0x07, 0x00, 0x80, 0x10, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x80, 0x64, 0x04, 0x00, 0x84, 0xA0, - 0x6A, 0x00, 0xF0, 0x7F, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, - 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x87, 0x74, - 0x00, 0xA0, 0xBA, 0x1A, 0xF0, 0xFF, 0x2F, 0x0F, 0x00, 0x07, 0x00, 0x80, 0x40, 0x02, 0x00, 0x83, - 0xE0, 0x01, 0x00, 0x90, 0x04, 0x00, 0xAF, 0x80, 0xAA, 0x00, 0xC0, 0xFF, 0x01, 0x00, 0xE0, 0x01, - 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, - 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x01, 0x00, 0xE0, 0x00, 0x50, 0xB9, - 0x00, 0xF0, 0x2F, 0x00, 0x40, 0x01, 0x00, 0x06, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, - 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0xA0, 0xB4, 0x00, 0x0A, 0xB4, 0x80, 0x07, - 0xB4, 0xE0, 0x01, 0xB4, 0x78, 0x00, 0xB4, 0x1E, 0x00, 0xF4, 0x2F, 0x00, 0xF4, 0x79, 0x00, 0xB4, - 0xF0, 0x01, 0xB4, 0xD0, 0x03, 0xB4, 0x40, 0x0B, 0xB4, 0x00, 0x2E, 0x0F, 0x00, 0x06, 0x00, 0x84, - 0xF0, 0x7F, 0x00, 0xA0, 0x7A, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, - 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, - 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x80, 0x74, 0x02, 0x00, 0x87, - 0x74, 0x00, 0xA0, 0xBA, 0x1A, 0xF0, 0xFF, 0x2F, 0x0F, 0x00, 0x12, 0x00, 0xA0, 0x58, 0x4A, 0x0A, - 0xFC, 0xFF, 0x2E, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, - 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x2C, 0x3C, 0x38, 0x0F, 0x00, - 0x12, 0x00, 0xA0, 0x64, 0xA8, 0x01, 0xB4, 0xEF, 0x0B, 0xF4, 0x01, 0x0F, 0xB4, 0x00, 0x1D, 0xB4, - 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, - 0x1D, 0xB4, 0x00, 0x1D, 0x0F, 0x00, 0x13, 0x00, 0xA1, 0xAA, 0x00, 0xD0, 0xEB, 0x07, 0xF0, 0x41, - 0x0F, 0x74, 0x00, 0x1D, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x38, 0x00, 0x2C, 0x78, 0x00, 0x2D, - 0xB4, 0x00, 0x1E, 0xE0, 0x96, 0x0B, 0x80, 0xFF, 0x02, 0x00, 0x14, 0x0D, 0x00, 0x12, 0x00, 0xA4, - 0x64, 0xA9, 0x01, 0xB4, 0xFB, 0x07, 0xF4, 0x41, 0x0F, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x2D, 0xB4, - 0x00, 0x2D, 0xB4, 0x00, 0x2D, 0xB4, 0x00, 0x1D, 0xB4, 0x00, 0x0F, 0xF4, 0x96, 0x0B, 0xB4, 0xFE, - 0x02, 0xB4, 0x10, 0x00, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x80, 0xB4, 0x05, 0x00, 0x12, - 0x00, 0xA3, 0x40, 0x6A, 0x09, 0xD0, 0xEB, 0x1F, 0xF0, 0x01, 0x1F, 0xB4, 0x00, 0x1E, 0x78, 0x00, - 0x1E, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x74, 0x00, 0x1E, 0xF0, 0x00, 0x1E, 0xE0, 0x96, 0x1F, - 0x80, 0xBF, 0x1E, 0x00, 0x04, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, 0x80, 0x1E, 0x02, 0x00, - 0x80, 0x1E, 0x03, 0x00, 0x12, 0x00, 0x9F, 0x40, 0x92, 0x1A, 0x80, 0xF7, 0x1F, 0x80, 0x1F, 0x00, - 0x80, 0x07, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x00, 0x80, - 0x03, 0x00, 0x80, 0x03, 0x00, 0x80, 0x03, 0x10, 0x00, 0x13, 0x00, 0xA1, 0xA9, 0x01, 0xD0, 0xEB, - 0x0B, 0xE0, 0x01, 0x1E, 0xF0, 0x00, 0x19, 0xE0, 0x06, 0x00, 0x80, 0xBF, 0x01, 0x00, 0xA4, 0x0F, - 0x10, 0x00, 0x1E, 0xB4, 0x00, 0x1D, 0xE0, 0x56, 0x0F, 0x80, 0xFF, 0x06, 0x00, 0x10, 0x0D, 0x00, - 0x0D, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x89, 0x0F, 0x00, 0xA4, 0xAF, 0x0A, 0xA8, 0xAF, 0x0A, 0x00, - 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, - 0x0F, 0x02, 0x00, 0x80, 0x0F, 0x02, 0x00, 0x80, 0x0E, 0x02, 0x00, 0x86, 0x6D, 0x09, 0x00, 0xF8, - 0x1F, 0x00, 0x40, 0x0D, 0x00, 0x12, 0x00, 0xA2, 0x60, 0x00, 0x19, 0xB4, 0x00, 0x1E, 0xB4, 0x00, - 0x1E, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x1E, 0xB4, 0x00, 0x1E, - 0xF0, 0x00, 0x1E, 0xE0, 0x96, 0x1F, 0x80, 0xBF, 0x1D, 0x00, 0x04, 0x0D, 0x00, 0x12, 0x00, 0x96, - 0x28, 0x00, 0x18, 0x78, 0x00, 0x2D, 0xB4, 0x00, 0x0E, 0xE0, 0x00, 0x0B, 0xD0, 0x41, 0x07, 0xC0, - 0x82, 0x03, 0x80, 0xC3, 0x02, 0x00, 0xDB, 0x02, 0x00, 0x80, 0xBE, 0x02, 0x00, 0x80, 0x7D, 0x02, - 0x00, 0x80, 0x3C, 0x10, 0x00, 0x12, 0x00, 0xA0, 0x09, 0x14, 0x60, 0x1D, 0x38, 0x70, 0x1C, 0x3C, - 0x74, 0x2C, 0x7D, 0x38, 0x28, 0xAA, 0x28, 0x34, 0xDA, 0x2C, 0x74, 0xD7, 0x1D, 0xB0, 0xC3, 0x0E, - 0xE0, 0x82, 0x0F, 0xE0, 0x42, 0x0B, 0xD0, 0x41, 0x07, 0x0F, 0x00, 0x12, 0x00, 0x8D, 0x64, 0x00, - 0x19, 0xF0, 0x00, 0x1F, 0xD0, 0x82, 0x07, 0x80, 0xD7, 0x02, 0x00, 0xFE, 0x02, 0x00, 0x80, 0x7C, - 0x02, 0x00, 0x8D, 0xBE, 0x00, 0x40, 0xEB, 0x01, 0xC0, 0x83, 0x07, 0xE0, 0x01, 0x0F, 0xB8, 0x00, - 0x2D, 0x0F, 0x00, 0x12, 0x00, 0x99, 0x18, 0x00, 0x24, 0x3C, 0x00, 0x2C, 0xB4, 0x00, 0x1E, 0xF0, - 0x00, 0x0F, 0xD0, 0x41, 0x0B, 0xC0, 0x83, 0x03, 0x80, 0xC7, 0x02, 0x00, 0xEB, 0x01, 0x00, 0xBE, - 0x02, 0x00, 0x80, 0x7D, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x1D, 0x02, 0x00, 0x88, 0x0F, - 0x00, 0x90, 0x07, 0x00, 0xF4, 0x02, 0x00, 0x10, 0x02, 0x00, 0x12, 0x00, 0x8D, 0xA4, 0xAA, 0x0A, - 0xF4, 0xFF, 0x1F, 0x00, 0x80, 0x0B, 0x00, 0xD0, 0x02, 0x00, 0xF4, 0x02, 0x00, 0x80, 0x7C, 0x02, - 0x00, 0x8D, 0x1E, 0x00, 0x80, 0x0B, 0x00, 0xD0, 0x02, 0x00, 0xF4, 0x56, 0x15, 0xF4, 0xFF, 0x2F, - 0x0F, 0x00, 0x05, 0x00, 0x85, 0x05, 0x00, 0xC0, 0x07, 0x00, 0xE0, 0x02, 0x00, 0x80, 0xB0, 0x02, - 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB4, 0x02, - 0x00, 0x86, 0x78, 0x00, 0x80, 0x1F, 0x00, 0x80, 0x1F, 0x02, 0x00, 0x80, 0x78, 0x02, 0x00, 0x80, - 0xB4, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, 0xB0, 0x02, 0x00, 0x80, - 0xF0, 0x02, 0x00, 0x84, 0xE0, 0x01, 0x00, 0x80, 0x07, 0x02, 0x00, 0x80, 0x05, 0x03, 0x00, 0x0A, - 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, - 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, - 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, - 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x02, - 0x00, 0x80, 0x28, 0x02, 0x00, 0x80, 0x28, 0x04, 0x00, 0x03, 0x00, 0x84, 0x40, 0x01, 0x00, 0x40, - 0x0B, 0x02, 0x00, 0x80, 0x2D, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, - 0x38, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0xB4, 0x02, 0x00, 0x86, - 0xD0, 0x0B, 0x00, 0xD0, 0x0B, 0x00, 0xB4, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x38, 0x02, - 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x38, 0x02, 0x00, 0x80, 0x3C, 0x02, 0x00, 0x86, 0x1D, 0x00, - 0x40, 0x0B, 0x00, 0x40, 0x01, 0x04, 0x00, 0x1B, 0x00, 0x8B, 0xA0, 0x06, 0x10, 0xBC, 0x1F, 0x70, - 0x0D, 0xB8, 0x3E, 0x05, 0xD0, 0x1F, 0x1B, 0x00, +const uint8_t font_robotomono20[2396] = { + 0x00, 0xFF, 0x14, 0x00, 0x00, 0x51, 0x46, 0x46, 0x01, 0x5C, 0x09, 0x00, 0x00, 0xA3, 0xF6, 0xFF, + 0xFF, 0x16, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0x01, 0xFE, 0x1D, 0x01, 0x00, 0x05, 0x00, + 0x00, 0x85, 0x00, 0x00, 0x06, 0x04, 0x00, 0x4D, 0x06, 0x00, 0x0B, 0x0D, 0x00, 0x4F, 0x14, 0x00, + 0x4D, 0x1C, 0x00, 0x43, 0x23, 0x00, 0xC7, 0x24, 0x00, 0x07, 0x2A, 0x00, 0x89, 0x2F, 0x00, 0x4B, + 0x33, 0x00, 0x04, 0x38, 0x00, 0xC6, 0x39, 0x00, 0x85, 0x3B, 0x00, 0x48, 0x3D, 0x00, 0xCB, 0x42, + 0x00, 0xCB, 0x48, 0x00, 0xCB, 0x4E, 0x00, 0x0B, 0x55, 0x00, 0x0B, 0x5B, 0x00, 0x0B, 0x61, 0x00, + 0x0B, 0x67, 0x00, 0x0B, 0x6D, 0x00, 0x0B, 0x73, 0x00, 0x0B, 0x79, 0x00, 0x05, 0x7F, 0x00, 0xC4, + 0x81, 0x00, 0x8A, 0x84, 0x00, 0xCB, 0x88, 0x00, 0x4A, 0x8C, 0x00, 0x49, 0x90, 0x00, 0xD2, 0x95, + 0x00, 0x0D, 0xA1, 0x00, 0x0C, 0xA8, 0x00, 0xCD, 0xAE, 0x00, 0x0D, 0xB6, 0x00, 0xCB, 0xBC, 0x00, + 0x0B, 0xC3, 0x00, 0x0E, 0xC9, 0x00, 0x8E, 0xD0, 0x00, 0x05, 0xD8, 0x00, 0x8B, 0xDB, 0x00, 0x4D, + 0xE1, 0x00, 0x8B, 0xE8, 0x00, 0xD1, 0xEE, 0x00, 0x8E, 0xF7, 0x00, 0x0E, 0xFF, 0x00, 0xCD, 0x06, + 0x01, 0x8E, 0x0D, 0x01, 0xCC, 0x15, 0x01, 0x8C, 0x1C, 0x01, 0x0C, 0x23, 0x01, 0x8D, 0x29, 0x01, + 0x8D, 0x30, 0x01, 0x92, 0x37, 0x01, 0xCD, 0x40, 0x01, 0xCC, 0x47, 0x01, 0x4C, 0x4E, 0x01, 0x06, + 0x55, 0x01, 0x89, 0x59, 0x01, 0x45, 0x5F, 0x01, 0x08, 0x63, 0x01, 0x09, 0x66, 0x01, 0xC6, 0x67, + 0x01, 0x8B, 0x69, 0x01, 0xCB, 0x6E, 0x01, 0x4A, 0x75, 0x01, 0x0B, 0x7A, 0x01, 0x8B, 0x80, 0x01, + 0x87, 0x85, 0x01, 0x0B, 0x8A, 0x01, 0x8B, 0x90, 0x01, 0x45, 0x97, 0x01, 0xC5, 0x9A, 0x01, 0x8B, + 0x9E, 0x01, 0x45, 0xA5, 0x01, 0xD2, 0xA8, 0x01, 0x4B, 0xB0, 0x01, 0x8B, 0xB5, 0x01, 0x8B, 0xBA, + 0x01, 0xCB, 0xC0, 0x01, 0x47, 0xC7, 0x01, 0x0A, 0xCB, 0x01, 0xC7, 0xCF, 0x01, 0x4B, 0xD4, 0x01, + 0x8A, 0xD9, 0x01, 0x4F, 0xDE, 0x01, 0x0A, 0xE5, 0x01, 0x0A, 0xEA, 0x01, 0x0A, 0xF0, 0x01, 0x07, + 0xF5, 0x01, 0xC5, 0xFA, 0x01, 0x87, 0xFE, 0x01, 0x0E, 0x04, 0x02, 0x04, 0xFB, 0x1C, 0x08, 0x00, + 0x0E, 0x00, 0x02, 0x00, 0x88, 0xC6, 0x08, 0x21, 0x84, 0x10, 0x42, 0x00, 0x60, 0x04, 0x03, 0x00, + 0x85, 0x00, 0x60, 0x59, 0x96, 0x25, 0x01, 0x0B, 0x00, 0x05, 0x00, 0x95, 0x30, 0x03, 0x22, 0x40, + 0x04, 0xFF, 0x83, 0x19, 0x30, 0x03, 0x22, 0x40, 0x04, 0xFF, 0x83, 0x19, 0x30, 0x03, 0x66, 0x40, + 0x04, 0x88, 0x09, 0x00, 0x02, 0x00, 0x97, 0x03, 0x18, 0xE0, 0xC1, 0x1F, 0x86, 0x11, 0x8C, 0x41, + 0x1C, 0xC0, 0x03, 0x78, 0x00, 0x07, 0x30, 0x83, 0x19, 0x8C, 0x3F, 0xF8, 0x00, 0x01, 0x08, 0x05, + 0x00, 0x05, 0x00, 0x9A, 0x80, 0x03, 0x60, 0x02, 0x10, 0x23, 0x88, 0x19, 0xC4, 0x04, 0x26, 0x01, + 0xDE, 0x00, 0xA0, 0x03, 0x68, 0x02, 0x16, 0x03, 0x89, 0x41, 0xC4, 0x20, 0x26, 0x00, 0x0E, 0x0A, + 0x00, 0x05, 0x00, 0x96, 0x78, 0x80, 0x1F, 0x18, 0x03, 0x63, 0x60, 0x0C, 0xF8, 0x00, 0x07, 0xF0, + 0x01, 0x67, 0x62, 0x5C, 0x0C, 0x8F, 0xC1, 0xE1, 0x3F, 0xF8, 0x0C, 0x08, 0x00, 0x82, 0x80, 0x24, + 0x09, 0x06, 0x00, 0x93, 0x00, 0x10, 0x0C, 0x82, 0x41, 0x30, 0x18, 0x04, 0x83, 0xC1, 0x60, 0x30, + 0x10, 0x18, 0x0C, 0x04, 0x06, 0x02, 0x03, 0x01, 0x80, 0x00, 0x02, 0x80, 0x8E, 0xC0, 0x40, 0x60, + 0x30, 0x18, 0x08, 0x04, 0x06, 0x81, 0x60, 0x30, 0x18, 0x04, 0x83, 0x20, 0x02, 0x00, 0x03, 0x00, + 0x89, 0x80, 0x00, 0x41, 0x92, 0x3F, 0x1C, 0x3C, 0xC8, 0x10, 0x01, 0x0C, 0x00, 0x07, 0x00, 0x8D, + 0x30, 0x80, 0x01, 0x0C, 0x60, 0xF0, 0xBF, 0xFF, 0xC0, 0x00, 0x06, 0x30, 0x80, 0x01, 0x0A, 0x00, + 0x07, 0x00, 0x83, 0x60, 0x66, 0x22, 0x00, 0x07, 0x00, 0x81, 0xF0, 0x01, 0x08, 0x00, 0x09, 0x00, + 0x81, 0x60, 0x04, 0x03, 0x00, 0x03, 0x00, 0x02, 0x40, 0x82, 0x60, 0x20, 0x30, 0x02, 0x10, 0x81, + 0x18, 0x08, 0x02, 0x0C, 0x83, 0x04, 0x06, 0x02, 0x03, 0x04, 0x00, 0x04, 0x00, 0x92, 0xF0, 0xC1, + 0x1F, 0x86, 0x19, 0xCC, 0x60, 0x06, 0x33, 0x98, 0xC1, 0x0C, 0x66, 0x30, 0x83, 0x31, 0x8C, 0x3F, + 0xF8, 0x08, 0x00, 0x04, 0x00, 0x02, 0x80, 0x90, 0x07, 0x3E, 0x80, 0x01, 0x0C, 0x60, 0x00, 0x03, + 0x18, 0xC0, 0x00, 0x06, 0x30, 0x80, 0x01, 0x0C, 0x60, 0x08, 0x00, 0x04, 0x00, 0x93, 0xF0, 0xC1, + 0x1F, 0x83, 0x19, 0x0C, 0x60, 0x00, 0x01, 0x0C, 0x30, 0xC0, 0x00, 0x03, 0x0C, 0x30, 0xC0, 0x01, + 0xFE, 0x07, 0x07, 0x00, 0x04, 0x00, 0x92, 0xF0, 0xC1, 0x1F, 0x83, 0x19, 0x0C, 0x60, 0x80, 0x81, + 0x07, 0x78, 0x00, 0x06, 0x30, 0x83, 0x19, 0x8C, 0x3F, 0xF8, 0x08, 0x00, 0x05, 0x00, 0x92, 0x03, + 0x1C, 0xF0, 0x80, 0x06, 0x36, 0x98, 0x61, 0x0C, 0x63, 0x0C, 0xE3, 0x7F, 0xC0, 0x00, 0x06, 0x30, + 0x80, 0x01, 0x07, 0x00, 0x04, 0x00, 0x92, 0xF0, 0x87, 0x3F, 0x06, 0x30, 0x80, 0x01, 0xFC, 0xE0, + 0x0F, 0xC0, 0x00, 0x06, 0x20, 0x82, 0x31, 0x8C, 0x3F, 0xF0, 0x08, 0x00, 0x04, 0x00, 0x92, 0xC0, + 0x01, 0x0F, 0x0C, 0x30, 0x80, 0x01, 0xF4, 0xF0, 0x8F, 0xC3, 0x0C, 0x66, 0x30, 0x82, 0x31, 0x0C, + 0x3F, 0xF0, 0x08, 0x00, 0x04, 0x00, 0x92, 0xFC, 0x07, 0x30, 0x80, 0x01, 0x04, 0x30, 0x80, 0x00, + 0x06, 0x10, 0xC0, 0x00, 0x06, 0x18, 0xC0, 0x00, 0x03, 0x18, 0x08, 0x00, 0x04, 0x00, 0x92, 0xF0, + 0xC1, 0x1F, 0x86, 0x19, 0x8C, 0x60, 0x8C, 0xC1, 0x07, 0x7F, 0x08, 0x66, 0x30, 0x83, 0x19, 0x8C, + 0x3F, 0xF8, 0x08, 0x00, 0x04, 0x00, 0x92, 0xF0, 0xC0, 0x1F, 0xC3, 0x18, 0xCC, 0x60, 0x06, 0x33, + 0x18, 0xFF, 0xF0, 0x06, 0x30, 0xC0, 0x00, 0x07, 0x1F, 0x38, 0x08, 0x00, 0x04, 0x00, 0x80, 0x31, + 0x04, 0x00, 0x81, 0x30, 0x04, 0x03, 0x00, 0x03, 0x00, 0x80, 0x66, 0x03, 0x00, 0x83, 0x60, 0x66, + 0x26, 0x00, 0x08, 0x00, 0x81, 0x10, 0x70, 0x02, 0x78, 0x86, 0x60, 0x80, 0x07, 0x78, 0x00, 0x07, + 0x10, 0x09, 0x00, 0x0B, 0x00, 0x82, 0xFE, 0xE3, 0x0F, 0x02, 0x00, 0x82, 0xE0, 0x3F, 0xFE, 0x0C, + 0x00, 0x07, 0x00, 0x86, 0x20, 0x80, 0x07, 0x78, 0x80, 0x07, 0x38, 0x03, 0x78, 0x80, 0x20, 0x0A, + 0x00, 0x03, 0x00, 0x85, 0xC0, 0xE3, 0xCF, 0xB0, 0x60, 0x40, 0x03, 0xC0, 0x80, 0x80, 0x02, 0x01, + 0x02, 0x00, 0x81, 0x08, 0x10, 0x06, 0x00, 0x07, 0x00, 0xA7, 0xE0, 0x03, 0xE0, 0x38, 0xC0, 0x80, + 0x81, 0x01, 0x0C, 0xC3, 0x23, 0x84, 0x89, 0x11, 0x23, 0x64, 0x84, 0x90, 0x11, 0x42, 0x66, 0x08, + 0x99, 0x31, 0x66, 0xC6, 0x08, 0xB1, 0x33, 0x84, 0x79, 0x30, 0x00, 0x80, 0x01, 0x00, 0x1C, 0x02, + 0xC0, 0x0F, 0x03, 0x00, 0x05, 0x00, 0x96, 0x60, 0x00, 0x0E, 0xC0, 0x01, 0x6C, 0x80, 0x0D, 0x10, + 0x01, 0x63, 0x60, 0x0C, 0x06, 0xC3, 0x7F, 0xF8, 0x8F, 0x01, 0x33, 0x60, 0x03, 0x18, 0x08, 0x00, + 0x04, 0x00, 0x95, 0xC0, 0x1F, 0xFC, 0xC3, 0x60, 0x0C, 0xC6, 0x60, 0x0C, 0xC3, 0x1F, 0xFC, 0xC3, + 0x60, 0x0C, 0xC6, 0x60, 0x0C, 0xC6, 0x3F, 0xFC, 0x01, 0x07, 0x00, 0x05, 0x00, 0x8F, 0xF0, 0x80, + 0x7F, 0x18, 0x0C, 0x03, 0x33, 0x60, 0x06, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x60, 0xC0, 0x02, 0x18, + 0x84, 0x83, 0xC1, 0x3F, 0xF0, 0x01, 0x08, 0x00, 0x05, 0x00, 0x95, 0x7E, 0xC0, 0x3F, 0x18, 0x0E, + 0x83, 0x61, 0x60, 0x0C, 0x8C, 0x81, 0x31, 0x30, 0x06, 0xC6, 0xC0, 0x18, 0x0C, 0xC3, 0xE1, 0x1F, + 0xFC, 0x09, 0x00, 0x04, 0x00, 0x93, 0xF8, 0xCF, 0x3F, 0x06, 0x30, 0x80, 0x01, 0x0C, 0xE0, 0x1F, + 0x7F, 0x18, 0xC0, 0x00, 0x06, 0x30, 0x80, 0x7F, 0xFC, 0x07, 0x07, 0x00, 0x04, 0x00, 0x92, 0xF8, + 0xC7, 0x3F, 0x06, 0x30, 0x80, 0x01, 0x0C, 0xE0, 0x1F, 0x7F, 0x18, 0xC0, 0x00, 0x06, 0x30, 0x80, + 0x01, 0x0C, 0x08, 0x00, 0x05, 0x00, 0x98, 0xC0, 0x07, 0xF8, 0x07, 0x83, 0xC3, 0xC0, 0x18, 0x00, + 0x06, 0x80, 0xE1, 0x63, 0xF8, 0x18, 0x30, 0x06, 0x0C, 0x03, 0xC3, 0xC1, 0xE0, 0x1F, 0xE0, 0x03, + 0x09, 0x00, 0x05, 0x00, 0x98, 0x30, 0x60, 0x0C, 0x18, 0x03, 0xC6, 0x80, 0x31, 0x60, 0x0C, 0x18, + 0xFF, 0xC7, 0xFF, 0x31, 0x60, 0x0C, 0x18, 0x03, 0xC6, 0x80, 0x31, 0x60, 0x0C, 0x18, 0x09, 0x00, + 0x02, 0x00, 0x88, 0xC6, 0x18, 0x63, 0x8C, 0x31, 0xC6, 0x18, 0x63, 0x0C, 0x03, 0x00, 0x05, 0x00, + 0x91, 0x06, 0x30, 0x80, 0x01, 0x0C, 0x60, 0x00, 0x03, 0x18, 0xC0, 0x00, 0x06, 0x10, 0xC1, 0x18, + 0xC6, 0x3F, 0x78, 0x08, 0x00, 0x05, 0x00, 0x8E, 0x06, 0xC7, 0x60, 0x18, 0x06, 0x63, 0x60, 0x06, + 0x6C, 0x80, 0x0F, 0xF0, 0x03, 0x66, 0xC0, 0x02, 0x18, 0x83, 0x06, 0xC3, 0x61, 0x30, 0x02, 0x0C, + 0x08, 0x00, 0x04, 0x00, 0x93, 0x18, 0xC0, 0x00, 0x06, 0x30, 0x80, 0x01, 0x0C, 0x60, 0x00, 0x03, + 0x18, 0xC0, 0x00, 0x06, 0x30, 0x80, 0x7F, 0xFC, 0x03, 0x07, 0x00, 0x06, 0x00, 0x9D, 0x60, 0x00, + 0xC7, 0x01, 0x8E, 0x03, 0x1E, 0x0F, 0x3C, 0x1A, 0x68, 0x34, 0xD8, 0xC8, 0xB0, 0x91, 0x31, 0x63, + 0x66, 0xC6, 0x6C, 0x8C, 0xD1, 0x18, 0xE3, 0x30, 0xC6, 0x61, 0x0C, 0xC3, 0x0B, 0x00, 0x05, 0x00, + 0x98, 0x30, 0x60, 0x1C, 0x18, 0x07, 0xC6, 0x83, 0xF1, 0x61, 0x6C, 0x18, 0x33, 0xC6, 0x9C, 0x31, + 0x66, 0x0C, 0x1B, 0xC3, 0xC7, 0xE0, 0x31, 0x70, 0x0C, 0x1C, 0x09, 0x00, 0x05, 0x00, 0x93, 0x80, + 0x07, 0xF8, 0x07, 0x83, 0xC3, 0xC0, 0x18, 0x30, 0x06, 0x88, 0x01, 0x66, 0x80, 0x19, 0x20, 0x06, + 0x0C, 0x03, 0xC3, 0x02, 0xE0, 0x82, 0x1F, 0xE0, 0x01, 0x09, 0x00, 0x05, 0x00, 0x95, 0xFE, 0xC0, + 0x7F, 0x18, 0x0C, 0x03, 0x63, 0x60, 0x0C, 0x8C, 0xC1, 0xF0, 0x0F, 0x3E, 0xC0, 0x00, 0x18, 0x00, + 0x03, 0x60, 0x00, 0x0C, 0x09, 0x00, 0x05, 0x00, 0x9B, 0xC0, 0x07, 0xF8, 0x07, 0x83, 0xC1, 0xC0, + 0x18, 0x30, 0x06, 0x88, 0x01, 0x62, 0x80, 0x19, 0x20, 0x06, 0x0C, 0x03, 0xC3, 0x60, 0xE0, 0x1F, + 0xF0, 0x07, 0x80, 0x03, 0xC0, 0x06, 0x00, 0x04, 0x00, 0x93, 0xC0, 0x1F, 0xFC, 0xC3, 0x60, 0x0C, + 0xC6, 0x60, 0x0C, 0xC6, 0x70, 0xFC, 0xC3, 0x1F, 0x8C, 0xC1, 0x30, 0x0C, 0xC6, 0x60, 0x02, 0x0C, + 0x07, 0x00, 0x05, 0x00, 0x94, 0x0F, 0xFC, 0xE3, 0x70, 0x06, 0x66, 0x00, 0x1C, 0x80, 0x0F, 0xE0, + 0x03, 0x70, 0x00, 0x66, 0x60, 0x06, 0xC6, 0x3F, 0xF0, 0x01, 0x07, 0x00, 0x04, 0x00, 0x94, 0xF0, + 0x7F, 0xFE, 0x07, 0x06, 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, + 0x60, 0x00, 0x06, 0x60, 0x08, 0x00, 0x05, 0x00, 0x96, 0x03, 0x66, 0xC0, 0x0C, 0x98, 0x01, 0x33, + 0x60, 0x06, 0xCC, 0x80, 0x19, 0x30, 0x03, 0x66, 0xC0, 0x08, 0x18, 0x83, 0xC1, 0x1F, 0xF0, 0x01, + 0x08, 0x00, 0x04, 0x00, 0x96, 0x80, 0x01, 0x66, 0xC0, 0x0C, 0x18, 0x83, 0x61, 0x30, 0x0C, 0x03, + 0x63, 0x60, 0x0C, 0xCC, 0x00, 0x1B, 0x60, 0x03, 0x38, 0x00, 0x07, 0x60, 0x09, 0x00, 0x06, 0x00, + 0x9B, 0x80, 0xC1, 0x60, 0x06, 0x83, 0x19, 0x0E, 0x66, 0x78, 0x08, 0xE3, 0x31, 0x8C, 0xC4, 0x30, + 0x33, 0xC3, 0xCC, 0x04, 0x12, 0x1A, 0x78, 0x68, 0xE0, 0xE1, 0x81, 0x83, 0x03, 0x02, 0x0C, 0x02, + 0x30, 0x0C, 0x00, 0x05, 0x00, 0x96, 0x03, 0xC7, 0x60, 0x18, 0x06, 0xC6, 0x80, 0x0D, 0xF0, 0x00, + 0x1C, 0x80, 0x03, 0x78, 0x80, 0x1B, 0x30, 0x06, 0xC3, 0x60, 0x30, 0x06, 0x0E, 0x08, 0x00, 0x04, + 0x00, 0x94, 0x70, 0xE0, 0x06, 0xC6, 0x30, 0x0C, 0x83, 0x19, 0x98, 0x01, 0x0F, 0xF0, 0x00, 0x06, + 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, 0x60, 0x08, 0x00, 0x04, 0x00, 0x95, 0xE0, 0x7F, 0xFE, 0x07, + 0x30, 0x80, 0x01, 0x18, 0xC0, 0x00, 0x06, 0x70, 0x00, 0x03, 0x18, 0xC0, 0x00, 0x0C, 0xE0, 0x7F, + 0xFE, 0x07, 0x07, 0x00, 0x8E, 0x80, 0xE7, 0x18, 0x86, 0x61, 0x18, 0x86, 0x61, 0x18, 0x86, 0x61, + 0x18, 0x86, 0xE1, 0x78, 0x02, 0x00, 0x03, 0x00, 0x91, 0x10, 0x60, 0xC0, 0x00, 0x01, 0x06, 0x08, + 0x30, 0x60, 0x80, 0x00, 0x03, 0x04, 0x18, 0x30, 0x40, 0x80, 0x01, 0x04, 0x00, 0x8D, 0xE0, 0x39, + 0xC6, 0x18, 0x63, 0x8C, 0x31, 0xC6, 0x18, 0x63, 0x8C, 0xB9, 0x07, 0x00, 0x03, 0x00, 0x02, 0x18, + 0x84, 0x38, 0x2C, 0x64, 0x66, 0x46, 0x0C, 0x00, 0x13, 0x00, 0x81, 0xFE, 0x03, 0x04, 0x00, 0x83, + 0x00, 0x60, 0x30, 0x08, 0x0D, 0x00, 0x08, 0x00, 0x8F, 0xE0, 0x83, 0x3B, 0x86, 0x01, 0x08, 0x7E, + 0x38, 0x63, 0x10, 0x83, 0x18, 0x86, 0x3F, 0x78, 0x03, 0x07, 0x00, 0x02, 0x00, 0x94, 0x80, 0x01, + 0x0C, 0x60, 0x00, 0x03, 0xD8, 0xC3, 0x3F, 0x0E, 0x33, 0x98, 0xC1, 0x0C, 0x66, 0x30, 0x83, 0x39, + 0xCC, 0x3F, 0xF6, 0x08, 0x00, 0x07, 0x00, 0x8D, 0x80, 0x0F, 0x7F, 0x0C, 0x1B, 0x6C, 0x80, 0x01, + 0x06, 0x18, 0xC4, 0x30, 0x7F, 0xF8, 0x07, 0x00, 0x03, 0x00, 0x94, 0xC0, 0x00, 0x06, 0x30, 0x80, + 0xE1, 0x8D, 0x7F, 0x0E, 0x33, 0x98, 0xC1, 0x0C, 0x66, 0x30, 0x83, 0x31, 0x8C, 0x7F, 0x78, 0x03, + 0x07, 0x00, 0x08, 0x00, 0x8E, 0xC0, 0x83, 0x3F, 0x04, 0x31, 0x98, 0xFF, 0x0C, 0x60, 0x00, 0x03, + 0x30, 0x84, 0x3F, 0xF0, 0x08, 0x00, 0x02, 0x00, 0x8C, 0x1C, 0xCF, 0x60, 0xF8, 0x18, 0x0C, 0x06, + 0x83, 0xC1, 0x60, 0x30, 0x18, 0x0C, 0x05, 0x00, 0x08, 0x00, 0x94, 0xE0, 0x8D, 0x7F, 0x0E, 0x33, + 0x98, 0xC1, 0x0C, 0x66, 0x30, 0x83, 0x31, 0x8C, 0x7F, 0x78, 0x03, 0x18, 0x61, 0xF8, 0x83, 0x0F, + 0x02, 0x00, 0x02, 0x00, 0x95, 0x80, 0x01, 0x0C, 0x60, 0x00, 0x03, 0xD8, 0xC3, 0x3F, 0x0E, 0x31, + 0x98, 0xC1, 0x0C, 0x66, 0x30, 0x83, 0x19, 0xCC, 0x60, 0x06, 0x03, 0x07, 0x00, 0x8A, 0x00, 0x10, + 0x02, 0x00, 0x21, 0x84, 0x10, 0x42, 0x08, 0x21, 0x04, 0x03, 0x00, 0x8D, 0x00, 0x30, 0x06, 0x00, + 0x63, 0x8C, 0x31, 0xC6, 0x18, 0x63, 0x8C, 0x31, 0x77, 0x00, 0x02, 0x00, 0x95, 0x80, 0x01, 0x0C, + 0x60, 0x00, 0x03, 0x18, 0xC6, 0x18, 0x66, 0xB0, 0x83, 0x0F, 0x7C, 0x60, 0x06, 0x63, 0x18, 0xC3, + 0x30, 0x06, 0x03, 0x07, 0x00, 0x8A, 0x00, 0x10, 0x42, 0x08, 0x21, 0x84, 0x10, 0x42, 0x08, 0x21, + 0x04, 0x03, 0x00, 0x0D, 0x00, 0x98, 0x60, 0x8F, 0x87, 0xFF, 0x3F, 0x8E, 0xC3, 0x18, 0x0C, 0x63, + 0x30, 0x8C, 0xC1, 0x30, 0x06, 0xC3, 0x18, 0x0C, 0x63, 0x30, 0x8C, 0xC1, 0x30, 0x06, 0xC3, 0x0C, + 0x00, 0x08, 0x00, 0x8F, 0xD8, 0xC3, 0x3F, 0x0E, 0x31, 0x98, 0xC1, 0x0C, 0x66, 0x30, 0x83, 0x19, + 0xCC, 0x60, 0x06, 0x03, 0x07, 0x00, 0x08, 0x00, 0x8E, 0xC0, 0x83, 0x3F, 0x0C, 0x33, 0x98, 0x81, + 0x0C, 0x64, 0x20, 0x83, 0x31, 0x8C, 0x3B, 0xF0, 0x08, 0x00, 0x08, 0x00, 0x93, 0xD8, 0xC3, 0x3F, + 0x0E, 0x33, 0x98, 0xC1, 0x0C, 0x66, 0x30, 0x83, 0x19, 0xCC, 0x3B, 0xF6, 0x30, 0x80, 0x01, 0x0C, + 0x60, 0x03, 0x00, 0x08, 0x00, 0x94, 0xE0, 0x8D, 0x7F, 0x0E, 0x33, 0x98, 0xC1, 0x0C, 0x66, 0x30, + 0x83, 0x39, 0x8C, 0x7B, 0x78, 0x03, 0x18, 0xC0, 0x00, 0x06, 0x30, 0x02, 0x00, 0x05, 0x00, 0x89, + 0xD8, 0x7C, 0x0E, 0x83, 0xC1, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x05, 0x00, 0x07, 0x00, 0x8D, 0x80, + 0x07, 0x7F, 0x86, 0x19, 0xC0, 0x01, 0x3E, 0xC0, 0x01, 0x66, 0x18, 0x7F, 0x78, 0x07, 0x00, 0x02, + 0x00, 0x8C, 0x80, 0xC1, 0x60, 0xFC, 0x18, 0x0C, 0x06, 0x83, 0xC1, 0x60, 0x30, 0x78, 0x38, 0x05, + 0x00, 0x08, 0x00, 0x8F, 0x18, 0xCC, 0x60, 0x06, 0x33, 0x98, 0xC1, 0x0C, 0x66, 0x30, 0x83, 0x11, + 0x8E, 0x7F, 0x78, 0x03, 0x07, 0x00, 0x07, 0x00, 0x8D, 0x30, 0x98, 0x61, 0x86, 0x10, 0xC3, 0x0C, + 0x13, 0x68, 0xE0, 0x81, 0x03, 0x0C, 0x30, 0x07, 0x00, 0x0B, 0x00, 0x91, 0x08, 0x82, 0x8C, 0x63, + 0xC6, 0x31, 0xA3, 0x18, 0xD9, 0x84, 0x6D, 0xC3, 0xA2, 0xC1, 0x71, 0xE0, 0x38, 0x30, 0x02, 0x18, + 0x80, 0x0C, 0x0A, 0x00, 0x07, 0x00, 0x8E, 0x60, 0x98, 0x31, 0xCC, 0xE0, 0x81, 0x07, 0x0C, 0x78, + 0xE0, 0xC1, 0x8C, 0x71, 0x86, 0x01, 0x06, 0x00, 0x07, 0x00, 0x92, 0x30, 0x98, 0x61, 0x86, 0x18, + 0xC3, 0x0C, 0x13, 0x68, 0xE0, 0x81, 0x03, 0x0C, 0x30, 0x40, 0x80, 0x81, 0x03, 0x06, 0x02, 0x00, + 0x07, 0x00, 0x8E, 0xE0, 0x9F, 0x7F, 0xC0, 0x80, 0x01, 0x06, 0x0C, 0x18, 0x70, 0xC0, 0x80, 0x03, + 0xFE, 0x01, 0x06, 0x00, 0x88, 0x00, 0x10, 0x0C, 0x83, 0xC1, 0x60, 0x10, 0x08, 0x86, 0x02, 0xC1, + 0x84, 0x40, 0x20, 0x30, 0x18, 0x0C, 0x02, 0x06, 0x81, 0x02, 0x00, 0x02, 0x00, 0x8B, 0x42, 0x08, + 0x21, 0x84, 0x10, 0x42, 0x08, 0x21, 0x84, 0x10, 0x02, 0x00, 0x80, 0x80, 0x02, 0x81, 0x83, 0xC1, + 0x60, 0x30, 0x18, 0x03, 0x0C, 0x87, 0xC7, 0x60, 0x30, 0x18, 0x0C, 0x06, 0xC3, 0x30, 0x02, 0x00, + 0x10, 0x00, 0x86, 0x0E, 0xC2, 0xCF, 0x18, 0x1F, 0x00, 0x02, 0x10, 0x00, }; // clang-format on diff --git a/keyboards/dasky/reverb/graphics/robotomono20.qff.h b/keyboards/dasky/reverb/graphics/robotomono20.qff.h index 63b82834042..f60641a9582 100644 --- a/keyboards/dasky/reverb/graphics/robotomono20.qff.h +++ b/keyboards/dasky/reverb/graphics/robotomono20.qff.h @@ -1,11 +1,11 @@ -// Copyright 2023 QMK -- generated source code only, font retains original copyright +// Copyright 2024 QMK -- generated source code only, font retains original copyright // SPDX-License-Identifier: GPL-2.0-or-later -// This file was auto-generated by `qmk painter-convert-font-image -i robotomono20.png -f mono4` +// This file was auto-generated by `qmk painter-convert-font-image -i robotomono20.png -f mono2` #pragma once #include extern const uint32_t font_robotomono20_length; -extern const uint8_t font_robotomono20[4904]; +extern const uint8_t font_robotomono20[2396]; From 7620c64b99dc5bec480bfaa2708cb3fae709e2b3 Mon Sep 17 00:00:00 2001 From: Jerome Berclaz Date: Tue, 21 May 2024 19:49:49 -0700 Subject: [PATCH 029/519] Added MATRIX_HAS_GHOST definition for IBM Model H controller (#23744) --- keyboards/ibm/model_m/modelh/info.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/keyboards/ibm/model_m/modelh/info.json b/keyboards/ibm/model_m/modelh/info.json index 6d55d5c6bdd..897d9be2f44 100644 --- a/keyboards/ibm/model_m/modelh/info.json +++ b/keyboards/ibm/model_m/modelh/info.json @@ -20,7 +20,8 @@ }, "matrix_pins": { "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B12", "B11", "B10", "B1", "B0", "A7", "A6", "A5", "A4", "A3"], - "rows": ["B6", "B5", "B4", "A15", "B3", "A0", "A2", "A1"] + "rows": ["B6", "B5", "B4", "A15", "B3", "A0", "A2", "A1"], + "ghost": true }, "processor": "STM32F103", "url": "modelh.club", From d1547320a0236eff98906f908224fe0d46b4b0e5 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 22 May 2024 02:53:40 -0700 Subject: [PATCH 030/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: H, Part 2 (#23762) Affects: - `handwired/108key_trackpoint` - `handwired/2x5keypad` - `handwired/3dp660` - `handwired/412_64` - `handwired/42` - `handwired/amigopunk` - `handwired/aranck` - `handwired/atreus50` - `handwired/axon` - `handwired/battleship_gamepad` - `handwired/bdn9_ble` - `handwired/bento/rev1` - `handwired/bolek` - `handwired/brain` - `handwired/bstk100` - `handwired/cans12er` - `handwired/chiron` - `handwired/ck4x4` - `handwired/cmd60` - `handwired/co60/rev6` - `handwired/co60/rev7` - `handwired/colorlice` - `handwired/curiosity` - `handwired/dactyl_left` - `handwired/dactyl_manuform/4x5` - `handwired/dactyl_manuform/4x5_5` - `handwired/dactyl_manuform/4x6` - `handwired/dactyl_manuform/4x6_4_3` - `handwired/dactyl_manuform/4x6_5` - `handwired/dactyl_manuform/5x6` - `handwired/dactyl_manuform/5x6_2_5` - `handwired/dactyl_manuform/5x6_5` - `handwired/dactyl_manuform/5x6_6` - `handwired/dactyl_manuform/5x6_68` - `handwired/dactyl_manuform/5x7` - `handwired/dactyl_manuform/6x6/blackpill_f411` - `handwired/dactyl_manuform/6x6/promicro` - `handwired/dactyl_manuform/6x6_4` - `handwired/dactyl_manuform/6x7` - `handwired/dactyl_promicro` - `handwired/dactyl_rah` - `handwired/datahand` - `handwired/evk/v1_3` - `handwired/fc200rt_qmk` - `handwired/fivethirteen` - `handwired/floorboard` - `handwired/fruity60` - `handwired/gamenum` - `handwired/hacked_motospeed` - `handwired/heisenberg` - `handwired/hnah40` --- .../handwired/108key_trackpoint/config.h | 3 -- .../handwired/108key_trackpoint/keyboard.json | 6 +++ keyboards/handwired/2x5keypad/config.h | 7 ---- keyboards/handwired/2x5keypad/keyboard.json | 6 +++ keyboards/handwired/3dp660/config.h | 24 ----------- keyboards/handwired/3dp660/keyboard.json | 6 +++ keyboards/handwired/412_64/config.h | 24 ----------- keyboards/handwired/412_64/keyboard.json | 6 +++ keyboards/handwired/42/config.h | 6 --- keyboards/handwired/42/keyboard.json | 6 +++ keyboards/handwired/amigopunk/config.h | 23 ---------- keyboards/handwired/amigopunk/keyboard.json | 6 +++ keyboards/handwired/aranck/config.h | 6 --- keyboards/handwired/aranck/keyboard.json | 6 +++ keyboards/handwired/atreus50/config.h | 39 ----------------- keyboards/handwired/atreus50/keyboard.json | 6 +++ keyboards/handwired/axon/config.h | 24 ----------- keyboards/handwired/axon/keyboard.json | 6 +++ .../handwired/battleship_gamepad/config.h | 6 --- .../battleship_gamepad/keyboard.json | 6 +++ keyboards/handwired/bdn9_ble/config.h | 23 ---------- keyboards/handwired/bdn9_ble/keyboard.json | 6 +++ keyboards/handwired/bento/rev1/config.h | 22 ---------- keyboards/handwired/bento/rev1/keyboard.json | 6 +++ keyboards/handwired/bolek/config.h | 5 --- keyboards/handwired/bolek/keyboard.json | 6 +++ keyboards/handwired/brain/config.h | 5 --- keyboards/handwired/brain/keyboard.json | 6 +++ keyboards/handwired/bstk100/config.h | 40 ------------------ keyboards/handwired/bstk100/keyboard.json | 6 +++ keyboards/handwired/cans12er/config.h | 7 ---- keyboards/handwired/cans12er/keyboard.json | 6 +++ keyboards/handwired/chiron/config.h | 3 -- keyboards/handwired/chiron/keyboard.json | 6 +++ keyboards/handwired/ck4x4/config.h | 42 ------------------- keyboards/handwired/ck4x4/keyboard.json | 6 +++ keyboards/handwired/cmd60/config.h | 39 ----------------- keyboards/handwired/cmd60/keyboard.json | 6 +++ keyboards/handwired/co60/rev6/config.h | 22 ---------- keyboards/handwired/co60/rev6/keyboard.json | 6 +++ keyboards/handwired/co60/rev7/config.h | 5 --- keyboards/handwired/co60/rev7/keyboard.json | 6 +++ keyboards/handwired/colorlice/config.h | 23 ---------- keyboards/handwired/colorlice/keyboard.json | 6 +++ keyboards/handwired/curiosity/config.h | 23 ---------- keyboards/handwired/curiosity/keyboard.json | 6 +++ keyboards/handwired/dactyl_left/config.h | 39 ----------------- keyboards/handwired/dactyl_left/keyboard.json | 6 +++ .../dactyl_manuform/4x5/keyboard.json | 6 +++ .../dactyl_manuform/4x5_5/keyboard.json | 6 +++ .../dactyl_manuform/4x6/keyboard.json | 6 +++ .../dactyl_manuform/4x6_4_3/keyboard.json | 6 +++ .../dactyl_manuform/4x6_5/keyboard.json | 6 +++ .../dactyl_manuform/5x6/keyboard.json | 6 +++ .../dactyl_manuform/5x6_2_5/keyboard.json | 6 +++ .../dactyl_manuform/5x6_5/keyboard.json | 6 +++ .../dactyl_manuform/5x6_6/keyboard.json | 6 +++ .../dactyl_manuform/5x6_68/keyboard.json | 6 +++ .../dactyl_manuform/5x7/keyboard.json | 6 +++ .../6x6/blackpill_f411/keyboard.json | 6 +++ .../6x6/promicro/keyboard.json | 6 +++ .../dactyl_manuform/6x6_4/keyboard.json | 6 +++ .../dactyl_manuform/6x7/keyboard.json | 6 +++ keyboards/handwired/dactyl_manuform/config.h | 5 --- keyboards/handwired/dactyl_promicro/config.h | 5 --- .../handwired/dactyl_promicro/keyboard.json | 6 +++ keyboards/handwired/dactyl_rah/config.h | 6 --- keyboards/handwired/dactyl_rah/keyboard.json | 6 +++ keyboards/handwired/datahand/config.h | 5 --- keyboards/handwired/datahand/keyboard.json | 6 +++ keyboards/handwired/evk/v1_3/config.h | 37 ---------------- keyboards/handwired/evk/v1_3/keyboard.json | 6 +++ keyboards/handwired/fc200rt_qmk/config.h | 23 ---------- keyboards/handwired/fc200rt_qmk/keyboard.json | 6 +++ keyboards/handwired/fivethirteen/config.h | 39 ----------------- .../handwired/fivethirteen/keyboard.json | 6 +++ keyboards/handwired/floorboard/config.h | 39 ----------------- keyboards/handwired/floorboard/keyboard.json | 6 +++ keyboards/handwired/fruity60/config.h | 23 ---------- keyboards/handwired/fruity60/keyboard.json | 6 +++ keyboards/handwired/gamenum/config.h | 39 ----------------- keyboards/handwired/gamenum/keyboard.json | 6 +++ keyboards/handwired/hacked_motospeed/config.h | 5 --- .../handwired/hacked_motospeed/keyboard.json | 6 +++ keyboards/handwired/heisenberg/config.h | 6 --- keyboards/handwired/heisenberg/keyboard.json | 6 +++ keyboards/handwired/hnah40/config.h | 38 ----------------- keyboards/handwired/hnah40/keyboard.json | 6 +++ 88 files changed, 306 insertions(+), 730 deletions(-) delete mode 100644 keyboards/handwired/2x5keypad/config.h delete mode 100644 keyboards/handwired/3dp660/config.h delete mode 100644 keyboards/handwired/412_64/config.h delete mode 100644 keyboards/handwired/42/config.h delete mode 100644 keyboards/handwired/amigopunk/config.h delete mode 100644 keyboards/handwired/atreus50/config.h delete mode 100644 keyboards/handwired/axon/config.h delete mode 100644 keyboards/handwired/bdn9_ble/config.h delete mode 100644 keyboards/handwired/bento/rev1/config.h delete mode 100644 keyboards/handwired/bstk100/config.h delete mode 100644 keyboards/handwired/cans12er/config.h delete mode 100644 keyboards/handwired/ck4x4/config.h delete mode 100644 keyboards/handwired/cmd60/config.h delete mode 100644 keyboards/handwired/co60/rev6/config.h delete mode 100644 keyboards/handwired/colorlice/config.h delete mode 100644 keyboards/handwired/curiosity/config.h delete mode 100644 keyboards/handwired/dactyl_left/config.h delete mode 100644 keyboards/handwired/evk/v1_3/config.h delete mode 100644 keyboards/handwired/fc200rt_qmk/config.h delete mode 100644 keyboards/handwired/fivethirteen/config.h delete mode 100644 keyboards/handwired/floorboard/config.h delete mode 100644 keyboards/handwired/fruity60/config.h delete mode 100644 keyboards/handwired/gamenum/config.h delete mode 100644 keyboards/handwired/hnah40/config.h diff --git a/keyboards/handwired/108key_trackpoint/config.h b/keyboards/handwired/108key_trackpoint/config.h index 8aca85bf26a..0bdefde109c 100644 --- a/keyboards/handwired/108key_trackpoint/config.h +++ b/keyboards/handwired/108key_trackpoint/config.h @@ -36,6 +36,3 @@ #define PS2_USART_ERROR (UCSR1A & ((1< - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/handwired/3dp660/keyboard.json b/keyboards/handwired/3dp660/keyboard.json index e01ff4610c6..c1c4c13e7e3 100644 --- a/keyboards/handwired/3dp660/keyboard.json +++ b/keyboards/handwired/3dp660/keyboard.json @@ -22,6 +22,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D3", "C6", "C7", "D5", "D4", "D7", "B4", "B5", "B6", "F7", "F6", "F5", "F4", "F1"], "rows": ["B0", "B1", "B2", "B3", "B7"] diff --git a/keyboards/handwired/412_64/config.h b/keyboards/handwired/412_64/config.h deleted file mode 100644 index 7caa265c1a1..00000000000 --- a/keyboards/handwired/412_64/config.h +++ /dev/null @@ -1,24 +0,0 @@ - - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/412_64/keyboard.json b/keyboards/handwired/412_64/keyboard.json index 736c1886bbb..c0f27dcb91e 100644 --- a/keyboards/handwired/412_64/keyboard.json +++ b/keyboards/handwired/412_64/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "D2", "D0", "D1", "D4", "C6", "D7", "E6"], "rows": ["D3", "F4", "F5", "F6", "F7", "B1", "B3", "B2"] diff --git a/keyboards/handwired/42/config.h b/keyboards/handwired/42/config.h deleted file mode 100644 index fa9a83d08ec..00000000000 --- a/keyboards/handwired/42/config.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/42/keyboard.json b/keyboards/handwired/42/keyboard.json index d68dcd1ec2f..45801b7773e 100644 --- a/keyboards/handwired/42/keyboard.json +++ b/keyboards/handwired/42/keyboard.json @@ -28,6 +28,12 @@ "nkro": true, "bluetooth": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/handwired/amigopunk/config.h b/keyboards/handwired/amigopunk/config.h deleted file mode 100644 index bcdca4920c7..00000000000 --- a/keyboards/handwired/amigopunk/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (c) 2021 Christiano Haesbaert - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/amigopunk/keyboard.json b/keyboards/handwired/amigopunk/keyboard.json index d9ef295a4f3..e8e45d2b993 100644 --- a/keyboards/handwired/amigopunk/keyboard.json +++ b/keyboards/handwired/amigopunk/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B5", "B4", "B3", "B2", "B1", "B0", "E7", "E6", "F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7"], "rows": ["C0", "C1", "C2", "C3", "C4", "C5"] diff --git a/keyboards/handwired/aranck/config.h b/keyboards/handwired/aranck/config.h index b20b3099e9a..519ad1ea6f1 100644 --- a/keyboards/handwired/aranck/config.h +++ b/keyboards/handwired/aranck/config.h @@ -17,12 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - /** * Aranck-specific definitions */ diff --git a/keyboards/handwired/aranck/keyboard.json b/keyboards/handwired/aranck/keyboard.json index ddd72b0e654..435d6da6967 100644 --- a/keyboards/handwired/aranck/keyboard.json +++ b/keyboards/handwired/aranck/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "D7", "E6", "B4", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D3", "D2", "D1", "D0"] diff --git a/keyboards/handwired/atreus50/config.h b/keyboards/handwired/atreus50/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/atreus50/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/atreus50/keyboard.json b/keyboards/handwired/atreus50/keyboard.json index dc62d3e849e..961d1959b04 100644 --- a/keyboards/handwired/atreus50/keyboard.json +++ b/keyboards/handwired/atreus50/keyboard.json @@ -35,6 +35,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "D7", "E6", "B4", "B5", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D3", "D2", "D1", "D0"] diff --git a/keyboards/handwired/axon/config.h b/keyboards/handwired/axon/config.h deleted file mode 100644 index dcf26800ca2..00000000000 --- a/keyboards/handwired/axon/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 Robin Liu - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/axon/keyboard.json b/keyboards/handwired/axon/keyboard.json index fe7818d97f0..007f90fbc8b 100644 --- a/keyboards/handwired/axon/keyboard.json +++ b/keyboards/handwired/axon/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "D7", "B1", "B2", "C0", "C1", "C2", "C3", "C4", "C5", "D1"], "rows": ["D5", "D6", "D4", "D0"] diff --git a/keyboards/handwired/battleship_gamepad/config.h b/keyboards/handwired/battleship_gamepad/config.h index 9853f7f39d7..b785c80aadf 100644 --- a/keyboards/handwired/battleship_gamepad/config.h +++ b/keyboards/handwired/battleship_gamepad/config.h @@ -19,9 +19,3 @@ /* joystick configuration */ #define JOYSTICK_BUTTON_COUNT 25 #define JOYSTICK_AXIS_RESOLUTION 10 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/battleship_gamepad/keyboard.json b/keyboards/handwired/battleship_gamepad/keyboard.json index 3b4010ce40c..28327418758 100644 --- a/keyboards/handwired/battleship_gamepad/keyboard.json +++ b/keyboards/handwired/battleship_gamepad/keyboard.json @@ -22,6 +22,12 @@ "nkro": true, "joystick": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/handwired/bdn9_ble/config.h b/keyboards/handwired/bdn9_ble/config.h deleted file mode 100644 index 3ed1c2ed30f..00000000000 --- a/keyboards/handwired/bdn9_ble/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/bdn9_ble/keyboard.json b/keyboards/handwired/bdn9_ble/keyboard.json index 76d9e42f83c..20f020504cc 100644 --- a/keyboards/handwired/bdn9_ble/keyboard.json +++ b/keyboards/handwired/bdn9_ble/keyboard.json @@ -27,6 +27,12 @@ "backlight": true, "bluetooth": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D1", "D0", "C6"], diff --git a/keyboards/handwired/bento/rev1/config.h b/keyboards/handwired/bento/rev1/config.h deleted file mode 100644 index 65cc7669454..00000000000 --- a/keyboards/handwired/bento/rev1/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 GhostSeven - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/bento/rev1/keyboard.json b/keyboards/handwired/bento/rev1/keyboard.json index 3baa7d77ce4..656eb0b5cec 100644 --- a/keyboards/handwired/bento/rev1/keyboard.json +++ b/keyboards/handwired/bento/rev1/keyboard.json @@ -45,6 +45,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D7", "B1", "D2"], diff --git a/keyboards/handwired/bolek/config.h b/keyboards/handwired/bolek/config.h index 72c76ac580e..600937321ce 100644 --- a/keyboards/handwired/bolek/config.h +++ b/keyboards/handwired/bolek/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/handwired/bolek/keyboard.json b/keyboards/handwired/bolek/keyboard.json index a966044ebe8..68fe7958bf3 100644 --- a/keyboards/handwired/bolek/keyboard.json +++ b/keyboards/handwired/bolek/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B2", "B3", "B1", "F7", "E6", "D7", "C6", "D0", "D4"], "rows": ["F4", "F5", "F6", "B5", "D3", "D2", "D1", "B4"] diff --git a/keyboards/handwired/brain/config.h b/keyboards/handwired/brain/config.h index 91253b16957..5c3d9831930 100644 --- a/keyboards/handwired/brain/config.h +++ b/keyboards/handwired/brain/config.h @@ -34,11 +34,6 @@ along with this program. If not, see . //#define SPLIT_HAND_PIN B7 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Enables This makes it easier for fast typists to use dual-function keys */ #define PERMISSIVE_HOLD diff --git a/keyboards/handwired/brain/keyboard.json b/keyboards/handwired/brain/keyboard.json index e9093711d00..95c09ecfc90 100644 --- a/keyboards/handwired/brain/keyboard.json +++ b/keyboards/handwired/brain/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F4", "F5", "F6", "F7", "B1"] diff --git a/keyboards/handwired/bstk100/config.h b/keyboards/handwired/bstk100/config.h deleted file mode 100644 index 2a30bd33633..00000000000 --- a/keyboards/handwired/bstk100/config.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2021 FREE WING,Y.Sakamoto -http://www.neko.ne.jp/~freewing/ - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/bstk100/keyboard.json b/keyboards/handwired/bstk100/keyboard.json index b4f036631db..0fc255f9c41 100644 --- a/keyboards/handwired/bstk100/keyboard.json +++ b/keyboards/handwired/bstk100/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "E6", "D7", "C6"], "rows": ["B6", "B2", "B3", "B1", "F7"] diff --git a/keyboards/handwired/cans12er/config.h b/keyboards/handwired/cans12er/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/handwired/cans12er/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/cans12er/keyboard.json b/keyboards/handwired/cans12er/keyboard.json index 058f8a98b16..9d08706423c 100644 --- a/keyboards/handwired/cans12er/keyboard.json +++ b/keyboards/handwired/cans12er/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D4", "C6", "D7"], "rows": ["F7", "B1", "B3"] diff --git a/keyboards/handwired/chiron/config.h b/keyboards/handwired/chiron/config.h index 4d245e80e4b..254bed5c744 100644 --- a/keyboards/handwired/chiron/config.h +++ b/keyboards/handwired/chiron/config.h @@ -19,6 +19,3 @@ along with this program. If not, see . // Pro Micro Pins RX1 #define SPLIT_HAND_PIN D2 - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/chiron/keyboard.json b/keyboards/handwired/chiron/keyboard.json index 6c2626df64b..f02c8cea281 100644 --- a/keyboards/handwired/chiron/keyboard.json +++ b/keyboards/handwired/chiron/keyboard.json @@ -18,6 +18,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D4", "D7", "E6", "B4", "B5"] diff --git a/keyboards/handwired/ck4x4/config.h b/keyboards/handwired/ck4x4/config.h deleted file mode 100644 index 6a40218df2e..00000000000 --- a/keyboards/handwired/ck4x4/config.h +++ /dev/null @@ -1,42 +0,0 @@ -/* -Copyright 2015 Jun Wako - -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 . -*/ - -#pragma once - -//LEDS A6, RGB B15 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - -/* - * 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 diff --git a/keyboards/handwired/ck4x4/keyboard.json b/keyboards/handwired/ck4x4/keyboard.json index 4b8284ab71f..642408cc0eb 100644 --- a/keyboards/handwired/ck4x4/keyboard.json +++ b/keyboards/handwired/ck4x4/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "B8", "B9", "B10"], "rows": ["B3", "B4", "B5", "B6"] diff --git a/keyboards/handwired/cmd60/config.h b/keyboards/handwired/cmd60/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/cmd60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/cmd60/keyboard.json b/keyboards/handwired/cmd60/keyboard.json index 4ac953e560a..f9733a75824 100644 --- a/keyboards/handwired/cmd60/keyboard.json +++ b/keyboards/handwired/cmd60/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "C6", "D7", "B4", "B5", "B6"], "rows": ["F0", "F4", "F5", "F6", "F7"] diff --git a/keyboards/handwired/co60/rev6/config.h b/keyboards/handwired/co60/rev6/config.h deleted file mode 100644 index fa1c24a396c..00000000000 --- a/keyboards/handwired/co60/rev6/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright 2019 John M Daly - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/co60/rev6/keyboard.json b/keyboards/handwired/co60/rev6/keyboard.json index e772f0ba425..743a738ff07 100644 --- a/keyboards/handwired/co60/rev6/keyboard.json +++ b/keyboards/handwired/co60/rev6/keyboard.json @@ -13,6 +13,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A2", "A3", "A6", "B14", "B15", "A8", "A9", "A7", "B3", "B4", "C14", "C15", "C13", "B5", "B6"], "rows": ["B0", "B1", "B2", "A15", "A10"] diff --git a/keyboards/handwired/co60/rev7/config.h b/keyboards/handwired/co60/rev7/config.h index b6b7cecec24..f9d324e2872 100644 --- a/keyboards/handwired/co60/rev7/config.h +++ b/keyboards/handwired/co60/rev7/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* RGB underglow configuration */ #define WS2812_SPI_DRIVER SPID1 #define WS2812_SPI_MOSI_PAL_MODE 5 diff --git a/keyboards/handwired/co60/rev7/keyboard.json b/keyboards/handwired/co60/rev7/keyboard.json index 967c673d39c..4319c9aedfc 100644 --- a/keyboards/handwired/co60/rev7/keyboard.json +++ b/keyboards/handwired/co60/rev7/keyboard.json @@ -14,6 +14,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A10", "A9", "A3", "A4", "A5", "A6", "B0", "B1", "A15", "B3", "B4", "B5", "C13", "C14", "C15"], "rows": ["A8", "A2", "B13", "B2", "B10"] diff --git a/keyboards/handwired/colorlice/config.h b/keyboards/handwired/colorlice/config.h deleted file mode 100644 index a85f398caec..00000000000 --- a/keyboards/handwired/colorlice/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Marhalloweenvt - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/colorlice/keyboard.json b/keyboards/handwired/colorlice/keyboard.json index 1a9549d8632..77f5ded0970 100644 --- a/keyboards/handwired/colorlice/keyboard.json +++ b/keyboards/handwired/colorlice/keyboard.json @@ -74,6 +74,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "B6", "B5", "B4", "D7", "D6", "D4", "E6", "B0", "B3"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/handwired/curiosity/config.h b/keyboards/handwired/curiosity/config.h deleted file mode 100644 index 65854bfac79..00000000000 --- a/keyboards/handwired/curiosity/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 Spaceman - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/curiosity/keyboard.json b/keyboards/handwired/curiosity/keyboard.json index 1a1024fb18b..e95fa25e717 100644 --- a/keyboards/handwired/curiosity/keyboard.json +++ b/keyboards/handwired/curiosity/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D4", "F4", "C6", "D7", "E6", "B5", "B4", "B1", "B3", "B2", "B6"], "rows": ["D0", "F7", "F6", "F5"] diff --git a/keyboards/handwired/dactyl_left/config.h b/keyboards/handwired/dactyl_left/config.h deleted file mode 100644 index d7658643b71..00000000000 --- a/keyboards/handwired/dactyl_left/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 RedForty - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/dactyl_left/keyboard.json b/keyboards/handwired/dactyl_left/keyboard.json index ba374c87a34..cfb3ad14895 100644 --- a/keyboards/handwired/dactyl_left/keyboard.json +++ b/keyboards/handwired/dactyl_left/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "B7", "B3", "B2", "B1", "B0"], "rows": ["F0", "F1", "F4", "F5", "F6", "F7"] diff --git a/keyboards/handwired/dactyl_manuform/4x5/keyboard.json b/keyboards/handwired/dactyl_manuform/4x5/keyboard.json index b779e9d3c1e..e0a1b531a55 100644 --- a/keyboards/handwired/dactyl_manuform/4x5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x5/keyboard.json @@ -22,6 +22,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "D7", "E6", "B4", "B5"], "rows": ["F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json b/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json index 8f53dd03039..7efc4718ad1 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "F6"], "rows": ["F7", "B1", "B3", "B2", "B4"] diff --git a/keyboards/handwired/dactyl_manuform/4x6/keyboard.json b/keyboards/handwired/dactyl_manuform/4x6/keyboard.json index feb58db5dbe..d589c532a86 100644 --- a/keyboards/handwired/dactyl_manuform/4x6/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x6/keyboard.json @@ -22,6 +22,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/dactyl_manuform/4x6_4_3/keyboard.json b/keyboards/handwired/dactyl_manuform/4x6_4_3/keyboard.json index 60830dbf80a..c0c24a8966d 100644 --- a/keyboards/handwired/dactyl_manuform/4x6_4_3/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x6_4_3/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "ws2812": { "pin": "D3" }, diff --git a/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json b/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json index a0607c70683..47ad7aa920e 100644 --- a/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json @@ -22,6 +22,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/dactyl_manuform/5x6/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6/keyboard.json index b5681f4ca7e..353b1481266 100644 --- a/keyboards/handwired/dactyl_manuform/5x6/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6/keyboard.json @@ -22,6 +22,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F6", "F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json index e36acea627c..620ffdec061 100644 --- a/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F6", "F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json index 1153bcdb44e..fc7676aa4b8 100644 --- a/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F6", "F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json index 8a3e69f2efb..974f1b8bc39 100644 --- a/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/dactyl_manuform/5x6_68/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6_68/keyboard.json index 59d37ec15b0..5b6bdfb86eb 100644 --- a/keyboards/handwired/dactyl_manuform/5x6_68/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6_68/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "split": { "enabled": true, "soft_serial_pin": "D0" diff --git a/keyboards/handwired/dactyl_manuform/5x7/keyboard.json b/keyboards/handwired/dactyl_manuform/5x7/keyboard.json index bc734607cf3..d40a45dfa72 100644 --- a/keyboards/handwired/dactyl_manuform/5x7/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x7/keyboard.json @@ -22,6 +22,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/handwired/dactyl_manuform/6x6/blackpill_f411/keyboard.json b/keyboards/handwired/dactyl_manuform/6x6/blackpill_f411/keyboard.json index 9391d3a46d4..73ce0d27d53 100644 --- a/keyboards/handwired/dactyl_manuform/6x6/blackpill_f411/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/6x6/blackpill_f411/keyboard.json @@ -17,5 +17,11 @@ "extrakey": true, "console": true, "command": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/handwired/dactyl_manuform/6x6/promicro/keyboard.json b/keyboards/handwired/dactyl_manuform/6x6/promicro/keyboard.json index 0ec00196ba5..213a3c29f5a 100644 --- a/keyboards/handwired/dactyl_manuform/6x6/promicro/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/6x6/promicro/keyboard.json @@ -21,5 +21,11 @@ "mousekey": true, "extrakey": true, "command": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json b/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json index 36051fb7feb..98e96c96399 100644 --- a/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json @@ -22,6 +22,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/dactyl_manuform/6x7/keyboard.json b/keyboards/handwired/dactyl_manuform/6x7/keyboard.json index 5ce0affbeea..153b6c75c4f 100644 --- a/keyboards/handwired/dactyl_manuform/6x7/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/6x7/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "ws2812": { "pin": "D3" }, diff --git a/keyboards/handwired/dactyl_manuform/config.h b/keyboards/handwired/dactyl_manuform/config.h index 904e5a729dd..a3b5aabcf1f 100644 --- a/keyboards/handwired/dactyl_manuform/config.h +++ b/keyboards/handwired/dactyl_manuform/config.h @@ -26,10 +26,5 @@ along with this program. If not, see . #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Enables This makes it easier for fast typists to use dual-function keys */ #define PERMISSIVE_HOLD diff --git a/keyboards/handwired/dactyl_promicro/config.h b/keyboards/handwired/dactyl_promicro/config.h index 543ef8e6c5a..b11e0a9f31f 100644 --- a/keyboards/handwired/dactyl_promicro/config.h +++ b/keyboards/handwired/dactyl_promicro/config.h @@ -25,11 +25,6 @@ along with this program. If not, see . #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Enables This makes it easier for fast typists to use dual-function keys */ #define PERMISSIVE_HOLD diff --git a/keyboards/handwired/dactyl_promicro/keyboard.json b/keyboards/handwired/dactyl_promicro/keyboard.json index 572ea05b2f3..824ffe7e7e0 100644 --- a/keyboards/handwired/dactyl_promicro/keyboard.json +++ b/keyboards/handwired/dactyl_promicro/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F6", "F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/dactyl_rah/config.h b/keyboards/handwired/dactyl_rah/config.h index 107d8e16683..54a8f8514e5 100644 --- a/keyboards/handwired/dactyl_rah/config.h +++ b/keyboards/handwired/dactyl_rah/config.h @@ -24,12 +24,6 @@ along with this program. If not, see . #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Enables This makes it easier for fast typists to use dual-function keys */ #define PERMISSIVE_HOLD diff --git a/keyboards/handwired/dactyl_rah/keyboard.json b/keyboards/handwired/dactyl_rah/keyboard.json index f550a055c7f..3bc5dc08547 100644 --- a/keyboards/handwired/dactyl_rah/keyboard.json +++ b/keyboards/handwired/dactyl_rah/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F6", "F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/handwired/datahand/config.h b/keyboards/handwired/datahand/config.h index b1d8cc9c773..2d37644678f 100644 --- a/keyboards/handwired/datahand/config.h +++ b/keyboards/handwired/datahand/config.h @@ -20,11 +20,6 @@ #define MATRIX_ROWS 13 #define MATRIX_COLS 4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Command/Windows key option * diff --git a/keyboards/handwired/datahand/keyboard.json b/keyboards/handwired/datahand/keyboard.json index 96e49388dc8..c2c7dab421c 100644 --- a/keyboards/handwired/datahand/keyboard.json +++ b/keyboards/handwired/datahand/keyboard.json @@ -19,6 +19,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "debounce": 0, "layouts": { "LAYOUT": { diff --git a/keyboards/handwired/evk/v1_3/config.h b/keyboards/handwired/evk/v1_3/config.h deleted file mode 100644 index 1b4e5a6d87e..00000000000 --- a/keyboards/handwired/evk/v1_3/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/evk/v1_3/keyboard.json b/keyboards/handwired/evk/v1_3/keyboard.json index 5553db0a1f0..067382e89e3 100644 --- a/keyboards/handwired/evk/v1_3/keyboard.json +++ b/keyboards/handwired/evk/v1_3/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D2", "D3", "C6", "C7", "F0", "F1", "F4", "F5", "F6", "F7", "B6", "B5", "B4", "D7", "D6"], "rows": ["B0", "B1", "B2", "B3", "B7", "D0"] diff --git a/keyboards/handwired/fc200rt_qmk/config.h b/keyboards/handwired/fc200rt_qmk/config.h deleted file mode 100644 index 82fe0166b2f..00000000000 --- a/keyboards/handwired/fc200rt_qmk/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 NaCly - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/fc200rt_qmk/keyboard.json b/keyboards/handwired/fc200rt_qmk/keyboard.json index 1cde9518811..aab792e7bd5 100644 --- a/keyboards/handwired/fc200rt_qmk/keyboard.json +++ b/keyboards/handwired/fc200rt_qmk/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D3", "C6", "C7", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "F7", "F6", "F5", "F4", "F1"], "rows": ["B0", "B1", "B2", "B3", "E6", "B7", "D0", "D1"] diff --git a/keyboards/handwired/fivethirteen/config.h b/keyboards/handwired/fivethirteen/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/fivethirteen/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/fivethirteen/keyboard.json b/keyboards/handwired/fivethirteen/keyboard.json index 11baaf78cc1..9046fc53ba9 100644 --- a/keyboards/handwired/fivethirteen/keyboard.json +++ b/keyboards/handwired/fivethirteen/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "F0", "D0", "D1", "D2", "D3", "C6", "C7", "D6", "D7"], "rows": ["F6", "F7", "B6", "B5", "B4"] diff --git a/keyboards/handwired/floorboard/config.h b/keyboards/handwired/floorboard/config.h deleted file mode 100644 index af56b8a7fe4..00000000000 --- a/keyboards/handwired/floorboard/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Kevin Lockwood - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/floorboard/keyboard.json b/keyboards/handwired/floorboard/keyboard.json index 0bcec56b8fe..0e9f277160d 100644 --- a/keyboards/handwired/floorboard/keyboard.json +++ b/keyboards/handwired/floorboard/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "B6", "B5", "B4", "B3", "B2", "B1", "B9", "B0", "B15", "B14", "B13"], "rows": ["A2", "A1", "A0", "B8"] diff --git a/keyboards/handwired/fruity60/config.h b/keyboards/handwired/fruity60/config.h deleted file mode 100644 index 091cb7b510b..00000000000 --- a/keyboards/handwired/fruity60/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Yan-Fa Li - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/fruity60/keyboard.json b/keyboards/handwired/fruity60/keyboard.json index 4984f3fc03c..728b0c63cbb 100644 --- a/keyboards/handwired/fruity60/keyboard.json +++ b/keyboards/handwired/fruity60/keyboard.json @@ -25,6 +25,12 @@ "console": true, "bluetooth": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_tsangan_hhkb"], "layouts": { "LAYOUT_60_tsangan_hhkb": { diff --git a/keyboards/handwired/gamenum/config.h b/keyboards/handwired/gamenum/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/handwired/gamenum/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/gamenum/keyboard.json b/keyboards/handwired/gamenum/keyboard.json index 17460f4dcaa..50a39621088 100644 --- a/keyboards/handwired/gamenum/keyboard.json +++ b/keyboards/handwired/gamenum/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "B4", "B5"], "rows": ["B6", "B2", "B3", "B1", "F7"] diff --git a/keyboards/handwired/hacked_motospeed/config.h b/keyboards/handwired/hacked_motospeed/config.h index f968fcc0d7e..1d82f55e24e 100644 --- a/keyboards/handwired/hacked_motospeed/config.h +++ b/keyboards/handwired/hacked_motospeed/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . /* define if matrix has ghost (lacks anti-ghosting diodes) */ #define MATRIX_HAS_GHOST -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/handwired/hacked_motospeed/keyboard.json b/keyboards/handwired/hacked_motospeed/keyboard.json index af76a4dd769..1a38cdafdc8 100644 --- a/keyboards/handwired/hacked_motospeed/keyboard.json +++ b/keyboards/handwired/hacked_motospeed/keyboard.json @@ -31,6 +31,12 @@ "backlight": true, "bluetooth": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/handwired/heisenberg/config.h b/keyboards/handwired/heisenberg/config.h index 7ad28a9c225..e5671c9af75 100644 --- a/keyboards/handwired/heisenberg/config.h +++ b/keyboards/handwired/heisenberg/config.h @@ -17,12 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - /** * Heisenberg-specific definitions */ diff --git a/keyboards/handwired/heisenberg/keyboard.json b/keyboards/handwired/heisenberg/keyboard.json index 88f001d0754..460018ef1e5 100644 --- a/keyboards/handwired/heisenberg/keyboard.json +++ b/keyboards/handwired/heisenberg/keyboard.json @@ -36,6 +36,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "D7", "E6", "B4", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D3", "D2", "D1", "D0"] diff --git a/keyboards/handwired/hnah40/config.h b/keyboards/handwired/hnah40/config.h deleted file mode 100644 index 611a6960cb5..00000000000 --- a/keyboards/handwired/hnah40/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2018 HnahKB - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/handwired/hnah40/keyboard.json b/keyboards/handwired/hnah40/keyboard.json index 649ad84d100..e80bbdaec51 100644 --- a/keyboards/handwired/hnah40/keyboard.json +++ b/keyboards/handwired/hnah40/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "D7", "D6", "D5", "B2", "B1", "C0", "C1", "C2", "C3", "D1"], "rows": ["B4", "B5", "B3", "D4"] From 495e83b30f86a2ce4511f84f2e9cefb8e7f99136 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 22 May 2024 03:13:39 -0700 Subject: [PATCH 031/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: M, Part 2 (#23773) Affects: - `mkh_studio/bully` - `mlego/m48/rev1` - `mlego/m60/rev1` - `mlego/m60_split/rev1` - `mlego/m60_split/rev2` - `mntre` - `mode/m65ha_alpha` - `mode/m65hi_alpha` - `mode/m65s` - `mode/m80v1/m80h` - `mode/m80v1/m80s` - `mode/m80v2/m80v2h` - `mode/m80v2/m80v2s` - `molecule` - `momoka_ergo` - `monarch` - `monsgeek/m1` - `monsgeek/m3` - `monsgeek/m5` - `monsgeek/m6` - `monstargear/xo87/rgb` - `monstargear/xo87/solderable` - `montsinger/rebound/rev1` - `montsinger/rebound/rev2` - `montsinger/rebound/rev3` - `montsinger/rebound/rev4` - `montsinger/rewind` - `moon` - `morizon` - `mountainblocks/mb17` - `mt/blocked65` - `mt/mt64rgb` - `mt/mt980` - `mtbkeys/mtb60/hotswap` - `mtbkeys/mtb60/solder` - `murcielago/rev1` - `mxss` - `mysticworks/wyvern` --- keyboards/mkh_studio/bully/config.h | 9 ----- keyboards/mkh_studio/bully/keyboard.json | 6 +++ keyboards/mlego/m48/config.h | 21 ---------- keyboards/mlego/m48/rev1/keyboard.json | 6 +++ keyboards/mlego/m60/config.h | 21 ---------- keyboards/mlego/m60/rev1/keyboard.json | 6 +++ keyboards/mlego/m60_split/config.h | 21 ---------- keyboards/mlego/m60_split/rev1/keyboard.json | 6 +++ keyboards/mlego/m60_split/rev2/keyboard.json | 6 +++ keyboards/mntre/config.h | 5 --- keyboards/mntre/keyboard.json | 6 +++ keyboards/mode/m65ha_alpha/config.h | 5 --- keyboards/mode/m65ha_alpha/keyboard.json | 6 +++ keyboards/mode/m65hi_alpha/config.h | 5 --- keyboards/mode/m65hi_alpha/keyboard.json | 6 +++ keyboards/mode/m65s/config.h | 5 --- keyboards/mode/m65s/keyboard.json | 6 ++- keyboards/mode/m80v1/config.h | 39 ------------------- keyboards/mode/m80v1/m80h/keyboard.json | 6 +++ keyboards/mode/m80v1/m80s/keyboard.json | 6 +++ keyboards/mode/m80v2/config.h | 23 ----------- keyboards/mode/m80v2/m80v2h/keyboard.json | 6 +++ keyboards/mode/m80v2/m80v2s/keyboard.json | 6 +++ keyboards/molecule/config.h | 5 --- keyboards/molecule/keyboard.json | 6 +++ keyboards/momoka_ergo/config.h | 5 --- keyboards/momoka_ergo/keyboard.json | 6 +++ keyboards/monarch/config.h | 5 --- keyboards/monarch/keyboard.json | 6 +++ keyboards/monsgeek/m1/config.h | 5 --- keyboards/monsgeek/m1/keyboard.json | 6 +++ keyboards/monsgeek/m3/config.h | 5 --- keyboards/monsgeek/m3/keyboard.json | 6 +++ keyboards/monsgeek/m5/config.h | 5 --- keyboards/monsgeek/m5/keyboard.json | 6 +++ keyboards/monsgeek/m6/config.h | 5 --- keyboards/monsgeek/m6/keyboard.json | 6 +++ keyboards/monstargear/xo87/rgb/config.h | 20 ---------- keyboards/monstargear/xo87/rgb/keyboard.json | 6 +++ .../monstargear/xo87/solderable/config.h | 3 -- .../monstargear/xo87/solderable/keyboard.json | 6 +++ keyboards/montsinger/rebound/rev1/config.h | 20 ---------- .../montsinger/rebound/rev1/keyboard.json | 6 +++ keyboards/montsinger/rebound/rev2/config.h | 20 ---------- .../montsinger/rebound/rev2/keyboard.json | 6 +++ keyboards/montsinger/rebound/rev3/config.h | 20 ---------- .../montsinger/rebound/rev3/keyboard.json | 6 +++ keyboards/montsinger/rebound/rev4/config.h | 20 ---------- .../montsinger/rebound/rev4/keyboard.json | 6 +++ keyboards/montsinger/rewind/config.h | 20 ---------- keyboards/montsinger/rewind/keyboard.json | 6 +++ keyboards/moon/config.h | 5 --- keyboards/moon/keyboard.json | 6 +++ keyboards/morizon/config.h | 23 ----------- keyboards/morizon/keyboard.json | 6 +++ keyboards/mountainblocks/mb17/config.h | 23 ----------- keyboards/mountainblocks/mb17/keyboard.json | 6 +++ keyboards/mt/blocked65/config.h | 23 ----------- keyboards/mt/blocked65/keyboard.json | 6 +++ keyboards/mt/mt64rgb/config.h | 5 --- keyboards/mt/mt64rgb/keyboard.json | 6 +++ keyboards/mt/mt980/config.h | 7 ---- keyboards/mt/mt980/keyboard.json | 6 +++ keyboards/mtbkeys/mtb60/hotswap/config.h | 24 ------------ keyboards/mtbkeys/mtb60/hotswap/keyboard.json | 6 +++ keyboards/mtbkeys/mtb60/solder/config.h | 24 ------------ keyboards/mtbkeys/mtb60/solder/keyboard.json | 6 +++ keyboards/murcielago/rev1/config.h | 5 --- keyboards/murcielago/rev1/keyboard.json | 6 +++ keyboards/mxss/config.h | 23 ----------- keyboards/mxss/keyboard.json | 6 +++ keyboards/mysticworks/wyvern/config.h | 22 ----------- keyboards/mysticworks/wyvern/keyboard.json | 6 +++ 73 files changed, 227 insertions(+), 497 deletions(-) delete mode 100644 keyboards/mkh_studio/bully/config.h delete mode 100644 keyboards/mlego/m48/config.h delete mode 100644 keyboards/mlego/m60/config.h delete mode 100644 keyboards/mlego/m60_split/config.h delete mode 100644 keyboards/mode/m80v1/config.h delete mode 100644 keyboards/mode/m80v2/config.h delete mode 100644 keyboards/monstargear/xo87/rgb/config.h delete mode 100644 keyboards/montsinger/rebound/rev1/config.h delete mode 100644 keyboards/montsinger/rebound/rev2/config.h delete mode 100644 keyboards/montsinger/rebound/rev3/config.h delete mode 100644 keyboards/montsinger/rebound/rev4/config.h delete mode 100644 keyboards/montsinger/rewind/config.h delete mode 100644 keyboards/morizon/config.h delete mode 100644 keyboards/mountainblocks/mb17/config.h delete mode 100644 keyboards/mt/blocked65/config.h delete mode 100644 keyboards/mt/mt980/config.h delete mode 100644 keyboards/mtbkeys/mtb60/hotswap/config.h delete mode 100644 keyboards/mtbkeys/mtb60/solder/config.h delete mode 100644 keyboards/mxss/config.h delete mode 100644 keyboards/mysticworks/wyvern/config.h diff --git a/keyboards/mkh_studio/bully/config.h b/keyboards/mkh_studio/bully/config.h deleted file mode 100644 index 53958accae1..00000000000 --- a/keyboards/mkh_studio/bully/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2022 zhol -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mkh_studio/bully/keyboard.json b/keyboards/mkh_studio/bully/keyboard.json index ddd50665f6e..5102ffa632f 100644 --- a/keyboards/mkh_studio/bully/keyboard.json +++ b/keyboards/mkh_studio/bully/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/mlego/m48/config.h b/keyboards/mlego/m48/config.h deleted file mode 100644 index 70e1beb43e7..00000000000 --- a/keyboards/mlego/m48/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021-2022 alin m elena - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mlego/m48/rev1/keyboard.json b/keyboards/mlego/m48/rev1/keyboard.json index c8259424f3e..efd38882951 100644 --- a/keyboards/mlego/m48/rev1/keyboard.json +++ b/keyboards/mlego/m48/rev1/keyboard.json @@ -13,6 +13,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A10", "A15", "B3", "B4", "B5", "B7", "B6", "A1", "A2", "A3", "A4", "A5"], "rows": ["A6", "A7", "B0", "B10"] diff --git a/keyboards/mlego/m60/config.h b/keyboards/mlego/m60/config.h deleted file mode 100644 index 70e1beb43e7..00000000000 --- a/keyboards/mlego/m60/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021-2022 alin m elena - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mlego/m60/rev1/keyboard.json b/keyboards/mlego/m60/rev1/keyboard.json index 989474db830..126338b0c8e 100644 --- a/keyboards/mlego/m60/rev1/keyboard.json +++ b/keyboards/mlego/m60/rev1/keyboard.json @@ -13,6 +13,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A10", "A15", "B3", "B4", "B5", "B7", "B6", "A1", "A2", "A3", "A4", "A5"], "rows": ["A6", "A7", "B0", "B1", "B10"] diff --git a/keyboards/mlego/m60_split/config.h b/keyboards/mlego/m60_split/config.h deleted file mode 100644 index 70e1beb43e7..00000000000 --- a/keyboards/mlego/m60_split/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021-2022 alin m elena - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mlego/m60_split/rev1/keyboard.json b/keyboards/mlego/m60_split/rev1/keyboard.json index 9be9708081e..d0c6275dc9a 100644 --- a/keyboards/mlego/m60_split/rev1/keyboard.json +++ b/keyboards/mlego/m60_split/rev1/keyboard.json @@ -11,6 +11,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B14", "A10", "A15", "B3", "B4", "B5"], "rows": ["B0", "A6", "A7", "B1", "A5"] diff --git a/keyboards/mlego/m60_split/rev2/keyboard.json b/keyboards/mlego/m60_split/rev2/keyboard.json index 5185a2e6456..48d962f9cc0 100644 --- a/keyboards/mlego/m60_split/rev2/keyboard.json +++ b/keyboards/mlego/m60_split/rev2/keyboard.json @@ -11,6 +11,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B14", "A10", "A15", "B3", "B4", "B5"], "rows": ["B0", "A6", "A7", "B1", "A5"] diff --git a/keyboards/mntre/config.h b/keyboards/mntre/config.h index c12ca236724..1887ae7b3dd 100644 --- a/keyboards/mntre/config.h +++ b/keyboards/mntre/config.h @@ -5,11 +5,6 @@ #define BACKLIGHT_RESOLUTION 0x400 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/mntre/keyboard.json b/keyboards/mntre/keyboard.json index 4e14dd19f53..26dc66dc48d 100644 --- a/keyboards/mntre/keyboard.json +++ b/keyboards/mntre/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "F7", "E6", "C7", "B3", "B2", "B1", "B0", "F0", "F1", "F4", "F5", "F6", "C6"], "rows": ["B6", "B5", "B4", "D7", "D6", "D4"] diff --git a/keyboards/mode/m65ha_alpha/config.h b/keyboards/mode/m65ha_alpha/config.h index 52f0c6784df..9f49dcabf7d 100644 --- a/keyboards/mode/m65ha_alpha/config.h +++ b/keyboards/mode/m65ha_alpha/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define EEPROM_I2C_24LC256 //#define I2C1_CLOCK_SPEED 400000 //#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 diff --git a/keyboards/mode/m65ha_alpha/keyboard.json b/keyboards/mode/m65ha_alpha/keyboard.json index 8297f3b2bd6..cc5271b5c2c 100644 --- a/keyboards/mode/m65ha_alpha/keyboard.json +++ b/keyboards/mode/m65ha_alpha/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B10", "B12", "C8", "C4", "C5", "B0", "C10", "B13", "B14", "B15", "A15", "C6", "C7", "A8", "C9"], "rows": ["A7", "A10", "D2", "C12", "B1", "C11"] diff --git a/keyboards/mode/m65hi_alpha/config.h b/keyboards/mode/m65hi_alpha/config.h index 52f0c6784df..9f49dcabf7d 100644 --- a/keyboards/mode/m65hi_alpha/config.h +++ b/keyboards/mode/m65hi_alpha/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define EEPROM_I2C_24LC256 //#define I2C1_CLOCK_SPEED 400000 //#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 diff --git a/keyboards/mode/m65hi_alpha/keyboard.json b/keyboards/mode/m65hi_alpha/keyboard.json index ff6c75f55be..c0c843d4de4 100644 --- a/keyboards/mode/m65hi_alpha/keyboard.json +++ b/keyboards/mode/m65hi_alpha/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B10", "B12", "C8", "C4", "C5", "B0", "C10", "B13", "B14", "B15", "A15", "C6", "C7", "A8", "C9"], "rows": ["A7", "A10", "D2", "C12", "B1", "C11"] diff --git a/keyboards/mode/m65s/config.h b/keyboards/mode/m65s/config.h index 80d31d8d756..f41925995b5 100644 --- a/keyboards/mode/m65s/config.h +++ b/keyboards/mode/m65s/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define EEPROM_I2C_24LC128 //#define I2C1_CLOCK_SPEED 400000 //#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 diff --git a/keyboards/mode/m65s/keyboard.json b/keyboards/mode/m65s/keyboard.json index 8ed817a1801..ae8df282ad9 100644 --- a/keyboards/mode/m65s/keyboard.json +++ b/keyboards/mode/m65s/keyboard.json @@ -9,7 +9,11 @@ "device_version": "0.0.1" }, "qmk": { - "tap_keycode_delay": 50 + "tap_keycode_delay": 50, + "locking": { + "enabled": true, + "resync": true + } }, "features": { "bootmagic": true, diff --git a/keyboards/mode/m80v1/config.h b/keyboards/mode/m80v1/config.h deleted file mode 100644 index 72ad3079054..00000000000 --- a/keyboards/mode/m80v1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Alvaro "Gondolindrim" Volpato - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/mode/m80v1/m80h/keyboard.json b/keyboards/mode/m80v1/m80h/keyboard.json index 8d743dcb62f..dcebcb6d494 100644 --- a/keyboards/mode/m80v1/m80h/keyboard.json +++ b/keyboards/mode/m80v1/m80h/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B8", "B7", "B6", "B5", "B4", "A2", "A1", "A0", "F1", "F0", "C15", "C14", "C13", "A7", "A6", "A5"], "rows": ["A10", "A15", "B3", "B9", "A3", "A4"] diff --git a/keyboards/mode/m80v1/m80s/keyboard.json b/keyboards/mode/m80v1/m80s/keyboard.json index f4585389344..27622de022b 100644 --- a/keyboards/mode/m80v1/m80s/keyboard.json +++ b/keyboards/mode/m80v1/m80s/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B8", "B7", "B6", "B5", "B4", "A2", "A1", "A0", "F1", "F0", "C15", "C14", "C13", "A7", "A6", "A5"], "rows": ["A10", "A15", "B3", "B9", "A3", "A4"] diff --git a/keyboards/mode/m80v2/config.h b/keyboards/mode/m80v2/config.h deleted file mode 100644 index d553d5d8942..00000000000 --- a/keyboards/mode/m80v2/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* - Copyright 2020 Álvaro "Gondolindrim" Volpato - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mode/m80v2/m80v2h/keyboard.json b/keyboards/mode/m80v2/m80v2h/keyboard.json index e8bd7f2912b..1844e0775cd 100644 --- a/keyboards/mode/m80v2/m80v2h/keyboard.json +++ b/keyboards/mode/m80v2/m80v2h/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "B10", "A8", "A10", "B15", "A15", "B5", "B8", "C13"], "rows": ["B12", "B13", "B14", "B3", "B4", "B9"] diff --git a/keyboards/mode/m80v2/m80v2s/keyboard.json b/keyboards/mode/m80v2/m80v2s/keyboard.json index 8f5ecc9ac2e..8ab060668c9 100644 --- a/keyboards/mode/m80v2/m80v2s/keyboard.json +++ b/keyboards/mode/m80v2/m80v2s/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "B10", "A8", "A10", "B15", "A15", "B5", "B8", "C13"], "rows": ["B12", "B13", "B14", "B3", "B4", "B9"] diff --git a/keyboards/molecule/config.h b/keyboards/molecule/config.h index 1755979bbc8..3de5dc14cc4 100755 --- a/keyboards/molecule/config.h +++ b/keyboards/molecule/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . /* OLED */ #define OLED_TIMEOUT 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/molecule/keyboard.json b/keyboards/molecule/keyboard.json index f3bd818122c..94c721f7524 100755 --- a/keyboards/molecule/keyboard.json +++ b/keyboards/molecule/keyboard.json @@ -14,6 +14,12 @@ "extrakey": true, "pointing_device": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F4", "F5", "F6", "B6"] diff --git a/keyboards/momoka_ergo/config.h b/keyboards/momoka_ergo/config.h index 54d60e9963f..dbd81b12135 100644 --- a/keyboards/momoka_ergo/config.h +++ b/keyboards/momoka_ergo/config.h @@ -19,10 +19,5 @@ along with this program. If not, see . #define SELECT_SOFT_SERIAL_SPEED 5 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SPLIT_USB_DETECT #define EE_HANDS diff --git a/keyboards/momoka_ergo/keyboard.json b/keyboards/momoka_ergo/keyboard.json index da21c509b92..68fe1b308f5 100644 --- a/keyboards/momoka_ergo/keyboard.json +++ b/keyboards/momoka_ergo/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["C6", "D7", "E6", "B4", "B5", "B6", "B7"] diff --git a/keyboards/monarch/config.h b/keyboards/monarch/config.h index 30181978df9..aa89dc3eacf 100644 --- a/keyboards/monarch/config.h +++ b/keyboards/monarch/config.h @@ -23,11 +23,6 @@ along with this program. If not, see . #define SLEEP_LED_GPT_DRIVER GPTD1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/monarch/keyboard.json b/keyboards/monarch/keyboard.json index f5dee1f9f60..c42db64a26f 100644 --- a/keyboards/monarch/keyboard.json +++ b/keyboards/monarch/keyboard.json @@ -19,6 +19,12 @@ "nkro": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B12", "B10", "B2", "B1", "B0", "A5", "A7", "A4", "A3", "B6"], "rows": ["A15", "B3", "B11", "A2", "A1", "B9"] diff --git a/keyboards/monsgeek/m1/config.h b/keyboards/monsgeek/m1/config.h index 4aa60123309..4b6f30ded3f 100644 --- a/keyboards/monsgeek/m1/config.h +++ b/keyboards/monsgeek/m1/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define ENCODER_DEFAULT_POS 0x3 /* SPI Config for spi flash*/ diff --git a/keyboards/monsgeek/m1/keyboard.json b/keyboards/monsgeek/m1/keyboard.json index 5d5d030214c..1551b2a1137 100644 --- a/keyboards/monsgeek/m1/keyboard.json +++ b/keyboards/monsgeek/m1/keyboard.json @@ -21,6 +21,12 @@ "encoder": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C1", "C2", "C3", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C4", "C5", "B0", "B1", "B2"], "rows": ["B15", "C6", "C7", "C8", "C9", "A8"] diff --git a/keyboards/monsgeek/m3/config.h b/keyboards/monsgeek/m3/config.h index ba77115d40f..c179436ca75 100644 --- a/keyboards/monsgeek/m3/config.h +++ b/keyboards/monsgeek/m3/config.h @@ -20,11 +20,6 @@ #define LED_MAC_OS_PIN C10 #define LED_WIN_LOCK_PIN C11 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* SPI Config for spi flash*/ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN B3 diff --git a/keyboards/monsgeek/m3/keyboard.json b/keyboards/monsgeek/m3/keyboard.json index 09ce11c4476..cb7c3abf212 100644 --- a/keyboards/monsgeek/m3/keyboard.json +++ b/keyboards/monsgeek/m3/keyboard.json @@ -26,6 +26,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "dynamic_keymap": { "layer_count": 6 }, diff --git a/keyboards/monsgeek/m5/config.h b/keyboards/monsgeek/m5/config.h index d18d1fdacdc..f7cedc4d41e 100644 --- a/keyboards/monsgeek/m5/config.h +++ b/keyboards/monsgeek/m5/config.h @@ -19,11 +19,6 @@ /* LED Indicators */ #define LED_WIN_LOCK_PIN C11 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* SPI Config for spi flash*/ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN B3 diff --git a/keyboards/monsgeek/m5/keyboard.json b/keyboards/monsgeek/m5/keyboard.json index 77d474d5db2..b9ef0099bc3 100644 --- a/keyboards/monsgeek/m5/keyboard.json +++ b/keyboards/monsgeek/m5/keyboard.json @@ -20,6 +20,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C1","C2","C3","A0","A1","A2","A3","A4","A5","A6","A7","C4","C5","B0","B1","B2","B10","B11","B12","B13","B14"], "rows": ["B15", "C6", "C7", "C8", "C9", "A8"] diff --git a/keyboards/monsgeek/m6/config.h b/keyboards/monsgeek/m6/config.h index 3586c2cb466..d5131a1bb2a 100644 --- a/keyboards/monsgeek/m6/config.h +++ b/keyboards/monsgeek/m6/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* SPI Config for spi flash*/ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN B3 diff --git a/keyboards/monsgeek/m6/keyboard.json b/keyboards/monsgeek/m6/keyboard.json index 7931d0d1224..12d7def4c77 100644 --- a/keyboards/monsgeek/m6/keyboard.json +++ b/keyboards/monsgeek/m6/keyboard.json @@ -20,6 +20,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C1", "C2", "C3", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C4", "C5", "B0", "B1", "B2"], "rows": ["C6", "C7", "C8", "C9", "A8"] diff --git a/keyboards/monstargear/xo87/rgb/config.h b/keyboards/monstargear/xo87/rgb/config.h deleted file mode 100644 index e32abb6630c..00000000000 --- a/keyboards/monstargear/xo87/rgb/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2021 datafx - * - * 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 . - */ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/monstargear/xo87/rgb/keyboard.json b/keyboards/monstargear/xo87/rgb/keyboard.json index cedc1868450..5571b919907 100644 --- a/keyboards/monstargear/xo87/rgb/keyboard.json +++ b/keyboards/monstargear/xo87/rgb/keyboard.json @@ -73,6 +73,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C5", "C3", "C1", "E1", "D6", "D2", "B7", "B3", "F6", "F7", "F3", "A5", "A1", "E2", "C7", "A6"], "rows": ["E6", "E7", "E3", "B0", "B1", "A2"] diff --git a/keyboards/monstargear/xo87/solderable/config.h b/keyboards/monstargear/xo87/solderable/config.h index 088e09dc81a..68da1addfa7 100644 --- a/keyboards/monstargear/xo87/solderable/config.h +++ b/keyboards/monstargear/xo87/solderable/config.h @@ -23,6 +23,3 @@ #define KEYLED_COLS 16 #define KEYLED_ROW_PINS { E5,B4,B5,F0,C6,D5 } #define KEYLED_COL_PINS { C4,C2,C0,E0,D4,E4,B6,B2,F4,A0,F2,A4,F1,A7,D3,A3 } - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/monstargear/xo87/solderable/keyboard.json b/keyboards/monstargear/xo87/solderable/keyboard.json index f8436f4bacd..a230649b49c 100644 --- a/keyboards/monstargear/xo87/solderable/keyboard.json +++ b/keyboards/monstargear/xo87/solderable/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C5", "C3", "C1", "E1", "D6", "D2", "B7", "B3", "F6", "F7", "F3", "A5", "A1", "E2", "C7", "A6"], "rows": ["E6", "E7", "E3", "B0", "B1", "A2"] diff --git a/keyboards/montsinger/rebound/rev1/config.h b/keyboards/montsinger/rebound/rev1/config.h deleted file mode 100644 index 274c715a937..00000000000 --- a/keyboards/montsinger/rebound/rev1/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Ross Montsinger -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/montsinger/rebound/rev1/keyboard.json b/keyboards/montsinger/rebound/rev1/keyboard.json index 66ed41a6740..b03f0250688 100644 --- a/keyboards/montsinger/rebound/rev1/keyboard.json +++ b/keyboards/montsinger/rebound/rev1/keyboard.json @@ -15,6 +15,12 @@ "console": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D4", "C6", "D7", "E6", "B4", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D1", "B5", "B2", "B6"] diff --git a/keyboards/montsinger/rebound/rev2/config.h b/keyboards/montsinger/rebound/rev2/config.h deleted file mode 100644 index 274c715a937..00000000000 --- a/keyboards/montsinger/rebound/rev2/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Ross Montsinger -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/montsinger/rebound/rev2/keyboard.json b/keyboards/montsinger/rebound/rev2/keyboard.json index a3a99247ab3..3bee7fc3efd 100644 --- a/keyboards/montsinger/rebound/rev2/keyboard.json +++ b/keyboards/montsinger/rebound/rev2/keyboard.json @@ -16,6 +16,12 @@ "command": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D4", "C6", "D7", "E6", "B4", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D1", "B5", "B2", "B6", "B0"] diff --git a/keyboards/montsinger/rebound/rev3/config.h b/keyboards/montsinger/rebound/rev3/config.h deleted file mode 100644 index 274c715a937..00000000000 --- a/keyboards/montsinger/rebound/rev3/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Ross Montsinger -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/montsinger/rebound/rev3/keyboard.json b/keyboards/montsinger/rebound/rev3/keyboard.json index 630761b4013..a0d3fc6db84 100644 --- a/keyboards/montsinger/rebound/rev3/keyboard.json +++ b/keyboards/montsinger/rebound/rev3/keyboard.json @@ -16,6 +16,12 @@ "command": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5", "B6", "B2", "B3", "B1", "F7", "F6"], "rows": ["F4", "F5", "D1", "D0", "B0"] diff --git a/keyboards/montsinger/rebound/rev4/config.h b/keyboards/montsinger/rebound/rev4/config.h deleted file mode 100644 index 274c715a937..00000000000 --- a/keyboards/montsinger/rebound/rev4/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Ross Montsinger -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/montsinger/rebound/rev4/keyboard.json b/keyboards/montsinger/rebound/rev4/keyboard.json index ad17ca423ea..7497bdc80d0 100644 --- a/keyboards/montsinger/rebound/rev4/keyboard.json +++ b/keyboards/montsinger/rebound/rev4/keyboard.json @@ -16,6 +16,12 @@ "command": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "B4", "B5", "B2", "B3", "B1"], "rows": ["D1", "D0", "D4", "C6", "F7", "F6", "F5", "F4"] diff --git a/keyboards/montsinger/rewind/config.h b/keyboards/montsinger/rewind/config.h deleted file mode 100644 index 274c715a937..00000000000 --- a/keyboards/montsinger/rewind/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Ross Montsinger -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/montsinger/rewind/keyboard.json b/keyboards/montsinger/rewind/keyboard.json index b8a70296633..ddb6ab64968 100644 --- a/keyboards/montsinger/rewind/keyboard.json +++ b/keyboards/montsinger/rewind/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "E6", "D7", "C6", "D4", "D0", "D1"], "rows": ["B5", "B4", "D2", "D3", "B2"] diff --git a/keyboards/moon/config.h b/keyboards/moon/config.h index dda16185227..ca4c770a3bc 100644 --- a/keyboards/moon/config.h +++ b/keyboards/moon/config.h @@ -21,8 +21,3 @@ along with this program. If not, see . /* key matrix size */ #define MATRIX_ROWS 8 #define MATRIX_COLS 11 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/moon/keyboard.json b/keyboards/moon/keyboard.json index 4c66cb51a9b..76d2c08f7e2 100644 --- a/keyboards/moon/keyboard.json +++ b/keyboards/moon/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "C6" }, diff --git a/keyboards/morizon/config.h b/keyboards/morizon/config.h deleted file mode 100644 index 5b0945d4d4b..00000000000 --- a/keyboards/morizon/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 Steven Karrmann - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/morizon/keyboard.json b/keyboards/morizon/keyboard.json index 440047c6902..73097dd113a 100644 --- a/keyboards/morizon/keyboard.json +++ b/keyboards/morizon/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/mountainblocks/mb17/config.h b/keyboards/mountainblocks/mb17/config.h deleted file mode 100644 index 2aca1d46b3b..00000000000 --- a/keyboards/mountainblocks/mb17/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 mechmerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mountainblocks/mb17/keyboard.json b/keyboards/mountainblocks/mb17/keyboard.json index dca8ca8ee97..9e9bb984066 100644 --- a/keyboards/mountainblocks/mb17/keyboard.json +++ b/keyboards/mountainblocks/mb17/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "E6", "D7", "C6"], "rows": ["F4", "B1", "B3", "B2", "B6"] diff --git a/keyboards/mt/blocked65/config.h b/keyboards/mt/blocked65/config.h deleted file mode 100644 index 28be4f1a5b4..00000000000 --- a/keyboards/mt/blocked65/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Evy Dekkers - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mt/blocked65/keyboard.json b/keyboards/mt/blocked65/keyboard.json index 14e5942228d..9a0ce520430 100644 --- a/keyboards/mt/blocked65/keyboard.json +++ b/keyboards/mt/blocked65/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["B0", "B1", "B2", "B3", "B7"] diff --git a/keyboards/mt/mt64rgb/config.h b/keyboards/mt/mt64rgb/config.h index 50c9ca5f64b..f69c778b8b6 100644 --- a/keyboards/mt/mt64rgb/config.h +++ b/keyboards/mt/mt64rgb/config.h @@ -18,8 +18,3 @@ #define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND #define RGB_MATRIX_LED_COUNT 64 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mt/mt64rgb/keyboard.json b/keyboards/mt/mt64rgb/keyboard.json index 5dbcf309697..0858e85ecae 100644 --- a/keyboards/mt/mt64rgb/keyboard.json +++ b/keyboards/mt/mt64rgb/keyboard.json @@ -77,6 +77,12 @@ "rgblight": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "B1", "B2", "B3", "B7"], "rows": ["D7", "D6", "D5", "D3", "D2"] diff --git a/keyboards/mt/mt980/config.h b/keyboards/mt/mt980/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/mt/mt980/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mt/mt980/keyboard.json b/keyboards/mt/mt980/keyboard.json index 6ecc9f86108..2fa17224cb4 100644 --- a/keyboards/mt/mt980/keyboard.json +++ b/keyboards/mt/mt980/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4"], "rows": ["B7", "B3", "B2", "B1", "B0", "E6", "F0", "F1", "F4", "F5", "F6", "F7"] diff --git a/keyboards/mtbkeys/mtb60/hotswap/config.h b/keyboards/mtbkeys/mtb60/hotswap/config.h deleted file mode 100644 index 19881718ef2..00000000000 --- a/keyboards/mtbkeys/mtb60/hotswap/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 MTBKeys - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mtbkeys/mtb60/hotswap/keyboard.json b/keyboards/mtbkeys/mtb60/hotswap/keyboard.json index 8d39de83230..cca7bb726ac 100644 --- a/keyboards/mtbkeys/mtb60/hotswap/keyboard.json +++ b/keyboards/mtbkeys/mtb60/hotswap/keyboard.json @@ -41,6 +41,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "B7", "B6", "F7", "C6", "C7", "F6", "F4", "F1", "F0", "F5", "E6"], "rows": ["D6", "D7", "B4", "B5", "D5"] diff --git a/keyboards/mtbkeys/mtb60/solder/config.h b/keyboards/mtbkeys/mtb60/solder/config.h deleted file mode 100644 index 19881718ef2..00000000000 --- a/keyboards/mtbkeys/mtb60/solder/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 MTBKeys - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mtbkeys/mtb60/solder/keyboard.json b/keyboards/mtbkeys/mtb60/solder/keyboard.json index 1770e3a997a..1059f1fd76e 100644 --- a/keyboards/mtbkeys/mtb60/solder/keyboard.json +++ b/keyboards/mtbkeys/mtb60/solder/keyboard.json @@ -41,6 +41,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F0", "F5", "F6", "F7", "D5", "D3", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["D0", "D1", "F4", "F1", "D2"] diff --git a/keyboards/murcielago/rev1/config.h b/keyboards/murcielago/rev1/config.h index 156f708632b..17f316d6af8 100644 --- a/keyboards/murcielago/rev1/config.h +++ b/keyboards/murcielago/rev1/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define EE_HANDS #define SPLIT_USB_DETECT -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/murcielago/rev1/keyboard.json b/keyboards/murcielago/rev1/keyboard.json index 2dd650666a2..39c2d4fc3d5 100644 --- a/keyboards/murcielago/rev1/keyboard.json +++ b/keyboards/murcielago/rev1/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "B6", "B5", "D7", "D6", "D4"], "rows": ["B4", "D5", "B3", "B2", "B1", "B0"] diff --git a/keyboards/mxss/config.h b/keyboards/mxss/config.h deleted file mode 100644 index 704da3911aa..00000000000 --- a/keyboards/mxss/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2018 Jumail Mundekkat / MxBlue - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mxss/keyboard.json b/keyboards/mxss/keyboard.json index 08461574579..defa0ae6b7e 100644 --- a/keyboards/mxss/keyboard.json +++ b/keyboards/mxss/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/mysticworks/wyvern/config.h b/keyboards/mysticworks/wyvern/config.h deleted file mode 100644 index d025a3d4de6..00000000000 --- a/keyboards/mysticworks/wyvern/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Albert Dong - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mysticworks/wyvern/keyboard.json b/keyboards/mysticworks/wyvern/keyboard.json index ddc240dd8f3..77f2aa19bd4 100644 --- a/keyboards/mysticworks/wyvern/keyboard.json +++ b/keyboards/mysticworks/wyvern/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B0", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["D0", "D1", "D5", "D3", "F7", "F6", "F5", "F4", "F1", "F0"] From 071434c04f77c3c277199982b3c4b5ffcd97618c Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 22 May 2024 03:17:43 -0700 Subject: [PATCH 032/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: L (#23771) Affects: - `labbe/labbeminiv1` - `labyrinth75` - `laneware/lpad` - `laneware/lw67` - `laneware/lw75` - `laneware/macro1` - `laneware/raindrop` - `laser_ninja/pumpkinpad` - `latincompass/latin47ble` - `lazydesigners/dimple/ortho` - `lazydesigners/dimple/staggered/rev1` - `lazydesigners/dimple/staggered/rev2` - `lazydesigners/dimple/staggered/rev3` - `lazydesigners/dimple` - `lazydesigners/the50` - `lazydesigners/the60/rev1` - `lets_split/rev1` - `lets_split/rev2` - `lfkeyboards/lfk65_hs` - `lfkeyboards/lfk78/revb` - `lfkeyboards/lfk78/revc` - `lfkeyboards/lfk78/revj` - `lfkeyboards/lfk87/reva` - `lfkeyboards/lfk87/revc` - `lfkeyboards/lfkpad` - `lfkeyboards/mini1800/reva` - `lfkeyboards/mini1800/revc` - `lfkeyboards/smk65/revb` - `lfkeyboards/smk65/revf` - `linworks/fave60` - `lizard_trick/tenkey_plusplus` - `lm_keyboard/lm60n` - `lucid/alexa` - `lucid/alexa_solder` - `lucid/kbd8x_hs` - `lucid/phantom_hs` - `lucid/phantom_solder` - `lucid/scarlet` - `lyso1/lck75` - `lyso1/lefishe` --- keyboards/labbe/labbeminiv1/config.h | 22 ---------- keyboards/labbe/labbeminiv1/keyboard.json | 6 +++ keyboards/labyrinth75/config.h | 39 ------------------ keyboards/labyrinth75/keyboard.json | 6 +++ keyboards/laneware/lpad/config.h | 10 ----- keyboards/laneware/lpad/keyboard.json | 6 +++ keyboards/laneware/lw67/config.h | 23 ----------- keyboards/laneware/lw67/keyboard.json | 6 +++ keyboards/laneware/lw75/config.h | 10 ----- keyboards/laneware/lw75/keyboard.json | 6 +++ keyboards/laneware/macro1/config.h | 26 ------------ keyboards/laneware/macro1/keyboard.json | 6 +++ keyboards/laneware/raindrop/config.h | 10 ----- keyboards/laneware/raindrop/keyboard.json | 6 +++ keyboards/laser_ninja/pumpkinpad/config.h | 22 ---------- .../laser_ninja/pumpkinpad/keyboard.json | 6 +++ keyboards/latincompass/latin47ble/config.h | 38 ----------------- .../latincompass/latin47ble/keyboard.json | 6 +++ keyboards/lazydesigners/dimple/config.h | 24 ----------- .../lazydesigners/dimple/ortho/keyboard.json | 6 +++ .../dimple/staggered/rev1/keyboard.json | 6 +++ .../dimple/staggered/rev2/keyboard.json | 6 +++ .../dimple/staggered/rev3/keyboard.json | 6 +++ keyboards/lazydesigners/the50/config.h | 7 ---- keyboards/lazydesigners/the50/keyboard.json | 6 +++ keyboards/lazydesigners/the60/rev1/config.h | 7 ---- .../lazydesigners/the60/rev1/keyboard.json | 6 +++ keyboards/lets_split/rev1/config.h | 40 ------------------ keyboards/lets_split/rev1/keyboard.json | 6 +++ keyboards/lets_split/rev2/config.h | 40 ------------------ keyboards/lets_split/rev2/keyboard.json | 6 +++ keyboards/lfkeyboards/lfk65_hs/config.h | 22 ---------- keyboards/lfkeyboards/lfk65_hs/keyboard.json | 6 +++ keyboards/lfkeyboards/lfk78/config.h | 5 --- .../lfkeyboards/lfk78/revb/keyboard.json | 6 +++ .../lfkeyboards/lfk78/revc/keyboard.json | 6 +++ .../lfkeyboards/lfk78/revj/keyboard.json | 6 +++ keyboards/lfkeyboards/lfk87/config.h | 5 --- .../lfkeyboards/lfk87/reva/keyboard.json | 6 +++ .../lfkeyboards/lfk87/revc/keyboard.json | 6 +++ keyboards/lfkeyboards/lfkpad/config.h | 39 ------------------ keyboards/lfkeyboards/lfkpad/keyboard.json | 6 +++ keyboards/lfkeyboards/mini1800/config.h | 5 --- .../lfkeyboards/mini1800/reva/keyboard.json | 6 +++ .../lfkeyboards/mini1800/revc/keyboard.json | 6 +++ keyboards/lfkeyboards/smk65/revb/config.h | 5 --- .../lfkeyboards/smk65/revb/keyboard.json | 6 +++ keyboards/lfkeyboards/smk65/revf/config.h | 5 --- .../lfkeyboards/smk65/revf/keyboard.json | 6 +++ keyboards/linworks/fave60/config.h | 25 ----------- keyboards/linworks/fave60/keyboard.json | 6 +++ .../lizard_trick/tenkey_plusplus/config.h | 40 ------------------ .../tenkey_plusplus/keyboard.json | 6 +++ keyboards/lm_keyboard/lm60n/config.h | 39 ------------------ keyboards/lm_keyboard/lm60n/keyboard.json | 6 +++ keyboards/lucid/alexa/config.h | 41 ------------------- keyboards/lucid/alexa/keyboard.json | 6 +++ keyboards/lucid/alexa_solder/config.h | 41 ------------------- keyboards/lucid/alexa_solder/keyboard.json | 6 +++ keyboards/lucid/kbd8x_hs/config.h | 41 ------------------- keyboards/lucid/kbd8x_hs/keyboard.json | 6 +++ keyboards/lucid/phantom_hs/config.h | 41 ------------------- keyboards/lucid/phantom_hs/keyboard.json | 6 +++ keyboards/lucid/phantom_solder/config.h | 41 ------------------- keyboards/lucid/phantom_solder/keyboard.json | 6 +++ keyboards/lucid/scarlet/config.h | 41 ------------------- keyboards/lucid/scarlet/keyboard.json | 6 +++ keyboards/lyso1/lck75/config.h | 7 ---- keyboards/lyso1/lck75/keyboard.json | 6 +++ keyboards/lyso1/lefishe/config.h | 24 ----------- keyboards/lyso1/lefishe/keyboard.json | 6 +++ 71 files changed, 234 insertions(+), 785 deletions(-) delete mode 100644 keyboards/labbe/labbeminiv1/config.h delete mode 100644 keyboards/labyrinth75/config.h delete mode 100644 keyboards/laneware/lpad/config.h delete mode 100644 keyboards/laneware/lw67/config.h delete mode 100644 keyboards/laneware/lw75/config.h delete mode 100644 keyboards/laneware/macro1/config.h delete mode 100644 keyboards/laneware/raindrop/config.h delete mode 100644 keyboards/laser_ninja/pumpkinpad/config.h delete mode 100644 keyboards/latincompass/latin47ble/config.h delete mode 100644 keyboards/lazydesigners/dimple/config.h delete mode 100644 keyboards/lazydesigners/the50/config.h delete mode 100755 keyboards/lazydesigners/the60/rev1/config.h delete mode 100644 keyboards/lets_split/rev1/config.h delete mode 100644 keyboards/lets_split/rev2/config.h delete mode 100644 keyboards/lfkeyboards/lfk65_hs/config.h delete mode 100644 keyboards/lfkeyboards/lfkpad/config.h delete mode 100644 keyboards/linworks/fave60/config.h delete mode 100644 keyboards/lizard_trick/tenkey_plusplus/config.h delete mode 100644 keyboards/lm_keyboard/lm60n/config.h delete mode 100644 keyboards/lucid/alexa/config.h delete mode 100644 keyboards/lucid/alexa_solder/config.h delete mode 100644 keyboards/lucid/kbd8x_hs/config.h delete mode 100644 keyboards/lucid/phantom_hs/config.h delete mode 100644 keyboards/lucid/phantom_solder/config.h delete mode 100644 keyboards/lucid/scarlet/config.h delete mode 100644 keyboards/lyso1/lefishe/config.h diff --git a/keyboards/labbe/labbeminiv1/config.h b/keyboards/labbe/labbeminiv1/config.h deleted file mode 100644 index 3b8a4eda99c..00000000000 --- a/keyboards/labbe/labbeminiv1/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE \ No newline at end of file diff --git a/keyboards/labbe/labbeminiv1/keyboard.json b/keyboards/labbe/labbeminiv1/keyboard.json index 1bb3b6ff4bd..da53de3da5e 100644 --- a/keyboards/labbe/labbeminiv1/keyboard.json +++ b/keyboards/labbe/labbeminiv1/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4"], "rows": ["F5", "F6"] diff --git a/keyboards/labyrinth75/config.h b/keyboards/labyrinth75/config.h deleted file mode 100644 index 92a3858433b..00000000000 --- a/keyboards/labyrinth75/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Livi - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/labyrinth75/keyboard.json b/keyboards/labyrinth75/keyboard.json index 5ff83582b1f..1e70a8318d3 100644 --- a/keyboards/labyrinth75/keyboard.json +++ b/keyboards/labyrinth75/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "B5"], "rows": ["B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "D3"] diff --git a/keyboards/laneware/lpad/config.h b/keyboards/laneware/lpad/config.h deleted file mode 100644 index ce4da1d32e6..00000000000 --- a/keyboards/laneware/lpad/config.h +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2023 Laneware Peripherals -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/laneware/lpad/keyboard.json b/keyboards/laneware/lpad/keyboard.json index d143b363b30..464205846b8 100644 --- a/keyboards/laneware/lpad/keyboard.json +++ b/keyboards/laneware/lpad/keyboard.json @@ -19,6 +19,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D4", "D6"], "rows": ["E6", "B7", "D0"] diff --git a/keyboards/laneware/lw67/config.h b/keyboards/laneware/lw67/config.h deleted file mode 100644 index c9f23257a35..00000000000 --- a/keyboards/laneware/lw67/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Laneware Peripherals - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/laneware/lw67/keyboard.json b/keyboards/laneware/lw67/keyboard.json index 08c5bc355cb..e48506f58ed 100644 --- a/keyboards/laneware/lw67/keyboard.json +++ b/keyboards/laneware/lw67/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "B0", "B1"], "rows": ["E6", "B7", "D0", "D1", "D2"] diff --git a/keyboards/laneware/lw75/config.h b/keyboards/laneware/lw75/config.h deleted file mode 100644 index ce4da1d32e6..00000000000 --- a/keyboards/laneware/lw75/config.h +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2023 Laneware Peripherals -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/laneware/lw75/keyboard.json b/keyboards/laneware/lw75/keyboard.json index 7fae15b1758..27601d1e280 100644 --- a/keyboards/laneware/lw75/keyboard.json +++ b/keyboards/laneware/lw75/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "B0", "B2"], "rows": ["E6", "B7", "D0", "D1", "D2", "B1"] diff --git a/keyboards/laneware/macro1/config.h b/keyboards/laneware/macro1/config.h deleted file mode 100644 index 30b3906f0da..00000000000 --- a/keyboards/laneware/macro1/config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Copyright 2021 Laneware Peripherals - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - - diff --git a/keyboards/laneware/macro1/keyboard.json b/keyboards/laneware/macro1/keyboard.json index ea9be78cd34..a432db59152 100644 --- a/keyboards/laneware/macro1/keyboard.json +++ b/keyboards/laneware/macro1/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D4", "D6", "D7"], "rows": ["E6", "B7", "D0", "D1", "D2", "B3"] diff --git a/keyboards/laneware/raindrop/config.h b/keyboards/laneware/raindrop/config.h deleted file mode 100644 index 1f083ec616b..00000000000 --- a/keyboards/laneware/raindrop/config.h +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2023 QMK -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/laneware/raindrop/keyboard.json b/keyboards/laneware/raindrop/keyboard.json index d1896a41b45..4e5d674b2b4 100644 --- a/keyboards/laneware/raindrop/keyboard.json +++ b/keyboards/laneware/raindrop/keyboard.json @@ -23,6 +23,12 @@ "command": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_all": "LAYOUT_64_ansi_split_bs" }, diff --git a/keyboards/laser_ninja/pumpkinpad/config.h b/keyboards/laser_ninja/pumpkinpad/config.h deleted file mode 100644 index fbb4aaafcef..00000000000 --- a/keyboards/laser_ninja/pumpkinpad/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2022 Joah Nelson (Jels) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/laser_ninja/pumpkinpad/keyboard.json b/keyboards/laser_ninja/pumpkinpad/keyboard.json index 3908e99fc28..64e62911a60 100644 --- a/keyboards/laser_ninja/pumpkinpad/keyboard.json +++ b/keyboards/laser_ninja/pumpkinpad/keyboard.json @@ -14,6 +14,12 @@ "nkro": false, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["A9", "B3", "B9", "NO_PIN"], diff --git a/keyboards/latincompass/latin47ble/config.h b/keyboards/latincompass/latin47ble/config.h deleted file mode 100644 index 4551532bfa7..00000000000 --- a/keyboards/latincompass/latin47ble/config.h +++ /dev/null @@ -1,38 +0,0 @@ - /* Copyright 2020 haierwangwei2005 - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/latincompass/latin47ble/keyboard.json b/keyboards/latincompass/latin47ble/keyboard.json index b0b14d66446..ac07f68152f 100644 --- a/keyboards/latincompass/latin47ble/keyboard.json +++ b/keyboards/latincompass/latin47ble/keyboard.json @@ -48,6 +48,12 @@ "rgblight": true, "bluetooth": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["planck_mit"], "layouts": { "LAYOUT_planck_mit": { diff --git a/keyboards/lazydesigners/dimple/config.h b/keyboards/lazydesigners/dimple/config.h deleted file mode 100644 index 5a7ea57b432..00000000000 --- a/keyboards/lazydesigners/dimple/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2019 Erovia - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/lazydesigners/dimple/ortho/keyboard.json b/keyboards/lazydesigners/dimple/ortho/keyboard.json index f5c0cf3ad0f..08a6dc264c8 100644 --- a/keyboards/lazydesigners/dimple/ortho/keyboard.json +++ b/keyboards/lazydesigners/dimple/ortho/keyboard.json @@ -14,6 +14,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["D0", "D1", "D2", "D3"] diff --git a/keyboards/lazydesigners/dimple/staggered/rev1/keyboard.json b/keyboards/lazydesigners/dimple/staggered/rev1/keyboard.json index bc5822214ab..4afe83df486 100644 --- a/keyboards/lazydesigners/dimple/staggered/rev1/keyboard.json +++ b/keyboards/lazydesigners/dimple/staggered/rev1/keyboard.json @@ -6,6 +6,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "E6", "on_state": 0 diff --git a/keyboards/lazydesigners/dimple/staggered/rev2/keyboard.json b/keyboards/lazydesigners/dimple/staggered/rev2/keyboard.json index d8b051db650..013f2aa8332 100644 --- a/keyboards/lazydesigners/dimple/staggered/rev2/keyboard.json +++ b/keyboards/lazydesigners/dimple/staggered/rev2/keyboard.json @@ -5,6 +5,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/lazydesigners/dimple/staggered/rev3/keyboard.json b/keyboards/lazydesigners/dimple/staggered/rev3/keyboard.json index 9262048c8ab..f82a2bb379d 100644 --- a/keyboards/lazydesigners/dimple/staggered/rev3/keyboard.json +++ b/keyboards/lazydesigners/dimple/staggered/rev3/keyboard.json @@ -6,6 +6,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "B7" }, diff --git a/keyboards/lazydesigners/the50/config.h b/keyboards/lazydesigners/the50/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/lazydesigners/the50/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/lazydesigners/the50/keyboard.json b/keyboards/lazydesigners/the50/keyboard.json index 75e39ab0ca0..1039625f066 100644 --- a/keyboards/lazydesigners/the50/keyboard.json +++ b/keyboards/lazydesigners/the50/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "C6", "C7", "F4", "F5", "F6", "F7"], "rows": ["B0", "B1", "B2", "B3"] diff --git a/keyboards/lazydesigners/the60/rev1/config.h b/keyboards/lazydesigners/the60/rev1/config.h deleted file mode 100755 index 5f360813239..00000000000 --- a/keyboards/lazydesigners/the60/rev1/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/lazydesigners/the60/rev1/keyboard.json b/keyboards/lazydesigners/the60/rev1/keyboard.json index f06e695bf42..815cf8e04d9 100755 --- a/keyboards/lazydesigners/the60/rev1/keyboard.json +++ b/keyboards/lazydesigners/the60/rev1/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "C6", "C7", "F4", "F5", "F6", "F7"], "rows": ["B0", "B1", "B2", "B3", "B4"] diff --git a/keyboards/lets_split/rev1/config.h b/keyboards/lets_split/rev1/config.h deleted file mode 100644 index 0b8941e7760..00000000000 --- a/keyboards/lets_split/rev1/config.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/lets_split/rev1/keyboard.json b/keyboards/lets_split/rev1/keyboard.json index ec85e70519f..49bbcbabc97 100644 --- a/keyboards/lets_split/rev1/keyboard.json +++ b/keyboards/lets_split/rev1/keyboard.json @@ -27,6 +27,12 @@ "extrakey": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT": "LAYOUT_ortho_4x12" }, diff --git a/keyboards/lets_split/rev2/config.h b/keyboards/lets_split/rev2/config.h deleted file mode 100644 index 0b8941e7760..00000000000 --- a/keyboards/lets_split/rev2/config.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/lets_split/rev2/keyboard.json b/keyboards/lets_split/rev2/keyboard.json index 81ad2606b8d..13da4f9624a 100644 --- a/keyboards/lets_split/rev2/keyboard.json +++ b/keyboards/lets_split/rev2/keyboard.json @@ -27,6 +27,12 @@ "extrakey": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT": "LAYOUT_ortho_4x12" }, diff --git a/keyboards/lfkeyboards/lfk65_hs/config.h b/keyboards/lfkeyboards/lfk65_hs/config.h deleted file mode 100644 index 7bc78f68d69..00000000000 --- a/keyboards/lfkeyboards/lfk65_hs/config.h +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/lfkeyboards/lfk65_hs/keyboard.json b/keyboards/lfkeyboards/lfk65_hs/keyboard.json index 0034fced4aa..fac1e5969df 100644 --- a/keyboards/lfkeyboards/lfk65_hs/keyboard.json +++ b/keyboards/lfkeyboards/lfk65_hs/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x6064", "device_version": "0.0.1" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F4", "B7", "D5", "D3", "D2", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["B0", "B3", "B2", "B1", "F5"] diff --git a/keyboards/lfkeyboards/lfk78/config.h b/keyboards/lfkeyboards/lfk78/config.h index 99c39042138..2118c4d2029 100644 --- a/keyboards/lfkeyboards/lfk78/config.h +++ b/keyboards/lfkeyboards/lfk78/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define AUDIO_PIN C6 #define AUDIO_VOICES -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/lfkeyboards/lfk78/revb/keyboard.json b/keyboards/lfkeyboards/lfk78/revb/keyboard.json index 7a4d881692b..a4c0d83902a 100644 --- a/keyboards/lfkeyboards/lfk78/revb/keyboard.json +++ b/keyboards/lfkeyboards/lfk78/revb/keyboard.json @@ -21,6 +21,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/lfkeyboards/lfk78/revc/keyboard.json b/keyboards/lfkeyboards/lfk78/revc/keyboard.json index e1788b68565..56ab9b49bee 100644 --- a/keyboards/lfkeyboards/lfk78/revc/keyboard.json +++ b/keyboards/lfkeyboards/lfk78/revc/keyboard.json @@ -21,6 +21,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/lfkeyboards/lfk78/revj/keyboard.json b/keyboards/lfkeyboards/lfk78/revj/keyboard.json index 725425f0124..df8ac8d0f61 100644 --- a/keyboards/lfkeyboards/lfk78/revj/keyboard.json +++ b/keyboards/lfkeyboards/lfk78/revj/keyboard.json @@ -22,6 +22,12 @@ "nkro": true, "audio": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/lfkeyboards/lfk87/config.h b/keyboards/lfkeyboards/lfk87/config.h index 84c2fd11dcb..469d237b861 100644 --- a/keyboards/lfkeyboards/lfk87/config.h +++ b/keyboards/lfkeyboards/lfk87/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define AUDIO_VOICES #define AUDIO_PIN C6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/lfkeyboards/lfk87/reva/keyboard.json b/keyboards/lfkeyboards/lfk87/reva/keyboard.json index 95b5ff81b7e..c0f3407308d 100644 --- a/keyboards/lfkeyboards/lfk87/reva/keyboard.json +++ b/keyboards/lfkeyboards/lfk87/reva/keyboard.json @@ -1,6 +1,12 @@ { "processor": "at90usb1286", "bootloader": "atmel-dfu", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "E6", "E7", "F0", "F1", "F2", "F3", "C0", "C1", "C2"], "rows": ["D2", "D3", "D4", "D5", "D6", "D7"] diff --git a/keyboards/lfkeyboards/lfk87/revc/keyboard.json b/keyboards/lfkeyboards/lfk87/revc/keyboard.json index cf8c74397f3..579f153b85b 100644 --- a/keyboards/lfkeyboards/lfk87/revc/keyboard.json +++ b/keyboards/lfkeyboards/lfk87/revc/keyboard.json @@ -1,6 +1,12 @@ { "processor": "at90usb646", "bootloader": "atmel-dfu", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C1", "C0", "E1", "E0", "C2", "C3", "C4"], "rows": ["F2", "D7", "D6", "D5", "D4", "D3", "F3"] diff --git a/keyboards/lfkeyboards/lfkpad/config.h b/keyboards/lfkeyboards/lfkpad/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/lfkeyboards/lfkpad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/lfkeyboards/lfkpad/keyboard.json b/keyboards/lfkeyboards/lfkpad/keyboard.json index 50e02cb7ee4..6de415b8e01 100644 --- a/keyboards/lfkeyboards/lfkpad/keyboard.json +++ b/keyboards/lfkeyboards/lfkpad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F0", "D4", "D6"], "rows": ["D5", "F4", "F6", "F7", "C7", "C6"] diff --git a/keyboards/lfkeyboards/mini1800/config.h b/keyboards/lfkeyboards/mini1800/config.h index 84c2fd11dcb..469d237b861 100644 --- a/keyboards/lfkeyboards/mini1800/config.h +++ b/keyboards/lfkeyboards/mini1800/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define AUDIO_VOICES #define AUDIO_PIN C6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/lfkeyboards/mini1800/reva/keyboard.json b/keyboards/lfkeyboards/mini1800/reva/keyboard.json index 8d93a054e4d..8745b077e98 100644 --- a/keyboards/lfkeyboards/mini1800/reva/keyboard.json +++ b/keyboards/lfkeyboards/mini1800/reva/keyboard.json @@ -8,5 +8,11 @@ "nkro": true, "audio": true, "watchdog": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/lfkeyboards/mini1800/revc/keyboard.json b/keyboards/lfkeyboards/mini1800/revc/keyboard.json index 408181d3280..592998cc0e7 100644 --- a/keyboards/lfkeyboards/mini1800/revc/keyboard.json +++ b/keyboards/lfkeyboards/mini1800/revc/keyboard.json @@ -8,5 +8,11 @@ "nkro": true, "audio": true, "watchdog": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } } } diff --git a/keyboards/lfkeyboards/smk65/revb/config.h b/keyboards/lfkeyboards/smk65/revb/config.h index 38b05291788..c8af878df71 100644 --- a/keyboards/lfkeyboards/smk65/revb/config.h +++ b/keyboards/lfkeyboards/smk65/revb/config.h @@ -30,11 +30,6 @@ along with this program. If not, see . #define AUDIO_VOICES #define AUDIO_PIN C6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/lfkeyboards/smk65/revb/keyboard.json b/keyboards/lfkeyboards/smk65/revb/keyboard.json index 148465d27db..f7b4078b8a6 100644 --- a/keyboards/lfkeyboards/smk65/revb/keyboard.json +++ b/keyboards/lfkeyboards/smk65/revb/keyboard.json @@ -4,6 +4,12 @@ }, "processor": "at90usb646", "bootloader": "atmel-dfu", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT": "LAYOUT_65_ansi" }, diff --git a/keyboards/lfkeyboards/smk65/revf/config.h b/keyboards/lfkeyboards/smk65/revf/config.h index 9e32ac9d3fe..74296c7286e 100644 --- a/keyboards/lfkeyboards/smk65/revf/config.h +++ b/keyboards/lfkeyboards/smk65/revf/config.h @@ -31,11 +31,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/lfkeyboards/smk65/revf/keyboard.json b/keyboards/lfkeyboards/smk65/revf/keyboard.json index 63e9d0abc75..4e8a44d3bcb 100644 --- a/keyboards/lfkeyboards/smk65/revf/keyboard.json +++ b/keyboards/lfkeyboards/smk65/revf/keyboard.json @@ -4,6 +4,12 @@ }, "processor": "atmega32u4", "bootloader": "halfkay", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_65_ansi": { "layout": [ diff --git a/keyboards/linworks/fave60/config.h b/keyboards/linworks/fave60/config.h deleted file mode 100644 index 55402104ddb..00000000000 --- a/keyboards/linworks/fave60/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2020 Moritz Plattner - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/linworks/fave60/keyboard.json b/keyboards/linworks/fave60/keyboard.json index c801c594cae..5b9a14b43fa 100644 --- a/keyboards/linworks/fave60/keyboard.json +++ b/keyboards/linworks/fave60/keyboard.json @@ -33,6 +33,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D4", "B5", "B4", "B6", "C6", "C7", "F4", "F0", "E6", "D1", "D2", "D3", "D5", "B0"], "rows": ["F6", "F7", "D7", "F1", "D0"] diff --git a/keyboards/lizard_trick/tenkey_plusplus/config.h b/keyboards/lizard_trick/tenkey_plusplus/config.h deleted file mode 100644 index 960e9ea0198..00000000000 --- a/keyboards/lizard_trick/tenkey_plusplus/config.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2020 Jonathon Carstens jonathon@lizardtrick.com - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/lizard_trick/tenkey_plusplus/keyboard.json b/keyboards/lizard_trick/tenkey_plusplus/keyboard.json index 9371ef22d66..0877d99885c 100644 --- a/keyboards/lizard_trick/tenkey_plusplus/keyboard.json +++ b/keyboards/lizard_trick/tenkey_plusplus/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "D3", "D2", "F7"], "rows": ["B7", "D4", "B5", "B6", "C6", "C7"] diff --git a/keyboards/lm_keyboard/lm60n/config.h b/keyboards/lm_keyboard/lm60n/config.h deleted file mode 100644 index aea945a035d..00000000000 --- a/keyboards/lm_keyboard/lm60n/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 gkeyboard - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/lm_keyboard/lm60n/keyboard.json b/keyboards/lm_keyboard/lm60n/keyboard.json index fe7b1b946e8..f12bdec0316 100644 --- a/keyboards/lm_keyboard/lm60n/keyboard.json +++ b/keyboards/lm_keyboard/lm60n/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "C6", "B6", "B5", "F4", "F0", "E6"], "rows": ["F1", "F5", "F6", "F7", "B3", "B2", "B1"] diff --git a/keyboards/lucid/alexa/config.h b/keyboards/lucid/alexa/config.h deleted file mode 100644 index 2b4eb9c9106..00000000000 --- a/keyboards/lucid/alexa/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2021 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/lucid/alexa/keyboard.json b/keyboards/lucid/alexa/keyboard.json index 4c2bd739ca5..3acedb42001 100644 --- a/keyboards/lucid/alexa/keyboard.json +++ b/keyboards/lucid/alexa/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["65_ansi_blocker", "65_ansi_blocker_split_bs"], "layouts": { "LAYOUT_65_ansi_blocker_split_bs": { diff --git a/keyboards/lucid/alexa_solder/config.h b/keyboards/lucid/alexa_solder/config.h deleted file mode 100644 index 80a707a180b..00000000000 --- a/keyboards/lucid/alexa_solder/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2022 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/lucid/alexa_solder/keyboard.json b/keyboards/lucid/alexa_solder/keyboard.json index 881fed5deee..8460462a33d 100644 --- a/keyboards/lucid/alexa_solder/keyboard.json +++ b/keyboards/lucid/alexa_solder/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "65_ansi_blocker", "65_ansi_blocker_split_bs", diff --git a/keyboards/lucid/kbd8x_hs/config.h b/keyboards/lucid/kbd8x_hs/config.h deleted file mode 100644 index bedbdb7de73..00000000000 --- a/keyboards/lucid/kbd8x_hs/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/lucid/kbd8x_hs/keyboard.json b/keyboards/lucid/kbd8x_hs/keyboard.json index a542cde0239..78d25642583 100644 --- a/keyboards/lucid/kbd8x_hs/keyboard.json +++ b/keyboards/lucid/kbd8x_hs/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_tkl_ansi": { "layout": [ diff --git a/keyboards/lucid/phantom_hs/config.h b/keyboards/lucid/phantom_hs/config.h deleted file mode 100644 index bedbdb7de73..00000000000 --- a/keyboards/lucid/phantom_hs/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/lucid/phantom_hs/keyboard.json b/keyboards/lucid/phantom_hs/keyboard.json index ce331051670..fbaa45af89c 100644 --- a/keyboards/lucid/phantom_hs/keyboard.json +++ b/keyboards/lucid/phantom_hs/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["65_ansi_blocker"], "layouts": { "LAYOUT_65_ansi_blocker": { diff --git a/keyboards/lucid/phantom_solder/config.h b/keyboards/lucid/phantom_solder/config.h deleted file mode 100644 index bedbdb7de73..00000000000 --- a/keyboards/lucid/phantom_solder/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/lucid/phantom_solder/keyboard.json b/keyboards/lucid/phantom_solder/keyboard.json index 53ba8eaeaa8..bfa3e08df60 100644 --- a/keyboards/lucid/phantom_solder/keyboard.json +++ b/keyboards/lucid/phantom_solder/keyboard.json @@ -25,6 +25,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "65_ansi_blocker", "65_ansi_blocker_split_bs", diff --git a/keyboards/lucid/scarlet/config.h b/keyboards/lucid/scarlet/config.h deleted file mode 100644 index bedbdb7de73..00000000000 --- a/keyboards/lucid/scarlet/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/lucid/scarlet/keyboard.json b/keyboards/lucid/scarlet/keyboard.json index bcd56281c0d..c2cd914b06b 100644 --- a/keyboards/lucid/scarlet/keyboard.json +++ b/keyboards/lucid/scarlet/keyboard.json @@ -22,6 +22,12 @@ "command": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_tkl_all": { "layout": [ diff --git a/keyboards/lyso1/lck75/config.h b/keyboards/lyso1/lck75/config.h index b7ade40289a..9968249aa47 100644 --- a/keyboards/lyso1/lck75/config.h +++ b/keyboards/lyso1/lck75/config.h @@ -32,13 +32,6 @@ along with this program. If not, see . /* #define NO_AUTO_SHIFT_SPECIAL */ /* #define NO_AUTO_SHIFT_NUMERIC */ -#ifdef LOCKING_SUPPORT_ENABLE -# undef LOCKING_SUPPORT_ENABLE -#endif -#ifdef LOCKING_RESYNC_ENABLE -# undef LOCKING_RESYNC_ENABLE -#endif - #define PERMISSIVE_HOLD #define NO_ACTION_ONESHOT diff --git a/keyboards/lyso1/lck75/keyboard.json b/keyboards/lyso1/lck75/keyboard.json index a161172d490..714248bad33 100644 --- a/keyboards/lyso1/lck75/keyboard.json +++ b/keyboards/lyso1/lck75/keyboard.json @@ -29,6 +29,12 @@ "encoder": true, "wpm": true }, + "qmk": { + "locking": { + "enabled": false, + "resync": false + } + }, "layouts": { "LAYOUT_default": { "layout": [ diff --git a/keyboards/lyso1/lefishe/config.h b/keyboards/lyso1/lefishe/config.h deleted file mode 100644 index 5f12ded8443..00000000000 --- a/keyboards/lyso1/lefishe/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/*Copyright 2019 Lyso1 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/lyso1/lefishe/keyboard.json b/keyboards/lyso1/lefishe/keyboard.json index d2036895658..6104f47e470 100644 --- a/keyboards/lyso1/lefishe/keyboard.json +++ b/keyboards/lyso1/lefishe/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "D5", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D3", "D2", "D1", "D0", "B3", "B2", "B1"], "rows": ["B7", "F7", "F6", "F5", "F4"] From 16d2db5048acedfc9dd5f8e85ca19e50f139ba13 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 22 May 2024 11:06:09 -0700 Subject: [PATCH 033/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: I-J (#23767) Affects: - `ianklug/grooveboard` - `ibm/model_m/modelh` - `ibm/model_m_122/ibm122m` - `ibnuda/gurindam` - `idb/idb_60` - `idobao/id75/v1` - `idobao/id75/v2` - `idobao/id96` - `idobao/montex/v1` - `illuminati/is0` - `illusion/rosa` - `ilumkb/primus75` - `ilumkb/volcano660` - `inland/kb83` - `input_club/ergodox_infinity` - `irene` - `iriskeyboards` - `iron180` - `jacky_studio/bear_65/rev1` - `jacky_studio/bear_65/rev2` - `jacky_studio/s7_elephant/rev1` - `jacky_studio/s7_elephant/rev2` - `jadookb/jkb65` - `jae/j01` - `jagdpietr/drakon` - `jd40` - `jd45` - `jels/boaty` - `jels/jels60/v1` - `jels/jels60/v2` - `jels/jels88` - `jolofsor/denial75` - `jorne/rev1` - `joshajohnson/hub16` - `joshajohnson/hub20` - `jukaie/jk01` --- keyboards/ianklug/grooveboard/config.h | 39 ------------------- keyboards/ianklug/grooveboard/keyboard.json | 6 +++ keyboards/ibm/model_m/modelh/config.h | 6 --- keyboards/ibm/model_m/modelh/keyboard.json | 6 +++ keyboards/ibm/model_m_122/ibm122m/config.h | 5 --- .../ibm/model_m_122/ibm122m/keyboard.json | 6 +++ keyboards/ibnuda/gurindam/config.h | 39 ------------------- keyboards/ibnuda/gurindam/keyboard.json | 6 +++ keyboards/idb/idb_60/config.h | 39 ------------------- keyboards/idb/idb_60/keyboard.json | 6 +++ keyboards/idobao/id75/v1/config.h | 39 ------------------- keyboards/idobao/id75/v1/keyboard.json | 6 +++ keyboards/idobao/id75/v2/config.h | 38 ------------------ keyboards/idobao/id75/v2/keyboard.json | 6 +++ keyboards/idobao/id96/config.h | 25 ------------ keyboards/idobao/id96/keyboard.json | 6 +++ keyboards/idobao/montex/v1/config.h | 23 ----------- keyboards/idobao/montex/v1/keyboard.json | 6 +++ keyboards/illuminati/is0/config.h | 39 ------------------- keyboards/illuminati/is0/keyboard.json | 6 +++ keyboards/illusion/rosa/config.h | 23 ----------- keyboards/illusion/rosa/keyboard.json | 6 +++ keyboards/ilumkb/primus75/config.h | 22 ----------- keyboards/ilumkb/primus75/keyboard.json | 6 +++ keyboards/ilumkb/volcano660/config.h | 21 ---------- keyboards/ilumkb/volcano660/keyboard.json | 6 +++ keyboards/inland/kb83/config.h | 5 --- keyboards/inland/kb83/keyboard.json | 6 ++- .../input_club/ergodox_infinity/config.h | 5 --- .../input_club/ergodox_infinity/keyboard.json | 6 +++ keyboards/irene/config.h | 39 ------------------- keyboards/irene/keyboard.json | 6 +++ keyboards/iriskeyboards/config.h | 39 ------------------- keyboards/iriskeyboards/keyboard.json | 6 +++ keyboards/iron180/config.h | 5 --- keyboards/iron180/keyboard.json | 6 +++ keyboards/jacky_studio/bear_65/config.h | 10 ----- .../jacky_studio/bear_65/rev1/keyboard.json | 6 +++ .../jacky_studio/bear_65/rev2/keyboard.json | 6 +++ .../jacky_studio/s7_elephant/rev1/config.h | 23 ----------- .../s7_elephant/rev1/keyboard.json | 6 +++ .../jacky_studio/s7_elephant/rev2/config.h | 23 ----------- .../s7_elephant/rev2/keyboard.json | 6 +++ keyboards/jadookb/jkb65/config.h | 3 -- keyboards/jadookb/jkb65/info.json | 6 +++ keyboards/jae/j01/config.h | 39 ------------------- keyboards/jae/j01/keyboard.json | 6 +++ keyboards/jagdpietr/drakon/config.h | 39 ------------------- keyboards/jagdpietr/drakon/keyboard.json | 6 +++ keyboards/jd40/config.h | 23 ----------- keyboards/jd40/keyboard.json | 6 +++ keyboards/jd45/config.h | 39 ------------------- keyboards/jd45/keyboard.json | 6 +++ keyboards/jels/boaty/config.h | 23 ----------- keyboards/jels/boaty/keyboard.json | 6 +++ keyboards/jels/jels60/v1/config.h | 23 ----------- keyboards/jels/jels60/v1/keyboard.json | 6 +++ keyboards/jels/jels60/v2/config.h | 22 ----------- keyboards/jels/jels60/v2/keyboard.json | 6 +++ keyboards/jels/jels88/config.h | 22 ----------- keyboards/jels/jels88/keyboard.json | 6 +++ keyboards/jolofsor/denial75/config.h | 7 ---- keyboards/jolofsor/denial75/keyboard.json | 6 +++ keyboards/jorne/rev1/config.h | 9 ----- keyboards/jorne/rev1/keyboard.json | 6 +++ keyboards/joshajohnson/hub16/config.h | 5 --- keyboards/joshajohnson/hub16/keyboard.json | 6 +++ keyboards/joshajohnson/hub20/config.h | 24 ------------ keyboards/joshajohnson/hub20/keyboard.json | 6 ++- keyboards/jukaie/jk01/config.h | 5 --- keyboards/jukaie/jk01/keyboard.json | 6 ++- 71 files changed, 213 insertions(+), 793 deletions(-) delete mode 100644 keyboards/ianklug/grooveboard/config.h delete mode 100644 keyboards/ibnuda/gurindam/config.h delete mode 100644 keyboards/idb/idb_60/config.h delete mode 100644 keyboards/idobao/id75/v1/config.h delete mode 100644 keyboards/idobao/id75/v2/config.h delete mode 100644 keyboards/idobao/id96/config.h delete mode 100644 keyboards/idobao/montex/v1/config.h delete mode 100644 keyboards/illuminati/is0/config.h delete mode 100644 keyboards/illusion/rosa/config.h delete mode 100644 keyboards/ilumkb/primus75/config.h delete mode 100644 keyboards/ilumkb/volcano660/config.h delete mode 100644 keyboards/irene/config.h delete mode 100644 keyboards/iriskeyboards/config.h delete mode 100644 keyboards/jacky_studio/bear_65/config.h delete mode 100644 keyboards/jacky_studio/s7_elephant/rev1/config.h delete mode 100644 keyboards/jacky_studio/s7_elephant/rev2/config.h delete mode 100644 keyboards/jae/j01/config.h delete mode 100644 keyboards/jagdpietr/drakon/config.h delete mode 100644 keyboards/jd40/config.h delete mode 100644 keyboards/jd45/config.h delete mode 100644 keyboards/jels/boaty/config.h delete mode 100644 keyboards/jels/jels60/v1/config.h delete mode 100644 keyboards/jels/jels60/v2/config.h delete mode 100644 keyboards/jels/jels88/config.h delete mode 100644 keyboards/jorne/rev1/config.h delete mode 100644 keyboards/joshajohnson/hub20/config.h diff --git a/keyboards/ianklug/grooveboard/config.h b/keyboards/ianklug/grooveboard/config.h deleted file mode 100644 index 12ff57c16be..00000000000 --- a/keyboards/ianklug/grooveboard/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 ianklug - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ianklug/grooveboard/keyboard.json b/keyboards/ianklug/grooveboard/keyboard.json index 81dd715867d..ce7ac8cc227 100644 --- a/keyboards/ianklug/grooveboard/keyboard.json +++ b/keyboards/ianklug/grooveboard/keyboard.json @@ -18,6 +18,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["F7", "F6", "D1", "D2"] diff --git a/keyboards/ibm/model_m/modelh/config.h b/keyboards/ibm/model_m/modelh/config.h index ac95ccfe662..eff37a4b3b3 100644 --- a/keyboards/ibm/model_m/modelh/config.h +++ b/keyboards/ibm/model_m/modelh/config.h @@ -22,12 +22,6 @@ along with this program. If not, see . #define MODELH_STATUS_LED C13 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/ibm/model_m/modelh/keyboard.json b/keyboards/ibm/model_m/modelh/keyboard.json index 897d9be2f44..513d5d9bb6b 100644 --- a/keyboards/ibm/model_m/modelh/keyboard.json +++ b/keyboards/ibm/model_m/modelh/keyboard.json @@ -12,6 +12,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "B8", "num_lock": "B7", diff --git a/keyboards/ibm/model_m_122/ibm122m/config.h b/keyboards/ibm/model_m_122/ibm122m/config.h index af3de54eb2b..32227836991 100644 --- a/keyboards/ibm/model_m_122/ibm122m/config.h +++ b/keyboards/ibm/model_m_122/ibm122m/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define AUDIO_PIN_ALT B6 #define AUDIO_PIN C6 diff --git a/keyboards/ibm/model_m_122/ibm122m/keyboard.json b/keyboards/ibm/model_m_122/ibm122m/keyboard.json index 3c43d17d92d..a9e10ffd6a5 100644 --- a/keyboards/ibm/model_m_122/ibm122m/keyboard.json +++ b/keyboards/ibm/model_m_122/ibm122m/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B7", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "E0", "E1", "C0", "C1", "C2", "C3", "C4", "C5", "C7", "F1"], "rows": ["F0", "B5", "B4", "B3", "B2", "B1", "B0", "E7"] diff --git a/keyboards/ibnuda/gurindam/config.h b/keyboards/ibnuda/gurindam/config.h deleted file mode 100644 index ae358106eb0..00000000000 --- a/keyboards/ibnuda/gurindam/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Ibnu D. Aji - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ibnuda/gurindam/keyboard.json b/keyboards/ibnuda/gurindam/keyboard.json index e1253b7d7a4..1cf74068b6a 100644 --- a/keyboards/ibnuda/gurindam/keyboard.json +++ b/keyboards/ibnuda/gurindam/keyboard.json @@ -34,6 +34,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F4", "F7", "B1", "B3", "B2", "B6"], "rows": ["B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2"] diff --git a/keyboards/idb/idb_60/config.h b/keyboards/idb/idb_60/config.h deleted file mode 100644 index baf09cebb5e..00000000000 --- a/keyboards/idb/idb_60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/idb/idb_60/keyboard.json b/keyboards/idb/idb_60/keyboard.json index df88de1dff6..80bbd17a5ae 100644 --- a/keyboards/idb/idb_60/keyboard.json +++ b/keyboards/idb/idb_60/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B3", "B4", "C6", "B6", "B7", "C7", "B5"], "rows": ["C2", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "B0", "B1"] diff --git a/keyboards/idobao/id75/v1/config.h b/keyboards/idobao/id75/v1/config.h deleted file mode 100644 index d876570c808..00000000000 --- a/keyboards/idobao/id75/v1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/idobao/id75/v1/keyboard.json b/keyboards/idobao/id75/v1/keyboard.json index 99b7f6e2b31..f52938d0d8b 100644 --- a/keyboards/idobao/id75/v1/keyboard.json +++ b/keyboards/idobao/id75/v1/keyboard.json @@ -21,6 +21,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F4", "F1", "E6", "D5", "D3", "D2", "D1", "D0", "D4", "D6", "D7", "B4", "B5"], "rows": ["B0", "B3", "C7", "B6", "C6"] diff --git a/keyboards/idobao/id75/v2/config.h b/keyboards/idobao/id75/v2/config.h deleted file mode 100644 index 51d84749a5d..00000000000 --- a/keyboards/idobao/id75/v2/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2022 peepeetee - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/idobao/id75/v2/keyboard.json b/keyboards/idobao/id75/v2/keyboard.json index b33e7b69074..09e24dbd47e 100644 --- a/keyboards/idobao/id75/v2/keyboard.json +++ b/keyboards/idobao/id75/v2/keyboard.json @@ -59,6 +59,12 @@ "nkro": false, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F4", "F1", "E6", "D5", "D3", "D2", "D1", "D0", "D4", "D6", "D7", "B4", "B5"], "rows": ["B0", "B3", "C7", "B6", "C6"] diff --git a/keyboards/idobao/id96/config.h b/keyboards/idobao/id96/config.h deleted file mode 100644 index 23990f6ef9e..00000000000 --- a/keyboards/idobao/id96/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* - * This file is part of the QMK Firmware distribution (https://github.com/qmk/qmk_firmware). - * Copyright 2018-2021 "kaylanm" [Melody96] - * Vino Rodrigues [ID96] - * - * 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, version 3. - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/idobao/id96/keyboard.json b/keyboards/idobao/id96/keyboard.json index 3213cd74a9f..c06dfdd4542 100644 --- a/keyboards/idobao/id96/keyboard.json +++ b/keyboards/idobao/id96/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4"], "rows": ["B7", "B3", "B2", "B1", "B0", "E6", "F0", "F1", "F4", "F5", "F6", "F7"] diff --git a/keyboards/idobao/montex/v1/config.h b/keyboards/idobao/montex/v1/config.h deleted file mode 100644 index 6cbdda8572d..00000000000 --- a/keyboards/idobao/montex/v1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 NachoxMacho -* -* 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 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/idobao/montex/v1/keyboard.json b/keyboards/idobao/montex/v1/keyboard.json index d439a2d09ca..2d9f503832f 100644 --- a/keyboards/idobao/montex/v1/keyboard.json +++ b/keyboards/idobao/montex/v1/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "D3", "D2", "D1", "D0"], "rows": ["D4", "D6", "D7", "B4", "B5", "C6"] diff --git a/keyboards/illuminati/is0/config.h b/keyboards/illuminati/is0/config.h deleted file mode 100644 index 50001e978cc..00000000000 --- a/keyboards/illuminati/is0/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Ryota Goto - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/illuminati/is0/keyboard.json b/keyboards/illuminati/is0/keyboard.json index d03af345073..ee90646b19a 100644 --- a/keyboards/illuminati/is0/keyboard.json +++ b/keyboards/illuminati/is0/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0"], "rows": ["D2"] diff --git a/keyboards/illusion/rosa/config.h b/keyboards/illusion/rosa/config.h deleted file mode 100644 index 7b9007c1f65..00000000000 --- a/keyboards/illusion/rosa/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Brandon Lee - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/illusion/rosa/keyboard.json b/keyboards/illusion/rosa/keyboard.json index c5e9c88a770..7fef56841d8 100644 --- a/keyboards/illusion/rosa/keyboard.json +++ b/keyboards/illusion/rosa/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D2", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["D1", "D4", "F0", "B0", "B1"] diff --git a/keyboards/ilumkb/primus75/config.h b/keyboards/ilumkb/primus75/config.h deleted file mode 100644 index ee087cc051a..00000000000 --- a/keyboards/ilumkb/primus75/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 dztech - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ilumkb/primus75/keyboard.json b/keyboards/ilumkb/primus75/keyboard.json index f00c146740d..15831ffda68 100644 --- a/keyboards/ilumkb/primus75/keyboard.json +++ b/keyboards/ilumkb/primus75/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "F5", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4", "F6"], "rows": ["D0", "D1", "D2", "D3", "D5", "B7"] diff --git a/keyboards/ilumkb/volcano660/config.h b/keyboards/ilumkb/volcano660/config.h deleted file mode 100644 index fa9d81cec23..00000000000 --- a/keyboards/ilumkb/volcano660/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 dztech - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ilumkb/volcano660/keyboard.json b/keyboards/ilumkb/volcano660/keyboard.json index 7412a249f8f..297b28a5f92 100644 --- a/keyboards/ilumkb/volcano660/keyboard.json +++ b/keyboards/ilumkb/volcano660/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "D3", "D5", "D4", "D6", "D7", "B4", "B5"], "rows": ["B0", "B1", "B2", "B3", "B6"] diff --git a/keyboards/inland/kb83/config.h b/keyboards/inland/kb83/config.h index c003d218c28..0ddf8582bec 100644 --- a/keyboards/inland/kb83/config.h +++ b/keyboards/inland/kb83/config.h @@ -18,11 +18,6 @@ #define RGB_TRIGGER_ON_KEYDOWN -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* SPI Config for spi flash*/ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN B3 diff --git a/keyboards/inland/kb83/keyboard.json b/keyboards/inland/kb83/keyboard.json index 31ca8f1bda9..4c82a557ee7 100644 --- a/keyboards/inland/kb83/keyboard.json +++ b/keyboards/inland/kb83/keyboard.json @@ -64,7 +64,11 @@ ] }, "qmk": { - "tap_keycode_delay": 15 + "tap_keycode_delay": 15, + "locking": { + "enabled": true, + "resync": true + } }, "layouts": { "LAYOUT": { diff --git a/keyboards/input_club/ergodox_infinity/config.h b/keyboards/input_club/ergodox_infinity/config.h index bf9ebc980f9..28b7d5d7776 100644 --- a/keyboards/input_club/ergodox_infinity/config.h +++ b/keyboards/input_club/ergodox_infinity/config.h @@ -23,11 +23,6 @@ along with this program. If not, see . #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* key combination for command */ #define IS_COMMAND() ( \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ diff --git a/keyboards/input_club/ergodox_infinity/keyboard.json b/keyboards/input_club/ergodox_infinity/keyboard.json index 6f47d72685f..fd89806b000 100644 --- a/keyboards/input_club/ergodox_infinity/keyboard.json +++ b/keyboards/input_club/ergodox_infinity/keyboard.json @@ -55,6 +55,12 @@ "sleep_led": true, "st7565": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "board": "IC_TEENSY_3_1", "tapping": { "toggle": 1 diff --git a/keyboards/irene/config.h b/keyboards/irene/config.h deleted file mode 100644 index 656deab55a6..00000000000 --- a/keyboards/irene/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Ramon Imbao - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/irene/keyboard.json b/keyboards/irene/keyboard.json index fb8b1818c27..3280c34c036 100644 --- a/keyboards/irene/keyboard.json +++ b/keyboards/irene/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "C6", "B6", "B5", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["B0", "F0", "C7", "B4", "B7"] diff --git a/keyboards/iriskeyboards/config.h b/keyboards/iriskeyboards/config.h deleted file mode 100644 index d813c012ef3..00000000000 --- a/keyboards/iriskeyboards/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 SonOfAres - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/iriskeyboards/keyboard.json b/keyboards/iriskeyboards/keyboard.json index b0926531b65..4a821b2649a 100644 --- a/keyboards/iriskeyboards/keyboard.json +++ b/keyboards/iriskeyboards/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/iron180/config.h b/keyboards/iron180/config.h index f2d3a3c36ff..b7a6f9baf9a 100644 --- a/keyboards/iron180/config.h +++ b/keyboards/iron180/config.h @@ -21,10 +21,5 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // Turn backlight on-off according to capslock (off by default) #define CAPSLOCK_BACKLIGHT diff --git a/keyboards/iron180/keyboard.json b/keyboards/iron180/keyboard.json index 3952656d28f..8daae1b1eb9 100644 --- a/keyboards/iron180/keyboard.json +++ b/keyboards/iron180/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "B6", "B5", "B4", "B3", "A10", "A9", "A8", "B15", "B14", "B13", "B12", "B11", "B2", "A4", "B1", "A3"], "rows": ["B9", "B8", "A15", "B0", "A7", "A5"] diff --git a/keyboards/jacky_studio/bear_65/config.h b/keyboards/jacky_studio/bear_65/config.h deleted file mode 100644 index 805f9ad0542..00000000000 --- a/keyboards/jacky_studio/bear_65/config.h +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2017-2021 QMK -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/jacky_studio/bear_65/rev1/keyboard.json b/keyboards/jacky_studio/bear_65/rev1/keyboard.json index 2c79dc41f52..df7be71869a 100644 --- a/keyboards/jacky_studio/bear_65/rev1/keyboard.json +++ b/keyboards/jacky_studio/bear_65/rev1/keyboard.json @@ -12,6 +12,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/jacky_studio/bear_65/rev2/keyboard.json b/keyboards/jacky_studio/bear_65/rev2/keyboard.json index ec2ff1b7c78..0fa471d44a4 100644 --- a/keyboards/jacky_studio/bear_65/rev2/keyboard.json +++ b/keyboards/jacky_studio/bear_65/rev2/keyboard.json @@ -12,6 +12,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/jacky_studio/s7_elephant/rev1/config.h b/keyboards/jacky_studio/s7_elephant/rev1/config.h deleted file mode 100644 index b9eeb3bf152..00000000000 --- a/keyboards/jacky_studio/s7_elephant/rev1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 MudkipMao - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/jacky_studio/s7_elephant/rev1/keyboard.json b/keyboards/jacky_studio/s7_elephant/rev1/keyboard.json index fc87e986ba7..cbbb27ca04c 100644 --- a/keyboards/jacky_studio/s7_elephant/rev1/keyboard.json +++ b/keyboards/jacky_studio/s7_elephant/rev1/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "C6", "C7", "F4", "F5", "F6", "F7", "F1"], "rows": ["B0", "B1", "B2", "B3", "B4"] diff --git a/keyboards/jacky_studio/s7_elephant/rev2/config.h b/keyboards/jacky_studio/s7_elephant/rev2/config.h deleted file mode 100644 index b9eeb3bf152..00000000000 --- a/keyboards/jacky_studio/s7_elephant/rev2/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 MudkipMao - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/jacky_studio/s7_elephant/rev2/keyboard.json b/keyboards/jacky_studio/s7_elephant/rev2/keyboard.json index 1a32d95c778..23112f5b339 100644 --- a/keyboards/jacky_studio/s7_elephant/rev2/keyboard.json +++ b/keyboards/jacky_studio/s7_elephant/rev2/keyboard.json @@ -21,6 +21,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "F7", "F6", "F5", "F4", "F1", "F0", "E6"], "rows": ["B0", "B1", "B2", "B3", "B7"] diff --git a/keyboards/jadookb/jkb65/config.h b/keyboards/jadookb/jkb65/config.h index 4d138814be6..a0793c58611 100644 --- a/keyboards/jadookb/jkb65/config.h +++ b/keyboards/jadookb/jkb65/config.h @@ -17,6 +17,3 @@ #pragma once #define RGB_MATRIX_LED_COUNT 67 - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/jadookb/jkb65/info.json b/keyboards/jadookb/jkb65/info.json index 99460a30024..054b1c5452c 100644 --- a/keyboards/jadookb/jkb65/info.json +++ b/keyboards/jadookb/jkb65/info.json @@ -14,6 +14,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "usb": { "vid": "0x4A4B", "pid": "0xEF6A" diff --git a/keyboards/jae/j01/config.h b/keyboards/jae/j01/config.h deleted file mode 100644 index 6b5c1ab3f90..00000000000 --- a/keyboards/jae/j01/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Evy Dekkers - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/jae/j01/keyboard.json b/keyboards/jae/j01/keyboard.json index 4bf7171dd5f..56a5062c94c 100644 --- a/keyboards/jae/j01/keyboard.json +++ b/keyboards/jae/j01/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1"], "rows": ["B2", "B1", "B3", "B0", "D0"] diff --git a/keyboards/jagdpietr/drakon/config.h b/keyboards/jagdpietr/drakon/config.h deleted file mode 100644 index 96c32b09f28..00000000000 --- a/keyboards/jagdpietr/drakon/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 jagdpietr - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/jagdpietr/drakon/keyboard.json b/keyboards/jagdpietr/drakon/keyboard.json index bbb945aadf2..2d2b68a41ac 100644 --- a/keyboards/jagdpietr/drakon/keyboard.json +++ b/keyboards/jagdpietr/drakon/keyboard.json @@ -22,6 +22,12 @@ "oled": true, "wpm": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "C6", "B2", "B3", "B7", "D3", "D5", "D4", "D6", "D7", "B4"], "rows": ["C7", "B5", "B6", "B0", "B1", "F1"] diff --git a/keyboards/jd40/config.h b/keyboards/jd40/config.h deleted file mode 100644 index 4e596948184..00000000000 --- a/keyboards/jd40/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/jd40/keyboard.json b/keyboards/jd40/keyboard.json index 6ce0ca5da3a..f56602b2151 100644 --- a/keyboards/jd40/keyboard.json +++ b/keyboards/jd40/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "D7", "B5", "B6", "C6", "C7", "D4", "D6", "D5", "D0", "D1", "D2"], "rows": ["F0", "F1", "F5", "B4"] diff --git a/keyboards/jd45/config.h b/keyboards/jd45/config.h deleted file mode 100644 index 9b7700e0139..00000000000 --- a/keyboards/jd45/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/jd45/keyboard.json b/keyboards/jd45/keyboard.json index c9d5bfb123e..6c103ec6dd0 100644 --- a/keyboards/jd45/keyboard.json +++ b/keyboards/jd45/keyboard.json @@ -18,6 +18,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "D7", "B5", "B6", "C6", "C7", "D4", "D6", "D5", "D0", "D1", "D2", "B0"], "rows": ["F0", "F1", "F5", "B4"] diff --git a/keyboards/jels/boaty/config.h b/keyboards/jels/boaty/config.h deleted file mode 100644 index d78952f2611..00000000000 --- a/keyboards/jels/boaty/config.h +++ /dev/null @@ -1,23 +0,0 @@ - /* Copyright 2022 Joah Nelson (Jels) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/jels/boaty/keyboard.json b/keyboards/jels/boaty/keyboard.json index 6d85c5bd4f7..11a6e0aa151 100644 --- a/keyboards/jels/boaty/keyboard.json +++ b/keyboards/jels/boaty/keyboard.json @@ -18,6 +18,12 @@ "console": false, "command": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "C0", "C1", "C2", "D4", "D1", "D0", "C5", "C4", "C3", "D5"], "rows": ["D6", "B0", "D7", "B5", "B3", "B4", "B2"] diff --git a/keyboards/jels/jels60/v1/config.h b/keyboards/jels/jels60/v1/config.h deleted file mode 100644 index 92b3d368015..00000000000 --- a/keyboards/jels/jels60/v1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2022 Joah Nelson (Jels) -* -* 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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/jels/jels60/v1/keyboard.json b/keyboards/jels/jels60/v1/keyboard.json index 6dc88d7895f..1f7b45adef8 100644 --- a/keyboards/jels/jels60/v1/keyboard.json +++ b/keyboards/jels/jels60/v1/keyboard.json @@ -14,6 +14,12 @@ "command": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "processor": "atmega32u4", "bootloader": "atmel-dfu" } diff --git a/keyboards/jels/jels60/v2/config.h b/keyboards/jels/jels60/v2/config.h deleted file mode 100644 index 274e7fcf628..00000000000 --- a/keyboards/jels/jels60/v2/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2022 Joah Nelson (Jels) -* -* 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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/jels/jels60/v2/keyboard.json b/keyboards/jels/jels60/v2/keyboard.json index 69ec00193a0..4ab87eff494 100644 --- a/keyboards/jels/jels60/v2/keyboard.json +++ b/keyboards/jels/jels60/v2/keyboard.json @@ -9,6 +9,12 @@ "command": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["GP24", "GP25", "GP23", "GP21", "GP22", "GP2", "GP1", "GP0", "GP6", "GP18", "GP19", "GP20", "GP9", "GP8"], "rows": ["GP26", "GP27", "GP3", "GP4", "GP5"] diff --git a/keyboards/jels/jels88/config.h b/keyboards/jels/jels88/config.h deleted file mode 100644 index 2d5641fa699..00000000000 --- a/keyboards/jels/jels88/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Joah Nelson (Jels) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/jels/jels88/keyboard.json b/keyboards/jels/jels88/keyboard.json index bcddf648a02..ee9b64ed6ae 100644 --- a/keyboards/jels/jels88/keyboard.json +++ b/keyboards/jels/jels88/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "C6", "F7", "F6", "F5", "F4", "B1", "D2", "D3"], "rows": ["B3", "B2", "D1", "D0", "E6", "B0", "F0", "F1", "B5", "B4", "D7", "D6"] diff --git a/keyboards/jolofsor/denial75/config.h b/keyboards/jolofsor/denial75/config.h index 785fdc3e5ee..da9b8fd9b21 100644 --- a/keyboards/jolofsor/denial75/config.h +++ b/keyboards/jolofsor/denial75/config.h @@ -16,12 +16,5 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - /* RGB Definitions */ #define RGBLIGHT_MAX_LAYERS 32 diff --git a/keyboards/jolofsor/denial75/keyboard.json b/keyboards/jolofsor/denial75/keyboard.json index e77c9e4a1fb..df7c3157c9a 100644 --- a/keyboards/jolofsor/denial75/keyboard.json +++ b/keyboards/jolofsor/denial75/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "C7", "C6", "B5", "B4", "D7", "D6", "D4", "E6", "B1", "B2", "B3", "B7", "D0", "D1", "D3"], "rows": ["B0", "F6", "F5", "F4", "F1", "F0"] diff --git a/keyboards/jorne/rev1/config.h b/keyboards/jorne/rev1/config.h deleted file mode 100644 index 3b854d3afc9..00000000000 --- a/keyboards/jorne/rev1/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2021 Joric (@joric) -// SPDX-License-Identifier: GPL-2.0-or-later -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/jorne/rev1/keyboard.json b/keyboards/jorne/rev1/keyboard.json index 93ece816bb9..7f67edc6ec1 100644 --- a/keyboards/jorne/rev1/keyboard.json +++ b/keyboards/jorne/rev1/keyboard.json @@ -39,6 +39,12 @@ "rgblight": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/joshajohnson/hub16/config.h b/keyboards/joshajohnson/hub16/config.h index 68576635a8f..82ec6081ad4 100755 --- a/keyboards/joshajohnson/hub16/config.h +++ b/keyboards/joshajohnson/hub16/config.h @@ -25,8 +25,3 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/joshajohnson/hub16/keyboard.json b/keyboards/joshajohnson/hub16/keyboard.json index 7d8f0ab3568..1c9d3ea436c 100644 --- a/keyboards/joshajohnson/hub16/keyboard.json +++ b/keyboards/joshajohnson/hub16/keyboard.json @@ -44,6 +44,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "debounce": 20, "layouts": { "LAYOUT": { diff --git a/keyboards/joshajohnson/hub20/config.h b/keyboards/joshajohnson/hub20/config.h deleted file mode 100644 index 29471149d15..00000000000 --- a/keyboards/joshajohnson/hub20/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 joshajohnson -Copyright 2021 peepeetee - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/joshajohnson/hub20/keyboard.json b/keyboards/joshajohnson/hub20/keyboard.json index 4bedd20c4a2..44a3361838a 100644 --- a/keyboards/joshajohnson/hub20/keyboard.json +++ b/keyboards/joshajohnson/hub20/keyboard.json @@ -52,7 +52,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgblight": { "led_count": 27 diff --git a/keyboards/jukaie/jk01/config.h b/keyboards/jukaie/jk01/config.h index e66f9227796..d8dfb9f5354 100644 --- a/keyboards/jukaie/jk01/config.h +++ b/keyboards/jukaie/jk01/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* External spi flash */ #define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14 diff --git a/keyboards/jukaie/jk01/keyboard.json b/keyboards/jukaie/jk01/keyboard.json index c713fe2749a..cde0b38034b 100644 --- a/keyboards/jukaie/jk01/keyboard.json +++ b/keyboards/jukaie/jk01/keyboard.json @@ -38,7 +38,11 @@ }, "processor": "WB32FQ95", "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgb_matrix": { "animations": { From efe0d96845306a7083dd191dce7c2714c2a406ab Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 22 May 2024 12:41:29 -0700 Subject: [PATCH 034/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: N (#23774) Affects: - `nacly/sodium42` - `nacly/sodium50` - `nacly/sodium62` - `nacly/splitreus62` - `nacly/ua62` - `nek_type_a` - `nemui` - `nibiria/stream15` - `nightingale_studios/hailey` - `nightly_boards/adellein` - `nightly_boards/alter/rev1` - `nightly_boards/alter_lite` - `nightly_boards/conde60` - `nightly_boards/daily60` - `nightly_boards/jisoo` - `nightly_boards/n2` - `nightly_boards/n40_o` - `nightly_boards/n60_s` - `nightly_boards/n87` - `nightly_boards/n9` - `nightly_boards/octopad` - `nightly_boards/octopadplus` - `nightly_boards/paraluman` - `nightly_boards/ph_arisu` - `nightmare` - `nimrod` - `nix_studio/oxalys80` - `nopunin10did/jabberwocky/v1` - `nopunin10did/jabberwocky/v2` - `nopunin10did/railroad/rev0` - `novelkeys/novelpad` - `noxary/220` - `noxary/260` - `noxary/268` - `noxary/268_2` - `noxary/268_2_rgb` - `noxary/280` - `noxary/378` - `noxary/valhalla` - `noxary/vulcan` - `noxary/x268` - `numatreus` --- keyboards/nacly/sodium42/config.h | 5 --- keyboards/nacly/sodium42/keyboard.json | 6 +++ keyboards/nacly/sodium50/config.h | 5 --- keyboards/nacly/sodium50/keyboard.json | 6 +++ keyboards/nacly/sodium62/config.h | 4 -- keyboards/nacly/sodium62/keyboard.json | 6 +++ keyboards/nacly/splitreus62/config.h | 5 --- keyboards/nacly/splitreus62/keyboard.json | 6 +++ keyboards/nacly/ua62/config.h | 39 ------------------- keyboards/nacly/ua62/keyboard.json | 6 +++ keyboards/nek_type_a/config.h | 6 --- keyboards/nek_type_a/keyboard.json | 6 +++ keyboards/nemui/config.h | 38 ------------------ keyboards/nemui/keyboard.json | 6 +++ keyboards/nibiria/stream15/config.h | 39 ------------------- keyboards/nibiria/stream15/keyboard.json | 6 +++ keyboards/nightingale_studios/hailey/config.h | 5 --- .../nightingale_studios/hailey/keyboard.json | 6 +++ keyboards/nightly_boards/adellein/config.h | 23 ----------- .../nightly_boards/adellein/keyboard.json | 6 +++ keyboards/nightly_boards/alter/rev1/config.h | 20 ---------- .../nightly_boards/alter/rev1/keyboard.json | 6 +++ keyboards/nightly_boards/alter_lite/config.h | 21 ---------- .../nightly_boards/alter_lite/keyboard.json | 6 +++ keyboards/nightly_boards/conde60/config.h | 23 ----------- .../nightly_boards/conde60/keyboard.json | 6 +++ keyboards/nightly_boards/daily60/config.h | 23 ----------- .../nightly_boards/daily60/keyboard.json | 6 +++ keyboards/nightly_boards/jisoo/config.h | 23 ----------- keyboards/nightly_boards/jisoo/keyboard.json | 6 +++ keyboards/nightly_boards/n2/config.h | 20 ---------- keyboards/nightly_boards/n2/keyboard.json | 6 +++ keyboards/nightly_boards/n40_o/config.h | 5 --- keyboards/nightly_boards/n40_o/keyboard.json | 6 +++ keyboards/nightly_boards/n60_s/config.h | 5 --- keyboards/nightly_boards/n60_s/keyboard.json | 6 +++ keyboards/nightly_boards/n87/config.h | 5 --- keyboards/nightly_boards/n87/keyboard.json | 6 +++ keyboards/nightly_boards/n9/config.h | 20 ---------- keyboards/nightly_boards/n9/keyboard.json | 6 +++ keyboards/nightly_boards/octopad/config.h | 5 --- .../nightly_boards/octopad/keyboard.json | 6 +++ keyboards/nightly_boards/octopadplus/config.h | 23 ----------- .../nightly_boards/octopadplus/keyboard.json | 6 ++- keyboards/nightly_boards/paraluman/config.h | 24 ------------ .../nightly_boards/paraluman/keyboard.json | 6 +++ keyboards/nightly_boards/ph_arisu/config.h | 7 ---- .../nightly_boards/ph_arisu/keyboard.json | 6 +++ keyboards/nightmare/config.h | 39 ------------------- keyboards/nightmare/keyboard.json | 6 +++ keyboards/nimrod/config.h | 21 ---------- keyboards/nimrod/keyboard.json | 6 +++ keyboards/nix_studio/oxalys80/config.h | 22 ----------- keyboards/nix_studio/oxalys80/keyboard.json | 6 +++ .../nopunin10did/jabberwocky/v1/config.h | 23 ----------- .../nopunin10did/jabberwocky/v1/keyboard.json | 6 +++ .../nopunin10did/jabberwocky/v2/config.h | 23 ----------- .../nopunin10did/jabberwocky/v2/keyboard.json | 6 +++ keyboards/nopunin10did/railroad/rev0/config.h | 23 ----------- .../nopunin10did/railroad/rev0/keyboard.json | 6 +++ keyboards/novelkeys/novelpad/config.h | 39 ------------------- keyboards/novelkeys/novelpad/keyboard.json | 6 +++ keyboards/noxary/220/config.h | 39 ------------------- keyboards/noxary/220/keyboard.json | 6 +++ keyboards/noxary/260/config.h | 39 ------------------- keyboards/noxary/260/keyboard.json | 6 +++ keyboards/noxary/268/config.h | 24 ------------ keyboards/noxary/268/keyboard.json | 6 +++ keyboards/noxary/268_2/config.h | 39 ------------------- keyboards/noxary/268_2/keyboard.json | 6 +++ keyboards/noxary/268_2_rgb/config.h | 20 ---------- keyboards/noxary/268_2_rgb/keyboard.json | 6 +++ keyboards/noxary/280/config.h | 39 ------------------- keyboards/noxary/280/keyboard.json | 6 +++ keyboards/noxary/378/config.h | 39 ------------------- keyboards/noxary/378/keyboard.json | 6 +++ keyboards/noxary/valhalla/config.h | 39 ------------------- keyboards/noxary/valhalla/keyboard.json | 6 +++ keyboards/noxary/vulcan/config.h | 39 ------------------- keyboards/noxary/vulcan/keyboard.json | 6 +++ keyboards/noxary/x268/config.h | 39 ------------------- keyboards/noxary/x268/keyboard.json | 6 +++ keyboards/numatreus/config.h | 5 --- keyboards/numatreus/keyboard.json | 6 +++ 84 files changed, 251 insertions(+), 945 deletions(-) delete mode 100644 keyboards/nacly/ua62/config.h delete mode 100644 keyboards/nemui/config.h delete mode 100644 keyboards/nibiria/stream15/config.h delete mode 100644 keyboards/nightly_boards/adellein/config.h delete mode 100644 keyboards/nightly_boards/alter/rev1/config.h delete mode 100644 keyboards/nightly_boards/alter_lite/config.h delete mode 100644 keyboards/nightly_boards/conde60/config.h delete mode 100644 keyboards/nightly_boards/daily60/config.h delete mode 100644 keyboards/nightly_boards/jisoo/config.h delete mode 100644 keyboards/nightly_boards/n2/config.h delete mode 100644 keyboards/nightly_boards/n9/config.h delete mode 100644 keyboards/nightly_boards/octopadplus/config.h delete mode 100644 keyboards/nightly_boards/paraluman/config.h delete mode 100644 keyboards/nightly_boards/ph_arisu/config.h delete mode 100644 keyboards/nightmare/config.h delete mode 100644 keyboards/nimrod/config.h delete mode 100644 keyboards/nix_studio/oxalys80/config.h delete mode 100644 keyboards/nopunin10did/jabberwocky/v1/config.h delete mode 100644 keyboards/nopunin10did/jabberwocky/v2/config.h delete mode 100644 keyboards/nopunin10did/railroad/rev0/config.h delete mode 100755 keyboards/novelkeys/novelpad/config.h delete mode 100644 keyboards/noxary/220/config.h delete mode 100644 keyboards/noxary/260/config.h delete mode 100644 keyboards/noxary/268/config.h delete mode 100644 keyboards/noxary/268_2/config.h delete mode 100644 keyboards/noxary/268_2_rgb/config.h delete mode 100644 keyboards/noxary/280/config.h delete mode 100644 keyboards/noxary/378/config.h delete mode 100644 keyboards/noxary/valhalla/config.h delete mode 100644 keyboards/noxary/vulcan/config.h delete mode 100644 keyboards/noxary/x268/config.h diff --git a/keyboards/nacly/sodium42/config.h b/keyboards/nacly/sodium42/config.h index 1bbaec44c66..fe3f0e0cc96 100644 --- a/keyboards/nacly/sodium42/config.h +++ b/keyboards/nacly/sodium42/config.h @@ -18,11 +18,6 @@ #define SPLIT_HAND_PIN F4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/nacly/sodium42/keyboard.json b/keyboards/nacly/sodium42/keyboard.json index f084ca2a239..491a2cf955f 100644 --- a/keyboards/nacly/sodium42/keyboard.json +++ b/keyboards/nacly/sodium42/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "C6", "E6", "B5", "B2", "B3"], "rows": ["F7", "D4", "D7", "B4"] diff --git a/keyboards/nacly/sodium50/config.h b/keyboards/nacly/sodium50/config.h index 1bbaec44c66..fe3f0e0cc96 100644 --- a/keyboards/nacly/sodium50/config.h +++ b/keyboards/nacly/sodium50/config.h @@ -18,11 +18,6 @@ #define SPLIT_HAND_PIN F4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/nacly/sodium50/keyboard.json b/keyboards/nacly/sodium50/keyboard.json index ff7b691d9d7..ec0edbfd9a9 100644 --- a/keyboards/nacly/sodium50/keyboard.json +++ b/keyboards/nacly/sodium50/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "C6", "E6", "B5", "B2", "B3", "B1"], "rows": ["F7", "D4", "D7", "B4"] diff --git a/keyboards/nacly/sodium62/config.h b/keyboards/nacly/sodium62/config.h index c526c9c9c50..341e0e0d893 100644 --- a/keyboards/nacly/sodium62/config.h +++ b/keyboards/nacly/sodium62/config.h @@ -18,10 +18,6 @@ #define SPLIT_HAND_PIN F4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE #define OLED_BRIGHTNESS 128 /* diff --git a/keyboards/nacly/sodium62/keyboard.json b/keyboards/nacly/sodium62/keyboard.json index 941bad2bd6c..2d9f01e801f 100644 --- a/keyboards/nacly/sodium62/keyboard.json +++ b/keyboards/nacly/sodium62/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "C6", "E6", "B5", "B2", "B3", "B1"], "rows": ["F7", "D4", "D7", "B4", "B6"] diff --git a/keyboards/nacly/splitreus62/config.h b/keyboards/nacly/splitreus62/config.h index fe1acecf248..b4f9d582ce2 100644 --- a/keyboards/nacly/splitreus62/config.h +++ b/keyboards/nacly/splitreus62/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN F4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/nacly/splitreus62/keyboard.json b/keyboards/nacly/splitreus62/keyboard.json index 4efc32f5c5d..08a80104837 100644 --- a/keyboards/nacly/splitreus62/keyboard.json +++ b/keyboards/nacly/splitreus62/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B4", "B5", "B6", "B2", "B3"], "rows": ["D3", "D2", "D1", "D4", "C6", "D7"] diff --git a/keyboards/nacly/ua62/config.h b/keyboards/nacly/ua62/config.h deleted file mode 100644 index 643a3b52db9..00000000000 --- a/keyboards/nacly/ua62/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 NaCly - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/nacly/ua62/keyboard.json b/keyboards/nacly/ua62/keyboard.json index 92323d51646..43f2e9e6628 100644 --- a/keyboards/nacly/ua62/keyboard.json +++ b/keyboards/nacly/ua62/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "D7", "E6", "B4", "B5", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D3", "D2", "D1", "D0", "D4"] diff --git a/keyboards/nek_type_a/config.h b/keyboards/nek_type_a/config.h index dee2cf4fbd6..ec8d78136a8 100644 --- a/keyboards/nek_type_a/config.h +++ b/keyboards/nek_type_a/config.h @@ -28,9 +28,3 @@ along with this program. If not, see . #define NEK_MATRIX_ROW_PINS { F7, F6, F5, F4, F1, F0 } #define DIODE_DIRECTION ROW2COL - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nek_type_a/keyboard.json b/keyboards/nek_type_a/keyboard.json index 632eafee44c..39bad11a189 100644 --- a/keyboards/nek_type_a/keyboard.json +++ b/keyboards/nek_type_a/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "bluetooth": { "driver": "bluefruit_le" }, diff --git a/keyboards/nemui/config.h b/keyboards/nemui/config.h deleted file mode 100644 index a371cd708d9..00000000000 --- a/keyboards/nemui/config.h +++ /dev/null @@ -1,38 +0,0 @@ - -/* Copyright 2020 Bachoo - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/nemui/keyboard.json b/keyboards/nemui/keyboard.json index d8fbc4db1c2..fb2adb6ae46 100644 --- a/keyboards/nemui/keyboard.json +++ b/keyboards/nemui/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B1", "B0", "B10", "B11", "A7", "B12", "B13", "B14", "A10", "A9", "A8", "B7", "B8", "B9"], "rows": ["A3", "A4", "A5", "A6", "A2"] diff --git a/keyboards/nibiria/stream15/config.h b/keyboards/nibiria/stream15/config.h deleted file mode 100644 index 8a1f5b6c2b7..00000000000 --- a/keyboards/nibiria/stream15/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Matt Clendaniel - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/nibiria/stream15/keyboard.json b/keyboards/nibiria/stream15/keyboard.json index 899a5ecbce0..9daeef7cf9e 100644 --- a/keyboards/nibiria/stream15/keyboard.json +++ b/keyboards/nibiria/stream15/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A1", "A2", "B11", "B12", "B13"], "rows": ["B10", "B9", "B8"] diff --git a/keyboards/nightingale_studios/hailey/config.h b/keyboards/nightingale_studios/hailey/config.h index ae2ee205a4d..563fb415a1d 100644 --- a/keyboards/nightingale_studios/hailey/config.h +++ b/keyboards/nightingale_studios/hailey/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/nightingale_studios/hailey/keyboard.json b/keyboards/nightingale_studios/hailey/keyboard.json index ccf4e9adba6..f8c2455958d 100644 --- a/keyboards/nightingale_studios/hailey/keyboard.json +++ b/keyboards/nightingale_studios/hailey/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A4", "A3", "F1", "F0", "C15", "C14", "C13", "B11", "B10", "B2", "B1", "B0", "A7", "A5", "A6", "B5", "A15"], "rows": ["A8", "B15", "B14", "B13", "B12", "B6", "A14"] diff --git a/keyboards/nightly_boards/adellein/config.h b/keyboards/nightly_boards/adellein/config.h deleted file mode 100644 index 549b82fe0d8..00000000000 --- a/keyboards/nightly_boards/adellein/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 Neil Brian Ramirez - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/adellein/keyboard.json b/keyboards/nightly_boards/adellein/keyboard.json index 1a6c7d8a5ca..3f873ba5f5d 100644 --- a/keyboards/nightly_boards/adellein/keyboard.json +++ b/keyboards/nightly_boards/adellein/keyboard.json @@ -21,6 +21,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "B7", "B3", "B2", "D0", "D1", "D2", "D3"], "rows": ["B1", "B0", "B5", "B6"] diff --git a/keyboards/nightly_boards/alter/rev1/config.h b/keyboards/nightly_boards/alter/rev1/config.h deleted file mode 100644 index 3223a5a19be..00000000000 --- a/keyboards/nightly_boards/alter/rev1/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Neil Brian Ramirez -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/alter/rev1/keyboard.json b/keyboards/nightly_boards/alter/rev1/keyboard.json index 84eb93fac31..e02e7e5b1b3 100644 --- a/keyboards/nightly_boards/alter/rev1/keyboard.json +++ b/keyboards/nightly_boards/alter/rev1/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "C6", "B6", "B5", "B0", "B1", "B2", "B3"], "rows": ["F7", "F6", "F5", "E6", "D0", "B7", "D5", "D3", "D2", "D1"] diff --git a/keyboards/nightly_boards/alter_lite/config.h b/keyboards/nightly_boards/alter_lite/config.h deleted file mode 100644 index e462b35b07c..00000000000 --- a/keyboards/nightly_boards/alter_lite/config.h +++ /dev/null @@ -1,21 +0,0 @@ - /* -Copyright 2020 DeskDaily -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/nightly_boards/alter_lite/keyboard.json b/keyboards/nightly_boards/alter_lite/keyboard.json index f92e848d22a..d06dd3aacd3 100644 --- a/keyboards/nightly_boards/alter_lite/keyboard.json +++ b/keyboards/nightly_boards/alter_lite/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "E6", "B6", "C6", "C7", "F7", "F6", "F5", "F4"], "rows": ["F0", "F1", "D3", "D5", "B5"] diff --git a/keyboards/nightly_boards/conde60/config.h b/keyboards/nightly_boards/conde60/config.h deleted file mode 100644 index 3d0b7f438c8..00000000000 --- a/keyboards/nightly_boards/conde60/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 DeskDaily - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/conde60/keyboard.json b/keyboards/nightly_boards/conde60/keyboard.json index f26c400712b..38e7b8383af 100644 --- a/keyboards/nightly_boards/conde60/keyboard.json +++ b/keyboards/nightly_boards/conde60/keyboard.json @@ -20,6 +20,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B3", "B7", "B6", "C6", "C7", "F7", "F6", "F5", "D4", "D6", "D7", "B4", "B5"], "rows": ["B1", "B2", "F0", "F1", "F4"] diff --git a/keyboards/nightly_boards/daily60/config.h b/keyboards/nightly_boards/daily60/config.h deleted file mode 100644 index 3d0b7f438c8..00000000000 --- a/keyboards/nightly_boards/daily60/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 DeskDaily - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/daily60/keyboard.json b/keyboards/nightly_boards/daily60/keyboard.json index 7a05b2f86d8..d13ead3251d 100644 --- a/keyboards/nightly_boards/daily60/keyboard.json +++ b/keyboards/nightly_boards/daily60/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["GP22", "GP0", "GP1", "GP2", "GP5", "GP7", "GP8", "GP9", "GP10", "GP11", "GP12", "GP13", "GP14", "GP15"], "rows": ["GP23", "GP24", "GP20", "GP19", "GP18"] diff --git a/keyboards/nightly_boards/jisoo/config.h b/keyboards/nightly_boards/jisoo/config.h deleted file mode 100644 index 3d0b7f438c8..00000000000 --- a/keyboards/nightly_boards/jisoo/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 DeskDaily - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/jisoo/keyboard.json b/keyboards/nightly_boards/jisoo/keyboard.json index 978c6c323ba..21b8122497f 100644 --- a/keyboards/nightly_boards/jisoo/keyboard.json +++ b/keyboards/nightly_boards/jisoo/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["GP25", "GP14", "GP13", "GP12", "GP11", "GP10", "GP9", "GP8", "GP7", "GP6", "GP5", "GP4", "GP3", "GP2", "GP1", "GP0"], "rows": ["GP26", "GP27", "GP28", "GP18", "GP19", "GP20"] diff --git a/keyboards/nightly_boards/n2/config.h b/keyboards/nightly_boards/n2/config.h deleted file mode 100644 index 3223a5a19be..00000000000 --- a/keyboards/nightly_boards/n2/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Neil Brian Ramirez -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/n2/keyboard.json b/keyboards/nightly_boards/n2/keyboard.json index 050f6fedeef..4aa554716f3 100644 --- a/keyboards/nightly_boards/n2/keyboard.json +++ b/keyboards/nightly_boards/n2/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "C6"], "rows": ["F1", "C7"] diff --git a/keyboards/nightly_boards/n40_o/config.h b/keyboards/nightly_boards/n40_o/config.h index 27a82c8acda..46a02c3bd17 100644 --- a/keyboards/nightly_boards/n40_o/config.h +++ b/keyboards/nightly_boards/n40_o/config.h @@ -18,8 +18,3 @@ along with this program. If not, see . #pragma once #define AUDIO_CLICKY - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/n40_o/keyboard.json b/keyboards/nightly_boards/n40_o/keyboard.json index 1f341441a4e..f749c143eb9 100644 --- a/keyboards/nightly_boards/n40_o/keyboard.json +++ b/keyboards/nightly_boards/n40_o/keyboard.json @@ -13,6 +13,12 @@ "build": { "lto": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "usb": { "vid": "0xD812", "pid": "0x0009", diff --git a/keyboards/nightly_boards/n60_s/config.h b/keyboards/nightly_boards/n60_s/config.h index 519ac7b82a9..9e3016e53a4 100644 --- a/keyboards/nightly_boards/n60_s/config.h +++ b/keyboards/nightly_boards/n60_s/config.h @@ -21,8 +21,3 @@ along with this program. If not, see . #define B7_AUDIO #define AUDIO_CLICKY - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/n60_s/keyboard.json b/keyboards/nightly_boards/n60_s/keyboard.json index 8370ce93b3a..f6e235fec50 100644 --- a/keyboards/nightly_boards/n60_s/keyboard.json +++ b/keyboards/nightly_boards/n60_s/keyboard.json @@ -22,6 +22,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "B0", "B1", "B2", "B3", "B5", "B6", "C6", "C7"], "rows": ["B4", "D7", "D6", "D0", "E6"] diff --git a/keyboards/nightly_boards/n87/config.h b/keyboards/nightly_boards/n87/config.h index 04056f78716..b7cafeda2a6 100644 --- a/keyboards/nightly_boards/n87/config.h +++ b/keyboards/nightly_boards/n87/config.h @@ -23,11 +23,6 @@ along with this program. If not, see . #define NO_MUSIC_MODE -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/nightly_boards/n87/keyboard.json b/keyboards/nightly_boards/n87/keyboard.json index fd8589b18d8..ddfd27125ca 100644 --- a/keyboards/nightly_boards/n87/keyboard.json +++ b/keyboards/nightly_boards/n87/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "C7", "C6", "B6", "B5", "D6"], "rows": ["B0", "B1", "B2", "B3", "F1", "F0", "D7", "B4", "D1", "D2", "D3", "D5"] diff --git a/keyboards/nightly_boards/n9/config.h b/keyboards/nightly_boards/n9/config.h deleted file mode 100644 index 3223a5a19be..00000000000 --- a/keyboards/nightly_boards/n9/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Neil Brian Ramirez -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/n9/keyboard.json b/keyboards/nightly_boards/n9/keyboard.json index 6adb9efe683..83f94954454 100644 --- a/keyboards/nightly_boards/n9/keyboard.json +++ b/keyboards/nightly_boards/n9/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "D4"], "rows": ["F4", "B1", "B3"] diff --git a/keyboards/nightly_boards/octopad/config.h b/keyboards/nightly_boards/octopad/config.h index a0ee1a92af8..763aef22e99 100644 --- a/keyboards/nightly_boards/octopad/config.h +++ b/keyboards/nightly_boards/octopad/config.h @@ -23,8 +23,3 @@ along with this program. If not, see . #define AUDIO_CLICKY #define NO_MUSIC_MODE - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/octopad/keyboard.json b/keyboards/nightly_boards/octopad/keyboard.json index 7649dbefdfa..797f26a2c2e 100644 --- a/keyboards/nightly_boards/octopad/keyboard.json +++ b/keyboards/nightly_boards/octopad/keyboard.json @@ -22,6 +22,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F0", "D0", "D1", "B1"], "rows": ["B2", "B3"] diff --git a/keyboards/nightly_boards/octopadplus/config.h b/keyboards/nightly_boards/octopadplus/config.h deleted file mode 100644 index 3d0b7f438c8..00000000000 --- a/keyboards/nightly_boards/octopadplus/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 DeskDaily - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/octopadplus/keyboard.json b/keyboards/nightly_boards/octopadplus/keyboard.json index 629aa93aa3e..ca5a7cdad16 100644 --- a/keyboards/nightly_boards/octopadplus/keyboard.json +++ b/keyboards/nightly_boards/octopadplus/keyboard.json @@ -30,7 +30,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu", diff --git a/keyboards/nightly_boards/paraluman/config.h b/keyboards/nightly_boards/paraluman/config.h deleted file mode 100644 index b21da143b59..00000000000 --- a/keyboards/nightly_boards/paraluman/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 DeskDaily - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/nightly_boards/paraluman/keyboard.json b/keyboards/nightly_boards/paraluman/keyboard.json index eb5b4014285..f18cefe6018 100644 --- a/keyboards/nightly_boards/paraluman/keyboard.json +++ b/keyboards/nightly_boards/paraluman/keyboard.json @@ -19,6 +19,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "F6", "F5", "F4", "F1", "F0", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["D0", "F7", "B1", "B0", "E6"] diff --git a/keyboards/nightly_boards/ph_arisu/config.h b/keyboards/nightly_boards/ph_arisu/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/nightly_boards/ph_arisu/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nightly_boards/ph_arisu/keyboard.json b/keyboards/nightly_boards/ph_arisu/keyboard.json index 90cd8f3b8f6..55f9e6e90c7 100644 --- a/keyboards/nightly_boards/ph_arisu/keyboard.json +++ b/keyboards/nightly_boards/ph_arisu/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/nightmare/config.h b/keyboards/nightmare/config.h deleted file mode 100644 index 39eec86786a..00000000000 --- a/keyboards/nightmare/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 cfbender - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/nightmare/keyboard.json b/keyboards/nightmare/keyboard.json index c41d95e64d8..c4d984ac19f 100644 --- a/keyboards/nightmare/keyboard.json +++ b/keyboards/nightmare/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "B5", "D3", "D2", "D1", "D0", "F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6"] diff --git a/keyboards/nimrod/config.h b/keyboards/nimrod/config.h deleted file mode 100644 index d74e88c63ad..00000000000 --- a/keyboards/nimrod/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 cjcodell1 - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nimrod/keyboard.json b/keyboards/nimrod/keyboard.json index 5f07885d0d7..08351efb20c 100644 --- a/keyboards/nimrod/keyboard.json +++ b/keyboards/nimrod/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "F4", "B5", "B4", "E6", "F6", "F7", "B1", "B3", "B2"], "rows": ["F5", "B6", "D7", "C6"] diff --git a/keyboards/nix_studio/oxalys80/config.h b/keyboards/nix_studio/oxalys80/config.h deleted file mode 100644 index 0e5dd8a043c..00000000000 --- a/keyboards/nix_studio/oxalys80/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Nix Studio - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nix_studio/oxalys80/keyboard.json b/keyboards/nix_studio/oxalys80/keyboard.json index 9f41d0a210b..5fa489f72bf 100644 --- a/keyboards/nix_studio/oxalys80/keyboard.json +++ b/keyboards/nix_studio/oxalys80/keyboard.json @@ -21,6 +21,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "B0", "B1"], "rows": ["C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"] diff --git a/keyboards/nopunin10did/jabberwocky/v1/config.h b/keyboards/nopunin10did/jabberwocky/v1/config.h deleted file mode 100644 index ae6256b351b..00000000000 --- a/keyboards/nopunin10did/jabberwocky/v1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nopunin10did/jabberwocky/v1/keyboard.json b/keyboards/nopunin10did/jabberwocky/v1/keyboard.json index b82a9642c71..6c8b71460e4 100644 --- a/keyboards/nopunin10did/jabberwocky/v1/keyboard.json +++ b/keyboards/nopunin10did/jabberwocky/v1/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "D7", "C6", "D4", "D0", "D2", "D3"], "rows": ["E6", "B4", "B5", "B7", "D5", "C7", "F1", "F0", "B1", "B3", "B2", "B6"] diff --git a/keyboards/nopunin10did/jabberwocky/v2/config.h b/keyboards/nopunin10did/jabberwocky/v2/config.h deleted file mode 100644 index b00b2242dc2..00000000000 --- a/keyboards/nopunin10did/jabberwocky/v2/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2022 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nopunin10did/jabberwocky/v2/keyboard.json b/keyboards/nopunin10did/jabberwocky/v2/keyboard.json index 549daef9719..177f5235f45 100644 --- a/keyboards/nopunin10did/jabberwocky/v2/keyboard.json +++ b/keyboards/nopunin10did/jabberwocky/v2/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D2", "D3", "D5", "B5", "D7", "F6", "F7", "C7", "B6"], "rows": ["B2", "B3", "B1", "D4", "B4", "D1", "E6", "B0", "F0", "F1", "F4", "F5"] diff --git a/keyboards/nopunin10did/railroad/rev0/config.h b/keyboards/nopunin10did/railroad/rev0/config.h deleted file mode 100644 index 15ea042da21..00000000000 --- a/keyboards/nopunin10did/railroad/rev0/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/nopunin10did/railroad/rev0/keyboard.json b/keyboards/nopunin10did/railroad/rev0/keyboard.json index db740a4d483..7dcc17f7620 100644 --- a/keyboards/nopunin10did/railroad/rev0/keyboard.json +++ b/keyboards/nopunin10did/railroad/rev0/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "B7", "D4", "D6", "D7", "B4", "B5", "B6"], "rows": ["D2", "D3", "D5", "C6", "C7", "F6", "F5", "F4", "F1", "F0"] diff --git a/keyboards/novelkeys/novelpad/config.h b/keyboards/novelkeys/novelpad/config.h deleted file mode 100755 index 5c82c9a7ca3..00000000000 --- a/keyboards/novelkeys/novelpad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Cole Markham - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/novelkeys/novelpad/keyboard.json b/keyboards/novelkeys/novelpad/keyboard.json index 03c76764dfb..bb190dd2849 100644 --- a/keyboards/novelkeys/novelpad/keyboard.json +++ b/keyboards/novelkeys/novelpad/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "D6", "D5", "D4"], "rows": ["C2", "C4", "C5", "C6", "C7"] diff --git a/keyboards/noxary/220/config.h b/keyboards/noxary/220/config.h deleted file mode 100644 index b5b661bef2a..00000000000 --- a/keyboards/noxary/220/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/noxary/220/keyboard.json b/keyboards/noxary/220/keyboard.json index f40c0f7280a..75d71aac8a3 100644 --- a/keyboards/noxary/220/keyboard.json +++ b/keyboards/noxary/220/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "C5", "D2", "D1"], "rows": ["C4", "B0", "D3", "D4", "D5", "D6"] diff --git a/keyboards/noxary/260/config.h b/keyboards/noxary/260/config.h deleted file mode 100644 index b5b661bef2a..00000000000 --- a/keyboards/noxary/260/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/noxary/260/keyboard.json b/keyboards/noxary/260/keyboard.json index bcf1db37041..b5f876f5d91 100644 --- a/keyboards/noxary/260/keyboard.json +++ b/keyboards/noxary/260/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "C6", "B6", "F4", "E6", "D0", "B4", "D1", "D2", "D3", "D7", "D6", "D4", "F1", "D5"], "rows": ["F7", "F6", "F5", "F0", "B5"] diff --git a/keyboards/noxary/268/config.h b/keyboards/noxary/268/config.h deleted file mode 100644 index ef4a0a745d3..00000000000 --- a/keyboards/noxary/268/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 Rozakiin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE \ No newline at end of file diff --git a/keyboards/noxary/268/keyboard.json b/keyboards/noxary/268/keyboard.json index bb0bc191d39..a44f48fad56 100644 --- a/keyboards/noxary/268/keyboard.json +++ b/keyboards/noxary/268/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "F7", "F6", "E6", "B0", "D1", "B2", "B3", "D2", "D3", "D5", "D4", "D6", "D7", "B4"], "rows": ["F5", "F4", "F0", "F1", "D0"] diff --git a/keyboards/noxary/268_2/config.h b/keyboards/noxary/268_2/config.h deleted file mode 100644 index 98d8ea885ec..00000000000 --- a/keyboards/noxary/268_2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Rozakiin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/noxary/268_2/keyboard.json b/keyboards/noxary/268_2/keyboard.json index 6e983a07f61..c724d07a493 100644 --- a/keyboards/noxary/268_2/keyboard.json +++ b/keyboards/noxary/268_2/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "B6", "C7", "F4", "E6", "D0", "D7", "D1", "D2", "B4", "D6", "D4", "D5", "F1", "D3", "B1"], "rows": ["F7", "F6", "F5", "F0", "B5"] diff --git a/keyboards/noxary/268_2_rgb/config.h b/keyboards/noxary/268_2_rgb/config.h deleted file mode 100644 index 7d8bba5f4b7..00000000000 --- a/keyboards/noxary/268_2_rgb/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 Rozakiin -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/noxary/268_2_rgb/keyboard.json b/keyboards/noxary/268_2_rgb/keyboard.json index 971e4450367..380a7727676 100644 --- a/keyboards/noxary/268_2_rgb/keyboard.json +++ b/keyboards/noxary/268_2_rgb/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "F7", "F1", "E6", "B2", "B1", "D6", "B4", "D7", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["F6", "F5", "F4", "F0", "B6"] diff --git a/keyboards/noxary/280/config.h b/keyboards/noxary/280/config.h deleted file mode 100644 index b5b661bef2a..00000000000 --- a/keyboards/noxary/280/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/noxary/280/keyboard.json b/keyboards/noxary/280/keyboard.json index f4b77260a57..17acb96cdf4 100644 --- a/keyboards/noxary/280/keyboard.json +++ b/keyboards/noxary/280/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "C7", "C6", "B6", "B5", "B4", "D7", "B0", "B3"], "rows": ["F0", "E6", "D6", "D4", "F6", "F5", "F4", "F1", "B2", "D3", "D2", "D1"] diff --git a/keyboards/noxary/378/config.h b/keyboards/noxary/378/config.h deleted file mode 100644 index f608132b5af..00000000000 --- a/keyboards/noxary/378/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Álvaro "Gondolindrim" Volpato - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/noxary/378/keyboard.json b/keyboards/noxary/378/keyboard.json index 09c5d39b048..3502604d6cb 100644 --- a/keyboards/noxary/378/keyboard.json +++ b/keyboards/noxary/378/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A7", "A3", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A2", "A1", "A0", "F1", "F0", "C14", "C15"], "rows": ["A10", "B11", "A4", "A5", "A6"] diff --git a/keyboards/noxary/valhalla/config.h b/keyboards/noxary/valhalla/config.h deleted file mode 100644 index f608132b5af..00000000000 --- a/keyboards/noxary/valhalla/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Álvaro "Gondolindrim" Volpato - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/noxary/valhalla/keyboard.json b/keyboards/noxary/valhalla/keyboard.json index 9cf12969c18..3bc3d80a340 100644 --- a/keyboards/noxary/valhalla/keyboard.json +++ b/keyboards/noxary/valhalla/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B12", "B11", "B10", "B2", "B1", "B0", "A10", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15"], "rows": ["A8", "A9", "B13", "B14", "B15"] diff --git a/keyboards/noxary/vulcan/config.h b/keyboards/noxary/vulcan/config.h deleted file mode 100644 index 50001e978cc..00000000000 --- a/keyboards/noxary/vulcan/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Ryota Goto - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/noxary/vulcan/keyboard.json b/keyboards/noxary/vulcan/keyboard.json index 8ae658f68e1..821cb000b59 100644 --- a/keyboards/noxary/vulcan/keyboard.json +++ b/keyboards/noxary/vulcan/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3"], "rows": ["D1", "D0", "D2", "F0", "F1"] diff --git a/keyboards/noxary/x268/config.h b/keyboards/noxary/x268/config.h deleted file mode 100644 index 98d8ea885ec..00000000000 --- a/keyboards/noxary/x268/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Rozakiin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/noxary/x268/keyboard.json b/keyboards/noxary/x268/keyboard.json index 675cc0b1a39..f5a991deff5 100644 --- a/keyboards/noxary/x268/keyboard.json +++ b/keyboards/noxary/x268/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "B6", "C7", "F4", "E6", "B2", "D6", "D0", "D1", "D7", "D4", "D5", "D3", "F1", "D2", "B1"], "rows": ["F7", "F6", "F5", "F0", "B4"] diff --git a/keyboards/numatreus/config.h b/keyboards/numatreus/config.h index 46a94d10c09..69d1cb1f1ad 100644 --- a/keyboards/numatreus/config.h +++ b/keyboards/numatreus/config.h @@ -14,11 +14,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #if defined(RGBLIGHT_ENABLE) // USB_MAX_POWER_CONSUMPTION value for stonehenge30 keyboard // 120 RGBoff, OLEDoff diff --git a/keyboards/numatreus/keyboard.json b/keyboards/numatreus/keyboard.json index cfb612a5416..3120b48f55d 100644 --- a/keyboards/numatreus/keyboard.json +++ b/keyboards/numatreus/keyboard.json @@ -15,6 +15,12 @@ "nkro": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "D2", "D1", "D0", "D4"], "rows": ["C6", "D7", "E6", "B4"] From 7baaac9531c2806e38d8c9e2e0357b3eadbf2a7f Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 22 May 2024 13:41:34 -0700 Subject: [PATCH 035/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: K, Part 1 (#23768) Affects: - `kabedon/kabedon98e` - `kagizaraya/chidori` - `kagizaraya/halberd` - `kagizaraya/miniaxe` - `kagizaraya/scythe` - `kakunpc/angel17/alpha` - `kakunpc/angel17/rev1` - `kakunpc/angel64/alpha` - `kakunpc/angel64/rev1` - `kakunpc/business_card/alpha` - `kakunpc/business_card/beta` - `kakunpc/choc_taro` - `kakunpc/rabbit_capture_plan` - `kakunpc/suihankey/alpha` - `kakunpc/suihankey/rev1` - `kakunpc/suihankey/split/alpha` - `kakunpc/suihankey/split/rev1` - `kakunpc/thedogkeyboard` - `kapcave/arya` - `kapcave/gskt00` - `kapcave/paladin64` - `kapl/rev1` - `kb58` - `kb_elmo/aek2_usb` - `kb_elmo/m0110a_usb` - `kb_elmo/m0116_usb` - `kbdclack/kaishi65` - `kbdfans/bella/soldered` - `kbdfans/bounce/pad` - `kbdfans/jm60` - `kbdfans/kbd19x` - `kbdfans/kbd4x` - `kbdfans/kbd66` - `kbdfans/kbd67/hotswap` - `kbdfans/kbd67/mkii_soldered` - `kbdfans/kbd6x` - `kbdfans/kbd75/rev1` - `kbdfans/kbd75/rev2` - `kbdfans/kbd8x` - `kbdfans/kbd8x_mk2` - `kbdfans/kbdpad/mk2` - `kbdfans/maja_soldered` - `kbdfans/niu_mini` - `kbdfans/phaseone` - `kbdmania/kmac` - `kbdmania/kmac_pad` - `kc60` --- keyboards/kabedon/kabedon98e/config.h | 5 --- keyboards/kabedon/kabedon98e/keyboard.json | 6 +++ keyboards/kagizaraya/chidori/config.h | 5 --- keyboards/kagizaraya/chidori/keyboard.json | 6 +++ keyboards/kagizaraya/halberd/config.h | 38 ------------------ keyboards/kagizaraya/halberd/keyboard.json | 6 +++ keyboards/kagizaraya/miniaxe/config.h | 5 --- keyboards/kagizaraya/miniaxe/keyboard.json | 6 +++ keyboards/kagizaraya/scythe/config.h | 5 --- keyboards/kagizaraya/scythe/keyboard.json | 6 +++ keyboards/kakunpc/angel17/alpha/config.h | 39 ------------------ keyboards/kakunpc/angel17/alpha/keyboard.json | 6 +++ keyboards/kakunpc/angel17/rev1/config.h | 39 ------------------ keyboards/kakunpc/angel17/rev1/keyboard.json | 6 +++ keyboards/kakunpc/angel64/alpha/config.h | 5 --- keyboards/kakunpc/angel64/alpha/keyboard.json | 6 +++ keyboards/kakunpc/angel64/rev1/config.h | 5 --- keyboards/kakunpc/angel64/rev1/keyboard.json | 6 +++ .../kakunpc/business_card/alpha/config.h | 39 ------------------ .../kakunpc/business_card/alpha/keyboard.json | 6 +++ keyboards/kakunpc/business_card/beta/config.h | 39 ------------------ .../kakunpc/business_card/beta/keyboard.json | 6 +++ keyboards/kakunpc/choc_taro/config.h | 5 --- keyboards/kakunpc/choc_taro/keyboard.json | 6 +++ .../kakunpc/rabbit_capture_plan/config.h | 39 ------------------ .../kakunpc/rabbit_capture_plan/keyboard.json | 6 +++ keyboards/kakunpc/suihankey/alpha/config.h | 39 ------------------ .../kakunpc/suihankey/alpha/keyboard.json | 6 +++ keyboards/kakunpc/suihankey/rev1/config.h | 39 ------------------ .../kakunpc/suihankey/rev1/keyboard.json | 6 +++ .../kakunpc/suihankey/split/alpha/config.h | 5 --- .../suihankey/split/alpha/keyboard.json | 6 +++ .../kakunpc/suihankey/split/rev1/config.h | 5 --- .../suihankey/split/rev1/keyboard.json | 6 +++ keyboards/kakunpc/thedogkeyboard/config.h | 5 --- .../kakunpc/thedogkeyboard/keyboard.json | 6 +++ keyboards/kapcave/arya/config.h | 39 ------------------ keyboards/kapcave/arya/keyboard.json | 6 ++- keyboards/kapcave/gskt00/config.h | 25 ------------ keyboards/kapcave/gskt00/keyboard.json | 6 +++ keyboards/kapcave/paladin64/config.h | 6 --- keyboards/kapcave/paladin64/keyboard.json | 6 +++ keyboards/kapl/rev1/config.h | 5 --- keyboards/kapl/rev1/keyboard.json | 6 +++ keyboards/kb58/config.h | 39 ------------------ keyboards/kb58/keyboard.json | 6 +++ keyboards/kb_elmo/aek2_usb/config.h | 5 --- keyboards/kb_elmo/aek2_usb/keyboard.json | 6 +++ keyboards/kb_elmo/m0110a_usb/config.h | 23 ----------- keyboards/kb_elmo/m0110a_usb/keyboard.json | 6 +++ keyboards/kb_elmo/m0116_usb/config.h | 23 ----------- keyboards/kb_elmo/m0116_usb/keyboard.json | 6 +++ keyboards/kbdclack/kaishi65/config.h | 39 ------------------ keyboards/kbdclack/kaishi65/keyboard.json | 6 +++ keyboards/kbdfans/bella/soldered/config.h | 19 --------- .../kbdfans/bella/soldered/keyboard.json | 6 +++ keyboards/kbdfans/bounce/pad/config.h | 20 ---------- keyboards/kbdfans/bounce/pad/keyboard.json | 6 +++ keyboards/kbdfans/jm60/config.h | 39 ------------------ keyboards/kbdfans/jm60/keyboard.json | 6 +++ keyboards/kbdfans/kbd19x/config.h | 39 ------------------ keyboards/kbdfans/kbd19x/keyboard.json | 6 +++ keyboards/kbdfans/kbd4x/config.h | 39 ------------------ keyboards/kbdfans/kbd4x/keyboard.json | 6 +++ keyboards/kbdfans/kbd66/config.h | 39 ------------------ keyboards/kbdfans/kbd66/keyboard.json | 6 +++ keyboards/kbdfans/kbd67/hotswap/config.h | 39 ------------------ keyboards/kbdfans/kbd67/hotswap/keyboard.json | 6 +++ .../kbdfans/kbd67/mkii_soldered/config.h | 23 ----------- .../kbdfans/kbd67/mkii_soldered/keyboard.json | 6 +++ keyboards/kbdfans/kbd6x/config.h | 39 ------------------ keyboards/kbdfans/kbd6x/keyboard.json | 6 +++ keyboards/kbdfans/kbd75/config.h | 10 ----- keyboards/kbdfans/kbd75/rev1/keyboard.json | 6 +++ keyboards/kbdfans/kbd75/rev2/keyboard.json | 6 +++ keyboards/kbdfans/kbd8x/config.h | 29 -------------- keyboards/kbdfans/kbd8x/keyboard.json | 6 +++ keyboards/kbdfans/kbd8x_mk2/config.h | 39 ------------------ keyboards/kbdfans/kbd8x_mk2/keyboard.json | 6 +++ keyboards/kbdfans/kbdpad/mk2/config.h | 39 ------------------ keyboards/kbdfans/kbdpad/mk2/keyboard.json | 6 +++ keyboards/kbdfans/maja_soldered/config.h | 22 ---------- keyboards/kbdfans/maja_soldered/keyboard.json | 6 +++ keyboards/kbdfans/niu_mini/config.h | 40 ------------------- keyboards/kbdfans/niu_mini/keyboard.json | 6 +++ keyboards/kbdfans/phaseone/config.h | 5 --- keyboards/kbdfans/phaseone/keyboard.json | 6 +++ keyboards/kbdmania/kmac/config.h | 5 --- keyboards/kbdmania/kmac/keyboard.json | 6 +++ keyboards/kbdmania/kmac_pad/config.h | 5 --- keyboards/kbdmania/kmac_pad/keyboard.json | 6 +++ keyboards/kc60/config.h | 39 ------------------ keyboards/kc60/keyboard.json | 6 +++ 93 files changed, 281 insertions(+), 1095 deletions(-) delete mode 100644 keyboards/kagizaraya/halberd/config.h delete mode 100644 keyboards/kakunpc/angel17/alpha/config.h delete mode 100644 keyboards/kakunpc/angel17/rev1/config.h delete mode 100644 keyboards/kakunpc/business_card/alpha/config.h delete mode 100644 keyboards/kakunpc/business_card/beta/config.h delete mode 100644 keyboards/kakunpc/rabbit_capture_plan/config.h delete mode 100644 keyboards/kakunpc/suihankey/alpha/config.h delete mode 100644 keyboards/kakunpc/suihankey/rev1/config.h delete mode 100644 keyboards/kapcave/arya/config.h delete mode 100755 keyboards/kapcave/gskt00/config.h delete mode 100644 keyboards/kb58/config.h delete mode 100644 keyboards/kb_elmo/m0110a_usb/config.h delete mode 100644 keyboards/kb_elmo/m0116_usb/config.h delete mode 100644 keyboards/kbdclack/kaishi65/config.h delete mode 100755 keyboards/kbdfans/bella/soldered/config.h delete mode 100644 keyboards/kbdfans/bounce/pad/config.h delete mode 100644 keyboards/kbdfans/jm60/config.h delete mode 100644 keyboards/kbdfans/kbd19x/config.h delete mode 100644 keyboards/kbdfans/kbd4x/config.h delete mode 100644 keyboards/kbdfans/kbd66/config.h delete mode 100644 keyboards/kbdfans/kbd67/hotswap/config.h delete mode 100644 keyboards/kbdfans/kbd67/mkii_soldered/config.h delete mode 100644 keyboards/kbdfans/kbd6x/config.h delete mode 100644 keyboards/kbdfans/kbd75/config.h delete mode 100644 keyboards/kbdfans/kbd8x/config.h delete mode 100644 keyboards/kbdfans/kbd8x_mk2/config.h delete mode 100644 keyboards/kbdfans/kbdpad/mk2/config.h delete mode 100755 keyboards/kbdfans/maja_soldered/config.h delete mode 100644 keyboards/kbdfans/niu_mini/config.h delete mode 100644 keyboards/kc60/config.h diff --git a/keyboards/kabedon/kabedon98e/config.h b/keyboards/kabedon/kabedon98e/config.h index 8eb549c134d..e3c016bd7ce 100644 --- a/keyboards/kabedon/kabedon98e/config.h +++ b/keyboards/kabedon/kabedon98e/config.h @@ -19,8 +19,3 @@ #define WS2812_PWM_CHANNEL 1 #define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM3 #define WS2812_PWM_DMA_CHANNEL 3 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kabedon/kabedon98e/keyboard.json b/keyboards/kabedon/kabedon98e/keyboard.json index a08bfeb0aa4..beff70d5d9f 100644 --- a/keyboards/kabedon/kabedon98e/keyboard.json +++ b/keyboards/kabedon/kabedon98e/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A0", "B7", "B8", "B6", "A3", "A2", "A1", "B9", "A7", "A5", "A6"], "rows": ["A4", "B10", "B2", "B1", "B0", "B15", "B13", "B14", "B12", "A10", "A9", "A8"] diff --git a/keyboards/kagizaraya/chidori/config.h b/keyboards/kagizaraya/chidori/config.h index eb719e95049..12716026e51 100644 --- a/keyboards/kagizaraya/chidori/config.h +++ b/keyboards/kagizaraya/chidori/config.h @@ -22,11 +22,6 @@ along with this program. If not, see . #define MATRIX_ROWS 12 #define MATRIX_COLS 6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* key combination for magic key command */ /* defined by default; to change, uncomment and set to the combination you want */ #define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_LCTL))) diff --git a/keyboards/kagizaraya/chidori/keyboard.json b/keyboards/kagizaraya/chidori/keyboard.json index f1b064baba0..2f9066149d9 100644 --- a/keyboards/kagizaraya/chidori/keyboard.json +++ b/keyboards/kagizaraya/chidori/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kagizaraya/halberd/config.h b/keyboards/kagizaraya/halberd/config.h deleted file mode 100644 index aa3ac65cea9..00000000000 --- a/keyboards/kagizaraya/halberd/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 ENDO Katsuhiro - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kagizaraya/halberd/keyboard.json b/keyboards/kagizaraya/halberd/keyboard.json index ecaa267cbd3..c8c5b5e2146 100644 --- a/keyboards/kagizaraya/halberd/keyboard.json +++ b/keyboards/kagizaraya/halberd/keyboard.json @@ -40,6 +40,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "B4", "C7", "C6", "B6", "B5", "F7", "F6", "F5", "F4", "F1"], "rows": ["D6", "D4", "D5", "E6"] diff --git a/keyboards/kagizaraya/miniaxe/config.h b/keyboards/kagizaraya/miniaxe/config.h index 716fdf387a8..a0e31b0f1a2 100644 --- a/keyboards/kagizaraya/miniaxe/config.h +++ b/keyboards/kagizaraya/miniaxe/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kagizaraya/miniaxe/keyboard.json b/keyboards/kagizaraya/miniaxe/keyboard.json index fa9f4d79dfc..c1de30ea79b 100644 --- a/keyboards/kagizaraya/miniaxe/keyboard.json +++ b/keyboards/kagizaraya/miniaxe/keyboard.json @@ -42,6 +42,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["F1", "E6", "B0", "B2", "B3"], diff --git a/keyboards/kagizaraya/scythe/config.h b/keyboards/kagizaraya/scythe/config.h index 026950e1c70..e9f7198f44e 100644 --- a/keyboards/kagizaraya/scythe/config.h +++ b/keyboards/kagizaraya/scythe/config.h @@ -16,11 +16,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kagizaraya/scythe/keyboard.json b/keyboards/kagizaraya/scythe/keyboard.json index eeebbe85a62..36b9a5a2d6f 100644 --- a/keyboards/kagizaraya/scythe/keyboard.json +++ b/keyboards/kagizaraya/scythe/keyboard.json @@ -53,6 +53,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kakunpc/angel17/alpha/config.h b/keyboards/kakunpc/angel17/alpha/config.h deleted file mode 100644 index f79d8124759..00000000000 --- a/keyboards/kakunpc/angel17/alpha/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 kakunpc - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kakunpc/angel17/alpha/keyboard.json b/keyboards/kakunpc/angel17/alpha/keyboard.json index 425ac12f578..a29189aa641 100644 --- a/keyboards/kakunpc/angel17/alpha/keyboard.json +++ b/keyboards/kakunpc/angel17/alpha/keyboard.json @@ -11,6 +11,12 @@ "console": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_numpad_5x4": { "layout": [ diff --git a/keyboards/kakunpc/angel17/rev1/config.h b/keyboards/kakunpc/angel17/rev1/config.h deleted file mode 100644 index f79d8124759..00000000000 --- a/keyboards/kakunpc/angel17/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 kakunpc - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kakunpc/angel17/rev1/keyboard.json b/keyboards/kakunpc/angel17/rev1/keyboard.json index ef609ba2387..06ac5d8cca8 100644 --- a/keyboards/kakunpc/angel17/rev1/keyboard.json +++ b/keyboards/kakunpc/angel17/rev1/keyboard.json @@ -21,6 +21,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_numpad_5x4": { "layout": [ diff --git a/keyboards/kakunpc/angel64/alpha/config.h b/keyboards/kakunpc/angel64/alpha/config.h index 4d51ac0f1af..9821406e019 100644 --- a/keyboards/kakunpc/angel64/alpha/config.h +++ b/keyboards/kakunpc/angel64/alpha/config.h @@ -29,11 +29,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { D4, C6, D7, E6, B4, B5 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kakunpc/angel64/alpha/keyboard.json b/keyboards/kakunpc/angel64/alpha/keyboard.json index f00dd3b42bc..59528283384 100644 --- a/keyboards/kakunpc/angel64/alpha/keyboard.json +++ b/keyboards/kakunpc/angel64/alpha/keyboard.json @@ -39,6 +39,12 @@ "rgblight": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kakunpc/angel64/rev1/config.h b/keyboards/kakunpc/angel64/rev1/config.h index 4d51ac0f1af..9821406e019 100644 --- a/keyboards/kakunpc/angel64/rev1/config.h +++ b/keyboards/kakunpc/angel64/rev1/config.h @@ -29,11 +29,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { D4, C6, D7, E6, B4, B5 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kakunpc/angel64/rev1/keyboard.json b/keyboards/kakunpc/angel64/rev1/keyboard.json index eade3a5ec9d..9ed4904c686 100644 --- a/keyboards/kakunpc/angel64/rev1/keyboard.json +++ b/keyboards/kakunpc/angel64/rev1/keyboard.json @@ -39,6 +39,12 @@ "rgblight": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/kakunpc/business_card/alpha/config.h b/keyboards/kakunpc/business_card/alpha/config.h deleted file mode 100644 index f79d8124759..00000000000 --- a/keyboards/kakunpc/business_card/alpha/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 kakunpc - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kakunpc/business_card/alpha/keyboard.json b/keyboards/kakunpc/business_card/alpha/keyboard.json index 02c4604c446..17c42ebb31f 100644 --- a/keyboards/kakunpc/business_card/alpha/keyboard.json +++ b/keyboards/kakunpc/business_card/alpha/keyboard.json @@ -31,6 +31,12 @@ "rgblight": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kakunpc/business_card/beta/config.h b/keyboards/kakunpc/business_card/beta/config.h deleted file mode 100644 index f79d8124759..00000000000 --- a/keyboards/kakunpc/business_card/beta/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 kakunpc - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kakunpc/business_card/beta/keyboard.json b/keyboards/kakunpc/business_card/beta/keyboard.json index da18001a906..5b6a77f3580 100644 --- a/keyboards/kakunpc/business_card/beta/keyboard.json +++ b/keyboards/kakunpc/business_card/beta/keyboard.json @@ -31,6 +31,12 @@ "rgblight": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kakunpc/choc_taro/config.h b/keyboards/kakunpc/choc_taro/config.h index cbb2a934a0f..4a4fd2a72e8 100644 --- a/keyboards/kakunpc/choc_taro/config.h +++ b/keyboards/kakunpc/choc_taro/config.h @@ -34,11 +34,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3, B2, B6 } #define MATRIX_COL_PINS { D4, C6, D7, E6, B4 } -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kakunpc/choc_taro/keyboard.json b/keyboards/kakunpc/choc_taro/keyboard.json index b17e5e39206..8d8c615daf8 100644 --- a/keyboards/kakunpc/choc_taro/keyboard.json +++ b/keyboards/kakunpc/choc_taro/keyboard.json @@ -17,6 +17,12 @@ "console": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/kakunpc/rabbit_capture_plan/config.h b/keyboards/kakunpc/rabbit_capture_plan/config.h deleted file mode 100644 index 617b0deeb49..00000000000 --- a/keyboards/kakunpc/rabbit_capture_plan/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 kakunpc - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kakunpc/rabbit_capture_plan/keyboard.json b/keyboards/kakunpc/rabbit_capture_plan/keyboard.json index 7667e5e41b1..16364fb71fe 100644 --- a/keyboards/kakunpc/rabbit_capture_plan/keyboard.json +++ b/keyboards/kakunpc/rabbit_capture_plan/keyboard.json @@ -40,6 +40,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/kakunpc/suihankey/alpha/config.h b/keyboards/kakunpc/suihankey/alpha/config.h deleted file mode 100644 index f79d8124759..00000000000 --- a/keyboards/kakunpc/suihankey/alpha/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 kakunpc - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kakunpc/suihankey/alpha/keyboard.json b/keyboards/kakunpc/suihankey/alpha/keyboard.json index f76c56d746d..e90a61d87e7 100644 --- a/keyboards/kakunpc/suihankey/alpha/keyboard.json +++ b/keyboards/kakunpc/suihankey/alpha/keyboard.json @@ -43,6 +43,12 @@ "rgblight": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kakunpc/suihankey/rev1/config.h b/keyboards/kakunpc/suihankey/rev1/config.h deleted file mode 100644 index f79d8124759..00000000000 --- a/keyboards/kakunpc/suihankey/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 kakunpc - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kakunpc/suihankey/rev1/keyboard.json b/keyboards/kakunpc/suihankey/rev1/keyboard.json index 0e801b1963b..1c1da88cdb9 100644 --- a/keyboards/kakunpc/suihankey/rev1/keyboard.json +++ b/keyboards/kakunpc/suihankey/rev1/keyboard.json @@ -43,6 +43,12 @@ "rgblight": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kakunpc/suihankey/split/alpha/config.h b/keyboards/kakunpc/suihankey/split/alpha/config.h index a2f22644578..ebccdcca304 100644 --- a/keyboards/kakunpc/suihankey/split/alpha/config.h +++ b/keyboards/kakunpc/suihankey/split/alpha/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN D2 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kakunpc/suihankey/split/alpha/keyboard.json b/keyboards/kakunpc/suihankey/split/alpha/keyboard.json index 956ee3357c7..a46d202eeed 100644 --- a/keyboards/kakunpc/suihankey/split/alpha/keyboard.json +++ b/keyboards/kakunpc/suihankey/split/alpha/keyboard.json @@ -19,6 +19,12 @@ "extrakey": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT": "LAYOUT_split_3x5_3" }, diff --git a/keyboards/kakunpc/suihankey/split/rev1/config.h b/keyboards/kakunpc/suihankey/split/rev1/config.h index a2f22644578..ebccdcca304 100644 --- a/keyboards/kakunpc/suihankey/split/rev1/config.h +++ b/keyboards/kakunpc/suihankey/split/rev1/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN D2 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kakunpc/suihankey/split/rev1/keyboard.json b/keyboards/kakunpc/suihankey/split/rev1/keyboard.json index 0640e4e26a0..8f967d16c95 100644 --- a/keyboards/kakunpc/suihankey/split/rev1/keyboard.json +++ b/keyboards/kakunpc/suihankey/split/rev1/keyboard.json @@ -31,6 +31,12 @@ "extrakey": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT": "LAYOUT_split_3x5_3" }, diff --git a/keyboards/kakunpc/thedogkeyboard/config.h b/keyboards/kakunpc/thedogkeyboard/config.h index 30b7b606c08..132c1cccaea 100644 --- a/keyboards/kakunpc/thedogkeyboard/config.h +++ b/keyboards/kakunpc/thedogkeyboard/config.h @@ -35,11 +35,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3, B2, B6, B4, B5 } #define MATRIX_COL_PINS { D1, D0, D4, C6, D7, E6 } -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kakunpc/thedogkeyboard/keyboard.json b/keyboards/kakunpc/thedogkeyboard/keyboard.json index 185b4c4fe0a..f2c04565d1b 100644 --- a/keyboards/kakunpc/thedogkeyboard/keyboard.json +++ b/keyboards/kakunpc/thedogkeyboard/keyboard.json @@ -28,6 +28,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": [ "fullsize_ansi" ], diff --git a/keyboards/kapcave/arya/config.h b/keyboards/kapcave/arya/config.h deleted file mode 100644 index 6cd36572279..00000000000 --- a/keyboards/kapcave/arya/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 KapCave - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kapcave/arya/keyboard.json b/keyboards/kapcave/arya/keyboard.json index 9c08d91247e..986e9eec8b9 100644 --- a/keyboards/kapcave/arya/keyboard.json +++ b/keyboards/kapcave/arya/keyboard.json @@ -30,7 +30,11 @@ ] }, "qmk": { - "tap_keycode_delay": 25 + "tap_keycode_delay": 25, + "locking": { + "enabled": true, + "resync": true + } }, "processor": "STM32F072", "bootloader": "stm32-dfu", diff --git a/keyboards/kapcave/gskt00/config.h b/keyboards/kapcave/gskt00/config.h deleted file mode 100755 index dfeb9c44d16..00000000000 --- a/keyboards/kapcave/gskt00/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2021 KapCave - -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 . -*/ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - diff --git a/keyboards/kapcave/gskt00/keyboard.json b/keyboards/kapcave/gskt00/keyboard.json index 10fd2307e3b..0d2fd292c64 100644 --- a/keyboards/kapcave/gskt00/keyboard.json +++ b/keyboards/kapcave/gskt00/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "D7", "F5", "C7", "B4", "C6", "B6", "B5"], "rows": ["F1", "D1", "D2", "D4", "D6", "F7", "B0", "F4"] diff --git a/keyboards/kapcave/paladin64/config.h b/keyboards/kapcave/paladin64/config.h index 9d449cb0167..9fab1e066a9 100644 --- a/keyboards/kapcave/paladin64/config.h +++ b/keyboards/kapcave/paladin64/config.h @@ -71,9 +71,3 @@ along with this program. If not, see . #define PS2_INT_VECT INT2_vect #endif - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kapcave/paladin64/keyboard.json b/keyboards/kapcave/paladin64/keyboard.json index d03a98be529..6fdd64a5007 100644 --- a/keyboards/kapcave/paladin64/keyboard.json +++ b/keyboards/kapcave/paladin64/keyboard.json @@ -20,6 +20,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "F7", "F6", "F5", "F4", "F1", "F0", "D1"], "rows": ["C6", "B6", "B5", "B4", "D7", "D6", "B0", "D3"] diff --git a/keyboards/kapl/rev1/config.h b/keyboards/kapl/rev1/config.h index 8b9c2f14ee8..80db6dce607 100644 --- a/keyboards/kapl/rev1/config.h +++ b/keyboards/kapl/rev1/config.h @@ -4,8 +4,3 @@ /* Select hand configuration */ #define MASTER_LEFT - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kapl/rev1/keyboard.json b/keyboards/kapl/rev1/keyboard.json index 650702ba5fc..71e0678a422 100644 --- a/keyboards/kapl/rev1/keyboard.json +++ b/keyboards/kapl/rev1/keyboard.json @@ -78,6 +78,12 @@ "extrakey": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/kb58/config.h b/keyboards/kb58/config.h deleted file mode 100644 index da9f91c5f57..00000000000 --- a/keyboards/kb58/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 beanaccle - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kb58/keyboard.json b/keyboards/kb58/keyboard.json index 950bc51eaf0..70581c2d8ae 100644 --- a/keyboards/kb58/keyboard.json +++ b/keyboards/kb58/keyboard.json @@ -30,6 +30,12 @@ "mousekey": false, "extrakey": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kb_elmo/aek2_usb/config.h b/keyboards/kb_elmo/aek2_usb/config.h index 085db9791c7..604bca0284b 100644 --- a/keyboards/kb_elmo/aek2_usb/config.h +++ b/keyboards/kb_elmo/aek2_usb/config.h @@ -17,9 +17,4 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define LAYER_STATE_8BIT diff --git a/keyboards/kb_elmo/aek2_usb/keyboard.json b/keyboards/kb_elmo/aek2_usb/keyboard.json index 3ee3c521f73..038d980b7b6 100644 --- a/keyboards/kb_elmo/aek2_usb/keyboard.json +++ b/keyboards/kb_elmo/aek2_usb/keyboard.json @@ -28,6 +28,12 @@ "mousekey": false, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kb_elmo/m0110a_usb/config.h b/keyboards/kb_elmo/m0110a_usb/config.h deleted file mode 100644 index fd067c7fb73..00000000000 --- a/keyboards/kb_elmo/m0110a_usb/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 kb-elmo - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kb_elmo/m0110a_usb/keyboard.json b/keyboards/kb_elmo/m0110a_usb/keyboard.json index c106e35c301..a84772554c9 100644 --- a/keyboards/kb_elmo/m0110a_usb/keyboard.json +++ b/keyboards/kb_elmo/m0110a_usb/keyboard.json @@ -20,6 +20,12 @@ "mousekey": false, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kb_elmo/m0116_usb/config.h b/keyboards/kb_elmo/m0116_usb/config.h deleted file mode 100644 index fd067c7fb73..00000000000 --- a/keyboards/kb_elmo/m0116_usb/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 kb-elmo - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kb_elmo/m0116_usb/keyboard.json b/keyboards/kb_elmo/m0116_usb/keyboard.json index 7279dc3c861..db2b9640544 100644 --- a/keyboards/kb_elmo/m0116_usb/keyboard.json +++ b/keyboards/kb_elmo/m0116_usb/keyboard.json @@ -23,6 +23,12 @@ "mousekey": false, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kbdclack/kaishi65/config.h b/keyboards/kbdclack/kaishi65/config.h deleted file mode 100644 index 39765a5bf73..00000000000 --- a/keyboards/kbdclack/kaishi65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 KBDClack - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdclack/kaishi65/keyboard.json b/keyboards/kbdclack/kaishi65/keyboard.json index 573f2b8a3af..1f7509e53f9 100644 --- a/keyboards/kbdclack/kaishi65/keyboard.json +++ b/keyboards/kbdclack/kaishi65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D2", "D3"], "rows": ["D0", "D1", "B0", "F0", "F1"] diff --git a/keyboards/kbdfans/bella/soldered/config.h b/keyboards/kbdfans/bella/soldered/config.h deleted file mode 100755 index 0c6f580f59a..00000000000 --- a/keyboards/kbdfans/bella/soldered/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2020 dztech - * - * 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 . - */ -#pragma once - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kbdfans/bella/soldered/keyboard.json b/keyboards/kbdfans/bella/soldered/keyboard.json index 10e45f1cf70..31d8e9ffb7a 100644 --- a/keyboards/kbdfans/bella/soldered/keyboard.json +++ b/keyboards/kbdfans/bella/soldered/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5"], "rows": ["B0", "B1", "B2", "B3", "D1", "B6"] diff --git a/keyboards/kbdfans/bounce/pad/config.h b/keyboards/kbdfans/bounce/pad/config.h deleted file mode 100644 index 0aae477dc19..00000000000 --- a/keyboards/kbdfans/bounce/pad/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2022 DZTECH - * - * 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 . - */ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kbdfans/bounce/pad/keyboard.json b/keyboards/kbdfans/bounce/pad/keyboard.json index 0e4f2e9d85d..d95010954b9 100644 --- a/keyboards/kbdfans/bounce/pad/keyboard.json +++ b/keyboards/kbdfans/bounce/pad/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "D0", "C2"], "rows": ["C7", "B7", "B6", "B0", "B1", "B2"] diff --git a/keyboards/kbdfans/jm60/config.h b/keyboards/kbdfans/jm60/config.h deleted file mode 100644 index 4b007cf387e..00000000000 --- a/keyboards/kbdfans/jm60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdfans/jm60/keyboard.json b/keyboards/kbdfans/jm60/keyboard.json index 4b0f9609524..ffa205daa08 100644 --- a/keyboards/kbdfans/jm60/keyboard.json +++ b/keyboards/kbdfans/jm60/keyboard.json @@ -19,6 +19,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "bootloader": "custom", "processor": "STM32F103", "community_layouts": ["60_ansi"], diff --git a/keyboards/kbdfans/kbd19x/config.h b/keyboards/kbdfans/kbd19x/config.h deleted file mode 100644 index 99c25201ad6..00000000000 --- a/keyboards/kbdfans/kbd19x/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Jeff Shufelt @jshuf - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdfans/kbd19x/keyboard.json b/keyboards/kbdfans/kbd19x/keyboard.json index a8a71de3b65..080cf82d808 100644 --- a/keyboards/kbdfans/kbd19x/keyboard.json +++ b/keyboards/kbdfans/kbd19x/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "F1", "F4", "F5", "F6", "F7", "D7", "B4", "B5", "D0", "D1", "D2", "D3"], "rows": ["B7", "B3", "E6", "F0", "D5", "D4", "D6", "C7"] diff --git a/keyboards/kbdfans/kbd4x/config.h b/keyboards/kbdfans/kbd4x/config.h deleted file mode 100644 index e347de77599..00000000000 --- a/keyboards/kbdfans/kbd4x/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 sevenseacat - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdfans/kbd4x/keyboard.json b/keyboards/kbdfans/kbd4x/keyboard.json index a1dc8e3dd49..77abf71f28e 100644 --- a/keyboards/kbdfans/kbd4x/keyboard.json +++ b/keyboards/kbdfans/kbd4x/keyboard.json @@ -49,6 +49,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["ortho_4x12", "planck_mit"], "layouts": { "LAYOUT_planck_mit": { diff --git a/keyboards/kbdfans/kbd66/config.h b/keyboards/kbdfans/kbd66/config.h deleted file mode 100644 index 61533b79095..00000000000 --- a/keyboards/kbdfans/kbd66/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Alex Peters - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdfans/kbd66/keyboard.json b/keyboards/kbdfans/kbd66/keyboard.json index d95a80baa42..2b614442a0c 100644 --- a/keyboards/kbdfans/kbd66/keyboard.json +++ b/keyboards/kbdfans/kbd66/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "E2", "F5", "F6", "F4", "D3", "D2", "D5", "D0", "D1", "B4", "D7", "D6", "E6", "B3"], "rows": ["B0", "B1", "F0", "F1", "D4"] diff --git a/keyboards/kbdfans/kbd67/hotswap/config.h b/keyboards/kbdfans/kbd67/hotswap/config.h deleted file mode 100644 index b5b661bef2a..00000000000 --- a/keyboards/kbdfans/kbd67/hotswap/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdfans/kbd67/hotswap/keyboard.json b/keyboards/kbdfans/kbd67/hotswap/keyboard.json index 574633396cd..fb0c165d14f 100644 --- a/keyboards/kbdfans/kbd67/hotswap/keyboard.json +++ b/keyboards/kbdfans/kbd67/hotswap/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "F7", "F6", "F5", "F4", "F1", "E6", "D1", "D0", "D2", "D3", "D5", "D6", "D7", "C6"], "rows": ["B3", "B2", "B1", "B0", "D4"] diff --git a/keyboards/kbdfans/kbd67/mkii_soldered/config.h b/keyboards/kbdfans/kbd67/mkii_soldered/config.h deleted file mode 100644 index 8309a11eb8a..00000000000 --- a/keyboards/kbdfans/kbd67/mkii_soldered/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Ryota Goto - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kbdfans/kbd67/mkii_soldered/keyboard.json b/keyboards/kbdfans/kbd67/mkii_soldered/keyboard.json index 7a9d4f8444b..397f525f7ae 100644 --- a/keyboards/kbdfans/kbd67/mkii_soldered/keyboard.json +++ b/keyboards/kbdfans/kbd67/mkii_soldered/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5"], "rows": ["B3", "D0", "D1", "D2", "D3"] diff --git a/keyboards/kbdfans/kbd6x/config.h b/keyboards/kbdfans/kbd6x/config.h deleted file mode 100644 index d876570c808..00000000000 --- a/keyboards/kbdfans/kbd6x/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdfans/kbd6x/keyboard.json b/keyboards/kbdfans/kbd6x/keyboard.json index 85cfdf8388e..c2b9f28b633 100644 --- a/keyboards/kbdfans/kbd6x/keyboard.json +++ b/keyboards/kbdfans/kbd6x/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F4", "F1", "E6", "D0", "D1", "D2", "D3", "D5", "D6", "D7", "B4", "B5"], "rows": ["B3", "B2", "B1", "B0", "D4"] diff --git a/keyboards/kbdfans/kbd75/config.h b/keyboards/kbdfans/kbd75/config.h deleted file mode 100644 index 805f9ad0542..00000000000 --- a/keyboards/kbdfans/kbd75/config.h +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2017-2021 QMK -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kbdfans/kbd75/rev1/keyboard.json b/keyboards/kbdfans/kbd75/rev1/keyboard.json index 94f96988ffa..01429c8ebbe 100644 --- a/keyboards/kbdfans/kbd75/rev1/keyboard.json +++ b/keyboards/kbdfans/kbd75/rev1/keyboard.json @@ -52,6 +52,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_ansi_1u": "LAYOUT_75_ansi" }, diff --git a/keyboards/kbdfans/kbd75/rev2/keyboard.json b/keyboards/kbdfans/kbd75/rev2/keyboard.json index 9bfd69f7fdc..322eba661a1 100644 --- a/keyboards/kbdfans/kbd75/rev2/keyboard.json +++ b/keyboards/kbdfans/kbd75/rev2/keyboard.json @@ -52,6 +52,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_ansi_1u": "LAYOUT_75_ansi" }, diff --git a/keyboards/kbdfans/kbd8x/config.h b/keyboards/kbdfans/kbd8x/config.h deleted file mode 100644 index 32ab8df8375..00000000000 --- a/keyboards/kbdfans/kbd8x/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2017 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT diff --git a/keyboards/kbdfans/kbd8x/keyboard.json b/keyboards/kbdfans/kbd8x/keyboard.json index f98f12d8b1e..fe0106165d8 100644 --- a/keyboards/kbdfans/kbd8x/keyboard.json +++ b/keyboards/kbdfans/kbd8x/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "F7", "F6", "F5", "D5", "D3", "D2", "C7", "C6", "B5", "F4", "F1", "B4", "B0"], "rows": ["E6", "B7", "D4", "F0", "D6", "D7"] diff --git a/keyboards/kbdfans/kbd8x_mk2/config.h b/keyboards/kbdfans/kbd8x_mk2/config.h deleted file mode 100644 index 50001e978cc..00000000000 --- a/keyboards/kbdfans/kbd8x_mk2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Ryota Goto - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdfans/kbd8x_mk2/keyboard.json b/keyboards/kbdfans/kbd8x_mk2/keyboard.json index 1bded44b6c7..b5d1ee6a258 100644 --- a/keyboards/kbdfans/kbd8x_mk2/keyboard.json +++ b/keyboards/kbdfans/kbd8x_mk2/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "B0", "B1"], "rows": ["C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"] diff --git a/keyboards/kbdfans/kbdpad/mk2/config.h b/keyboards/kbdfans/kbdpad/mk2/config.h deleted file mode 100644 index 50001e978cc..00000000000 --- a/keyboards/kbdfans/kbdpad/mk2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Ryota Goto - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdfans/kbdpad/mk2/keyboard.json b/keyboards/kbdfans/kbdpad/mk2/keyboard.json index 7c174a62a25..c4af51f0344 100644 --- a/keyboards/kbdfans/kbdpad/mk2/keyboard.json +++ b/keyboards/kbdfans/kbdpad/mk2/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C4", "C5", "B3", "B2"], "rows": ["D3", "D1", "D2", "C6", "C7", "B6"] diff --git a/keyboards/kbdfans/maja_soldered/config.h b/keyboards/kbdfans/maja_soldered/config.h deleted file mode 100755 index fef6bf1e5ba..00000000000 --- a/keyboards/kbdfans/maja_soldered/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 dztech kbdfans - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kbdfans/maja_soldered/keyboard.json b/keyboards/kbdfans/maja_soldered/keyboard.json index f9ae338ae73..bf73f04d8a4 100644 --- a/keyboards/kbdfans/maja_soldered/keyboard.json +++ b/keyboards/kbdfans/maja_soldered/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "F7", "F6", "F5", "F4", "F1", "B0", "B1", "B2", "B3", "B7", "D2", "D3", "D5"], "rows": ["F0", "B6", "D6", "B4", "D7"] diff --git a/keyboards/kbdfans/niu_mini/config.h b/keyboards/kbdfans/niu_mini/config.h deleted file mode 100644 index 69c6b57a35b..00000000000 --- a/keyboards/kbdfans/niu_mini/config.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kbdfans/niu_mini/keyboard.json b/keyboards/kbdfans/niu_mini/keyboard.json index d4918e7713e..4c7d6f6d507 100644 --- a/keyboards/kbdfans/niu_mini/keyboard.json +++ b/keyboards/kbdfans/niu_mini/keyboard.json @@ -48,6 +48,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["ortho_4x12", "planck_mit"], "layout_aliases": { "LAYOUT": "LAYOUT_ortho_4x12" diff --git a/keyboards/kbdfans/phaseone/config.h b/keyboards/kbdfans/phaseone/config.h index cc19b0f44fc..5eeb7a249eb 100644 --- a/keyboards/kbdfans/phaseone/config.h +++ b/keyboards/kbdfans/phaseone/config.h @@ -16,9 +16,4 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 6) diff --git a/keyboards/kbdfans/phaseone/keyboard.json b/keyboards/kbdfans/phaseone/keyboard.json index 517dafc96b3..fcc6bdc7b3d 100644 --- a/keyboards/kbdfans/phaseone/keyboard.json +++ b/keyboards/kbdfans/phaseone/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "E6", "B7", "D0", "D1", "D2", "D3", "D5"], "rows": ["B0", "B1", "B2", "B3", "B4"] diff --git a/keyboards/kbdmania/kmac/config.h b/keyboards/kbdmania/kmac/config.h index dd12560fb6c..97357827093 100644 --- a/keyboards/kbdmania/kmac/config.h +++ b/keyboards/kbdmania/kmac/config.h @@ -32,11 +32,6 @@ along with this program. If not, see . #define MATRIX_COL_PINS \ { B6, C6, C7, F1, F0, B5, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN } -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kbdmania/kmac/keyboard.json b/keyboards/kbdmania/kmac/keyboard.json index c372cb1fc81..b0f8be910d8 100644 --- a/keyboards/kbdmania/kmac/keyboard.json +++ b/keyboards/kbdmania/kmac/keyboard.json @@ -25,6 +25,12 @@ "nkro": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["tkl_ansi"], "layouts": { "LAYOUT_tkl_ansi": { diff --git a/keyboards/kbdmania/kmac_pad/config.h b/keyboards/kbdmania/kmac_pad/config.h index ee27565dcef..26e800f3c80 100644 --- a/keyboards/kbdmania/kmac_pad/config.h +++ b/keyboards/kbdmania/kmac_pad/config.h @@ -30,11 +30,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { E2, D0, D1, D2, D3, D5 } #define MATRIX_COL_PINS { C7, C6, B6, B5 } -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kbdmania/kmac_pad/keyboard.json b/keyboards/kbdmania/kmac_pad/keyboard.json index 8dbb196f3e9..ea584f772c3 100644 --- a/keyboards/kbdmania/kmac_pad/keyboard.json +++ b/keyboards/kbdmania/kmac_pad/keyboard.json @@ -15,6 +15,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kc60/config.h b/keyboards/kc60/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/kc60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kc60/keyboard.json b/keyboards/kc60/keyboard.json index e2c408e0c4c..2b2f9c49510 100644 --- a/keyboards/kc60/keyboard.json +++ b/keyboards/kc60/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3"], "rows": ["D0", "D1", "F6", "F7", "D5"] From 199f01cc5760055dfbdc89f426bf5a8f9b49bfb7 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 22 May 2024 13:49:15 -0700 Subject: [PATCH 036/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: M, Part 1 (#23772) Affects: - `m10a` - `machine_industries/m4_a` - `magic_force/mf34` - `majistic` - `makenova/omega/omega4` - `makrosu` - `manta60` - `maple_computing/christmas_tree/v2017` - `maple_computing/ivy/rev1` - `maple_computing/launchpad/rev1` - `maple_computing/minidox/rev1` - `maple_computing/the_ruler` - `marksard/leftover30` - `marksard/treadstone48/rev1` - `marksard/treadstone48/rev2` - `masterworks/classy_tkl/rev_a` - `maxipad` - `maxr1998/phoebe` - `mc_76k` - `mechkeys/acr60` - `mechkeys/alu84` - `mechkeys/espectro` - `mechkeys/mechmini/v2` - `mechkeys/mk60` - `mechlovin/hannah910/rev1` - `mechlovin/hannah910/rev2` - `mechlovin/hannah910/rev3` - `mechlovin/jay60` - `mechlovin/tmkl` - `mechwild/bde/lefty` - `mechwild/bde/rev2` - `mechwild/bde/righty` - `mechwild/mercutio` - `mechwild/mokulua/mirrored` - `mechwild/mokulua/standard` - `mechwild/murphpad` - `mechwild/obe` - `mechwild/puckbuddy` - `meletrix/zoom98` - `melgeek/mj6xy/rev3` - `meme` - `meow65` - `mesa/mesa_tkl` - `meson` - `mikeneko65` - `millipad` - `mini_elixivy` - `mini_ten_key_plus` - `minimon/index_tab` - `mint60` - `misonoworks/karina` - `miuni32` - `mixi` --- keyboards/m10a/config.h | 40 ------------------- keyboards/m10a/keyboard.json | 6 +++ keyboards/machine_industries/m4_a/config.h | 25 ------------ .../machine_industries/m4_a/keyboard.json | 6 +++ keyboards/magic_force/mf34/config.h | 21 ---------- keyboards/magic_force/mf34/keyboard.json | 6 +++ keyboards/majistic/config.h | 24 ----------- keyboards/majistic/keyboard.json | 6 +++ keyboards/makenova/omega/omega4/config.h | 9 ----- keyboards/makenova/omega/omega4/keyboard.json | 6 +++ keyboards/makrosu/config.h | 23 ----------- keyboards/makrosu/keyboard.json | 6 ++- keyboards/manta60/config.h | 5 --- keyboards/manta60/keyboard.json | 6 +++ .../maple_computing/christmas_tree/config.h | 23 ----------- .../christmas_tree/v2017/keyboard.json | 6 +++ keyboards/maple_computing/ivy/config.h | 38 ------------------ .../maple_computing/ivy/rev1/keyboard.json | 6 +++ keyboards/maple_computing/launchpad/config.h | 39 ------------------ .../launchpad/rev1/keyboard.json | 6 +++ keyboards/maple_computing/minidox/config.h | 34 ---------------- .../minidox/rev1/keyboard.json | 6 +++ keyboards/maple_computing/the_ruler/config.h | 39 ------------------ .../maple_computing/the_ruler/keyboard.json | 6 +++ keyboards/marksard/leftover30/config.h | 39 ------------------ keyboards/marksard/leftover30/keyboard.json | 6 +++ keyboards/marksard/treadstone48/rev1/config.h | 5 --- .../marksard/treadstone48/rev1/keyboard.json | 6 +++ keyboards/marksard/treadstone48/rev2/config.h | 39 ------------------ .../marksard/treadstone48/rev2/keyboard.json | 6 +++ .../masterworks/classy_tkl/rev_a/config.h | 23 ----------- .../classy_tkl/rev_a/keyboard.json | 6 +++ keyboards/maxipad/config.h | 37 ----------------- keyboards/maxipad/info.json | 6 +++ keyboards/maxr1998/phoebe/config.h | 6 --- keyboards/maxr1998/phoebe/keyboard.json | 6 +++ keyboards/mc_76k/config.h | 23 ----------- keyboards/mc_76k/keyboard.json | 6 +++ keyboards/mechkeys/acr60/config.h | 23 ----------- keyboards/mechkeys/acr60/keyboard.json | 6 +++ keyboards/mechkeys/alu84/config.h | 23 ----------- keyboards/mechkeys/alu84/keyboard.json | 6 +++ keyboards/mechkeys/espectro/config.h | 23 ----------- keyboards/mechkeys/espectro/keyboard.json | 6 +++ keyboards/mechkeys/mechmini/v2/config.h | 22 ---------- keyboards/mechkeys/mechmini/v2/keyboard.json | 6 +++ keyboards/mechkeys/mk60/config.h | 39 ------------------ keyboards/mechkeys/mk60/keyboard.json | 6 +++ keyboards/mechlovin/hannah910/config.h | 39 ------------------ .../mechlovin/hannah910/rev1/keyboard.json | 6 +++ .../mechlovin/hannah910/rev2/keyboard.json | 6 +++ .../mechlovin/hannah910/rev3/keyboard.json | 6 +++ keyboards/mechlovin/jay60/config.h | 39 ------------------ keyboards/mechlovin/jay60/keyboard.json | 6 +++ keyboards/mechlovin/tmkl/config.h | 21 ---------- keyboards/mechlovin/tmkl/keyboard.json | 6 +++ keyboards/mechwild/bde/config.h | 25 ------------ keyboards/mechwild/bde/lefty/keyboard.json | 6 +++ keyboards/mechwild/bde/rev2/keyboard.json | 6 +++ keyboards/mechwild/bde/righty/keyboard.json | 6 +++ keyboards/mechwild/mercutio/config.h | 6 --- keyboards/mechwild/mercutio/keyboard.json | 6 ++- keyboards/mechwild/mokulua/mirrored/config.h | 5 --- .../mechwild/mokulua/mirrored/keyboard.json | 6 ++- keyboards/mechwild/mokulua/standard/config.h | 5 --- .../mechwild/mokulua/standard/keyboard.json | 6 ++- keyboards/mechwild/murphpad/config.h | 6 --- keyboards/mechwild/murphpad/keyboard.json | 6 ++- keyboards/mechwild/obe/config.h | 39 ------------------ keyboards/mechwild/obe/info.json | 6 ++- keyboards/mechwild/puckbuddy/config.h | 5 --- keyboards/mechwild/puckbuddy/keyboard.json | 6 ++- keyboards/meletrix/zoom98/config.h | 24 ----------- keyboards/meletrix/zoom98/keyboard.json | 6 +++ keyboards/melgeek/mj6xy/config.h | 22 ---------- keyboards/melgeek/mj6xy/rev3/keyboard.json | 6 +++ keyboards/meme/config.h | 39 ------------------ keyboards/meme/keyboard.json | 6 +++ keyboards/meow65/config.h | 39 ------------------ keyboards/meow65/keyboard.json | 6 +++ keyboards/mesa/mesa_tkl/config.h | 23 ----------- keyboards/mesa/mesa_tkl/keyboard.json | 6 +++ keyboards/meson/config.h | 5 --- keyboards/meson/keyboard.json | 6 +++ keyboards/mikeneko65/config.h | 39 ------------------ keyboards/mikeneko65/keyboard.json | 6 +++ keyboards/millipad/config.h | 20 ---------- keyboards/millipad/keyboard.json | 6 +++ keyboards/mini_elixivy/config.h | 39 ------------------ keyboards/mini_elixivy/keyboard.json | 6 +++ keyboards/mini_ten_key_plus/config.h | 39 ------------------ keyboards/mini_ten_key_plus/keyboard.json | 6 +++ keyboards/minimon/index_tab/config.h | 22 ---------- keyboards/minimon/index_tab/keyboard.json | 6 +++ keyboards/mint60/config.h | 39 ------------------ keyboards/mint60/keyboard.json | 6 +++ keyboards/misonoworks/karina/config.h | 3 -- keyboards/misonoworks/karina/keyboard.json | 6 +++ keyboards/miuni32/config.h | 39 ------------------ keyboards/miuni32/keyboard.json | 6 +++ keyboards/mixi/config.h | 6 --- keyboards/mixi/keyboard.json | 6 +++ 102 files changed, 311 insertions(+), 1217 deletions(-) delete mode 100644 keyboards/m10a/config.h delete mode 100644 keyboards/machine_industries/m4_a/config.h delete mode 100644 keyboards/magic_force/mf34/config.h delete mode 100644 keyboards/majistic/config.h delete mode 100644 keyboards/makenova/omega/omega4/config.h delete mode 100644 keyboards/makrosu/config.h delete mode 100644 keyboards/maple_computing/christmas_tree/config.h delete mode 100644 keyboards/maple_computing/ivy/config.h delete mode 100644 keyboards/maple_computing/launchpad/config.h delete mode 100644 keyboards/maple_computing/minidox/config.h delete mode 100644 keyboards/maple_computing/the_ruler/config.h delete mode 100644 keyboards/marksard/leftover30/config.h delete mode 100644 keyboards/marksard/treadstone48/rev2/config.h delete mode 100644 keyboards/masterworks/classy_tkl/rev_a/config.h delete mode 100644 keyboards/maxipad/config.h delete mode 100644 keyboards/mc_76k/config.h delete mode 100644 keyboards/mechkeys/acr60/config.h delete mode 100755 keyboards/mechkeys/alu84/config.h delete mode 100755 keyboards/mechkeys/espectro/config.h delete mode 100755 keyboards/mechkeys/mechmini/v2/config.h delete mode 100644 keyboards/mechkeys/mk60/config.h delete mode 100644 keyboards/mechlovin/hannah910/config.h delete mode 100644 keyboards/mechlovin/jay60/config.h delete mode 100644 keyboards/mechlovin/tmkl/config.h delete mode 100644 keyboards/mechwild/bde/config.h delete mode 100644 keyboards/mechwild/obe/config.h delete mode 100644 keyboards/meletrix/zoom98/config.h delete mode 100755 keyboards/melgeek/mj6xy/config.h delete mode 100644 keyboards/meme/config.h delete mode 100644 keyboards/meow65/config.h delete mode 100644 keyboards/mesa/mesa_tkl/config.h delete mode 100644 keyboards/mikeneko65/config.h delete mode 100644 keyboards/millipad/config.h delete mode 100644 keyboards/mini_elixivy/config.h delete mode 100644 keyboards/mini_ten_key_plus/config.h delete mode 100644 keyboards/minimon/index_tab/config.h delete mode 100644 keyboards/mint60/config.h delete mode 100644 keyboards/miuni32/config.h diff --git a/keyboards/m10a/config.h b/keyboards/m10a/config.h deleted file mode 100644 index 6c9b63c5ee6..00000000000 --- a/keyboards/m10a/config.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Copyright - * 2017 Josh Black (@consolenaut) - * 2021 QMK - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/m10a/keyboard.json b/keyboards/m10a/keyboard.json index 7f2c7c90b7c..544d2535ed5 100644 --- a/keyboards/m10a/keyboard.json +++ b/keyboards/m10a/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F1", "F0"], "rows": ["B6", "F7", "F6", "D6"] diff --git a/keyboards/machine_industries/m4_a/config.h b/keyboards/machine_industries/m4_a/config.h deleted file mode 100644 index da001ee1da7..00000000000 --- a/keyboards/machine_industries/m4_a/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2022 naut -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/machine_industries/m4_a/keyboard.json b/keyboards/machine_industries/m4_a/keyboard.json index bf89d742393..04510f92e12 100644 --- a/keyboards/machine_industries/m4_a/keyboard.json +++ b/keyboards/machine_industries/m4_a/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7"], "rows": ["C7", "C6"] diff --git a/keyboards/magic_force/mf34/config.h b/keyboards/magic_force/mf34/config.h deleted file mode 100644 index 1cb16c5f86d..00000000000 --- a/keyboards/magic_force/mf34/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/magic_force/mf34/keyboard.json b/keyboards/magic_force/mf34/keyboard.json index 50ad33408f7..7178d0405e4 100644 --- a/keyboards/magic_force/mf34/keyboard.json +++ b/keyboards/magic_force/mf34/keyboard.json @@ -73,6 +73,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A2", "A1", "B14", "B4", "B5", "B6", "B7"], "rows": ["A7", "B0", "B1", "B2", "B10", "B11"] diff --git a/keyboards/majistic/config.h b/keyboards/majistic/config.h deleted file mode 100644 index c896b124782..00000000000 --- a/keyboards/majistic/config.h +++ /dev/null @@ -1,24 +0,0 @@ - -/* -Copyright 2020 yossiyossy - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/majistic/keyboard.json b/keyboards/majistic/keyboard.json index 258df08d883..2a93a99e869 100644 --- a/keyboards/majistic/keyboard.json +++ b/keyboards/majistic/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5", "F4", "F5"], "rows": ["F6", "F7", "B1", "B3", "B2"] diff --git a/keyboards/makenova/omega/omega4/config.h b/keyboards/makenova/omega/omega4/config.h deleted file mode 100644 index 6902952ede2..00000000000 --- a/keyboards/makenova/omega/omega4/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2022 makenova (@makenova) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/makenova/omega/omega4/keyboard.json b/keyboards/makenova/omega/omega4/keyboard.json index b5f3a96cb5f..41161685790 100644 --- a/keyboards/makenova/omega/omega4/keyboard.json +++ b/keyboards/makenova/omega/omega4/keyboard.json @@ -10,6 +10,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "F4", "B5", "F5", "F6", "B6", "B2", "B3", "B1", "F7"], "rows": ["C6", "D7", "E6", "B4"] diff --git a/keyboards/makrosu/config.h b/keyboards/makrosu/config.h deleted file mode 100644 index 2977cd9d40a..00000000000 --- a/keyboards/makrosu/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Valdydesu_ - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/makrosu/keyboard.json b/keyboards/makrosu/keyboard.json index 99b425d81a8..ec6b8a3bfd9 100644 --- a/keyboards/makrosu/keyboard.json +++ b/keyboards/makrosu/keyboard.json @@ -28,7 +28,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "bootmagic": { "matrix": [0, 5] diff --git a/keyboards/manta60/config.h b/keyboards/manta60/config.h index cd3521fd657..3f0a8cf4e13 100644 --- a/keyboards/manta60/config.h +++ b/keyboards/manta60/config.h @@ -33,11 +33,6 @@ along with this program. If not, see . # define USB_MAX_POWER_CONSUMPTION 100 #endif -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/manta60/keyboard.json b/keyboards/manta60/keyboard.json index 8482970b9b2..dbeb6628a54 100644 --- a/keyboards/manta60/keyboard.json +++ b/keyboards/manta60/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/maple_computing/christmas_tree/config.h b/keyboards/maple_computing/christmas_tree/config.h deleted file mode 100644 index 5070f051560..00000000000 --- a/keyboards/maple_computing/christmas_tree/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/maple_computing/christmas_tree/v2017/keyboard.json b/keyboards/maple_computing/christmas_tree/v2017/keyboard.json index dd54b78f5d4..604b1b382a2 100644 --- a/keyboards/maple_computing/christmas_tree/v2017/keyboard.json +++ b/keyboards/maple_computing/christmas_tree/v2017/keyboard.json @@ -19,6 +19,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1"], "rows": ["D3", "F4", "D0", "F6", "F5", "D4"] diff --git a/keyboards/maple_computing/ivy/config.h b/keyboards/maple_computing/ivy/config.h deleted file mode 100644 index 49b31f1edff..00000000000 --- a/keyboards/maple_computing/ivy/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/maple_computing/ivy/rev1/keyboard.json b/keyboards/maple_computing/ivy/rev1/keyboard.json index a4c5cdcce3e..aac35a5dccf 100644 --- a/keyboards/maple_computing/ivy/rev1/keyboard.json +++ b/keyboards/maple_computing/ivy/rev1/keyboard.json @@ -25,6 +25,12 @@ "extrakey": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/maple_computing/launchpad/config.h b/keyboards/maple_computing/launchpad/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/maple_computing/launchpad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/maple_computing/launchpad/rev1/keyboard.json b/keyboards/maple_computing/launchpad/rev1/keyboard.json index 7308c496702..8c75561179b 100644 --- a/keyboards/maple_computing/launchpad/rev1/keyboard.json +++ b/keyboards/maple_computing/launchpad/rev1/keyboard.json @@ -39,6 +39,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/maple_computing/minidox/config.h b/keyboards/maple_computing/minidox/config.h deleted file mode 100644 index c59b7d33b15..00000000000 --- a/keyboards/maple_computing/minidox/config.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* 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 diff --git a/keyboards/maple_computing/minidox/rev1/keyboard.json b/keyboards/maple_computing/minidox/rev1/keyboard.json index e7f1e027ae5..7fc69dd9dd2 100644 --- a/keyboards/maple_computing/minidox/rev1/keyboard.json +++ b/keyboards/maple_computing/minidox/rev1/keyboard.json @@ -25,6 +25,12 @@ "extrakey": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["split_3x5_3"], "layout_aliases": { "LAYOUT": "LAYOUT_split_3x5_3" diff --git a/keyboards/maple_computing/the_ruler/config.h b/keyboards/maple_computing/the_ruler/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/maple_computing/the_ruler/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/maple_computing/the_ruler/keyboard.json b/keyboards/maple_computing/the_ruler/keyboard.json index c38af0a3205..7d15bb9bb8d 100644 --- a/keyboards/maple_computing/the_ruler/keyboard.json +++ b/keyboards/maple_computing/the_ruler/keyboard.json @@ -36,6 +36,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D7", "B4", "B5", "B6", "C6"], "rows": ["C7"] diff --git a/keyboards/marksard/leftover30/config.h b/keyboards/marksard/leftover30/config.h deleted file mode 100644 index 4d408c6e4bd..00000000000 --- a/keyboards/marksard/leftover30/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 marksard - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/marksard/leftover30/keyboard.json b/keyboards/marksard/leftover30/keyboard.json index 72a1f9a3e05..546b3dbdd33 100644 --- a/keyboards/marksard/leftover30/keyboard.json +++ b/keyboards/marksard/leftover30/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "E6", "D7", "C6"], "rows": ["B6", "B2", "F7", "F6", "B3", "B1", "D4", "D0"] diff --git a/keyboards/marksard/treadstone48/rev1/config.h b/keyboards/marksard/treadstone48/rev1/config.h index 66007ee2ef4..07141d20acd 100644 --- a/keyboards/marksard/treadstone48/rev1/config.h +++ b/keyboards/marksard/treadstone48/rev1/config.h @@ -25,11 +25,6 @@ along with this program. If not, see . #define RGBLED_SPLIT {12, 20} #endif -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/marksard/treadstone48/rev1/keyboard.json b/keyboards/marksard/treadstone48/rev1/keyboard.json index f8da65b7b50..d841e12cbe5 100644 --- a/keyboards/marksard/treadstone48/rev1/keyboard.json +++ b/keyboards/marksard/treadstone48/rev1/keyboard.json @@ -41,6 +41,12 @@ "rgblight": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_base": { "layout": [ diff --git a/keyboards/marksard/treadstone48/rev2/config.h b/keyboards/marksard/treadstone48/rev2/config.h deleted file mode 100644 index 4d408c6e4bd..00000000000 --- a/keyboards/marksard/treadstone48/rev2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 marksard - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/marksard/treadstone48/rev2/keyboard.json b/keyboards/marksard/treadstone48/rev2/keyboard.json index 56346d080a6..205132a2e70 100644 --- a/keyboards/marksard/treadstone48/rev2/keyboard.json +++ b/keyboards/marksard/treadstone48/rev2/keyboard.json @@ -38,6 +38,12 @@ "rgblight": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT_full": "LAYOUT_base" }, diff --git a/keyboards/masterworks/classy_tkl/rev_a/config.h b/keyboards/masterworks/classy_tkl/rev_a/config.h deleted file mode 100644 index 5f1fd650f1a..00000000000 --- a/keyboards/masterworks/classy_tkl/rev_a/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 Mathias Andersson - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/masterworks/classy_tkl/rev_a/keyboard.json b/keyboards/masterworks/classy_tkl/rev_a/keyboard.json index 7c7458f9c89..d3e723d413d 100644 --- a/keyboards/masterworks/classy_tkl/rev_a/keyboard.json +++ b/keyboards/masterworks/classy_tkl/rev_a/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "D7", "D6", "D4", "C6", "D5", "D3", "D2", "D1", "D0", "B7", "B3", "B2", "B1", "B0", "E6", "F7"], "rows": ["C7", "F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/maxipad/config.h b/keyboards/maxipad/config.h deleted file mode 100644 index e4b62e2821c..00000000000 --- a/keyboards/maxipad/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2019 - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/maxipad/info.json b/keyboards/maxipad/info.json index 00cc16e887f..bf054e4b83e 100644 --- a/keyboards/maxipad/info.json +++ b/keyboards/maxipad/info.json @@ -11,6 +11,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "usb": { "vid": "0xFEED", "pid": "0x6060", diff --git a/keyboards/maxr1998/phoebe/config.h b/keyboards/maxr1998/phoebe/config.h index a8824e48677..2dec78e6296 100644 --- a/keyboards/maxr1998/phoebe/config.h +++ b/keyboards/maxr1998/phoebe/config.h @@ -17,10 +17,4 @@ along with this program. If not, see . #pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_EFFECT_CHRISTMAS_STEP 1 diff --git a/keyboards/maxr1998/phoebe/keyboard.json b/keyboards/maxr1998/phoebe/keyboard.json index f6913ece0b9..86407414fa2 100644 --- a/keyboards/maxr1998/phoebe/keyboard.json +++ b/keyboards/maxr1998/phoebe/keyboard.json @@ -14,6 +14,12 @@ "key_lock": true, "leader": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "usb": { "vid": "0xFEED", "pid": "0x6060", diff --git a/keyboards/mc_76k/config.h b/keyboards/mc_76k/config.h deleted file mode 100644 index 3616da4ede5..00000000000 --- a/keyboards/mc_76k/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 Yiancar-Designs - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mc_76k/keyboard.json b/keyboards/mc_76k/keyboard.json index 2d8e7351be8..049483bed99 100644 --- a/keyboards/mc_76k/keyboard.json +++ b/keyboards/mc_76k/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "D3", "D4", "B1", "D6", "D7", "B4", "B5", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["C7", "C6", "B6", "B0", "D1", "D0"] diff --git a/keyboards/mechkeys/acr60/config.h b/keyboards/mechkeys/acr60/config.h deleted file mode 100644 index a55618488c5..00000000000 --- a/keyboards/mechkeys/acr60/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2017 Ryan Mitchell (@newtmitch) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mechkeys/acr60/keyboard.json b/keyboards/mechkeys/acr60/keyboard.json index 916a750b963..90b1fd25711 100644 --- a/keyboards/mechkeys/acr60/keyboard.json +++ b/keyboards/mechkeys/acr60/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/mechkeys/alu84/config.h b/keyboards/mechkeys/alu84/config.h deleted file mode 100755 index 1620751facf..00000000000 --- a/keyboards/mechkeys/alu84/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2017 @TurboMech /u/TurboMech @A9entOran9e#6134 - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mechkeys/alu84/keyboard.json b/keyboards/mechkeys/alu84/keyboard.json index 890ddabbc44..30f70b17c96 100644 --- a/keyboards/mechkeys/alu84/keyboard.json +++ b/keyboards/mechkeys/alu84/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "F5", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4", "F6"], "rows": ["D0", "D1", "D2", "D3", "D5", "B7"] diff --git a/keyboards/mechkeys/espectro/config.h b/keyboards/mechkeys/espectro/config.h deleted file mode 100755 index 41ccde97026..00000000000 --- a/keyboards/mechkeys/espectro/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2018 @TurboMech /u/TurboMech @A9entOran9e#6134 - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mechkeys/espectro/keyboard.json b/keyboards/mechkeys/espectro/keyboard.json index 838ff42bd18..f4d2aa29bb9 100644 --- a/keyboards/mechkeys/espectro/keyboard.json +++ b/keyboards/mechkeys/espectro/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "F1", "F4", "F5", "F6", "F7", "D7", "B4", "B5", "D0", "D1", "D2", "D3"], "rows": ["B7", "B3", "E6", "F0", "D5", "D4", "D6", "C7"] diff --git a/keyboards/mechkeys/mechmini/v2/config.h b/keyboards/mechkeys/mechmini/v2/config.h deleted file mode 100755 index 93c5aa9e24d..00000000000 --- a/keyboards/mechkeys/mechmini/v2/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2018 TurboMech /u/TurboMech @A9entOran9e#6134 - * 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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mechkeys/mechmini/v2/keyboard.json b/keyboards/mechkeys/mechmini/v2/keyboard.json index da53e842038..ee2ba925e23 100644 --- a/keyboards/mechkeys/mechmini/v2/keyboard.json +++ b/keyboards/mechkeys/mechmini/v2/keyboard.json @@ -16,6 +16,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "B3", "B1", "B0", "D5", "B7", "C7"], "rows": ["D0", "D1", "D2", "D3"] diff --git a/keyboards/mechkeys/mk60/config.h b/keyboards/mechkeys/mk60/config.h deleted file mode 100644 index b5b661bef2a..00000000000 --- a/keyboards/mechkeys/mk60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/mechkeys/mk60/keyboard.json b/keyboards/mechkeys/mk60/keyboard.json index c1e8af5348c..e47d7def2c9 100644 --- a/keyboards/mechkeys/mk60/keyboard.json +++ b/keyboards/mechkeys/mk60/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "C6", "C7", "F4", "F5", "F6", "F7"], "rows": ["B0", "B1", "B2", "B3", "B4"] diff --git a/keyboards/mechlovin/hannah910/config.h b/keyboards/mechlovin/hannah910/config.h deleted file mode 100644 index a6ae7f4a106..00000000000 --- a/keyboards/mechlovin/hannah910/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Mechlovin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/mechlovin/hannah910/rev1/keyboard.json b/keyboards/mechlovin/hannah910/rev1/keyboard.json index 8f01f6f39b1..61cf3653375 100644 --- a/keyboards/mechlovin/hannah910/rev1/keyboard.json +++ b/keyboards/mechlovin/hannah910/rev1/keyboard.json @@ -15,6 +15,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B1", "B3", "F0", "F1", "F4", "F5", "F6", "F7", "D5", "D4", "B4", "D6", "D7", "B0"], "rows": ["B5", "B6", "D3", "C6", "C7"] diff --git a/keyboards/mechlovin/hannah910/rev2/keyboard.json b/keyboards/mechlovin/hannah910/rev2/keyboard.json index c6fe19c34d1..9fb5847124b 100644 --- a/keyboards/mechlovin/hannah910/rev2/keyboard.json +++ b/keyboards/mechlovin/hannah910/rev2/keyboard.json @@ -15,6 +15,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B1", "B3", "F0", "F1", "F4", "F5", "F6", "F7", "D5", "D4", "B4", "D6", "D7", "B0"], "rows": ["B5", "B6", "D3", "C6", "C7"] diff --git a/keyboards/mechlovin/hannah910/rev3/keyboard.json b/keyboards/mechlovin/hannah910/rev3/keyboard.json index 8a6ea4d1234..ba883198901 100644 --- a/keyboards/mechlovin/hannah910/rev3/keyboard.json +++ b/keyboards/mechlovin/hannah910/rev3/keyboard.json @@ -15,6 +15,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B1", "B3", "F0", "F1", "F4", "F5", "F6", "F7", "D5", "D4", "B4", "D6", "D7", "B0"], "rows": ["B5", "B6", "D3", "C6", "C7"] diff --git a/keyboards/mechlovin/jay60/config.h b/keyboards/mechlovin/jay60/config.h deleted file mode 100644 index d685b926313..00000000000 --- a/keyboards/mechlovin/jay60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Mechlovin' - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/mechlovin/jay60/keyboard.json b/keyboards/mechlovin/jay60/keyboard.json index 37f25f36fe8..c7e05d2327f 100644 --- a/keyboards/mechlovin/jay60/keyboard.json +++ b/keyboards/mechlovin/jay60/keyboard.json @@ -13,6 +13,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B5", "B3", "B2", "B1", "B0", "A0", "A6", "A7", "C7", "C6", "C5", "C4", "C3"], "rows": ["C2", "C1", "C0", "D7", "A1"] diff --git a/keyboards/mechlovin/tmkl/config.h b/keyboards/mechlovin/tmkl/config.h deleted file mode 100644 index 03e3beacd0f..00000000000 --- a/keyboards/mechlovin/tmkl/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* -Copyright 2020 Team Mechlovin' - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE diff --git a/keyboards/mechlovin/tmkl/keyboard.json b/keyboards/mechlovin/tmkl/keyboard.json index 8b66e9a4666..783ca4b7c66 100644 --- a/keyboards/mechlovin/tmkl/keyboard.json +++ b/keyboards/mechlovin/tmkl/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": false + } + }, "matrix_pins": { "cols": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A0", "C15", "B4", "B5", "B3", "C13", "C14"], "rows": ["A8", "A4", "A5", "A3", "A2", "A1"] diff --git a/keyboards/mechwild/bde/config.h b/keyboards/mechwild/bde/config.h deleted file mode 100644 index 232d4808fee..00000000000 --- a/keyboards/mechwild/bde/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2022 Kyle McCreery - -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 . -*/ - -#pragma once - - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mechwild/bde/lefty/keyboard.json b/keyboards/mechwild/bde/lefty/keyboard.json index 751a65b1a45..65a90b008fd 100644 --- a/keyboards/mechwild/bde/lefty/keyboard.json +++ b/keyboards/mechwild/bde/lefty/keyboard.json @@ -11,6 +11,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "rows": ["D1", "D7", "D3"], "cols": ["F7", "B1", "B6", "B2", "B3", "F6", "F5", "F4", "D0", "D4", "C6", "E6", "B5", "B4"] diff --git a/keyboards/mechwild/bde/rev2/keyboard.json b/keyboards/mechwild/bde/rev2/keyboard.json index beb2624f3e3..932f99f0e96 100644 --- a/keyboards/mechwild/bde/rev2/keyboard.json +++ b/keyboards/mechwild/bde/rev2/keyboard.json @@ -13,6 +13,12 @@ "encoder": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "encoder": { "rotary": [ {"pin_a": "D2", "pin_b": "D3"} diff --git a/keyboards/mechwild/bde/righty/keyboard.json b/keyboards/mechwild/bde/righty/keyboard.json index 54a7a4459f0..769d0044269 100644 --- a/keyboards/mechwild/bde/righty/keyboard.json +++ b/keyboards/mechwild/bde/righty/keyboard.json @@ -11,6 +11,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "rows": ["D1", "D7", "D3"], "cols": ["B4", "B5", "E6", "C6", "D4", "D0", "F4", "F5", "F6", "B3", "B2", "B6", "B1", "F7"] diff --git a/keyboards/mechwild/mercutio/config.h b/keyboards/mechwild/mercutio/config.h index 7a7d9cfd15b..b2e31c11dc3 100755 --- a/keyboards/mechwild/mercutio/config.h +++ b/keyboards/mechwild/mercutio/config.h @@ -19,9 +19,3 @@ /* Define custom font */ #define OLED_FONT_H "lib/mercutiofont.c" - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mechwild/mercutio/keyboard.json b/keyboards/mechwild/mercutio/keyboard.json index a07874e2a2a..0a7d7581282 100644 --- a/keyboards/mechwild/mercutio/keyboard.json +++ b/keyboards/mechwild/mercutio/keyboard.json @@ -29,7 +29,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "processor": "atmega328p", "bootloader": "usbasploader", diff --git a/keyboards/mechwild/mokulua/mirrored/config.h b/keyboards/mechwild/mokulua/mirrored/config.h index d62d7b49f0b..c6504ff392c 100644 --- a/keyboards/mechwild/mokulua/mirrored/config.h +++ b/keyboards/mechwild/mokulua/mirrored/config.h @@ -7,8 +7,3 @@ #define MASTER_LEFT //#define MASTER_RIGHT - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mechwild/mokulua/mirrored/keyboard.json b/keyboards/mechwild/mokulua/mirrored/keyboard.json index be74fabbd32..e1ca30efdb8 100644 --- a/keyboards/mechwild/mokulua/mirrored/keyboard.json +++ b/keyboards/mechwild/mokulua/mirrored/keyboard.json @@ -27,7 +27,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "split": { "enabled": true, diff --git a/keyboards/mechwild/mokulua/standard/config.h b/keyboards/mechwild/mokulua/standard/config.h index 953e53c2360..c3b067e5ba3 100644 --- a/keyboards/mechwild/mokulua/standard/config.h +++ b/keyboards/mechwild/mokulua/standard/config.h @@ -8,11 +8,6 @@ #define MASTER_LEFT //#define MASTER_RIGHT -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/mechwild/mokulua/standard/keyboard.json b/keyboards/mechwild/mokulua/standard/keyboard.json index 044573d82c5..bd248712e73 100644 --- a/keyboards/mechwild/mokulua/standard/keyboard.json +++ b/keyboards/mechwild/mokulua/standard/keyboard.json @@ -27,7 +27,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "split": { "enabled": true, diff --git a/keyboards/mechwild/murphpad/config.h b/keyboards/mechwild/murphpad/config.h index 6898c0a344c..c9503f101cc 100644 --- a/keyboards/mechwild/murphpad/config.h +++ b/keyboards/mechwild/murphpad/config.h @@ -18,9 +18,3 @@ along with this program. If not, see . #pragma once #define OLED_FONT_H "keyboards/mechwild/murphpad/lib/murphpadfont.c" - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mechwild/murphpad/keyboard.json b/keyboards/mechwild/murphpad/keyboard.json index a2a5eba926b..47d99f78e9d 100644 --- a/keyboards/mechwild/murphpad/keyboard.json +++ b/keyboards/mechwild/murphpad/keyboard.json @@ -31,7 +31,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "bootmagic": { "matrix": [0, 1] diff --git a/keyboards/mechwild/obe/config.h b/keyboards/mechwild/obe/config.h deleted file mode 100644 index d9eed88676a..00000000000 --- a/keyboards/mechwild/obe/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Kyle McCreery - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/mechwild/obe/info.json b/keyboards/mechwild/obe/info.json index 2baf5422f04..2247f69fac5 100644 --- a/keyboards/mechwild/obe/info.json +++ b/keyboards/mechwild/obe/info.json @@ -29,7 +29,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "indicators": { "caps_lock": "B9", diff --git a/keyboards/mechwild/puckbuddy/config.h b/keyboards/mechwild/puckbuddy/config.h index ad4823c741c..ab67d10dada 100644 --- a/keyboards/mechwild/puckbuddy/config.h +++ b/keyboards/mechwild/puckbuddy/config.h @@ -21,11 +21,6 @@ #define CIRQUE_PINNACLE_SPI_DIVISOR 8 #define CIRQUE_PINNACLE_SPI_CS_PIN A4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/mechwild/puckbuddy/keyboard.json b/keyboards/mechwild/puckbuddy/keyboard.json index 4e827d1ba87..ebe477907b7 100644 --- a/keyboards/mechwild/puckbuddy/keyboard.json +++ b/keyboards/mechwild/puckbuddy/keyboard.json @@ -34,7 +34,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "indicators": { "caps_lock": "C13", diff --git a/keyboards/meletrix/zoom98/config.h b/keyboards/meletrix/zoom98/config.h deleted file mode 100644 index 88c82de3bfc..00000000000 --- a/keyboards/meletrix/zoom98/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2023 meletrix - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/meletrix/zoom98/keyboard.json b/keyboards/meletrix/zoom98/keyboard.json index 0a57fc3bb64..e58d80f216e 100644 --- a/keyboards/meletrix/zoom98/keyboard.json +++ b/keyboards/meletrix/zoom98/keyboard.json @@ -27,6 +27,12 @@ "nkro": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "ws2812": { "pin": "B7" }, diff --git a/keyboards/melgeek/mj6xy/config.h b/keyboards/melgeek/mj6xy/config.h deleted file mode 100755 index 79f977638b0..00000000000 --- a/keyboards/melgeek/mj6xy/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 MelGeek - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/melgeek/mj6xy/rev3/keyboard.json b/keyboards/melgeek/mj6xy/rev3/keyboard.json index 8888b78c2db..ae44451236e 100644 --- a/keyboards/melgeek/mj6xy/rev3/keyboard.json +++ b/keyboards/melgeek/mj6xy/rev3/keyboard.json @@ -9,6 +9,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "F7", "D2", "D1", "D0"], "rows": ["F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/meme/config.h b/keyboards/meme/config.h deleted file mode 100644 index d876570c808..00000000000 --- a/keyboards/meme/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/meme/keyboard.json b/keyboards/meme/keyboard.json index e75f7e13aa6..021c8f998ae 100644 --- a/keyboards/meme/keyboard.json +++ b/keyboards/meme/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "B5", "B6", "C7", "C6", "C5", "C4"], "rows": ["C2", "D0", "D1", "D4", "D5", "D6", "B0", "B1", "B2", "B3"] diff --git a/keyboards/meow65/config.h b/keyboards/meow65/config.h deleted file mode 100644 index edaab9eb0d1..00000000000 --- a/keyboards/meow65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 mrninhvn - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/meow65/keyboard.json b/keyboards/meow65/keyboard.json index 510f8318c8c..5870152ee01 100644 --- a/keyboards/meow65/keyboard.json +++ b/keyboards/meow65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "B0", "F4", "F1", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "C7"], "rows": ["C6", "B6", "B5", "B7", "F7"] diff --git a/keyboards/mesa/mesa_tkl/config.h b/keyboards/mesa/mesa_tkl/config.h deleted file mode 100644 index 5ebe5ccc58d..00000000000 --- a/keyboards/mesa/mesa_tkl/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 Mesa Keyboards - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/mesa/mesa_tkl/keyboard.json b/keyboards/mesa/mesa_tkl/keyboard.json index ac12e879778..85d1c2b5a01 100644 --- a/keyboards/mesa/mesa_tkl/keyboard.json +++ b/keyboards/mesa/mesa_tkl/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "F7", "F6", "F5", "F4", "F1", "F0", "B1", "B2", "B3"], "rows": ["D2", "D1", "D0", "B0", "C6", "C7"] diff --git a/keyboards/meson/config.h b/keyboards/meson/config.h index a84e55df1f2..ab2191472f9 100644 --- a/keyboards/meson/config.h +++ b/keyboards/meson/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define USE_I2C -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/meson/keyboard.json b/keyboards/meson/keyboard.json index 72d9ec58e72..88bbc18886a 100644 --- a/keyboards/meson/keyboard.json +++ b/keyboards/meson/keyboard.json @@ -16,6 +16,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "D7", "E6", "B3", "B2", "B6", "F4"], "rows": ["F7", "C6", "F6", "F5"] diff --git a/keyboards/mikeneko65/config.h b/keyboards/mikeneko65/config.h deleted file mode 100644 index 42ab44fce1d..00000000000 --- a/keyboards/mikeneko65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2020 kkatano - Copyright 2022 takishim - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/mikeneko65/keyboard.json b/keyboards/mikeneko65/keyboard.json index 77bb74598e4..873bb7d042b 100644 --- a/keyboards/mikeneko65/keyboard.json +++ b/keyboards/mikeneko65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "E6", "B0", "B7", "D4", "D6", "D7", "B6", "B5", "B4"], "rows": ["D0", "D1", "D2", "D3", "C7"] diff --git a/keyboards/millipad/config.h b/keyboards/millipad/config.h deleted file mode 100644 index 8ceeef163d5..00000000000 --- a/keyboards/millipad/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2021 Jirou - -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 . -*/ - -#pragma once - -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/millipad/keyboard.json b/keyboards/millipad/keyboard.json index f7646b39ea6..7230fa750b4 100644 --- a/keyboards/millipad/keyboard.json +++ b/keyboards/millipad/keyboard.json @@ -18,6 +18,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": false, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "D7", "D6", "D4"], "rows": ["C6", "C7"] diff --git a/keyboards/mini_elixivy/config.h b/keyboards/mini_elixivy/config.h deleted file mode 100644 index d90fdba2715..00000000000 --- a/keyboards/mini_elixivy/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 minibois - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/mini_elixivy/keyboard.json b/keyboards/mini_elixivy/keyboard.json index 2485897ef60..2d45d70cf44 100644 --- a/keyboards/mini_elixivy/keyboard.json +++ b/keyboards/mini_elixivy/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F5", "F4", "F1", "F0", "B7", "D0", "D1", "D2", "D3", "D4", "D6", "D7", "B4", "C6"], "rows": ["B5", "B6", "E6", "F6", "C7"] diff --git a/keyboards/mini_ten_key_plus/config.h b/keyboards/mini_ten_key_plus/config.h deleted file mode 100644 index d90fdba2715..00000000000 --- a/keyboards/mini_ten_key_plus/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 minibois - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/mini_ten_key_plus/keyboard.json b/keyboards/mini_ten_key_plus/keyboard.json index 2284c58d3c6..10507fa6e57 100644 --- a/keyboards/mini_ten_key_plus/keyboard.json +++ b/keyboards/mini_ten_key_plus/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F4", "B6", "D7", "C6"], "rows": ["D4", "B1", "B5", "B4", "E6"] diff --git a/keyboards/minimon/index_tab/config.h b/keyboards/minimon/index_tab/config.h deleted file mode 100644 index 52607b345c2..00000000000 --- a/keyboards/minimon/index_tab/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2020 Kyrre Havik Eriksen - -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 . -*/ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/minimon/index_tab/keyboard.json b/keyboards/minimon/index_tab/keyboard.json index c8ff091790a..14e45241145 100644 --- a/keyboards/minimon/index_tab/keyboard.json +++ b/keyboards/minimon/index_tab/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D2", "F1", "F0"], "rows": ["D3", "B7", "B3", "B2", "B1", "B0"] diff --git a/keyboards/mint60/config.h b/keyboards/mint60/config.h deleted file mode 100644 index a93b381c85b..00000000000 --- a/keyboards/mint60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Eucalyn - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/mint60/keyboard.json b/keyboards/mint60/keyboard.json index 332a366aa6e..98f91a44690 100644 --- a/keyboards/mint60/keyboard.json +++ b/keyboards/mint60/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "B3", "B1", "F7", "B2", "B6", "F6", "F5"], "rows": ["C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/misonoworks/karina/config.h b/keyboards/misonoworks/karina/config.h index d36739d42b3..2246a75916c 100644 --- a/keyboards/misonoworks/karina/config.h +++ b/keyboards/misonoworks/karina/config.h @@ -19,6 +19,3 @@ along with this program. If not, see . #define MK_3_SPEED #define TERMINAL_HELP - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/misonoworks/karina/keyboard.json b/keyboards/misonoworks/karina/keyboard.json index cf01cbdbf27..0d9d55d206c 100644 --- a/keyboards/misonoworks/karina/keyboard.json +++ b/keyboards/misonoworks/karina/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": false, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6"], "rows": ["D2", "D3", "D5", "F0"] diff --git a/keyboards/miuni32/config.h b/keyboards/miuni32/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/miuni32/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/miuni32/keyboard.json b/keyboards/miuni32/keyboard.json index 43f74f1812e..0b52b058fa6 100644 --- a/keyboards/miuni32/keyboard.json +++ b/keyboards/miuni32/keyboard.json @@ -36,6 +36,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "F7", "F6", "F1", "E6", "B7", "B3", "B2", "B1", "B0"], "rows": ["F0", "F4", "D7"] diff --git a/keyboards/mixi/config.h b/keyboards/mixi/config.h index b24301443d2..e5c829d8117 100644 --- a/keyboards/mixi/config.h +++ b/keyboards/mixi/config.h @@ -1,10 +1,4 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_LAYERS #define RGBLIGHT_LAYER_BLINK diff --git a/keyboards/mixi/keyboard.json b/keyboards/mixi/keyboard.json index 2f948931731..a08d54b883a 100644 --- a/keyboards/mixi/keyboard.json +++ b/keyboards/mixi/keyboard.json @@ -47,6 +47,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D1", "D4", "F4"], From 030d503d35c01aad65ecfec171b08a963da9866e Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 22 May 2024 13:59:35 -0700 Subject: [PATCH 037/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: K, Part 3 (#23770) Affects: - `kindakeyboards/conone65` - `kinesis` - `kingly_keys/ave/ortho` - `kingly_keys/ave/staggered` - `kingly_keys/little_foot` - `kingly_keys/romac` - `kingly_keys/romac_plus` - `kingly_keys/ropro` - `kingly_keys/smd_milk` - `kingly_keys/soap` - `kira/kira75` - `kisakeyluxury/qtz` - `kiserdesigns/madeline` - `kiwikeebs/macro` - `kiwikeebs/macro_v2` - `kiwikey/borderland` - `kiwikey/kawii9` - `kiwikey/wanderland` - `kkatano/bakeneko60` - `kkatano/bakeneko65/rev2` - `kkatano/bakeneko65/rev3` - `kkatano/bakeneko80` - `kkatano/wallaby` - `kkatano/yurei` - `knops/mini` - `kona_classic` - `kopibeng/mnk60_stm32` - `kopibeng/mnk65` - `kopibeng/mnk65_stm32` - `kopibeng/mnk88` - `kopibeng/typ65` - `kopibeng/xt60` - `kopibeng/xt60_singa` - `kopibeng/xt65` - `kopibeng/xt8x` - `kprepublic/bm16s` - `kprepublic/bm40hsrgb/rev1` - `kprepublic/bm65hsrgb/rev1` - `kprepublic/bm68hsrgb/rev1` - `kprepublic/bm980hsrgb` - `kprepublic/cospad` - `ktec/daisy` - `kumaokobo/kudox/columner` - `kumaokobo/kudox/rev1` - `kumaokobo/kudox/rev2` - `kumaokobo/kudox/rev3` - `kumaokobo/kudox_full/rev1` - `kumaokobo/kudox_game/rev1` - `kumaokobo/kudox_game/rev2` - `kumaokobo/pico/65keys` - `kumaokobo/pico/70keys` - `kv/revt` - `kwub/bloop` - `ky01` --- keyboards/kindakeyboards/conone65/config.h | 39 ------------------- .../kindakeyboards/conone65/keyboard.json | 6 +++ keyboards/kinesis/config.h | 5 --- keyboards/kinesis/info.json | 8 +++- keyboards/kingly_keys/ave/config.h | 23 ----------- keyboards/kingly_keys/ave/ortho/keyboard.json | 6 +++ .../kingly_keys/ave/staggered/keyboard.json | 6 +++ keyboards/kingly_keys/little_foot/config.h | 23 ----------- .../kingly_keys/little_foot/keyboard.json | 6 +++ keyboards/kingly_keys/romac/config.h | 7 ---- keyboards/kingly_keys/romac/keyboard.json | 6 +++ keyboards/kingly_keys/romac_plus/config.h | 7 ---- .../kingly_keys/romac_plus/keyboard.json | 6 +++ keyboards/kingly_keys/ropro/config.h | 23 ----------- keyboards/kingly_keys/ropro/keyboard.json | 6 +++ keyboards/kingly_keys/smd_milk/config.h | 22 ----------- keyboards/kingly_keys/smd_milk/keyboard.json | 6 +++ keyboards/kingly_keys/soap/config.h | 21 ---------- keyboards/kingly_keys/soap/keyboard.json | 6 +++ keyboards/kira/kira75/config.h | 39 ------------------- keyboards/kira/kira75/keyboard.json | 6 +++ keyboards/kisakeyluxury/qtz/config.h | 23 ----------- keyboards/kisakeyluxury/qtz/keyboard.json | 6 +++ keyboards/kiserdesigns/madeline/config.h | 3 -- keyboards/kiserdesigns/madeline/keyboard.json | 8 +++- keyboards/kiwikeebs/macro/config.h | 39 ------------------- keyboards/kiwikeebs/macro/keyboard.json | 6 +++ keyboards/kiwikeebs/macro_v2/config.h | 39 ------------------- keyboards/kiwikeebs/macro_v2/keyboard.json | 6 +++ keyboards/kiwikey/borderland/config.h | 25 ------------ keyboards/kiwikey/borderland/keyboard.json | 6 ++- keyboards/kiwikey/kawii9/config.h | 39 ------------------- keyboards/kiwikey/kawii9/keyboard.json | 6 +++ keyboards/kiwikey/wanderland/config.h | 39 ------------------- keyboards/kiwikey/wanderland/keyboard.json | 6 +++ keyboards/kkatano/bakeneko60/config.h | 39 ------------------- keyboards/kkatano/bakeneko60/keyboard.json | 6 +++ keyboards/kkatano/bakeneko65/rev2/config.h | 39 ------------------- .../kkatano/bakeneko65/rev2/keyboard.json | 6 +++ keyboards/kkatano/bakeneko65/rev3/config.h | 39 ------------------- .../kkatano/bakeneko65/rev3/keyboard.json | 6 +++ keyboards/kkatano/bakeneko80/config.h | 39 ------------------- keyboards/kkatano/bakeneko80/keyboard.json | 6 +++ keyboards/kkatano/wallaby/config.h | 39 ------------------- keyboards/kkatano/wallaby/keyboard.json | 6 +++ keyboards/kkatano/yurei/config.h | 39 ------------------- keyboards/kkatano/yurei/keyboard.json | 6 +++ keyboards/knops/mini/config.h | 39 ------------------- keyboards/knops/mini/keyboard.json | 6 +++ keyboards/kona_classic/config.h | 39 ------------------- keyboards/kona_classic/keyboard.json | 6 +++ keyboards/kopibeng/mnk60_stm32/config.h | 22 ----------- keyboards/kopibeng/mnk60_stm32/keyboard.json | 6 +++ keyboards/kopibeng/mnk65/config.h | 22 ----------- keyboards/kopibeng/mnk65/keyboard.json | 6 +++ keyboards/kopibeng/mnk65_stm32/config.h | 22 ----------- keyboards/kopibeng/mnk65_stm32/keyboard.json | 6 +++ keyboards/kopibeng/mnk88/config.h | 22 ----------- keyboards/kopibeng/mnk88/keyboard.json | 6 +++ keyboards/kopibeng/typ65/config.h | 5 --- keyboards/kopibeng/typ65/keyboard.json | 6 +++ keyboards/kopibeng/xt60/config.h | 22 ----------- keyboards/kopibeng/xt60/keyboard.json | 6 +++ keyboards/kopibeng/xt60_singa/config.h | 22 ----------- keyboards/kopibeng/xt60_singa/keyboard.json | 6 +++ keyboards/kopibeng/xt65/config.h | 38 ------------------ keyboards/kopibeng/xt65/keyboard.json | 6 +++ keyboards/kopibeng/xt8x/config.h | 5 --- keyboards/kopibeng/xt8x/keyboard.json | 6 +++ keyboards/kprepublic/bm16s/config.h | 7 ---- keyboards/kprepublic/bm16s/keyboard.json | 6 +++ keyboards/kprepublic/bm40hsrgb/rev1/config.h | 22 ----------- .../kprepublic/bm40hsrgb/rev1/keyboard.json | 6 +++ keyboards/kprepublic/bm65hsrgb/rev1/config.h | 39 ------------------- .../kprepublic/bm65hsrgb/rev1/keyboard.json | 6 +++ keyboards/kprepublic/bm68hsrgb/rev1/config.h | 39 ------------------- .../kprepublic/bm68hsrgb/rev1/keyboard.json | 6 +++ keyboards/kprepublic/bm980hsrgb/config.h | 39 ------------------- keyboards/kprepublic/bm980hsrgb/keyboard.json | 6 +++ keyboards/kprepublic/cospad/config.h | 39 ------------------- keyboards/kprepublic/cospad/keyboard.json | 6 +++ keyboards/ktec/daisy/config.h | 39 ------------------- keyboards/ktec/daisy/keyboard.json | 6 +++ keyboards/kumaokobo/kudox/columner/config.h | 5 --- .../kumaokobo/kudox/columner/keyboard.json | 6 +++ keyboards/kumaokobo/kudox/rev1/config.h | 5 --- keyboards/kumaokobo/kudox/rev1/keyboard.json | 6 +++ keyboards/kumaokobo/kudox/rev2/config.h | 5 --- keyboards/kumaokobo/kudox/rev2/keyboard.json | 6 +++ keyboards/kumaokobo/kudox/rev3/config.h | 5 --- keyboards/kumaokobo/kudox/rev3/keyboard.json | 6 +++ keyboards/kumaokobo/kudox_full/rev1/config.h | 25 ------------ .../kumaokobo/kudox_full/rev1/keyboard.json | 6 +++ keyboards/kumaokobo/kudox_game/rev1/config.h | 5 --- .../kumaokobo/kudox_game/rev1/keyboard.json | 6 +++ keyboards/kumaokobo/kudox_game/rev2/config.h | 5 --- .../kumaokobo/kudox_game/rev2/keyboard.json | 6 +++ keyboards/kumaokobo/pico/65keys/config.h | 5 --- keyboards/kumaokobo/pico/65keys/keyboard.json | 6 +++ keyboards/kumaokobo/pico/70keys/config.h | 5 --- keyboards/kumaokobo/pico/70keys/keyboard.json | 6 +++ keyboards/kv/revt/config.h | 19 --------- keyboards/kv/revt/keyboard.json | 6 +++ keyboards/kwub/bloop/config.h | 23 ----------- keyboards/kwub/bloop/keyboard.json | 6 +++ keyboards/ky01/config.h | 39 ------------------- keyboards/ky01/keyboard.json | 6 +++ 107 files changed, 324 insertions(+), 1282 deletions(-) delete mode 100644 keyboards/kindakeyboards/conone65/config.h delete mode 100644 keyboards/kingly_keys/ave/config.h delete mode 100644 keyboards/kingly_keys/little_foot/config.h delete mode 100644 keyboards/kingly_keys/romac/config.h delete mode 100644 keyboards/kingly_keys/romac_plus/config.h delete mode 100644 keyboards/kingly_keys/ropro/config.h delete mode 100644 keyboards/kingly_keys/smd_milk/config.h delete mode 100644 keyboards/kingly_keys/soap/config.h delete mode 100644 keyboards/kira/kira75/config.h delete mode 100644 keyboards/kisakeyluxury/qtz/config.h delete mode 100644 keyboards/kiwikeebs/macro/config.h delete mode 100644 keyboards/kiwikeebs/macro_v2/config.h delete mode 100644 keyboards/kiwikey/borderland/config.h delete mode 100644 keyboards/kiwikey/kawii9/config.h delete mode 100644 keyboards/kiwikey/wanderland/config.h delete mode 100644 keyboards/kkatano/bakeneko60/config.h delete mode 100644 keyboards/kkatano/bakeneko65/rev2/config.h delete mode 100644 keyboards/kkatano/bakeneko65/rev3/config.h delete mode 100644 keyboards/kkatano/bakeneko80/config.h delete mode 100644 keyboards/kkatano/wallaby/config.h delete mode 100644 keyboards/kkatano/yurei/config.h delete mode 100644 keyboards/knops/mini/config.h delete mode 100644 keyboards/kona_classic/config.h delete mode 100644 keyboards/kopibeng/mnk60_stm32/config.h delete mode 100644 keyboards/kopibeng/mnk65/config.h delete mode 100644 keyboards/kopibeng/mnk65_stm32/config.h delete mode 100644 keyboards/kopibeng/mnk88/config.h delete mode 100644 keyboards/kopibeng/xt60/config.h delete mode 100644 keyboards/kopibeng/xt60_singa/config.h delete mode 100644 keyboards/kopibeng/xt65/config.h delete mode 100755 keyboards/kprepublic/bm16s/config.h delete mode 100755 keyboards/kprepublic/bm40hsrgb/rev1/config.h delete mode 100644 keyboards/kprepublic/bm65hsrgb/rev1/config.h delete mode 100644 keyboards/kprepublic/bm68hsrgb/rev1/config.h delete mode 100644 keyboards/kprepublic/bm980hsrgb/config.h delete mode 100644 keyboards/kprepublic/cospad/config.h delete mode 100644 keyboards/ktec/daisy/config.h delete mode 100644 keyboards/kumaokobo/kudox_full/rev1/config.h delete mode 100644 keyboards/kv/revt/config.h delete mode 100644 keyboards/kwub/bloop/config.h delete mode 100644 keyboards/ky01/config.h diff --git a/keyboards/kindakeyboards/conone65/config.h b/keyboards/kindakeyboards/conone65/config.h deleted file mode 100644 index d3147b115a3..00000000000 --- a/keyboards/kindakeyboards/conone65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Kindakeyboards - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kindakeyboards/conone65/keyboard.json b/keyboards/kindakeyboards/conone65/keyboard.json index 0c44723f62b..6786b6a3d5a 100644 --- a/keyboards/kindakeyboards/conone65/keyboard.json +++ b/keyboards/kindakeyboards/conone65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "F7", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F6", "F5", "F4", "F1", "F0", "D0"], "rows": ["D5", "D3", "E6", "D1", "D2"] diff --git a/keyboards/kinesis/config.h b/keyboards/kinesis/config.h index 52ea641d6eb..e8381f8635e 100644 --- a/keyboards/kinesis/config.h +++ b/keyboards/kinesis/config.h @@ -26,11 +26,6 @@ along with this program. If not, see . #define MOUSEKEY_WHEEL_DELTA 1 #define MOUSEKEY_WHEEL_TIME_TO_MAX 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kinesis/info.json b/keyboards/kinesis/info.json index 4454639ab0f..49025977bd3 100644 --- a/keyboards/kinesis/info.json +++ b/keyboards/kinesis/info.json @@ -1,4 +1,10 @@ { "url": "", - "maintainer": "qmk" + "maintainer": "qmk", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + } } diff --git a/keyboards/kingly_keys/ave/config.h b/keyboards/kingly_keys/ave/config.h deleted file mode 100644 index e43087b6978..00000000000 --- a/keyboards/kingly_keys/ave/config.h +++ /dev/null @@ -1,23 +0,0 @@ - /* - Copyright 2020 Garret Gartner - - 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kingly_keys/ave/ortho/keyboard.json b/keyboards/kingly_keys/ave/ortho/keyboard.json index 8c91b27615c..d277e68e47f 100644 --- a/keyboards/kingly_keys/ave/ortho/keyboard.json +++ b/keyboards/kingly_keys/ave/ortho/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["B3", "F4", "F7", "F6", "F5"] diff --git a/keyboards/kingly_keys/ave/staggered/keyboard.json b/keyboards/kingly_keys/ave/staggered/keyboard.json index 581e86c11b8..3f5bf70ce89 100644 --- a/keyboards/kingly_keys/ave/staggered/keyboard.json +++ b/keyboards/kingly_keys/ave/staggered/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["B3", "F4", "F7", "F6", "F5"] diff --git a/keyboards/kingly_keys/little_foot/config.h b/keyboards/kingly_keys/little_foot/config.h deleted file mode 100644 index a2c4815a207..00000000000 --- a/keyboards/kingly_keys/little_foot/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2019 Garret G. (TheRoyalSweatshirt) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kingly_keys/little_foot/keyboard.json b/keyboards/kingly_keys/little_foot/keyboard.json index 19e6a0f5478..a511d48905c 100644 --- a/keyboards/kingly_keys/little_foot/keyboard.json +++ b/keyboards/kingly_keys/little_foot/keyboard.json @@ -39,6 +39,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F7", "B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1"], "rows": ["F6", "B6", "B2", "B3", "B1"] diff --git a/keyboards/kingly_keys/romac/config.h b/keyboards/kingly_keys/romac/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/kingly_keys/romac/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kingly_keys/romac/keyboard.json b/keyboards/kingly_keys/romac/keyboard.json index 4c5e9298481..9927bdc25ff 100644 --- a/keyboards/kingly_keys/romac/keyboard.json +++ b/keyboards/kingly_keys/romac/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "B1", "B3"], "rows": ["D4", "C6", "D7", "E6"] diff --git a/keyboards/kingly_keys/romac_plus/config.h b/keyboards/kingly_keys/romac_plus/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/kingly_keys/romac_plus/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kingly_keys/romac_plus/keyboard.json b/keyboards/kingly_keys/romac_plus/keyboard.json index bc4ad616e18..8b6c43333d9 100644 --- a/keyboards/kingly_keys/romac_plus/keyboard.json +++ b/keyboards/kingly_keys/romac_plus/keyboard.json @@ -19,6 +19,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F4"], "rows": ["C6", "D4", "D2", "D3"] diff --git a/keyboards/kingly_keys/ropro/config.h b/keyboards/kingly_keys/ropro/config.h deleted file mode 100644 index a11ec4dfb28..00000000000 --- a/keyboards/kingly_keys/ropro/config.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -/* Copyright 2019 Garret G. (TheRoyalSweatshirt) - * - * 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 .#pragma once - */ - - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - - /* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kingly_keys/ropro/keyboard.json b/keyboards/kingly_keys/ropro/keyboard.json index ed0bba5366f..fb22d06a7d9 100644 --- a/keyboards/kingly_keys/ropro/keyboard.json +++ b/keyboards/kingly_keys/ropro/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "B3", "B2", "B6", "D2", "C7"], "rows": ["F4", "F5", "F6", "F7", "B1", "F1", null] diff --git a/keyboards/kingly_keys/smd_milk/config.h b/keyboards/kingly_keys/smd_milk/config.h deleted file mode 100644 index 7bbb5b4e941..00000000000 --- a/keyboards/kingly_keys/smd_milk/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2019 Sebastian Williams - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kingly_keys/smd_milk/keyboard.json b/keyboards/kingly_keys/smd_milk/keyboard.json index e510ea80b41..9f8a10a5bfc 100644 --- a/keyboards/kingly_keys/smd_milk/keyboard.json +++ b/keyboards/kingly_keys/smd_milk/keyboard.json @@ -39,6 +39,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3"], "rows": ["C5", "D2"] diff --git a/keyboards/kingly_keys/soap/config.h b/keyboards/kingly_keys/soap/config.h deleted file mode 100644 index 847cfcd5be7..00000000000 --- a/keyboards/kingly_keys/soap/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2019 Garret G. (TheRoyalSweatshirt) - * - * 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 .#pragma once - */ - - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - - /* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kingly_keys/soap/keyboard.json b/keyboards/kingly_keys/soap/keyboard.json index b4f8fb9e86b..615014ffbfa 100644 --- a/keyboards/kingly_keys/soap/keyboard.json +++ b/keyboards/kingly_keys/soap/keyboard.json @@ -36,6 +36,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F1", "F0", "D5"], "rows": ["C7", "C6"] diff --git a/keyboards/kira/kira75/config.h b/keyboards/kira/kira75/config.h deleted file mode 100644 index d876570c808..00000000000 --- a/keyboards/kira/kira75/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kira/kira75/keyboard.json b/keyboards/kira/kira75/keyboard.json index c48f2bf4923..fb4c90a8b55 100644 --- a/keyboards/kira/kira75/keyboard.json +++ b/keyboards/kira/kira75/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "C7", "C6", "B6", "B5", "B4", "F5", "F4", "F1", "F0", "E6", "B3", "B2", "B1", "B0"], "rows": ["D0", "D1", "D2", "D3", "D5", "D4"] diff --git a/keyboards/kisakeyluxury/qtz/config.h b/keyboards/kisakeyluxury/qtz/config.h deleted file mode 100644 index 7660e3d7e98..00000000000 --- a/keyboards/kisakeyluxury/qtz/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2023 kisakeyluxury - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kisakeyluxury/qtz/keyboard.json b/keyboards/kisakeyluxury/qtz/keyboard.json index 3225336890d..d215f578959 100644 --- a/keyboards/kisakeyluxury/qtz/keyboard.json +++ b/keyboards/kisakeyluxury/qtz/keyboard.json @@ -13,6 +13,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["D5", "D4", "D6", "C6"] diff --git a/keyboards/kiserdesigns/madeline/config.h b/keyboards/kiserdesigns/madeline/config.h index 8522d7cd431..027e62e3c63 100644 --- a/keyboards/kiserdesigns/madeline/config.h +++ b/keyboards/kiserdesigns/madeline/config.h @@ -15,9 +15,6 @@ */ #pragma once -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE - #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U diff --git a/keyboards/kiserdesigns/madeline/keyboard.json b/keyboards/kiserdesigns/madeline/keyboard.json index 73d3f5ccff4..8a1a988a6f9 100644 --- a/keyboards/kiserdesigns/madeline/keyboard.json +++ b/keyboards/kiserdesigns/madeline/keyboard.json @@ -24,7 +24,11 @@ }, "processor": "RP2040", "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "url": "https://qmk.fm/keyboards", "usb": { @@ -74,4 +78,4 @@ ] } } -} \ No newline at end of file +} diff --git a/keyboards/kiwikeebs/macro/config.h b/keyboards/kiwikeebs/macro/config.h deleted file mode 100644 index 2238a4171fd..00000000000 --- a/keyboards/kiwikeebs/macro/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 KiwiKeebs - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kiwikeebs/macro/keyboard.json b/keyboards/kiwikeebs/macro/keyboard.json index d8bc9f39254..faaebe88cf1 100644 --- a/keyboards/kiwikeebs/macro/keyboard.json +++ b/keyboards/kiwikeebs/macro/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "B1", "B3", "B2"], "rows": ["E6", "D7"] diff --git a/keyboards/kiwikeebs/macro_v2/config.h b/keyboards/kiwikeebs/macro_v2/config.h deleted file mode 100644 index 2238a4171fd..00000000000 --- a/keyboards/kiwikeebs/macro_v2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 KiwiKeebs - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kiwikeebs/macro_v2/keyboard.json b/keyboards/kiwikeebs/macro_v2/keyboard.json index d9b693dd1ac..38484579904 100644 --- a/keyboards/kiwikeebs/macro_v2/keyboard.json +++ b/keyboards/kiwikeebs/macro_v2/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "C6", "C7", "D4"], "rows": ["B5", "B4"] diff --git a/keyboards/kiwikey/borderland/config.h b/keyboards/kiwikey/borderland/config.h deleted file mode 100644 index bff2f881e87..00000000000 --- a/keyboards/kiwikey/borderland/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2021 KiwiKey (@KiwiKey) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kiwikey/borderland/keyboard.json b/keyboards/kiwikey/borderland/keyboard.json index 247c6b304d4..c4bf2eaba5e 100644 --- a/keyboards/kiwikey/borderland/keyboard.json +++ b/keyboards/kiwikey/borderland/keyboard.json @@ -20,7 +20,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgblight": { "saturation_steps": 8, diff --git a/keyboards/kiwikey/kawii9/config.h b/keyboards/kiwikey/kawii9/config.h deleted file mode 100644 index bc1b5f6c88d..00000000000 --- a/keyboards/kiwikey/kawii9/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 KiwiKey - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kiwikey/kawii9/keyboard.json b/keyboards/kiwikey/kawii9/keyboard.json index 07b4cca097a..bb11911cdef 100644 --- a/keyboards/kiwikey/kawii9/keyboard.json +++ b/keyboards/kiwikey/kawii9/keyboard.json @@ -42,6 +42,12 @@ "extrakey": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_ortho_3x3": { "layout": [ diff --git a/keyboards/kiwikey/wanderland/config.h b/keyboards/kiwikey/wanderland/config.h deleted file mode 100644 index 1a4dea1b385..00000000000 --- a/keyboards/kiwikey/wanderland/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 KiwiKey - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kiwikey/wanderland/keyboard.json b/keyboards/kiwikey/wanderland/keyboard.json index b4d4d4f5166..3dd7c668ac0 100644 --- a/keyboards/kiwikey/wanderland/keyboard.json +++ b/keyboards/kiwikey/wanderland/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "B4", "D7", "D6", "D5", "D2", "D3", "B0", "F0", "B1", "B2", "B3"], "rows": ["F4", "F1", "E6", "E2", "C7", "D4"] diff --git a/keyboards/kkatano/bakeneko60/config.h b/keyboards/kkatano/bakeneko60/config.h deleted file mode 100644 index 6aac1d9a5eb..00000000000 --- a/keyboards/kkatano/bakeneko60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Koichi Katano - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kkatano/bakeneko60/keyboard.json b/keyboards/kkatano/bakeneko60/keyboard.json index a8d9e655a19..fee9b9d533d 100644 --- a/keyboards/kkatano/bakeneko60/keyboard.json +++ b/keyboards/kkatano/bakeneko60/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1"], "rows": ["E6", "B7", "F7", "F4", "F5"] diff --git a/keyboards/kkatano/bakeneko65/rev2/config.h b/keyboards/kkatano/bakeneko65/rev2/config.h deleted file mode 100644 index 6aac1d9a5eb..00000000000 --- a/keyboards/kkatano/bakeneko65/rev2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Koichi Katano - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kkatano/bakeneko65/rev2/keyboard.json b/keyboards/kkatano/bakeneko65/rev2/keyboard.json index 92193e52dbb..93ac8a5e500 100644 --- a/keyboards/kkatano/bakeneko65/rev2/keyboard.json +++ b/keyboards/kkatano/bakeneko65/rev2/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["E6", "B7", "F7", "F4", "F5"] diff --git a/keyboards/kkatano/bakeneko65/rev3/config.h b/keyboards/kkatano/bakeneko65/rev3/config.h deleted file mode 100644 index 6aac1d9a5eb..00000000000 --- a/keyboards/kkatano/bakeneko65/rev3/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Koichi Katano - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kkatano/bakeneko65/rev3/keyboard.json b/keyboards/kkatano/bakeneko65/rev3/keyboard.json index d0717c1893d..3892da5d04e 100644 --- a/keyboards/kkatano/bakeneko65/rev3/keyboard.json +++ b/keyboards/kkatano/bakeneko65/rev3/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["E6", "B7", "F7", "F4", "F5"] diff --git a/keyboards/kkatano/bakeneko80/config.h b/keyboards/kkatano/bakeneko80/config.h deleted file mode 100644 index 6aac1d9a5eb..00000000000 --- a/keyboards/kkatano/bakeneko80/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Koichi Katano - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kkatano/bakeneko80/keyboard.json b/keyboards/kkatano/bakeneko80/keyboard.json index ee005086c3b..06f7eeb4db5 100644 --- a/keyboards/kkatano/bakeneko80/keyboard.json +++ b/keyboards/kkatano/bakeneko80/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2"], "rows": ["E6", "B0", "B1", "B7", "D1", "D0"] diff --git a/keyboards/kkatano/wallaby/config.h b/keyboards/kkatano/wallaby/config.h deleted file mode 100644 index 6aac1d9a5eb..00000000000 --- a/keyboards/kkatano/wallaby/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Koichi Katano - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kkatano/wallaby/keyboard.json b/keyboards/kkatano/wallaby/keyboard.json index e7c76c46a0a..ee475a54bc0 100644 --- a/keyboards/kkatano/wallaby/keyboard.json +++ b/keyboards/kkatano/wallaby/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "C7", "C6", "D4", "D0", "E6", "F0", "F1", "F4", "F5", "F6", "F7", "D7", "D6", "D1", "D2", "D3"], "rows": ["B5", "B4", "B3", "B2", "B1", "B0"] diff --git a/keyboards/kkatano/yurei/config.h b/keyboards/kkatano/yurei/config.h deleted file mode 100644 index 6954b381821..00000000000 --- a/keyboards/kkatano/yurei/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Koichi Katano - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kkatano/yurei/keyboard.json b/keyboards/kkatano/yurei/keyboard.json index 32490148465..7bf08957872 100644 --- a/keyboards/kkatano/yurei/keyboard.json +++ b/keyboards/kkatano/yurei/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "C7", "C6", "D4", "D0", "E6", "F0", "F1", "F4", "F5", "F6", "F7", "D7", "D6", "D1", "D2", "D3"], "rows": ["B5", "B4", "B3", "B2", "B1", "B0"] diff --git a/keyboards/knops/mini/config.h b/keyboards/knops/mini/config.h deleted file mode 100644 index 8b274e7f0f8..00000000000 --- a/keyboards/knops/mini/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 Pawnerd - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/knops/mini/keyboard.json b/keyboards/knops/mini/keyboard.json index 721e3d7b36b..10b18faf8d7 100644 --- a/keyboards/knops/mini/keyboard.json +++ b/keyboards/knops/mini/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["D0"] diff --git a/keyboards/kona_classic/config.h b/keyboards/kona_classic/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/kona_classic/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kona_classic/keyboard.json b/keyboards/kona_classic/keyboard.json index 01388f363a8..79bef89bb64 100644 --- a/keyboards/kona_classic/keyboard.json +++ b/keyboards/kona_classic/keyboard.json @@ -37,6 +37,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F4", "B5", "B4", "D7", "D6", "B0", "B1", "B3", "D2", "B7", "D0", "D1", "D3", "C6", "C7"], "rows": ["F1", "F5", "F6", "F7", "B6"] diff --git a/keyboards/kopibeng/mnk60_stm32/config.h b/keyboards/kopibeng/mnk60_stm32/config.h deleted file mode 100644 index 625c24bde00..00000000000 --- a/keyboards/kopibeng/mnk60_stm32/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2023 Samuel Lu - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kopibeng/mnk60_stm32/keyboard.json b/keyboards/kopibeng/mnk60_stm32/keyboard.json index be1f3cd409f..e0853d543f5 100644 --- a/keyboards/kopibeng/mnk60_stm32/keyboard.json +++ b/keyboards/kopibeng/mnk60_stm32/keyboard.json @@ -13,6 +13,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "A0" }, diff --git a/keyboards/kopibeng/mnk65/config.h b/keyboards/kopibeng/mnk65/config.h deleted file mode 100644 index 62a2978f67c..00000000000 --- a/keyboards/kopibeng/mnk65/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Samuel Lu - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kopibeng/mnk65/keyboard.json b/keyboards/kopibeng/mnk65/keyboard.json index 24113c3ce51..3c6e04f1167 100644 --- a/keyboards/kopibeng/mnk65/keyboard.json +++ b/keyboards/kopibeng/mnk65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "F5"], "rows": ["B3", "D0", "F6", "F4", "F1"] diff --git a/keyboards/kopibeng/mnk65_stm32/config.h b/keyboards/kopibeng/mnk65_stm32/config.h deleted file mode 100644 index 62a2978f67c..00000000000 --- a/keyboards/kopibeng/mnk65_stm32/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Samuel Lu - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kopibeng/mnk65_stm32/keyboard.json b/keyboards/kopibeng/mnk65_stm32/keyboard.json index f3c57063c94..c71394ba843 100644 --- a/keyboards/kopibeng/mnk65_stm32/keyboard.json +++ b/keyboards/kopibeng/mnk65_stm32/keyboard.json @@ -13,6 +13,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "A8" }, diff --git a/keyboards/kopibeng/mnk88/config.h b/keyboards/kopibeng/mnk88/config.h deleted file mode 100644 index 62a2978f67c..00000000000 --- a/keyboards/kopibeng/mnk88/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Samuel Lu - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kopibeng/mnk88/keyboard.json b/keyboards/kopibeng/mnk88/keyboard.json index 8a63d6562b0..29d2d70ba93 100644 --- a/keyboards/kopibeng/mnk88/keyboard.json +++ b/keyboards/kopibeng/mnk88/keyboard.json @@ -34,6 +34,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A2", "A1", "A0", "B11", "B10", "B2", "F1", "B1", "B0", "A7", "A6", "A5", "F0", "A4", "C15", "C14", "C13"], "rows": ["A8", "B15", "A9", "B12", "A3", "B14"] diff --git a/keyboards/kopibeng/typ65/config.h b/keyboards/kopibeng/typ65/config.h index 76cd3ae659d..48c3abee25f 100644 --- a/keyboards/kopibeng/typ65/config.h +++ b/keyboards/kopibeng/typ65/config.h @@ -19,8 +19,3 @@ #define INDICATOR_0 B2 #define INDICATOR_1 B7 #define INDICATOR_2 B3 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kopibeng/typ65/keyboard.json b/keyboards/kopibeng/typ65/keyboard.json index c2598cadcb6..57a23da4ad2 100644 --- a/keyboards/kopibeng/typ65/keyboard.json +++ b/keyboards/kopibeng/typ65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F5", "F4", "F1", "F0", "E6"], "rows": ["D0", "D1", "D2", "F6", "B0"] diff --git a/keyboards/kopibeng/xt60/config.h b/keyboards/kopibeng/xt60/config.h deleted file mode 100644 index 62a2978f67c..00000000000 --- a/keyboards/kopibeng/xt60/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Samuel Lu - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kopibeng/xt60/keyboard.json b/keyboards/kopibeng/xt60/keyboard.json index 70b5a06ab4e..2901c056dd9 100644 --- a/keyboards/kopibeng/xt60/keyboard.json +++ b/keyboards/kopibeng/xt60/keyboard.json @@ -33,6 +33,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "F5", "F1", "F0", "C6", "B6", "B5", "B4", "D7", "D6", "D5", "D3", "D2", "D1"], "rows": ["F7", "F4", "D0", "B3", "B7"] diff --git a/keyboards/kopibeng/xt60_singa/config.h b/keyboards/kopibeng/xt60_singa/config.h deleted file mode 100644 index 62a2978f67c..00000000000 --- a/keyboards/kopibeng/xt60_singa/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Samuel Lu - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kopibeng/xt60_singa/keyboard.json b/keyboards/kopibeng/xt60_singa/keyboard.json index 844d9b7aca6..688fa2f73aa 100644 --- a/keyboards/kopibeng/xt60_singa/keyboard.json +++ b/keyboards/kopibeng/xt60_singa/keyboard.json @@ -33,6 +33,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "F5", "F1", "F0", "C6", "B6", "B5", "B4", "D7", "D6", "D5", "D3", "D2", "D1"], "rows": ["F7", "F4", "D0", "B3", "B7"] diff --git a/keyboards/kopibeng/xt65/config.h b/keyboards/kopibeng/xt65/config.h deleted file mode 100644 index 2ef1d22576d..00000000000 --- a/keyboards/kopibeng/xt65/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2021 Samuel Lu - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kopibeng/xt65/keyboard.json b/keyboards/kopibeng/xt65/keyboard.json index f5d53e0af42..c73ff703d5d 100644 --- a/keyboards/kopibeng/xt65/keyboard.json +++ b/keyboards/kopibeng/xt65/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D2", "D3", "B6", "C6", "C7", "F0", "F1", "F4", "F5", "F6", "F7", "B2", "B3", "B7"], "rows": ["B5", "B4", "D7", "D6", "D4"] diff --git a/keyboards/kopibeng/xt8x/config.h b/keyboards/kopibeng/xt8x/config.h index 5f12451e15d..65961eb2263 100644 --- a/keyboards/kopibeng/xt8x/config.h +++ b/keyboards/kopibeng/xt8x/config.h @@ -17,8 +17,3 @@ #pragma once #define INDICATOR_PIN_0 B13 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kopibeng/xt8x/keyboard.json b/keyboards/kopibeng/xt8x/keyboard.json index 379ca9ee679..7167cb1d078 100644 --- a/keyboards/kopibeng/xt8x/keyboard.json +++ b/keyboards/kopibeng/xt8x/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A2", "A1", "A0", "B11", "B10", "B2", "F1", "B1", "B0", "A7", "A6", "A5", "F0", "A4", "C15", "C14", "C13"], "rows": ["A8", "B15", "A9", "B12", "A3", "B14"] diff --git a/keyboards/kprepublic/bm16s/config.h b/keyboards/kprepublic/bm16s/config.h deleted file mode 100755 index 5f360813239..00000000000 --- a/keyboards/kprepublic/bm16s/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kprepublic/bm16s/keyboard.json b/keyboards/kprepublic/bm16s/keyboard.json index c1dce5d3009..8c6ce05bb96 100644 --- a/keyboards/kprepublic/bm16s/keyboard.json +++ b/keyboards/kprepublic/bm16s/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "D4", "D6"], "rows": ["D1", "D0", "D3", "D2"] diff --git a/keyboards/kprepublic/bm40hsrgb/rev1/config.h b/keyboards/kprepublic/bm40hsrgb/rev1/config.h deleted file mode 100755 index 0ddf7838246..00000000000 --- a/keyboards/kprepublic/bm40hsrgb/rev1/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 tominabox1 - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kprepublic/bm40hsrgb/rev1/keyboard.json b/keyboards/kprepublic/bm40hsrgb/rev1/keyboard.json index 83da66a0a1c..7bdeafbcad2 100644 --- a/keyboards/kprepublic/bm40hsrgb/rev1/keyboard.json +++ b/keyboards/kprepublic/bm40hsrgb/rev1/keyboard.json @@ -73,6 +73,12 @@ "nkro": false, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "C6", "B4", "D7", "D4", "D6", "C7", "F6", "F5", "F4", "F1", "F0"], "rows": ["B3", "B2", "E6", "B5"] diff --git a/keyboards/kprepublic/bm65hsrgb/rev1/config.h b/keyboards/kprepublic/bm65hsrgb/rev1/config.h deleted file mode 100644 index 944a3a8423a..00000000000 --- a/keyboards/kprepublic/bm65hsrgb/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 bytesapart - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kprepublic/bm65hsrgb/rev1/keyboard.json b/keyboards/kprepublic/bm65hsrgb/rev1/keyboard.json index fcc2101b01e..dc63acfa418 100644 --- a/keyboards/kprepublic/bm65hsrgb/rev1/keyboard.json +++ b/keyboards/kprepublic/bm65hsrgb/rev1/keyboard.json @@ -26,6 +26,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6"], "rows": ["B0", "B1", "B2", "B3", "E6"] diff --git a/keyboards/kprepublic/bm68hsrgb/rev1/config.h b/keyboards/kprepublic/bm68hsrgb/rev1/config.h deleted file mode 100644 index 458ef985698..00000000000 --- a/keyboards/kprepublic/bm68hsrgb/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 peepeetee - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kprepublic/bm68hsrgb/rev1/keyboard.json b/keyboards/kprepublic/bm68hsrgb/rev1/keyboard.json index ca68c78756c..6e2d3a92087 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev1/keyboard.json +++ b/keyboards/kprepublic/bm68hsrgb/rev1/keyboard.json @@ -72,6 +72,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6"], "rows": ["B0", "B1", "B2", "B3", "E6"] diff --git a/keyboards/kprepublic/bm980hsrgb/config.h b/keyboards/kprepublic/bm980hsrgb/config.h deleted file mode 100644 index 458ef985698..00000000000 --- a/keyboards/kprepublic/bm980hsrgb/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 peepeetee - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kprepublic/bm980hsrgb/keyboard.json b/keyboards/kprepublic/bm980hsrgb/keyboard.json index 717a514fe87..8ee498b7b60 100644 --- a/keyboards/kprepublic/bm980hsrgb/keyboard.json +++ b/keyboards/kprepublic/bm980hsrgb/keyboard.json @@ -23,6 +23,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "D5", "E6", "F0", "F1", "F4", "F5", "D6"], "rows": ["D4", "B6", "B5", "B4", "F7", "F6", "D7"] diff --git a/keyboards/kprepublic/cospad/config.h b/keyboards/kprepublic/cospad/config.h deleted file mode 100644 index 5e90ea1c05b..00000000000 --- a/keyboards/kprepublic/cospad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kprepublic/cospad/keyboard.json b/keyboards/kprepublic/cospad/keyboard.json index 233e258e1d7..51a824b8165 100644 --- a/keyboards/kprepublic/cospad/keyboard.json +++ b/keyboards/kprepublic/cospad/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7"], "rows": ["D0", "D1", "D2", "D3", "D4", "D5"] diff --git a/keyboards/ktec/daisy/config.h b/keyboards/ktec/daisy/config.h deleted file mode 100644 index 5e90ea1c05b..00000000000 --- a/keyboards/ktec/daisy/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ktec/daisy/keyboard.json b/keyboards/ktec/daisy/keyboard.json index 3d230b03f48..d0a24f5b0d3 100644 --- a/keyboards/ktec/daisy/keyboard.json +++ b/keyboards/ktec/daisy/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "B6", "B5", "B4", "D7", "D6"], "rows": ["D2", "D3", "D5", "B7"] diff --git a/keyboards/kumaokobo/kudox/columner/config.h b/keyboards/kumaokobo/kudox/columner/config.h index 04bc8cb2d21..fc2549733e8 100644 --- a/keyboards/kumaokobo/kudox/columner/config.h +++ b/keyboards/kumaokobo/kudox/columner/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kumaokobo/kudox/columner/keyboard.json b/keyboards/kumaokobo/kudox/columner/keyboard.json index 903d0d97a57..2fde419205a 100644 --- a/keyboards/kumaokobo/kudox/columner/keyboard.json +++ b/keyboards/kumaokobo/kudox/columner/keyboard.json @@ -46,6 +46,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kumaokobo/kudox/rev1/config.h b/keyboards/kumaokobo/kudox/rev1/config.h index 666cb49b2e4..1bf4f3c026e 100644 --- a/keyboards/kumaokobo/kudox/rev1/config.h +++ b/keyboards/kumaokobo/kudox/rev1/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kumaokobo/kudox/rev1/keyboard.json b/keyboards/kumaokobo/kudox/rev1/keyboard.json index 2be4cefc569..ba4dbe7ae37 100644 --- a/keyboards/kumaokobo/kudox/rev1/keyboard.json +++ b/keyboards/kumaokobo/kudox/rev1/keyboard.json @@ -46,6 +46,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kumaokobo/kudox/rev2/config.h b/keyboards/kumaokobo/kudox/rev2/config.h index 666cb49b2e4..1bf4f3c026e 100644 --- a/keyboards/kumaokobo/kudox/rev2/config.h +++ b/keyboards/kumaokobo/kudox/rev2/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kumaokobo/kudox/rev2/keyboard.json b/keyboards/kumaokobo/kudox/rev2/keyboard.json index a5dad94322b..a7423adf111 100644 --- a/keyboards/kumaokobo/kudox/rev2/keyboard.json +++ b/keyboards/kumaokobo/kudox/rev2/keyboard.json @@ -46,6 +46,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kumaokobo/kudox/rev3/config.h b/keyboards/kumaokobo/kudox/rev3/config.h index 04bc8cb2d21..fc2549733e8 100644 --- a/keyboards/kumaokobo/kudox/rev3/config.h +++ b/keyboards/kumaokobo/kudox/rev3/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kumaokobo/kudox/rev3/keyboard.json b/keyboards/kumaokobo/kudox/rev3/keyboard.json index 1fe349a99ef..25ead435052 100644 --- a/keyboards/kumaokobo/kudox/rev3/keyboard.json +++ b/keyboards/kumaokobo/kudox/rev3/keyboard.json @@ -46,6 +46,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kumaokobo/kudox_full/rev1/config.h b/keyboards/kumaokobo/kudox_full/rev1/config.h deleted file mode 100644 index f1dcbbcf3df..00000000000 --- a/keyboards/kumaokobo/kudox_full/rev1/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2021 Kumao Kobo (@kumaokobo) -// SPDX-License-Identifier: GPL-2.0+ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/kumaokobo/kudox_full/rev1/keyboard.json b/keyboards/kumaokobo/kudox_full/rev1/keyboard.json index 046bc8e1824..09d1cd152c7 100644 --- a/keyboards/kumaokobo/kudox_full/rev1/keyboard.json +++ b/keyboards/kumaokobo/kudox_full/rev1/keyboard.json @@ -44,6 +44,12 @@ "unicode": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/kumaokobo/kudox_game/rev1/config.h b/keyboards/kumaokobo/kudox_game/rev1/config.h index b0b9607f4bb..0a8c5278dca 100644 --- a/keyboards/kumaokobo/kudox_game/rev1/config.h +++ b/keyboards/kumaokobo/kudox_game/rev1/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kumaokobo/kudox_game/rev1/keyboard.json b/keyboards/kumaokobo/kudox_game/rev1/keyboard.json index 2163b89d971..975fbcd5467 100644 --- a/keyboards/kumaokobo/kudox_game/rev1/keyboard.json +++ b/keyboards/kumaokobo/kudox_game/rev1/keyboard.json @@ -35,6 +35,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kumaokobo/kudox_game/rev2/config.h b/keyboards/kumaokobo/kudox_game/rev2/config.h index 37fde915999..f1572e18d50 100644 --- a/keyboards/kumaokobo/kudox_game/rev2/config.h +++ b/keyboards/kumaokobo/kudox_game/rev2/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kumaokobo/kudox_game/rev2/keyboard.json b/keyboards/kumaokobo/kudox_game/rev2/keyboard.json index 554d03c76bd..ac13e1b216b 100644 --- a/keyboards/kumaokobo/kudox_game/rev2/keyboard.json +++ b/keyboards/kumaokobo/kudox_game/rev2/keyboard.json @@ -36,6 +36,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kumaokobo/pico/65keys/config.h b/keyboards/kumaokobo/pico/65keys/config.h index 04bc8cb2d21..fc2549733e8 100644 --- a/keyboards/kumaokobo/pico/65keys/config.h +++ b/keyboards/kumaokobo/pico/65keys/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kumaokobo/pico/65keys/keyboard.json b/keyboards/kumaokobo/pico/65keys/keyboard.json index efcc96e1dcd..00113a931f3 100644 --- a/keyboards/kumaokobo/pico/65keys/keyboard.json +++ b/keyboards/kumaokobo/pico/65keys/keyboard.json @@ -46,6 +46,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kumaokobo/pico/70keys/config.h b/keyboards/kumaokobo/pico/70keys/config.h index 04bc8cb2d21..fc2549733e8 100644 --- a/keyboards/kumaokobo/pico/70keys/config.h +++ b/keyboards/kumaokobo/pico/70keys/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/kumaokobo/pico/70keys/keyboard.json b/keyboards/kumaokobo/pico/70keys/keyboard.json index 8fe91b84cce..a820c7eee32 100644 --- a/keyboards/kumaokobo/pico/70keys/keyboard.json +++ b/keyboards/kumaokobo/pico/70keys/keyboard.json @@ -46,6 +46,12 @@ "command": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/kv/revt/config.h b/keyboards/kv/revt/config.h deleted file mode 100644 index c2fe5d4d755..00000000000 --- a/keyboards/kv/revt/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2020 Hybrid65 - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE diff --git a/keyboards/kv/revt/keyboard.json b/keyboards/kv/revt/keyboard.json index 1c2ee5a84ab..8553dcdd355 100644 --- a/keyboards/kv/revt/keyboard.json +++ b/keyboards/kv/revt/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": false + } + }, "matrix_pins": { "cols": ["B7", "B6", "B5", "B4", "B3", "B2", "B14", "B1", "B15", "B0", "B9", "B10", "B11", "B12", "A14", "A13", "A4", "A5", "A7", "A8", "A15"], "rows": ["A6", "B13", "B8", "A0", "A1", "A2"] diff --git a/keyboards/kwub/bloop/config.h b/keyboards/kwub/bloop/config.h deleted file mode 100644 index 87dc81c24d5..00000000000 --- a/keyboards/kwub/bloop/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Kwabena Aduse-Poku (Kwub) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kwub/bloop/keyboard.json b/keyboards/kwub/bloop/keyboard.json index b482b571be3..2889ef1598c 100644 --- a/keyboards/kwub/bloop/keyboard.json +++ b/keyboards/kwub/bloop/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "B5", "B6", "F6", "F1", "F7", "F0", "B0", "B7", "D3", "D2", "D1", "D5", "D4", "D6"], "rows": ["F5", "F4", "C6", "C7", "D7"] diff --git a/keyboards/ky01/config.h b/keyboards/ky01/config.h deleted file mode 100644 index 224b56103a5..00000000000 --- a/keyboards/ky01/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 KnoblesseOblige - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ky01/keyboard.json b/keyboards/ky01/keyboard.json index b9e4eeef70f..f5657ac93f2 100644 --- a/keyboards/ky01/keyboard.json +++ b/keyboards/ky01/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B7", "D0", "D1", "D2", "D3", "D5", "F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6"], "rows": ["E6", "B5", "B4", "D7", "D4", "D6"] From 2e0498080f79c0d79bfa4ae91405d6cf0c3d959b Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 22 May 2024 14:14:00 -0700 Subject: [PATCH 038/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: K, Part 2 (#23769) Affects: - `keebio/bamfk4` - `keebio/bdn9/rev1` - `keebio/bdn9/rev2` - `keebio/bfo9000` - `keebio/bigswitchseat` - `keebio/choconum` - `keebio/dilly` - `keebio/dsp40/rev1` - `keebio/ergodicity` - `keebio/foldkb/rev1` - `keebio/fourier` - `keebio/iris/rev1` - `keebio/iris/rev1_led` - `keebio/iris/rev2` - `keebio/iris/rev3` - `keebio/iris/rev4` - `keebio/kbo5000/rev1` - `keebio/levinson/rev1` - `keebio/levinson/rev2` - `keebio/levinson/rev3` - `keebio/nyquist/rev1` - `keebio/nyquist/rev2` - `keebio/nyquist/rev3` - `keebio/quefrency/rev1` - `keebio/quefrency/rev4` - `keebio/quefrency/rev5` - `keebio/rorschach/rev1` - `keebio/sinc/rev1` - `keebio/sinc/rev2` - `keebio/tragicforce68` - `keebio/tukey` - `keebio/viterbi/rev1` - `keebio/viterbi/rev2` - `keebio/wavelet` - `keebio/wtf60` - `keebsforall/coarse60` - `keebsforall/freebirdnp/lite` - `keebsforall/freebirdnp/pro` - `keebsforall/freebirdtkl` - `keebwerk/nano_slider` - `keebzdotnet/fme` - `keebzdotnet/wazowski` - `keyboardio/atreus` - `keycapsss/kimiko/rev1` - `keycapsss/o4l_5x12` - `keygem/kg60ansi` - `keygem/kg65rgbv2` - `keyhive/absinthe` - `keyhive/ergosaurus` - `keyhive/lattice60` - `keyhive/maypad` - `keyhive/navi10/rev0` - `keyhive/navi10/rev2` - `keyhive/navi10/rev3` - `keyhive/opus` - `keyhive/southpole` - `keyhive/ut472` - `keyprez/bison` - `keyprez/corgi` - `keyprez/rhino` - `keyprez/unicorn` - `keysofkings/twokey` - `keystonecaps/gameroyadvance` --- keyboards/keebio/bamfk4/config.h | 5 --- keyboards/keebio/bamfk4/keyboard.json | 6 +++ keyboards/keebio/bdn9/rev1/config.h | 23 ----------- keyboards/keebio/bdn9/rev1/keyboard.json | 6 +++ keyboards/keebio/bdn9/rev2/config.h | 23 ----------- keyboards/keebio/bdn9/rev2/keyboard.json | 6 ++- keyboards/keebio/bfo9000/config.h | 40 ------------------ keyboards/keebio/bfo9000/keyboard.json | 6 +++ keyboards/keebio/bigswitchseat/config.h | 25 ----------- keyboards/keebio/bigswitchseat/keyboard.json | 6 +++ keyboards/keebio/choconum/config.h | 39 ------------------ keyboards/keebio/choconum/keyboard.json | 6 +++ keyboards/keebio/dilly/config.h | 7 ---- keyboards/keebio/dilly/keyboard.json | 6 +++ keyboards/keebio/dsp40/rev1/config.h | 5 --- keyboards/keebio/dsp40/rev1/keyboard.json | 6 ++- keyboards/keebio/ergodicity/config.h | 39 ------------------ keyboards/keebio/ergodicity/keyboard.json | 6 +++ keyboards/keebio/foldkb/rev1/config.h | 5 --- keyboards/keebio/foldkb/rev1/keyboard.json | 6 +++ keyboards/keebio/fourier/config.h | 5 --- keyboards/keebio/fourier/keyboard.json | 6 +++ keyboards/keebio/iris/rev1/config.h | 23 ----------- keyboards/keebio/iris/rev1/keyboard.json | 6 +++ keyboards/keebio/iris/rev1_led/config.h | 23 ----------- keyboards/keebio/iris/rev1_led/keyboard.json | 6 +++ keyboards/keebio/iris/rev2/config.h | 23 ----------- keyboards/keebio/iris/rev2/keyboard.json | 6 +++ keyboards/keebio/iris/rev3/config.h | 5 --- keyboards/keebio/iris/rev3/keyboard.json | 6 +++ keyboards/keebio/iris/rev4/config.h | 5 --- keyboards/keebio/iris/rev4/keyboard.json | 6 +++ keyboards/keebio/kbo5000/rev1/config.h | 5 --- keyboards/keebio/kbo5000/rev1/keyboard.json | 6 +++ keyboards/keebio/levinson/rev1/config.h | 25 ----------- keyboards/keebio/levinson/rev1/keyboard.json | 6 +++ keyboards/keebio/levinson/rev2/config.h | 25 ----------- keyboards/keebio/levinson/rev2/keyboard.json | 6 +++ keyboards/keebio/levinson/rev3/config.h | 5 --- keyboards/keebio/levinson/rev3/keyboard.json | 6 +++ keyboards/keebio/nyquist/rev1/config.h | 39 ------------------ keyboards/keebio/nyquist/rev1/keyboard.json | 6 +++ keyboards/keebio/nyquist/rev2/config.h | 39 ------------------ keyboards/keebio/nyquist/rev2/keyboard.json | 6 +++ keyboards/keebio/nyquist/rev3/config.h | 5 --- keyboards/keebio/nyquist/rev3/keyboard.json | 6 +++ keyboards/keebio/quefrency/rev1/config.h | 5 --- keyboards/keebio/quefrency/rev1/keyboard.json | 6 +++ keyboards/keebio/quefrency/rev4/config.h | 5 --- keyboards/keebio/quefrency/rev4/keyboard.json | 6 +++ keyboards/keebio/quefrency/rev5/config.h | 5 --- keyboards/keebio/quefrency/rev5/keyboard.json | 6 +++ keyboards/keebio/rorschach/rev1/config.h | 23 ----------- keyboards/keebio/rorschach/rev1/keyboard.json | 6 +++ keyboards/keebio/sinc/rev1/config.h | 5 --- keyboards/keebio/sinc/rev1/keyboard.json | 6 +++ keyboards/keebio/sinc/rev2/config.h | 5 --- keyboards/keebio/sinc/rev2/keyboard.json | 6 +++ keyboards/keebio/tragicforce68/config.h | 23 ----------- keyboards/keebio/tragicforce68/keyboard.json | 6 +++ keyboards/keebio/tukey/config.h | 23 ----------- keyboards/keebio/tukey/keyboard.json | 6 +++ keyboards/keebio/viterbi/rev1/config.h | 23 ----------- keyboards/keebio/viterbi/rev1/keyboard.json | 6 +++ keyboards/keebio/viterbi/rev2/config.h | 5 --- keyboards/keebio/viterbi/rev2/keyboard.json | 6 +++ keyboards/keebio/wavelet/config.h | 25 ----------- keyboards/keebio/wavelet/keyboard.json | 6 +++ keyboards/keebio/wtf60/config.h | 5 --- keyboards/keebio/wtf60/keyboard.json | 6 +++ keyboards/keebsforall/coarse60/config.h | 5 --- keyboards/keebsforall/coarse60/keyboard.json | 6 +++ .../keebsforall/freebirdnp/lite/config.h | 23 ----------- .../keebsforall/freebirdnp/lite/keyboard.json | 6 +++ keyboards/keebsforall/freebirdnp/pro/config.h | 23 ----------- .../keebsforall/freebirdnp/pro/keyboard.json | 6 +++ keyboards/keebsforall/freebirdtkl/config.h | 21 ---------- .../keebsforall/freebirdtkl/keyboard.json | 6 +++ keyboards/keebwerk/nano_slider/config.h | 5 --- keyboards/keebwerk/nano_slider/keyboard.json | 6 +++ keyboards/keebzdotnet/fme/config.h | 24 ----------- keyboards/keebzdotnet/fme/keyboard.json | 6 +++ keyboards/keebzdotnet/wazowski/config.h | 39 ------------------ keyboards/keebzdotnet/wazowski/keyboard.json | 6 +++ keyboards/keyboardio/atreus/config.h | 38 ----------------- keyboards/keyboardio/atreus/keyboard.json | 6 +++ keyboards/keycapsss/kimiko/rev1/config.h | 5 --- keyboards/keycapsss/kimiko/rev1/keyboard.json | 6 +++ keyboards/keycapsss/o4l_5x12/config.h | 22 ---------- keyboards/keycapsss/o4l_5x12/keyboard.json | 6 +++ keyboards/keygem/kg60ansi/config.h | 41 ------------------- keyboards/keygem/kg60ansi/keyboard.json | 6 +++ keyboards/keygem/kg65rgbv2/config.h | 41 ------------------- keyboards/keygem/kg65rgbv2/keyboard.json | 6 +++ keyboards/keyhive/absinthe/config.h | 23 ----------- keyboards/keyhive/absinthe/keyboard.json | 6 +++ keyboards/keyhive/ergosaurus/config.h | 39 ------------------ keyboards/keyhive/ergosaurus/keyboard.json | 6 +++ keyboards/keyhive/lattice60/config.h | 39 ------------------ keyboards/keyhive/lattice60/keyboard.json | 6 +++ keyboards/keyhive/maypad/config.h | 36 ---------------- keyboards/keyhive/maypad/keyboard.json | 6 +++ keyboards/keyhive/navi10/rev0/config.h | 24 ----------- keyboards/keyhive/navi10/rev0/keyboard.json | 6 +++ keyboards/keyhive/navi10/rev2/config.h | 24 ----------- keyboards/keyhive/navi10/rev2/keyboard.json | 6 +++ keyboards/keyhive/navi10/rev3/config.h | 24 ----------- keyboards/keyhive/navi10/rev3/keyboard.json | 6 +++ keyboards/keyhive/opus/config.h | 22 ---------- keyboards/keyhive/opus/keyboard.json | 6 +++ keyboards/keyhive/southpole/config.h | 7 ---- keyboards/keyhive/southpole/keyboard.json | 6 +++ keyboards/keyhive/ut472/config.h | 22 ---------- keyboards/keyhive/ut472/keyboard.json | 6 +++ keyboards/keyprez/bison/config.h | 39 ------------------ keyboards/keyprez/bison/keyboard.json | 6 +++ keyboards/keyprez/corgi/config.h | 23 ----------- keyboards/keyprez/corgi/keyboard.json | 6 +++ keyboards/keyprez/rhino/config.h | 5 --- keyboards/keyprez/rhino/keyboard.json | 6 +++ keyboards/keyprez/unicorn/config.h | 5 --- keyboards/keyprez/unicorn/keyboard.json | 6 +++ keyboards/keysofkings/twokey/config.h | 6 --- keyboards/keysofkings/twokey/keyboard.json | 6 +++ .../keystonecaps/gameroyadvance/config.h | 24 ----------- .../keystonecaps/gameroyadvance/keyboard.json | 6 +++ 126 files changed, 376 insertions(+), 1241 deletions(-) delete mode 100644 keyboards/keebio/bdn9/rev1/config.h delete mode 100644 keyboards/keebio/bdn9/rev2/config.h delete mode 100644 keyboards/keebio/bfo9000/config.h delete mode 100644 keyboards/keebio/bigswitchseat/config.h delete mode 100644 keyboards/keebio/choconum/config.h delete mode 100644 keyboards/keebio/dilly/config.h delete mode 100644 keyboards/keebio/ergodicity/config.h delete mode 100644 keyboards/keebio/iris/rev1/config.h delete mode 100644 keyboards/keebio/iris/rev1_led/config.h delete mode 100644 keyboards/keebio/iris/rev2/config.h delete mode 100644 keyboards/keebio/levinson/rev1/config.h delete mode 100644 keyboards/keebio/levinson/rev2/config.h delete mode 100644 keyboards/keebio/nyquist/rev1/config.h delete mode 100644 keyboards/keebio/nyquist/rev2/config.h delete mode 100644 keyboards/keebio/rorschach/rev1/config.h delete mode 100644 keyboards/keebio/tragicforce68/config.h delete mode 100644 keyboards/keebio/tukey/config.h delete mode 100644 keyboards/keebio/viterbi/rev1/config.h delete mode 100644 keyboards/keebio/wavelet/config.h delete mode 100644 keyboards/keebsforall/freebirdnp/lite/config.h delete mode 100644 keyboards/keebsforall/freebirdnp/pro/config.h delete mode 100644 keyboards/keebsforall/freebirdtkl/config.h delete mode 100644 keyboards/keebzdotnet/fme/config.h delete mode 100644 keyboards/keebzdotnet/wazowski/config.h delete mode 100644 keyboards/keyboardio/atreus/config.h delete mode 100644 keyboards/keycapsss/o4l_5x12/config.h delete mode 100644 keyboards/keygem/kg60ansi/config.h delete mode 100644 keyboards/keygem/kg65rgbv2/config.h delete mode 100644 keyboards/keyhive/absinthe/config.h delete mode 100644 keyboards/keyhive/ergosaurus/config.h delete mode 100644 keyboards/keyhive/lattice60/config.h delete mode 100644 keyboards/keyhive/maypad/config.h delete mode 100644 keyboards/keyhive/navi10/rev0/config.h delete mode 100644 keyboards/keyhive/navi10/rev2/config.h delete mode 100644 keyboards/keyhive/navi10/rev3/config.h delete mode 100644 keyboards/keyhive/opus/config.h delete mode 100644 keyboards/keyhive/southpole/config.h delete mode 100644 keyboards/keyhive/ut472/config.h delete mode 100644 keyboards/keyprez/bison/config.h delete mode 100644 keyboards/keyprez/corgi/config.h delete mode 100644 keyboards/keystonecaps/gameroyadvance/config.h diff --git a/keyboards/keebio/bamfk4/config.h b/keyboards/keebio/bamfk4/config.h index 21ce4672bf5..e97e28f5a9e 100644 --- a/keyboards/keebio/bamfk4/config.h +++ b/keyboards/keebio/bamfk4/config.h @@ -5,11 +5,6 @@ #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/keebio/bamfk4/keyboard.json b/keyboards/keebio/bamfk4/keyboard.json index a132a4bd46f..829395d6714 100644 --- a/keyboards/keebio/bamfk4/keyboard.json +++ b/keyboards/keebio/bamfk4/keyboard.json @@ -87,6 +87,12 @@ "nkro": false, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "D5", "B6", "B7"], "rows": ["F0"] diff --git a/keyboards/keebio/bdn9/rev1/config.h b/keyboards/keebio/bdn9/rev1/config.h deleted file mode 100644 index 3ed1c2ed30f..00000000000 --- a/keyboards/keebio/bdn9/rev1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/bdn9/rev1/keyboard.json b/keyboards/keebio/bdn9/rev1/keyboard.json index 9ab64e25d6f..1deecf0d5b3 100644 --- a/keyboards/keebio/bdn9/rev1/keyboard.json +++ b/keyboards/keebio/bdn9/rev1/keyboard.json @@ -48,6 +48,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D2", "D4", "F4"], diff --git a/keyboards/keebio/bdn9/rev2/config.h b/keyboards/keebio/bdn9/rev2/config.h deleted file mode 100644 index 5cfd269d500..00000000000 --- a/keyboards/keebio/bdn9/rev2/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/bdn9/rev2/keyboard.json b/keyboards/keebio/bdn9/rev2/keyboard.json index 174c5c826a9..a8a0c8d10da 100644 --- a/keyboards/keebio/bdn9/rev2/keyboard.json +++ b/keyboards/keebio/bdn9/rev2/keyboard.json @@ -81,7 +81,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "processor": "STM32F072", "bootloader": "stm32-dfu", diff --git a/keyboards/keebio/bfo9000/config.h b/keyboards/keebio/bfo9000/config.h deleted file mode 100644 index 0b8941e7760..00000000000 --- a/keyboards/keebio/bfo9000/config.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keebio/bfo9000/keyboard.json b/keyboards/keebio/bfo9000/keyboard.json index 86fd59a5986..36fd272b90d 100644 --- a/keyboards/keebio/bfo9000/keyboard.json +++ b/keyboards/keebio/bfo9000/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D3", "D2", "D4", "C6", "D7", "E6"] diff --git a/keyboards/keebio/bigswitchseat/config.h b/keyboards/keebio/bigswitchseat/config.h deleted file mode 100644 index 6d03529f682..00000000000 --- a/keyboards/keebio/bigswitchseat/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2021 Danny Nguyen (@nooges) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keebio/bigswitchseat/keyboard.json b/keyboards/keebio/bigswitchseat/keyboard.json index b1acf6c1b39..3d6ce65bde4 100644 --- a/keyboards/keebio/bigswitchseat/keyboard.json +++ b/keyboards/keebio/bigswitchseat/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0"], "rows": ["E6"] diff --git a/keyboards/keebio/choconum/config.h b/keyboards/keebio/choconum/config.h deleted file mode 100644 index 38e745515ab..00000000000 --- a/keyboards/keebio/choconum/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Keebio - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keebio/choconum/keyboard.json b/keyboards/keebio/choconum/keyboard.json index 0315a9f3dce..6ff2cc4fb1c 100644 --- a/keyboards/keebio/choconum/keyboard.json +++ b/keyboards/keebio/choconum/keyboard.json @@ -18,6 +18,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["B2", "B10", "B3", "B4"], diff --git a/keyboards/keebio/dilly/config.h b/keyboards/keebio/dilly/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/keebio/dilly/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/dilly/keyboard.json b/keyboards/keebio/dilly/keyboard.json index 45665940544..83bf1eac9d6 100644 --- a/keyboards/keebio/dilly/keyboard.json +++ b/keyboards/keebio/dilly/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D4", "C6", "F6", "F5"], "rows": ["D7", "E6", "B4", "B1", "B3", "B2"] diff --git a/keyboards/keebio/dsp40/rev1/config.h b/keyboards/keebio/dsp40/rev1/config.h index 390ac98a231..f70aad5fd01 100644 --- a/keyboards/keebio/dsp40/rev1/config.h +++ b/keyboards/keebio/dsp40/rev1/config.h @@ -19,8 +19,3 @@ along with this program. If not, see . #define BACKLIGHT_PWM_DRIVER PWMD3 #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/dsp40/rev1/keyboard.json b/keyboards/keebio/dsp40/rev1/keyboard.json index 2011a23b7e5..776f67837c1 100644 --- a/keyboards/keebio/dsp40/rev1/keyboard.json +++ b/keyboards/keebio/dsp40/rev1/keyboard.json @@ -19,7 +19,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "backlight": { "pin": "A6", diff --git a/keyboards/keebio/ergodicity/config.h b/keyboards/keebio/ergodicity/config.h deleted file mode 100644 index 64b776e9f4a..00000000000 --- a/keyboards/keebio/ergodicity/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Keebio - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keebio/ergodicity/keyboard.json b/keyboards/keebio/ergodicity/keyboard.json index 1305a4359f1..f1b1649f8a4 100644 --- a/keyboards/keebio/ergodicity/keyboard.json +++ b/keyboards/keebio/ergodicity/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "D7", "D6", "D4", "D3", "D2", "D1", "D0", "B7", "B3"], "rows": ["B0", "B1", "C7", "B6", "B4"] diff --git a/keyboards/keebio/foldkb/rev1/config.h b/keyboards/keebio/foldkb/rev1/config.h index 73521bc5352..0435a34e7fb 100644 --- a/keyboards/keebio/foldkb/rev1/config.h +++ b/keyboards/keebio/foldkb/rev1/config.h @@ -18,9 +18,4 @@ along with this program. If not, see . #define SPLIT_HAND_PIN F7 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) diff --git a/keyboards/keebio/foldkb/rev1/keyboard.json b/keyboards/keebio/foldkb/rev1/keyboard.json index 891e2ce74bb..c7055400a55 100644 --- a/keyboards/keebio/foldkb/rev1/keyboard.json +++ b/keyboards/keebio/foldkb/rev1/keyboard.json @@ -55,6 +55,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebio/fourier/config.h b/keyboards/keebio/fourier/config.h index d1797c83d57..49d868c9688 100644 --- a/keyboards/keebio/fourier/config.h +++ b/keyboards/keebio/fourier/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . /* Split Defines */ #define SPLIT_HAND_PIN D2 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/keebio/fourier/keyboard.json b/keyboards/keebio/fourier/keyboard.json index a1dab05c567..189276b877e 100644 --- a/keyboards/keebio/fourier/keyboard.json +++ b/keyboards/keebio/fourier/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["F4", "D7", "E6", "B4"] diff --git a/keyboards/keebio/iris/rev1/config.h b/keyboards/keebio/iris/rev1/config.h deleted file mode 100644 index 824ba0bfe4c..00000000000 --- a/keyboards/keebio/iris/rev1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2017 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/iris/rev1/keyboard.json b/keyboards/keebio/iris/rev1/keyboard.json index c6b69c36778..334fbdfc93b 100644 --- a/keyboards/keebio/iris/rev1/keyboard.json +++ b/keyboards/keebio/iris/rev1/keyboard.json @@ -14,6 +14,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D7", "E6", "B4", "B5", "D4"] diff --git a/keyboards/keebio/iris/rev1_led/config.h b/keyboards/keebio/iris/rev1_led/config.h deleted file mode 100644 index 824ba0bfe4c..00000000000 --- a/keyboards/keebio/iris/rev1_led/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2017 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/iris/rev1_led/keyboard.json b/keyboards/keebio/iris/rev1_led/keyboard.json index 70500da27e9..fe934c6c039 100644 --- a/keyboards/keebio/iris/rev1_led/keyboard.json +++ b/keyboards/keebio/iris/rev1_led/keyboard.json @@ -14,6 +14,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "B2", "F4"], "rows": ["D7", "E6", "B4", "B5", "D4"] diff --git a/keyboards/keebio/iris/rev2/config.h b/keyboards/keebio/iris/rev2/config.h deleted file mode 100644 index 824ba0bfe4c..00000000000 --- a/keyboards/keebio/iris/rev2/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2017 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/iris/rev2/keyboard.json b/keyboards/keebio/iris/rev2/keyboard.json index fafa9ba9240..7afe1c5cae7 100644 --- a/keyboards/keebio/iris/rev2/keyboard.json +++ b/keyboards/keebio/iris/rev2/keyboard.json @@ -46,6 +46,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebio/iris/rev3/config.h b/keyboards/keebio/iris/rev3/config.h index e6ddc94df93..ff730d345c4 100644 --- a/keyboards/keebio/iris/rev3/config.h +++ b/keyboards/keebio/iris/rev3/config.h @@ -18,8 +18,3 @@ along with this program. If not, see . #pragma once #define SPLIT_HAND_PIN F0 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/iris/rev3/keyboard.json b/keyboards/keebio/iris/rev3/keyboard.json index 8ce5ed89794..e2353d751f4 100644 --- a/keyboards/keebio/iris/rev3/keyboard.json +++ b/keyboards/keebio/iris/rev3/keyboard.json @@ -57,6 +57,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebio/iris/rev4/config.h b/keyboards/keebio/iris/rev4/config.h index 5586f5890dd..246049a7309 100644 --- a/keyboards/keebio/iris/rev4/config.h +++ b/keyboards/keebio/iris/rev4/config.h @@ -18,8 +18,3 @@ along with this program. If not, see . #pragma once #define SPLIT_HAND_PIN D5 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/iris/rev4/keyboard.json b/keyboards/keebio/iris/rev4/keyboard.json index 88856e0030f..ee06554d08c 100644 --- a/keyboards/keebio/iris/rev4/keyboard.json +++ b/keyboards/keebio/iris/rev4/keyboard.json @@ -70,6 +70,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebio/kbo5000/rev1/config.h b/keyboards/keebio/kbo5000/rev1/config.h index e1d3f968bef..edc732d668b 100644 --- a/keyboards/keebio/kbo5000/rev1/config.h +++ b/keyboards/keebio/kbo5000/rev1/config.h @@ -21,8 +21,3 @@ along with this program. If not, see . #define SPLIT_HAND_PIN F7 #define CAPS_LOCK_LED_PIN B6 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/kbo5000/rev1/keyboard.json b/keyboards/keebio/kbo5000/rev1/keyboard.json index 7733f06efcf..b42b7116db3 100644 --- a/keyboards/keebio/kbo5000/rev1/keyboard.json +++ b/keyboards/keebio/kbo5000/rev1/keyboard.json @@ -69,6 +69,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebio/levinson/rev1/config.h b/keyboards/keebio/levinson/rev1/config.h deleted file mode 100644 index 2fd8b7d4d04..00000000000 --- a/keyboards/keebio/levinson/rev1/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert -Copyright 2018 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/levinson/rev1/keyboard.json b/keyboards/keebio/levinson/rev1/keyboard.json index 1ed976b4a9e..ef4996615c0 100644 --- a/keyboards/keebio/levinson/rev1/keyboard.json +++ b/keyboards/keebio/levinson/rev1/keyboard.json @@ -29,6 +29,12 @@ "extrakey": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT": "LAYOUT_ortho_4x12" }, diff --git a/keyboards/keebio/levinson/rev2/config.h b/keyboards/keebio/levinson/rev2/config.h deleted file mode 100644 index 2fd8b7d4d04..00000000000 --- a/keyboards/keebio/levinson/rev2/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert -Copyright 2018 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/levinson/rev2/keyboard.json b/keyboards/keebio/levinson/rev2/keyboard.json index 73969388d18..a5d3cad8443 100644 --- a/keyboards/keebio/levinson/rev2/keyboard.json +++ b/keyboards/keebio/levinson/rev2/keyboard.json @@ -29,6 +29,12 @@ "extrakey": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT": "LAYOUT_ortho_4x12" }, diff --git a/keyboards/keebio/levinson/rev3/config.h b/keyboards/keebio/levinson/rev3/config.h index e1c73cd56ee..2c1ea67b7aa 100644 --- a/keyboards/keebio/levinson/rev3/config.h +++ b/keyboards/keebio/levinson/rev3/config.h @@ -20,8 +20,3 @@ along with this program. If not, see . #pragma once #define SPLIT_HAND_PIN D2 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/levinson/rev3/keyboard.json b/keyboards/keebio/levinson/rev3/keyboard.json index 5f38fe9874a..995fb8327d8 100644 --- a/keyboards/keebio/levinson/rev3/keyboard.json +++ b/keyboards/keebio/levinson/rev3/keyboard.json @@ -35,6 +35,12 @@ "extrakey": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT": "LAYOUT_ortho_4x12" }, diff --git a/keyboards/keebio/nyquist/rev1/config.h b/keyboards/keebio/nyquist/rev1/config.h deleted file mode 100644 index 6fdc15c582d..00000000000 --- a/keyboards/keebio/nyquist/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keebio/nyquist/rev1/keyboard.json b/keyboards/keebio/nyquist/rev1/keyboard.json index 717b49e9713..7714e4a11c0 100644 --- a/keyboards/keebio/nyquist/rev1/keyboard.json +++ b/keyboards/keebio/nyquist/rev1/keyboard.json @@ -12,6 +12,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "D7", "E6", "B4", "B5"] diff --git a/keyboards/keebio/nyquist/rev2/config.h b/keyboards/keebio/nyquist/rev2/config.h deleted file mode 100644 index 6fdc15c582d..00000000000 --- a/keyboards/keebio/nyquist/rev2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keebio/nyquist/rev2/keyboard.json b/keyboards/keebio/nyquist/rev2/keyboard.json index 435cdd189fc..bfabd92c55d 100644 --- a/keyboards/keebio/nyquist/rev2/keyboard.json +++ b/keyboards/keebio/nyquist/rev2/keyboard.json @@ -14,6 +14,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "F5", "F6", "F7", "B1", "B3"], "rows": ["D4", "D7", "E6", "B4", "B5"] diff --git a/keyboards/keebio/nyquist/rev3/config.h b/keyboards/keebio/nyquist/rev3/config.h index f7bc4f8b923..177b2832f58 100644 --- a/keyboards/keebio/nyquist/rev3/config.h +++ b/keyboards/keebio/nyquist/rev3/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN D5 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/keebio/nyquist/rev3/keyboard.json b/keyboards/keebio/nyquist/rev3/keyboard.json index 80e5a10a17a..062b7ebeae8 100644 --- a/keyboards/keebio/nyquist/rev3/keyboard.json +++ b/keyboards/keebio/nyquist/rev3/keyboard.json @@ -14,6 +14,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F4", "B7", "D2", "D3", "D4"], "rows": ["F0", "F5", "D7", "F6", "F7"] diff --git a/keyboards/keebio/quefrency/rev1/config.h b/keyboards/keebio/quefrency/rev1/config.h index 058d8b6cb53..c62ff4fef94 100644 --- a/keyboards/keebio/quefrency/rev1/config.h +++ b/keyboards/keebio/quefrency/rev1/config.h @@ -19,8 +19,3 @@ along with this program. If not, see . #pragma once #define SPLIT_HAND_PIN D2 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/quefrency/rev1/keyboard.json b/keyboards/keebio/quefrency/rev1/keyboard.json index 6bca115e660..598fc550000 100644 --- a/keyboards/keebio/quefrency/rev1/keyboard.json +++ b/keyboards/keebio/quefrency/rev1/keyboard.json @@ -49,6 +49,12 @@ "extrakey": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebio/quefrency/rev4/config.h b/keyboards/keebio/quefrency/rev4/config.h index 73521bc5352..0435a34e7fb 100644 --- a/keyboards/keebio/quefrency/rev4/config.h +++ b/keyboards/keebio/quefrency/rev4/config.h @@ -18,9 +18,4 @@ along with this program. If not, see . #define SPLIT_HAND_PIN F7 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) diff --git a/keyboards/keebio/quefrency/rev4/keyboard.json b/keyboards/keebio/quefrency/rev4/keyboard.json index 936502fdcfd..8cf21b4962f 100644 --- a/keyboards/keebio/quefrency/rev4/keyboard.json +++ b/keyboards/keebio/quefrency/rev4/keyboard.json @@ -63,6 +63,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebio/quefrency/rev5/config.h b/keyboards/keebio/quefrency/rev5/config.h index 73521bc5352..0435a34e7fb 100644 --- a/keyboards/keebio/quefrency/rev5/config.h +++ b/keyboards/keebio/quefrency/rev5/config.h @@ -18,9 +18,4 @@ along with this program. If not, see . #define SPLIT_HAND_PIN F7 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) diff --git a/keyboards/keebio/quefrency/rev5/keyboard.json b/keyboards/keebio/quefrency/rev5/keyboard.json index e0fd9847720..b5f9c994af1 100644 --- a/keyboards/keebio/quefrency/rev5/keyboard.json +++ b/keyboards/keebio/quefrency/rev5/keyboard.json @@ -63,6 +63,12 @@ "rgblight": true, "encoder": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebio/rorschach/rev1/config.h b/keyboards/keebio/rorschach/rev1/config.h deleted file mode 100644 index 53c95d722d3..00000000000 --- a/keyboards/keebio/rorschach/rev1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2018 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/rorschach/rev1/keyboard.json b/keyboards/keebio/rorschach/rev1/keyboard.json index f7ea8fccc22..8286a791741 100644 --- a/keyboards/keebio/rorschach/rev1/keyboard.json +++ b/keyboards/keebio/rorschach/rev1/keyboard.json @@ -51,6 +51,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/keebio/sinc/rev1/config.h b/keyboards/keebio/sinc/rev1/config.h index 7ddfa79fafe..80762574abc 100644 --- a/keyboards/keebio/sinc/rev1/config.h +++ b/keyboards/keebio/sinc/rev1/config.h @@ -19,9 +19,4 @@ along with this program. If not, see . // wiring of each half #define SPLIT_HAND_PIN F7 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) diff --git a/keyboards/keebio/sinc/rev1/keyboard.json b/keyboards/keebio/sinc/rev1/keyboard.json index b7774fa0edf..a026aea0079 100644 --- a/keyboards/keebio/sinc/rev1/keyboard.json +++ b/keyboards/keebio/sinc/rev1/keyboard.json @@ -14,6 +14,12 @@ "rgblight": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "B6" }, diff --git a/keyboards/keebio/sinc/rev2/config.h b/keyboards/keebio/sinc/rev2/config.h index 7ddfa79fafe..80762574abc 100644 --- a/keyboards/keebio/sinc/rev2/config.h +++ b/keyboards/keebio/sinc/rev2/config.h @@ -19,9 +19,4 @@ along with this program. If not, see . // wiring of each half #define SPLIT_HAND_PIN F7 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) diff --git a/keyboards/keebio/sinc/rev2/keyboard.json b/keyboards/keebio/sinc/rev2/keyboard.json index ff5ef2667a0..77f8f3c9caf 100644 --- a/keyboards/keebio/sinc/rev2/keyboard.json +++ b/keyboards/keebio/sinc/rev2/keyboard.json @@ -14,6 +14,12 @@ "rgblight": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "B6" }, diff --git a/keyboards/keebio/tragicforce68/config.h b/keyboards/keebio/tragicforce68/config.h deleted file mode 100644 index 5070f051560..00000000000 --- a/keyboards/keebio/tragicforce68/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/tragicforce68/keyboard.json b/keyboards/keebio/tragicforce68/keyboard.json index 49ada60863c..f2f27a7194a 100644 --- a/keyboards/keebio/tragicforce68/keyboard.json +++ b/keyboards/keebio/tragicforce68/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D3", "D2", "D1", "D0", "B4", "E6", "C6", "D7", "D4"] diff --git a/keyboards/keebio/tukey/config.h b/keyboards/keebio/tukey/config.h deleted file mode 100644 index 436f111fcf8..00000000000 --- a/keyboards/keebio/tukey/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Keebio - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/tukey/keyboard.json b/keyboards/keebio/tukey/keyboard.json index 5d8bd37a282..a030f041b7b 100644 --- a/keyboards/keebio/tukey/keyboard.json +++ b/keyboards/keebio/tukey/keyboard.json @@ -39,6 +39,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D4", "F6"] diff --git a/keyboards/keebio/viterbi/rev1/config.h b/keyboards/keebio/viterbi/rev1/config.h deleted file mode 100644 index 18b5d426e43..00000000000 --- a/keyboards/keebio/viterbi/rev1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2017 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/viterbi/rev1/keyboard.json b/keyboards/keebio/viterbi/rev1/keyboard.json index ebea5392486..b369066fc5f 100644 --- a/keyboards/keebio/viterbi/rev1/keyboard.json +++ b/keyboards/keebio/viterbi/rev1/keyboard.json @@ -24,6 +24,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layout_aliases": { "LAYOUT": "LAYOUT_ortho_5x14" }, diff --git a/keyboards/keebio/viterbi/rev2/config.h b/keyboards/keebio/viterbi/rev2/config.h index 010fcffc9ba..5b609ab777e 100644 --- a/keyboards/keebio/viterbi/rev2/config.h +++ b/keyboards/keebio/viterbi/rev2/config.h @@ -18,8 +18,3 @@ along with this program. If not, see . #pragma once #define SPLIT_HAND_PIN D2 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/viterbi/rev2/keyboard.json b/keyboards/keebio/viterbi/rev2/keyboard.json index 36570e7c7ac..599529a365a 100644 --- a/keyboards/keebio/viterbi/rev2/keyboard.json +++ b/keyboards/keebio/viterbi/rev2/keyboard.json @@ -29,6 +29,12 @@ "extrakey": true, "backlight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebio/wavelet/config.h b/keyboards/keebio/wavelet/config.h deleted file mode 100644 index 2fd8b7d4d04..00000000000 --- a/keyboards/keebio/wavelet/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert -Copyright 2018 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/wavelet/keyboard.json b/keyboards/keebio/wavelet/keyboard.json index 7c87bcf4766..70430e0f4dc 100644 --- a/keyboards/keebio/wavelet/keyboard.json +++ b/keyboards/keebio/wavelet/keyboard.json @@ -33,6 +33,12 @@ "backlight": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["ortho_4x12"], "layout_aliases": { "LAYOUT_ortho_4x12": "LAYOUT" diff --git a/keyboards/keebio/wtf60/config.h b/keyboards/keebio/wtf60/config.h index 44151100a02..bd4b4d5b00f 100644 --- a/keyboards/keebio/wtf60/config.h +++ b/keyboards/keebio/wtf60/config.h @@ -17,8 +17,3 @@ along with this program. If not, see . #pragma once #define AUDIO_PIN C6 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebio/wtf60/keyboard.json b/keyboards/keebio/wtf60/keyboard.json index 5ce22cc42e8..2c14740eff3 100644 --- a/keyboards/keebio/wtf60/keyboard.json +++ b/keyboards/keebio/wtf60/keyboard.json @@ -40,6 +40,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "B5", "B6", "C7", "F7", "B1", "B2", "B3", "D2", "D3", "D5", "D4", "D6", "D7"], "rows": ["F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/keebsforall/coarse60/config.h b/keyboards/keebsforall/coarse60/config.h index 9a4bf0a144d..56193d3e713 100644 --- a/keyboards/keebsforall/coarse60/config.h +++ b/keyboards/keebsforall/coarse60/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/keebsforall/coarse60/keyboard.json b/keyboards/keebsforall/coarse60/keyboard.json index d8e769914c5..776ff641c3b 100644 --- a/keyboards/keebsforall/coarse60/keyboard.json +++ b/keyboards/keebsforall/coarse60/keyboard.json @@ -19,6 +19,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B0", "A7", "B14", "A5", "A4", "A3", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15"], "rows": ["A9", "A10", "B12", "A2", "C13"] diff --git a/keyboards/keebsforall/freebirdnp/lite/config.h b/keyboards/keebsforall/freebirdnp/lite/config.h deleted file mode 100644 index d1c3c23ee68..00000000000 --- a/keyboards/keebsforall/freebirdnp/lite/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 ELliot Powell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebsforall/freebirdnp/lite/keyboard.json b/keyboards/keebsforall/freebirdnp/lite/keyboard.json index c27bb0e2b99..af986614269 100644 --- a/keyboards/keebsforall/freebirdnp/lite/keyboard.json +++ b/keyboards/keebsforall/freebirdnp/lite/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "B2", "B1", "B0"], "rows": ["B7", "B6", "B5", "B4", "B3"] diff --git a/keyboards/keebsforall/freebirdnp/pro/config.h b/keyboards/keebsforall/freebirdnp/pro/config.h deleted file mode 100644 index b129ce3add9..00000000000 --- a/keyboards/keebsforall/freebirdnp/pro/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Elliot Powell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebsforall/freebirdnp/pro/keyboard.json b/keyboards/keebsforall/freebirdnp/pro/keyboard.json index 7ed9584f823..8eae2f89f91 100644 --- a/keyboards/keebsforall/freebirdnp/pro/keyboard.json +++ b/keyboards/keebsforall/freebirdnp/pro/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "B2", "B1", "B0"], "rows": ["D3", "B7", "B6", "B5", "B4", "B3"] diff --git a/keyboards/keebsforall/freebirdtkl/config.h b/keyboards/keebsforall/freebirdtkl/config.h deleted file mode 100644 index 5de1d62f93f..00000000000 --- a/keyboards/keebsforall/freebirdtkl/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* -Copyright 2021 KnoblesseOblige - -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 . -*/ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebsforall/freebirdtkl/keyboard.json b/keyboards/keebsforall/freebirdtkl/keyboard.json index a2c6ec426d9..37a6243beb8 100644 --- a/keyboards/keebsforall/freebirdtkl/keyboard.json +++ b/keyboards/keebsforall/freebirdtkl/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D3", "D2", "D1"], "rows": ["B2", "B1", "B0", "B3", "D5", "B7"] diff --git a/keyboards/keebwerk/nano_slider/config.h b/keyboards/keebwerk/nano_slider/config.h index b5a1f0e3e52..c3f14734d22 100644 --- a/keyboards/keebwerk/nano_slider/config.h +++ b/keyboards/keebwerk/nano_slider/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define SLIDER_PIN D4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/keebwerk/nano_slider/keyboard.json b/keyboards/keebwerk/nano_slider/keyboard.json index cc61c497d73..64f59d6c10d 100644 --- a/keyboards/keebwerk/nano_slider/keyboard.json +++ b/keyboards/keebwerk/nano_slider/keyboard.json @@ -48,6 +48,12 @@ "rgblight": true, "midi": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/keebzdotnet/fme/config.h b/keyboards/keebzdotnet/fme/config.h deleted file mode 100644 index bdd65f7f63f..00000000000 --- a/keyboards/keebzdotnet/fme/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 keebnewb - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keebzdotnet/fme/keyboard.json b/keyboards/keebzdotnet/fme/keyboard.json index f1a352c1e5e..d7b9ebca0ca 100644 --- a/keyboards/keebzdotnet/fme/keyboard.json +++ b/keyboards/keebzdotnet/fme/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B4", "B1", "B3", "B2"], "rows": ["B6", "B5", "B7", "D2"] diff --git a/keyboards/keebzdotnet/wazowski/config.h b/keyboards/keebzdotnet/wazowski/config.h deleted file mode 100644 index a1746ba0a6a..00000000000 --- a/keyboards/keebzdotnet/wazowski/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 keebzdotnet - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keebzdotnet/wazowski/keyboard.json b/keyboards/keebzdotnet/wazowski/keyboard.json index 0047deeb4cd..150fa3c7900 100644 --- a/keyboards/keebzdotnet/wazowski/keyboard.json +++ b/keyboards/keebzdotnet/wazowski/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "B1", "B3", "B2", "B6"], "rows": ["F4", "F5", "F6"] diff --git a/keyboards/keyboardio/atreus/config.h b/keyboards/keyboardio/atreus/config.h deleted file mode 100644 index 5766657a6a8..00000000000 --- a/keyboards/keyboardio/atreus/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright (C) 2019, 2020 Keyboard.io, Inc - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keyboardio/atreus/keyboard.json b/keyboards/keyboardio/atreus/keyboard.json index 4bdea354bde..5185d9ee287 100644 --- a/keyboards/keyboardio/atreus/keyboard.json +++ b/keyboards/keyboardio/atreus/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "E2", "C7", "C6", "B6", "B5", "D7", "D6", "D4", "D5", "D3", "D2"], "rows": ["F6", "F5", "F4", "F1"] diff --git a/keyboards/keycapsss/kimiko/rev1/config.h b/keyboards/keycapsss/kimiko/rev1/config.h index 8e44b27ace9..54441ebf9dc 100644 --- a/keyboards/keycapsss/kimiko/rev1/config.h +++ b/keyboards/keycapsss/kimiko/rev1/config.h @@ -22,8 +22,3 @@ #else #define RGBLIGHT_LIMIT_VAL 80 #endif - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keycapsss/kimiko/rev1/keyboard.json b/keyboards/keycapsss/kimiko/rev1/keyboard.json index 1a7f62b2c8f..81427517bd6 100644 --- a/keyboards/keycapsss/kimiko/rev1/keyboard.json +++ b/keyboards/keycapsss/kimiko/rev1/keyboard.json @@ -12,6 +12,12 @@ "cols": ["F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["C6", "D7", "E6", "B4", "B5"] }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "diode_direction": "COL2ROW", "encoder": { "rotary": [ diff --git a/keyboards/keycapsss/o4l_5x12/config.h b/keyboards/keycapsss/o4l_5x12/config.h deleted file mode 100644 index 7bc78f68d69..00000000000 --- a/keyboards/keycapsss/o4l_5x12/config.h +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keycapsss/o4l_5x12/keyboard.json b/keyboards/keycapsss/o4l_5x12/keyboard.json index 8816155fcca..d83bc58795b 100644 --- a/keyboards/keycapsss/o4l_5x12/keyboard.json +++ b/keyboards/keycapsss/o4l_5x12/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "F6", "F5", "F4"], "rows": ["F7", "B1", "B3", "B2", "B6"] diff --git a/keyboards/keygem/kg60ansi/config.h b/keyboards/keygem/kg60ansi/config.h deleted file mode 100644 index 13c17d597d1..00000000000 --- a/keyboards/keygem/kg60ansi/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2022 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/keygem/kg60ansi/keyboard.json b/keyboards/keygem/kg60ansi/keyboard.json index ea6353516bd..585aec170bb 100644 --- a/keyboards/keygem/kg60ansi/keyboard.json +++ b/keyboards/keygem/kg60ansi/keyboard.json @@ -46,6 +46,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_ansi"], "layouts": { "LAYOUT_60_ansi": { diff --git a/keyboards/keygem/kg65rgbv2/config.h b/keyboards/keygem/kg65rgbv2/config.h deleted file mode 100644 index 13c17d597d1..00000000000 --- a/keyboards/keygem/kg65rgbv2/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2022 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/keygem/kg65rgbv2/keyboard.json b/keyboards/keygem/kg65rgbv2/keyboard.json index c6738f1e606..da9e8cbf916 100644 --- a/keyboards/keygem/kg65rgbv2/keyboard.json +++ b/keyboards/keygem/kg65rgbv2/keyboard.json @@ -46,6 +46,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["65_ansi"], "layouts": { "LAYOUT_65_ansi": { diff --git a/keyboards/keyhive/absinthe/config.h b/keyboards/keyhive/absinthe/config.h deleted file mode 100644 index 37867c3cd14..00000000000 --- a/keyboards/keyhive/absinthe/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 cfbender - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keyhive/absinthe/keyboard.json b/keyboards/keyhive/absinthe/keyboard.json index 2a58178bf16..82a5ae5631b 100644 --- a/keyboards/keyhive/absinthe/keyboard.json +++ b/keyboards/keyhive/absinthe/keyboard.json @@ -33,6 +33,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "D3", "D0"], "rows": ["D2", "D1", "B6", "D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/keyhive/ergosaurus/config.h b/keyboards/keyhive/ergosaurus/config.h deleted file mode 100644 index 39eec86786a..00000000000 --- a/keyboards/keyhive/ergosaurus/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 cfbender - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keyhive/ergosaurus/keyboard.json b/keyboards/keyhive/ergosaurus/keyboard.json index bce4b9d0fec..9a4810a9a57 100644 --- a/keyboards/keyhive/ergosaurus/keyboard.json +++ b/keyboards/keyhive/ergosaurus/keyboard.json @@ -31,6 +31,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "C6", "D0", "D1", "F7", "B1", "B3", "B2"], "rows": ["B5", "B4", "E6", "D4", "F6", "D3", "D2", "F4", "F5"] diff --git a/keyboards/keyhive/lattice60/config.h b/keyboards/keyhive/lattice60/config.h deleted file mode 100644 index bf9e7337c2b..00000000000 --- a/keyboards/keyhive/lattice60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Ethan Durrant (emdarcher) - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keyhive/lattice60/keyboard.json b/keyboards/keyhive/lattice60/keyboard.json index 4afdd839d00..b805a73357a 100644 --- a/keyboards/keyhive/lattice60/keyboard.json +++ b/keyboards/keyhive/lattice60/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "community_layouts": ["60_hhkb"], "layouts": { "LAYOUT_all": { diff --git a/keyboards/keyhive/maypad/config.h b/keyboards/keyhive/maypad/config.h deleted file mode 100644 index 26e1d21dc4f..00000000000 --- a/keyboards/keyhive/maypad/config.h +++ /dev/null @@ -1,36 +0,0 @@ -/* -Copyright 2019 codybender -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keyhive/maypad/keyboard.json b/keyboards/keyhive/maypad/keyboard.json index c4c39b0eddf..d0dad2b6cf3 100644 --- a/keyboards/keyhive/maypad/keyboard.json +++ b/keyboards/keyhive/maypad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3"], "rows": ["C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/keyhive/navi10/rev0/config.h b/keyboards/keyhive/navi10/rev0/config.h deleted file mode 100644 index 2e0110934bb..00000000000 --- a/keyboards/keyhive/navi10/rev0/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2019 Ethan Durrant (emdarcher) - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/keyhive/navi10/rev0/keyboard.json b/keyboards/keyhive/navi10/rev0/keyboard.json index 092c2343ab5..ab0e63ef1e8 100644 --- a/keyboards/keyhive/navi10/rev0/keyboard.json +++ b/keyboards/keyhive/navi10/rev0/keyboard.json @@ -16,6 +16,12 @@ "console": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/keyhive/navi10/rev2/config.h b/keyboards/keyhive/navi10/rev2/config.h deleted file mode 100644 index 2e0110934bb..00000000000 --- a/keyboards/keyhive/navi10/rev2/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2019 Ethan Durrant (emdarcher) - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/keyhive/navi10/rev2/keyboard.json b/keyboards/keyhive/navi10/rev2/keyboard.json index 2c7b9972dfa..ac5148b7870 100644 --- a/keyboards/keyhive/navi10/rev2/keyboard.json +++ b/keyboards/keyhive/navi10/rev2/keyboard.json @@ -16,6 +16,12 @@ "console": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/keyhive/navi10/rev3/config.h b/keyboards/keyhive/navi10/rev3/config.h deleted file mode 100644 index 2e0110934bb..00000000000 --- a/keyboards/keyhive/navi10/rev3/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2019 Ethan Durrant (emdarcher) - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/keyhive/navi10/rev3/keyboard.json b/keyboards/keyhive/navi10/rev3/keyboard.json index 5e1b27f7ce9..9f403a35139 100644 --- a/keyboards/keyhive/navi10/rev3/keyboard.json +++ b/keyboards/keyhive/navi10/rev3/keyboard.json @@ -16,6 +16,12 @@ "console": true, "command": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/keyhive/opus/config.h b/keyboards/keyhive/opus/config.h deleted file mode 100644 index ae2fa676f6a..00000000000 --- a/keyboards/keyhive/opus/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 rtwayland - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keyhive/opus/keyboard.json b/keyboards/keyhive/opus/keyboard.json index 252958c0b98..e92c8604ced 100644 --- a/keyboards/keyhive/opus/keyboard.json +++ b/keyboards/keyhive/opus/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "F4", "F5", "F6", "F7"], "rows": ["B1", "B3", "B2", "B6"] diff --git a/keyboards/keyhive/southpole/config.h b/keyboards/keyhive/southpole/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/keyhive/southpole/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keyhive/southpole/keyboard.json b/keyboards/keyhive/southpole/keyboard.json index aea03ffc60b..71366758810 100644 --- a/keyboards/keyhive/southpole/keyboard.json +++ b/keyboards/keyhive/southpole/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "B7", "D0", "D1", "F0", "F1", "F4", "F5", "F6", "F7", "B6", "B5", "B4", "D7", "D6", "D4", "E6"], "rows": ["D2", "D3", "C6", "C7", "D5"] diff --git a/keyboards/keyhive/ut472/config.h b/keyboards/keyhive/ut472/config.h deleted file mode 100644 index 8dd82d2464c..00000000000 --- a/keyboards/keyhive/ut472/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2018 Carlos Filoteo - -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 . -*/ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keyhive/ut472/keyboard.json b/keyboards/keyhive/ut472/keyboard.json index 340e5210742..828058a9554 100644 --- a/keyboards/keyhive/ut472/keyboard.json +++ b/keyboards/keyhive/ut472/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C4", "C5", "B7", "B6", "B5", "B4", "B3", "B2", "B1", "B0", "D6", "D5"], "rows": ["D1", "D2", "D3", "D4"] diff --git a/keyboards/keyprez/bison/config.h b/keyboards/keyprez/bison/config.h deleted file mode 100644 index c4bb34279d0..00000000000 --- a/keyboards/keyprez/bison/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 csandven - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/keyprez/bison/keyboard.json b/keyboards/keyprez/bison/keyboard.json index 462b9d4274c..dd35c3c5034 100644 --- a/keyboards/keyprez/bison/keyboard.json +++ b/keyboards/keyprez/bison/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "E6", "B2", "B4", "D4", "F6", "F5", "F4"], "rows": ["D2", "F7", "B1", "B3", "D7"] diff --git a/keyboards/keyprez/corgi/config.h b/keyboards/keyprez/corgi/config.h deleted file mode 100644 index b04e4a036e2..00000000000 --- a/keyboards/keyprez/corgi/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Christian Sandven - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keyprez/corgi/keyboard.json b/keyboards/keyprez/corgi/keyboard.json index 07962899c4e..8e664de03db 100644 --- a/keyboards/keyprez/corgi/keyboard.json +++ b/keyboards/keyprez/corgi/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "E6", "D7", "C6", "D2", "B7"], "rows": ["F5", "F7", "B2", "B6", "F4", "F6", "B1", "B3"] diff --git a/keyboards/keyprez/rhino/config.h b/keyboards/keyprez/rhino/config.h index ce59f90c355..738dabf7006 100644 --- a/keyboards/keyprez/rhino/config.h +++ b/keyboards/keyprez/rhino/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define AUDIO_PIN C6 #define MUSIC_MAP -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/keyprez/rhino/keyboard.json b/keyboards/keyprez/rhino/keyboard.json index 4f334e8fcfa..75854f6f997 100644 --- a/keyboards/keyprez/rhino/keyboard.json +++ b/keyboards/keyprez/rhino/keyboard.json @@ -18,6 +18,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D4", "D7", "E6", "B4", "B5"], "rows": ["B3", "B2", "B6", "B1", "F4", "F5", "F6", "F7"] diff --git a/keyboards/keyprez/unicorn/config.h b/keyboards/keyprez/unicorn/config.h index 76a88901084..d01d3b80e97 100644 --- a/keyboards/keyprez/unicorn/config.h +++ b/keyboards/keyprez/unicorn/config.h @@ -5,11 +5,6 @@ #define MASTER_RIGHT -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/keyprez/unicorn/keyboard.json b/keyboards/keyprez/unicorn/keyboard.json index 56061290ea7..238560321d1 100644 --- a/keyboards/keyprez/unicorn/keyboard.json +++ b/keyboards/keyprez/unicorn/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "B2", "B5", "D7", "B4", "B6", "E6", "D4"], "rows": ["F4", "D3", "F6", "F7", "B1", "B3"] diff --git a/keyboards/keysofkings/twokey/config.h b/keyboards/keysofkings/twokey/config.h index c2f47d2d8e7..adab9c3ed4a 100755 --- a/keyboards/keysofkings/twokey/config.h +++ b/keyboards/keysofkings/twokey/config.h @@ -16,12 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define AUDIO_PIN B6 #define AUDIO_CLICKY diff --git a/keyboards/keysofkings/twokey/keyboard.json b/keyboards/keysofkings/twokey/keyboard.json index 5f9a84e58ba..2b75891329a 100644 --- a/keyboards/keysofkings/twokey/keyboard.json +++ b/keyboards/keysofkings/twokey/keyboard.json @@ -40,6 +40,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2"], "rows": ["B4", "B5"] diff --git a/keyboards/keystonecaps/gameroyadvance/config.h b/keyboards/keystonecaps/gameroyadvance/config.h deleted file mode 100644 index f3286df1230..00000000000 --- a/keyboards/keystonecaps/gameroyadvance/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2022 @RoyMeetsWorld - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/keystonecaps/gameroyadvance/keyboard.json b/keyboards/keystonecaps/gameroyadvance/keyboard.json index 89b30fe4d80..5a1d9f49210 100644 --- a/keyboards/keystonecaps/gameroyadvance/keyboard.json +++ b/keyboards/keystonecaps/gameroyadvance/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "D0", "D1", "C6", "D7", "E6", "F4", "B2", "B6"], "rows": ["F5", "F6", "F7", "B1", "B3"] From e659c3dae9c50293a1483190db07601a83b73fef Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 24 May 2024 04:21:39 +1000 Subject: [PATCH 039/519] Remove some useless code from keymaps (#23787) --- .../half_n_half/keymaps/default/keymap.c | 28 --------------- .../i75/keymaps/default/keymap.c | 28 --------------- keyboards/ai03/lunar/keymaps/default/keymap.c | 6 ---- keyboards/ai03/soyuz/keymaps/1U/keymap.c | 3 -- .../cu24/keymaps/default/keymap.c | 4 --- .../ckeys/obelus/keymaps/default/keymap.c | 4 --- .../ckeys/thedora/keymaps/default/keymap.c | 4 --- .../keymaps/default/keymap.c | 6 ---- .../wraith/keymaps/default/keymap.c | 6 ---- keyboards/do60/keymaps/test/keymap.c | 5 --- .../edi/standaside/keymaps/default/keymap.c | 5 --- keyboards/ep/96/keymaps/default/keymap.c | 28 --------------- keyboards/ergodox_ez/util/compile_keymap.py | 5 --- .../e6v2/le_bmc/keymaps/default/keymap.c | 28 --------------- .../e6v2/oe_bmc/keymaps/default/keymap.c | 28 --------------- .../downbubble/keymaps/default/keymap.c | 28 --------------- keyboards/ft/mars80/keymaps/default/keymap.c | 28 --------------- .../gboards/gergo/keymaps/colemak/keymap.c | 5 --- .../space65/keymaps/default/keymap.c | 28 --------------- .../keymaps/default_tapdance/keymap.c | 14 -------- .../dactyl/keymaps/erincalling/keymap.c | 9 ----- .../dactyl_left/keymaps/default/keymap.c | 25 ------------- .../dactylmacropad/keymaps/default/keymap.c | 2 -- .../hacked_motospeed/keymaps/default/keymap.c | 28 --------------- .../handwired/jn68m/keymaps/default/keymap.c | 28 --------------- .../keymaps/default/keymap.c | 12 ------- .../owlet60/keymaps/default/keymap.c | 28 --------------- .../owlet60/keymaps/oled_testing/keymap.c | 28 --------------- .../prime_exl/keymaps/default/keymap.c | 28 --------------- .../videowriter/keymaps/default/keymap.c | 34 ------------------ .../videowriter/keymaps/oleg/keymap.c | 25 ------------- keyboards/hineybush/h87a/keymaps/wkl/keymap.c | 12 ------- keyboards/hineybush/h88/keymaps/wkl/keymap.c | 13 ------- .../hineybush/hbcp/keymaps/default/keymap.c | 28 --------------- keyboards/hineybush/hbcp/keymaps/wkl/keymap.c | 36 ------------------- .../hineyg80/keymaps/default/keymap.c | 6 ---- .../hineybush/hineyg80/keymaps/wkl/keymap.c | 2 -- .../hineybush/sm68/keymaps/default/keymap.c | 6 ---- .../hs60/v2/iso/keymaps/iso_andys8/keymap.c | 12 ------- .../hs60/v2/iso/keymaps/win_osx_dual/keymap.c | 10 ------ .../keymaps/input_club/keymap.c | 6 ---- .../kbd67/hotswap/keymaps/default/keymap.c | 28 --------------- .../kbd67/rev2/keymaps/default/keymap.c | 28 --------------- .../keymaps/hhkb-default-improved/keymap.c | 14 -------- .../kbd6x/keymaps/hhkb-default/keymap.c | 15 -------- .../ergodicity/keymaps/default/keymap.c | 28 --------------- .../launchpad/keymaps/default_rgb/keymap.c | 2 -- .../mechkeys/mk60/keymaps/default/keymap.c | 28 --------------- keyboards/molecule/keymaps/default/keymap.c | 6 ---- keyboards/panc60/keymaps/default/keymap.c | 28 --------------- .../primekb/prime_o/keymaps/default/keymap.c | 28 --------------- .../quantrik/kyuu/keymaps/default/keymap.c | 9 ----- .../rabbit/rabbit68/keymaps/default/keymap.c | 4 --- .../rabbit/rabbit68/keymaps/kaiec/keymap.c | 4 --- .../katana60/rev2/keymaps/default/keymap.c | 6 ---- .../keymaps/default_with_nafuda/keymap.c | 5 --- .../keymaps/default_with_setta21/keymap.c | 4 --- .../keymaps/default_with_nafuda/keymap.c | 4 --- .../keymaps/default_with_setta21/keymap.c | 4 --- .../keymaps/default_with_setta21/keymap.c | 4 --- keyboards/sck/neiso/keymaps/default/keymap.c | 12 ++----- .../sentraq/s65_plus/keymaps/default/keymap.c | 4 --- .../sentraq/s65_plus/keymaps/iso/keymap.c | 4 --- .../silverbullet44/keymaps/default/keymap.c | 5 --- .../hecomi/keymaps/default/keymap.c | 28 --------------- .../otaku_split/rev0/keymaps/default/keymap.c | 5 --- .../treasure/type9/keymaps/default/keymap.c | 28 --------------- keyboards/xiudi/xd87/keymaps/default/keymap.c | 30 ---------------- .../xd87/keymaps/default_underglow/keymap.c | 29 --------------- .../yushakobo/quick7/keymaps/default/keymap.c | 3 -- .../yushakobo/quick7/keymaps/via/keymap.c | 3 -- 71 files changed, 3 insertions(+), 1066 deletions(-) diff --git a/keyboards/40percentclub/half_n_half/keymaps/default/keymap.c b/keyboards/40percentclub/half_n_half/keymaps/default/keymap.c index 73d40abd489..5410a9b8d57 100644 --- a/keyboards/40percentclub/half_n_half/keymaps/default/keymap.c +++ b/keyboards/40percentclub/half_n_half/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( /* Base */ QK_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LCTL, KC_RCTL, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, @@ -29,25 +23,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_SPC, KC_SPC ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/40percentclub/i75/keymaps/default/keymap.c b/keyboards/40percentclub/i75/keymaps/default/keymap.c index e070c2e7d85..e39887dd068 100644 --- a/keyboards/40percentclub/i75/keymaps/default/keymap.c +++ b/keyboards/40percentclub/i75/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_ortho_5x15( 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_GRV, @@ -30,25 +24,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/ai03/lunar/keymaps/default/keymap.c b/keyboards/ai03/lunar/keymaps/default/keymap.c index e7362da8773..2668ff759d4 100644 --- a/keyboards/ai03/lunar/keymaps/default/keymap.c +++ b/keyboards/ai03/lunar/keymaps/default/keymap.c @@ -59,18 +59,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case MANUAL: if (record->event.pressed) { - // when keycode QMKBEST is pressed SEND_STRING("https://kb.ai03.me/redir/lunar/index.html"); - } else { - // when keycode QMKBEST is released } break; case SWPLURL: if (record->event.pressed) { - // when keycode QMKURL is pressed SEND_STRING("https://switchplate.co/collections/lunar-group-buy"); - } else { - // when keycode QMKURL is released } break; } diff --git a/keyboards/ai03/soyuz/keymaps/1U/keymap.c b/keyboards/ai03/soyuz/keymaps/1U/keymap.c index 792457cf107..a473231ab8d 100644 --- a/keyboards/ai03/soyuz/keymaps/1U/keymap.c +++ b/keyboards/ai03/soyuz/keymaps/1U/keymap.c @@ -34,10 +34,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case DBLZERO: if (record->event.pressed) { - // when keycode QMKBEST is pressed SEND_STRING("00"); - } else { - // when keycode QMKBEST is released } break; } diff --git a/keyboards/capsunlocked/cu24/keymaps/default/keymap.c b/keyboards/capsunlocked/cu24/keymaps/default/keymap.c index 7877229a37c..8e3078601fc 100644 --- a/keyboards/capsunlocked/cu24/keymaps/default/keymap.c +++ b/keyboards/capsunlocked/cu24/keymaps/default/keymap.c @@ -34,7 +34,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} diff --git a/keyboards/ckeys/obelus/keymaps/default/keymap.c b/keyboards/ckeys/obelus/keymaps/default/keymap.c index 4ee9a5f7101..b02b240c201 100644 --- a/keyboards/ckeys/obelus/keymaps/default/keymap.c +++ b/keyboards/ckeys/obelus/keymaps/default/keymap.c @@ -105,7 +105,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MU_TOGG, MU_NEXT, XXXXXXX, TO(0) ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} diff --git a/keyboards/ckeys/thedora/keymaps/default/keymap.c b/keyboards/ckeys/thedora/keymaps/default/keymap.c index 96b83b1c469..9c0d7565622 100755 --- a/keyboards/ckeys/thedora/keymaps/default/keymap.c +++ b/keyboards/ckeys/thedora/keymaps/default/keymap.c @@ -156,10 +156,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -}; - bool encoder_update_user(uint8_t index, bool clockwise) { if (index == 0) { /* First encoder */ if (clockwise) { diff --git a/keyboards/converter/numeric_keypad_iie/keymaps/default/keymap.c b/keyboards/converter/numeric_keypad_iie/keymaps/default/keymap.c index a8b8f568ffc..4f2b887dda7 100644 --- a/keyboards/converter/numeric_keypad_iie/keymaps/default/keymap.c +++ b/keyboards/converter/numeric_keypad_iie/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* +-------+ +-------+-------+-------+ +-------+-------+ diff --git a/keyboards/cutie_club/wraith/keymaps/default/keymap.c b/keyboards/cutie_club/wraith/keymaps/default/keymap.c index 60477c58d28..7759bb6e469 100644 --- a/keyboards/cutie_club/wraith/keymaps/default/keymap.c +++ b/keyboards/cutie_club/wraith/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [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, MO(1), diff --git a/keyboards/do60/keymaps/test/keymap.c b/keyboards/do60/keymaps/test/keymap.c index 6cb1e970832..5f1022e288e 100644 --- a/keyboards/do60/keymaps/test/keymap.c +++ b/keyboards/do60/keymaps/test/keymap.c @@ -20,8 +20,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC,KC_SPC, KC_DEL, KC_RGUI, MO(1), KC_HOME, KC_PGDN, KC_END), }; - -// Loop -void matrix_scan_user(void) { - // Empty -}; diff --git a/keyboards/edi/standaside/keymaps/default/keymap.c b/keyboards/edi/standaside/keymaps/default/keymap.c index d18606b94b7..1d3663e021f 100644 --- a/keyboards/edi/standaside/keymaps/default/keymap.c +++ b/keyboards/edi/standaside/keymaps/default/keymap.c @@ -70,8 +70,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; - - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} \ No newline at end of file diff --git a/keyboards/ep/96/keymaps/default/keymap.c b/keyboards/ep/96/keymaps/default/keymap.c index c5d35ac70fe..22e72e380ee 100644 --- a/keyboards/ep/96/keymaps/default/keymap.c +++ b/keyboards/ep/96/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( /* Base */ 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_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, @@ -31,25 +25,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/ergodox_ez/util/compile_keymap.py b/keyboards/ergodox_ez/util/compile_keymap.py index 310512c920e..eea53971430 100755 --- a/keyboards/ergodox_ez/util/compile_keymap.py +++ b/keyboards/ergodox_ez/util/compile_keymap.py @@ -431,11 +431,6 @@ def parse_keymaps(config, valid_keycodes): # keymap.c output USERCODE = """ -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - -}; - // Runs constantly in the background, in a loop. void matrix_scan_user(void) { uint8_t layer = get_highest_layer(layer_state); diff --git a/keyboards/exclusive/e6v2/le_bmc/keymaps/default/keymap.c b/keyboards/exclusive/e6v2/le_bmc/keymaps/default/keymap.c index 4d28618091c..c5f43bab54e 100644 --- a/keyboards/exclusive/e6v2/le_bmc/keymaps/default/keymap.c +++ b/keyboards/exclusive/e6v2/le_bmc/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_60_ansi( QK_GESC, 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, @@ -38,25 +32,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/exclusive/e6v2/oe_bmc/keymaps/default/keymap.c b/keyboards/exclusive/e6v2/oe_bmc/keymaps/default/keymap.c index 4d28618091c..c5f43bab54e 100644 --- a/keyboards/exclusive/e6v2/oe_bmc/keymaps/default/keymap.c +++ b/keyboards/exclusive/e6v2/oe_bmc/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_60_ansi( QK_GESC, 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, @@ -38,25 +32,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/flehrad/downbubble/keymaps/default/keymap.c b/keyboards/flehrad/downbubble/keymaps/default/keymap.c index 2b02e9d7f6f..15bab5a6946 100644 --- a/keyboards/flehrad/downbubble/keymaps/default/keymap.c +++ b/keyboards/flehrad/downbubble/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_standard( 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_NUM, KC_HOME, KC_TRNS, @@ -67,25 +61,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC, KC_SPC, KC_P0, KC_TRNS, KC_PDOT, KC_TRNS, KC_BSPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/ft/mars80/keymaps/default/keymap.c b/keyboards/ft/mars80/keymaps/default/keymap.c index d489aefb578..04fb322921a 100644 --- a/keyboards/ft/mars80/keymaps/default/keymap.c +++ b/keyboards/ft/mars80/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_tkl_ansi( 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_BRK, @@ -39,25 +33,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/gboards/gergo/keymaps/colemak/keymap.c b/keyboards/gboards/gergo/keymaps/colemak/keymap.c index 39bafc5e31b..07835788047 100644 --- a/keyboards/gboards/gergo/keymaps/colemak/keymap.c +++ b/keyboards/gboards/gergo/keymaps/colemak/keymap.c @@ -138,11 +138,6 @@ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, K KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), */ -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - -}; - // Runs constantly in the background, in a loop. void matrix_scan_user(void) { //uint8_t layer = get_highest_layer(layer_state); diff --git a/keyboards/gray_studio/space65/keymaps/default/keymap.c b/keyboards/gray_studio/space65/keymaps/default/keymap.c index 8d51b3e4db6..c32f3f3db73 100644 --- a/keyboards/gray_studio/space65/keymaps/default/keymap.c +++ b/keyboards/gray_studio/space65/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - 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_BSPC, KC_BSPC, KC_DEL, @@ -37,25 +31,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/handwired/2x5keypad/keymaps/default_tapdance/keymap.c b/keyboards/handwired/2x5keypad/keymaps/default_tapdance/keymap.c index 945613f9873..9fddc59cd75 100644 --- a/keyboards/handwired/2x5keypad/keymaps/default_tapdance/keymap.c +++ b/keyboards/handwired/2x5keypad/keymaps/default_tapdance/keymap.c @@ -119,20 +119,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, TD(A_Y), TD(I_I), TD(O_C), TD(U_U)) }; - -/* DISABLED -void matrix_init_user(void) { -} - -void matrix_scan_user(void) { -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} -*/ - - void matrix_init_user(void) { set_unicode_input_mode(UNICODE_MODE_WINCOMPOSE); /* See https://jayliu50.github.io/qmk-cheatsheet/ */ diff --git a/keyboards/handwired/dactyl/keymaps/erincalling/keymap.c b/keyboards/handwired/dactyl/keymaps/erincalling/keymap.c index 1c4bdfd5ee0..d25bd6acd4e 100644 --- a/keyboards/handwired/dactyl/keymaps/erincalling/keymap.c +++ b/keyboards/handwired/dactyl/keymaps/erincalling/keymap.c @@ -149,12 +149,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return true; } - -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - -}; - - -// Runs constantly in the background, in a loop. -void matrix_scan_user(void) {}; diff --git a/keyboards/handwired/dactyl_left/keymaps/default/keymap.c b/keyboards/handwired/dactyl_left/keymaps/default/keymap.c index 631a979efd4..0e5abb0b602 100644 --- a/keyboards/handwired/dactyl_left/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_left/keymaps/default/keymap.c @@ -15,9 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { QMKBEST = SAFE_RANGE, QMKURL }; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT(/* Base */ KC_SPC, KC_1, KC_2, KC_3, KC_4, KC_5, @@ -27,25 +24,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/handwired/dactylmacropad/keymaps/default/keymap.c b/keyboards/handwired/dactylmacropad/keymaps/default/keymap.c index 468d9449352..65c7f445b77 100644 --- a/keyboards/handwired/dactylmacropad/keymaps/default/keymap.c +++ b/keyboards/handwired/dactylmacropad/keymaps/default/keymap.c @@ -87,8 +87,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { // creates pivot table in excel SEND_STRING(SS_LALT("nvt")); - } else { - // when keycode QMKBEST is released } break; case snap: diff --git a/keyboards/handwired/hacked_motospeed/keymaps/default/keymap.c b/keyboards/handwired/hacked_motospeed/keymaps/default/keymap.c index 28721c6b7d5..9739863cef1 100644 --- a/keyboards/handwired/hacked_motospeed/keymaps/default/keymap.c +++ b/keyboards/handwired/hacked_motospeed/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( /* Base */ KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, @@ -29,25 +23,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { XXXXXXX, XXXXXXX, KC_BSPC, KC_ENT, KC_SPC, KC_LSFT, KC_LCTL, KC_LALT, KC_ALGR, KC_LWIN, XXXXXXX ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/handwired/jn68m/keymaps/default/keymap.c b/keyboards/handwired/jn68m/keymaps/default/keymap.c index 9665a74026a..71944964ac9 100644 --- a/keyboards/handwired/jn68m/keymaps/default/keymap.c +++ b/keyboards/handwired/jn68m/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( QK_GESC, 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_PGUP, @@ -39,25 +33,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/handwired/mechboards_micropad/keymaps/default/keymap.c b/keyboards/handwired/mechboards_micropad/keymaps/default/keymap.c index fa0c8e97af4..69bd7ec877a 100644 --- a/keyboards/handwired/mechboards_micropad/keymaps/default/keymap.c +++ b/keyboards/handwired/mechboards_micropad/keymaps/default/keymap.c @@ -35,35 +35,23 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case MECHBOARDURL: if (record->event.pressed) { - // when keycode QMKBEST is pressed SEND_STRING("https://mechboards.co.uk/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKBEST is released } break; case QMKURL: if (record->event.pressed) { - // when keycode QMKURL is pressed SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released } break; case MKUK: if (record->event.pressed) { - // when keycode QMKURL is pressed SEND_STRING("MKUK4 was amazing!"); - } else { - // when keycode QMKURL is released } break; case LEDCHANGE: if (record->event.pressed) { - // when keycode QMKURL is pressed led_state = !led_state; writePin(F6, led_state); - } else { - // when keycode QMKURL is released } break; } diff --git a/keyboards/handwired/owlet60/keymaps/default/keymap.c b/keyboards/handwired/owlet60/keymaps/default/keymap.c index 5df0b9fbd9f..b0924eb0552 100644 --- a/keyboards/handwired/owlet60/keymaps/default/keymap.c +++ b/keyboards/handwired/owlet60/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_owlet60_full_bsp( KC_1, 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_BSPC, KC_PGUP, @@ -38,25 +32,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/handwired/owlet60/keymaps/oled_testing/keymap.c b/keyboards/handwired/owlet60/keymaps/oled_testing/keymap.c index f54ceb44910..4531a3c3f63 100644 --- a/keyboards/handwired/owlet60/keymaps/oled_testing/keymap.c +++ b/keyboards/handwired/owlet60/keymaps/oled_testing/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_owlet60_full_bsp( KC_1, 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_BSPC, KC_PGUP, @@ -39,28 +33,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ) }; -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} - #ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { //return OLED_ROTATION_180; diff --git a/keyboards/handwired/prime_exl/keymaps/default/keymap.c b/keyboards/handwired/prime_exl/keymaps/default/keymap.c index 260b8877043..ed3da63a150 100644 --- a/keyboards/handwired/prime_exl/keymaps/default/keymap.c +++ b/keyboards/handwired/prime_exl/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( KC_NUM, KC_LPRN, KC_RPRN, KC_PSLS, KC_PAST, KC_BSPC, KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, @@ -72,28 +66,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} - bool led_update_user(led_t led_state) { writePin(NUM_LOCK_LED_PIN, led_state.num_lock); writePin(CAPS_LOCK_LED_PIN, led_state.caps_lock); diff --git a/keyboards/handwired/videowriter/keymaps/default/keymap.c b/keyboards/handwired/videowriter/keymaps/default/keymap.c index 7bdf45e7aba..d1c9e26655c 100644 --- a/keyboards/handwired/videowriter/keymaps/default/keymap.c +++ b/keyboards/handwired/videowriter/keymaps/default/keymap.c @@ -21,14 +21,6 @@ enum layer_names { _FN1 }; -// Example of custom keycodes used by macros in process_record_user -/* -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - */ - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* * ,---------------------------------------------------------------------------------------. @@ -79,29 +71,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______ ) }; - -/* macros template (example) -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/\n"); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} - -*/ - diff --git a/keyboards/handwired/videowriter/keymaps/oleg/keymap.c b/keyboards/handwired/videowriter/keymaps/oleg/keymap.c index db6b843e6ad..e9adc11ad7b 100644 --- a/keyboards/handwired/videowriter/keymaps/oleg/keymap.c +++ b/keyboards/handwired/videowriter/keymaps/oleg/keymap.c @@ -21,14 +21,6 @@ enum layer_names { _FN1 }; -// Example of custom keycodes used by macros in process_record_user -/* -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - */ - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* @@ -85,23 +77,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ) }; -/* macros template (example) -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case USECT: - if (record->event.pressed) { - // when keycode USECT is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode USECT is released - } - break; - } - return true; -} -*/ - - void matrix_init_user(void) { set_unicode_input_mode(UNICODE_MODE_WINDOWS); } diff --git a/keyboards/hineybush/h87a/keymaps/wkl/keymap.c b/keyboards/hineybush/h87a/keymaps/wkl/keymap.c index f83b8a5f226..c11a96dee7e 100644 --- a/keyboards/hineybush/h87a/keymaps/wkl/keymap.c +++ b/keyboards/hineybush/h87a/keymaps/wkl/keymap.c @@ -34,15 +34,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), }; - -void matrix_init_user(void) { - -} - -void matrix_scan_user(void) { - -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} diff --git a/keyboards/hineybush/h88/keymaps/wkl/keymap.c b/keyboards/hineybush/h88/keymaps/wkl/keymap.c index 2a40a244ac8..2e6385d425d 100644 --- a/keyboards/hineybush/h88/keymaps/wkl/keymap.c +++ b/keyboards/hineybush/h88/keymaps/wkl/keymap.c @@ -34,16 +34,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), }; - -void matrix_init_user(void) { - -} - -void matrix_scan_user(void) { - -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} - diff --git a/keyboards/hineybush/hbcp/keymaps/default/keymap.c b/keyboards/hineybush/hbcp/keymaps/default/keymap.c index c1240a3f12a..4b1e63a5935 100644 --- a/keyboards/hineybush/hbcp/keymaps/default/keymap.c +++ b/keyboards/hineybush/hbcp/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( /* Base */ @@ -43,25 +37,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/hineybush/hbcp/keymaps/wkl/keymap.c b/keyboards/hineybush/hbcp/keymaps/wkl/keymap.c index 7015080edb7..d26e9f2c3c8 100644 --- a/keyboards/hineybush/hbcp/keymaps/wkl/keymap.c +++ b/keyboards/hineybush/hbcp/keymaps/wkl/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_wkl( /* Base */ @@ -43,33 +37,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} - -void matrix_init_user(void) { - -} - -void matrix_scan_user(void) { - -} diff --git a/keyboards/hineybush/hineyg80/keymaps/default/keymap.c b/keyboards/hineybush/hineyg80/keymaps/default/keymap.c index cd43aaf9ccd..b5312ef7516 100644 --- a/keyboards/hineybush/hineyg80/keymaps/default/keymap.c +++ b/keyboards/hineybush/hineyg80/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL, -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_ansi_100u_mods( /* Base */ 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_INS, KC_HOME, KC_PGUP, KC_PSCR, diff --git a/keyboards/hineybush/hineyg80/keymaps/wkl/keymap.c b/keyboards/hineybush/hineyg80/keymaps/wkl/keymap.c index ab5836fc2d8..c7109dfd849 100644 --- a/keyboards/hineybush/hineyg80/keymaps/wkl/keymap.c +++ b/keyboards/hineybush/hineyg80/keymaps/wkl/keymap.c @@ -17,8 +17,6 @@ // Defines the keycodes used by our macros in process_record_user enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL, ______ = KC_TRNS, XXXXXX = KC_NO }; diff --git a/keyboards/hineybush/sm68/keymaps/default/keymap.c b/keyboards/hineybush/sm68/keymaps/default/keymap.c index 4e552cd5826..3afc33fa108 100644 --- a/keyboards/hineybush/sm68/keymaps/default/keymap.c +++ b/keyboards/hineybush/sm68/keymaps/default/keymap.c @@ -37,9 +37,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} - - diff --git a/keyboards/hs60/v2/iso/keymaps/iso_andys8/keymap.c b/keyboards/hs60/v2/iso/keymaps/iso_andys8/keymap.c index 3b3ac052e55..5044d56d43f 100644 --- a/keyboards/hs60/v2/iso/keymaps/iso_andys8/keymap.c +++ b/keyboards/hs60/v2/iso/keymaps/iso_andys8/keymap.c @@ -47,15 +47,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), }; - -void matrix_init_user(void) { - //user initialization -} - -void matrix_scan_user(void) { - //user matrix -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} \ No newline at end of file diff --git a/keyboards/hs60/v2/iso/keymaps/win_osx_dual/keymap.c b/keyboards/hs60/v2/iso/keymaps/win_osx_dual/keymap.c index 40ba530163e..ab65671d407 100644 --- a/keyboards/hs60/v2/iso/keymaps/win_osx_dual/keymap.c +++ b/keyboards/hs60/v2/iso/keymaps/win_osx_dual/keymap.c @@ -69,16 +69,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; -void matrix_init_user(void) { - //user initialization -} - - -void matrix_scan_user(void) { - //user matrix -} - - bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case QWERTY: diff --git a/keyboards/input_club/ergodox_infinity/keymaps/input_club/keymap.c b/keyboards/input_club/ergodox_infinity/keymaps/input_club/keymap.c index 17ff9d615d8..7276c44394b 100644 --- a/keyboards/input_club/ergodox_infinity/keymaps/input_club/keymap.c +++ b/keyboards/input_club/ergodox_infinity/keymaps/input_club/keymap.c @@ -214,12 +214,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return true; } -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - -}; - - // Runs constantly in the background, in a loop. void matrix_scan_user(void) { diff --git a/keyboards/kbdfans/kbd67/hotswap/keymaps/default/keymap.c b/keyboards/kbdfans/kbd67/hotswap/keymaps/default/keymap.c index 08166a99ad1..cebb731e086 100644 --- a/keyboards/kbdfans/kbd67/hotswap/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd67/hotswap/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - 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_HOME, @@ -36,25 +30,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/default/keymap.c b/keyboards/kbdfans/kbd67/rev2/keymaps/default/keymap.c index 21ff6843b3d..50a8bdfee08 100644 --- a/keyboards/kbdfans/kbd67/rev2/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd67/rev2/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap (Base Layer) Default Layer * ,----------------------------------------------------------------. @@ -63,25 +57,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______,_______,_______,KC_HOME,KC_PGDN, KC_END), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/kbdfans/kbd6x/keymaps/hhkb-default-improved/keymap.c b/keyboards/kbdfans/kbd6x/keymaps/hhkb-default-improved/keymap.c index 99c65a6ab39..b9e815b142d 100644 --- a/keyboards/kbdfans/kbd6x/keymaps/hhkb-default-improved/keymap.c +++ b/keyboards/kbdfans/kbd6x/keymaps/hhkb-default-improved/keymap.c @@ -34,17 +34,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), }; - - -void matrix_init_user(void) { - -} - -void matrix_scan_user(void) { - -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} - diff --git a/keyboards/kbdfans/kbd6x/keymaps/hhkb-default/keymap.c b/keyboards/kbdfans/kbd6x/keymaps/hhkb-default/keymap.c index 4e021993a81..d8bcf4b729a 100644 --- a/keyboards/kbdfans/kbd6x/keymaps/hhkb-default/keymap.c +++ b/keyboards/kbdfans/kbd6x/keymaps/hhkb-default/keymap.c @@ -34,18 +34,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), }; - - - -void matrix_init_user(void) { - -} - -void matrix_scan_user(void) { - -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} - diff --git a/keyboards/keebio/ergodicity/keymaps/default/keymap.c b/keyboards/keebio/ergodicity/keymaps/default/keymap.c index 0bb07cbb150..d38b2cb6ec7 100644 --- a/keyboards/keebio/ergodicity/keymaps/default/keymap.c +++ b/keyboards/keebio/ergodicity/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( KC_ESC, 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, @@ -37,25 +31,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______ ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/maple_computing/launchpad/keymaps/default_rgb/keymap.c b/keyboards/maple_computing/launchpad/keymaps/default_rgb/keymap.c index 69fb3ce5613..61d5d9532e9 100644 --- a/keyboards/maple_computing/launchpad/keymaps/default_rgb/keymap.c +++ b/keyboards/maple_computing/launchpad/keymaps/default_rgb/keymap.c @@ -74,5 +74,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ) }; - -void matrix_init_user(void) {} diff --git a/keyboards/mechkeys/mk60/keymaps/default/keymap.c b/keyboards/mechkeys/mk60/keymaps/default/keymap.c index a917b7ce5c7..d844051d70e 100644 --- a/keyboards/mechkeys/mk60/keymaps/default/keymap.c +++ b/keyboards/mechkeys/mk60/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - 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_BSPC, KC_INS, @@ -38,25 +32,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/molecule/keymaps/default/keymap.c b/keyboards/molecule/keymaps/default/keymap.c index bceed5774d8..9030ba98d11 100755 --- a/keyboards/molecule/keymaps/default/keymap.c +++ b/keyboards/molecule/keymaps/default/keymap.c @@ -24,12 +24,6 @@ enum layer_names { _FN, }; -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY_BASE] = LAYOUT( KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, diff --git a/keyboards/panc60/keymaps/default/keymap.c b/keyboards/panc60/keymaps/default/keymap.c index 2754d89ff5e..503baf69bbb 100644 --- a/keyboards/panc60/keymaps/default/keymap.c +++ b/keyboards/panc60/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_60_hhkb( 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_GRV, @@ -36,25 +30,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/primekb/prime_o/keymaps/default/keymap.c b/keyboards/primekb/prime_o/keymaps/default/keymap.c index 64326b0f131..9092ca728e3 100644 --- a/keyboards/primekb/prime_o/keymaps/default/keymap.c +++ b/keyboards/primekb/prime_o/keymaps/default/keymap.c @@ -17,12 +17,6 @@ #define L1BS LT(1, KC_BSPC) -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( KC_ESC, KC_PMNS, KC_PSLS, KC_PAST, KC_NUM, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_9, KC_DEL, @@ -41,25 +35,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/quantrik/kyuu/keymaps/default/keymap.c b/keyboards/quantrik/kyuu/keymaps/default/keymap.c index 3b3c09f2d96..7878b8dbea2 100644 --- a/keyboards/quantrik/kyuu/keymaps/default/keymap.c +++ b/keyboards/quantrik/kyuu/keymaps/default/keymap.c @@ -18,7 +18,6 @@ // Defines the keycodes used by our macros in process_record_user enum custom_keycodes { QMKBEST = SAFE_RANGE, - QMKURL }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -48,14 +47,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { // when keycode QMKBEST is released } break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; } return true; } diff --git a/keyboards/rabbit/rabbit68/keymaps/default/keymap.c b/keyboards/rabbit/rabbit68/keymaps/default/keymap.c index ef5cfff8d78..88e45a58d24 100644 --- a/keyboards/rabbit/rabbit68/keymaps/default/keymap.c +++ b/keyboards/rabbit/rabbit68/keymaps/default/keymap.c @@ -15,10 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -// enum custom_keycodes { QMKBEST = SAFE_RANGE, QMKURL }; - - #define _BASE 0 #define _FN 1 diff --git a/keyboards/rabbit/rabbit68/keymaps/kaiec/keymap.c b/keyboards/rabbit/rabbit68/keymaps/kaiec/keymap.c index 44b2ca8c6d9..7b6c4d97ec2 100644 --- a/keyboards/rabbit/rabbit68/keymaps/kaiec/keymap.c +++ b/keyboards/rabbit/rabbit68/keymaps/kaiec/keymap.c @@ -15,10 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -// enum custom_keycodes { QMKBEST = SAFE_RANGE, QMKURL }; - - #define _BASE 0 #define _FN 1 diff --git a/keyboards/rominronin/katana60/rev2/keymaps/default/keymap.c b/keyboards/rominronin/katana60/rev2/keymaps/default/keymap.c index 0a2182bdf7e..ee057c5c11b 100644 --- a/keyboards/rominronin/katana60/rev2/keymaps/default/keymap.c +++ b/keyboards/rominronin/katana60/rev2/keymaps/default/keymap.c @@ -33,12 +33,6 @@ enum layer_names { CURS, }; -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = LAYOUT_1_a(/* Base */ KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, DF(1), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, diff --git a/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/keymap.c index 510f59e5608..26385640bde 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/keymap.c +++ b/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/keymap.c @@ -128,8 +128,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return result; } - -void matrix_init_user(void) { - -} - diff --git a/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/keymap.c index a8200ecb349..ffe73c8b984 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/keymap.c @@ -132,7 +132,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return result; } - -void matrix_init_user(void) { - -} diff --git a/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/keymap.c b/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/keymap.c index 606ca3a881c..75b6e5971ef 100644 --- a/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/keymap.c +++ b/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/keymap.c @@ -150,7 +150,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return result; } - -void matrix_init_user(void) { - -} diff --git a/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/keymap.c index 2e97b919b55..4dd6d75826c 100644 --- a/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/keymap.c @@ -150,7 +150,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return result; } - -void matrix_init_user(void) { - -} diff --git a/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c index 2d7f729db6a..f3b8ae68260 100644 --- a/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c @@ -175,7 +175,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return result; } - -void matrix_init_user(void) { - -} diff --git a/keyboards/sck/neiso/keymaps/default/keymap.c b/keyboards/sck/neiso/keymaps/default/keymap.c index 05335947b5a..c7d8e5f8593 100644 --- a/keyboards/sck/neiso/keymaps/default/keymap.c +++ b/keyboards/sck/neiso/keymaps/default/keymap.c @@ -16,7 +16,9 @@ #include QMK_KEYBOARD_H // Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { QMKBEST = SAFE_RANGE, QMKURL }; +enum custom_keycodes { + QMKBEST = SAFE_RANGE, +}; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT(/* Base */ @@ -41,14 +43,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { // when keycode QMKBEST is released } break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; } return true; } diff --git a/keyboards/sentraq/s65_plus/keymaps/default/keymap.c b/keyboards/sentraq/s65_plus/keymaps/default/keymap.c index 30ce79d0213..971e700dc44 100644 --- a/keyboards/sentraq/s65_plus/keymaps/default/keymap.c +++ b/keyboards/sentraq/s65_plus/keymaps/default/keymap.c @@ -50,7 +50,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ) }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} diff --git a/keyboards/sentraq/s65_plus/keymaps/iso/keymap.c b/keyboards/sentraq/s65_plus/keymaps/iso/keymap.c index 63565681463..8e6f0fb7d7e 100644 --- a/keyboards/sentraq/s65_plus/keymaps/iso/keymap.c +++ b/keyboards/sentraq/s65_plus/keymaps/iso/keymap.c @@ -50,7 +50,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ) }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} diff --git a/keyboards/silverbullet44/keymaps/default/keymap.c b/keyboards/silverbullet44/keymaps/default/keymap.c index 61718b9e581..83e28e28022 100644 --- a/keyboards/silverbullet44/keymaps/default/keymap.c +++ b/keyboards/silverbullet44/keymaps/default/keymap.c @@ -15,11 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -//enum custom_keycodes { -// QMKBEST = SAFE_RANGE, -// QMKURL -//}; enum layer { _QWERTY, _CURSOL, diff --git a/keyboards/takashiski/hecomi/keymaps/default/keymap.c b/keyboards/takashiski/hecomi/keymaps/default/keymap.c index e56529f3d8f..d962b4df94a 100644 --- a/keyboards/takashiski/hecomi/keymaps/default/keymap.c +++ b/keyboards/takashiski/hecomi/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - //R1:7 + 8 = 15 //R2:7 + 8 = 15 //R3:6 + 7 = 13 @@ -53,28 +47,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} - layer_state_t layer_state_set_user(layer_state_t state) { uint8_t layer=get_highest_layer(state); diff --git a/keyboards/takashiski/otaku_split/rev0/keymaps/default/keymap.c b/keyboards/takashiski/otaku_split/rev0/keymaps/default/keymap.c index 4af573107d8..4d7afe7d67f 100644 --- a/keyboards/takashiski/otaku_split/rev0/keymaps/default/keymap.c +++ b/keyboards/takashiski/otaku_split/rev0/keymaps/default/keymap.c @@ -14,11 +14,6 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( diff --git a/keyboards/treasure/type9/keymaps/default/keymap.c b/keyboards/treasure/type9/keymaps/default/keymap.c index 6b15c0486db..5f7d876ef22 100644 --- a/keyboards/treasure/type9/keymaps/default/keymap.c +++ b/keyboards/treasure/type9/keymaps/default/keymap.c @@ -15,12 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( /* Base */ KC_0, KC_1, KC_2, @@ -28,25 +22,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_6, KC_7, KC_8 ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/xiudi/xd87/keymaps/default/keymap.c b/keyboards/xiudi/xd87/keymaps/default/keymap.c index ed7da858902..c732e9b1b3c 100644 --- a/keyboards/xiudi/xd87/keymaps/default/keymap.c +++ b/keyboards/xiudi/xd87/keymaps/default/keymap.c @@ -15,13 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_tkl_iso( 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, @@ -31,26 +24,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ) }; - - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/xiudi/xd87/keymaps/default_underglow/keymap.c b/keyboards/xiudi/xd87/keymaps/default_underglow/keymap.c index fc8fa313efd..47511a048be 100755 --- a/keyboards/xiudi/xd87/keymaps/default_underglow/keymap.c +++ b/keyboards/xiudi/xd87/keymaps/default_underglow/keymap.c @@ -15,13 +15,6 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_tkl_ansi( 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, @@ -38,25 +31,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} diff --git a/keyboards/yushakobo/quick7/keymaps/default/keymap.c b/keyboards/yushakobo/quick7/keymaps/default/keymap.c index 027bc4fe118..547396dc7d5 100644 --- a/keyboards/yushakobo/quick7/keymaps/default/keymap.c +++ b/keyboards/yushakobo/quick7/keymaps/default/keymap.c @@ -44,10 +44,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case YUSHAURL: if (record->event.pressed) { - // when keycode QMKURL is pressed SEND_STRING("https://yushakobo.jp/\n"); - } else { - // when keycode QMKURL is released } break; } diff --git a/keyboards/yushakobo/quick7/keymaps/via/keymap.c b/keyboards/yushakobo/quick7/keymaps/via/keymap.c index 0f3d44963d6..ec9c034ebf5 100644 --- a/keyboards/yushakobo/quick7/keymaps/via/keymap.c +++ b/keyboards/yushakobo/quick7/keymaps/via/keymap.c @@ -56,10 +56,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case YUSHAURL: if (record->event.pressed) { - // when keycode QMKURL is pressed SEND_STRING("https://yushakobo.jp/\n"); - } else { - // when keycode QMKURL is released } break; } From 04bf30aad8540fb2cdcf19f9a5170ea099fa3476 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 11:40:41 -0700 Subject: [PATCH 040/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: U-V (#23786) Affects: - `uk78` - `ungodly/nines` - `unikeyboard/diverge3` - `unikeyboard/divergetm2` - `unikeyboard/felix` - `uranuma` - `utd80` - `v60_type_r` - `vagrant_10` - `viendi8l` - `viktus/at101_bh` - `viktus/omnikey_bh` - `viktus/smolka` - `viktus/sp111` - `viktus/styrka` - `viktus/z150_bh` - `vitamins_included/rev1` --- keyboards/uk78/config.h | 24 ------------ keyboards/uk78/keyboard.json | 6 +++ keyboards/ungodly/nines/config.h | 21 ---------- keyboards/ungodly/nines/keyboard.json | 6 +++ keyboards/unikeyboard/diverge3/config.h | 5 --- keyboards/unikeyboard/diverge3/keyboard.json | 6 +++ keyboards/unikeyboard/divergetm2/config.h | 23 ----------- .../unikeyboard/divergetm2/keyboard.json | 6 +++ keyboards/unikeyboard/felix/config.h | 22 ----------- keyboards/unikeyboard/felix/keyboard.json | 6 +++ keyboards/uranuma/config.h | 22 ----------- keyboards/uranuma/keyboard.json | 6 +++ keyboards/utd80/config.h | 22 ----------- keyboards/utd80/keyboard.json | 6 +++ keyboards/v60_type_r/config.h | 5 --- keyboards/v60_type_r/keyboard.json | 6 +++ keyboards/vagrant_10/config.h | 32 --------------- keyboards/vagrant_10/keyboard.json | 6 +++ keyboards/viendi8l/config.h | 5 --- keyboards/viendi8l/keyboard.json | 6 +++ keyboards/viktus/at101_bh/config.h | 7 ---- keyboards/viktus/at101_bh/keyboard.json | 6 +++ keyboards/viktus/omnikey_bh/config.h | 7 ---- keyboards/viktus/omnikey_bh/keyboard.json | 6 +++ keyboards/viktus/smolka/config.h | 39 ------------------- keyboards/viktus/smolka/keyboard.json | 6 +++ keyboards/viktus/sp111/config.h | 5 --- keyboards/viktus/sp111/keyboard.json | 6 +++ keyboards/viktus/styrka/config.h | 39 ------------------- keyboards/viktus/styrka/keyboard.json | 6 +++ keyboards/viktus/z150_bh/config.h | 7 ---- keyboards/viktus/z150_bh/keyboard.json | 6 +++ keyboards/vitamins_included/rev1/config.h | 5 --- .../vitamins_included/rev1/keyboard.json | 6 +++ 34 files changed, 102 insertions(+), 290 deletions(-) delete mode 100644 keyboards/uk78/config.h delete mode 100644 keyboards/ungodly/nines/config.h delete mode 100644 keyboards/unikeyboard/divergetm2/config.h delete mode 100644 keyboards/unikeyboard/felix/config.h delete mode 100644 keyboards/uranuma/config.h delete mode 100644 keyboards/utd80/config.h delete mode 100755 keyboards/vagrant_10/config.h delete mode 100644 keyboards/viktus/at101_bh/config.h delete mode 100644 keyboards/viktus/omnikey_bh/config.h delete mode 100644 keyboards/viktus/smolka/config.h delete mode 100644 keyboards/viktus/styrka/config.h delete mode 100644 keyboards/viktus/z150_bh/config.h diff --git a/keyboards/uk78/config.h b/keyboards/uk78/config.h deleted file mode 100644 index 822b37da7f7..00000000000 --- a/keyboards/uk78/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2017 Ruari Armstrong - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/uk78/keyboard.json b/keyboards/uk78/keyboard.json index 8b6b5e9feda..673497ca9c0 100644 --- a/keyboards/uk78/keyboard.json +++ b/keyboards/uk78/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A2", "A1", "F5", "F4", "E6", "E7", "E5", "E4", "B7", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "B5", "E0"], "rows": ["F3", "F2", "F1", "F0", "A0"] diff --git a/keyboards/ungodly/nines/config.h b/keyboards/ungodly/nines/config.h deleted file mode 100644 index ce4d927f09f..00000000000 --- a/keyboards/ungodly/nines/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 Ungodly Design - * - * 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 . - */ - #pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ungodly/nines/keyboard.json b/keyboards/ungodly/nines/keyboard.json index 07496dd5150..5e5418e14d4 100644 --- a/keyboards/ungodly/nines/keyboard.json +++ b/keyboards/ungodly/nines/keyboard.json @@ -25,6 +25,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["F4", "F5", "F6"], diff --git a/keyboards/unikeyboard/diverge3/config.h b/keyboards/unikeyboard/diverge3/config.h index b5ed9415d5f..bdd2b7cbb29 100644 --- a/keyboards/unikeyboard/diverge3/config.h +++ b/keyboards/unikeyboard/diverge3/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define SELECT_SOFT_SERIAL_SPEED 3 #endif -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/unikeyboard/diverge3/keyboard.json b/keyboards/unikeyboard/diverge3/keyboard.json index a6dd684be6d..36f056187b8 100644 --- a/keyboards/unikeyboard/diverge3/keyboard.json +++ b/keyboards/unikeyboard/diverge3/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "D7", "E6", "B4", "B5"] diff --git a/keyboards/unikeyboard/divergetm2/config.h b/keyboards/unikeyboard/divergetm2/config.h deleted file mode 100644 index 78d133446e3..00000000000 --- a/keyboards/unikeyboard/divergetm2/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2018 Christon DeWan (xton) - * Copyright 2017 IslandMan93 - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/unikeyboard/divergetm2/keyboard.json b/keyboards/unikeyboard/divergetm2/keyboard.json index 3c1420c39ad..b2db7a19db1 100644 --- a/keyboards/unikeyboard/divergetm2/keyboard.json +++ b/keyboards/unikeyboard/divergetm2/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D7", "E6", "B4", "B5"] diff --git a/keyboards/unikeyboard/felix/config.h b/keyboards/unikeyboard/felix/config.h deleted file mode 100644 index 7bc78f68d69..00000000000 --- a/keyboards/unikeyboard/felix/config.h +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/unikeyboard/felix/keyboard.json b/keyboards/unikeyboard/felix/keyboard.json index 319340f5e62..b55138a15ce 100644 --- a/keyboards/unikeyboard/felix/keyboard.json +++ b/keyboards/unikeyboard/felix/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "E6", "D7"], "rows": ["B2", "B3", "B1", "F7", "F6"] diff --git a/keyboards/uranuma/config.h b/keyboards/uranuma/config.h deleted file mode 100644 index 7bc78f68d69..00000000000 --- a/keyboards/uranuma/config.h +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/uranuma/keyboard.json b/keyboards/uranuma/keyboard.json index 8ac5b8063ae..b24ce74d9ff 100644 --- a/keyboards/uranuma/keyboard.json +++ b/keyboards/uranuma/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "D2", "D4"], "rows": ["C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/utd80/config.h b/keyboards/utd80/config.h deleted file mode 100644 index 4a4d65e62f8..00000000000 --- a/keyboards/utd80/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 UTDKeyboard & Dominic Gan - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/utd80/keyboard.json b/keyboards/utd80/keyboard.json index 6e4c966d403..41bd35c66a4 100644 --- a/keyboards/utd80/keyboard.json +++ b/keyboards/utd80/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "D3", "E6", "D7", "D6", "D4", "D2", "D1"], "rows": ["B4", "D5", "D0", "B2", "B3", "B0"] diff --git a/keyboards/v60_type_r/config.h b/keyboards/v60_type_r/config.h index c8b7da2ae82..6b92da01246 100644 --- a/keyboards/v60_type_r/config.h +++ b/keyboards/v60_type_r/config.h @@ -23,11 +23,6 @@ along with this program. If not, see . #define RGB_GREEN_PIN F5 #define RGB_BLUE_PIN F4 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/v60_type_r/keyboard.json b/keyboards/v60_type_r/keyboard.json index a9c01dc7501..eba729220a8 100644 --- a/keyboards/v60_type_r/keyboard.json +++ b/keyboards/v60_type_r/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7"], "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7"] diff --git a/keyboards/vagrant_10/config.h b/keyboards/vagrant_10/config.h deleted file mode 100755 index 195f3f617cd..00000000000 --- a/keyboards/vagrant_10/config.h +++ /dev/null @@ -1,32 +0,0 @@ - -/** -MIT License - -Copyright (c) 2020 Shanduur & QMK Firmware - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/vagrant_10/keyboard.json b/keyboards/vagrant_10/keyboard.json index 7291dea3028..26b68b69234 100644 --- a/keyboards/vagrant_10/keyboard.json +++ b/keyboards/vagrant_10/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F6", "F5"], "rows": ["F7", "B1", "B3", "B2"] diff --git a/keyboards/viendi8l/config.h b/keyboards/viendi8l/config.h index a449301c2b2..0a22c61a091 100644 --- a/keyboards/viendi8l/config.h +++ b/keyboards/viendi8l/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define I2C_DRIVER I2CD1 #define I2C_SCL_PIN B6 #define I2C_SDA_PIN B7 diff --git a/keyboards/viendi8l/keyboard.json b/keyboards/viendi8l/keyboard.json index 4a7ac1b5acb..f6df59e08b6 100644 --- a/keyboards/viendi8l/keyboard.json +++ b/keyboards/viendi8l/keyboard.json @@ -28,6 +28,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "C8", "C9", "A8", "B3", "B4", "A10", "B5", "B8", "B9", "C13", "C14", "C15", "A0", "A1", "A2", "A3"], "rows": ["C3", "C2", "C1", "C0", "B14", "A7"] diff --git a/keyboards/viktus/at101_bh/config.h b/keyboards/viktus/at101_bh/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/viktus/at101_bh/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/viktus/at101_bh/keyboard.json b/keyboards/viktus/at101_bh/keyboard.json index b950aec2d02..a315288cac4 100644 --- a/keyboards/viktus/at101_bh/keyboard.json +++ b/keyboards/viktus/at101_bh/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "B7", "B3", "B2", "B1", "B0", "E6", "D2", "D3"], "rows": ["F0", "F1", "F4", "D4", "F6", "F5", "F7", "B6", "B5", "D5", "C7", "C6"] diff --git a/keyboards/viktus/omnikey_bh/config.h b/keyboards/viktus/omnikey_bh/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/viktus/omnikey_bh/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/viktus/omnikey_bh/keyboard.json b/keyboards/viktus/omnikey_bh/keyboard.json index a44b23d6552..3356bf1eb28 100644 --- a/keyboards/viktus/omnikey_bh/keyboard.json +++ b/keyboards/viktus/omnikey_bh/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C2", "C3", "C4", "C7", "C1", "C0", "E1", "E0", "D7", "F7", "F6", "F5", "F4", "F3", "F2", "F1", "F0", "E6", "E7", "B0", "B1", "B2", "B3"], "rows": ["B7", "D0", "D1", "D2", "D3", "D4"] diff --git a/keyboards/viktus/smolka/config.h b/keyboards/viktus/smolka/config.h deleted file mode 100644 index bb14ae71b11..00000000000 --- a/keyboards/viktus/smolka/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 jrfhoutx - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/viktus/smolka/keyboard.json b/keyboards/viktus/smolka/keyboard.json index ade26b37351..e2cd55a4052 100644 --- a/keyboards/viktus/smolka/keyboard.json +++ b/keyboards/viktus/smolka/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D7", "B4", "B5", "B6", "D4", "B1", "B2"], "rows": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6"] diff --git a/keyboards/viktus/sp111/config.h b/keyboards/viktus/sp111/config.h index de698349026..cbd6dbc4d94 100644 --- a/keyboards/viktus/sp111/config.h +++ b/keyboards/viktus/sp111/config.h @@ -20,11 +20,6 @@ #define MATRIX_ROWS 6*2 #define MATRIX_COLS 11 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/viktus/sp111/keyboard.json b/keyboards/viktus/sp111/keyboard.json index a309c14afe3..8cf65a5522a 100644 --- a/keyboards/viktus/sp111/keyboard.json +++ b/keyboards/viktus/sp111/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "layouts": { diff --git a/keyboards/viktus/styrka/config.h b/keyboards/viktus/styrka/config.h deleted file mode 100644 index c0e0f2bef8b..00000000000 --- a/keyboards/viktus/styrka/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 jrfhoutx - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/viktus/styrka/keyboard.json b/keyboards/viktus/styrka/keyboard.json index e5a642e471e..98d46bc81a0 100644 --- a/keyboards/viktus/styrka/keyboard.json +++ b/keyboards/viktus/styrka/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "B14", "B15", "A8", "A9"], "rows": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "B13", "B12"] diff --git a/keyboards/viktus/z150_bh/config.h b/keyboards/viktus/z150_bh/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/viktus/z150_bh/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/viktus/z150_bh/keyboard.json b/keyboards/viktus/z150_bh/keyboard.json index 5875b6d1712..27754da5438 100644 --- a/keyboards/viktus/z150_bh/keyboard.json +++ b/keyboards/viktus/z150_bh/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D4", "D5", "D7", "E0", "C7", "C6", "C5", "C4", "F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7"], "rows": ["C3", "C2", "C1", "C0", "E1"] diff --git a/keyboards/vitamins_included/rev1/config.h b/keyboards/vitamins_included/rev1/config.h index 027686726df..6faac18ae1d 100644 --- a/keyboards/vitamins_included/rev1/config.h +++ b/keyboards/vitamins_included/rev1/config.h @@ -23,11 +23,6 @@ along with this program. If not, see . #define EE_HANDS -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Audio settings */ #ifdef AUDIO_ENABLE #define AUDIO_PIN C6 // Define this to enable the buzzer diff --git a/keyboards/vitamins_included/rev1/keyboard.json b/keyboards/vitamins_included/rev1/keyboard.json index de21929c39b..dc55407b6af 100644 --- a/keyboards/vitamins_included/rev1/keyboard.json +++ b/keyboards/vitamins_included/rev1/keyboard.json @@ -7,6 +7,12 @@ "rows": ["F5", "F6", "C7", "F7"] }, "diode_direction": "COL2ROW", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "split": { "enabled": true, "soft_serial_pin": "D0" From 912124f71cfcd9276fec13b27dea0029e49b1483 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 11:48:32 -0700 Subject: [PATCH 041/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: T (#23785) Affects: - `takashicompany/center_enter` - `takashicompany/endzone34` - `takashicompany/qoolee` - `takashicompany/radialex` - `takashiski/namecard2x4/rev1` - `takashiski/namecard2x4/rev2` - `takashiski/otaku_split/rev0` - `takashiski/otaku_split/rev1` - `taleguers/taleguers75` - `tanuki` - `team0110/p1800fl` - `technika` - `tenki` - `tetris` - `tg4x` - `the_royal/liminal` - `the_royal/schwann` - `thevankeyboards/bananasplit` - `thevankeyboards/caravan` - `thevankeyboards/jetvan` - `thevankeyboards/minivan` - `thevankeyboards/roadkit` - `tkc/california` - `tkc/m0lly` - `tkc/tkc1800` - `tkc/tkl_ab87` - `tkw/stoutgat/v2` - `tmo50` - `toad` - `toffee_studio/blueberry` - `tokyokeyboard/alix40` - `tokyokeyboard/tokyo60` - `tominabox1/adalyn` - `tominabox1/le_chiffre` - `tominabox1/qaz` - `tr60w` - `treasure/type9` - `tszaboo/ortho4exent` --- .../takashicompany/center_enter/config.h | 39 ------------------ .../takashicompany/center_enter/keyboard.json | 6 +++ keyboards/takashicompany/endzone34/config.h | 39 ------------------ .../takashicompany/endzone34/keyboard.json | 6 +++ keyboards/takashicompany/qoolee/config.h | 39 ------------------ keyboards/takashicompany/qoolee/keyboard.json | 6 +++ keyboards/takashicompany/radialex/config.h | 39 ------------------ .../takashicompany/radialex/keyboard.json | 6 +++ .../takashiski/namecard2x4/rev1/config.h | 39 ------------------ .../takashiski/namecard2x4/rev1/keyboard.json | 6 +++ .../takashiski/namecard2x4/rev2/config.h | 39 ------------------ .../takashiski/namecard2x4/rev2/keyboard.json | 6 +++ .../takashiski/otaku_split/rev0/config.h | 39 ------------------ .../takashiski/otaku_split/rev0/keyboard.json | 6 +++ .../takashiski/otaku_split/rev1/config.h | 5 --- .../takashiski/otaku_split/rev1/keyboard.json | 6 +++ keyboards/taleguers/taleguers75/config.h | 23 ----------- keyboards/taleguers/taleguers75/keyboard.json | 6 +++ keyboards/tanuki/config.h | 39 ------------------ keyboards/tanuki/keyboard.json | 6 +++ keyboards/team0110/p1800fl/config.h | 23 ----------- keyboards/team0110/p1800fl/keyboard.json | 6 +++ keyboards/technika/config.h | 39 ------------------ keyboards/technika/keyboard.json | 6 +++ keyboards/tenki/config.h | 7 ---- keyboards/tenki/keyboard.json | 6 +++ keyboards/tetris/config.h | 6 --- keyboards/tetris/keyboard.json | 6 +++ keyboards/tg4x/config.h | 39 ------------------ keyboards/tg4x/keyboard.json | 6 +++ keyboards/the_royal/liminal/config.h | 6 --- keyboards/the_royal/liminal/keyboard.json | 6 +++ keyboards/the_royal/schwann/config.h | 6 --- keyboards/the_royal/schwann/keyboard.json | 6 +++ .../thevankeyboards/bananasplit/config.h | 24 ----------- .../thevankeyboards/bananasplit/keyboard.json | 6 +++ keyboards/thevankeyboards/caravan/config.h | 23 ----------- .../thevankeyboards/caravan/keyboard.json | 6 +++ keyboards/thevankeyboards/jetvan/config.h | 41 ------------------- .../thevankeyboards/jetvan/keyboard.json | 6 +++ keyboards/thevankeyboards/minivan/config.h | 23 ----------- .../thevankeyboards/minivan/keyboard.json | 6 +++ keyboards/thevankeyboards/roadkit/config.h | 39 ------------------ .../thevankeyboards/roadkit/keyboard.json | 6 +++ keyboards/tkc/california/config.h | 39 ------------------ keyboards/tkc/california/keyboard.json | 6 +++ keyboards/tkc/m0lly/config.h | 39 ------------------ keyboards/tkc/m0lly/keyboard.json | 6 +++ keyboards/tkc/tkc1800/config.h | 39 ------------------ keyboards/tkc/tkc1800/keyboard.json | 6 +++ keyboards/tkc/tkl_ab87/config.h | 39 ------------------ keyboards/tkc/tkl_ab87/keyboard.json | 6 +++ keyboards/tkw/stoutgat/v2/config.h | 5 --- keyboards/tkw/stoutgat/v2/info.json | 6 ++- keyboards/tmo50/config.h | 39 ------------------ keyboards/tmo50/keyboard.json | 6 +++ keyboards/toad/config.h | 7 ---- keyboards/toad/keyboard.json | 6 +++ keyboards/toffee_studio/blueberry/config.h | 22 ---------- .../toffee_studio/blueberry/keyboard.json | 6 +++ keyboards/tokyokeyboard/alix40/config.h | 6 --- keyboards/tokyokeyboard/alix40/keyboard.json | 6 +++ keyboards/tokyokeyboard/tokyo60/config.h | 7 ---- keyboards/tokyokeyboard/tokyo60/keyboard.json | 6 +++ keyboards/tominabox1/adalyn/config.h | 21 ---------- keyboards/tominabox1/adalyn/keyboard.json | 6 +++ keyboards/tominabox1/le_chiffre/config.h | 21 ---------- keyboards/tominabox1/le_chiffre/info.json | 6 +++ keyboards/tominabox1/qaz/config.h | 6 --- keyboards/tominabox1/qaz/keyboard.json | 6 +++ keyboards/tr60w/config.h | 7 ---- keyboards/tr60w/keyboard.json | 6 +++ keyboards/treasure/type9/config.h | 39 ------------------ keyboards/treasure/type9/keyboard.json | 6 +++ keyboards/tszaboo/ortho4exent/config.h | 31 -------------- keyboards/tszaboo/ortho4exent/keyboard.json | 6 +++ 76 files changed, 227 insertions(+), 984 deletions(-) delete mode 100644 keyboards/takashicompany/center_enter/config.h delete mode 100644 keyboards/takashicompany/endzone34/config.h delete mode 100644 keyboards/takashicompany/qoolee/config.h delete mode 100644 keyboards/takashicompany/radialex/config.h delete mode 100644 keyboards/takashiski/namecard2x4/rev1/config.h delete mode 100644 keyboards/takashiski/namecard2x4/rev2/config.h delete mode 100644 keyboards/takashiski/otaku_split/rev0/config.h delete mode 100644 keyboards/taleguers/taleguers75/config.h delete mode 100644 keyboards/tanuki/config.h delete mode 100644 keyboards/team0110/p1800fl/config.h delete mode 100644 keyboards/technika/config.h delete mode 100644 keyboards/tenki/config.h delete mode 100644 keyboards/tg4x/config.h delete mode 100644 keyboards/the_royal/liminal/config.h delete mode 100644 keyboards/the_royal/schwann/config.h delete mode 100644 keyboards/thevankeyboards/bananasplit/config.h delete mode 100644 keyboards/thevankeyboards/caravan/config.h delete mode 100644 keyboards/thevankeyboards/jetvan/config.h delete mode 100644 keyboards/thevankeyboards/minivan/config.h delete mode 100644 keyboards/thevankeyboards/roadkit/config.h delete mode 100644 keyboards/tkc/california/config.h delete mode 100644 keyboards/tkc/m0lly/config.h delete mode 100644 keyboards/tkc/tkc1800/config.h delete mode 100644 keyboards/tkc/tkl_ab87/config.h delete mode 100644 keyboards/tmo50/config.h delete mode 100644 keyboards/toad/config.h delete mode 100644 keyboards/toffee_studio/blueberry/config.h delete mode 100644 keyboards/tokyokeyboard/tokyo60/config.h delete mode 100644 keyboards/tominabox1/adalyn/config.h delete mode 100644 keyboards/tominabox1/le_chiffre/config.h delete mode 100644 keyboards/tominabox1/qaz/config.h delete mode 100644 keyboards/tr60w/config.h delete mode 100644 keyboards/treasure/type9/config.h delete mode 100644 keyboards/tszaboo/ortho4exent/config.h diff --git a/keyboards/takashicompany/center_enter/config.h b/keyboards/takashicompany/center_enter/config.h deleted file mode 100644 index 7b4e38bd964..00000000000 --- a/keyboards/takashicompany/center_enter/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 takashicompany - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/takashicompany/center_enter/keyboard.json b/keyboards/takashicompany/center_enter/keyboard.json index 41a3e450931..b8188bd7182 100644 --- a/keyboards/takashicompany/center_enter/keyboard.json +++ b/keyboards/takashicompany/center_enter/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "D7", "B2", "B6", "D0", "D4", "C6"], "rows": ["E6", "B4", "B5"] diff --git a/keyboards/takashicompany/endzone34/config.h b/keyboards/takashicompany/endzone34/config.h deleted file mode 100644 index 7b4e38bd964..00000000000 --- a/keyboards/takashicompany/endzone34/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 takashicompany - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/takashicompany/endzone34/keyboard.json b/keyboards/takashicompany/endzone34/keyboard.json index 382d2f06724..3549d2c0893 100644 --- a/keyboards/takashicompany/endzone34/keyboard.json +++ b/keyboards/takashicompany/endzone34/keyboard.json @@ -39,6 +39,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "D4", "C6", "D7", "E6", "B4"], "rows": ["B3", "B2", "B6", "B5"] diff --git a/keyboards/takashicompany/qoolee/config.h b/keyboards/takashicompany/qoolee/config.h deleted file mode 100644 index 7b4e38bd964..00000000000 --- a/keyboards/takashicompany/qoolee/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 takashicompany - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/takashicompany/qoolee/keyboard.json b/keyboards/takashicompany/qoolee/keyboard.json index 52e6d61b803..bce23352936 100644 --- a/keyboards/takashicompany/qoolee/keyboard.json +++ b/keyboards/takashicompany/qoolee/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "D0", "D4", "C6", "D7"], "rows": ["E6", "B4", "B5"] diff --git a/keyboards/takashicompany/radialex/config.h b/keyboards/takashicompany/radialex/config.h deleted file mode 100644 index 7b4e38bd964..00000000000 --- a/keyboards/takashicompany/radialex/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 takashicompany - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/takashicompany/radialex/keyboard.json b/keyboards/takashicompany/radialex/keyboard.json index 3cc94cdd913..34ef3d2f1fc 100644 --- a/keyboards/takashicompany/radialex/keyboard.json +++ b/keyboards/takashicompany/radialex/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["B6", "D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/takashiski/namecard2x4/rev1/config.h b/keyboards/takashiski/namecard2x4/rev1/config.h deleted file mode 100644 index 8ecec41e2a9..00000000000 --- a/keyboards/takashiski/namecard2x4/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 takashiski - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/takashiski/namecard2x4/rev1/keyboard.json b/keyboards/takashiski/namecard2x4/rev1/keyboard.json index aaab760be3b..5eed4727a52 100644 --- a/keyboards/takashiski/namecard2x4/rev1/keyboard.json +++ b/keyboards/takashiski/namecard2x4/rev1/keyboard.json @@ -1,4 +1,10 @@ { + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "hue_steps": 10, "saturation_steps": 10, diff --git a/keyboards/takashiski/namecard2x4/rev2/config.h b/keyboards/takashiski/namecard2x4/rev2/config.h deleted file mode 100644 index 8ecec41e2a9..00000000000 --- a/keyboards/takashiski/namecard2x4/rev2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 takashiski - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/takashiski/namecard2x4/rev2/keyboard.json b/keyboards/takashiski/namecard2x4/rev2/keyboard.json index edef6a31b41..a66da76c445 100644 --- a/keyboards/takashiski/namecard2x4/rev2/keyboard.json +++ b/keyboards/takashiski/namecard2x4/rev2/keyboard.json @@ -1,4 +1,10 @@ { + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "hue_steps": 10, "saturation_steps": 10, diff --git a/keyboards/takashiski/otaku_split/rev0/config.h b/keyboards/takashiski/otaku_split/rev0/config.h deleted file mode 100644 index b43d9c74c80..00000000000 --- a/keyboards/takashiski/otaku_split/rev0/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 takashiski - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/takashiski/otaku_split/rev0/keyboard.json b/keyboards/takashiski/otaku_split/rev0/keyboard.json index db577c22606..e8e3b35d623 100644 --- a/keyboards/takashiski/otaku_split/rev0/keyboard.json +++ b/keyboards/takashiski/otaku_split/rev0/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["B5", "B4", "E6", "D7", "C6"] diff --git a/keyboards/takashiski/otaku_split/rev1/config.h b/keyboards/takashiski/otaku_split/rev1/config.h index 6a81e8ddcb9..8bede1c4213 100644 --- a/keyboards/takashiski/otaku_split/rev1/config.h +++ b/keyboards/takashiski/otaku_split/rev1/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN D2 //fix pin. HIGH is left, LOW is right -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/takashiski/otaku_split/rev1/keyboard.json b/keyboards/takashiski/otaku_split/rev1/keyboard.json index 0c83593eea6..039838144fb 100644 --- a/keyboards/takashiski/otaku_split/rev1/keyboard.json +++ b/keyboards/takashiski/otaku_split/rev1/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/taleguers/taleguers75/config.h b/keyboards/taleguers/taleguers75/config.h deleted file mode 100644 index 6b1277af2ce..00000000000 --- a/keyboards/taleguers/taleguers75/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Borja Lopez Jimenez - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/taleguers/taleguers75/keyboard.json b/keyboards/taleguers/taleguers75/keyboard.json index 5526c0b0a87..8c3a1565e21 100644 --- a/keyboards/taleguers/taleguers75/keyboard.json +++ b/keyboards/taleguers/taleguers75/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2", "B1", "E6", "B7", "C7", "C6", "D4", "D6", "D7", "B4", "D0", "D1", "F7"], "rows": ["B0", "F6", "F5", "F4", "F1", "F0"] diff --git a/keyboards/tanuki/config.h b/keyboards/tanuki/config.h deleted file mode 100644 index 4b007cf387e..00000000000 --- a/keyboards/tanuki/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/tanuki/keyboard.json b/keyboards/tanuki/keyboard.json index cebcc4404e4..0c4045e320c 100644 --- a/keyboards/tanuki/keyboard.json +++ b/keyboards/tanuki/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2", "B6", "B5", "B4", "E6", "D7", "C6", "F4", "F5", "F6"], "rows": ["F7", "B1", "D4", "D0"] diff --git a/keyboards/team0110/p1800fl/config.h b/keyboards/team0110/p1800fl/config.h deleted file mode 100644 index effb62971cd..00000000000 --- a/keyboards/team0110/p1800fl/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 marhalloweenvt - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/team0110/p1800fl/keyboard.json b/keyboards/team0110/p1800fl/keyboard.json index d5a34de0494..a56864cd36a 100644 --- a/keyboards/team0110/p1800fl/keyboard.json +++ b/keyboards/team0110/p1800fl/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "F7", "F6", "F5", "F4", "F1", "F0", "E6", "B0", "B1", "B2", "B3", "D0", "D1", "D2"], "rows": ["B6", "B5", "B4", "D7", "D6", "D4"] diff --git a/keyboards/technika/config.h b/keyboards/technika/config.h deleted file mode 100644 index f608132b5af..00000000000 --- a/keyboards/technika/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Álvaro "Gondolindrim" Volpato - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/technika/keyboard.json b/keyboards/technika/keyboard.json index 303983dfb41..a6f3c2bd01a 100644 --- a/keyboards/technika/keyboard.json +++ b/keyboards/technika/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A10", "A9", "A8", "B14", "B12", "B2", "B1", "B0", "A7", "A6", "A3", "B9", "B8", "B7"], "rows": ["B11", "B10", "A5", "A4"] diff --git a/keyboards/tenki/config.h b/keyboards/tenki/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/tenki/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/tenki/keyboard.json b/keyboards/tenki/keyboard.json index 7c05c98ef7d..628e2068bae 100644 --- a/keyboards/tenki/keyboard.json +++ b/keyboards/tenki/keyboard.json @@ -39,6 +39,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "D4", "D0"], "rows": ["B1", "B4", "F6", "B6", "B2"] diff --git a/keyboards/tetris/config.h b/keyboards/tetris/config.h index bc2273d5478..ac304699bf7 100755 --- a/keyboards/tetris/config.h +++ b/keyboards/tetris/config.h @@ -1,11 +1,5 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifdef AUDIO_ENABLE #define AUDIO_PIN B5 #define STARTUP_SONG SONG(ONE_UP_SOUND) diff --git a/keyboards/tetris/keyboard.json b/keyboards/tetris/keyboard.json index 01df052ba60..57cfd42c70d 100644 --- a/keyboards/tetris/keyboard.json +++ b/keyboards/tetris/keyboard.json @@ -43,6 +43,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "B4", "B6", "C6", "C7", "F6", "F7", "D4", "D2", "D3", "D5", "D6"], "rows": ["B3", "B2", "B1", "B0", "E6"] diff --git a/keyboards/tg4x/config.h b/keyboards/tg4x/config.h deleted file mode 100644 index b5b661bef2a..00000000000 --- a/keyboards/tg4x/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/tg4x/keyboard.json b/keyboards/tg4x/keyboard.json index d108774dfd3..ae4cd53a289 100644 --- a/keyboards/tg4x/keyboard.json +++ b/keyboards/tg4x/keyboard.json @@ -41,6 +41,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1"] diff --git a/keyboards/the_royal/liminal/config.h b/keyboards/the_royal/liminal/config.h deleted file mode 100644 index fa9a83d08ec..00000000000 --- a/keyboards/the_royal/liminal/config.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/the_royal/liminal/keyboard.json b/keyboards/the_royal/liminal/keyboard.json index c0fa5524ad0..0a5bd361e7c 100644 --- a/keyboards/the_royal/liminal/keyboard.json +++ b/keyboards/the_royal/liminal/keyboard.json @@ -26,6 +26,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "C4", "D3", "D2", "D1", "D0", "C2", "B0", "B1", "B2", "B3", "B4", "D5", "C5"], "rows": ["C6", "B6", "B7", "C7"] diff --git a/keyboards/the_royal/schwann/config.h b/keyboards/the_royal/schwann/config.h deleted file mode 100644 index fa9a83d08ec..00000000000 --- a/keyboards/the_royal/schwann/config.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/the_royal/schwann/keyboard.json b/keyboards/the_royal/schwann/keyboard.json index dcb32312f95..800d45b83af 100644 --- a/keyboards/the_royal/schwann/keyboard.json +++ b/keyboards/the_royal/schwann/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "D5", "D3", "D2", "C6", "B6", "B5", "B4", "D7", "D6", "D1"], "rows": ["F0", "F1", "F6", "C7"] diff --git a/keyboards/thevankeyboards/bananasplit/config.h b/keyboards/thevankeyboards/bananasplit/config.h deleted file mode 100644 index c2949ab3a7a..00000000000 --- a/keyboards/thevankeyboards/bananasplit/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/thevankeyboards/bananasplit/keyboard.json b/keyboards/thevankeyboards/bananasplit/keyboard.json index 3b1d5c846dc..1fb7fc50544 100644 --- a/keyboards/thevankeyboards/bananasplit/keyboard.json +++ b/keyboards/thevankeyboards/bananasplit/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "B1", "F0", "F1", "F4", "B3", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["B0", "B2", "B4", "B5", "B6"] diff --git a/keyboards/thevankeyboards/caravan/config.h b/keyboards/thevankeyboards/caravan/config.h deleted file mode 100644 index 5070f051560..00000000000 --- a/keyboards/thevankeyboards/caravan/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/thevankeyboards/caravan/keyboard.json b/keyboards/thevankeyboards/caravan/keyboard.json index 595c7c9fc9c..a5c00abf4e9 100644 --- a/keyboards/thevankeyboards/caravan/keyboard.json +++ b/keyboards/thevankeyboards/caravan/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F4", "F5", "B4", "B5", "B6", "B7", "D2", "D3", "D5", "D4", "D6"], "rows": ["B0", "B1", "B2", "B3"] diff --git a/keyboards/thevankeyboards/jetvan/config.h b/keyboards/thevankeyboards/jetvan/config.h deleted file mode 100644 index 950d17c8137..00000000000 --- a/keyboards/thevankeyboards/jetvan/config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2020 - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define less important options */ - -/* - * 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 diff --git a/keyboards/thevankeyboards/jetvan/keyboard.json b/keyboards/thevankeyboards/jetvan/keyboard.json index 5e1535a8ad1..a5a9b96ac8b 100644 --- a/keyboards/thevankeyboards/jetvan/keyboard.json +++ b/keyboards/thevankeyboards/jetvan/keyboard.json @@ -35,6 +35,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D3", "D5", "D6", "B4", "B6", "F6", "F5", "F4", "F1", "F0", "B3"], "rows": ["D7", "B5", "F7", "D4"] diff --git a/keyboards/thevankeyboards/minivan/config.h b/keyboards/thevankeyboards/minivan/config.h deleted file mode 100644 index 5070f051560..00000000000 --- a/keyboards/thevankeyboards/minivan/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/thevankeyboards/minivan/keyboard.json b/keyboards/thevankeyboards/minivan/keyboard.json index 11684b6cf80..53b3e0d89c4 100644 --- a/keyboards/thevankeyboards/minivan/keyboard.json +++ b/keyboards/thevankeyboards/minivan/keyboard.json @@ -24,6 +24,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D3", "D5", "D6", "B4", "B6", "F6", "F5", "F4", "F1", "F0", "B3"], "rows": ["D7", "B5", "F7", "D4"] diff --git a/keyboards/thevankeyboards/roadkit/config.h b/keyboards/thevankeyboards/roadkit/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/thevankeyboards/roadkit/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/thevankeyboards/roadkit/keyboard.json b/keyboards/thevankeyboards/roadkit/keyboard.json index 3b8a5b21591..e3c282bffe7 100644 --- a/keyboards/thevankeyboards/roadkit/keyboard.json +++ b/keyboards/thevankeyboards/roadkit/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F4", "D6", "D4"], "rows": ["F0", "F5", "D7", "B4"] diff --git a/keyboards/tkc/california/config.h b/keyboards/tkc/california/config.h deleted file mode 100644 index 827133aed36..00000000000 --- a/keyboards/tkc/california/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Terry Mathews - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/tkc/california/keyboard.json b/keyboards/tkc/california/keyboard.json index 1d52466bbab..465544bc03e 100644 --- a/keyboards/tkc/california/keyboard.json +++ b/keyboards/tkc/california/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B4", "D7", "D6", "F7", "F6", "F5", "D5", "D1", "F4"], "rows": ["C7", "C6", "B6", "D4", "D3", "D0", "E6", "B0", "B1", "B2", "D2", "B3"] diff --git a/keyboards/tkc/m0lly/config.h b/keyboards/tkc/m0lly/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/tkc/m0lly/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/tkc/m0lly/keyboard.json b/keyboards/tkc/m0lly/keyboard.json index e37b9e7bb2a..ae76f1e6d9b 100644 --- a/keyboards/tkc/m0lly/keyboard.json +++ b/keyboards/tkc/m0lly/keyboard.json @@ -19,6 +19,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5", "C4", "C3", "C2", "C1", "C0", "F5", "F6", "F7"], "rows": ["F2", "F1", "F0", "E1", "E0"] diff --git a/keyboards/tkc/tkc1800/config.h b/keyboards/tkc/tkc1800/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/tkc/tkc1800/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/tkc/tkc1800/keyboard.json b/keyboards/tkc/tkc1800/keyboard.json index bdc6aa13a75..2965c61d83a 100644 --- a/keyboards/tkc/tkc1800/keyboard.json +++ b/keyboards/tkc/tkc1800/keyboard.json @@ -19,6 +19,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5", "C4", "C3", "C2", "C1", "C0", "F5", "F6", "F7"], "rows": ["F4", "F3", "F2", "F1", "F0", "E1", "E0"] diff --git a/keyboards/tkc/tkl_ab87/config.h b/keyboards/tkc/tkl_ab87/config.h deleted file mode 100644 index ef2f04081f6..00000000000 --- a/keyboards/tkc/tkl_ab87/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Terry Mathews - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/tkc/tkl_ab87/keyboard.json b/keyboards/tkc/tkl_ab87/keyboard.json index a3583c0d678..c3d14bd8cf0 100644 --- a/keyboards/tkc/tkl_ab87/keyboard.json +++ b/keyboards/tkc/tkl_ab87/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "E6", "F6", "F4"], "rows": ["B1", "F5", "F7", "B0", "B2", "B3"] diff --git a/keyboards/tkw/stoutgat/v2/config.h b/keyboards/tkw/stoutgat/v2/config.h index 79f47b9bb38..04c41e2a112 100644 --- a/keyboards/tkw/stoutgat/v2/config.h +++ b/keyboards/tkw/stoutgat/v2/config.h @@ -20,8 +20,3 @@ #define WS2812_PWM_PAL_MODE 2 #define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM2 #define WS2812_PWM_DMA_CHANNEL 5 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/tkw/stoutgat/v2/info.json b/keyboards/tkw/stoutgat/v2/info.json index dbb227b0fdc..c6960e0fe96 100644 --- a/keyboards/tkw/stoutgat/v2/info.json +++ b/keyboards/tkw/stoutgat/v2/info.json @@ -49,7 +49,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "community_layouts": ["65_iso", "65_ansi"], "layouts": { diff --git a/keyboards/tmo50/config.h b/keyboards/tmo50/config.h deleted file mode 100644 index 8964ad6d2f4..00000000000 --- a/keyboards/tmo50/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 funderburker - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/tmo50/keyboard.json b/keyboards/tmo50/keyboard.json index d3d4b15e63d..dbb79802cac 100644 --- a/keyboards/tmo50/keyboard.json +++ b/keyboards/tmo50/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D4", "F0", "F1", "F4", "F5", "F6", "F7", "D6", "D7", "B4", "B5", "B6", "C6"], "rows": ["D5", "D3", "D2", "D0"] diff --git a/keyboards/toad/config.h b/keyboards/toad/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/toad/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/toad/keyboard.json b/keyboards/toad/keyboard.json index edb45794556..073fa6411ce 100644 --- a/keyboards/toad/keyboard.json +++ b/keyboards/toad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2", "B1", "E6", "B7", "C7", "C6", "D4", "D6", "D7", "B4", "D0", "D1", "F7"], "rows": ["B0", "F6", "F5", "F4", "F1", "F0"] diff --git a/keyboards/toffee_studio/blueberry/config.h b/keyboards/toffee_studio/blueberry/config.h deleted file mode 100644 index f15e82696a2..00000000000 --- a/keyboards/toffee_studio/blueberry/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2023 Toffee Studio - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/toffee_studio/blueberry/keyboard.json b/keyboards/toffee_studio/blueberry/keyboard.json index 45dda172b63..99a87b0a959 100644 --- a/keyboards/toffee_studio/blueberry/keyboard.json +++ b/keyboards/toffee_studio/blueberry/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "D4", "D6", "D7", "B4", "B5", "C6", "C7"], "rows": ["E6", "B0", "B1", "F6", "F5", "F1", "F7", "F0", "F4"] diff --git a/keyboards/tokyokeyboard/alix40/config.h b/keyboards/tokyokeyboard/alix40/config.h index 1ca9b6c46df..51d446c6d2a 100644 --- a/keyboards/tokyokeyboard/alix40/config.h +++ b/keyboards/tokyokeyboard/alix40/config.h @@ -14,11 +14,5 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Bluetooth */ #define BATTERY_LEVEL_PIN B6 diff --git a/keyboards/tokyokeyboard/alix40/keyboard.json b/keyboards/tokyokeyboard/alix40/keyboard.json index e4c27aaec21..b8b5420c662 100644 --- a/keyboards/tokyokeyboard/alix40/keyboard.json +++ b/keyboards/tokyokeyboard/alix40/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "D0", "D1", "D2", "D3", "D5", "D6"], "rows": ["D7", "C6", "C7", "B5"] diff --git a/keyboards/tokyokeyboard/tokyo60/config.h b/keyboards/tokyokeyboard/tokyo60/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/tokyokeyboard/tokyo60/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/tokyokeyboard/tokyo60/keyboard.json b/keyboards/tokyokeyboard/tokyo60/keyboard.json index 78fdcae0e37..b590946a3a8 100644 --- a/keyboards/tokyokeyboard/tokyo60/keyboard.json +++ b/keyboards/tokyokeyboard/tokyo60/keyboard.json @@ -19,6 +19,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B2", "B5", "B4", "D7", "D6", "B3"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/tominabox1/adalyn/config.h b/keyboards/tominabox1/adalyn/config.h deleted file mode 100644 index 389cdb9c132..00000000000 --- a/keyboards/tominabox1/adalyn/config.h +++ /dev/null @@ -1,21 +0,0 @@ - /* Copyright TJ Campie - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/tominabox1/adalyn/keyboard.json b/keyboards/tominabox1/adalyn/keyboard.json index f896dd4ab1c..113ef690ede 100644 --- a/keyboards/tominabox1/adalyn/keyboard.json +++ b/keyboards/tominabox1/adalyn/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "B4", "B5", "B6", "C6", "F7", "F6", "F5", "F4", "F1"], "rows": ["C7", "D6", "B7", "B3"] diff --git a/keyboards/tominabox1/le_chiffre/config.h b/keyboards/tominabox1/le_chiffre/config.h deleted file mode 100644 index 333d0a100eb..00000000000 --- a/keyboards/tominabox1/le_chiffre/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 tominabox1 - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/tominabox1/le_chiffre/info.json b/keyboards/tominabox1/le_chiffre/info.json index 47c07ab3618..cb4097d61d4 100644 --- a/keyboards/tominabox1/le_chiffre/info.json +++ b/keyboards/tominabox1/le_chiffre/info.json @@ -12,6 +12,12 @@ "oled": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "animations": { "alternating": true, diff --git a/keyboards/tominabox1/qaz/config.h b/keyboards/tominabox1/qaz/config.h deleted file mode 100644 index fa9a83d08ec..00000000000 --- a/keyboards/tominabox1/qaz/config.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/tominabox1/qaz/keyboard.json b/keyboards/tominabox1/qaz/keyboard.json index 691a1129bc7..9e18f0ddf4f 100644 --- a/keyboards/tominabox1/qaz/keyboard.json +++ b/keyboards/tominabox1/qaz/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "D3", "D2", "F5", "B5", "F6", "D7"], "rows": ["F4", "D4", "C6", "E6", "D1", "D0"] diff --git a/keyboards/tr60w/config.h b/keyboards/tr60w/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/tr60w/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/tr60w/keyboard.json b/keyboards/tr60w/keyboard.json index 6fa5914d6cf..60c01bdcfc6 100644 --- a/keyboards/tr60w/keyboard.json +++ b/keyboards/tr60w/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F4", "F1", "F0", "B0", "D5", "D3", "D6", "D7", "B4", "B5", "B6", "C6", "D2"], "rows": ["D0", "D1", "B1", "B2", "E6", "B3"] diff --git a/keyboards/treasure/type9/config.h b/keyboards/treasure/type9/config.h deleted file mode 100644 index d876570c808..00000000000 --- a/keyboards/treasure/type9/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/treasure/type9/keyboard.json b/keyboards/treasure/type9/keyboard.json index 2970c012967..0c1ee1987ad 100644 --- a/keyboards/treasure/type9/keyboard.json +++ b/keyboards/treasure/type9/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D4"], "rows": ["E6", "D7", "C6"] diff --git a/keyboards/tszaboo/ortho4exent/config.h b/keyboards/tszaboo/ortho4exent/config.h deleted file mode 100644 index ec16cc36b10..00000000000 --- a/keyboards/tszaboo/ortho4exent/config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -Copyright 2021 tszaboo - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* disable print */ -//#define NO_PRINT - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT diff --git a/keyboards/tszaboo/ortho4exent/keyboard.json b/keyboards/tszaboo/ortho4exent/keyboard.json index 8aa0a34cd7a..83d7348d1ec 100644 --- a/keyboards/tszaboo/ortho4exent/keyboard.json +++ b/keyboards/tszaboo/ortho4exent/keyboard.json @@ -41,6 +41,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "D6", "D5", "D3", "D2", "D1", "B7", "B3", "B2"], "rows": ["B0", "B1", "D4", "D7", "B4"] From f37f27f02a55f750c21f671e712e3f704ba57885 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 11:49:30 -0700 Subject: [PATCH 042/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: O (#23778) Affects: - `oddball` - `oddforge/vea` - `ok60` - `om60` - `omkbd/ergodash/mini` - `omkbd/ergodash/rev1` - `omkbd/runner3680/3x6` - `omkbd/runner3680/3x7` - `omkbd/runner3680/3x8` - `omkbd/runner3680/4x6` - `omkbd/runner3680/4x7` - `omkbd/runner3680/4x8` - `omkbd/runner3680/5x6` - `omkbd/runner3680/5x6_5x8` - `omkbd/runner3680/5x7` - `omkbd/runner3680/5x8` - `omnikeyish` - `orange75` - `org60` - `ortho5by12` - `orthocode` --- keyboards/oddball/config.h | 5 ---- keyboards/oddball/info.json | 6 +++++ keyboards/oddforge/vea/config.h | 3 --- keyboards/oddforge/vea/keyboard.json | 6 +++++ keyboards/ok60/config.h | 24 ------------------- keyboards/ok60/keyboard.json | 6 +++++ keyboards/om60/config.h | 5 ---- keyboards/om60/keyboard.json | 6 ++++- keyboards/omkbd/ergodash/mini/config.h | 5 ---- keyboards/omkbd/ergodash/mini/keyboard.json | 6 +++++ keyboards/omkbd/ergodash/rev1/config.h | 5 ---- keyboards/omkbd/ergodash/rev1/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/3x6/config.h | 5 ---- keyboards/omkbd/runner3680/3x6/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/3x7/config.h | 5 ---- keyboards/omkbd/runner3680/3x7/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/3x8/config.h | 5 ---- keyboards/omkbd/runner3680/3x8/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/4x6/config.h | 5 ---- keyboards/omkbd/runner3680/4x6/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/4x7/config.h | 5 ---- keyboards/omkbd/runner3680/4x7/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/4x8/config.h | 5 ---- keyboards/omkbd/runner3680/4x8/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/5x6/config.h | 5 ---- keyboards/omkbd/runner3680/5x6/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/5x6_5x8/config.h | 5 ---- .../omkbd/runner3680/5x6_5x8/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/5x7/config.h | 5 ---- keyboards/omkbd/runner3680/5x7/keyboard.json | 6 +++++ keyboards/omkbd/runner3680/5x8/config.h | 5 ---- keyboards/omkbd/runner3680/5x8/keyboard.json | 6 +++++ keyboards/omnikeyish/config.h | 6 ----- keyboards/omnikeyish/keyboard.json | 6 +++++ keyboards/orange75/config.h | 7 ------ keyboards/orange75/keyboard.json | 6 +++++ keyboards/org60/config.h | 23 ------------------ keyboards/org60/keyboard.json | 6 +++++ keyboards/ortho5by12/config.h | 20 ---------------- keyboards/ortho5by12/keyboard.json | 6 +++++ keyboards/orthocode/config.h | 22 ----------------- keyboards/orthocode/keyboard.json | 6 ++++- 42 files changed, 124 insertions(+), 177 deletions(-) delete mode 100644 keyboards/ok60/config.h delete mode 100644 keyboards/orange75/config.h delete mode 100644 keyboards/org60/config.h delete mode 100644 keyboards/ortho5by12/config.h delete mode 100644 keyboards/orthocode/config.h diff --git a/keyboards/oddball/config.h b/keyboards/oddball/config.h index 71c4ecd4dbb..73d4cbe862a 100644 --- a/keyboards/oddball/config.h +++ b/keyboards/oddball/config.h @@ -21,11 +21,6 @@ #define SPLIT_USB_DETECT #define MASTER_RIGHT -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* optical sensor settings */ #define SCROLL_DIVIDER 12 #define CPI_1 2000 diff --git a/keyboards/oddball/info.json b/keyboards/oddball/info.json index fdbb8b2b1db..3e6ffb0a90f 100644 --- a/keyboards/oddball/info.json +++ b/keyboards/oddball/info.json @@ -15,6 +15,12 @@ "nkro": false, "pointing_device": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "split": { "enabled": true }, diff --git a/keyboards/oddforge/vea/config.h b/keyboards/oddforge/vea/config.h index 316f8392c0d..c31783065cb 100644 --- a/keyboards/oddforge/vea/config.h +++ b/keyboards/oddforge/vea/config.h @@ -21,7 +21,4 @@ along with this program. If not, see . #define MATRIX_ROWS 8 #define MATRIX_COLS 15 -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_EFFECT_KNIGHT_OFFSET 9 diff --git a/keyboards/oddforge/vea/keyboard.json b/keyboards/oddforge/vea/keyboard.json index 6a6780ea53c..a93f843aa06 100644 --- a/keyboards/oddforge/vea/keyboard.json +++ b/keyboards/oddforge/vea/keyboard.json @@ -15,6 +15,12 @@ "mousekey": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "D4" }, diff --git a/keyboards/ok60/config.h b/keyboards/ok60/config.h deleted file mode 100644 index 74f7ff51815..00000000000 --- a/keyboards/ok60/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2018 Edward Browncross - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ok60/keyboard.json b/keyboards/ok60/keyboard.json index f6459907bea..5cf55b666d6 100644 --- a/keyboards/ok60/keyboard.json +++ b/keyboards/ok60/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "B6", "C6", "C7", "F1", "F0", "E6", "B3", "B2", "B1", "B0"], "rows": ["B5", "B4", "D7", "D6", "D4"] diff --git a/keyboards/om60/config.h b/keyboards/om60/config.h index e5c8d9426ab..1a6dfd12813 100644 --- a/keyboards/om60/config.h +++ b/keyboards/om60/config.h @@ -29,11 +29,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { D1, D0, D4, C6, D7 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, E6 } -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 90 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/om60/keyboard.json b/keyboards/om60/keyboard.json index 22386db039a..08eb898b014 100644 --- a/keyboards/om60/keyboard.json +++ b/keyboards/om60/keyboard.json @@ -22,7 +22,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgblight": { "hue_steps": 10, diff --git a/keyboards/omkbd/ergodash/mini/config.h b/keyboards/omkbd/ergodash/mini/config.h index 26543ebb9df..12b408ff562 100644 --- a/keyboards/omkbd/ergodash/mini/config.h +++ b/keyboards/omkbd/ergodash/mini/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define AUDIO_PIN C6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/ergodash/mini/keyboard.json b/keyboards/omkbd/ergodash/mini/keyboard.json index 04233261779..6286b73b90d 100644 --- a/keyboards/omkbd/ergodash/mini/keyboard.json +++ b/keyboards/omkbd/ergodash/mini/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D7", "E6", "B4", "B5"] diff --git a/keyboards/omkbd/ergodash/rev1/config.h b/keyboards/omkbd/ergodash/rev1/config.h index 26543ebb9df..12b408ff562 100644 --- a/keyboards/omkbd/ergodash/rev1/config.h +++ b/keyboards/omkbd/ergodash/rev1/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define AUDIO_PIN C6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/ergodash/rev1/keyboard.json b/keyboards/omkbd/ergodash/rev1/keyboard.json index 07405e22f72..fb4a1c22549 100644 --- a/keyboards/omkbd/ergodash/rev1/keyboard.json +++ b/keyboards/omkbd/ergodash/rev1/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D4", "D7", "E6", "B4", "B5"] diff --git a/keyboards/omkbd/runner3680/3x6/config.h b/keyboards/omkbd/runner3680/3x6/config.h index c0a755e251b..2b0210d2be2 100644 --- a/keyboards/omkbd/runner3680/3x6/config.h +++ b/keyboards/omkbd/runner3680/3x6/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/3x6/keyboard.json b/keyboards/omkbd/runner3680/3x6/keyboard.json index f2a169d2288..3e1ab5ba824 100644 --- a/keyboards/omkbd/runner3680/3x6/keyboard.json +++ b/keyboards/omkbd/runner3680/3x6/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7"] diff --git a/keyboards/omkbd/runner3680/3x7/config.h b/keyboards/omkbd/runner3680/3x7/config.h index c0a755e251b..2b0210d2be2 100644 --- a/keyboards/omkbd/runner3680/3x7/config.h +++ b/keyboards/omkbd/runner3680/3x7/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/3x7/keyboard.json b/keyboards/omkbd/runner3680/3x7/keyboard.json index e4b36983e73..496be949256 100644 --- a/keyboards/omkbd/runner3680/3x7/keyboard.json +++ b/keyboards/omkbd/runner3680/3x7/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7"] diff --git a/keyboards/omkbd/runner3680/3x8/config.h b/keyboards/omkbd/runner3680/3x8/config.h index c0a755e251b..2b0210d2be2 100644 --- a/keyboards/omkbd/runner3680/3x8/config.h +++ b/keyboards/omkbd/runner3680/3x8/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/3x8/keyboard.json b/keyboards/omkbd/runner3680/3x8/keyboard.json index e001332796c..80719fd0e47 100644 --- a/keyboards/omkbd/runner3680/3x8/keyboard.json +++ b/keyboards/omkbd/runner3680/3x8/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7"] diff --git a/keyboards/omkbd/runner3680/4x6/config.h b/keyboards/omkbd/runner3680/4x6/config.h index c0a755e251b..2b0210d2be2 100644 --- a/keyboards/omkbd/runner3680/4x6/config.h +++ b/keyboards/omkbd/runner3680/4x6/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/4x6/keyboard.json b/keyboards/omkbd/runner3680/4x6/keyboard.json index 6568a9e845e..f9d3146a785 100644 --- a/keyboards/omkbd/runner3680/4x6/keyboard.json +++ b/keyboards/omkbd/runner3680/4x6/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6"] diff --git a/keyboards/omkbd/runner3680/4x7/config.h b/keyboards/omkbd/runner3680/4x7/config.h index c0a755e251b..2b0210d2be2 100644 --- a/keyboards/omkbd/runner3680/4x7/config.h +++ b/keyboards/omkbd/runner3680/4x7/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/4x7/keyboard.json b/keyboards/omkbd/runner3680/4x7/keyboard.json index 88f3bdd18de..120e254e5cc 100644 --- a/keyboards/omkbd/runner3680/4x7/keyboard.json +++ b/keyboards/omkbd/runner3680/4x7/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6"] diff --git a/keyboards/omkbd/runner3680/4x8/config.h b/keyboards/omkbd/runner3680/4x8/config.h index c0a755e251b..2b0210d2be2 100644 --- a/keyboards/omkbd/runner3680/4x8/config.h +++ b/keyboards/omkbd/runner3680/4x8/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/4x8/keyboard.json b/keyboards/omkbd/runner3680/4x8/keyboard.json index 1ee1d482c92..e0b91088da0 100644 --- a/keyboards/omkbd/runner3680/4x8/keyboard.json +++ b/keyboards/omkbd/runner3680/4x8/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6"] diff --git a/keyboards/omkbd/runner3680/5x6/config.h b/keyboards/omkbd/runner3680/5x6/config.h index c0a755e251b..2b0210d2be2 100644 --- a/keyboards/omkbd/runner3680/5x6/config.h +++ b/keyboards/omkbd/runner3680/5x6/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/5x6/keyboard.json b/keyboards/omkbd/runner3680/5x6/keyboard.json index 28fddf18738..c06bff537fb 100644 --- a/keyboards/omkbd/runner3680/5x6/keyboard.json +++ b/keyboards/omkbd/runner3680/5x6/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/omkbd/runner3680/5x6_5x8/config.h b/keyboards/omkbd/runner3680/5x6_5x8/config.h index 8cf1e8238d3..b6f3f5ff865 100644 --- a/keyboards/omkbd/runner3680/5x6_5x8/config.h +++ b/keyboards/omkbd/runner3680/5x6_5x8/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json b/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json index 8a7b34597e1..4c359b27ebd 100644 --- a/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json +++ b/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x5658", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgb_matrix": { "driver": "ws2812", "split_count": [30, 40] diff --git a/keyboards/omkbd/runner3680/5x7/config.h b/keyboards/omkbd/runner3680/5x7/config.h index c0a755e251b..2b0210d2be2 100644 --- a/keyboards/omkbd/runner3680/5x7/config.h +++ b/keyboards/omkbd/runner3680/5x7/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/5x7/keyboard.json b/keyboards/omkbd/runner3680/5x7/keyboard.json index 10a833a839e..55936eb9d36 100644 --- a/keyboards/omkbd/runner3680/5x7/keyboard.json +++ b/keyboards/omkbd/runner3680/5x7/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/omkbd/runner3680/5x8/config.h b/keyboards/omkbd/runner3680/5x8/config.h index c0a755e251b..2b0210d2be2 100644 --- a/keyboards/omkbd/runner3680/5x8/config.h +++ b/keyboards/omkbd/runner3680/5x8/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SELECT_SOFT_SERIAL_SPEED 1 /*Sets the protocol speed when using serial communication*/ //Speeds: diff --git a/keyboards/omkbd/runner3680/5x8/keyboard.json b/keyboards/omkbd/runner3680/5x8/keyboard.json index 8b2ca0142ce..9e96e69bbb8 100644 --- a/keyboards/omkbd/runner3680/5x8/keyboard.json +++ b/keyboards/omkbd/runner3680/5x8/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.5" }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/omnikeyish/config.h b/keyboards/omnikeyish/config.h index c4edb8427c6..ad307854e03 100644 --- a/keyboards/omnikeyish/config.h +++ b/keyboards/omnikeyish/config.h @@ -14,12 +14,6 @@ /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION ROW2COL -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define DYNAMIC_MACRO_COUNT 12 #define DYNAMIC_MACRO_SIZE 48 #define DYNAMIC_MACRO_EEPROM_STORAGE diff --git a/keyboards/omnikeyish/keyboard.json b/keyboards/omnikeyish/keyboard.json index cd61f2954bb..82363b10bfa 100644 --- a/keyboards/omnikeyish/keyboard.json +++ b/keyboards/omnikeyish/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "E1", "num_lock": "E0", diff --git a/keyboards/orange75/config.h b/keyboards/orange75/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/orange75/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/orange75/keyboard.json b/keyboards/orange75/keyboard.json index 4208cc0f586..a0ef8196513 100644 --- a/keyboards/orange75/keyboard.json +++ b/keyboards/orange75/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D1", "D0", "B7", "B3"], "rows": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B4", "D7", "D4", "D5", "D6"] diff --git a/keyboards/org60/config.h b/keyboards/org60/config.h deleted file mode 100644 index 4e596948184..00000000000 --- a/keyboards/org60/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/org60/keyboard.json b/keyboards/org60/keyboard.json index d4994346af2..2586d16b083 100644 --- a/keyboards/org60/keyboard.json +++ b/keyboards/org60/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/ortho5by12/config.h b/keyboards/ortho5by12/config.h deleted file mode 100644 index 2e979809874..00000000000 --- a/keyboards/ortho5by12/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2019 Takuya Urakawa (dm9records.com) -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ortho5by12/keyboard.json b/keyboards/ortho5by12/keyboard.json index c45788ba2fe..49ce4944175 100644 --- a/keyboards/ortho5by12/keyboard.json +++ b/keyboards/ortho5by12/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C2", "D0", "D1", "D4", "C3", "C1"], "rows": ["B5", "B1", "B2", "B3", "B4", "C0", "D5", "D6", "D7", "B0"] diff --git a/keyboards/orthocode/config.h b/keyboards/orthocode/config.h deleted file mode 100644 index 3cc80db3764..00000000000 --- a/keyboards/orthocode/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/*Copyright 2020 Jrodna - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/orthocode/keyboard.json b/keyboards/orthocode/keyboard.json index 69f3374b27f..11c720c6b1d 100644 --- a/keyboards/orthocode/keyboard.json +++ b/keyboards/orthocode/keyboard.json @@ -31,7 +31,11 @@ ] }, "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgblight": { "saturation_steps": 8, From bfa05cc5e7a41c0291690516c2954aaefde7d9b9 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 11:49:48 -0700 Subject: [PATCH 043/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: P, Part 1 (#23779) Affects: - `p3d/eu_isolation` - `p3d/glitch` - `p3d/q4z` - `p3d/synapse` - `p3d/tw40` - `panc40` - `papercranekeyboards/gerald65` - `parallel/parallel_65/hotswap` - `parallel/parallel_65/soldered` - `pdxkbc` - `pearlboards/atlas` - `pearlboards/pandora` - `pearlboards/pearl` - `pearlboards/zeus` - `pearlboards/zeuspad` - `pegasus` - `phantom` - `phoenix` - `picolab/frusta_fundamental` - `pimentoso/paddino02/rev1` - `pimentoso/paddino02/rev2/left` - `pimentoso/paddino02/rev2/right` - `pisces` - `pizzakeyboards/pizza65` - `pkb65` - `planck` - `playkbtw/ca66` - `playkbtw/pk60` - `playkbtw/pk64rgb` - `pluckey` - `plume/plume65` - `plywrks/ahgase` - `plywrks/lune` - `pohjolaworks/louhi` - `polycarbdiet/s20` - `pom_keyboards/tnln95` - `portal_66/hotswap` - `portal_66/soldered` - `pos78` --- keyboards/p3d/eu_isolation/config.h | 21 ---------- keyboards/p3d/eu_isolation/keyboard.json | 6 +++ keyboards/p3d/glitch/config.h | 34 ---------------- keyboards/p3d/glitch/keyboard.json | 6 +++ keyboards/p3d/q4z/config.h | 21 ---------- keyboards/p3d/q4z/keyboard.json | 6 +++ keyboards/p3d/synapse/config.h | 19 --------- keyboards/p3d/synapse/keyboard.json | 6 +++ keyboards/p3d/tw40/config.h | 22 ----------- keyboards/p3d/tw40/keyboard.json | 6 +++ keyboards/panc40/config.h | 7 ---- keyboards/panc40/keyboard.json | 6 +++ .../papercranekeyboards/gerald65/config.h | 25 ------------ .../gerald65/keyboard.json | 6 +++ .../parallel/parallel_65/hotswap/config.h | 39 ------------------- .../parallel_65/hotswap/keyboard.json | 6 +++ .../parallel/parallel_65/soldered/config.h | 39 ------------------- .../parallel_65/soldered/keyboard.json | 6 +++ keyboards/pdxkbc/config.h | 39 ------------------- keyboards/pdxkbc/keyboard.json | 6 +++ keyboards/pearlboards/atlas/config.h | 6 --- keyboards/pearlboards/atlas/keyboard.json | 6 +++ keyboards/pearlboards/pandora/config.h | 24 ------------ keyboards/pearlboards/pandora/keyboard.json | 6 +++ keyboards/pearlboards/pearl/config.h | 6 --- keyboards/pearlboards/pearl/keyboard.json | 6 +++ keyboards/pearlboards/zeus/config.h | 6 --- keyboards/pearlboards/zeus/keyboard.json | 6 +++ keyboards/pearlboards/zeuspad/config.h | 6 --- keyboards/pearlboards/zeuspad/keyboard.json | 6 +++ keyboards/pegasus/config.h | 39 ------------------- keyboards/pegasus/keyboard.json | 6 +++ keyboards/phantom/config.h | 39 ------------------- keyboards/phantom/keyboard.json | 6 +++ keyboards/phoenix/config.h | 3 -- keyboards/phoenix/keyboard.json | 6 +++ keyboards/picolab/frusta_fundamental/config.h | 23 ----------- .../picolab/frusta_fundamental/keyboard.json | 6 +++ keyboards/pimentoso/paddino02/rev1/config.h | 7 ---- .../pimentoso/paddino02/rev1/keyboard.json | 6 +++ .../pimentoso/paddino02/rev2/left/config.h | 7 ---- .../paddino02/rev2/left/keyboard.json | 6 +++ .../pimentoso/paddino02/rev2/right/config.h | 7 ---- .../paddino02/rev2/right/keyboard.json | 6 +++ keyboards/pisces/config.h | 5 --- keyboards/pisces/keyboard.json | 6 +++ keyboards/pizzakeyboards/pizza65/config.h | 28 ------------- .../pizzakeyboards/pizza65/keyboard.json | 6 +++ keyboards/pkb65/config.h | 28 ------------- keyboards/pkb65/keyboard.json | 6 +++ keyboards/planck/config.h | 5 --- keyboards/planck/info.json | 8 +++- keyboards/playkbtw/ca66/config.h | 7 ---- keyboards/playkbtw/ca66/keyboard.json | 6 +++ keyboards/playkbtw/pk60/config.h | 7 ---- keyboards/playkbtw/pk60/keyboard.json | 6 +++ keyboards/playkbtw/pk64rgb/config.h | 5 --- keyboards/playkbtw/pk64rgb/keyboard.json | 6 +++ keyboards/pluckey/config.h | 39 ------------------- keyboards/pluckey/keyboard.json | 6 +++ keyboards/plume/plume65/config.h | 38 ------------------ keyboards/plume/plume65/keyboard.json | 6 +++ keyboards/plywrks/ahgase/config.h | 23 ----------- keyboards/plywrks/ahgase/keyboard.json | 6 +++ keyboards/plywrks/lune/config.h | 23 ----------- keyboards/plywrks/lune/keyboard.json | 6 +++ keyboards/pohjolaworks/louhi/config.h | 39 ------------------- keyboards/pohjolaworks/louhi/keyboard.json | 6 +++ keyboards/polycarbdiet/s20/config.h | 22 ----------- keyboards/polycarbdiet/s20/keyboard.json | 6 +++ keyboards/pom_keyboards/tnln95/config.h | 22 ----------- keyboards/pom_keyboards/tnln95/keyboard.json | 6 +++ keyboards/portal_66/hotswap/config.h | 39 ------------------- keyboards/portal_66/hotswap/keyboard.json | 6 +++ keyboards/portal_66/soldered/config.h | 39 ------------------- keyboards/portal_66/soldered/keyboard.json | 6 +++ keyboards/pos78/config.h | 39 ------------------- keyboards/pos78/keyboard.json | 6 +++ 78 files changed, 235 insertions(+), 848 deletions(-) delete mode 100644 keyboards/p3d/eu_isolation/config.h delete mode 100644 keyboards/p3d/glitch/config.h delete mode 100644 keyboards/p3d/q4z/config.h delete mode 100644 keyboards/p3d/synapse/config.h delete mode 100644 keyboards/p3d/tw40/config.h delete mode 100644 keyboards/panc40/config.h delete mode 100644 keyboards/papercranekeyboards/gerald65/config.h delete mode 100644 keyboards/parallel/parallel_65/hotswap/config.h delete mode 100644 keyboards/parallel/parallel_65/soldered/config.h delete mode 100644 keyboards/pdxkbc/config.h delete mode 100644 keyboards/pearlboards/pandora/config.h delete mode 100644 keyboards/pegasus/config.h delete mode 100644 keyboards/phantom/config.h delete mode 100644 keyboards/picolab/frusta_fundamental/config.h delete mode 100755 keyboards/pimentoso/paddino02/rev1/config.h delete mode 100755 keyboards/pimentoso/paddino02/rev2/left/config.h delete mode 100755 keyboards/pimentoso/paddino02/rev2/right/config.h delete mode 100644 keyboards/pizzakeyboards/pizza65/config.h delete mode 100644 keyboards/pkb65/config.h delete mode 100644 keyboards/playkbtw/ca66/config.h delete mode 100644 keyboards/playkbtw/pk60/config.h delete mode 100644 keyboards/pluckey/config.h delete mode 100644 keyboards/plume/plume65/config.h delete mode 100644 keyboards/plywrks/ahgase/config.h delete mode 100644 keyboards/plywrks/lune/config.h delete mode 100644 keyboards/pohjolaworks/louhi/config.h delete mode 100644 keyboards/polycarbdiet/s20/config.h delete mode 100644 keyboards/pom_keyboards/tnln95/config.h delete mode 100644 keyboards/portal_66/hotswap/config.h delete mode 100644 keyboards/portal_66/soldered/config.h delete mode 100644 keyboards/pos78/config.h diff --git a/keyboards/p3d/eu_isolation/config.h b/keyboards/p3d/eu_isolation/config.h deleted file mode 100644 index de7206efe2a..00000000000 --- a/keyboards/p3d/eu_isolation/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 Austin "TuckTuckFloof" Ashmore -* -* 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 . -*/ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/p3d/eu_isolation/keyboard.json b/keyboards/p3d/eu_isolation/keyboard.json index a94ee990ad2..715515c42d3 100644 --- a/keyboards/p3d/eu_isolation/keyboard.json +++ b/keyboards/p3d/eu_isolation/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4"], "rows": ["D2", "D3", "F1", "F0"] diff --git a/keyboards/p3d/glitch/config.h b/keyboards/p3d/glitch/config.h deleted file mode 100644 index 0fc3805ff7f..00000000000 --- a/keyboards/p3d/glitch/config.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2021 Matthew Dias - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * Feature disable options - * These options are also useful to firmware size reduction. - */ - -/* disable debug print */ -//#define NO_DEBUG - -/* disable print */ -//#define NO_PRINT diff --git a/keyboards/p3d/glitch/keyboard.json b/keyboards/p3d/glitch/keyboard.json index 366707f807d..5de1405f4ff 100644 --- a/keyboards/p3d/glitch/keyboard.json +++ b/keyboards/p3d/glitch/keyboard.json @@ -20,6 +20,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "D2", "B3", "B7", "F5", "F4", "F1", "F0"], "rows": ["D5", "D6", "B6", "D7", "C7", "B4", "B5", "D3", "D4", "C6"] diff --git a/keyboards/p3d/q4z/config.h b/keyboards/p3d/q4z/config.h deleted file mode 100644 index 67553a44320..00000000000 --- a/keyboards/p3d/q4z/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021 rjboone - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/p3d/q4z/keyboard.json b/keyboards/p3d/q4z/keyboard.json index 0b71df61b3a..9dfa123c6c1 100644 --- a/keyboards/p3d/q4z/keyboard.json +++ b/keyboards/p3d/q4z/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D4", "B6", "B2", "B3", "B1", "F7", "F6", "F5"], "rows": ["F4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/p3d/synapse/config.h b/keyboards/p3d/synapse/config.h deleted file mode 100644 index 9f86bdabd72..00000000000 --- a/keyboards/p3d/synapse/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2021 qpockets - * - * 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 . - */ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE diff --git a/keyboards/p3d/synapse/keyboard.json b/keyboards/p3d/synapse/keyboard.json index 277be632a5a..accd9ad47ed 100644 --- a/keyboards/p3d/synapse/keyboard.json +++ b/keyboards/p3d/synapse/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": false + } + }, "matrix_pins": { "cols": ["F0", "D4", "F5", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "B6"], "rows": ["E6", "B0", "F4", "F1"] diff --git a/keyboards/p3d/tw40/config.h b/keyboards/p3d/tw40/config.h deleted file mode 100644 index 99549d9efa1..00000000000 --- a/keyboards/p3d/tw40/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2020 KnoblesseOblige - -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 . -*/ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE - -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/p3d/tw40/keyboard.json b/keyboards/p3d/tw40/keyboard.json index 356b610b2a5..459e187533d 100644 --- a/keyboards/p3d/tw40/keyboard.json +++ b/keyboards/p3d/tw40/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["B0", "D5", "D3", "D2"] diff --git a/keyboards/panc40/config.h b/keyboards/panc40/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/panc40/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/panc40/keyboard.json b/keyboards/panc40/keyboard.json index c1867903f9a..fe98da7f2e8 100644 --- a/keyboards/panc40/keyboard.json +++ b/keyboards/panc40/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D0", "D1"], "rows": ["F0", "F1", "F4", "F5"] diff --git a/keyboards/papercranekeyboards/gerald65/config.h b/keyboards/papercranekeyboards/gerald65/config.h deleted file mode 100644 index 7848476216d..00000000000 --- a/keyboards/papercranekeyboards/gerald65/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2021 PaperCraneKeyboards (@PaperCraneKeyboards) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/papercranekeyboards/gerald65/keyboard.json b/keyboards/papercranekeyboards/gerald65/keyboard.json index 1d2c8d40ae2..255727d508c 100644 --- a/keyboards/papercranekeyboards/gerald65/keyboard.json +++ b/keyboards/papercranekeyboards/gerald65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "D7", "D4", "D3", "D2", "D1", "D0", "B6", "C6", "C7"], "rows": ["B7", "D6", "E6", "B4", "B5"] diff --git a/keyboards/parallel/parallel_65/hotswap/config.h b/keyboards/parallel/parallel_65/hotswap/config.h deleted file mode 100644 index 4dfd5e1d021..00000000000 --- a/keyboards/parallel/parallel_65/hotswap/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Matthew Dias - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/parallel/parallel_65/hotswap/keyboard.json b/keyboards/parallel/parallel_65/hotswap/keyboard.json index 1f59cd5734c..8b1e31191f9 100644 --- a/keyboards/parallel/parallel_65/hotswap/keyboard.json +++ b/keyboards/parallel/parallel_65/hotswap/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["E6", "B7", "F7", "F4", "F5"] diff --git a/keyboards/parallel/parallel_65/soldered/config.h b/keyboards/parallel/parallel_65/soldered/config.h deleted file mode 100644 index 4dfd5e1d021..00000000000 --- a/keyboards/parallel/parallel_65/soldered/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Matthew Dias - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/parallel/parallel_65/soldered/keyboard.json b/keyboards/parallel/parallel_65/soldered/keyboard.json index fe87fb84449..2e8d049dbf6 100644 --- a/keyboards/parallel/parallel_65/soldered/keyboard.json +++ b/keyboards/parallel/parallel_65/soldered/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["E6", "B7", "F7", "F4", "F5"] diff --git a/keyboards/pdxkbc/config.h b/keyboards/pdxkbc/config.h deleted file mode 100644 index 2f8b6d1f5b3..00000000000 --- a/keyboards/pdxkbc/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Franklin Harding - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/pdxkbc/keyboard.json b/keyboards/pdxkbc/keyboard.json index 2585c7ab389..642adc08787 100644 --- a/keyboards/pdxkbc/keyboard.json +++ b/keyboards/pdxkbc/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "E6"], "rows": ["F7", "B6", "F4"] diff --git a/keyboards/pearlboards/atlas/config.h b/keyboards/pearlboards/atlas/config.h index 6fbdda292b5..32f04f16ead 100644 --- a/keyboards/pearlboards/atlas/config.h +++ b/keyboards/pearlboards/atlas/config.h @@ -28,9 +28,3 @@ along with this program. If not, see . /* Motor settings */ #define DRV2605L_RATED_VOLTAGE 3 #define DRV2605L_V_PEAK 5 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pearlboards/atlas/keyboard.json b/keyboards/pearlboards/atlas/keyboard.json index 714a344c33a..6886885e03b 100644 --- a/keyboards/pearlboards/atlas/keyboard.json +++ b/keyboards/pearlboards/atlas/keyboard.json @@ -21,6 +21,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "D4", "C1", "C2", "C3", "C5", "C7", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "F7"], "rows": ["D6", "E1", "C0", "C4", "E3"] diff --git a/keyboards/pearlboards/pandora/config.h b/keyboards/pearlboards/pandora/config.h deleted file mode 100644 index 7efef3364bf..00000000000 --- a/keyboards/pearlboards/pandora/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 Koobaczech - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pearlboards/pandora/keyboard.json b/keyboards/pearlboards/pandora/keyboard.json index 944e696edec..869852b58d6 100644 --- a/keyboards/pearlboards/pandora/keyboard.json +++ b/keyboards/pearlboards/pandora/keyboard.json @@ -22,6 +22,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D1", "D0", "D3", "D5", "B5", "B6", "B7", "D4", "C6", "C7", "F0", "F1", "F4", "F7"], "rows": ["B4", "D7", "D6", "B3", "B0"] diff --git a/keyboards/pearlboards/pearl/config.h b/keyboards/pearlboards/pearl/config.h index e0ed66359a6..1667a0ad29a 100644 --- a/keyboards/pearlboards/pearl/config.h +++ b/keyboards/pearlboards/pearl/config.h @@ -28,9 +28,3 @@ along with this program. If not, see . /* Motor settings */ #define DRV2605L_RATED_VOLTAGE 3 #define DRV2605L_V_PEAK 5 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pearlboards/pearl/keyboard.json b/keyboards/pearlboards/pearl/keyboard.json index 0dc6f9a7a5e..e91192475f5 100644 --- a/keyboards/pearlboards/pearl/keyboard.json +++ b/keyboards/pearlboards/pearl/keyboard.json @@ -20,6 +20,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "F1", "F4", "F5", "F6", "C7", "B6", "B5", "B4", "D7", "D6", "D4", "D5"], "rows": ["D3", "F7", "F0", "E6"] diff --git a/keyboards/pearlboards/zeus/config.h b/keyboards/pearlboards/zeus/config.h index ae2ca44ab55..2c24e86511e 100644 --- a/keyboards/pearlboards/zeus/config.h +++ b/keyboards/pearlboards/zeus/config.h @@ -32,9 +32,3 @@ along with this program. If not, see . /* Motor settings */ #define DRV2605L_RATED_VOLTAGE 2 #define DRV2605L_V_PEAK 5 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pearlboards/zeus/keyboard.json b/keyboards/pearlboards/zeus/keyboard.json index 43639179509..9a3e7ead5fa 100644 --- a/keyboards/pearlboards/zeus/keyboard.json +++ b/keyboards/pearlboards/zeus/keyboard.json @@ -21,6 +21,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F2", "F3", "F4", "F5", "F6", "F7", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C2", "C0"], "rows": ["F0", "C1", "E1", "E0", "D7", "D6"] diff --git a/keyboards/pearlboards/zeuspad/config.h b/keyboards/pearlboards/zeuspad/config.h index c012875d68c..5c7c79c433d 100644 --- a/keyboards/pearlboards/zeuspad/config.h +++ b/keyboards/pearlboards/zeuspad/config.h @@ -23,9 +23,3 @@ along with this program. If not, see . /* Audio Function */ #define AUDIO_CLICKY #define AUDIO_PIN C6 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pearlboards/zeuspad/keyboard.json b/keyboards/pearlboards/zeuspad/keyboard.json index 641840e4e55..6f67bd74b08 100644 --- a/keyboards/pearlboards/zeuspad/keyboard.json +++ b/keyboards/pearlboards/zeuspad/keyboard.json @@ -22,6 +22,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "F0", "F5", "F6"], "rows": ["D2", "D3", "D5", "F7", "F4", "F1"] diff --git a/keyboards/pegasus/config.h b/keyboards/pegasus/config.h deleted file mode 100644 index de6628cfbd8..00000000000 --- a/keyboards/pegasus/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 melonbred - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/pegasus/keyboard.json b/keyboards/pegasus/keyboard.json index d5d2172ee0d..4de1631379e 100644 --- a/keyboards/pegasus/keyboard.json +++ b/keyboards/pegasus/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5"], "rows": ["F0", "F1", "F4", "E6"] diff --git a/keyboards/phantom/config.h b/keyboards/phantom/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/phantom/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/phantom/keyboard.json b/keyboards/phantom/keyboard.json index ab794b40f09..6f2b99b2b11 100644 --- a/keyboards/phantom/keyboard.json +++ b/keyboards/phantom/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "C7", "C6", "D4", "D0", "E6", "F0", "F1", "F4", "F5", "F6", "F7", "D7", "D6", "D1", "D2", "D3"], "rows": ["B5", "B4", "B3", "B2", "B1", "B0"] diff --git a/keyboards/phoenix/config.h b/keyboards/phoenix/config.h index 92419507312..4903f19f7f1 100644 --- a/keyboards/phoenix/config.h +++ b/keyboards/phoenix/config.h @@ -23,9 +23,6 @@ #define MOUSEKEY_MAX_SPEED 7 #define MOUSEKEY_WHEEL_DELAY 0 -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SPLIT_HAND_PIN B9 #define SERIAL_USART_DRIVER SD1 #define SERIAL_USART_TX_PAL_MODE 7 diff --git a/keyboards/phoenix/keyboard.json b/keyboards/phoenix/keyboard.json index b6dd3599662..51be9790fb5 100644 --- a/keyboards/phoenix/keyboard.json +++ b/keyboards/phoenix/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": false, + "resync": true + } + }, "matrix_pins": { "cols": ["B10", "B12", "B13", "B14", "B15", "A8", "A10"], "rows": ["B1", "B0", "A7", "A6", "A5", "B7"] diff --git a/keyboards/picolab/frusta_fundamental/config.h b/keyboards/picolab/frusta_fundamental/config.h deleted file mode 100644 index 916ca10b460..00000000000 --- a/keyboards/picolab/frusta_fundamental/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 PicoLab - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/picolab/frusta_fundamental/keyboard.json b/keyboards/picolab/frusta_fundamental/keyboard.json index 6a47fb13272..56c145e03c6 100644 --- a/keyboards/picolab/frusta_fundamental/keyboard.json +++ b/keyboards/picolab/frusta_fundamental/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "B1", "B2", "B3", "B7", "D5", "D3", "D2", "D1", "D0"], "rows": ["D4", "D6", "D7", "B4", "B5"] diff --git a/keyboards/pimentoso/paddino02/rev1/config.h b/keyboards/pimentoso/paddino02/rev1/config.h deleted file mode 100755 index 5f360813239..00000000000 --- a/keyboards/pimentoso/paddino02/rev1/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pimentoso/paddino02/rev1/keyboard.json b/keyboards/pimentoso/paddino02/rev1/keyboard.json index 681cbff9261..74f11ab7ad9 100644 --- a/keyboards/pimentoso/paddino02/rev1/keyboard.json +++ b/keyboards/pimentoso/paddino02/rev1/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "B4", "B5"], "rows": ["D1", "D0", "D4"] diff --git a/keyboards/pimentoso/paddino02/rev2/left/config.h b/keyboards/pimentoso/paddino02/rev2/left/config.h deleted file mode 100755 index 5f360813239..00000000000 --- a/keyboards/pimentoso/paddino02/rev2/left/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pimentoso/paddino02/rev2/left/keyboard.json b/keyboards/pimentoso/paddino02/rev2/left/keyboard.json index 30be3a3836e..8ba456e29e1 100644 --- a/keyboards/pimentoso/paddino02/rev2/left/keyboard.json +++ b/keyboards/pimentoso/paddino02/rev2/left/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "B4", "B5"], "rows": ["D0", "D4", "D1"] diff --git a/keyboards/pimentoso/paddino02/rev2/right/config.h b/keyboards/pimentoso/paddino02/rev2/right/config.h deleted file mode 100755 index 5f360813239..00000000000 --- a/keyboards/pimentoso/paddino02/rev2/right/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pimentoso/paddino02/rev2/right/keyboard.json b/keyboards/pimentoso/paddino02/rev2/right/keyboard.json index b4021c076de..4da270119b3 100644 --- a/keyboards/pimentoso/paddino02/rev2/right/keyboard.json +++ b/keyboards/pimentoso/paddino02/rev2/right/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B2", "B3", "B1"], "rows": ["F4", "F6", "F5"] diff --git a/keyboards/pisces/config.h b/keyboards/pisces/config.h index cbdce6f83e5..c88e62a824f 100644 --- a/keyboards/pisces/config.h +++ b/keyboards/pisces/config.h @@ -22,8 +22,3 @@ #define MATRIX_MASKED #define SPLIT_USB_DETECT - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pisces/keyboard.json b/keyboards/pisces/keyboard.json index 2783f1085fd..afdddfaf4d1 100644 --- a/keyboards/pisces/keyboard.json +++ b/keyboards/pisces/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B2", "B3", "B4", "B5", "B6", "B7"], "rows": ["C4", "B0", "C7"] diff --git a/keyboards/pizzakeyboards/pizza65/config.h b/keyboards/pizzakeyboards/pizza65/config.h deleted file mode 100644 index 1500ab9b880..00000000000 --- a/keyboards/pizzakeyboards/pizza65/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2020 mmonte - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT diff --git a/keyboards/pizzakeyboards/pizza65/keyboard.json b/keyboards/pizzakeyboards/pizza65/keyboard.json index 735cae4ac3f..ee0a68dea5c 100644 --- a/keyboards/pizzakeyboards/pizza65/keyboard.json +++ b/keyboards/pizzakeyboards/pizza65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A9", "A8", "F0", "A2", "A3", "A4", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14", "A13"], "rows": ["B15", "A10", "F1", "A0", "A1"] diff --git a/keyboards/pkb65/config.h b/keyboards/pkb65/config.h deleted file mode 100644 index 7f37e401190..00000000000 --- a/keyboards/pkb65/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - -Copyright 2021 MCKeebs -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 . - - -*/ - - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pkb65/keyboard.json b/keyboards/pkb65/keyboard.json index 7aea7615650..d645d278b7e 100644 --- a/keyboards/pkb65/keyboard.json +++ b/keyboards/pkb65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5"], "rows": ["C7", "C6", "B6", "B7", "F0"] diff --git a/keyboards/planck/config.h b/keyboards/planck/config.h index 84c2fd11dcb..469d237b861 100644 --- a/keyboards/planck/config.h +++ b/keyboards/planck/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define AUDIO_VOICES #define AUDIO_PIN C6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/planck/info.json b/keyboards/planck/info.json index 3f92fa168d4..39e9b3369a5 100644 --- a/keyboards/planck/info.json +++ b/keyboards/planck/info.json @@ -1,4 +1,10 @@ { "url": "https://olkb.com/planck", - "maintainer": "jackhumbert" + "maintainer": "jackhumbert", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + } } diff --git a/keyboards/playkbtw/ca66/config.h b/keyboards/playkbtw/ca66/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/playkbtw/ca66/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/playkbtw/ca66/keyboard.json b/keyboards/playkbtw/ca66/keyboard.json index 73a2efe1d30..d94a8d6b4d7 100644 --- a/keyboards/playkbtw/ca66/keyboard.json +++ b/keyboards/playkbtw/ca66/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "F6", "B7", "E6"], "rows": ["F5", "F4", "F1", "B0", "B3"] diff --git a/keyboards/playkbtw/pk60/config.h b/keyboards/playkbtw/pk60/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/playkbtw/pk60/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/playkbtw/pk60/keyboard.json b/keyboards/playkbtw/pk60/keyboard.json index a11348d2e6c..15de711ad1c 100644 --- a/keyboards/playkbtw/pk60/keyboard.json +++ b/keyboards/playkbtw/pk60/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "F7", "B5", "B4", "D7", "D6", "B3", "B2"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/playkbtw/pk64rgb/config.h b/keyboards/playkbtw/pk64rgb/config.h index abcdafdbd00..76f02334b4d 100644 --- a/keyboards/playkbtw/pk64rgb/config.h +++ b/keyboards/playkbtw/pk64rgb/config.h @@ -19,8 +19,3 @@ #define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND #define RGB_MATRIX_LED_COUNT 64 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/playkbtw/pk64rgb/keyboard.json b/keyboards/playkbtw/pk64rgb/keyboard.json index d3a757d714b..1f200e2089f 100644 --- a/keyboards/playkbtw/pk64rgb/keyboard.json +++ b/keyboards/playkbtw/pk64rgb/keyboard.json @@ -27,6 +27,12 @@ "rgblight": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "B1", "B2", "B3", "B7"], "rows": ["D7", "D6", "D5", "D3", "D2"] diff --git a/keyboards/pluckey/config.h b/keyboards/pluckey/config.h deleted file mode 100644 index fc758dec34e..00000000000 --- a/keyboards/pluckey/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 floookay - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/pluckey/keyboard.json b/keyboards/pluckey/keyboard.json index 52e951e875c..9517bf54b48 100644 --- a/keyboards/pluckey/keyboard.json +++ b/keyboards/pluckey/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D4", "C6", "D7", "E6", "F7"], "rows": ["B4", "F5", "F6", "B6", "B5"] diff --git a/keyboards/plume/plume65/config.h b/keyboards/plume/plume65/config.h deleted file mode 100644 index 4183c7db05e..00000000000 --- a/keyboards/plume/plume65/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2020 Evy Dekkers - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/plume/plume65/keyboard.json b/keyboards/plume/plume65/keyboard.json index f0b6097a186..46f264e43e7 100644 --- a/keyboards/plume/plume65/keyboard.json +++ b/keyboards/plume/plume65/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "F7", "C7", "C6", "B6", "F0", "B5", "F1", "B4", "F4", "D7", "F5", "D6", "F6", "D4"], "rows": ["D2", "D5", "E6", "D0", "D1"] diff --git a/keyboards/plywrks/ahgase/config.h b/keyboards/plywrks/ahgase/config.h deleted file mode 100644 index 06b97ae4ab8..00000000000 --- a/keyboards/plywrks/ahgase/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 Ramon Imbao - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/plywrks/ahgase/keyboard.json b/keyboards/plywrks/ahgase/keyboard.json index b98d4f69ee9..9c1da6d5793 100644 --- a/keyboards/plywrks/ahgase/keyboard.json +++ b/keyboards/plywrks/ahgase/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D4", "D5", "B0", "B1", "D1"], "rows": ["B2", "B3", "B7", "D6", "D3", "D2"] diff --git a/keyboards/plywrks/lune/config.h b/keyboards/plywrks/lune/config.h deleted file mode 100644 index 06b97ae4ab8..00000000000 --- a/keyboards/plywrks/lune/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 Ramon Imbao - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/plywrks/lune/keyboard.json b/keyboards/plywrks/lune/keyboard.json index 9368627e981..5ec1d97c6bb 100644 --- a/keyboards/plywrks/lune/keyboard.json +++ b/keyboards/plywrks/lune/keyboard.json @@ -36,6 +36,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "D4", "D5", "D3", "D2"], "rows": ["F1", "F0", "B7", "B0", "B6", "B5", "D7", "B4", "D6"] diff --git a/keyboards/pohjolaworks/louhi/config.h b/keyboards/pohjolaworks/louhi/config.h deleted file mode 100644 index 9dbdc010503..00000000000 --- a/keyboards/pohjolaworks/louhi/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Erkki Halinen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/pohjolaworks/louhi/keyboard.json b/keyboards/pohjolaworks/louhi/keyboard.json index 7edf1535561..90d7a964336 100644 --- a/keyboards/pohjolaworks/louhi/keyboard.json +++ b/keyboards/pohjolaworks/louhi/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "B6", "F4", "F5", "F6", "F7", "B1"], "rows": ["D3", "D2", "D1", "D0", "D7", "C6", "B4", "E6"] diff --git a/keyboards/polycarbdiet/s20/config.h b/keyboards/polycarbdiet/s20/config.h deleted file mode 100644 index fcff1b29cfc..00000000000 --- a/keyboards/polycarbdiet/s20/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Muhammad Galib (polycarbdiet) - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/polycarbdiet/s20/keyboard.json b/keyboards/polycarbdiet/s20/keyboard.json index e734673ffc6..f87429b4a7a 100644 --- a/keyboards/polycarbdiet/s20/keyboard.json +++ b/keyboards/polycarbdiet/s20/keyboard.json @@ -19,6 +19,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "D4", "D6"], "rows": ["B7", "E6", "D0", "D1", "D5"] diff --git a/keyboards/pom_keyboards/tnln95/config.h b/keyboards/pom_keyboards/tnln95/config.h deleted file mode 100644 index d1b911c4c4a..00000000000 --- a/keyboards/pom_keyboards/tnln95/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2020 Nguyen Minh Hoang - -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 . -*/ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/pom_keyboards/tnln95/keyboard.json b/keyboards/pom_keyboards/tnln95/keyboard.json index 8e8de4403df..c92ac5b38f1 100644 --- a/keyboards/pom_keyboards/tnln95/keyboard.json +++ b/keyboards/pom_keyboards/tnln95/keyboard.json @@ -21,6 +21,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F1", "F0", "F6", "F7", "D0", "D1", "D2", "D3", "D5"], "rows": ["B6", "B4", "B0", "D7", "E6", "D4", "F5", "D6", "C6", "B5"] diff --git a/keyboards/portal_66/hotswap/config.h b/keyboards/portal_66/hotswap/config.h deleted file mode 100644 index 4dfd5e1d021..00000000000 --- a/keyboards/portal_66/hotswap/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Matthew Dias - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/portal_66/hotswap/keyboard.json b/keyboards/portal_66/hotswap/keyboard.json index 764d0f62053..266ca516ece 100644 --- a/keyboards/portal_66/hotswap/keyboard.json +++ b/keyboards/portal_66/hotswap/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["E6", "B7", "F7", "F4", "F5"] diff --git a/keyboards/portal_66/soldered/config.h b/keyboards/portal_66/soldered/config.h deleted file mode 100644 index 4dfd5e1d021..00000000000 --- a/keyboards/portal_66/soldered/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Matthew Dias - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/portal_66/soldered/keyboard.json b/keyboards/portal_66/soldered/keyboard.json index 0f0ac6b1844..369a6efa13b 100644 --- a/keyboards/portal_66/soldered/keyboard.json +++ b/keyboards/portal_66/soldered/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["E6", "B7", "F7", "F4", "F5"] diff --git a/keyboards/pos78/config.h b/keyboards/pos78/config.h deleted file mode 100644 index 4739dcb2ad3..00000000000 --- a/keyboards/pos78/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 smssmssms - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/pos78/keyboard.json b/keyboards/pos78/keyboard.json index b9902195e3f..0a6a8141554 100644 --- a/keyboards/pos78/keyboard.json +++ b/keyboards/pos78/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B1", "D2", "D3", "D1", "D0", "C6", "E6", "B5", "B6", "B7", "D6", "C7"], "rows": ["F0", "F1", "F4", "F5", "F6", "F7"] From c4e182b98e0b072dd97133b71b01f59f0eb07501 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 11:49:53 -0700 Subject: [PATCH 044/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: P, Part 2 (#23780) Affects: - `preonic/rev1` - `preonic/rev2` - `preonic/rev3` - `preonic/rev3_drop` - `primekb/meridian/ktr1010` - `primekb/meridian/ws2812` - `primekb/meridian_rgb` - `primekb/prime_m` - `primekb/prime_o` - `primekb/prime_r` - `projectcain/relic` - `projectcain/vault45` - `projectd/65/projectd_65_ansi` - `projectd/75/ansi` - `projectkb/alice/rev1` - `projectkb/alice/rev2` - `projectkb/signature65` - `projectkb/signature87` - `prototypist/allison` - `prototypist/allison_numpad` - `prototypist/j01` - `psuieee/pluto12` - `pteron36` - `puck` - `punk75` --- keyboards/preonic/config.h | 5 --- keyboards/preonic/rev1/keyboard.json | 6 +++ keyboards/preonic/rev2/keyboard.json | 6 +++ keyboards/preonic/rev3/keyboard.json | 6 +++ keyboards/preonic/rev3_drop/keyboard.json | 6 +++ keyboards/primekb/meridian/config.h | 5 --- keyboards/primekb/meridian/info.json | 6 +++ keyboards/primekb/meridian/ktr1010/config.h | 5 --- keyboards/primekb/meridian/ws2812/config.h | 5 --- keyboards/primekb/meridian_rgb/config.h | 23 ----------- keyboards/primekb/meridian_rgb/keyboard.json | 6 +++ keyboards/primekb/prime_m/config.h | 24 ------------ keyboards/primekb/prime_m/keyboard.json | 6 +++ keyboards/primekb/prime_o/config.h | 23 ----------- keyboards/primekb/prime_o/keyboard.json | 6 +++ keyboards/primekb/prime_r/config.h | 24 ------------ keyboards/primekb/prime_r/keyboard.json | 6 +++ keyboards/projectcain/relic/config.h | 39 ------------------- keyboards/projectcain/relic/keyboard.json | 6 +++ keyboards/projectcain/vault45/config.h | 39 ------------------- keyboards/projectcain/vault45/keyboard.json | 6 +++ .../projectd/65/projectd_65_ansi/config.h | 5 --- .../65/projectd_65_ansi/keyboard.json | 6 ++- keyboards/projectd/75/ansi/config.h | 5 --- keyboards/projectd/75/ansi/keyboard.json | 6 ++- keyboards/projectkb/alice/rev1/config.h | 5 --- keyboards/projectkb/alice/rev1/keyboard.json | 6 +++ keyboards/projectkb/alice/rev2/config.h | 5 --- keyboards/projectkb/alice/rev2/keyboard.json | 6 +++ keyboards/projectkb/signature65/config.h | 23 ----------- keyboards/projectkb/signature65/keyboard.json | 6 +++ keyboards/projectkb/signature87/config.h | 23 ----------- keyboards/projectkb/signature87/keyboard.json | 6 +++ keyboards/prototypist/allison/config.h | 39 ------------------- keyboards/prototypist/allison/keyboard.json | 6 +++ keyboards/prototypist/allison_numpad/config.h | 39 ------------------- .../prototypist/allison_numpad/keyboard.json | 6 +++ keyboards/prototypist/j01/config.h | 22 ----------- keyboards/prototypist/j01/keyboard.json | 6 +++ keyboards/psuieee/pluto12/config.h | 9 ----- keyboards/psuieee/pluto12/keyboard.json | 6 +++ keyboards/pteron36/config.h | 39 ------------------- keyboards/pteron36/keyboard.json | 6 +++ keyboards/puck/config.h | 4 -- keyboards/puck/keyboard.json | 6 +++ keyboards/punk75/config.h | 5 --- keyboards/punk75/keyboard.json | 6 +++ 47 files changed, 142 insertions(+), 417 deletions(-) delete mode 100644 keyboards/primekb/meridian_rgb/config.h delete mode 100644 keyboards/primekb/prime_m/config.h delete mode 100644 keyboards/primekb/prime_o/config.h delete mode 100644 keyboards/primekb/prime_r/config.h delete mode 100644 keyboards/projectcain/relic/config.h delete mode 100644 keyboards/projectcain/vault45/config.h delete mode 100644 keyboards/projectkb/signature65/config.h delete mode 100644 keyboards/projectkb/signature87/config.h delete mode 100644 keyboards/prototypist/allison/config.h delete mode 100644 keyboards/prototypist/allison_numpad/config.h delete mode 100644 keyboards/prototypist/j01/config.h delete mode 100644 keyboards/psuieee/pluto12/config.h delete mode 100644 keyboards/pteron36/config.h delete mode 100644 keyboards/puck/config.h diff --git a/keyboards/preonic/config.h b/keyboards/preonic/config.h index 5301e26ab31..c47b9e7ed42 100644 --- a/keyboards/preonic/config.h +++ b/keyboards/preonic/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define AUDIO_VOICES #define AUDIO_PIN C6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/preonic/rev1/keyboard.json b/keyboards/preonic/rev1/keyboard.json index aa43fe2c474..648dafe5760 100644 --- a/keyboards/preonic/rev1/keyboard.json +++ b/keyboards/preonic/rev1/keyboard.json @@ -19,6 +19,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F0", "B0", "C7", "F4", "F5", "F6", "F7", "D4", "D6", "B4", "D7"], "rows": ["D2", "D5", "B5", "B6", "D3"] diff --git a/keyboards/preonic/rev2/keyboard.json b/keyboards/preonic/rev2/keyboard.json index 3a6cab1e17b..d24c3db42f6 100644 --- a/keyboards/preonic/rev2/keyboard.json +++ b/keyboards/preonic/rev2/keyboard.json @@ -19,6 +19,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F0", "B0", "C7", "F4", "F5", "F6", "F7", "D4", "D6", "B4", "D7"], "rows": ["D2", "D5", "B5", "B6", "D3"] diff --git a/keyboards/preonic/rev3/keyboard.json b/keyboards/preonic/rev3/keyboard.json index 472229c0da7..96cebf9ea01 100644 --- a/keyboards/preonic/rev3/keyboard.json +++ b/keyboards/preonic/rev3/keyboard.json @@ -40,6 +40,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B2", "B1", "A7", "B0"], "rows": ["A10", "A9", "A8", "B15", "C13", "C14", "C15", "A2", "A3", "A6"] diff --git a/keyboards/preonic/rev3_drop/keyboard.json b/keyboards/preonic/rev3_drop/keyboard.json index f1cf1dfec1f..22374fa5f75 100644 --- a/keyboards/preonic/rev3_drop/keyboard.json +++ b/keyboards/preonic/rev3_drop/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "led_count": 9, "animations": { diff --git a/keyboards/primekb/meridian/config.h b/keyboards/primekb/meridian/config.h index 8593536eecd..c6cf02fc4cf 100644 --- a/keyboards/primekb/meridian/config.h +++ b/keyboards/primekb/meridian/config.h @@ -21,8 +21,3 @@ along with this program. If not, see . #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PIN B13 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/primekb/meridian/info.json b/keyboards/primekb/meridian/info.json index 1e624892119..38358a3a7b3 100644 --- a/keyboards/primekb/meridian/info.json +++ b/keyboards/primekb/meridian/info.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B11", "B10", "B2", "B1", "B0", "A7", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15"], "rows": ["A6", "A5", "A4", "A3", "A2"] diff --git a/keyboards/primekb/meridian/ktr1010/config.h b/keyboards/primekb/meridian/ktr1010/config.h index 3da9ff72c42..ba56ce49847 100644 --- a/keyboards/primekb/meridian/ktr1010/config.h +++ b/keyboards/primekb/meridian/ktr1010/config.h @@ -24,8 +24,3 @@ along with this program. If not, see . #define WS2812_T0L 975 #define WS2812_T1L 350 #define WS2812_RES_US 100 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/primekb/meridian/ws2812/config.h b/keyboards/primekb/meridian/ws2812/config.h index 8593536eecd..c6cf02fc4cf 100644 --- a/keyboards/primekb/meridian/ws2812/config.h +++ b/keyboards/primekb/meridian/ws2812/config.h @@ -21,8 +21,3 @@ along with this program. If not, see . #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PIN B13 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/primekb/meridian_rgb/config.h b/keyboards/primekb/meridian_rgb/config.h deleted file mode 100644 index 66857199142..00000000000 --- a/keyboards/primekb/meridian_rgb/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 Holten Campbell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/primekb/meridian_rgb/keyboard.json b/keyboards/primekb/meridian_rgb/keyboard.json index 49491b769ad..145d4eeb8bc 100644 --- a/keyboards/primekb/meridian_rgb/keyboard.json +++ b/keyboards/primekb/meridian_rgb/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "C6", "B6", "B5", "B4", "F7", "D4", "B7", "B3", "D5", "D3", "D2", "D1", "D0"], "rows": ["E6", "F0", "F6", "D7", "D6"] diff --git a/keyboards/primekb/prime_m/config.h b/keyboards/primekb/prime_m/config.h deleted file mode 100644 index 053bc6236a7..00000000000 --- a/keyboards/primekb/prime_m/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2018 Jumail Mundekkat -Copyright 2020 Holten Campbell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/primekb/prime_m/keyboard.json b/keyboards/primekb/prime_m/keyboard.json index b63b96bf702..eb06dcdb7ea 100644 --- a/keyboards/primekb/prime_m/keyboard.json +++ b/keyboards/primekb/prime_m/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "C7", "C6", "D2", "D1", "D0"], "rows": ["C5", "B5", "B2", "D5", "D3"] diff --git a/keyboards/primekb/prime_o/config.h b/keyboards/primekb/prime_o/config.h deleted file mode 100644 index 9c9e5754a93..00000000000 --- a/keyboards/primekb/prime_o/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2018 Jumail Mundekkat - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/primekb/prime_o/keyboard.json b/keyboards/primekb/prime_o/keyboard.json index f3b427e148a..04da8ab1343 100644 --- a/keyboards/primekb/prime_o/keyboard.json +++ b/keyboards/primekb/prime_o/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B5", "C7", "C6", "D2", "D1", "D0", "C2"], "rows": ["D4", "D6", "B1", "C5", "B4", "B3", "C4", "B2", "B0", "D5"] diff --git a/keyboards/primekb/prime_r/config.h b/keyboards/primekb/prime_r/config.h deleted file mode 100644 index 2baa495f2c4..00000000000 --- a/keyboards/primekb/prime_r/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2018 Andrew Heaston - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/primekb/prime_r/keyboard.json b/keyboards/primekb/prime_r/keyboard.json index a45db2351a6..b2a7ecec7a8 100644 --- a/keyboards/primekb/prime_r/keyboard.json +++ b/keyboards/primekb/prime_r/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "C7", "C6", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["D1", "D0", "B7", "B3", "B2"] diff --git a/keyboards/projectcain/relic/config.h b/keyboards/projectcain/relic/config.h deleted file mode 100644 index 199375c173f..00000000000 --- a/keyboards/projectcain/relic/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 projectcain - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/projectcain/relic/keyboard.json b/keyboards/projectcain/relic/keyboard.json index 9ebfbf72d45..f9df6770d1f 100644 --- a/keyboards/projectcain/relic/keyboard.json +++ b/keyboards/projectcain/relic/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D5", "B0", "F0", "F1", "F4", "F5", "F6", "C7", "C6", "B4"], "rows": ["D7", "B2", "B6", "B5"] diff --git a/keyboards/projectcain/vault45/config.h b/keyboards/projectcain/vault45/config.h deleted file mode 100644 index 199375c173f..00000000000 --- a/keyboards/projectcain/vault45/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 projectcain - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/projectcain/vault45/keyboard.json b/keyboards/projectcain/vault45/keyboard.json index d09c8be7641..2ab3e010e71 100644 --- a/keyboards/projectcain/vault45/keyboard.json +++ b/keyboards/projectcain/vault45/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "D5", "D4", "D6", "D7", "B4", "D3", "F0", "F1", "F4", "F5", "F6", "F7"], "rows": ["C6", "B6", "B5", "C7"] diff --git a/keyboards/projectd/65/projectd_65_ansi/config.h b/keyboards/projectd/65/projectd_65_ansi/config.h index d7f9a52afe4..c8da5c42a7c 100644 --- a/keyboards/projectd/65/projectd_65_ansi/config.h +++ b/keyboards/projectd/65/projectd_65_ansi/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* External spi flash */ #define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14 diff --git a/keyboards/projectd/65/projectd_65_ansi/keyboard.json b/keyboards/projectd/65/projectd_65_ansi/keyboard.json index 9cfe8ffb5d3..5d75389e2a0 100644 --- a/keyboards/projectd/65/projectd_65_ansi/keyboard.json +++ b/keyboards/projectd/65/projectd_65_ansi/keyboard.json @@ -32,7 +32,11 @@ }, "processor": "WB32FQ95", "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgb_matrix": { "animations": { diff --git a/keyboards/projectd/75/ansi/config.h b/keyboards/projectd/75/ansi/config.h index a42dd6c1eee..282e20a8e2b 100644 --- a/keyboards/projectd/75/ansi/config.h +++ b/keyboards/projectd/75/ansi/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* External spi flash */ #define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14 diff --git a/keyboards/projectd/75/ansi/keyboard.json b/keyboards/projectd/75/ansi/keyboard.json index 2e57c353282..2296c639373 100644 --- a/keyboards/projectd/75/ansi/keyboard.json +++ b/keyboards/projectd/75/ansi/keyboard.json @@ -32,7 +32,11 @@ }, "processor": "WB32FQ95", "qmk": { - "tap_keycode_delay": 10 + "tap_keycode_delay": 10, + "locking": { + "enabled": true, + "resync": true + } }, "rgb_matrix": { "animations": { diff --git a/keyboards/projectkb/alice/rev1/config.h b/keyboards/projectkb/alice/rev1/config.h index 829976ebd6a..66d3b75731b 100644 --- a/keyboards/projectkb/alice/rev1/config.h +++ b/keyboards/projectkb/alice/rev1/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/projectkb/alice/rev1/keyboard.json b/keyboards/projectkb/alice/rev1/keyboard.json index 1e97746ee88..7e957d7ff41 100644 --- a/keyboards/projectkb/alice/rev1/keyboard.json +++ b/keyboards/projectkb/alice/rev1/keyboard.json @@ -9,6 +9,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "led_count": 14, "animations": { diff --git a/keyboards/projectkb/alice/rev2/config.h b/keyboards/projectkb/alice/rev2/config.h index 6e250bb14ef..3e786c18056 100644 --- a/keyboards/projectkb/alice/rev2/config.h +++ b/keyboards/projectkb/alice/rev2/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 #define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0 diff --git a/keyboards/projectkb/alice/rev2/keyboard.json b/keyboards/projectkb/alice/rev2/keyboard.json index 0ed3b88ea2a..639fc268779 100644 --- a/keyboards/projectkb/alice/rev2/keyboard.json +++ b/keyboards/projectkb/alice/rev2/keyboard.json @@ -9,6 +9,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "led_count": 14, "animations": { diff --git a/keyboards/projectkb/signature65/config.h b/keyboards/projectkb/signature65/config.h deleted file mode 100644 index 4d31d4b095f..00000000000 --- a/keyboards/projectkb/signature65/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/projectkb/signature65/keyboard.json b/keyboards/projectkb/signature65/keyboard.json index 7f865fbaaf3..b72ff9926c0 100644 --- a/keyboards/projectkb/signature65/keyboard.json +++ b/keyboards/projectkb/signature65/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B14", "A2", "B9", "B8", "B5", "B4", "B3", "A15", "B11", "B10", "B2", "A3", "B1", "B0", "A4", "A5"], "rows": ["A8", "A9", "B13", "A6", "A7"] diff --git a/keyboards/projectkb/signature87/config.h b/keyboards/projectkb/signature87/config.h deleted file mode 100644 index 4d31d4b095f..00000000000 --- a/keyboards/projectkb/signature87/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 MechMerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/projectkb/signature87/keyboard.json b/keyboards/projectkb/signature87/keyboard.json index 2f8666aeb9e..2b18bf45721 100644 --- a/keyboards/projectkb/signature87/keyboard.json +++ b/keyboards/projectkb/signature87/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A7", "A6", "A5", "A4", "A3", "A2", "A15", "B3", "B4"], "rows": ["B13", "B12", "A8", "B15", "A10", "A9", "B9", "B8", "B1", "B0", "B10", "B2"] diff --git a/keyboards/prototypist/allison/config.h b/keyboards/prototypist/allison/config.h deleted file mode 100644 index 9765ad6b1a8..00000000000 --- a/keyboards/prototypist/allison/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Yiancar - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/prototypist/allison/keyboard.json b/keyboards/prototypist/allison/keyboard.json index 0261b204bb0..ea80e853bf2 100644 --- a/keyboards/prototypist/allison/keyboard.json +++ b/keyboards/prototypist/allison/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "F1", "F0"], "rows": ["D2", "D1", "D0", "B1", "B2", "D3"] diff --git a/keyboards/prototypist/allison_numpad/config.h b/keyboards/prototypist/allison_numpad/config.h deleted file mode 100644 index 9765ad6b1a8..00000000000 --- a/keyboards/prototypist/allison_numpad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Yiancar - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/prototypist/allison_numpad/keyboard.json b/keyboards/prototypist/allison_numpad/keyboard.json index 974573fc64e..a995cd6bbf2 100644 --- a/keyboards/prototypist/allison_numpad/keyboard.json +++ b/keyboards/prototypist/allison_numpad/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F1", "F0"], "rows": ["F4", "C7", "C6", "B6", "B5", "B4"] diff --git a/keyboards/prototypist/j01/config.h b/keyboards/prototypist/j01/config.h deleted file mode 100644 index 1d22c074e20..00000000000 --- a/keyboards/prototypist/j01/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Shaun Mitchell (Flex) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/prototypist/j01/keyboard.json b/keyboards/prototypist/j01/keyboard.json index d6e24dc9e59..68296e1b776 100644 --- a/keyboards/prototypist/j01/keyboard.json +++ b/keyboards/prototypist/j01/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "F0", "F7", "F1", "F4", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], "rows": ["B3", "B2", "B0", "F6", "F5"] diff --git a/keyboards/psuieee/pluto12/config.h b/keyboards/psuieee/pluto12/config.h deleted file mode 100644 index cabf72507ff..00000000000 --- a/keyboards/psuieee/pluto12/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2021-22 Willem McGloughlin (wymcg) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/psuieee/pluto12/keyboard.json b/keyboards/psuieee/pluto12/keyboard.json index 6dcb3d33ac7..382d9fe030e 100644 --- a/keyboards/psuieee/pluto12/keyboard.json +++ b/keyboards/psuieee/pluto12/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "B4", "B5"], "rows": ["D0", "D4", "C6"] diff --git a/keyboards/pteron36/config.h b/keyboards/pteron36/config.h deleted file mode 100644 index 72b4ea84e71..00000000000 --- a/keyboards/pteron36/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Harshit Goel - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/pteron36/keyboard.json b/keyboards/pteron36/keyboard.json index f4bab524196..abd94d599af 100644 --- a/keyboards/pteron36/keyboard.json +++ b/keyboards/pteron36/keyboard.json @@ -19,6 +19,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "B2"], "rows": ["E6", "D7", "B4", "B5"] diff --git a/keyboards/puck/config.h b/keyboards/puck/config.h deleted file mode 100644 index 2f38776326e..00000000000 --- a/keyboards/puck/config.h +++ /dev/null @@ -1,4 +0,0 @@ -#pragma once - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/puck/keyboard.json b/keyboards/puck/keyboard.json index 1ee73dc4375..4ec04d72bea 100644 --- a/keyboards/puck/keyboard.json +++ b/keyboards/puck/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": false, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "D7", "D6"], "rows": ["D2", "D3", "C6", "C7"] diff --git a/keyboards/punk75/config.h b/keyboards/punk75/config.h index b314f6dae97..321865330c7 100644 --- a/keyboards/punk75/config.h +++ b/keyboards/punk75/config.h @@ -18,8 +18,3 @@ along with this program. If not, see . #pragma once #define LED A0 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/punk75/keyboard.json b/keyboards/punk75/keyboard.json index 5c1bd94a5ed..dd084a147c4 100644 --- a/keyboards/punk75/keyboard.json +++ b/keyboards/punk75/keyboard.json @@ -15,6 +15,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C2", "C3", "C6", "C5", "C4", "A7", "A6", "A5", "A4", "B4", "A3", "B3", "A2", "B2", "A1"], "rows": ["D6", "D5", "C1", "C0", "D7"] From 013b51a90428342f26d4f0909120c1ae7c2135f8 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 11:55:38 -0700 Subject: [PATCH 045/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: W, Part 1 (#23788) Affects: - `waldo` - `walletburner/cajal` - `walletburner/neuron` - `wavtype/foundation` - `wavtype/p01_ultra` - `weirdo/geminate60` - `weirdo/kelowna/rgb64` - `weirdo/ls_60` - `weirdo/naiping/np64` - `weirdo/naiping/nphhkb` - `weirdo/naiping/npminila` - `weirdo/tiger910` - `wekey/polaris` - `westfoxtrot/aanzee` - `westfoxtrot/cyclops` - `westfoxtrot/cypher/rev1` - `westfoxtrot/cypher/rev5` - `westfoxtrot/prophet` - `westm/westm9` - `westm/westm68` --- keyboards/waldo/config.h | 39 ------------------- keyboards/waldo/keyboard.json | 6 +++ keyboards/walletburner/cajal/config.h | 23 ----------- keyboards/walletburner/cajal/keyboard.json | 6 +++ keyboards/walletburner/neuron/config.h | 7 ---- keyboards/walletburner/neuron/keyboard.json | 6 +++ keyboards/wavtype/foundation/config.h | 25 ------------ keyboards/wavtype/foundation/keyboard.json | 6 +++ keyboards/wavtype/p01_ultra/config.h | 39 ------------------- keyboards/wavtype/p01_ultra/keyboard.json | 6 +++ keyboards/weirdo/geminate60/config.h | 25 ------------ keyboards/weirdo/geminate60/keyboard.json | 6 +++ keyboards/weirdo/kelowna/rgb64/config.h | 25 ------------ keyboards/weirdo/kelowna/rgb64/keyboard.json | 6 +++ keyboards/weirdo/ls_60/config.h | 25 ------------ keyboards/weirdo/ls_60/keyboard.json | 6 +++ keyboards/weirdo/naiping/np64/config.h | 25 ------------ keyboards/weirdo/naiping/np64/keyboard.json | 6 +++ keyboards/weirdo/naiping/nphhkb/config.h | 25 ------------ keyboards/weirdo/naiping/nphhkb/keyboard.json | 6 +++ keyboards/weirdo/naiping/npminila/config.h | 25 ------------ .../weirdo/naiping/npminila/keyboard.json | 6 +++ keyboards/weirdo/tiger910/config.h | 23 ----------- keyboards/weirdo/tiger910/keyboard.json | 6 +++ keyboards/wekey/polaris/config.h | 39 ------------------- keyboards/wekey/polaris/keyboard.json | 6 +++ keyboards/westfoxtrot/aanzee/config.h | 5 --- keyboards/westfoxtrot/aanzee/keyboard.json | 6 +++ keyboards/westfoxtrot/cyclops/config.h | 39 ------------------- keyboards/westfoxtrot/cyclops/keyboard.json | 6 +++ keyboards/westfoxtrot/cypher/rev1/config.h | 5 --- .../westfoxtrot/cypher/rev1/keyboard.json | 6 +++ keyboards/westfoxtrot/cypher/rev5/config.h | 5 --- .../westfoxtrot/cypher/rev5/keyboard.json | 6 +++ keyboards/westfoxtrot/prophet/config.h | 5 --- keyboards/westfoxtrot/prophet/keyboard.json | 6 +++ keyboards/westm/westm68/config.h | 5 --- keyboards/westm/westm68/info.json | 6 +++ keyboards/westm/westm9/config.h | 5 --- keyboards/westm/westm9/info.json | 6 +++ 40 files changed, 120 insertions(+), 414 deletions(-) delete mode 100644 keyboards/waldo/config.h delete mode 100644 keyboards/walletburner/cajal/config.h delete mode 100644 keyboards/walletburner/neuron/config.h delete mode 100644 keyboards/wavtype/foundation/config.h delete mode 100644 keyboards/wavtype/p01_ultra/config.h delete mode 100644 keyboards/weirdo/geminate60/config.h delete mode 100644 keyboards/weirdo/kelowna/rgb64/config.h delete mode 100644 keyboards/weirdo/ls_60/config.h delete mode 100644 keyboards/weirdo/naiping/np64/config.h delete mode 100644 keyboards/weirdo/naiping/nphhkb/config.h delete mode 100644 keyboards/weirdo/naiping/npminila/config.h delete mode 100644 keyboards/weirdo/tiger910/config.h delete mode 100644 keyboards/wekey/polaris/config.h delete mode 100644 keyboards/westfoxtrot/cyclops/config.h diff --git a/keyboards/waldo/config.h b/keyboards/waldo/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/waldo/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/waldo/keyboard.json b/keyboards/waldo/keyboard.json index 204f4bf7072..b3076d79ccc 100644 --- a/keyboards/waldo/keyboard.json +++ b/keyboards/waldo/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "D5", "D3", "D2", "B3", "B2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "B1"], "rows": ["F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/walletburner/cajal/config.h b/keyboards/walletburner/cajal/config.h deleted file mode 100644 index af1fe3ab43e..00000000000 --- a/keyboards/walletburner/cajal/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Worldspawn - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/walletburner/cajal/keyboard.json b/keyboards/walletburner/cajal/keyboard.json index 2419c6c7f42..e11c62ec876 100644 --- a/keyboards/walletburner/cajal/keyboard.json +++ b/keyboards/walletburner/cajal/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F1", "F0", "E6", "B0", "B1", "B2", "B3", "D0", "D1", "D2", "D3", "B4", "F6"], "rows": ["D4", "D5", "C7", "C6"] diff --git a/keyboards/walletburner/neuron/config.h b/keyboards/walletburner/neuron/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/walletburner/neuron/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/walletburner/neuron/keyboard.json b/keyboards/walletburner/neuron/keyboard.json index 7637f5435a9..1d9ce893878 100644 --- a/keyboards/walletburner/neuron/keyboard.json +++ b/keyboards/walletburner/neuron/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F7", "F6", "F4", "F1", "E6", "D6", "D2", "B4", "D7", "B6", "D5"], "rows": ["D0", "D1", "D3", "F5"] diff --git a/keyboards/wavtype/foundation/config.h b/keyboards/wavtype/foundation/config.h deleted file mode 100644 index 4376386c3e6..00000000000 --- a/keyboards/wavtype/foundation/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2022 wavtype (@wavtype) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/wavtype/foundation/keyboard.json b/keyboards/wavtype/foundation/keyboard.json index f13d2268064..4b1dd1d3483 100644 --- a/keyboards/wavtype/foundation/keyboard.json +++ b/keyboards/wavtype/foundation/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "D2", "D1", "D0", "D3", "D5", "D4", "B7", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["B3", "B2", "B1", "F0", "F1"] diff --git a/keyboards/wavtype/p01_ultra/config.h b/keyboards/wavtype/p01_ultra/config.h deleted file mode 100644 index 3da58bc5d2d..00000000000 --- a/keyboards/wavtype/p01_ultra/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 wavtype - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/wavtype/p01_ultra/keyboard.json b/keyboards/wavtype/p01_ultra/keyboard.json index 7bfc2424686..c44f0bd3bd8 100644 --- a/keyboards/wavtype/p01_ultra/keyboard.json +++ b/keyboards/wavtype/p01_ultra/keyboard.json @@ -37,6 +37,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "B3", "B2", "B1", "B0", "B7", "D0", "D1", "D2", "D3", "D5"], "rows": ["B4", "D7", "D6", "B5", "B6", "D4"] diff --git a/keyboards/weirdo/geminate60/config.h b/keyboards/weirdo/geminate60/config.h deleted file mode 100644 index 5e0e8b40a9f..00000000000 --- a/keyboards/weirdo/geminate60/config.h +++ /dev/null @@ -1,25 +0,0 @@ - /* Copyright 2020 Weirdo - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - - diff --git a/keyboards/weirdo/geminate60/keyboard.json b/keyboards/weirdo/geminate60/keyboard.json index 4240d3a075e..828630725a0 100644 --- a/keyboards/weirdo/geminate60/keyboard.json +++ b/keyboards/weirdo/geminate60/keyboard.json @@ -23,6 +23,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A8", "B14", "B13", "B12", "B1", "B0", "A7", "A1", "A15", "B3", "B4", "B5", "B6", "B7", "B8"], "rows": ["A9", "A10", "B10", "B11", "B15"] diff --git a/keyboards/weirdo/kelowna/rgb64/config.h b/keyboards/weirdo/kelowna/rgb64/config.h deleted file mode 100644 index 5c0ed9cf612..00000000000 --- a/keyboards/weirdo/kelowna/rgb64/config.h +++ /dev/null @@ -1,25 +0,0 @@ - /* Copyright 2021 Weirdo - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - - diff --git a/keyboards/weirdo/kelowna/rgb64/keyboard.json b/keyboards/weirdo/kelowna/rgb64/keyboard.json index 6e86f8cc478..4822f979fe6 100644 --- a/keyboards/weirdo/kelowna/rgb64/keyboard.json +++ b/keyboards/weirdo/kelowna/rgb64/keyboard.json @@ -23,6 +23,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A3", "A4", "A5", "A7", "B0", "B1", "B10", "B15", "A8", "A9", "A10", "B7", "B6", "B5", "B4"], "rows": ["B12", "B13", "B14", "C11", "A1"] diff --git a/keyboards/weirdo/ls_60/config.h b/keyboards/weirdo/ls_60/config.h deleted file mode 100644 index 5c0ed9cf612..00000000000 --- a/keyboards/weirdo/ls_60/config.h +++ /dev/null @@ -1,25 +0,0 @@ - /* Copyright 2021 Weirdo - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - - diff --git a/keyboards/weirdo/ls_60/keyboard.json b/keyboards/weirdo/ls_60/keyboard.json index eeaf5a23a59..7ab1f2f6cb5 100644 --- a/keyboards/weirdo/ls_60/keyboard.json +++ b/keyboards/weirdo/ls_60/keyboard.json @@ -23,6 +23,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A8", "B14", "B13", "B12", "B1", "B0", "A7", "A1", "A15", "B3", "B4", "B5", "B6", "B7", "B8"], "rows": ["A9", "A10", "B10", "B11", "B15"] diff --git a/keyboards/weirdo/naiping/np64/config.h b/keyboards/weirdo/naiping/np64/config.h deleted file mode 100644 index 2c7e4c037b5..00000000000 --- a/keyboards/weirdo/naiping/np64/config.h +++ /dev/null @@ -1,25 +0,0 @@ - /* Copyright 2021 Weirdo - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - - diff --git a/keyboards/weirdo/naiping/np64/keyboard.json b/keyboards/weirdo/naiping/np64/keyboard.json index ddbbfecc3c1..f620fb11696 100644 --- a/keyboards/weirdo/naiping/np64/keyboard.json +++ b/keyboards/weirdo/naiping/np64/keyboard.json @@ -23,6 +23,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1"], "rows": ["E6", "B7", "F7", "F4", "F5"] diff --git a/keyboards/weirdo/naiping/nphhkb/config.h b/keyboards/weirdo/naiping/nphhkb/config.h deleted file mode 100644 index 5c0ed9cf612..00000000000 --- a/keyboards/weirdo/naiping/nphhkb/config.h +++ /dev/null @@ -1,25 +0,0 @@ - /* Copyright 2021 Weirdo - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - - diff --git a/keyboards/weirdo/naiping/nphhkb/keyboard.json b/keyboards/weirdo/naiping/nphhkb/keyboard.json index 13fe77f4764..e89854f02e4 100644 --- a/keyboards/weirdo/naiping/nphhkb/keyboard.json +++ b/keyboards/weirdo/naiping/nphhkb/keyboard.json @@ -23,6 +23,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A4", "C15", "C14", "A5", "A6", "A15", "B1", "B10", "B12", "B13", "B14", "B15", "B6", "A8", "B5"], "rows": ["B7", "B8", "B9", "C13", "B4"] diff --git a/keyboards/weirdo/naiping/npminila/config.h b/keyboards/weirdo/naiping/npminila/config.h deleted file mode 100644 index 5c0ed9cf612..00000000000 --- a/keyboards/weirdo/naiping/npminila/config.h +++ /dev/null @@ -1,25 +0,0 @@ - /* Copyright 2021 Weirdo - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - - diff --git a/keyboards/weirdo/naiping/npminila/keyboard.json b/keyboards/weirdo/naiping/npminila/keyboard.json index 37c297a3fc1..b4048a52cf0 100644 --- a/keyboards/weirdo/naiping/npminila/keyboard.json +++ b/keyboards/weirdo/naiping/npminila/keyboard.json @@ -23,6 +23,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2"], "rows": ["E6", "B7", "F7", "F4", "F5"] diff --git a/keyboards/weirdo/tiger910/config.h b/keyboards/weirdo/tiger910/config.h deleted file mode 100644 index e484ffe49ed..00000000000 --- a/keyboards/weirdo/tiger910/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Weirdo - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/weirdo/tiger910/keyboard.json b/keyboards/weirdo/tiger910/keyboard.json index 90f4208b8d7..ca24561ebdd 100644 --- a/keyboards/weirdo/tiger910/keyboard.json +++ b/keyboards/weirdo/tiger910/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B6", "B7", "C0", "C1", "C2", "C3", "C4", "C5", "C6", "C7", "D0", "D1", "D2", "D3", "D4"], "rows": ["B0", "B1", "B2", "B3", "B4"] diff --git a/keyboards/wekey/polaris/config.h b/keyboards/wekey/polaris/config.h deleted file mode 100644 index c86ead57bd8..00000000000 --- a/keyboards/wekey/polaris/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 @wekey - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/wekey/polaris/keyboard.json b/keyboards/wekey/polaris/keyboard.json index 356e3f951ee..29d79b6a0bc 100644 --- a/keyboards/wekey/polaris/keyboard.json +++ b/keyboards/wekey/polaris/keyboard.json @@ -19,6 +19,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B4", "B5", "B6", "D0", "D1", "D2", "D3"], "rows": ["F4", "F1", "F0", "B7", "F7", "D5", "C6", "C7", "F5", "F6"] diff --git a/keyboards/westfoxtrot/aanzee/config.h b/keyboards/westfoxtrot/aanzee/config.h index cd1f84bc1fc..5c058cddf1d 100644 --- a/keyboards/westfoxtrot/aanzee/config.h +++ b/keyboards/westfoxtrot/aanzee/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/westfoxtrot/aanzee/keyboard.json b/keyboards/westfoxtrot/aanzee/keyboard.json index 898fe9e62b3..3a15014c4e8 100644 --- a/keyboards/westfoxtrot/aanzee/keyboard.json +++ b/keyboards/westfoxtrot/aanzee/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D1", "D0", "D3", "D5", "C7", "C6", "B6", "B5", "F0", "F1", "F4", "F5", "F6", "F7", "B0"], "rows": ["B4", "D7", "D6", "D4", "B3"] diff --git a/keyboards/westfoxtrot/cyclops/config.h b/keyboards/westfoxtrot/cyclops/config.h deleted file mode 100644 index d1de752f793..00000000000 --- a/keyboards/westfoxtrot/cyclops/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 westfoxtrot - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/westfoxtrot/cyclops/keyboard.json b/keyboards/westfoxtrot/cyclops/keyboard.json index 7bfcd859b03..a74926511d2 100644 --- a/keyboards/westfoxtrot/cyclops/keyboard.json +++ b/keyboards/westfoxtrot/cyclops/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D5", "D6", "B6", "B1", "B2", "B3", "C6", "C7", "F7", "F6", "F4", "F5", "F1"], "rows": ["D1", "D0", "D7", "B4", "F0"] diff --git a/keyboards/westfoxtrot/cypher/rev1/config.h b/keyboards/westfoxtrot/cypher/rev1/config.h index cd1f84bc1fc..5c058cddf1d 100644 --- a/keyboards/westfoxtrot/cypher/rev1/config.h +++ b/keyboards/westfoxtrot/cypher/rev1/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/westfoxtrot/cypher/rev1/keyboard.json b/keyboards/westfoxtrot/cypher/rev1/keyboard.json index 46c0dd298ef..09294d169c2 100644 --- a/keyboards/westfoxtrot/cypher/rev1/keyboard.json +++ b/keyboards/westfoxtrot/cypher/rev1/keyboard.json @@ -15,6 +15,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "E6", "F0"], "rows": ["B0", "B1", "B2", "B3", "B4", "F6", "B6", "B7", "C6", "C7"] diff --git a/keyboards/westfoxtrot/cypher/rev5/config.h b/keyboards/westfoxtrot/cypher/rev5/config.h index cd1f84bc1fc..5c058cddf1d 100644 --- a/keyboards/westfoxtrot/cypher/rev5/config.h +++ b/keyboards/westfoxtrot/cypher/rev5/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/westfoxtrot/cypher/rev5/keyboard.json b/keyboards/westfoxtrot/cypher/rev5/keyboard.json index 74938c45635..fbb487534d5 100644 --- a/keyboards/westfoxtrot/cypher/rev5/keyboard.json +++ b/keyboards/westfoxtrot/cypher/rev5/keyboard.json @@ -16,6 +16,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D7", "B4", "B5", "B6", "B7", "B3", "B2", "B1", "F0"], "rows": ["B0", "F1", "F5", "F6", "F7", "D1", "F4", "D4", "C6", "C7"] diff --git a/keyboards/westfoxtrot/prophet/config.h b/keyboards/westfoxtrot/prophet/config.h index d7d992f50ec..95fb682e171 100644 --- a/keyboards/westfoxtrot/prophet/config.h +++ b/keyboards/westfoxtrot/prophet/config.h @@ -1,8 +1,3 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define SLEEP_LED_GPT_DRIVER GPTD1 diff --git a/keyboards/westfoxtrot/prophet/keyboard.json b/keyboards/westfoxtrot/prophet/keyboard.json index 1d6067a4e2b..049f5cd7fc5 100644 --- a/keyboards/westfoxtrot/prophet/keyboard.json +++ b/keyboards/westfoxtrot/prophet/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A6", "A7", "B0", "A9", "A8", "A14", "A15", "B3", "B4", "B5", "B8", "B7", "B6", "B9"], "rows": ["C13", "B2", "B1", "A4", "A3"] diff --git a/keyboards/westm/westm68/config.h b/keyboards/westm/westm68/config.h index 9a425a91a89..83153c1241a 100644 --- a/keyboards/westm/westm68/config.h +++ b/keyboards/westm/westm68/config.h @@ -19,8 +19,3 @@ /* Ensure we jump to bootloader if the QK_BOOT keycode was pressed */ #define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/westm/westm68/info.json b/keyboards/westm/westm68/info.json index 85dd61bf86b..d863273ced3 100644 --- a/keyboards/westm/westm68/info.json +++ b/keyboards/westm/westm68/info.json @@ -16,6 +16,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B14", "B13", "B12", "B11", "B10", "B2", "B1", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"], "rows": ["A13", "B9", "F1", "A10", "A9"] diff --git a/keyboards/westm/westm9/config.h b/keyboards/westm/westm9/config.h index 9a425a91a89..83153c1241a 100644 --- a/keyboards/westm/westm9/config.h +++ b/keyboards/westm/westm9/config.h @@ -19,8 +19,3 @@ /* Ensure we jump to bootloader if the QK_BOOT keycode was pressed */ #define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/westm/westm9/info.json b/keyboards/westm/westm9/info.json index 43f12b17add..85b93b47a7d 100644 --- a/keyboards/westm/westm9/info.json +++ b/keyboards/westm/westm9/info.json @@ -15,6 +15,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B8", "B5", "B4"], "rows": ["A14", "A15", "B3"] From 634ebc9763b7320beb669085188aaa7abbed615d Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 12:30:25 -0700 Subject: [PATCH 046/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: Q-R (#23781) Affects: - `qpockets/space_space/rev1` - `qpockets/space_space/rev2` - `quad_h/lb75` - `quantrik/kyuu` - `qwertlekeys/calice` - `rabbit/rabbit68` - `rainkeebs/delilah` - `rainkeebs/rainkeeb` - `rainkeebs/yasui` - `rart/rart45` - `rart/rart4x4` - `rart/rart60` - `rart/rart67` - `rart/rart67m` - `rart/rart75` - `rart/rart75m` - `rart/rartand` - `rart/rartland` - `rart/rartlice` - `rart/rartlite` - `rart/rartpad` - `rate/pistachio/rev1` - `rate/pistachio/rev2` - `rate/pistachio_mp` - `rate/pistachio_pro` - `redox/rev1` - `redscarf_iiplus/verb` - `redscarf_iiplus/verc` - `redscarf_iiplus/verd` - `retro_75` - `reversestudio/decadepad` - `reviung/reviung5` - `reviung/reviung33` - `reviung/reviung34` - `reviung/reviung39` - `reviung/reviung41` - `reviung/reviung53` - `rgbkb/zen/rev1` - `rgbkb/zen/rev2` - `rmi_kb/aelith` - `rmi_kb/chevron` - `rmi_kb/herringbone/pro` - `rmi_kb/herringbone/v1` - `rmi_kb/squishy65` - `rmi_kb/squishyfrl` - `rmi_kb/squishytkl` - `rmi_kb/wete/v1` - `rmi_kb/wete/v2` - `rocketboard_16` - `rominronin/katana60/rev1` - `rominronin/katana60/rev2` - `roseslite` - `rotr` - `rpiguy9907/southpaw66` - `rubi` - `rura66/rev1` - `ryanbaekr/rb1` - `ryanbaekr/rb18` - `ryanbaekr/rb69` - `ryanbaekr/rb86` - `ryanbaekr/rb87` - `ryanskidmore/rskeys100` - `ryloo_studio/m0110` --- keyboards/qpockets/space_space/rev1/config.h | 19 --------- .../qpockets/space_space/rev1/keyboard.json | 6 +++ keyboards/qpockets/space_space/rev2/config.h | 19 --------- .../qpockets/space_space/rev2/keyboard.json | 6 +++ keyboards/quad_h/lb75/config.h | 39 ------------------ keyboards/quad_h/lb75/keyboard.json | 6 +++ keyboards/quantrik/kyuu/config.h | 39 ------------------ keyboards/quantrik/kyuu/keyboard.json | 6 +++ keyboards/qwertlekeys/calice/config.h | 22 ---------- keyboards/qwertlekeys/calice/keyboard.json | 6 +++ keyboards/rabbit/rabbit68/config.h | 39 ------------------ keyboards/rabbit/rabbit68/keyboard.json | 6 +++ keyboards/rainkeebs/delilah/config.h | 22 ---------- keyboards/rainkeebs/delilah/keyboard.json | 6 +++ keyboards/rainkeebs/rainkeeb/config.h | 22 ---------- keyboards/rainkeebs/rainkeeb/keyboard.json | 6 +++ keyboards/rainkeebs/yasui/config.h | 22 ---------- keyboards/rainkeebs/yasui/keyboard.json | 6 +++ keyboards/rart/rart45/config.h | 21 ---------- keyboards/rart/rart45/keyboard.json | 6 +++ keyboards/rart/rart4x4/config.h | 24 ----------- keyboards/rart/rart4x4/keyboard.json | 6 +++ keyboards/rart/rart60/config.h | 35 ---------------- keyboards/rart/rart60/keyboard.json | 6 +++ keyboards/rart/rart67/config.h | 24 ----------- keyboards/rart/rart67/keyboard.json | 6 +++ keyboards/rart/rart67m/config.h | 5 --- keyboards/rart/rart67m/keyboard.json | 6 +++ keyboards/rart/rart75/config.h | 24 ----------- keyboards/rart/rart75/keyboard.json | 6 +++ keyboards/rart/rart75m/config.h | 5 --- keyboards/rart/rart75m/keyboard.json | 6 +++ keyboards/rart/rartand/config.h | 21 ---------- keyboards/rart/rartand/keyboard.json | 6 +++ keyboards/rart/rartland/config.h | 5 --- keyboards/rart/rartland/keyboard.json | 6 +++ keyboards/rart/rartlice/config.h | 5 --- keyboards/rart/rartlice/keyboard.json | 6 +++ keyboards/rart/rartlite/config.h | 24 ----------- keyboards/rart/rartlite/keyboard.json | 6 +++ keyboards/rart/rartpad/config.h | 24 ----------- keyboards/rart/rartpad/keyboard.json | 6 +++ keyboards/rate/pistachio/rev1/config.h | 5 --- keyboards/rate/pistachio/rev1/keyboard.json | 6 +++ keyboards/rate/pistachio/rev2/config.h | 5 --- keyboards/rate/pistachio/rev2/keyboard.json | 6 +++ keyboards/rate/pistachio_mp/config.h | 5 --- keyboards/rate/pistachio_mp/keyboard.json | 6 +++ keyboards/rate/pistachio_pro/config.h | 5 --- keyboards/rate/pistachio_pro/keyboard.json | 6 +++ keyboards/redox/rev1/config.h | 39 ------------------ keyboards/redox/rev1/info.json | 6 +++ keyboards/redscarf_iiplus/verb/config.h | 5 --- keyboards/redscarf_iiplus/verb/keyboard.json | 6 +++ keyboards/redscarf_iiplus/verc/config.h | 5 --- keyboards/redscarf_iiplus/verc/keyboard.json | 6 +++ keyboards/redscarf_iiplus/verd/config.h | 5 --- keyboards/redscarf_iiplus/verd/keyboard.json | 6 +++ keyboards/retro_75/config.h | 39 ------------------ keyboards/retro_75/keyboard.json | 6 +++ keyboards/reversestudio/decadepad/config.h | 40 ------------------- .../reversestudio/decadepad/keyboard.json | 6 +++ keyboards/reviung/reviung33/config.h | 39 ------------------ keyboards/reviung/reviung33/keyboard.json | 6 +++ keyboards/reviung/reviung34/config.h | 39 ------------------ keyboards/reviung/reviung34/keyboard.json | 6 +++ keyboards/reviung/reviung39/config.h | 39 ------------------ keyboards/reviung/reviung39/keyboard.json | 6 +++ keyboards/reviung/reviung41/config.h | 39 ------------------ keyboards/reviung/reviung41/keyboard.json | 6 +++ keyboards/reviung/reviung5/config.h | 39 ------------------ keyboards/reviung/reviung5/keyboard.json | 6 +++ keyboards/reviung/reviung53/config.h | 25 ------------ keyboards/reviung/reviung53/keyboard.json | 6 +++ keyboards/rgbkb/zen/rev1/config.h | 39 ------------------ keyboards/rgbkb/zen/rev1/keyboard.json | 6 +++ keyboards/rgbkb/zen/rev2/config.h | 5 --- keyboards/rgbkb/zen/rev2/keyboard.json | 6 +++ keyboards/rmi_kb/aelith/config.h | 39 ------------------ keyboards/rmi_kb/aelith/keyboard.json | 6 +++ keyboards/rmi_kb/chevron/config.h | 5 --- keyboards/rmi_kb/chevron/keyboard.json | 6 +++ keyboards/rmi_kb/herringbone/pro/config.h | 5 --- .../rmi_kb/herringbone/pro/keyboard.json | 6 +++ keyboards/rmi_kb/herringbone/v1/config.h | 5 --- keyboards/rmi_kb/herringbone/v1/keyboard.json | 6 +++ keyboards/rmi_kb/squishy65/config.h | 39 ------------------ keyboards/rmi_kb/squishy65/keyboard.json | 6 +++ keyboards/rmi_kb/squishyfrl/config.h | 5 --- keyboards/rmi_kb/squishyfrl/keyboard.json | 6 +++ keyboards/rmi_kb/squishytkl/config.h | 5 --- keyboards/rmi_kb/squishytkl/keyboard.json | 6 +++ keyboards/rmi_kb/wete/v1/config.h | 5 --- keyboards/rmi_kb/wete/v1/keyboard.json | 6 +++ keyboards/rmi_kb/wete/v2/config.h | 5 --- keyboards/rmi_kb/wete/v2/keyboard.json | 6 +++ keyboards/rocketboard_16/config.h | 3 -- keyboards/rocketboard_16/keyboard.json | 6 ++- keyboards/rominronin/katana60/rev1/config.h | 39 ------------------ .../rominronin/katana60/rev1/keyboard.json | 6 +++ keyboards/rominronin/katana60/rev2/config.h | 39 ------------------ .../rominronin/katana60/rev2/keyboard.json | 6 +++ keyboards/roseslite/config.h | 39 ------------------ keyboards/roseslite/keyboard.json | 6 +++ keyboards/rotr/config.h | 7 ---- keyboards/rotr/keyboard.json | 6 +++ keyboards/rpiguy9907/southpaw66/config.h | 22 ---------- keyboards/rpiguy9907/southpaw66/keyboard.json | 6 +++ keyboards/rubi/config.h | 5 --- keyboards/rubi/keyboard.json | 6 +++ keyboards/rura66/rev1/config.h | 5 --- keyboards/rura66/rev1/keyboard.json | 6 +++ keyboards/ryanbaekr/rb1/config.h | 23 ----------- keyboards/ryanbaekr/rb1/keyboard.json | 6 +++ keyboards/ryanbaekr/rb18/config.h | 23 ----------- keyboards/ryanbaekr/rb18/keyboard.json | 6 +++ keyboards/ryanbaekr/rb69/config.h | 23 ----------- keyboards/ryanbaekr/rb69/keyboard.json | 6 +++ keyboards/ryanbaekr/rb86/config.h | 23 ----------- keyboards/ryanbaekr/rb86/keyboard.json | 6 +++ keyboards/ryanbaekr/rb87/config.h | 23 ----------- keyboards/ryanbaekr/rb87/keyboard.json | 6 +++ keyboards/ryanskidmore/rskeys100/config.h | 5 --- .../ryanskidmore/rskeys100/keyboard.json | 6 +++ keyboards/ryloo_studio/m0110/config.h | 24 ----------- keyboards/ryloo_studio/m0110/keyboard.json | 6 +++ 126 files changed, 377 insertions(+), 1294 deletions(-) delete mode 100644 keyboards/qpockets/space_space/rev1/config.h delete mode 100644 keyboards/qpockets/space_space/rev2/config.h delete mode 100644 keyboards/quad_h/lb75/config.h delete mode 100644 keyboards/quantrik/kyuu/config.h delete mode 100644 keyboards/qwertlekeys/calice/config.h delete mode 100644 keyboards/rabbit/rabbit68/config.h delete mode 100644 keyboards/rainkeebs/delilah/config.h delete mode 100644 keyboards/rainkeebs/rainkeeb/config.h delete mode 100644 keyboards/rainkeebs/yasui/config.h delete mode 100644 keyboards/rart/rart45/config.h delete mode 100644 keyboards/rart/rart4x4/config.h delete mode 100644 keyboards/rart/rart60/config.h delete mode 100644 keyboards/rart/rart67/config.h delete mode 100644 keyboards/rart/rart75/config.h delete mode 100644 keyboards/rart/rartand/config.h delete mode 100644 keyboards/rart/rartlite/config.h delete mode 100644 keyboards/rart/rartpad/config.h delete mode 100644 keyboards/redox/rev1/config.h delete mode 100644 keyboards/retro_75/config.h delete mode 100644 keyboards/reversestudio/decadepad/config.h delete mode 100644 keyboards/reviung/reviung33/config.h delete mode 100755 keyboards/reviung/reviung34/config.h delete mode 100644 keyboards/reviung/reviung39/config.h delete mode 100644 keyboards/reviung/reviung41/config.h delete mode 100644 keyboards/reviung/reviung5/config.h delete mode 100644 keyboards/reviung/reviung53/config.h delete mode 100644 keyboards/rgbkb/zen/rev1/config.h delete mode 100644 keyboards/rmi_kb/aelith/config.h delete mode 100644 keyboards/rmi_kb/squishy65/config.h delete mode 100644 keyboards/rominronin/katana60/rev1/config.h delete mode 100644 keyboards/rominronin/katana60/rev2/config.h delete mode 100644 keyboards/roseslite/config.h delete mode 100644 keyboards/rotr/config.h delete mode 100644 keyboards/rpiguy9907/southpaw66/config.h delete mode 100644 keyboards/ryanbaekr/rb1/config.h delete mode 100644 keyboards/ryanbaekr/rb18/config.h delete mode 100644 keyboards/ryanbaekr/rb69/config.h delete mode 100644 keyboards/ryanbaekr/rb86/config.h delete mode 100644 keyboards/ryanbaekr/rb87/config.h delete mode 100755 keyboards/ryloo_studio/m0110/config.h diff --git a/keyboards/qpockets/space_space/rev1/config.h b/keyboards/qpockets/space_space/rev1/config.h deleted file mode 100644 index 3caf7fdbcbe..00000000000 --- a/keyboards/qpockets/space_space/rev1/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2020 qpockets - * - * 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 . - */ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE diff --git a/keyboards/qpockets/space_space/rev1/keyboard.json b/keyboards/qpockets/space_space/rev1/keyboard.json index 70adf4997c2..cc8cda49a8f 100644 --- a/keyboards/qpockets/space_space/rev1/keyboard.json +++ b/keyboards/qpockets/space_space/rev1/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": false + } + }, "matrix_pins": { "cols": ["D4", "B4", "B5", "B6", "C6", "F7", "F6", "F0", "B0", "E6", "B1"], "rows": ["F1", "F4", "F5", "C7"] diff --git a/keyboards/qpockets/space_space/rev2/config.h b/keyboards/qpockets/space_space/rev2/config.h deleted file mode 100644 index 9f86bdabd72..00000000000 --- a/keyboards/qpockets/space_space/rev2/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2021 qpockets - * - * 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 . - */ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE diff --git a/keyboards/qpockets/space_space/rev2/keyboard.json b/keyboards/qpockets/space_space/rev2/keyboard.json index b57e16db68b..e2f24032a30 100644 --- a/keyboards/qpockets/space_space/rev2/keyboard.json +++ b/keyboards/qpockets/space_space/rev2/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": false + } + }, "matrix_pins": { "cols": ["C6", "F6", "F1", "F4", "F5", "E6", "D6", "B2", "B5", "D3", "D2"], "rows": ["B1", "B0", "D5", "B6"] diff --git a/keyboards/quad_h/lb75/config.h b/keyboards/quad_h/lb75/config.h deleted file mode 100644 index 50001e978cc..00000000000 --- a/keyboards/quad_h/lb75/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Ryota Goto - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/quad_h/lb75/keyboard.json b/keyboards/quad_h/lb75/keyboard.json index 98bcde60ccb..0a51d4f47f4 100644 --- a/keyboards/quad_h/lb75/keyboard.json +++ b/keyboards/quad_h/lb75/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D1", "D0", "F1", "F4", "F5", "F6", "F7"], "rows": ["D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "D3", "D5", "F0", "E6"] diff --git a/keyboards/quantrik/kyuu/config.h b/keyboards/quantrik/kyuu/config.h deleted file mode 100644 index 44c3746d29d..00000000000 --- a/keyboards/quantrik/kyuu/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 mechmerlin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/quantrik/kyuu/keyboard.json b/keyboards/quantrik/kyuu/keyboard.json index 6e3fe5b74cd..5827f08d21c 100644 --- a/keyboards/quantrik/kyuu/keyboard.json +++ b/keyboards/quantrik/kyuu/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F4", "F5", "F6", "F7", "C7", "C6", "F0", "B7", "D0", "D5", "D3", "D2", "D1", "B3"], "rows": ["B6", "B5", "B4", "D7", "D6"] diff --git a/keyboards/qwertlekeys/calice/config.h b/keyboards/qwertlekeys/calice/config.h deleted file mode 100644 index a15f35c4443..00000000000 --- a/keyboards/qwertlekeys/calice/config.h +++ /dev/null @@ -1,22 +0,0 @@ - /* Copyright 2021 Joah Nelson (Jels) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/qwertlekeys/calice/keyboard.json b/keyboards/qwertlekeys/calice/keyboard.json index 3355400ccc6..676ca7a4330 100644 --- a/keyboards/qwertlekeys/calice/keyboard.json +++ b/keyboards/qwertlekeys/calice/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "B4", "F7", "F6", "D1", "B7", "B3", "B2"], "rows": ["F0", "F1", "F5", "F4", "C6", "C7", "B5", "B6", "D4", "D2", "D5", "D3"] diff --git a/keyboards/rabbit/rabbit68/config.h b/keyboards/rabbit/rabbit68/config.h deleted file mode 100644 index a7cfc593aef..00000000000 --- a/keyboards/rabbit/rabbit68/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Kai Eckert - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/rabbit/rabbit68/keyboard.json b/keyboards/rabbit/rabbit68/keyboard.json index 31389e06383..ce35a7d3c29 100644 --- a/keyboards/rabbit/rabbit68/keyboard.json +++ b/keyboards/rabbit/rabbit68/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D1", "B4", "D2", "B5", "F7", "F6", "F5", "F4", "F1", "F0", "B0", "B1", "B2"], "rows": ["B6", "D7", "D0", "B3", "B7"] diff --git a/keyboards/rainkeebs/delilah/config.h b/keyboards/rainkeebs/delilah/config.h deleted file mode 100644 index 30e2a8bf276..00000000000 --- a/keyboards/rainkeebs/delilah/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Regan Palmer - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rainkeebs/delilah/keyboard.json b/keyboards/rainkeebs/delilah/keyboard.json index 9abdfc583dc..bd3d142741c 100644 --- a/keyboards/rainkeebs/delilah/keyboard.json +++ b/keyboards/rainkeebs/delilah/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "F6", "F5", "F4", "F0", "E6", "D5", "D3", "D4", "D6", "D7", "B4"], "rows": ["B5", "B6", "C6", "C7"] diff --git a/keyboards/rainkeebs/rainkeeb/config.h b/keyboards/rainkeebs/rainkeeb/config.h deleted file mode 100644 index f01175abd85..00000000000 --- a/keyboards/rainkeebs/rainkeeb/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Regan Palmer - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rainkeebs/rainkeeb/keyboard.json b/keyboards/rainkeebs/rainkeeb/keyboard.json index 742db864bd5..a291d61d3b0 100644 --- a/keyboards/rainkeebs/rainkeeb/keyboard.json +++ b/keyboards/rainkeebs/rainkeeb/keyboard.json @@ -19,6 +19,12 @@ "oled": true, "wpm": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3"], "rows": ["D3", "D2", "D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/rainkeebs/yasui/config.h b/keyboards/rainkeebs/yasui/config.h deleted file mode 100644 index 30e2a8bf276..00000000000 --- a/keyboards/rainkeebs/yasui/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Regan Palmer - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rainkeebs/yasui/keyboard.json b/keyboards/rainkeebs/yasui/keyboard.json index 926b1084dd3..43bbc46fae5 100644 --- a/keyboards/rainkeebs/yasui/keyboard.json +++ b/keyboards/rainkeebs/yasui/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "B4", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], "rows": ["D4", "C6", "B5", "E6"] diff --git a/keyboards/rart/rart45/config.h b/keyboards/rart/rart45/config.h deleted file mode 100644 index 2039f083f1f..00000000000 --- a/keyboards/rart/rart45/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 Alabahuy - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rart/rart45/keyboard.json b/keyboards/rart/rart45/keyboard.json index fdc92b689b2..42a5d054d7e 100644 --- a/keyboards/rart/rart45/keyboard.json +++ b/keyboards/rart/rart45/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D4", "B2", "B5", "B4", "B3"], "rows": ["D1", "C2", "C1", "B1", "D0", "C3", "C0", "D7", "B0"] diff --git a/keyboards/rart/rart4x4/config.h b/keyboards/rart/rart4x4/config.h deleted file mode 100644 index 42556799eb8..00000000000 --- a/keyboards/rart/rart4x4/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 Alabahuy - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rart/rart4x4/keyboard.json b/keyboards/rart/rart4x4/keyboard.json index 8cd6ea5bd26..c38e2103de9 100644 --- a/keyboards/rart/rart4x4/keyboard.json +++ b/keyboards/rart/rart4x4/keyboard.json @@ -40,6 +40,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F7", "B2", "B5", "B4"], "rows": ["F4", "B6", "B3", "B1"] diff --git a/keyboards/rart/rart60/config.h b/keyboards/rart/rart60/config.h deleted file mode 100644 index 410fd3bd95e..00000000000 --- a/keyboards/rart/rart60/config.h +++ /dev/null @@ -1,35 +0,0 @@ -/* -Copyright 2022 Alabahuy - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* 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 diff --git a/keyboards/rart/rart60/keyboard.json b/keyboards/rart/rart60/keyboard.json index 3d0f6c8b550..d5cc7bf0b42 100644 --- a/keyboards/rart/rart60/keyboard.json +++ b/keyboards/rart/rart60/keyboard.json @@ -12,6 +12,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["GP24", "GP14", "GP13", "GP12", "GP11", "GP10", "GP9", "GP8", "GP6", "GP5", "GP4", "GP3", "GP1", "GP0", "GP18", "GP22"], "rows": ["GP23", "GP25", "GP15", "GP16", "GP17"] diff --git a/keyboards/rart/rart67/config.h b/keyboards/rart/rart67/config.h deleted file mode 100644 index 42556799eb8..00000000000 --- a/keyboards/rart/rart67/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 Alabahuy - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rart/rart67/keyboard.json b/keyboards/rart/rart67/keyboard.json index 6a86ec74cad..66515617437 100644 --- a/keyboards/rart/rart67/keyboard.json +++ b/keyboards/rart/rart67/keyboard.json @@ -39,6 +39,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2", "B1", "D5", "D4", "D6", "D7", "B4", "B5", "F0", "F7", "F6", "F5", "F4", "F1", "E6"], "rows": ["D0", "D1", "D2", "D3", "B0"] diff --git a/keyboards/rart/rart67m/config.h b/keyboards/rart/rart67m/config.h index 3541d6d9ca6..2306296c70b 100644 --- a/keyboards/rart/rart67m/config.h +++ b/keyboards/rart/rart67m/config.h @@ -16,9 +16,4 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define OLED_TIMEOUT 600000 diff --git a/keyboards/rart/rart67m/keyboard.json b/keyboards/rart/rart67m/keyboard.json index 66f28e45119..0d6cfdeed1a 100644 --- a/keyboards/rart/rart67m/keyboard.json +++ b/keyboards/rart/rart67m/keyboard.json @@ -18,6 +18,12 @@ "oled": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "C6", "F7", "D7", "B1", "E6", "B6"], "rows": ["D3", "D2", "D4", "F6", "B3", "B4", "B2", "B5"] diff --git a/keyboards/rart/rart75/config.h b/keyboards/rart/rart75/config.h deleted file mode 100644 index 42556799eb8..00000000000 --- a/keyboards/rart/rart75/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 Alabahuy - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rart/rart75/keyboard.json b/keyboards/rart/rart75/keyboard.json index 2d0c1e4001d..beb8a7cc392 100644 --- a/keyboards/rart/rart75/keyboard.json +++ b/keyboards/rart/rart75/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "D3", "D2", "D1", "C6", "B6", "B5", "B4", "D7", "D6", "B3", "B1", "F7", "F5", "B2", "B7"], "rows": ["F1", "F4", "F6", "C7", "D4", "D0"] diff --git a/keyboards/rart/rart75m/config.h b/keyboards/rart/rart75m/config.h index 3541d6d9ca6..2306296c70b 100644 --- a/keyboards/rart/rart75m/config.h +++ b/keyboards/rart/rart75m/config.h @@ -16,9 +16,4 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define OLED_TIMEOUT 600000 diff --git a/keyboards/rart/rart75m/keyboard.json b/keyboards/rart/rart75m/keyboard.json index 18e8432e70e..925e8dff5e7 100644 --- a/keyboards/rart/rart75m/keyboard.json +++ b/keyboards/rart/rart75m/keyboard.json @@ -19,6 +19,12 @@ "oled": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "D4", "F0", "C6", "F1", "D7", "F4", "E6", "F5", "B4", "F6", "B5", "F7", "B6"], "rows": ["C7", "B3", "B1", "B0", "D3", "D2"] diff --git a/keyboards/rart/rartand/config.h b/keyboards/rart/rartand/config.h deleted file mode 100644 index 5ae5dc84a3a..00000000000 --- a/keyboards/rart/rartand/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021 Alabahuy - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rart/rartand/keyboard.json b/keyboards/rart/rartand/keyboard.json index 50d94a1cc7d..330beca3e10 100644 --- a/keyboards/rart/rartand/keyboard.json +++ b/keyboards/rart/rartand/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "B4", "B5", "B3", "D4", "D6"], "rows": ["C3", "B2", "C2", "B1", "C1", "D7", "C0", "B0"] diff --git a/keyboards/rart/rartland/config.h b/keyboards/rart/rartland/config.h index 79c27d81717..288dfbc3eb8 100644 --- a/keyboards/rart/rartland/config.h +++ b/keyboards/rart/rartland/config.h @@ -16,9 +16,4 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define OLED_TIMEOUT 10000 diff --git a/keyboards/rart/rartland/keyboard.json b/keyboards/rart/rartland/keyboard.json index ea037b78b60..158cbb86398 100644 --- a/keyboards/rart/rartland/keyboard.json +++ b/keyboards/rart/rartland/keyboard.json @@ -17,6 +17,12 @@ "oled": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "A1", "B1", "A2", "B2", "A3", "B3", "A4", "C7", "C6", "D0", "C5", "D1", "C4"], "rows": ["B4", "A7", "A5", "A6", "C3"] diff --git a/keyboards/rart/rartlice/config.h b/keyboards/rart/rartlice/config.h index 116f8d544bb..88c452be393 100644 --- a/keyboards/rart/rartlice/config.h +++ b/keyboards/rart/rartlice/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WS2812_SPI_DRIVER SPID2 /* diff --git a/keyboards/rart/rartlice/keyboard.json b/keyboards/rart/rartlice/keyboard.json index b22ca30c558..c55919e6a68 100644 --- a/keyboards/rart/rartlice/keyboard.json +++ b/keyboards/rart/rartlice/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B12", "B8", "B5", "B4", "B3", "B11", "B10", "B1", "B0", "A7", "A6", "A5", "A3", "A4", "A1"], "rows": ["B13", "A15", "B9", "A2", "A0"] diff --git a/keyboards/rart/rartlite/config.h b/keyboards/rart/rartlite/config.h deleted file mode 100644 index d2937838f6f..00000000000 --- a/keyboards/rart/rartlite/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 Alabahuy - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rart/rartlite/keyboard.json b/keyboards/rart/rartlite/keyboard.json index e88507161df..f542654db77 100644 --- a/keyboards/rart/rartlite/keyboard.json +++ b/keyboards/rart/rartlite/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B3", "F7", "D3"], "rows": ["F4", "D2", "B2", "B4", "B6", "B5", "D0", "D1"] diff --git a/keyboards/rart/rartpad/config.h b/keyboards/rart/rartpad/config.h deleted file mode 100644 index 42556799eb8..00000000000 --- a/keyboards/rart/rartpad/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 Alabahuy - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rart/rartpad/keyboard.json b/keyboards/rart/rartpad/keyboard.json index 06be8a5f691..ac9b2a38f1c 100644 --- a/keyboards/rart/rartpad/keyboard.json +++ b/keyboards/rart/rartpad/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "D1", "D2", "D3"], "rows": ["B6", "F6", "D0", "D4", "C6"] diff --git a/keyboards/rate/pistachio/rev1/config.h b/keyboards/rate/pistachio/rev1/config.h index cad548df8e6..097551d6661 100644 --- a/keyboards/rate/pistachio/rev1/config.h +++ b/keyboards/rate/pistachio/rev1/config.h @@ -26,8 +26,3 @@ along with this program. If not, see . #else #define USB_MAX_POWER_CONSUMPTION 100 #endif - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rate/pistachio/rev1/keyboard.json b/keyboards/rate/pistachio/rev1/keyboard.json index 2a74e00c0d2..cabbbc08973 100644 --- a/keyboards/rate/pistachio/rev1/keyboard.json +++ b/keyboards/rate/pistachio/rev1/keyboard.json @@ -7,6 +7,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "hue_steps": 10, "led_count": 2, diff --git a/keyboards/rate/pistachio/rev2/config.h b/keyboards/rate/pistachio/rev2/config.h index 8a12d3d9ee7..02ddb2130e6 100644 --- a/keyboards/rate/pistachio/rev2/config.h +++ b/keyboards/rate/pistachio/rev2/config.h @@ -30,8 +30,3 @@ along with this program. If not, see . #else #define USB_MAX_POWER_CONSUMPTION 100 #endif - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rate/pistachio/rev2/keyboard.json b/keyboards/rate/pistachio/rev2/keyboard.json index 72ad90478e5..ac1866dc754 100644 --- a/keyboards/rate/pistachio/rev2/keyboard.json +++ b/keyboards/rate/pistachio/rev2/keyboard.json @@ -7,6 +7,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "ws2812": { "pin": "D2" }, diff --git a/keyboards/rate/pistachio_mp/config.h b/keyboards/rate/pistachio_mp/config.h index eaa46500a1f..7d109b347a8 100644 --- a/keyboards/rate/pistachio_mp/config.h +++ b/keyboards/rate/pistachio_mp/config.h @@ -22,8 +22,3 @@ along with this program. If not, see . #else #define USB_MAX_POWER_CONSUMPTION 100 #endif - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rate/pistachio_mp/keyboard.json b/keyboards/rate/pistachio_mp/keyboard.json index 613f7bb8fa5..dadb936942c 100644 --- a/keyboards/rate/pistachio_mp/keyboard.json +++ b/keyboards/rate/pistachio_mp/keyboard.json @@ -26,6 +26,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B1", "F7", "F6"], "rows": ["B4", "E6", "D7", "C6", "D4"] diff --git a/keyboards/rate/pistachio_pro/config.h b/keyboards/rate/pistachio_pro/config.h index b79e4dcbe3e..309d51f79c0 100644 --- a/keyboards/rate/pistachio_pro/config.h +++ b/keyboards/rate/pistachio_pro/config.h @@ -24,11 +24,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { D4, C6, D7, B3, B4, B5 } #define MATRIX_COL_PINS { E6, F0, F1, F4, F5, F6, F7, B6, D6 } -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/rate/pistachio_pro/keyboard.json b/keyboards/rate/pistachio_pro/keyboard.json index 4dc439c4721..a52a3486ae1 100644 --- a/keyboards/rate/pistachio_pro/keyboard.json +++ b/keyboards/rate/pistachio_pro/keyboard.json @@ -16,6 +16,12 @@ "nkro": false, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "encoder": { "rotary": [ {"pin_a": "D2", "pin_b": "D3"} diff --git a/keyboards/redox/rev1/config.h b/keyboards/redox/rev1/config.h deleted file mode 100644 index fdda27552df..00000000000 --- a/keyboards/redox/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Mattia Dal Ben - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/redox/rev1/info.json b/keyboards/redox/rev1/info.json index 446020179c2..ee9786d8382 100644 --- a/keyboards/redox/rev1/info.json +++ b/keyboards/redox/rev1/info.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "split":{ "enabled": true }, diff --git a/keyboards/redscarf_iiplus/verb/config.h b/keyboards/redscarf_iiplus/verb/config.h index c92878c147e..256a0cc4f59 100755 --- a/keyboards/redscarf_iiplus/verb/config.h +++ b/keyboards/redscarf_iiplus/verb/config.h @@ -39,11 +39,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/redscarf_iiplus/verb/keyboard.json b/keyboards/redscarf_iiplus/verb/keyboard.json index a027fe1003f..99d763e39ac 100644 --- a/keyboards/redscarf_iiplus/verb/keyboard.json +++ b/keyboards/redscarf_iiplus/verb/keyboard.json @@ -15,6 +15,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "B7" }, diff --git a/keyboards/redscarf_iiplus/verc/config.h b/keyboards/redscarf_iiplus/verc/config.h index c92878c147e..256a0cc4f59 100755 --- a/keyboards/redscarf_iiplus/verc/config.h +++ b/keyboards/redscarf_iiplus/verc/config.h @@ -39,11 +39,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/redscarf_iiplus/verc/keyboard.json b/keyboards/redscarf_iiplus/verc/keyboard.json index c7f5314e7a8..a6defe4851b 100644 --- a/keyboards/redscarf_iiplus/verc/keyboard.json +++ b/keyboards/redscarf_iiplus/verc/keyboard.json @@ -15,6 +15,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "B7" }, diff --git a/keyboards/redscarf_iiplus/verd/config.h b/keyboards/redscarf_iiplus/verd/config.h index 08ba1b48d88..6a3f64268ea 100644 --- a/keyboards/redscarf_iiplus/verd/config.h +++ b/keyboards/redscarf_iiplus/verd/config.h @@ -38,11 +38,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/redscarf_iiplus/verd/keyboard.json b/keyboards/redscarf_iiplus/verd/keyboard.json index ef8dba4a4e1..d0ba57553a1 100644 --- a/keyboards/redscarf_iiplus/verd/keyboard.json +++ b/keyboards/redscarf_iiplus/verd/keyboard.json @@ -15,6 +15,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "B7" }, diff --git a/keyboards/retro_75/config.h b/keyboards/retro_75/config.h deleted file mode 100644 index 1464cc5f23d..00000000000 --- a/keyboards/retro_75/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 zvecr - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/retro_75/keyboard.json b/keyboards/retro_75/keyboard.json index 513379ff5f2..e077be2ee96 100644 --- a/keyboards/retro_75/keyboard.json +++ b/keyboards/retro_75/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A5", "A4", "A3", "F0", "C15", "C14", "C13", "A6", "B11", "B10", "B2", "B1", "B0", "A7", "A14", "A15"], "rows": ["A8", "B15", "B14", "B13", "B12", "B8"] diff --git a/keyboards/reversestudio/decadepad/config.h b/keyboards/reversestudio/decadepad/config.h deleted file mode 100644 index 69c6b57a35b..00000000000 --- a/keyboards/reversestudio/decadepad/config.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/reversestudio/decadepad/keyboard.json b/keyboards/reversestudio/decadepad/keyboard.json index d9dc9f52533..601122aa37b 100644 --- a/keyboards/reversestudio/decadepad/keyboard.json +++ b/keyboards/reversestudio/decadepad/keyboard.json @@ -38,6 +38,12 @@ "rgblight": true, "unicode": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3"], "rows": ["F0", "F1", "F4", "F5", "F6", "F7"] diff --git a/keyboards/reviung/reviung33/config.h b/keyboards/reviung/reviung33/config.h deleted file mode 100644 index a0711511018..00000000000 --- a/keyboards/reviung/reviung33/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 gtips - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/reviung/reviung33/keyboard.json b/keyboards/reviung/reviung33/keyboard.json index ff0078f1970..0b5ceb4e546 100644 --- a/keyboards/reviung/reviung33/keyboard.json +++ b/keyboards/reviung/reviung33/keyboard.json @@ -39,6 +39,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B1", "B3", "B2", "B6", "B5"], "rows": ["F4", "F5", "F6", "F7"] diff --git a/keyboards/reviung/reviung34/config.h b/keyboards/reviung/reviung34/config.h deleted file mode 100755 index 72befe1da14..00000000000 --- a/keyboards/reviung/reviung34/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 gtips - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/reviung/reviung34/keyboard.json b/keyboards/reviung/reviung34/keyboard.json index 99ddd28b819..26f520d4ccf 100755 --- a/keyboards/reviung/reviung34/keyboard.json +++ b/keyboards/reviung/reviung34/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B1", "B3", "B2", "B6"], "rows": ["F4", "F5", "F6", "F7"] diff --git a/keyboards/reviung/reviung39/config.h b/keyboards/reviung/reviung39/config.h deleted file mode 100644 index 72befe1da14..00000000000 --- a/keyboards/reviung/reviung39/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 gtips - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/reviung/reviung39/keyboard.json b/keyboards/reviung/reviung39/keyboard.json index 56200a6a3d3..04cbe909c3b 100644 --- a/keyboards/reviung/reviung39/keyboard.json +++ b/keyboards/reviung/reviung39/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "led_count": 11, "hue_steps": 16, diff --git a/keyboards/reviung/reviung41/config.h b/keyboards/reviung/reviung41/config.h deleted file mode 100644 index a0711511018..00000000000 --- a/keyboards/reviung/reviung41/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 gtips - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/reviung/reviung41/keyboard.json b/keyboards/reviung/reviung41/keyboard.json index cf5827935bc..8e72ff5762a 100644 --- a/keyboards/reviung/reviung41/keyboard.json +++ b/keyboards/reviung/reviung41/keyboard.json @@ -39,6 +39,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"] diff --git a/keyboards/reviung/reviung5/config.h b/keyboards/reviung/reviung5/config.h deleted file mode 100644 index 4977d4b5872..00000000000 --- a/keyboards/reviung/reviung5/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 gtips - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/reviung/reviung5/keyboard.json b/keyboards/reviung/reviung5/keyboard.json index 674f044eeeb..5c932020a2b 100644 --- a/keyboards/reviung/reviung5/keyboard.json +++ b/keyboards/reviung/reviung5/keyboard.json @@ -40,6 +40,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4"], "rows": ["F4"] diff --git a/keyboards/reviung/reviung53/config.h b/keyboards/reviung/reviung53/config.h deleted file mode 100644 index 321f116f92b..00000000000 --- a/keyboards/reviung/reviung53/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2021 gtips (@gtips) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/reviung/reviung53/keyboard.json b/keyboards/reviung/reviung53/keyboard.json index e5556af10b9..33eec7d8285 100644 --- a/keyboards/reviung/reviung53/keyboard.json +++ b/keyboards/reviung/reviung53/keyboard.json @@ -39,6 +39,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D0", "D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/rgbkb/zen/rev1/config.h b/keyboards/rgbkb/zen/rev1/config.h deleted file mode 100644 index 1578432cf80..00000000000 --- a/keyboards/rgbkb/zen/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 Danny Nguyen - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/rgbkb/zen/rev1/keyboard.json b/keyboards/rgbkb/zen/rev1/keyboard.json index fd552b8f900..8e192d9dfd7 100644 --- a/keyboards/rgbkb/zen/rev1/keyboard.json +++ b/keyboards/rgbkb/zen/rev1/keyboard.json @@ -16,6 +16,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B3", "B1", "F7", "F6", "D4", "B6"], "rows": ["C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/rgbkb/zen/rev2/config.h b/keyboards/rgbkb/zen/rev2/config.h index a06ddd9d3ca..44766c7a838 100644 --- a/keyboards/rgbkb/zen/rev2/config.h +++ b/keyboards/rgbkb/zen/rev2/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/rgbkb/zen/rev2/keyboard.json b/keyboards/rgbkb/zen/rev2/keyboard.json index 2c8e25deb3f..9079185b26d 100644 --- a/keyboards/rgbkb/zen/rev2/keyboard.json +++ b/keyboards/rgbkb/zen/rev2/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B3", "B1", "B2"], "rows": ["C6", "E6", "B5", "D7", "B4"] diff --git a/keyboards/rmi_kb/aelith/config.h b/keyboards/rmi_kb/aelith/config.h deleted file mode 100644 index d5f4fd90db9..00000000000 --- a/keyboards/rmi_kb/aelith/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Ramon Imbao - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/rmi_kb/aelith/keyboard.json b/keyboards/rmi_kb/aelith/keyboard.json index bacc4801876..de16e5ac317 100644 --- a/keyboards/rmi_kb/aelith/keyboard.json +++ b/keyboards/rmi_kb/aelith/keyboard.json @@ -14,6 +14,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "C0", "C1", "C2", "C3", "C4", "C5", "C6", "C7", "A6", "A5", "A0", "A1", "A2", "A3", "A4"], "rows": ["D5", "D1", "D0", "D6", "A7"] diff --git a/keyboards/rmi_kb/chevron/config.h b/keyboards/rmi_kb/chevron/config.h index 7cc6ae4689a..a9eda24a73e 100644 --- a/keyboards/rmi_kb/chevron/config.h +++ b/keyboards/rmi_kb/chevron/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/rmi_kb/chevron/keyboard.json b/keyboards/rmi_kb/chevron/keyboard.json index a4cb864705e..8eda552902a 100644 --- a/keyboards/rmi_kb/chevron/keyboard.json +++ b/keyboards/rmi_kb/chevron/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A5", "A6", "A7", "C7", "C6", "C5", "C4", "C3", "C2", "C1", "A4", "A3", "A2", "B4"], "rows": ["D5", "D6", "C0", "D7"] diff --git a/keyboards/rmi_kb/herringbone/pro/config.h b/keyboards/rmi_kb/herringbone/pro/config.h index 27cd8fb6b6e..13f50d5145e 100644 --- a/keyboards/rmi_kb/herringbone/pro/config.h +++ b/keyboards/rmi_kb/herringbone/pro/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Small QoL improvements */ #define PERMISSIVE_HOLD diff --git a/keyboards/rmi_kb/herringbone/pro/keyboard.json b/keyboards/rmi_kb/herringbone/pro/keyboard.json index 506022a42b4..53031856928 100644 --- a/keyboards/rmi_kb/herringbone/pro/keyboard.json +++ b/keyboards/rmi_kb/herringbone/pro/keyboard.json @@ -20,6 +20,12 @@ "oled": true, "wpm": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "D6", "D5", "D1", "B0", "B1", "B2", "B3", "B4", "D7"], "rows": ["C4", "C5", "C6", "C7", "A7", "A6", null] diff --git a/keyboards/rmi_kb/herringbone/v1/config.h b/keyboards/rmi_kb/herringbone/v1/config.h index 27cd8fb6b6e..13f50d5145e 100644 --- a/keyboards/rmi_kb/herringbone/v1/config.h +++ b/keyboards/rmi_kb/herringbone/v1/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* Small QoL improvements */ #define PERMISSIVE_HOLD diff --git a/keyboards/rmi_kb/herringbone/v1/keyboard.json b/keyboards/rmi_kb/herringbone/v1/keyboard.json index 91fbf2cf244..2883f341ab5 100644 --- a/keyboards/rmi_kb/herringbone/v1/keyboard.json +++ b/keyboards/rmi_kb/herringbone/v1/keyboard.json @@ -14,6 +14,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "D6", "D5", "D1", "B0", "B1", "B2", "B3", "B4", "D7"], "rows": ["C4", "C5", "C6", "C7", "A7", "A6"] diff --git a/keyboards/rmi_kb/squishy65/config.h b/keyboards/rmi_kb/squishy65/config.h deleted file mode 100644 index 4b007cf387e..00000000000 --- a/keyboards/rmi_kb/squishy65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/rmi_kb/squishy65/keyboard.json b/keyboards/rmi_kb/squishy65/keyboard.json index 1025584b6a2..adc83200d3d 100644 --- a/keyboards/rmi_kb/squishy65/keyboard.json +++ b/keyboards/rmi_kb/squishy65/keyboard.json @@ -35,6 +35,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A9", "B9", "B7", "B6", "B5", "B4", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A10", "A3", "A2"], "rows": ["A15", "B3", "A0", "B10", "B11"] diff --git a/keyboards/rmi_kb/squishyfrl/config.h b/keyboards/rmi_kb/squishyfrl/config.h index f36369d6c75..25a16f14dde 100644 --- a/keyboards/rmi_kb/squishyfrl/config.h +++ b/keyboards/rmi_kb/squishyfrl/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/rmi_kb/squishyfrl/keyboard.json b/keyboards/rmi_kb/squishyfrl/keyboard.json index 7f6943e8641..8a14a2a4edb 100644 --- a/keyboards/rmi_kb/squishyfrl/keyboard.json +++ b/keyboards/rmi_kb/squishyfrl/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A7", "C4", "C5", "B0", "B1", "B2", "B10", "B12", "B13", "B14", "B15", "C6", "C9", "C7", "C8", "A10", "A4", "C14", "A3", "A2", "C3"], "rows": ["B9", "B8", "A0", "A1", "A9", "A8", "B11", "A6", "A5"] diff --git a/keyboards/rmi_kb/squishytkl/config.h b/keyboards/rmi_kb/squishytkl/config.h index f36369d6c75..25a16f14dde 100644 --- a/keyboards/rmi_kb/squishytkl/config.h +++ b/keyboards/rmi_kb/squishytkl/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/rmi_kb/squishytkl/keyboard.json b/keyboards/rmi_kb/squishytkl/keyboard.json index c9b0c276717..ae63d83c5d0 100644 --- a/keyboards/rmi_kb/squishytkl/keyboard.json +++ b/keyboards/rmi_kb/squishytkl/keyboard.json @@ -36,6 +36,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A15", "C10", "C11", "C12", "D2", "A7", "C4", "C5", "B0", "B1", "B2", "B10", "B12", "B13", "B14", "B15", "C6", "C9", "C7", "C8", "A10", "A4", "C14", "A3", "A2", "C3"], "rows": ["B3", "B4", "B5", "C13", "B9", "B8", "A0", "A1", "A9", "A8", "B11", "A6", "A5", "C0"] diff --git a/keyboards/rmi_kb/wete/v1/config.h b/keyboards/rmi_kb/wete/v1/config.h index b3b42c6c3ec..9a49ebf8b27 100644 --- a/keyboards/rmi_kb/wete/v1/config.h +++ b/keyboards/rmi_kb/wete/v1/config.h @@ -23,11 +23,6 @@ along with this program. If not, see . #define SLEEP_LED_GPT_DRIVER GPTD1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/rmi_kb/wete/v1/keyboard.json b/keyboards/rmi_kb/wete/v1/keyboard.json index 569455923ca..8e8059c103d 100644 --- a/keyboards/rmi_kb/wete/v1/keyboard.json +++ b/keyboards/rmi_kb/wete/v1/keyboard.json @@ -19,6 +19,12 @@ "rgblight": true, "sleep_led": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B13", "B14", "B15", "A8", "B0", "A7", "A5", "A4", "A3", "B9", "C13", "C14", "C15", "F0", "F1", "A0", "A1", "A2", "B8", "B7"], "rows": ["A9", "B12", "B11", "B10", "B2", "B1"] diff --git a/keyboards/rmi_kb/wete/v2/config.h b/keyboards/rmi_kb/wete/v2/config.h index 121c9046e02..7990439a73e 100644 --- a/keyboards/rmi_kb/wete/v2/config.h +++ b/keyboards/rmi_kb/wete/v2/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define RGBLIGHT_LAYERS #define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/rmi_kb/wete/v2/keyboard.json b/keyboards/rmi_kb/wete/v2/keyboard.json index 140071d01f7..2c925ee9195 100644 --- a/keyboards/rmi_kb/wete/v2/keyboard.json +++ b/keyboards/rmi_kb/wete/v2/keyboard.json @@ -16,6 +16,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B0", "B7", "B5", "B4", "D7", "D6", "D4", "D5", "D3"], "rows": ["B3", "B2", "B6", "C6", "C7", "E6", "F7", "F6", "F5", "F4", "F1", "F0", null] diff --git a/keyboards/rocketboard_16/config.h b/keyboards/rocketboard_16/config.h index 5e04a24ba58..d0c53cbe8ba 100644 --- a/keyboards/rocketboard_16/config.h +++ b/keyboards/rocketboard_16/config.h @@ -21,9 +21,6 @@ along with this program. If not, see . #define OLED_DISPLAY_128X64 #define OLED_FONT_H "custom_font.h" -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/rocketboard_16/keyboard.json b/keyboards/rocketboard_16/keyboard.json index 84baf6c5a76..4831911f4fd 100644 --- a/keyboards/rocketboard_16/keyboard.json +++ b/keyboards/rocketboard_16/keyboard.json @@ -36,7 +36,11 @@ ] }, "qmk": { - "tap_keycode_delay": 20 + "tap_keycode_delay": 20, + "locking": { + "enabled": true, + "resync": true + } }, "bootmagic": { "matrix": [4, 1] diff --git a/keyboards/rominronin/katana60/rev1/config.h b/keyboards/rominronin/katana60/rev1/config.h deleted file mode 100644 index 13f0a19cbd2..00000000000 --- a/keyboards/rominronin/katana60/rev1/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 Baris Tosun - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/rominronin/katana60/rev1/keyboard.json b/keyboards/rominronin/katana60/rev1/keyboard.json index 56b4709857d..0a9bb4ea493 100644 --- a/keyboards/rominronin/katana60/rev1/keyboard.json +++ b/keyboards/rominronin/katana60/rev1/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "B3", "B2", "B1", "B0", "C7", "D1", "D2", "C6", "B6", "B5", "B4", "D4", "D6", "D7"], "rows": ["F5", "F6", "F4", "F1", "D0"] diff --git a/keyboards/rominronin/katana60/rev2/config.h b/keyboards/rominronin/katana60/rev2/config.h deleted file mode 100644 index 8e3d35a7beb..00000000000 --- a/keyboards/rominronin/katana60/rev2/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 rominronin - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/rominronin/katana60/rev2/keyboard.json b/keyboards/rominronin/katana60/rev2/keyboard.json index 241a35d4034..41fc723dcf3 100644 --- a/keyboards/rominronin/katana60/rev2/keyboard.json +++ b/keyboards/rominronin/katana60/rev2/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "D6", "D4", "D3", "D2", "D1", "D0"], "rows": ["B0", "E6", "D5", "B4", "B5"] diff --git a/keyboards/roseslite/config.h b/keyboards/roseslite/config.h deleted file mode 100644 index 3cf449a32bf..00000000000 --- a/keyboards/roseslite/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Fate - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/roseslite/keyboard.json b/keyboards/roseslite/keyboard.json index f315e21770a..88b8c7a2057 100644 --- a/keyboards/roseslite/keyboard.json +++ b/keyboards/roseslite/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B0", "B7", "B5", "B4", "D7", "D6", "B3"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/rotr/config.h b/keyboards/rotr/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/rotr/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rotr/keyboard.json b/keyboards/rotr/keyboard.json index 24694e93f83..cb1a7e923d2 100644 --- a/keyboards/rotr/keyboard.json +++ b/keyboards/rotr/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D4"], "rows": ["E6"] diff --git a/keyboards/rpiguy9907/southpaw66/config.h b/keyboards/rpiguy9907/southpaw66/config.h deleted file mode 100644 index b4da5d530f8..00000000000 --- a/keyboards/rpiguy9907/southpaw66/config.h +++ /dev/null @@ -1,22 +0,0 @@ - /* Copyright 2020 gooberpsycho - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rpiguy9907/southpaw66/keyboard.json b/keyboards/rpiguy9907/southpaw66/keyboard.json index 78a513e3677..f2fdf4f5ff5 100644 --- a/keyboards/rpiguy9907/southpaw66/keyboard.json +++ b/keyboards/rpiguy9907/southpaw66/keyboard.json @@ -19,6 +19,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B4", "B5", "F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D7", "C6", "D4", "D0", "D1", "D2", "D3"] diff --git a/keyboards/rubi/config.h b/keyboards/rubi/config.h index 725e6e29f43..c44e3ba03b9 100644 --- a/keyboards/rubi/config.h +++ b/keyboards/rubi/config.h @@ -17,9 +17,4 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define OLED_FONT_H "lib/glcdfont.c" diff --git a/keyboards/rubi/keyboard.json b/keyboards/rubi/keyboard.json index e434977b37c..cb94b586156 100644 --- a/keyboards/rubi/keyboard.json +++ b/keyboards/rubi/keyboard.json @@ -16,6 +16,12 @@ "nkro": true, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2", "B1", "F7"], "rows": ["F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/rura66/rev1/config.h b/keyboards/rura66/rev1/config.h index e9a1ae40890..4c82cee9103 100644 --- a/keyboards/rura66/rev1/config.h +++ b/keyboards/rura66/rev1/config.h @@ -25,11 +25,6 @@ along with this program. If not, see . /* Custom font */ #define OLED_FONT_H "keyboards/rura66/common/glcdfont.c" -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/rura66/rev1/keyboard.json b/keyboards/rura66/rev1/keyboard.json index ded87a7e0e9..43f65783940 100644 --- a/keyboards/rura66/rev1/keyboard.json +++ b/keyboards/rura66/rev1/keyboard.json @@ -19,6 +19,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgb_matrix": { "driver": "ws2812" }, diff --git a/keyboards/ryanbaekr/rb1/config.h b/keyboards/ryanbaekr/rb1/config.h deleted file mode 100644 index 9024fa25d5b..00000000000 --- a/keyboards/ryanbaekr/rb1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 ryanbaekr - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ryanbaekr/rb1/keyboard.json b/keyboards/ryanbaekr/rb1/keyboard.json index 0d14acb6bb0..31f2fa20c4f 100644 --- a/keyboards/ryanbaekr/rb1/keyboard.json +++ b/keyboards/ryanbaekr/rb1/keyboard.json @@ -18,6 +18,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["B1"] diff --git a/keyboards/ryanbaekr/rb18/config.h b/keyboards/ryanbaekr/rb18/config.h deleted file mode 100644 index 9024fa25d5b..00000000000 --- a/keyboards/ryanbaekr/rb18/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 ryanbaekr - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ryanbaekr/rb18/keyboard.json b/keyboards/ryanbaekr/rb18/keyboard.json index 41677aa148e..03a1335c7bd 100644 --- a/keyboards/ryanbaekr/rb18/keyboard.json +++ b/keyboards/ryanbaekr/rb18/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B2", "B6", "B5", "B4"], "rows": ["B1", "F7", "F6", "F5", "F4"] diff --git a/keyboards/ryanbaekr/rb69/config.h b/keyboards/ryanbaekr/rb69/config.h deleted file mode 100644 index 2e802ba3630..00000000000 --- a/keyboards/ryanbaekr/rb69/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 ryanbaekr - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ryanbaekr/rb69/keyboard.json b/keyboards/ryanbaekr/rb69/keyboard.json index 5a50b691cb4..c1cce7508ea 100644 --- a/keyboards/ryanbaekr/rb69/keyboard.json +++ b/keyboards/ryanbaekr/rb69/keyboard.json @@ -35,6 +35,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "F0", "F1", "B4", "B5", "B7", "D5", "C7", "E6"], "rows": ["D7", "C6", "D4", "D0", "D1"] diff --git a/keyboards/ryanbaekr/rb86/config.h b/keyboards/ryanbaekr/rb86/config.h deleted file mode 100644 index 2e802ba3630..00000000000 --- a/keyboards/ryanbaekr/rb86/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 ryanbaekr - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ryanbaekr/rb86/keyboard.json b/keyboards/ryanbaekr/rb86/keyboard.json index 1255864c522..5813a2fa7b0 100644 --- a/keyboards/ryanbaekr/rb86/keyboard.json +++ b/keyboards/ryanbaekr/rb86/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B5", "D5", "C7", "F1", "F0", "D3", "D2", "D1", "D0", "D4", "E6", "B7", "C6", "F4", "F5", "F6"], "rows": ["B0", "B1", "B2", "B3", "B4", "D7"] diff --git a/keyboards/ryanbaekr/rb87/config.h b/keyboards/ryanbaekr/rb87/config.h deleted file mode 100644 index 9024fa25d5b..00000000000 --- a/keyboards/ryanbaekr/rb87/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 ryanbaekr - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ryanbaekr/rb87/keyboard.json b/keyboards/ryanbaekr/rb87/keyboard.json index ea19528cb31..6d19c3c29d4 100644 --- a/keyboards/ryanbaekr/rb87/keyboard.json +++ b/keyboards/ryanbaekr/rb87/keyboard.json @@ -37,6 +37,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "F0", "F1", "C7", "E6", "B4", "B5", "B7", "D5", "D3"], "rows": ["D2", "D7", "C6", "D4", "D0", "D1"] diff --git a/keyboards/ryanskidmore/rskeys100/config.h b/keyboards/ryanskidmore/rskeys100/config.h index 9f01b96248d..9ee24243f82 100644 --- a/keyboards/ryanskidmore/rskeys100/config.h +++ b/keyboards/ryanskidmore/rskeys100/config.h @@ -28,8 +28,3 @@ /* The number of RGB LEDs connected */ #define RGB_MATRIX_LED_COUNT 105 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ryanskidmore/rskeys100/keyboard.json b/keyboards/ryanskidmore/rskeys100/keyboard.json index b42a23217dc..0e2d3eb6af5 100644 --- a/keyboards/ryanskidmore/rskeys100/keyboard.json +++ b/keyboards/ryanskidmore/rskeys100/keyboard.json @@ -15,6 +15,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "ws2812": { "pin": "C7" }, diff --git a/keyboards/ryloo_studio/m0110/config.h b/keyboards/ryloo_studio/m0110/config.h deleted file mode 100755 index 592d0be42a9..00000000000 --- a/keyboards/ryloo_studio/m0110/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 newtonapple - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ryloo_studio/m0110/keyboard.json b/keyboards/ryloo_studio/m0110/keyboard.json index 3f2f366cbbe..9eb4662e366 100644 --- a/keyboards/ryloo_studio/m0110/keyboard.json +++ b/keyboards/ryloo_studio/m0110/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "F7", "B5", "B4", "D7", "D6", "B3", "B2"], "rows": ["D0", "D1", "D2", "D3", "D5"] From 0094a6f571d4ab56e7a4747a35482c5f98e821f3 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 12:34:56 -0700 Subject: [PATCH 047/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: S, Part 2 (#23784) Affects: - `slz40` - `smithrune/iron160/iron160_s` - `smithrune/iron165r2/f072` - `smithrune/iron165r2/f411` - `smithrune/iron180` - `smithrune/iron180v2/v2h` - `smithrune/iron180v2/v2s` - `smoll/lefty` - `snampad` - `sneakbox/aliceclone` - `sneakbox/disarray/ortho` - `sneakbox/disarray/staggered` - `soup10` - `soy20` - `sparrow62` - `split67` - `splitish` - `splitography` - `star75` - `stello65/beta` - `stello65/hs_rev1` - `stello65/sl_rev1` - `stenokeyboards/the_uni/pro_micro` - `stenokeyboards/the_uni/usb_c` - `strech/soulstone` - `studiokestra/bourgeau` - `studiokestra/cascade` - `studiokestra/frl84` - `studiokestra/galatea/rev1` - `studiokestra/galatea/rev2` - `studiokestra/galatea/rev3` - `studiokestra/line_friends_tkl` - `studiokestra/nascent` - `studiokestra/nue` - `suavity/ehan` - `subatomic` - `switchplate/southpaw_65` - `switchplate/southpaw_fullsize` - `switchplate/switchplate910` - `sx60` - `system76/launch_1` --- keyboards/slz40/config.h | 39 ----------------- keyboards/slz40/keyboard.json | 6 +++ .../smithrune/iron160/iron160_s/config.h | 4 -- .../smithrune/iron160/iron160_s/keyboard.json | 6 +++ keyboards/smithrune/iron165r2/config.h | 3 -- .../smithrune/iron165r2/f072/keyboard.json | 6 +++ .../smithrune/iron165r2/f411/keyboard.json | 6 +++ keyboards/smithrune/iron180/config.h | 5 --- keyboards/smithrune/iron180/keyboard.json | 6 +++ keyboards/smithrune/iron180v2/v2h/config.h | 5 --- .../smithrune/iron180v2/v2h/keyboard.json | 6 +++ keyboards/smithrune/iron180v2/v2s/config.h | 5 --- .../smithrune/iron180v2/v2s/keyboard.json | 6 +++ keyboards/smoll/lefty/config.h | 23 ---------- keyboards/smoll/lefty/info.json | 6 +++ keyboards/snampad/config.h | 39 ----------------- keyboards/snampad/keyboard.json | 6 +++ keyboards/sneakbox/aliceclone/config.h | 24 ----------- keyboards/sneakbox/aliceclone/keyboard.json | 6 +++ keyboards/sneakbox/disarray/ortho/config.h | 24 ----------- .../sneakbox/disarray/ortho/keyboard.json | 6 +++ .../sneakbox/disarray/staggered/config.h | 24 ----------- .../sneakbox/disarray/staggered/keyboard.json | 6 +++ keyboards/soup10/config.h | 39 ----------------- keyboards/soup10/keyboard.json | 6 +++ keyboards/soy20/config.h | 23 ---------- keyboards/soy20/keyboard.json | 6 +++ keyboards/sparrow62/config.h | 5 --- keyboards/sparrow62/keyboard.json | 6 +++ keyboards/split67/config.h | 26 ------------ keyboards/split67/keyboard.json | 8 +++- keyboards/splitish/config.h | 24 ----------- keyboards/splitish/keyboard.json | 6 +++ keyboards/splitography/config.h | 22 ---------- keyboards/splitography/keyboard.json | 6 +++ keyboards/star75/config.h | 6 --- keyboards/star75/keyboard.json | 6 +++ keyboards/stello65/beta/config.h | 25 ----------- keyboards/stello65/beta/keyboard.json | 6 +++ keyboards/stello65/hs_rev1/config.h | 25 ----------- keyboards/stello65/hs_rev1/keyboard.json | 6 +++ keyboards/stello65/sl_rev1/config.h | 25 ----------- keyboards/stello65/sl_rev1/keyboard.json | 6 +++ .../stenokeyboards/the_uni/pro_micro/config.h | 24 ----------- .../the_uni/pro_micro/keyboard.json | 6 +++ .../stenokeyboards/the_uni/usb_c/config.h | 24 ----------- .../the_uni/usb_c/keyboard.json | 6 +++ keyboards/strech/soulstone/config.h | 5 --- keyboards/strech/soulstone/keyboard.json | 6 +++ keyboards/studiokestra/bourgeau/config.h | 28 ------------- keyboards/studiokestra/bourgeau/keyboard.json | 6 +++ keyboards/studiokestra/cascade/config.h | 28 ------------- keyboards/studiokestra/cascade/keyboard.json | 6 +++ keyboards/studiokestra/frl84/config.h | 9 ---- keyboards/studiokestra/frl84/keyboard.json | 6 +++ keyboards/studiokestra/galatea/config.h | 9 ---- .../studiokestra/galatea/rev1/keyboard.json | 6 +++ .../studiokestra/galatea/rev2/keyboard.json | 6 +++ .../studiokestra/galatea/rev3/keyboard.json | 6 +++ .../studiokestra/line_friends_tkl/config.h | 9 ---- .../line_friends_tkl/keyboard.json | 6 +++ keyboards/studiokestra/nascent/config.h | 23 ---------- keyboards/studiokestra/nascent/keyboard.json | 6 +++ keyboards/studiokestra/nue/config.h | 23 ---------- keyboards/studiokestra/nue/keyboard.json | 6 +++ keyboards/suavity/ehan/config.h | 24 ----------- keyboards/suavity/ehan/keyboard.json | 6 +++ keyboards/subatomic/config.h | 42 ------------------- keyboards/subatomic/keyboard.json | 6 +++ keyboards/switchplate/southpaw_65/config.h | 5 --- .../switchplate/southpaw_65/keyboard.json | 6 +++ .../switchplate/southpaw_fullsize/config.h | 39 ----------------- .../southpaw_fullsize/keyboard.json | 6 +++ keyboards/switchplate/switchplate910/config.h | 39 ----------------- .../switchplate/switchplate910/keyboard.json | 6 +++ keyboards/sx60/config.h | 6 --- keyboards/sx60/keyboard.json | 6 +++ keyboards/system76/launch_1/config.h | 6 --- keyboards/system76/launch_1/keyboard.json | 6 +++ 79 files changed, 247 insertions(+), 759 deletions(-) delete mode 100644 keyboards/slz40/config.h delete mode 100644 keyboards/smoll/lefty/config.h delete mode 100644 keyboards/snampad/config.h delete mode 100644 keyboards/sneakbox/aliceclone/config.h delete mode 100644 keyboards/sneakbox/disarray/ortho/config.h delete mode 100644 keyboards/sneakbox/disarray/staggered/config.h delete mode 100644 keyboards/soup10/config.h delete mode 100644 keyboards/soy20/config.h delete mode 100644 keyboards/split67/config.h delete mode 100644 keyboards/splitish/config.h delete mode 100644 keyboards/splitography/config.h delete mode 100644 keyboards/stello65/beta/config.h delete mode 100644 keyboards/stello65/hs_rev1/config.h delete mode 100644 keyboards/stello65/sl_rev1/config.h delete mode 100644 keyboards/stenokeyboards/the_uni/pro_micro/config.h delete mode 100644 keyboards/stenokeyboards/the_uni/usb_c/config.h delete mode 100644 keyboards/studiokestra/bourgeau/config.h delete mode 100644 keyboards/studiokestra/cascade/config.h delete mode 100644 keyboards/studiokestra/frl84/config.h delete mode 100644 keyboards/studiokestra/galatea/config.h delete mode 100644 keyboards/studiokestra/line_friends_tkl/config.h delete mode 100644 keyboards/studiokestra/nascent/config.h delete mode 100644 keyboards/studiokestra/nue/config.h delete mode 100644 keyboards/suavity/ehan/config.h delete mode 100644 keyboards/subatomic/config.h delete mode 100644 keyboards/switchplate/southpaw_fullsize/config.h delete mode 100644 keyboards/switchplate/switchplate910/config.h diff --git a/keyboards/slz40/config.h b/keyboards/slz40/config.h deleted file mode 100644 index e66e3202cc2..00000000000 --- a/keyboards/slz40/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 SithLord - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/slz40/keyboard.json b/keyboards/slz40/keyboard.json index 97533fd939e..138c7d21cf5 100644 --- a/keyboards/slz40/keyboard.json +++ b/keyboards/slz40/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "D2", "F5", "D1", "F6", "D0", "F7", "D4", "B1", "C6", "E6", "D7"], "rows": ["B4", "B5", "B3", "B2", "B6"] diff --git a/keyboards/smithrune/iron160/iron160_s/config.h b/keyboards/smithrune/iron160/iron160_s/config.h index e5da34f3121..981a344d68e 100644 --- a/keyboards/smithrune/iron160/iron160_s/config.h +++ b/keyboards/smithrune/iron160/iron160_s/config.h @@ -20,7 +20,3 @@ along with this program. If not, see . #define BACKLIGHT_PWM_DRIVER PWMD3 #define BACKLIGHT_PWM_CHANNEL 2 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/smithrune/iron160/iron160_s/keyboard.json b/keyboards/smithrune/iron160/iron160_s/keyboard.json index b2a465399f5..d6bf0a43f5c 100644 --- a/keyboards/smithrune/iron160/iron160_s/keyboard.json +++ b/keyboards/smithrune/iron160/iron160_s/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "processor": "STM32F072", "bootloader": "stm32-dfu", "matrix_pins": { diff --git a/keyboards/smithrune/iron165r2/config.h b/keyboards/smithrune/iron165r2/config.h index b803959d13c..a3e46ee8d2c 100644 --- a/keyboards/smithrune/iron165r2/config.h +++ b/keyboards/smithrune/iron165r2/config.h @@ -17,9 +17,6 @@ along with this program. If not, see . #pragma once -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE - //#define ALL_RGBS // Define the RGB option here //#define LINE_RGBS //#define RUNE_RGBS diff --git a/keyboards/smithrune/iron165r2/f072/keyboard.json b/keyboards/smithrune/iron165r2/f072/keyboard.json index e16493d0b5c..b3b307d71c2 100644 --- a/keyboards/smithrune/iron165r2/f072/keyboard.json +++ b/keyboards/smithrune/iron165r2/f072/keyboard.json @@ -11,6 +11,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "A6", "levels": 20, diff --git a/keyboards/smithrune/iron165r2/f411/keyboard.json b/keyboards/smithrune/iron165r2/f411/keyboard.json index d3d4b3de506..75edab14aff 100644 --- a/keyboards/smithrune/iron165r2/f411/keyboard.json +++ b/keyboards/smithrune/iron165r2/f411/keyboard.json @@ -11,6 +11,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "eeprom": { "driver": "i2c" }, diff --git a/keyboards/smithrune/iron180/config.h b/keyboards/smithrune/iron180/config.h index 7506922b008..efc249f466e 100644 --- a/keyboards/smithrune/iron180/config.h +++ b/keyboards/smithrune/iron180/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PAL_MODE 1 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/smithrune/iron180/keyboard.json b/keyboards/smithrune/iron180/keyboard.json index 0a7367649a1..b0c6e1a8ffb 100644 --- a/keyboards/smithrune/iron180/keyboard.json +++ b/keyboards/smithrune/iron180/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "B6", "B5", "B4", "B3", "A10", "A9", "A8", "B15", "B14", "B13", "B12", "B11", "B2", "A4", "B1", "A3"], "rows": ["B9", "B8", "A15", "B0", "A7", "A5"] diff --git a/keyboards/smithrune/iron180v2/v2h/config.h b/keyboards/smithrune/iron180v2/v2h/config.h index 1d195c5a458..a3810f7d794 100644 --- a/keyboards/smithrune/iron180v2/v2h/config.h +++ b/keyboards/smithrune/iron180v2/v2h/config.h @@ -17,10 +17,5 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WEAR_LEVELING_LOGICAL_SIZE 2048 #define WEAR_LEVELING_BACKING_SIZE 4096 diff --git a/keyboards/smithrune/iron180v2/v2h/keyboard.json b/keyboards/smithrune/iron180v2/v2h/keyboard.json index a41c9d7e952..1580a12b8c9 100644 --- a/keyboards/smithrune/iron180v2/v2h/keyboard.json +++ b/keyboards/smithrune/iron180v2/v2h/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/smithrune/iron180v2/v2s/config.h b/keyboards/smithrune/iron180v2/v2s/config.h index bf443b56f15..acd45ba2805 100644 --- a/keyboards/smithrune/iron180v2/v2s/config.h +++ b/keyboards/smithrune/iron180v2/v2s/config.h @@ -21,11 +21,6 @@ along with this program. If not, see . #define BACKLIGHT_PWM_CHANNEL 3 #define BACKLIGHT_PAL_MODE 2 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define WEAR_LEVELING_LOGICAL_SIZE 2048 #define WEAR_LEVELING_BACKING_SIZE 4096 diff --git a/keyboards/smithrune/iron180v2/v2s/keyboard.json b/keyboards/smithrune/iron180v2/v2s/keyboard.json index 82744159912..f8f27f4cc1f 100644 --- a/keyboards/smithrune/iron180v2/v2s/keyboard.json +++ b/keyboards/smithrune/iron180v2/v2s/keyboard.json @@ -21,6 +21,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "build": { "lto": true }, diff --git a/keyboards/smoll/lefty/config.h b/keyboards/smoll/lefty/config.h deleted file mode 100644 index b1432e4d879..00000000000 --- a/keyboards/smoll/lefty/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Smoll Chungus (@smollchungus) -* -* 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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/smoll/lefty/info.json b/keyboards/smoll/lefty/info.json index 28fa865888c..c34e264176f 100644 --- a/keyboards/smoll/lefty/info.json +++ b/keyboards/smoll/lefty/info.json @@ -15,6 +15,12 @@ "nkro": false, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "usb": { "vid": "0x5363", "pid": "0x0001", diff --git a/keyboards/snampad/config.h b/keyboards/snampad/config.h deleted file mode 100644 index 63349588eca..00000000000 --- a/keyboards/snampad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Peter Tillemans - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/snampad/keyboard.json b/keyboards/snampad/keyboard.json index a5ea2cda2f1..e2a269d5c71 100644 --- a/keyboards/snampad/keyboard.json +++ b/keyboards/snampad/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3"], "rows": ["F4", "F5", "F6", "F7", "B1", "B3"] diff --git a/keyboards/sneakbox/aliceclone/config.h b/keyboards/sneakbox/aliceclone/config.h deleted file mode 100644 index 7c7cad23905..00000000000 --- a/keyboards/sneakbox/aliceclone/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 Bryan Ong - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sneakbox/aliceclone/keyboard.json b/keyboards/sneakbox/aliceclone/keyboard.json index 0e134c84d48..869b8bd20b6 100644 --- a/keyboards/sneakbox/aliceclone/keyboard.json +++ b/keyboards/sneakbox/aliceclone/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "D0", "C7", "C6", "B6", "B5", "B4", "D1"], "rows": ["F1", "E6", "F4", "B1", "F5", "B2", "F6", "B3", "F7", "B7"] diff --git a/keyboards/sneakbox/disarray/ortho/config.h b/keyboards/sneakbox/disarray/ortho/config.h deleted file mode 100644 index 25382dd5f1c..00000000000 --- a/keyboards/sneakbox/disarray/ortho/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 Bryan Ong - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sneakbox/disarray/ortho/keyboard.json b/keyboards/sneakbox/disarray/ortho/keyboard.json index 49a321a2da1..31a201e0d24 100644 --- a/keyboards/sneakbox/disarray/ortho/keyboard.json +++ b/keyboards/sneakbox/disarray/ortho/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "E6"], "rows": ["B7", "D0", "D1", "D2", "D3", "B0"] diff --git a/keyboards/sneakbox/disarray/staggered/config.h b/keyboards/sneakbox/disarray/staggered/config.h deleted file mode 100644 index 25382dd5f1c..00000000000 --- a/keyboards/sneakbox/disarray/staggered/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 Bryan Ong - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sneakbox/disarray/staggered/keyboard.json b/keyboards/sneakbox/disarray/staggered/keyboard.json index 01334273e49..46317951309 100644 --- a/keyboards/sneakbox/disarray/staggered/keyboard.json +++ b/keyboards/sneakbox/disarray/staggered/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "E6"], "rows": ["B7", "D0", "D1", "D2", "D3"] diff --git a/keyboards/soup10/config.h b/keyboards/soup10/config.h deleted file mode 100644 index f479b157941..00000000000 --- a/keyboards/soup10/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 icesoup - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/soup10/keyboard.json b/keyboards/soup10/keyboard.json index b2ec4968e09..f4e19476529 100644 --- a/keyboards/soup10/keyboard.json +++ b/keyboards/soup10/keyboard.json @@ -19,6 +19,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "B4"], "rows": ["D1", "D0", "D4", "C6"] diff --git a/keyboards/soy20/config.h b/keyboards/soy20/config.h deleted file mode 100644 index 14fc40cd625..00000000000 --- a/keyboards/soy20/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Soy20 PCB}} -Copyright (C) {{ 2020 }} {{ Drewkeys }} - -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 .*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/soy20/keyboard.json b/keyboards/soy20/keyboard.json index e5c4499af54..77524eff6ca 100644 --- a/keyboards/soy20/keyboard.json +++ b/keyboards/soy20/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B5", "B6", "B7", "C7"], "rows": ["B0", "B1", "B2", "B3", "B4"] diff --git a/keyboards/sparrow62/config.h b/keyboards/sparrow62/config.h index 3f234d31cba..2b9669e9383 100644 --- a/keyboards/sparrow62/config.h +++ b/keyboards/sparrow62/config.h @@ -18,8 +18,3 @@ along with this program. If not, see . #pragma once #define SPLIT_HAND_PIN F4 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sparrow62/keyboard.json b/keyboards/sparrow62/keyboard.json index e551bb48517..796d18b9bb8 100644 --- a/keyboards/sparrow62/keyboard.json +++ b/keyboards/sparrow62/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/split67/config.h b/keyboards/split67/config.h deleted file mode 100644 index 9d50d9bdd1c..00000000000 --- a/keyboards/split67/config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert - -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 . -*/ - -#pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - - diff --git a/keyboards/split67/keyboard.json b/keyboards/split67/keyboard.json index f24eea4ce07..f9a3632c01f 100644 --- a/keyboards/split67/keyboard.json +++ b/keyboards/split67/keyboard.json @@ -15,6 +15,12 @@ "extrakey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F7", "B1", "B3", "B2", "B6", null, null], "rows": ["D4", "C6", "D7", "E6", "B4"] @@ -108,4 +114,4 @@ ] } } -} \ No newline at end of file +} diff --git a/keyboards/splitish/config.h b/keyboards/splitish/config.h deleted file mode 100644 index f3fe3850d70..00000000000 --- a/keyboards/splitish/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2019 Reid Schneyer - -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 . -*/ - -#pragma once - -#define LOCKING_SUPPORT_ENABLE - -#define LOCKING_RESYNC_ENABLE - - diff --git a/keyboards/splitish/keyboard.json b/keyboards/splitish/keyboard.json index 08043173717..3df635e6bc2 100644 --- a/keyboards/splitish/keyboard.json +++ b/keyboards/splitish/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "C6", "D4", "D0", "D1", "D2", "D3"], "rows": ["B4", "B5", "B2", "B6"] diff --git a/keyboards/splitography/config.h b/keyboards/splitography/config.h deleted file mode 100644 index d01dd17a188..00000000000 --- a/keyboards/splitography/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Alexis Jeandeau - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/splitography/keyboard.json b/keyboards/splitography/keyboard.json index 3805f1ca2b0..947622096c9 100644 --- a/keyboards/splitography/keyboard.json +++ b/keyboards/splitography/keyboard.json @@ -13,6 +13,12 @@ "console": false, "command": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "rows": ["D0", "D1", "D2", "D3"], "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7"] diff --git a/keyboards/star75/config.h b/keyboards/star75/config.h index 056ee84a8f3..65d751197af 100644 --- a/keyboards/star75/config.h +++ b/keyboards/star75/config.h @@ -3,11 +3,5 @@ Copyright 2022 Horns Lyn (@hornslyn) SPDX-License-Identifier: GPL-2.0-or-later */ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_LAYERS #define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF diff --git a/keyboards/star75/keyboard.json b/keyboards/star75/keyboard.json index 5abd5a57b93..e4ea684a0f2 100644 --- a/keyboards/star75/keyboard.json +++ b/keyboards/star75/keyboard.json @@ -42,6 +42,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "E6"], "rows": ["B7", "D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/stello65/beta/config.h b/keyboards/stello65/beta/config.h deleted file mode 100644 index a1ac3b7b2a7..00000000000 --- a/keyboards/stello65/beta/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2021 @wekey (@@wekey) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/stello65/beta/keyboard.json b/keyboards/stello65/beta/keyboard.json index 230cc6ff007..5dbc3b1338d 100644 --- a/keyboards/stello65/beta/keyboard.json +++ b/keyboards/stello65/beta/keyboard.json @@ -20,6 +20,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "B6", "B5", "B4", "D7", "D6", "D4", "D5"], "rows": ["F0", "E6", "D0", "D1", "C6", "F7", "F6", "F5", "F4", "F1"] diff --git a/keyboards/stello65/hs_rev1/config.h b/keyboards/stello65/hs_rev1/config.h deleted file mode 100644 index 81fc04139c7..00000000000 --- a/keyboards/stello65/hs_rev1/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2022 @wekey (@wekey) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/stello65/hs_rev1/keyboard.json b/keyboards/stello65/hs_rev1/keyboard.json index ebda63da6d0..783b73c599e 100644 --- a/keyboards/stello65/hs_rev1/keyboard.json +++ b/keyboards/stello65/hs_rev1/keyboard.json @@ -35,6 +35,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B5", "B4", "D7", "D6", "D4", "D5", "D3"], "rows": ["F1", "F0", "D1", "D2", "B6", "C6", "C7", "F7", "F6", "F5"] diff --git a/keyboards/stello65/sl_rev1/config.h b/keyboards/stello65/sl_rev1/config.h deleted file mode 100644 index 81fc04139c7..00000000000 --- a/keyboards/stello65/sl_rev1/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2022 @wekey (@wekey) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/stello65/sl_rev1/keyboard.json b/keyboards/stello65/sl_rev1/keyboard.json index 9204986cd1e..8be7b07d0a9 100644 --- a/keyboards/stello65/sl_rev1/keyboard.json +++ b/keyboards/stello65/sl_rev1/keyboard.json @@ -35,6 +35,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "B4", "D7", "D6", "D4", "D5", "D3", "D2"], "rows": ["F0", "E6", "D0", "D1", "C6", "F7", "F6", "F5", "F4", "F1"] diff --git a/keyboards/stenokeyboards/the_uni/pro_micro/config.h b/keyboards/stenokeyboards/the_uni/pro_micro/config.h deleted file mode 100644 index a527c077968..00000000000 --- a/keyboards/stenokeyboards/the_uni/pro_micro/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/stenokeyboards/the_uni/pro_micro/keyboard.json b/keyboards/stenokeyboards/the_uni/pro_micro/keyboard.json index f14728b577f..03466935b0d 100644 --- a/keyboards/stenokeyboards/the_uni/pro_micro/keyboard.json +++ b/keyboards/stenokeyboards/the_uni/pro_micro/keyboard.json @@ -12,6 +12,12 @@ "nkro": true, "steno": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "F6", "F7", "B1", "B3", "B5", "B4", "E6", "D7", "C6", "D4"], "rows": ["F4", "B2", "B6"] diff --git a/keyboards/stenokeyboards/the_uni/usb_c/config.h b/keyboards/stenokeyboards/the_uni/usb_c/config.h deleted file mode 100644 index a527c077968..00000000000 --- a/keyboards/stenokeyboards/the_uni/usb_c/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/stenokeyboards/the_uni/usb_c/keyboard.json b/keyboards/stenokeyboards/the_uni/usb_c/keyboard.json index 5226fb0a8ee..efe3b979bef 100644 --- a/keyboards/stenokeyboards/the_uni/usb_c/keyboard.json +++ b/keyboards/stenokeyboards/the_uni/usb_c/keyboard.json @@ -12,6 +12,12 @@ "nkro": true, "steno": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "D5", "D3", "D2", "D1", "D0", "D4"], "rows": ["B7", "D6", "C7"] diff --git a/keyboards/strech/soulstone/config.h b/keyboards/strech/soulstone/config.h index 425546d77eb..98c17fbee21 100644 --- a/keyboards/strech/soulstone/config.h +++ b/keyboards/strech/soulstone/config.h @@ -16,9 +16,4 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define LAYER_INDICATOR_LED_PIN B3 diff --git a/keyboards/strech/soulstone/keyboard.json b/keyboards/strech/soulstone/keyboard.json index 53037d1460f..32671eba11a 100644 --- a/keyboards/strech/soulstone/keyboard.json +++ b/keyboards/strech/soulstone/keyboard.json @@ -17,6 +17,12 @@ "command": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "diode_direction": "COL2ROW", "matrix_pins": { "cols": ["B7", "F1", "B0", "F4", "E6", "F0", "D5", "D3", "D2", "D1", "B4", "D7", "D6"], diff --git a/keyboards/studiokestra/bourgeau/config.h b/keyboards/studiokestra/bourgeau/config.h deleted file mode 100644 index 91e152a0981..00000000000 --- a/keyboards/studiokestra/bourgeau/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Studio Kestra - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT diff --git a/keyboards/studiokestra/bourgeau/keyboard.json b/keyboards/studiokestra/bourgeau/keyboard.json index 22cc6095363..3e0111a6188 100644 --- a/keyboards/studiokestra/bourgeau/keyboard.json +++ b/keyboards/studiokestra/bourgeau/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "B0", "D2", "D1", "D0", "D3", "B6", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B5", "B4"], "rows": ["D4", "D6", "D7", "D5", "B1", "F0"] diff --git a/keyboards/studiokestra/cascade/config.h b/keyboards/studiokestra/cascade/config.h deleted file mode 100644 index 91e152a0981..00000000000 --- a/keyboards/studiokestra/cascade/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Studio Kestra - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT diff --git a/keyboards/studiokestra/cascade/keyboard.json b/keyboards/studiokestra/cascade/keyboard.json index f6d95261ac1..962276e62aa 100644 --- a/keyboards/studiokestra/cascade/keyboard.json +++ b/keyboards/studiokestra/cascade/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "D5", "D1", "D0", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D6", "D7"], "rows": ["F0", "B1", "D4", "F4", "F1"] diff --git a/keyboards/studiokestra/frl84/config.h b/keyboards/studiokestra/frl84/config.h deleted file mode 100644 index 70ff15e35cf..00000000000 --- a/keyboards/studiokestra/frl84/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2023 Studio Kestra -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/studiokestra/frl84/keyboard.json b/keyboards/studiokestra/frl84/keyboard.json index c0b05dec46d..d131b09eac7 100644 --- a/keyboards/studiokestra/frl84/keyboard.json +++ b/keyboards/studiokestra/frl84/keyboard.json @@ -13,6 +13,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D5", "D0", "F0", "F1", "F4", "F5", "F6", "F7"], "rows": ["D6", "D4", "B4", "D7", "B6", "B5", "C7", "C6", "D2", "D1"] diff --git a/keyboards/studiokestra/galatea/config.h b/keyboards/studiokestra/galatea/config.h deleted file mode 100644 index c37d8a5ad28..00000000000 --- a/keyboards/studiokestra/galatea/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2023 studiokestra (@studiokestra) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/studiokestra/galatea/rev1/keyboard.json b/keyboards/studiokestra/galatea/rev1/keyboard.json index dcc7898f619..ff2adbce4d1 100644 --- a/keyboards/studiokestra/galatea/rev1/keyboard.json +++ b/keyboards/studiokestra/galatea/rev1/keyboard.json @@ -12,6 +12,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "B2", "D5"], "rows": ["D1", "D0", "B0", "B7", "E6", "B3", "B6", "C6", "D6", "D7", "B4", "D3"] diff --git a/keyboards/studiokestra/galatea/rev2/keyboard.json b/keyboards/studiokestra/galatea/rev2/keyboard.json index 5c1363f750c..115b5684cd3 100644 --- a/keyboards/studiokestra/galatea/rev2/keyboard.json +++ b/keyboards/studiokestra/galatea/rev2/keyboard.json @@ -13,6 +13,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "B2", "D5"], "rows": ["D1", "D0", "B0", "B7", "E6", "B3", "B6", "C6", "D6", "D7", "B4", "D3"] diff --git a/keyboards/studiokestra/galatea/rev3/keyboard.json b/keyboards/studiokestra/galatea/rev3/keyboard.json index 1669e3a1836..a4b07bb4df6 100644 --- a/keyboards/studiokestra/galatea/rev3/keyboard.json +++ b/keyboards/studiokestra/galatea/rev3/keyboard.json @@ -13,6 +13,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["GP28", "GP27", "GP26", "GP25", "GP24", "GP23", "GP22", "GP14", "GP6"], "rows": ["GP3", "GP4", "GP1", "GP2", "GP5", "GP29", "GP20", "GP19", "GP17", "GP16", "GP13", "GP12"] diff --git a/keyboards/studiokestra/line_friends_tkl/config.h b/keyboards/studiokestra/line_friends_tkl/config.h deleted file mode 100644 index c37d8a5ad28..00000000000 --- a/keyboards/studiokestra/line_friends_tkl/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2023 studiokestra (@studiokestra) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/studiokestra/line_friends_tkl/keyboard.json b/keyboards/studiokestra/line_friends_tkl/keyboard.json index 9c2db93a92f..d8902e2a2f7 100644 --- a/keyboards/studiokestra/line_friends_tkl/keyboard.json +++ b/keyboards/studiokestra/line_friends_tkl/keyboard.json @@ -12,6 +12,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "B6", "on_state": 1, diff --git a/keyboards/studiokestra/nascent/config.h b/keyboards/studiokestra/nascent/config.h deleted file mode 100644 index f1b419a3e20..00000000000 --- a/keyboards/studiokestra/nascent/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 Studio Kestra - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/studiokestra/nascent/keyboard.json b/keyboards/studiokestra/nascent/keyboard.json index c2b14a71bc4..f411859acc4 100644 --- a/keyboards/studiokestra/nascent/keyboard.json +++ b/keyboards/studiokestra/nascent/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D3", "D7", "D6", "D4", "D5", "B0", "E6"], "rows": ["F5", "F4", "F7", "F6", "C6", "C7", "B4", "B5", "D0", "D1"] diff --git a/keyboards/studiokestra/nue/config.h b/keyboards/studiokestra/nue/config.h deleted file mode 100644 index e2d4270dd62..00000000000 --- a/keyboards/studiokestra/nue/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Studio Kestra - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/studiokestra/nue/keyboard.json b/keyboards/studiokestra/nue/keyboard.json index ffd5581fee5..a98d8382482 100644 --- a/keyboards/studiokestra/nue/keyboard.json +++ b/keyboards/studiokestra/nue/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F6", "F7", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["B0", "B7", "F1", "F5", "F4"] diff --git a/keyboards/suavity/ehan/config.h b/keyboards/suavity/ehan/config.h deleted file mode 100644 index befff72ca81..00000000000 --- a/keyboards/suavity/ehan/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 Suavity Designs - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/suavity/ehan/keyboard.json b/keyboards/suavity/ehan/keyboard.json index a025ec4992b..5a6675bfc39 100755 --- a/keyboards/suavity/ehan/keyboard.json +++ b/keyboards/suavity/ehan/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B12", "C14", "B7", "B6", "B5", "B4", "B3", "A15", "C13", "B9", "B8"], "rows": ["A7", "B0", "A3", "A4", "A5", "A6"] diff --git a/keyboards/subatomic/config.h b/keyboards/subatomic/config.h deleted file mode 100644 index b0c6bce36a6..00000000000 --- a/keyboards/subatomic/config.h +++ /dev/null @@ -1,42 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -// #define AUDIO_VOICES -// #define AUDIO_PIN C6 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/subatomic/keyboard.json b/keyboards/subatomic/keyboard.json index 64f254a087a..0816130bbb8 100644 --- a/keyboards/subatomic/keyboard.json +++ b/keyboards/subatomic/keyboard.json @@ -18,6 +18,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F1", "F0", "B0", "C7", "F4", "F5", "F6", "F7", "D4", "D6", "B4", "D7", "C6", "C5"], "rows": ["D2", "D5", "B5", "B6", "D3"] diff --git a/keyboards/switchplate/southpaw_65/config.h b/keyboards/switchplate/southpaw_65/config.h index 8fe96fc5dd3..a4d8996af99 100644 --- a/keyboards/switchplate/southpaw_65/config.h +++ b/keyboards/switchplate/southpaw_65/config.h @@ -21,11 +21,6 @@ #define MATRIX_ROWS 5 #define MATRIX_COLS 19 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/switchplate/southpaw_65/keyboard.json b/keyboards/switchplate/southpaw_65/keyboard.json index fd879349f25..e4090e49c72 100644 --- a/keyboards/switchplate/southpaw_65/keyboard.json +++ b/keyboards/switchplate/southpaw_65/keyboard.json @@ -19,6 +19,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "B5", "levels": 10 diff --git a/keyboards/switchplate/southpaw_fullsize/config.h b/keyboards/switchplate/southpaw_fullsize/config.h deleted file mode 100644 index 8abadb95221..00000000000 --- a/keyboards/switchplate/southpaw_fullsize/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Ryota Goto - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/switchplate/southpaw_fullsize/keyboard.json b/keyboards/switchplate/southpaw_fullsize/keyboard.json index 822fc660815..ad897821c35 100644 --- a/keyboards/switchplate/southpaw_fullsize/keyboard.json +++ b/keyboards/switchplate/southpaw_fullsize/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A7", "C7", "C6", "C5", "F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "E0", "D7", "D6"], "rows": ["E1", "C0", "C1", "C2", "C3", "C4"] diff --git a/keyboards/switchplate/switchplate910/config.h b/keyboards/switchplate/switchplate910/config.h deleted file mode 100644 index ef90a43c6f2..00000000000 --- a/keyboards/switchplate/switchplate910/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Stefan Karsch - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/switchplate/switchplate910/keyboard.json b/keyboards/switchplate/switchplate910/keyboard.json index 40a2a246374..47353fe81ea 100644 --- a/keyboards/switchplate/switchplate910/keyboard.json +++ b/keyboards/switchplate/switchplate910/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "B3", "B2", "B0", "B1"], "rows": ["F4", "F5", "F6", "F7", "D1"] diff --git a/keyboards/sx60/config.h b/keyboards/sx60/config.h index 46921665c9e..a37aeb6a7ba 100755 --- a/keyboards/sx60/config.h +++ b/keyboards/sx60/config.h @@ -31,9 +31,3 @@ along with this program. If not, see . /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sx60/keyboard.json b/keyboards/sx60/keyboard.json index 42eefbc81a8..ba5b439cec2 100644 --- a/keyboards/sx60/keyboard.json +++ b/keyboards/sx60/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "B7" }, diff --git a/keyboards/system76/launch_1/config.h b/keyboards/system76/launch_1/config.h index 986a4db76e0..7e7fa9be9c3 100644 --- a/keyboards/system76/launch_1/config.h +++ b/keyboards/system76/launch_1/config.h @@ -19,12 +19,6 @@ #define RGB_MATRIX_DISABLE_KEYCODES // Disables control of rgb matrix by keycodes (must use code functions to control the feature) -// Mechanical locking support; use KC_LCAP, KC_LNUM, or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE - -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE - // I2C { #define F_SCL 100000UL // Run I2C bus at 100 kHz #define I2C_START_RETRY_COUNT 20 diff --git a/keyboards/system76/launch_1/keyboard.json b/keyboards/system76/launch_1/keyboard.json index 28a505448ef..929b8c9794d 100644 --- a/keyboards/system76/launch_1/keyboard.json +++ b/keyboards/system76/launch_1/keyboard.json @@ -19,6 +19,12 @@ "raw": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "ws2812": { "pin": "E2" }, From 84134115711f5165bffc862e6386346b29099c18 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 12:38:43 -0700 Subject: [PATCH 048/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: S, Part 1 (#23783) Affects: - `salicylic_acid3/7skb/rev1` - `salicylic_acid3/7splus` - `salicylic_acid3/ajisai74` - `salicylic_acid3/ergoarrows` - `salicylic_acid3/getta25/rev1` - `salicylic_acid3/jisplit89/rev1` - `salicylic_acid3/nafuda` - `salicylic_acid3/naked48/rev1` - `salicylic_acid3/naked60/rev1` - `salicylic_acid3/naked64/rev1` - `salicylic_acid3/nknl7en` - `salicylic_acid3/nknl7jp` - `salicylic_acid3/setta21/rev1` - `sandwich/keeb68` - `satt/vision` - `sauce/mild` - `scatter42` - `sck/gtm` - `sck/m0116b` - `sck/neiso` - `sekigon/grs_70ec` - `sendyyeah/pix` - `senselessclay/ck65` - `senselessclay/gos65` - `senselessclay/had60` - `sentraq/s60_x/default` - `sentraq/s60_x/rgb` - `sentraq/s65_plus` - `sentraq/s65_x` - `sets3n/kk980` - `shambles` - `shandoncodes/flygone60/rev3` - `shandoncodes/mino/hotswap` - `shapeshifter4060` - `shiro` - `shk9` - `sidderskb/majbritt/rev2` - `sixkeyboard` - `skeletonkbd/skeletonnumpad` - `skme/zeno` --- keyboards/salicylic_acid3/7skb/rev1/config.h | 5 --- .../salicylic_acid3/7skb/rev1/keyboard.json | 6 +++ keyboards/salicylic_acid3/7splus/config.h | 5 --- .../salicylic_acid3/7splus/keyboard.json | 6 +++ keyboards/salicylic_acid3/ajisai74/config.h | 5 --- .../salicylic_acid3/ajisai74/keyboard.json | 6 +++ keyboards/salicylic_acid3/ergoarrows/config.h | 5 --- .../salicylic_acid3/ergoarrows/keyboard.json | 6 +++ .../salicylic_acid3/getta25/rev1/config.h | 5 --- .../getta25/rev1/keyboard.json | 6 +++ .../salicylic_acid3/jisplit89/rev1/config.h | 5 --- .../jisplit89/rev1/keyboard.json | 6 +++ keyboards/salicylic_acid3/nafuda/config.h | 5 --- .../salicylic_acid3/nafuda/keyboard.json | 6 +++ .../salicylic_acid3/naked48/rev1/config.h | 23 ----------- .../naked48/rev1/keyboard.json | 6 +++ .../salicylic_acid3/naked60/rev1/config.h | 23 ----------- .../naked60/rev1/keyboard.json | 6 +++ .../salicylic_acid3/naked64/rev1/config.h | 5 --- .../naked64/rev1/keyboard.json | 6 +++ keyboards/salicylic_acid3/nknl7en/config.h | 5 --- .../salicylic_acid3/nknl7en/keyboard.json | 6 +++ keyboards/salicylic_acid3/nknl7jp/config.h | 5 --- .../salicylic_acid3/nknl7jp/keyboard.json | 6 +++ .../salicylic_acid3/setta21/rev1/config.h | 5 --- .../setta21/rev1/keyboard.json | 6 +++ keyboards/sandwich/keeb68/config.h | 39 ------------------- keyboards/sandwich/keeb68/keyboard.json | 6 +++ keyboards/satt/vision/config.h | 39 ------------------- keyboards/satt/vision/keyboard.json | 6 +++ keyboards/sauce/mild/config.h | 22 ----------- keyboards/sauce/mild/keyboard.json | 6 +++ keyboards/scatter42/config.h | 39 ------------------- keyboards/scatter42/keyboard.json | 6 +++ keyboards/sck/gtm/config.h | 7 ---- keyboards/sck/gtm/keyboard.json | 6 +++ keyboards/sck/m0116b/config.h | 39 ------------------- keyboards/sck/m0116b/keyboard.json | 6 +++ keyboards/sck/neiso/config.h | 39 ------------------- keyboards/sck/neiso/keyboard.json | 6 +++ keyboards/sekigon/grs_70ec/config.h | 5 --- keyboards/sekigon/grs_70ec/keyboard.json | 6 +++ keyboards/sendyyeah/pix/config.h | 6 --- keyboards/sendyyeah/pix/keyboard.json | 6 +++ keyboards/senselessclay/ck65/config.h | 5 --- keyboards/senselessclay/ck65/keyboard.json | 6 +++ keyboards/senselessclay/gos65/config.h | 39 ------------------- keyboards/senselessclay/gos65/keyboard.json | 6 +++ keyboards/senselessclay/had60/config.h | 39 ------------------- keyboards/senselessclay/had60/keyboard.json | 6 +++ keyboards/sentraq/s60_x/default/config.h | 6 --- keyboards/sentraq/s60_x/default/keyboard.json | 6 +++ keyboards/sentraq/s60_x/rgb/config.h | 7 ---- keyboards/sentraq/s60_x/rgb/keyboard.json | 6 +++ keyboards/sentraq/s65_plus/config.h | 6 --- keyboards/sentraq/s65_plus/keyboard.json | 6 +++ keyboards/sentraq/s65_x/config.h | 6 --- keyboards/sentraq/s65_x/keyboard.json | 6 +++ keyboards/sets3n/kk980/config.h | 6 --- keyboards/sets3n/kk980/keyboard.json | 6 +++ keyboards/shambles/config.h | 7 ---- keyboards/shambles/keyboard.json | 6 +++ .../shandoncodes/flygone60/rev3/config.h | 23 ----------- .../shandoncodes/flygone60/rev3/keyboard.json | 6 +++ keyboards/shandoncodes/mino/hotswap/config.h | 23 ----------- .../shandoncodes/mino/hotswap/keyboard.json | 6 +++ keyboards/shapeshifter4060/config.h | 39 ------------------- keyboards/shapeshifter4060/keyboard.json | 6 +++ keyboards/shiro/config.h | 39 ------------------- keyboards/shiro/keyboard.json | 6 +++ keyboards/shk9/config.h | 23 ----------- keyboards/shk9/keyboard.json | 6 +++ keyboards/sidderskb/majbritt/rev2/config.h | 23 ----------- .../sidderskb/majbritt/rev2/keyboard.json | 6 +++ keyboards/sixkeyboard/config.h | 5 --- keyboards/sixkeyboard/keyboard.json | 6 +++ keyboards/skeletonkbd/skeletonnumpad/config.h | 39 ------------------- .../skeletonkbd/skeletonnumpad/keyboard.json | 6 +++ keyboards/skme/zeno/config.h | 23 ----------- keyboards/skme/zeno/keyboard.json | 6 +++ 80 files changed, 240 insertions(+), 694 deletions(-) delete mode 100644 keyboards/salicylic_acid3/naked48/rev1/config.h delete mode 100644 keyboards/salicylic_acid3/naked60/rev1/config.h delete mode 100644 keyboards/sandwich/keeb68/config.h delete mode 100644 keyboards/satt/vision/config.h delete mode 100644 keyboards/sauce/mild/config.h delete mode 100644 keyboards/scatter42/config.h delete mode 100644 keyboards/sck/gtm/config.h delete mode 100644 keyboards/sck/m0116b/config.h delete mode 100644 keyboards/sck/neiso/config.h delete mode 100644 keyboards/senselessclay/gos65/config.h delete mode 100644 keyboards/senselessclay/had60/config.h delete mode 100644 keyboards/sentraq/s60_x/rgb/config.h delete mode 100644 keyboards/shambles/config.h delete mode 100644 keyboards/shandoncodes/flygone60/rev3/config.h delete mode 100644 keyboards/shandoncodes/mino/hotswap/config.h delete mode 100644 keyboards/shapeshifter4060/config.h delete mode 100644 keyboards/shiro/config.h delete mode 100644 keyboards/shk9/config.h delete mode 100644 keyboards/sidderskb/majbritt/rev2/config.h delete mode 100644 keyboards/skeletonkbd/skeletonnumpad/config.h delete mode 100644 keyboards/skme/zeno/config.h diff --git a/keyboards/salicylic_acid3/7skb/rev1/config.h b/keyboards/salicylic_acid3/7skb/rev1/config.h index 644ce27575b..c1a6005b587 100644 --- a/keyboards/salicylic_acid3/7skb/rev1/config.h +++ b/keyboards/salicylic_acid3/7skb/rev1/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN B6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 180 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/7skb/rev1/keyboard.json b/keyboards/salicylic_acid3/7skb/rev1/keyboard.json index 5b5e63b7ca2..73b3c0bec7c 100644 --- a/keyboards/salicylic_acid3/7skb/rev1/keyboard.json +++ b/keyboards/salicylic_acid3/7skb/rev1/keyboard.json @@ -16,6 +16,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/salicylic_acid3/7splus/config.h b/keyboards/salicylic_acid3/7splus/config.h index 3a82c91526a..1139de696fd 100644 --- a/keyboards/salicylic_acid3/7splus/config.h +++ b/keyboards/salicylic_acid3/7splus/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN B6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 180 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/7splus/keyboard.json b/keyboards/salicylic_acid3/7splus/keyboard.json index 38ca750cd47..c33e79b52fc 100644 --- a/keyboards/salicylic_acid3/7splus/keyboard.json +++ b/keyboards/salicylic_acid3/7splus/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5"], "rows": ["D1", "D0", "D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/salicylic_acid3/ajisai74/config.h b/keyboards/salicylic_acid3/ajisai74/config.h index 8f24db085d1..9e47a9c2b44 100644 --- a/keyboards/salicylic_acid3/ajisai74/config.h +++ b/keyboards/salicylic_acid3/ajisai74/config.h @@ -18,8 +18,3 @@ along with this program. If not, see . #pragma once #define SPLIT_HAND_PIN B6 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/salicylic_acid3/ajisai74/keyboard.json b/keyboards/salicylic_acid3/ajisai74/keyboard.json index b29c5bf178c..fd008007157 100644 --- a/keyboards/salicylic_acid3/ajisai74/keyboard.json +++ b/keyboards/salicylic_acid3/ajisai74/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5", "D3"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/salicylic_acid3/ergoarrows/config.h b/keyboards/salicylic_acid3/ergoarrows/config.h index e373d2a88b7..3b5e630f48d 100644 --- a/keyboards/salicylic_acid3/ergoarrows/config.h +++ b/keyboards/salicylic_acid3/ergoarrows/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN B6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 90 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/ergoarrows/keyboard.json b/keyboards/salicylic_acid3/ergoarrows/keyboard.json index bb9956a2d07..0993eb1b9be 100644 --- a/keyboards/salicylic_acid3/ergoarrows/keyboard.json +++ b/keyboards/salicylic_acid3/ergoarrows/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/salicylic_acid3/getta25/rev1/config.h b/keyboards/salicylic_acid3/getta25/rev1/config.h index a8fd75dc9db..b2fb6591859 100644 --- a/keyboards/salicylic_acid3/getta25/rev1/config.h +++ b/keyboards/salicylic_acid3/getta25/rev1/config.h @@ -18,11 +18,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 180 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/getta25/rev1/keyboard.json b/keyboards/salicylic_acid3/getta25/rev1/keyboard.json index 3399f9e081b..884ed684eaa 100644 --- a/keyboards/salicylic_acid3/getta25/rev1/keyboard.json +++ b/keyboards/salicylic_acid3/getta25/rev1/keyboard.json @@ -16,6 +16,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "hue_steps": 10, "led_count": 9, diff --git a/keyboards/salicylic_acid3/jisplit89/rev1/config.h b/keyboards/salicylic_acid3/jisplit89/rev1/config.h index 144d743b327..fb6c21aec85 100644 --- a/keyboards/salicylic_acid3/jisplit89/rev1/config.h +++ b/keyboards/salicylic_acid3/jisplit89/rev1/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN B6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 180 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/jisplit89/rev1/keyboard.json b/keyboards/salicylic_acid3/jisplit89/rev1/keyboard.json index 7c72c9b17aa..e36b27bd2f0 100644 --- a/keyboards/salicylic_acid3/jisplit89/rev1/keyboard.json +++ b/keyboards/salicylic_acid3/jisplit89/rev1/keyboard.json @@ -16,6 +16,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5"], "rows": ["D1", "D0", "D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/salicylic_acid3/nafuda/config.h b/keyboards/salicylic_acid3/nafuda/config.h index fb94963ca0e..552fb486119 100644 --- a/keyboards/salicylic_acid3/nafuda/config.h +++ b/keyboards/salicylic_acid3/nafuda/config.h @@ -18,11 +18,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 180 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/nafuda/keyboard.json b/keyboards/salicylic_acid3/nafuda/keyboard.json index 59e646c5b7f..87dceed05f2 100644 --- a/keyboards/salicylic_acid3/nafuda/keyboard.json +++ b/keyboards/salicylic_acid3/nafuda/keyboard.json @@ -36,6 +36,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6"], "rows": ["D1", "D0", "D4"] diff --git a/keyboards/salicylic_acid3/naked48/rev1/config.h b/keyboards/salicylic_acid3/naked48/rev1/config.h deleted file mode 100644 index 2f62289261b..00000000000 --- a/keyboards/salicylic_acid3/naked48/rev1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Salicylic_Acid - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/salicylic_acid3/naked48/rev1/keyboard.json b/keyboards/salicylic_acid3/naked48/rev1/keyboard.json index f390db51f14..2786f50a03f 100644 --- a/keyboards/salicylic_acid3/naked48/rev1/keyboard.json +++ b/keyboards/salicylic_acid3/naked48/rev1/keyboard.json @@ -15,6 +15,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgb_matrix": { "driver": "ws2812" }, diff --git a/keyboards/salicylic_acid3/naked60/rev1/config.h b/keyboards/salicylic_acid3/naked60/rev1/config.h deleted file mode 100644 index 2f62289261b..00000000000 --- a/keyboards/salicylic_acid3/naked60/rev1/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Salicylic_Acid - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/salicylic_acid3/naked60/rev1/keyboard.json b/keyboards/salicylic_acid3/naked60/rev1/keyboard.json index 1916b01eb21..52a503c9400 100644 --- a/keyboards/salicylic_acid3/naked60/rev1/keyboard.json +++ b/keyboards/salicylic_acid3/naked60/rev1/keyboard.json @@ -14,6 +14,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "D7", "E6", "B4", "B5", "D3"], "rows": ["B6", "D1", "D0", "D4", "C6"] diff --git a/keyboards/salicylic_acid3/naked64/rev1/config.h b/keyboards/salicylic_acid3/naked64/rev1/config.h index a8fd75dc9db..b2fb6591859 100644 --- a/keyboards/salicylic_acid3/naked64/rev1/config.h +++ b/keyboards/salicylic_acid3/naked64/rev1/config.h @@ -18,11 +18,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 180 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/naked64/rev1/keyboard.json b/keyboards/salicylic_acid3/naked64/rev1/keyboard.json index 8dc9a49c7a6..6cc68976597 100644 --- a/keyboards/salicylic_acid3/naked64/rev1/keyboard.json +++ b/keyboards/salicylic_acid3/naked64/rev1/keyboard.json @@ -16,6 +16,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "D3"], "rows": ["D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"] diff --git a/keyboards/salicylic_acid3/nknl7en/config.h b/keyboards/salicylic_acid3/nknl7en/config.h index 5bc9c2c789b..5b4a4a25f33 100644 --- a/keyboards/salicylic_acid3/nknl7en/config.h +++ b/keyboards/salicylic_acid3/nknl7en/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN B6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 180 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/nknl7en/keyboard.json b/keyboards/salicylic_acid3/nknl7en/keyboard.json index 4d6b494b9fb..25165663f5a 100644 --- a/keyboards/salicylic_acid3/nknl7en/keyboard.json +++ b/keyboards/salicylic_acid3/nknl7en/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5", "D2"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/salicylic_acid3/nknl7jp/config.h b/keyboards/salicylic_acid3/nknl7jp/config.h index 5bc9c2c789b..5b4a4a25f33 100644 --- a/keyboards/salicylic_acid3/nknl7jp/config.h +++ b/keyboards/salicylic_acid3/nknl7jp/config.h @@ -19,11 +19,6 @@ along with this program. If not, see . #define SPLIT_HAND_PIN B6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 180 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/nknl7jp/keyboard.json b/keyboards/salicylic_acid3/nknl7jp/keyboard.json index 0f260cdfdd7..179860ea293 100644 --- a/keyboards/salicylic_acid3/nknl7jp/keyboard.json +++ b/keyboards/salicylic_acid3/nknl7jp/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5", "D2"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/salicylic_acid3/setta21/rev1/config.h b/keyboards/salicylic_acid3/setta21/rev1/config.h index fb94963ca0e..552fb486119 100644 --- a/keyboards/salicylic_acid3/setta21/rev1/config.h +++ b/keyboards/salicylic_acid3/setta21/rev1/config.h @@ -18,11 +18,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #ifndef IOS_DEVICE_ENABLE #define RGBLIGHT_LIMIT_VAL 180 #define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/salicylic_acid3/setta21/rev1/keyboard.json b/keyboards/salicylic_acid3/setta21/rev1/keyboard.json index 0d20c99f269..452d0211c37 100644 --- a/keyboards/salicylic_acid3/setta21/rev1/keyboard.json +++ b/keyboards/salicylic_acid3/setta21/rev1/keyboard.json @@ -15,6 +15,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "rgblight": { "hue_steps": 10, "led_count": 21, diff --git a/keyboards/sandwich/keeb68/config.h b/keyboards/sandwich/keeb68/config.h deleted file mode 100644 index fdd0cd8c864..00000000000 --- a/keyboards/sandwich/keeb68/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 sandwich - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/sandwich/keeb68/keyboard.json b/keyboards/sandwich/keeb68/keyboard.json index ffad82b8271..ad3ced0da2c 100644 --- a/keyboards/sandwich/keeb68/keyboard.json +++ b/keyboards/sandwich/keeb68/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "C6", "F7", "E6", "B7", "D0", "D1", "D2", "D3", "D4", "D6", "D7", "B4", "B5"], "rows": ["F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/satt/vision/config.h b/keyboards/satt/vision/config.h deleted file mode 100644 index 4b007cf387e..00000000000 --- a/keyboards/satt/vision/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2015 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/satt/vision/keyboard.json b/keyboards/satt/vision/keyboard.json index 7683855f42b..88ec732cd65 100644 --- a/keyboards/satt/vision/keyboard.json +++ b/keyboards/satt/vision/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B1", "B0", "A7", "A6", "A5", "A4", "A3", "B8", "B7", "B6", "B5", "B4", "B3", "A15"], "rows": ["B12", "B2", "A2", "A1"] diff --git a/keyboards/sauce/mild/config.h b/keyboards/sauce/mild/config.h deleted file mode 100644 index 037c0b0a232..00000000000 --- a/keyboards/sauce/mild/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Andy Yong (Sauce) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sauce/mild/keyboard.json b/keyboards/sauce/mild/keyboard.json index 48cc1c772f3..5f827ec4beb 100644 --- a/keyboards/sauce/mild/keyboard.json +++ b/keyboards/sauce/mild/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A10", "A9", "A8", "B11", "B10", "B2", "B1", "B0", "A7", "A5", "A4", "A3", "A2", "A1", "B6", "B5", "B4"], "rows": ["C13", "C14", "C15", "A15", "F0", "F1"] diff --git a/keyboards/scatter42/config.h b/keyboards/scatter42/config.h deleted file mode 100644 index 2021cca3b0f..00000000000 --- a/keyboards/scatter42/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 bbrfkr - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/scatter42/keyboard.json b/keyboards/scatter42/keyboard.json index 7ccf9cb9fcf..63aaaa46b2c 100644 --- a/keyboards/scatter42/keyboard.json +++ b/keyboards/scatter42/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3"], "rows": ["D4", "C6", "D7", "E6"] diff --git a/keyboards/sck/gtm/config.h b/keyboards/sck/gtm/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/sck/gtm/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sck/gtm/keyboard.json b/keyboards/sck/gtm/keyboard.json index 54f6eda446b..7ed3915114a 100644 --- a/keyboards/sck/gtm/keyboard.json +++ b/keyboards/sck/gtm/keyboard.json @@ -36,6 +36,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "B5", "B6", "B7", "C7", "D0"], "rows": ["C4", "C5", "D1"] diff --git a/keyboards/sck/m0116b/config.h b/keyboards/sck/m0116b/config.h deleted file mode 100644 index a3c400ab478..00000000000 --- a/keyboards/sck/m0116b/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 jrfhoutx - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/sck/m0116b/keyboard.json b/keyboards/sck/m0116b/keyboard.json index 68184f340cf..ec96ebc5a34 100644 --- a/keyboards/sck/m0116b/keyboard.json +++ b/keyboards/sck/m0116b/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D5", "D3", "D2", "D0", "B3", "B2", "B1", "B0", "E6", "B5", "B6", "C6", "C7", "F7", "D4", "D6", "D7", "B4"], "rows": ["D1", "F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/sck/neiso/config.h b/keyboards/sck/neiso/config.h deleted file mode 100644 index a3c400ab478..00000000000 --- a/keyboards/sck/neiso/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 jrfhoutx - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/sck/neiso/keyboard.json b/keyboards/sck/neiso/keyboard.json index 59132579c92..15cec588492 100644 --- a/keyboards/sck/neiso/keyboard.json +++ b/keyboards/sck/neiso/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "D2", "F5", "F7", "B4"], "rows": ["F4"] diff --git a/keyboards/sekigon/grs_70ec/config.h b/keyboards/sekigon/grs_70ec/config.h index ad92abd5d71..4541823684a 100644 --- a/keyboards/sekigon/grs_70ec/config.h +++ b/keyboards/sekigon/grs_70ec/config.h @@ -47,11 +47,6 @@ along with this program. If not, see . #define EE_HANDS -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/sekigon/grs_70ec/keyboard.json b/keyboards/sekigon/grs_70ec/keyboard.json index e940e71d884..fbea73fb996 100644 --- a/keyboards/sekigon/grs_70ec/keyboard.json +++ b/keyboards/sekigon/grs_70ec/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "split": { "enabled": true, "soft_serial_pin": "D3" diff --git a/keyboards/sendyyeah/pix/config.h b/keyboards/sendyyeah/pix/config.h index d6dfea8506b..3a6cb6297f2 100644 --- a/keyboards/sendyyeah/pix/config.h +++ b/keyboards/sendyyeah/pix/config.h @@ -19,11 +19,5 @@ #define OLED_FONT_H "keymaps/default/glcdfont.c" #define OLED_TIMEOUT 600000 // Turn of after 10 minutes -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_LAYERS #define RGBLIGHT_LAYER_BLINK diff --git a/keyboards/sendyyeah/pix/keyboard.json b/keyboards/sendyyeah/pix/keyboard.json index 40c432fb01c..6a9864cc351 100644 --- a/keyboards/sendyyeah/pix/keyboard.json +++ b/keyboards/sendyyeah/pix/keyboard.json @@ -47,6 +47,12 @@ "oled": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["C6", "D7", "E6", "B4", "F6"] diff --git a/keyboards/senselessclay/ck65/config.h b/keyboards/senselessclay/ck65/config.h index 7c029a283db..1dd42538e6d 100644 --- a/keyboards/senselessclay/ck65/config.h +++ b/keyboards/senselessclay/ck65/config.h @@ -17,11 +17,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/senselessclay/ck65/keyboard.json b/keyboards/senselessclay/ck65/keyboard.json index 6ac3de4b8ae..150479177d3 100644 --- a/keyboards/senselessclay/ck65/keyboard.json +++ b/keyboards/senselessclay/ck65/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "D5", "D3", "D2", "D1", "D0", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["B3", "B2", "F1", "F4", "F5"] diff --git a/keyboards/senselessclay/gos65/config.h b/keyboards/senselessclay/gos65/config.h deleted file mode 100644 index cef01cf341c..00000000000 --- a/keyboards/senselessclay/gos65/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Hadi Iskandarani - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/senselessclay/gos65/keyboard.json b/keyboards/senselessclay/gos65/keyboard.json index bf79cf7fff5..b869d913015 100644 --- a/keyboards/senselessclay/gos65/keyboard.json +++ b/keyboards/senselessclay/gos65/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "D5", "D3", "D2", "D1", "D0", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["B1", "B2", "F1", "F6", "F5"] diff --git a/keyboards/senselessclay/had60/config.h b/keyboards/senselessclay/had60/config.h deleted file mode 100644 index bdeea958dc7..00000000000 --- a/keyboards/senselessclay/had60/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 Hadi Iskandarani - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/senselessclay/had60/keyboard.json b/keyboards/senselessclay/had60/keyboard.json index 4aa263fb7a9..ca05589a2e4 100644 --- a/keyboards/senselessclay/had60/keyboard.json +++ b/keyboards/senselessclay/had60/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "D5", "D3", "D2", "D1", "D0", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F1", "F0", "F7", "F6", "F5"] diff --git a/keyboards/sentraq/s60_x/default/config.h b/keyboards/sentraq/s60_x/default/config.h index c265dc1ef12..b4ee0992fe6 100644 --- a/keyboards/sentraq/s60_x/default/config.h +++ b/keyboards/sentraq/s60_x/default/config.h @@ -1,9 +1,3 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define NO_ACTION_ONESHOT diff --git a/keyboards/sentraq/s60_x/default/keyboard.json b/keyboards/sentraq/s60_x/default/keyboard.json index 262c3ae862a..1f65b907750 100644 --- a/keyboards/sentraq/s60_x/default/keyboard.json +++ b/keyboards/sentraq/s60_x/default/keyboard.json @@ -8,6 +8,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "E6", "F1"], "rows": ["B7", "B3", "B2", "B1", "B0"] diff --git a/keyboards/sentraq/s60_x/rgb/config.h b/keyboards/sentraq/s60_x/rgb/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/sentraq/s60_x/rgb/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sentraq/s60_x/rgb/keyboard.json b/keyboards/sentraq/s60_x/rgb/keyboard.json index 20b67976c4d..c2be7f43564 100644 --- a/keyboards/sentraq/s60_x/rgb/keyboard.json +++ b/keyboards/sentraq/s60_x/rgb/keyboard.json @@ -10,6 +10,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "B6", "C6", "C7", "F1", "F0", "E6", "B3", "B2", "B1", "B0"], "rows": ["B5", "B4", "D7", "D6", "D4"] diff --git a/keyboards/sentraq/s65_plus/config.h b/keyboards/sentraq/s65_plus/config.h index 675b4c58fa7..1c37c896709 100644 --- a/keyboards/sentraq/s65_plus/config.h +++ b/keyboards/sentraq/s65_plus/config.h @@ -1,9 +1,3 @@ #pragma once #define RGBLIGHT_EFFECT_KNIGHT_OFFSET 20 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sentraq/s65_plus/keyboard.json b/keyboards/sentraq/s65_plus/keyboard.json index d802c88d9c5..01e2f0a2750 100644 --- a/keyboards/sentraq/s65_plus/keyboard.json +++ b/keyboards/sentraq/s65_plus/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F6", "F5", "F4", "F1", "F0", "E6", "B0", "B1", "D5", "B2", "B3", "D0", "D1", "D2", "D4", "D6", "D7", "F7"], "rows": ["C7", "C6", "B6", "B5", "B4"] diff --git a/keyboards/sentraq/s65_x/config.h b/keyboards/sentraq/s65_x/config.h index 675b4c58fa7..1c37c896709 100644 --- a/keyboards/sentraq/s65_x/config.h +++ b/keyboards/sentraq/s65_x/config.h @@ -1,9 +1,3 @@ #pragma once #define RGBLIGHT_EFFECT_KNIGHT_OFFSET 20 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sentraq/s65_x/keyboard.json b/keyboards/sentraq/s65_x/keyboard.json index d5b20392e3b..0d0b0fc5fd3 100644 --- a/keyboards/sentraq/s65_x/keyboard.json +++ b/keyboards/sentraq/s65_x/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F1", "F0", "E6", "B0", "B1", "D5", "B2", "B3", "D0", "D1", "D2", "D4", "D6", "D7", "F7"], "rows": ["C7", "C6", "B6", "B5", "B4"] diff --git a/keyboards/sets3n/kk980/config.h b/keyboards/sets3n/kk980/config.h index 5e35453f1f2..2855d8602f0 100644 --- a/keyboards/sets3n/kk980/config.h +++ b/keyboards/sets3n/kk980/config.h @@ -16,11 +16,5 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGBLIGHT_LAYERS #define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF diff --git a/keyboards/sets3n/kk980/keyboard.json b/keyboards/sets3n/kk980/keyboard.json index 0a4a87d2992..1589b0a7b4a 100644 --- a/keyboards/sets3n/kk980/keyboard.json +++ b/keyboards/sets3n/kk980/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "B1", "B0", "D0", "D1"], "rows": ["B2", "B3", "D3", "D4", "D5", "D6"] diff --git a/keyboards/shambles/config.h b/keyboards/shambles/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/shambles/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/shambles/keyboard.json b/keyboards/shambles/keyboard.json index 7f11204be0e..34ec240cae2 100644 --- a/keyboards/shambles/keyboard.json +++ b/keyboards/shambles/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "B6", "B2", "F4", "F6"], "rows": ["F5", "B3", "B1", "F7"] diff --git a/keyboards/shandoncodes/flygone60/rev3/config.h b/keyboards/shandoncodes/flygone60/rev3/config.h deleted file mode 100644 index 339cf3c782f..00000000000 --- a/keyboards/shandoncodes/flygone60/rev3/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 ShandonCodes - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/shandoncodes/flygone60/rev3/keyboard.json b/keyboards/shandoncodes/flygone60/rev3/keyboard.json index 70a57528f17..6e2e62701f8 100644 --- a/keyboards/shandoncodes/flygone60/rev3/keyboard.json +++ b/keyboards/shandoncodes/flygone60/rev3/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "E6", "B1", "B2", "B3", "B0", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"], "rows": ["D2", "D3", "D5", "B7", "F1"] diff --git a/keyboards/shandoncodes/mino/hotswap/config.h b/keyboards/shandoncodes/mino/hotswap/config.h deleted file mode 100644 index 45fec5af48a..00000000000 --- a/keyboards/shandoncodes/mino/hotswap/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 ShandonCodes - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/shandoncodes/mino/hotswap/keyboard.json b/keyboards/shandoncodes/mino/hotswap/keyboard.json index 56bca83a926..5bd0b933cef 100644 --- a/keyboards/shandoncodes/mino/hotswap/keyboard.json +++ b/keyboards/shandoncodes/mino/hotswap/keyboard.json @@ -18,6 +18,12 @@ "oled": true, "wpm": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "B5", "B4", "E6", "D7"], "rows": ["D3", "C6", "D4", "D2"] diff --git a/keyboards/shapeshifter4060/config.h b/keyboards/shapeshifter4060/config.h deleted file mode 100644 index 514076daf84..00000000000 --- a/keyboards/shapeshifter4060/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Chuck "@vosechu" Lauer Vose - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/shapeshifter4060/keyboard.json b/keyboards/shapeshifter4060/keyboard.json index 8c83153d007..9274923088d 100644 --- a/keyboards/shapeshifter4060/keyboard.json +++ b/keyboards/shapeshifter4060/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "B1", "B3", "B2", "B6", "B5", "B4", "E6", "D7", "C6", "D4"], "rows": ["F4", "F5", "F6", "F7"] diff --git a/keyboards/shiro/config.h b/keyboards/shiro/config.h deleted file mode 100644 index e962d786668..00000000000 --- a/keyboards/shiro/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 T.Shinohara - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/shiro/keyboard.json b/keyboards/shiro/keyboard.json index bd541b3e7d8..c401126591f 100644 --- a/keyboards/shiro/keyboard.json +++ b/keyboards/shiro/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6"], "rows": ["D4", "C6", "D7", "E6", "B4"] diff --git a/keyboards/shk9/config.h b/keyboards/shk9/config.h deleted file mode 100644 index deabfc99736..00000000000 --- a/keyboards/shk9/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2020 Sam Hudson - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/shk9/keyboard.json b/keyboards/shk9/keyboard.json index 19c30ec08dc..968f2d91f7d 100644 --- a/keyboards/shk9/keyboard.json +++ b/keyboards/shk9/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B4", "B5"], "rows": ["B0", "B1", "B2"] diff --git a/keyboards/sidderskb/majbritt/rev2/config.h b/keyboards/sidderskb/majbritt/rev2/config.h deleted file mode 100644 index ced239c8334..00000000000 --- a/keyboards/sidderskb/majbritt/rev2/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sleepdealer - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/sidderskb/majbritt/rev2/keyboard.json b/keyboards/sidderskb/majbritt/rev2/keyboard.json index 2c71f49dfdb..69c24b08abd 100644 --- a/keyboards/sidderskb/majbritt/rev2/keyboard.json +++ b/keyboards/sidderskb/majbritt/rev2/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "C7", "B6", "D6", "B4", "D4", "D7", "D5", "D3", "D2", "D1", "D0"], "rows": ["B0", "B1", "F7", "C6", "B5"] diff --git a/keyboards/sixkeyboard/config.h b/keyboards/sixkeyboard/config.h index ad495eb23c0..9afa126d801 100644 --- a/keyboards/sixkeyboard/config.h +++ b/keyboards/sixkeyboard/config.h @@ -22,11 +22,6 @@ along with this program. If not, see . #define MATRIX_ROWS 2 #define MATRIX_COLS 3 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/sixkeyboard/keyboard.json b/keyboards/sixkeyboard/keyboard.json index aff5c985f79..1c103e03b3d 100644 --- a/keyboards/sixkeyboard/keyboard.json +++ b/keyboards/sixkeyboard/keyboard.json @@ -15,6 +15,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "processor": "atmega16u2", "bootloader": "atmel-dfu", "community_layouts": ["ortho_2x3"], diff --git a/keyboards/skeletonkbd/skeletonnumpad/config.h b/keyboards/skeletonkbd/skeletonnumpad/config.h deleted file mode 100644 index 1636a977cf0..00000000000 --- a/keyboards/skeletonkbd/skeletonnumpad/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2022 SkeletonKBD - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/skeletonkbd/skeletonnumpad/keyboard.json b/keyboards/skeletonkbd/skeletonnumpad/keyboard.json index 5b72e5d8ec6..cd007f81b64 100644 --- a/keyboards/skeletonkbd/skeletonnumpad/keyboard.json +++ b/keyboards/skeletonkbd/skeletonnumpad/keyboard.json @@ -38,6 +38,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D7", "B4", "B5"], "rows": ["B6", "C6", "C7", "F7", "F6"] diff --git a/keyboards/skme/zeno/config.h b/keyboards/skme/zeno/config.h deleted file mode 100644 index 6c8ce4c0eaf..00000000000 --- a/keyboards/skme/zeno/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Holten Campbell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/skme/zeno/keyboard.json b/keyboards/skme/zeno/keyboard.json index bc359675376..bbea513ed59 100644 --- a/keyboards/skme/zeno/keyboard.json +++ b/keyboards/skme/zeno/keyboard.json @@ -24,6 +24,12 @@ "command": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "layouts": { "LAYOUT_default": { "layout": [ From 8abd87d586d023105d689fd22bd9d3b7d514c454 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 19:14:06 -0700 Subject: [PATCH 049/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: W, Part 2 (#23789) Affects: - `wilba_tech/rama_works_kara` - `wilba_tech/rama_works_koyu` - `wilba_tech/rama_works_m10_b` - `wilba_tech/rama_works_m10_c` - `wilba_tech/rama_works_m50_a` - `wilba_tech/rama_works_m50_ax` - `wilba_tech/rama_works_m60_a` - `wilba_tech/rama_works_m65_b` - `wilba_tech/rama_works_m65_bx` - `wilba_tech/rama_works_m6_a` - `wilba_tech/rama_works_m6_b` - `wilba_tech/rama_works_u80_a` - `wilba_tech/wt60_a` - `wilba_tech/wt60_b` - `wilba_tech/wt60_bx` - `wilba_tech/wt60_c` - `wilba_tech/wt60_d` - `wilba_tech/wt60_g` - `wilba_tech/wt60_g2` - `wilba_tech/wt60_h1` - `wilba_tech/wt60_h2` - `wilba_tech/wt60_h3` - `wilba_tech/wt60_xt` - `wilba_tech/wt65_a` - `wilba_tech/wt65_b` - `wilba_tech/wt65_d` - `wilba_tech/wt65_f` - `wilba_tech/wt65_fx` - `wilba_tech/wt65_g` - `wilba_tech/wt65_g2` - `wilba_tech/wt65_h1` - `wilba_tech/wt65_xt` - `wilba_tech/wt65_xtx` - `wilba_tech/wt69_a` - `wilba_tech/wt70_jb` - `wilba_tech/wt75_a` - `wilba_tech/wt75_b` - `wilba_tech/wt75_c` - `wilba_tech/wt80_a` - `wilba_tech/wt80_g` - `wilba_tech/zeal60` - `wilba_tech/zeal65` - `woodkeys/meira/featherble` - `wsk/alpha9` - `wsk/g4m3ralpha` - `wsk/gothic50` - `wsk/gothic70` - `wsk/houndstooth` - `wsk/jerkin` - `wsk/kodachi50` - `wsk/pain27` - `wsk/sl40` - `wsk/tkl30` - `wuque/ikki68` - `wuque/mammoth20x` - `wuque/mammoth75x` - `wuque/nemui65` - `wuque/tata80/wk` - `wuque/tata80/wkl` --- keyboards/wilba_tech/rama_works_kara/config.h | 5 --- .../wilba_tech/rama_works_kara/keyboard.json | 6 +++ keyboards/wilba_tech/rama_works_koyu/config.h | 6 --- .../wilba_tech/rama_works_koyu/keyboard.json | 6 +++ .../wilba_tech/rama_works_m10_b/config.h | 39 ------------------- .../wilba_tech/rama_works_m10_b/keyboard.json | 6 +++ .../wilba_tech/rama_works_m10_c/config.h | 5 --- .../wilba_tech/rama_works_m10_c/keyboard.json | 6 +++ .../wilba_tech/rama_works_m50_a/config.h | 5 --- .../wilba_tech/rama_works_m50_a/keyboard.json | 6 +++ .../wilba_tech/rama_works_m50_ax/config.h | 21 ---------- .../rama_works_m50_ax/keyboard.json | 6 +++ .../wilba_tech/rama_works_m60_a/config.h | 5 --- .../wilba_tech/rama_works_m60_a/keyboard.json | 6 +++ .../wilba_tech/rama_works_m65_b/config.h | 5 --- .../wilba_tech/rama_works_m65_b/keyboard.json | 6 +++ .../wilba_tech/rama_works_m65_bx/config.h | 5 --- .../rama_works_m65_bx/keyboard.json | 6 +++ keyboards/wilba_tech/rama_works_m6_a/config.h | 5 --- .../wilba_tech/rama_works_m6_a/keyboard.json | 6 +++ keyboards/wilba_tech/rama_works_m6_b/config.h | 5 --- .../wilba_tech/rama_works_m6_b/keyboard.json | 6 +++ .../wilba_tech/rama_works_u80_a/config.h | 5 --- .../wilba_tech/rama_works_u80_a/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_a/config.h | 5 --- keyboards/wilba_tech/wt60_a/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_b/config.h | 6 --- keyboards/wilba_tech/wt60_b/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_bx/config.h | 6 --- keyboards/wilba_tech/wt60_bx/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_c/config.h | 6 --- keyboards/wilba_tech/wt60_c/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_d/config.h | 22 ----------- keyboards/wilba_tech/wt60_d/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_g/config.h | 22 ----------- keyboards/wilba_tech/wt60_g/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_g2/config.h | 22 ----------- keyboards/wilba_tech/wt60_g2/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_h1/config.h | 9 ----- keyboards/wilba_tech/wt60_h1/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_h2/config.h | 22 ----------- keyboards/wilba_tech/wt60_h2/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_h3/config.h | 9 ----- keyboards/wilba_tech/wt60_h3/keyboard.json | 6 +++ keyboards/wilba_tech/wt60_xt/config.h | 5 --- keyboards/wilba_tech/wt60_xt/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_a/config.h | 5 --- keyboards/wilba_tech/wt65_a/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_b/config.h | 5 --- keyboards/wilba_tech/wt65_b/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_d/config.h | 10 ----- keyboards/wilba_tech/wt65_d/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_f/config.h | 22 ----------- keyboards/wilba_tech/wt65_f/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_fx/config.h | 22 ----------- keyboards/wilba_tech/wt65_fx/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_g/config.h | 22 ----------- keyboards/wilba_tech/wt65_g/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_g2/config.h | 22 ----------- keyboards/wilba_tech/wt65_g2/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_h1/config.h | 22 ----------- keyboards/wilba_tech/wt65_h1/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_xt/config.h | 22 ----------- keyboards/wilba_tech/wt65_xt/keyboard.json | 6 +++ keyboards/wilba_tech/wt65_xtx/config.h | 21 ---------- keyboards/wilba_tech/wt65_xtx/keyboard.json | 6 +++ keyboards/wilba_tech/wt69_a/config.h | 38 ------------------ keyboards/wilba_tech/wt69_a/keyboard.json | 6 +++ keyboards/wilba_tech/wt70_jb/config.h | 21 ---------- keyboards/wilba_tech/wt70_jb/keyboard.json | 6 +++ keyboards/wilba_tech/wt75_a/config.h | 5 --- keyboards/wilba_tech/wt75_a/keyboard.json | 6 +++ keyboards/wilba_tech/wt75_b/config.h | 5 --- keyboards/wilba_tech/wt75_b/keyboard.json | 6 +++ keyboards/wilba_tech/wt75_c/config.h | 5 --- keyboards/wilba_tech/wt75_c/keyboard.json | 6 +++ keyboards/wilba_tech/wt80_a/config.h | 5 --- keyboards/wilba_tech/wt80_a/keyboard.json | 6 +++ keyboards/wilba_tech/wt80_g/config.h | 22 ----------- keyboards/wilba_tech/wt80_g/keyboard.json | 6 +++ keyboards/wilba_tech/zeal60/config.h | 5 --- keyboards/wilba_tech/zeal60/keyboard.json | 6 +++ keyboards/wilba_tech/zeal65/config.h | 5 --- keyboards/wilba_tech/zeal65/keyboard.json | 6 +++ keyboards/woodkeys/meira/featherble/config.h | 5 --- .../woodkeys/meira/featherble/keyboard.json | 6 +++ keyboards/wsk/alpha9/config.h | 23 ----------- keyboards/wsk/alpha9/keyboard.json | 6 +++ keyboards/wsk/g4m3ralpha/config.h | 23 ----------- keyboards/wsk/g4m3ralpha/keyboard.json | 6 +++ keyboards/wsk/gothic50/config.h | 6 --- keyboards/wsk/gothic50/keyboard.json | 6 +++ keyboards/wsk/gothic70/config.h | 7 ---- keyboards/wsk/gothic70/keyboard.json | 6 +++ keyboards/wsk/houndstooth/config.h | 7 ---- keyboards/wsk/houndstooth/keyboard.json | 6 +++ keyboards/wsk/jerkin/config.h | 7 ---- keyboards/wsk/jerkin/keyboard.json | 6 +++ keyboards/wsk/kodachi50/config.h | 7 ---- keyboards/wsk/kodachi50/keyboard.json | 6 +++ keyboards/wsk/pain27/config.h | 7 ---- keyboards/wsk/pain27/keyboard.json | 6 +++ keyboards/wsk/sl40/config.h | 23 ----------- keyboards/wsk/sl40/keyboard.json | 6 +++ keyboards/wsk/tkl30/config.h | 7 ---- keyboards/wsk/tkl30/keyboard.json | 6 +++ keyboards/wuque/ikki68/config.h | 24 ------------ keyboards/wuque/ikki68/keyboard.json | 6 +++ keyboards/wuque/mammoth20x/config.h | 24 ------------ keyboards/wuque/mammoth20x/keyboard.json | 6 +++ keyboards/wuque/mammoth75x/config.h | 24 ------------ keyboards/wuque/mammoth75x/keyboard.json | 6 +++ keyboards/wuque/nemui65/config.h | 24 ------------ keyboards/wuque/nemui65/keyboard.json | 6 +++ keyboards/wuque/tata80/wk/config.h | 21 ---------- keyboards/wuque/tata80/wk/keyboard.json | 6 +++ keyboards/wuque/tata80/wkl/config.h | 21 ---------- keyboards/wuque/tata80/wkl/keyboard.json | 6 +++ 118 files changed, 354 insertions(+), 789 deletions(-) delete mode 100644 keyboards/wilba_tech/rama_works_m10_b/config.h delete mode 100644 keyboards/wilba_tech/rama_works_m50_ax/config.h delete mode 100644 keyboards/wilba_tech/wt60_d/config.h delete mode 100644 keyboards/wilba_tech/wt60_g/config.h delete mode 100644 keyboards/wilba_tech/wt60_g2/config.h delete mode 100644 keyboards/wilba_tech/wt60_h1/config.h delete mode 100644 keyboards/wilba_tech/wt60_h2/config.h delete mode 100644 keyboards/wilba_tech/wt60_h3/config.h delete mode 100644 keyboards/wilba_tech/wt65_d/config.h delete mode 100644 keyboards/wilba_tech/wt65_f/config.h delete mode 100644 keyboards/wilba_tech/wt65_fx/config.h delete mode 100644 keyboards/wilba_tech/wt65_g/config.h delete mode 100644 keyboards/wilba_tech/wt65_g2/config.h delete mode 100644 keyboards/wilba_tech/wt65_h1/config.h delete mode 100644 keyboards/wilba_tech/wt65_xt/config.h delete mode 100644 keyboards/wilba_tech/wt65_xtx/config.h delete mode 100644 keyboards/wilba_tech/wt69_a/config.h delete mode 100644 keyboards/wilba_tech/wt70_jb/config.h delete mode 100644 keyboards/wilba_tech/wt80_g/config.h delete mode 100644 keyboards/wsk/alpha9/config.h delete mode 100644 keyboards/wsk/g4m3ralpha/config.h delete mode 100644 keyboards/wsk/gothic70/config.h delete mode 100644 keyboards/wsk/houndstooth/config.h delete mode 100644 keyboards/wsk/jerkin/config.h delete mode 100644 keyboards/wsk/kodachi50/config.h delete mode 100644 keyboards/wsk/pain27/config.h delete mode 100644 keyboards/wsk/sl40/config.h delete mode 100644 keyboards/wsk/tkl30/config.h delete mode 100644 keyboards/wuque/ikki68/config.h delete mode 100644 keyboards/wuque/mammoth20x/config.h delete mode 100644 keyboards/wuque/mammoth75x/config.h delete mode 100644 keyboards/wuque/nemui65/config.h delete mode 100644 keyboards/wuque/tata80/wk/config.h delete mode 100644 keyboards/wuque/tata80/wkl/config.h diff --git a/keyboards/wilba_tech/rama_works_kara/config.h b/keyboards/wilba_tech/rama_works_kara/config.h index ba02ba652a8..8a18f654a09 100644 --- a/keyboards/wilba_tech/rama_works_kara/config.h +++ b/keyboards/wilba_tech/rama_works_kara/config.h @@ -20,11 +20,6 @@ #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA #define IS31FL3731_LED_COUNT 72 -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/rama_works_kara/keyboard.json b/keyboards/wilba_tech/rama_works_kara/keyboard.json index 896892e2847..f5838a48e50 100644 --- a/keyboards/wilba_tech/rama_works_kara/keyboard.json +++ b/keyboards/wilba_tech/rama_works_kara/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/rama_works_koyu/config.h b/keyboards/wilba_tech/rama_works_koyu/config.h index 1d57ac9e557..a978189362a 100644 --- a/keyboards/wilba_tech/rama_works_koyu/config.h +++ b/keyboards/wilba_tech/rama_works_koyu/config.h @@ -20,12 +20,6 @@ #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA #define IS31FL3731_LED_COUNT 72 -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE - - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/rama_works_koyu/keyboard.json b/keyboards/wilba_tech/rama_works_koyu/keyboard.json index 507b5e1546f..269714d6f5a 100644 --- a/keyboards/wilba_tech/rama_works_koyu/keyboard.json +++ b/keyboards/wilba_tech/rama_works_koyu/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/rama_works_m10_b/config.h b/keyboards/wilba_tech/rama_works_m10_b/config.h deleted file mode 100644 index c8c922be6fe..00000000000 --- a/keyboards/wilba_tech/rama_works_m10_b/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Wilba - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/wilba_tech/rama_works_m10_b/keyboard.json b/keyboards/wilba_tech/rama_works_m10_b/keyboard.json index b66b5c64cf5..157baa1c5a3 100644 --- a/keyboards/wilba_tech/rama_works_m10_b/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m10_b/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "B6", "F0", "D6", "B5", "F1", "D4", "B4", "F4", "F5"], "rows": ["E6"] diff --git a/keyboards/wilba_tech/rama_works_m10_c/config.h b/keyboards/wilba_tech/rama_works_m10_c/config.h index 736506a493e..f9315e00932 100644 --- a/keyboards/wilba_tech/rama_works_m10_c/config.h +++ b/keyboards/wilba_tech/rama_works_m10_c/config.h @@ -15,11 +15,6 @@ */ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // IS31FL3731 driver #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_LED_COUNT 12 diff --git a/keyboards/wilba_tech/rama_works_m10_c/keyboard.json b/keyboards/wilba_tech/rama_works_m10_c/keyboard.json index bba4720aa34..92b6947b59c 100644 --- a/keyboards/wilba_tech/rama_works_m10_c/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m10_c/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "B6", "F0", "D6", "B5", "F1", "D4", "B4", "F4", "F5"], "rows": ["E6"] diff --git a/keyboards/wilba_tech/rama_works_m50_a/config.h b/keyboards/wilba_tech/rama_works_m50_a/config.h index bad8f7f3465..706230af3bf 100644 --- a/keyboards/wilba_tech/rama_works_m50_a/config.h +++ b/keyboards/wilba_tech/rama_works_m50_a/config.h @@ -15,11 +15,6 @@ */ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // IS31FL3731 driver #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA diff --git a/keyboards/wilba_tech/rama_works_m50_a/keyboard.json b/keyboards/wilba_tech/rama_works_m50_a/keyboard.json index bf33a12277f..64eb902672e 100644 --- a/keyboards/wilba_tech/rama_works_m50_a/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m50_a/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "B5", "C7", "C6", "B6", "B2", "B3", "B1", "B4", "D7", "D6", "D4", "D3"], "rows": ["F0", "F1", "F5", "F6"] diff --git a/keyboards/wilba_tech/rama_works_m50_ax/config.h b/keyboards/wilba_tech/rama_works_m50_ax/config.h deleted file mode 100644 index 9b6b3c79558..00000000000 --- a/keyboards/wilba_tech/rama_works_m50_ax/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/rama_works_m50_ax/keyboard.json b/keyboards/wilba_tech/rama_works_m50_ax/keyboard.json index 29dec482bbe..c44032f97ce 100644 --- a/keyboards/wilba_tech/rama_works_m50_ax/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m50_ax/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "B5", "C7", "C6", "B6", "B2", "B3", "B1", "B4", "D7", "D6", "D4", "D3"], "rows": ["F0", "F1", "F5", "F6"] diff --git a/keyboards/wilba_tech/rama_works_m60_a/config.h b/keyboards/wilba_tech/rama_works_m60_a/config.h index 7af0f156c81..ecd6ba1e917 100644 --- a/keyboards/wilba_tech/rama_works_m60_a/config.h +++ b/keyboards/wilba_tech/rama_works_m60_a/config.h @@ -20,11 +20,6 @@ #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA #define IS31FL3731_LED_COUNT 72 -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/rama_works_m60_a/keyboard.json b/keyboards/wilba_tech/rama_works_m60_a/keyboard.json index 566f6cd42a4..187305808c4 100644 --- a/keyboards/wilba_tech/rama_works_m60_a/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m60_a/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/rama_works_m65_b/config.h b/keyboards/wilba_tech/rama_works_m65_b/config.h index 0f3f228cdaf..e8820868aa1 100644 --- a/keyboards/wilba_tech/rama_works_m65_b/config.h +++ b/keyboards/wilba_tech/rama_works_m65_b/config.h @@ -15,11 +15,6 @@ */ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // IS31FL3731 driver #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA diff --git a/keyboards/wilba_tech/rama_works_m65_b/keyboard.json b/keyboards/wilba_tech/rama_works_m65_b/keyboard.json index 156affff7da..869dd5c19e3 100644 --- a/keyboards/wilba_tech/rama_works_m65_b/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m65_b/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/rama_works_m65_bx/config.h b/keyboards/wilba_tech/rama_works_m65_bx/config.h index ed0d79aba32..e40a4987aac 100644 --- a/keyboards/wilba_tech/rama_works_m65_bx/config.h +++ b/keyboards/wilba_tech/rama_works_m65_bx/config.h @@ -15,11 +15,6 @@ */ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // IS31FL3731 driver #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA diff --git a/keyboards/wilba_tech/rama_works_m65_bx/keyboard.json b/keyboards/wilba_tech/rama_works_m65_bx/keyboard.json index 9b4edcc6efc..a58a1f469c6 100644 --- a/keyboards/wilba_tech/rama_works_m65_bx/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m65_bx/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/rama_works_m6_a/config.h b/keyboards/wilba_tech/rama_works_m6_a/config.h index 6a19f1e7e9f..f74e6c53892 100644 --- a/keyboards/wilba_tech/rama_works_m6_a/config.h +++ b/keyboards/wilba_tech/rama_works_m6_a/config.h @@ -15,11 +15,6 @@ */ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define RGB_BACKLIGHT_ENABLED 0 // NOTE: M6-A doesn't use RGB backlight, but we keep this diff --git a/keyboards/wilba_tech/rama_works_m6_a/keyboard.json b/keyboards/wilba_tech/rama_works_m6_a/keyboard.json index df7fc90a962..fdb3eac8933 100644 --- a/keyboards/wilba_tech/rama_works_m6_a/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m6_a/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "B5", "F4", "D7", "C6", "F6"], "rows": ["E6"] diff --git a/keyboards/wilba_tech/rama_works_m6_b/config.h b/keyboards/wilba_tech/rama_works_m6_b/config.h index 112cd500beb..2395700561d 100644 --- a/keyboards/wilba_tech/rama_works_m6_b/config.h +++ b/keyboards/wilba_tech/rama_works_m6_b/config.h @@ -15,11 +15,6 @@ */ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - #define IS31FL3218_LED_COUNT 6 #define RGB_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/rama_works_m6_b/keyboard.json b/keyboards/wilba_tech/rama_works_m6_b/keyboard.json index 4d258b826b9..497c053edae 100644 --- a/keyboards/wilba_tech/rama_works_m6_b/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m6_b/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "B5", "F4", "D7", "C6", "F6"], "rows": ["E6"] diff --git a/keyboards/wilba_tech/rama_works_u80_a/config.h b/keyboards/wilba_tech/rama_works_u80_a/config.h index ddbbcfba9bd..606d2ce3865 100644 --- a/keyboards/wilba_tech/rama_works_u80_a/config.h +++ b/keyboards/wilba_tech/rama_works_u80_a/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/rama_works_u80_a/keyboard.json b/keyboards/wilba_tech/rama_works_u80_a/keyboard.json index bf06d9508f2..17d18737e8d 100644 --- a/keyboards/wilba_tech/rama_works_u80_a/keyboard.json +++ b/keyboards/wilba_tech/rama_works_u80_a/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "B7", "B0"], "rows": ["F1", "F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_a/config.h b/keyboards/wilba_tech/wt60_a/config.h index 4dec42b21de..794799bdcda 100644 --- a/keyboards/wilba_tech/wt60_a/config.h +++ b/keyboards/wilba_tech/wt60_a/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/wt60_a/keyboard.json b/keyboards/wilba_tech/wt60_a/keyboard.json index 1c6d9f8c35d..7ebe2927541 100644 --- a/keyboards/wilba_tech/wt60_a/keyboard.json +++ b/keyboards/wilba_tech/wt60_a/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_b/config.h b/keyboards/wilba_tech/wt60_b/config.h index 3a9808dfc52..bb5c3d6fc17 100644 --- a/keyboards/wilba_tech/wt60_b/config.h +++ b/keyboards/wilba_tech/wt60_b/config.h @@ -16,12 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - // IS31FL3731 driver #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA diff --git a/keyboards/wilba_tech/wt60_b/keyboard.json b/keyboards/wilba_tech/wt60_b/keyboard.json index 765ba96f61f..9cbd43cdbb9 100644 --- a/keyboards/wilba_tech/wt60_b/keyboard.json +++ b/keyboards/wilba_tech/wt60_b/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_bx/config.h b/keyboards/wilba_tech/wt60_bx/config.h index 1a722e2a2c6..0015fb2da4c 100644 --- a/keyboards/wilba_tech/wt60_bx/config.h +++ b/keyboards/wilba_tech/wt60_bx/config.h @@ -16,12 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - // IS31FL3731 driver #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA diff --git a/keyboards/wilba_tech/wt60_bx/keyboard.json b/keyboards/wilba_tech/wt60_bx/keyboard.json index 6b4b6e9fb18..7699df71063 100644 --- a/keyboards/wilba_tech/wt60_bx/keyboard.json +++ b/keyboards/wilba_tech/wt60_bx/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_c/config.h b/keyboards/wilba_tech/wt60_c/config.h index 97a6790fffd..8795a1c9175 100644 --- a/keyboards/wilba_tech/wt60_c/config.h +++ b/keyboards/wilba_tech/wt60_c/config.h @@ -16,12 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - - // IS31FL3731 driver #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA diff --git a/keyboards/wilba_tech/wt60_c/keyboard.json b/keyboards/wilba_tech/wt60_c/keyboard.json index 569cca93b75..27a59c69ff5 100644 --- a/keyboards/wilba_tech/wt60_c/keyboard.json +++ b/keyboards/wilba_tech/wt60_c/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_d/config.h b/keyboards/wilba_tech/wt60_d/config.h deleted file mode 100644 index 1377a18714c..00000000000 --- a/keyboards/wilba_tech/wt60_d/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2018 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt60_d/keyboard.json b/keyboards/wilba_tech/wt60_d/keyboard.json index 84ef6838714..95ecda66edc 100644 --- a/keyboards/wilba_tech/wt60_d/keyboard.json +++ b/keyboards/wilba_tech/wt60_d/keyboard.json @@ -10,6 +10,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "indicators": { "caps_lock": "F1" }, diff --git a/keyboards/wilba_tech/wt60_g/config.h b/keyboards/wilba_tech/wt60_g/config.h deleted file mode 100644 index 9541b1df126..00000000000 --- a/keyboards/wilba_tech/wt60_g/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt60_g/keyboard.json b/keyboards/wilba_tech/wt60_g/keyboard.json index 3c1a6aef557..ba8a6a4d47d 100644 --- a/keyboards/wilba_tech/wt60_g/keyboard.json +++ b/keyboards/wilba_tech/wt60_g/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_g2/config.h b/keyboards/wilba_tech/wt60_g2/config.h deleted file mode 100644 index b7d24e1cd3c..00000000000 --- a/keyboards/wilba_tech/wt60_g2/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt60_g2/keyboard.json b/keyboards/wilba_tech/wt60_g2/keyboard.json index 2167847133d..85d51d0cd73 100644 --- a/keyboards/wilba_tech/wt60_g2/keyboard.json +++ b/keyboards/wilba_tech/wt60_g2/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_h1/config.h b/keyboards/wilba_tech/wt60_h1/config.h deleted file mode 100644 index 793d8d8baf9..00000000000 --- a/keyboards/wilba_tech/wt60_h1/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2023 Jason Williams (@wilba) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt60_h1/keyboard.json b/keyboards/wilba_tech/wt60_h1/keyboard.json index 279f7eab51d..2832cf3cd78 100644 --- a/keyboards/wilba_tech/wt60_h1/keyboard.json +++ b/keyboards/wilba_tech/wt60_h1/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_h2/config.h b/keyboards/wilba_tech/wt60_h2/config.h deleted file mode 100644 index 9541b1df126..00000000000 --- a/keyboards/wilba_tech/wt60_h2/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt60_h2/keyboard.json b/keyboards/wilba_tech/wt60_h2/keyboard.json index 9655469ffcd..f48e03940c8 100644 --- a/keyboards/wilba_tech/wt60_h2/keyboard.json +++ b/keyboards/wilba_tech/wt60_h2/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_h3/config.h b/keyboards/wilba_tech/wt60_h3/config.h deleted file mode 100644 index 793d8d8baf9..00000000000 --- a/keyboards/wilba_tech/wt60_h3/config.h +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2023 Jason Williams (@wilba) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt60_h3/keyboard.json b/keyboards/wilba_tech/wt60_h3/keyboard.json index 5ff272a98d3..9078fa92421 100644 --- a/keyboards/wilba_tech/wt60_h3/keyboard.json +++ b/keyboards/wilba_tech/wt60_h3/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt60_xt/config.h b/keyboards/wilba_tech/wt60_xt/config.h index ea2f490317b..c5a745e4b6c 100644 --- a/keyboards/wilba_tech/wt60_xt/config.h +++ b/keyboards/wilba_tech/wt60_xt/config.h @@ -20,11 +20,6 @@ #define AUDIO_PIN C6 #define AUDIO_CLICKY -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/wt60_xt/keyboard.json b/keyboards/wilba_tech/wt60_xt/keyboard.json index 6cd3d64be28..8afafd93143 100644 --- a/keyboards/wilba_tech/wt60_xt/keyboard.json +++ b/keyboards/wilba_tech/wt60_xt/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "B0", "F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_a/config.h b/keyboards/wilba_tech/wt65_a/config.h index 9135642f591..d2afedff5c0 100644 --- a/keyboards/wilba_tech/wt65_a/config.h +++ b/keyboards/wilba_tech/wt65_a/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/wt65_a/keyboard.json b/keyboards/wilba_tech/wt65_a/keyboard.json index ec87e830f07..9878b520845 100644 --- a/keyboards/wilba_tech/wt65_a/keyboard.json +++ b/keyboards/wilba_tech/wt65_a/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_b/config.h b/keyboards/wilba_tech/wt65_b/config.h index 5f3671004d4..4683c6a69eb 100644 --- a/keyboards/wilba_tech/wt65_b/config.h +++ b/keyboards/wilba_tech/wt65_b/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/wt65_b/keyboard.json b/keyboards/wilba_tech/wt65_b/keyboard.json index 56f71f3fc11..e4fb39c00b9 100644 --- a/keyboards/wilba_tech/wt65_b/keyboard.json +++ b/keyboards/wilba_tech/wt65_b/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_d/config.h b/keyboards/wilba_tech/wt65_d/config.h deleted file mode 100644 index f37e4b2db65..00000000000 --- a/keyboards/wilba_tech/wt65_d/config.h +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2022 Jason Williams (@wilba) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE - -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE \ No newline at end of file diff --git a/keyboards/wilba_tech/wt65_d/keyboard.json b/keyboards/wilba_tech/wt65_d/keyboard.json index d41d39bcb29..3754b3788b4 100644 --- a/keyboards/wilba_tech/wt65_d/keyboard.json +++ b/keyboards/wilba_tech/wt65_d/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "D3", "D2", "B7", "B0", "B3", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["E6", "F0", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_f/config.h b/keyboards/wilba_tech/wt65_f/config.h deleted file mode 100644 index b7d24e1cd3c..00000000000 --- a/keyboards/wilba_tech/wt65_f/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt65_f/keyboard.json b/keyboards/wilba_tech/wt65_f/keyboard.json index bb39a09a91c..fb798565789 100644 --- a/keyboards/wilba_tech/wt65_f/keyboard.json +++ b/keyboards/wilba_tech/wt65_f/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_fx/config.h b/keyboards/wilba_tech/wt65_fx/config.h deleted file mode 100644 index b7d24e1cd3c..00000000000 --- a/keyboards/wilba_tech/wt65_fx/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt65_fx/keyboard.json b/keyboards/wilba_tech/wt65_fx/keyboard.json index a070bfd6f93..f53332b6af6 100644 --- a/keyboards/wilba_tech/wt65_fx/keyboard.json +++ b/keyboards/wilba_tech/wt65_fx/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_g/config.h b/keyboards/wilba_tech/wt65_g/config.h deleted file mode 100644 index 9541b1df126..00000000000 --- a/keyboards/wilba_tech/wt65_g/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt65_g/keyboard.json b/keyboards/wilba_tech/wt65_g/keyboard.json index d9fe012ce40..e0974770742 100644 --- a/keyboards/wilba_tech/wt65_g/keyboard.json +++ b/keyboards/wilba_tech/wt65_g/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_g2/config.h b/keyboards/wilba_tech/wt65_g2/config.h deleted file mode 100644 index 9541b1df126..00000000000 --- a/keyboards/wilba_tech/wt65_g2/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt65_g2/keyboard.json b/keyboards/wilba_tech/wt65_g2/keyboard.json index 7c55f5e3efa..8a7862dcbee 100644 --- a/keyboards/wilba_tech/wt65_g2/keyboard.json +++ b/keyboards/wilba_tech/wt65_g2/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_h1/config.h b/keyboards/wilba_tech/wt65_h1/config.h deleted file mode 100644 index 9541b1df126..00000000000 --- a/keyboards/wilba_tech/wt65_h1/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt65_h1/keyboard.json b/keyboards/wilba_tech/wt65_h1/keyboard.json index a6f22273dcb..d56321ce5fc 100644 --- a/keyboards/wilba_tech/wt65_h1/keyboard.json +++ b/keyboards/wilba_tech/wt65_h1/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_xt/config.h b/keyboards/wilba_tech/wt65_xt/config.h deleted file mode 100644 index 9541b1df126..00000000000 --- a/keyboards/wilba_tech/wt65_xt/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt65_xt/keyboard.json b/keyboards/wilba_tech/wt65_xt/keyboard.json index 73d39017769..53318562693 100644 --- a/keyboards/wilba_tech/wt65_xt/keyboard.json +++ b/keyboards/wilba_tech/wt65_xt/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "B0", "F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt65_xtx/config.h b/keyboards/wilba_tech/wt65_xtx/config.h deleted file mode 100644 index 9b6b3c79558..00000000000 --- a/keyboards/wilba_tech/wt65_xtx/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt65_xtx/keyboard.json b/keyboards/wilba_tech/wt65_xtx/keyboard.json index 96678860ee2..7d60043b910 100644 --- a/keyboards/wilba_tech/wt65_xtx/keyboard.json +++ b/keyboards/wilba_tech/wt65_xtx/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "B0", "F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt69_a/config.h b/keyboards/wilba_tech/wt69_a/config.h deleted file mode 100644 index bc06d6ce9c0..00000000000 --- a/keyboards/wilba_tech/wt69_a/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2018 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/wilba_tech/wt69_a/keyboard.json b/keyboards/wilba_tech/wt69_a/keyboard.json index 8321ae86c40..bbe65178506 100644 --- a/keyboards/wilba_tech/wt69_a/keyboard.json +++ b/keyboards/wilba_tech/wt69_a/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B7", "B0", "F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt70_jb/config.h b/keyboards/wilba_tech/wt70_jb/config.h deleted file mode 100644 index 9b6b3c79558..00000000000 --- a/keyboards/wilba_tech/wt70_jb/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt70_jb/keyboard.json b/keyboards/wilba_tech/wt70_jb/keyboard.json index a1ffe1e5616..bfa27f225be 100644 --- a/keyboards/wilba_tech/wt70_jb/keyboard.json +++ b/keyboards/wilba_tech/wt70_jb/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "D3", "D2", "D1", "D0", "B7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "B0", "B3"], "rows": ["E6", "F0", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt75_a/config.h b/keyboards/wilba_tech/wt75_a/config.h index 9dbe0405082..f9fc82ec421 100644 --- a/keyboards/wilba_tech/wt75_a/config.h +++ b/keyboards/wilba_tech/wt75_a/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/wt75_a/keyboard.json b/keyboards/wilba_tech/wt75_a/keyboard.json index 609dff0c36f..ee0a7b067bb 100644 --- a/keyboards/wilba_tech/wt75_a/keyboard.json +++ b/keyboards/wilba_tech/wt75_a/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F1", "F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt75_b/config.h b/keyboards/wilba_tech/wt75_b/config.h index 9a9db88ab14..edeb728a17d 100644 --- a/keyboards/wilba_tech/wt75_b/config.h +++ b/keyboards/wilba_tech/wt75_b/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/wt75_b/keyboard.json b/keyboards/wilba_tech/wt75_b/keyboard.json index 15bc61e9236..9d5ca0c13b4 100644 --- a/keyboards/wilba_tech/wt75_b/keyboard.json +++ b/keyboards/wilba_tech/wt75_b/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B7", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "B2", "D4"], "rows": ["F1", "F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt75_c/config.h b/keyboards/wilba_tech/wt75_c/config.h index d2164ceea03..d3d6adf6908 100644 --- a/keyboards/wilba_tech/wt75_c/config.h +++ b/keyboards/wilba_tech/wt75_c/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/wt75_c/keyboard.json b/keyboards/wilba_tech/wt75_c/keyboard.json index 38d1450ae09..08b373993b9 100644 --- a/keyboards/wilba_tech/wt75_c/keyboard.json +++ b/keyboards/wilba_tech/wt75_c/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "B7", "D4"], "rows": ["F1", "F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt80_a/config.h b/keyboards/wilba_tech/wt80_a/config.h index bda91f562ce..92e8322f081 100644 --- a/keyboards/wilba_tech/wt80_a/config.h +++ b/keyboards/wilba_tech/wt80_a/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/wt80_a/keyboard.json b/keyboards/wilba_tech/wt80_a/keyboard.json index d7d6d11882e..737d2b0eb60 100644 --- a/keyboards/wilba_tech/wt80_a/keyboard.json +++ b/keyboards/wilba_tech/wt80_a/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "B7", "B0"], "rows": ["F1", "F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt80_g/config.h b/keyboards/wilba_tech/wt80_g/config.h deleted file mode 100644 index 9541b1df126..00000000000 --- a/keyboards/wilba_tech/wt80_g/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Jason Williams (Wilba) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wilba_tech/wt80_g/keyboard.json b/keyboards/wilba_tech/wt80_g/keyboard.json index 410b5a8ec21..cc148a9fa00 100644 --- a/keyboards/wilba_tech/wt80_g/keyboard.json +++ b/keyboards/wilba_tech/wt80_g/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "B7", "B0"], "rows": ["F1", "F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/zeal60/config.h b/keyboards/wilba_tech/zeal60/config.h index 225c878b20a..9ff8a94af10 100644 --- a/keyboards/wilba_tech/zeal60/config.h +++ b/keyboards/wilba_tech/zeal60/config.h @@ -20,11 +20,6 @@ #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA #define IS31FL3731_LED_COUNT 72 -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/zeal60/keyboard.json b/keyboards/wilba_tech/zeal60/keyboard.json index 34f7a312aaf..77500c69c30 100644 --- a/keyboards/wilba_tech/zeal60/keyboard.json +++ b/keyboards/wilba_tech/zeal60/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/zeal65/config.h b/keyboards/wilba_tech/zeal65/config.h index 71977f40907..947eeeb20c0 100644 --- a/keyboards/wilba_tech/zeal65/config.h +++ b/keyboards/wilba_tech/zeal65/config.h @@ -20,11 +20,6 @@ #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA #define IS31FL3731_LED_COUNT 72 -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/wilba_tech/zeal65/keyboard.json b/keyboards/wilba_tech/zeal65/keyboard.json index 2bc5e65b7b2..f216ccacae0 100644 --- a/keyboards/wilba_tech/zeal65/keyboard.json +++ b/keyboards/wilba_tech/zeal65/keyboard.json @@ -14,6 +14,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "F1", "F4", "F6", "F7"] diff --git a/keyboards/woodkeys/meira/featherble/config.h b/keyboards/woodkeys/meira/featherble/config.h index fd224b2d50e..8a6da720e19 100644 --- a/keyboards/woodkeys/meira/featherble/config.h +++ b/keyboards/woodkeys/meira/featherble/config.h @@ -36,11 +36,6 @@ along with this program. If not, see . #define AUDIO_PIN B5 #define AUDIO_VOICES -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/woodkeys/meira/featherble/keyboard.json b/keyboards/woodkeys/meira/featherble/keyboard.json index 416b788c904..8d42515541f 100644 --- a/keyboards/woodkeys/meira/featherble/keyboard.json +++ b/keyboards/woodkeys/meira/featherble/keyboard.json @@ -1,6 +1,12 @@ { "processor": "atmega32u4", "bootloader": "caterina", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "bluetooth": { "driver": "bluefruit_le" }, diff --git a/keyboards/wsk/alpha9/config.h b/keyboards/wsk/alpha9/config.h deleted file mode 100644 index af1fe3ab43e..00000000000 --- a/keyboards/wsk/alpha9/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Worldspawn - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wsk/alpha9/keyboard.json b/keyboards/wsk/alpha9/keyboard.json index 517e22238a3..41b95130c66 100644 --- a/keyboards/wsk/alpha9/keyboard.json +++ b/keyboards/wsk/alpha9/keyboard.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "C6", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "D1", "D0", "D2"], "rows": ["D4", "B4", "B5"] diff --git a/keyboards/wsk/g4m3ralpha/config.h b/keyboards/wsk/g4m3ralpha/config.h deleted file mode 100644 index af1fe3ab43e..00000000000 --- a/keyboards/wsk/g4m3ralpha/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Worldspawn - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wsk/g4m3ralpha/keyboard.json b/keyboards/wsk/g4m3ralpha/keyboard.json index 312e207a2f3..fcb2f26f5fd 100644 --- a/keyboards/wsk/g4m3ralpha/keyboard.json +++ b/keyboards/wsk/g4m3ralpha/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D7", "E6", "C6", "B6", "B2", "B3", "B1", "F7", "F6", "F5"], "rows": ["D4", "B4", "B5", "D1"] diff --git a/keyboards/wsk/gothic50/config.h b/keyboards/wsk/gothic50/config.h index 55edc22470d..b51a46bc8ac 100644 --- a/keyboards/wsk/gothic50/config.h +++ b/keyboards/wsk/gothic50/config.h @@ -1,11 +1,5 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* If defined, GRAVE_ESC will always act as ESC when CTRL is held. * This is useful for the Windows task manager shortcut (ctrl+shift+esc). */ diff --git a/keyboards/wsk/gothic50/keyboard.json b/keyboards/wsk/gothic50/keyboard.json index c40390315e5..ecd87d9e816 100644 --- a/keyboards/wsk/gothic50/keyboard.json +++ b/keyboards/wsk/gothic50/keyboard.json @@ -37,6 +37,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F0", "F1", "C7", "C6", "B6", "D4", "D5", "D3", "D2", "D1", "D0", "B7", "B0"], "rows": ["B5", "B4", "D7", "D6"] diff --git a/keyboards/wsk/gothic70/config.h b/keyboards/wsk/gothic70/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/wsk/gothic70/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wsk/gothic70/keyboard.json b/keyboards/wsk/gothic70/keyboard.json index a3de1e274c3..15acd70287a 100644 --- a/keyboards/wsk/gothic70/keyboard.json +++ b/keyboards/wsk/gothic70/keyboard.json @@ -37,6 +37,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B0", "B7", "B5", "B4", "D7", "D6", "B3"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/wsk/houndstooth/config.h b/keyboards/wsk/houndstooth/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/wsk/houndstooth/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wsk/houndstooth/keyboard.json b/keyboards/wsk/houndstooth/keyboard.json index 682aa68e5c9..2be2b369688 100644 --- a/keyboards/wsk/houndstooth/keyboard.json +++ b/keyboards/wsk/houndstooth/keyboard.json @@ -19,6 +19,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "F4", "D0", "F5", "D4", "F6"], "rows": ["C6", "F7", "D7", "B1", "B4", "B2", "B5", "B6"] diff --git a/keyboards/wsk/jerkin/config.h b/keyboards/wsk/jerkin/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/wsk/jerkin/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wsk/jerkin/keyboard.json b/keyboards/wsk/jerkin/keyboard.json index 3e105f317f1..43fc8d107d1 100644 --- a/keyboards/wsk/jerkin/keyboard.json +++ b/keyboards/wsk/jerkin/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "B1", "F7", "F6", "F5", "F4", "E6", "D7"], "rows": ["B3", "B4", "B5"] diff --git a/keyboards/wsk/kodachi50/config.h b/keyboards/wsk/kodachi50/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/wsk/kodachi50/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wsk/kodachi50/keyboard.json b/keyboards/wsk/kodachi50/keyboard.json index 4580e548e33..3f5843fd1af 100644 --- a/keyboards/wsk/kodachi50/keyboard.json +++ b/keyboards/wsk/kodachi50/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D4", "C6", "D7", "E6", "B4"], "rows": ["D2", "B5", "B6", "B2", "B3", "B1", "F7", "F6"] diff --git a/keyboards/wsk/pain27/config.h b/keyboards/wsk/pain27/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/wsk/pain27/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wsk/pain27/keyboard.json b/keyboards/wsk/pain27/keyboard.json index b2ac95d9c5c..a01e887e99f 100644 --- a/keyboards/wsk/pain27/keyboard.json +++ b/keyboards/wsk/pain27/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "B3", "F6", "B1", "B2", "B6", "D4", "C6", "D7", "E6"], "rows": ["F4", "F5", "D0"] diff --git a/keyboards/wsk/sl40/config.h b/keyboards/wsk/sl40/config.h deleted file mode 100644 index af1fe3ab43e..00000000000 --- a/keyboards/wsk/sl40/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Worldspawn - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wsk/sl40/keyboard.json b/keyboards/wsk/sl40/keyboard.json index cfb0d7d86ac..aba29855dd6 100644 --- a/keyboards/wsk/sl40/keyboard.json +++ b/keyboards/wsk/sl40/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D1", "F6", "F7", "B6", "B2", "B3", "B1", "D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F4", "F5", "D2", "D0"] diff --git a/keyboards/wsk/tkl30/config.h b/keyboards/wsk/tkl30/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/wsk/tkl30/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wsk/tkl30/keyboard.json b/keyboards/wsk/tkl30/keyboard.json index 2c222d9781b..909f72d4cfc 100644 --- a/keyboards/wsk/tkl30/keyboard.json +++ b/keyboards/wsk/tkl30/keyboard.json @@ -36,6 +36,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D1", "D0", "D4", "F7", "C6", "B1", "D7", "B3", "E6", "B2", "B4", "B6", "F6", "E5"], "rows": ["D2", "B5", "F4"] diff --git a/keyboards/wuque/ikki68/config.h b/keyboards/wuque/ikki68/config.h deleted file mode 100644 index f0510424ffe..00000000000 --- a/keyboards/wuque/ikki68/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 wuquestudio - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wuque/ikki68/keyboard.json b/keyboards/wuque/ikki68/keyboard.json index c1ed459238b..c6070e74fa5 100644 --- a/keyboards/wuque/ikki68/keyboard.json +++ b/keyboards/wuque/ikki68/keyboard.json @@ -39,6 +39,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D1", "D0", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "F0", "F1", "B6", "F4", "F5", "F6", "F7"], "rows": ["B0", "B1", "B2", "B3", "E6"] diff --git a/keyboards/wuque/mammoth20x/config.h b/keyboards/wuque/mammoth20x/config.h deleted file mode 100644 index db5a8d534ef..00000000000 --- a/keyboards/wuque/mammoth20x/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 wuquestudio - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wuque/mammoth20x/keyboard.json b/keyboards/wuque/mammoth20x/keyboard.json index 24b1715a0f7..6c8e2525416 100644 --- a/keyboards/wuque/mammoth20x/keyboard.json +++ b/keyboards/wuque/mammoth20x/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B0", "B1", "E6", "F7"], "rows": ["D5", "F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/wuque/mammoth75x/config.h b/keyboards/wuque/mammoth75x/config.h deleted file mode 100644 index db5a8d534ef..00000000000 --- a/keyboards/wuque/mammoth75x/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2021 wuquestudio - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wuque/mammoth75x/keyboard.json b/keyboards/wuque/mammoth75x/keyboard.json index 486a0422d53..1e0028dfe90 100644 --- a/keyboards/wuque/mammoth75x/keyboard.json +++ b/keyboards/wuque/mammoth75x/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D3", "D5", "D4", "D6", "D7", "B4", "B5", "E6", "F0", "F1", "F4", "F5", "F6", "C6", "B7", "B3"], "rows": ["B0", "C7", "D2", "F7", "D1", "D0"] diff --git a/keyboards/wuque/nemui65/config.h b/keyboards/wuque/nemui65/config.h deleted file mode 100644 index 489059d8ab3..00000000000 --- a/keyboards/wuque/nemui65/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2023 wuque - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - diff --git a/keyboards/wuque/nemui65/keyboard.json b/keyboards/wuque/nemui65/keyboard.json index 65cfebf9b40..239fe991bb8 100644 --- a/keyboards/wuque/nemui65/keyboard.json +++ b/keyboards/wuque/nemui65/keyboard.json @@ -20,6 +20,12 @@ "nkro": true, "rbglight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "diode_direction": "COL2ROW", "indicators": { "caps_lock": "F6", diff --git a/keyboards/wuque/tata80/wk/config.h b/keyboards/wuque/tata80/wk/config.h deleted file mode 100644 index e8a42741810..00000000000 --- a/keyboards/wuque/tata80/wk/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2022 wuque - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wuque/tata80/wk/keyboard.json b/keyboards/wuque/tata80/wk/keyboard.json index 0fb1230c3fe..957a635dcb0 100644 --- a/keyboards/wuque/tata80/wk/keyboard.json +++ b/keyboards/wuque/tata80/wk/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "B7", "B3", "B2", "B1", "B0"], "rows": ["F0", "F1", "F4", "F5", "F6", "F7"] diff --git a/keyboards/wuque/tata80/wkl/config.h b/keyboards/wuque/tata80/wkl/config.h deleted file mode 100644 index e8a42741810..00000000000 --- a/keyboards/wuque/tata80/wkl/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2022 wuque - * - * 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 . - */ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/wuque/tata80/wkl/keyboard.json b/keyboards/wuque/tata80/wkl/keyboard.json index f11fa34acc6..4613f97f670 100644 --- a/keyboards/wuque/tata80/wkl/keyboard.json +++ b/keyboards/wuque/tata80/wkl/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "B7", "B3", "B2", "B1", "B0"], "rows": ["F0", "F1", "F4", "F5", "F6", "F7"] From 8ff8e9eae5b20b1a0a6cafe7689bfc34188f7aa8 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 23 May 2024 19:14:15 -0700 Subject: [PATCH 050/519] Migrate `LOCKING_*_ENABLE` to Data-Driven: X-Z (#23790) Affects: - `x16` - `xelus/akis` - `xelus/dharma` - `xelus/kangaroo/rev1` - `xelus/kangaroo/rev2` - `xelus/ninjin` - `xelus/pachi/mini_32u4` - `xelus/pachi/rev1` - `xelus/snap96` - `xelus/xs108` - `xiudi/xd60/rev2` - `xiudi/xd60/rev3` - `xiudi/xd68` - `xiudi/xd75` - `xiudi/xd84pro` - `xiudi/xd87` - `xmmx` - `ydkb/chili` - `ydkb/grape` - `ydkb/just60` - `yiancardesigns/barleycorn` - `yiancardesigns/gingham` - `yiancardesigns/seigaiha` - `ymdk/melody96/soldered` - `ymdk/np21` - `ymdk/yd60mq` - `ymdk/ymd09` - `ymdk/ymd67` - `yoichiro/lunakey_mini` - `yushakobo/quick7` - `yynmt/acperience12/rev1` - `yynmt/dozen0` - `yynmt/kagamidget` - `zigotica/z12` - `zigotica/z34` - `zj68` - `zlant` - `zoo/wampus` - `zsa/moonlander` - `ztboards/after` - `ztboards/noon` --- keyboards/x16/config.h | 38 ------------------ keyboards/x16/keyboard.json | 6 +++ keyboards/xelus/akis/config.h | 23 ----------- keyboards/xelus/akis/keyboard.json | 6 +++ keyboards/xelus/dharma/config.h | 23 ----------- keyboards/xelus/dharma/keyboard.json | 6 +++ keyboards/xelus/kangaroo/rev1/config.h | 5 --- keyboards/xelus/kangaroo/rev1/keyboard.json | 6 +++ keyboards/xelus/kangaroo/rev2/config.h | 22 ----------- keyboards/xelus/kangaroo/rev2/keyboard.json | 6 +++ keyboards/xelus/ninjin/config.h | 6 --- keyboards/xelus/ninjin/keyboard.json | 6 +++ keyboards/xelus/pachi/mini_32u4/config.h | 22 ----------- keyboards/xelus/pachi/mini_32u4/keyboard.json | 6 +++ keyboards/xelus/pachi/rev1/config.h | 22 ----------- keyboards/xelus/pachi/rev1/keyboard.json | 6 +++ keyboards/xelus/snap96/config.h | 6 --- keyboards/xelus/snap96/keyboard.json | 6 +++ keyboards/xelus/xs108/config.h | 5 --- keyboards/xelus/xs108/keyboard.json | 6 +++ keyboards/xiudi/xd60/rev2/config.h | 23 ----------- keyboards/xiudi/xd60/rev2/keyboard.json | 6 +++ keyboards/xiudi/xd60/rev3/config.h | 23 ----------- keyboards/xiudi/xd60/rev3/keyboard.json | 6 +++ keyboards/xiudi/xd68/config.h | 39 ------------------- keyboards/xiudi/xd68/keyboard.json | 6 +++ keyboards/xiudi/xd75/config.h | 39 ------------------- keyboards/xiudi/xd75/keyboard.json | 6 +++ keyboards/xiudi/xd84pro/config.h | 22 ----------- keyboards/xiudi/xd84pro/keyboard.json | 6 +++ keyboards/xiudi/xd87/config.h | 39 ------------------- keyboards/xiudi/xd87/keyboard.json | 6 +++ keyboards/xmmx/config.h | 7 ---- keyboards/xmmx/keyboard.json | 6 +++ keyboards/ydkb/chili/config.h | 39 ------------------- keyboards/ydkb/chili/keyboard.json | 6 +++ keyboards/ydkb/grape/config.h | 5 --- keyboards/ydkb/grape/keyboard.json | 6 +++ keyboards/ydkb/just60/config.h | 23 ----------- keyboards/ydkb/just60/keyboard.json | 6 +++ keyboards/yiancardesigns/barleycorn/config.h | 5 --- .../yiancardesigns/barleycorn/keyboard.json | 6 +++ keyboards/yiancardesigns/gingham/config.h | 5 --- .../yiancardesigns/gingham/keyboard.json | 6 +++ keyboards/yiancardesigns/seigaiha/config.h | 5 --- .../yiancardesigns/seigaiha/keyboard.json | 6 +++ keyboards/ymdk/melody96/soldered/config.h | 7 ---- .../ymdk/melody96/soldered/keyboard.json | 6 +++ keyboards/ymdk/np21/config.h | 39 ------------------- keyboards/ymdk/np21/keyboard.json | 6 +++ keyboards/ymdk/yd60mq/config.h | 4 -- keyboards/ymdk/yd60mq/info.json | 6 +++ keyboards/ymdk/ymd09/config.h | 24 ------------ keyboards/ymdk/ymd09/keyboard.json | 6 +++ keyboards/ymdk/ymd67/config.h | 4 -- keyboards/ymdk/ymd67/keyboard.json | 6 +++ keyboards/yoichiro/lunakey_mini/config.h | 5 --- keyboards/yoichiro/lunakey_mini/keyboard.json | 6 +++ keyboards/yushakobo/quick7/config.h | 39 ------------------- keyboards/yushakobo/quick7/keyboard.json | 6 +++ keyboards/yynmt/acperience12/rev1/config.h | 27 ------------- .../yynmt/acperience12/rev1/keyboard.json | 6 +++ keyboards/yynmt/dozen0/config.h | 39 ------------------- keyboards/yynmt/dozen0/keyboard.json | 6 +++ keyboards/yynmt/kagamidget/config.h | 39 ------------------- keyboards/yynmt/kagamidget/keyboard.json | 6 +++ keyboards/zigotica/z12/config.h | 22 ----------- keyboards/zigotica/z12/keyboard.json | 6 +++ keyboards/zigotica/z34/config.h | 5 --- keyboards/zigotica/z34/keyboard.json | 6 +++ keyboards/zj68/config.h | 24 ------------ keyboards/zj68/keyboard.json | 6 +++ keyboards/zlant/config.h | 7 ---- keyboards/zlant/keyboard.json | 6 +++ keyboards/zoo/wampus/config.h | 5 --- keyboards/zoo/wampus/keyboard.json | 6 +++ keyboards/zsa/moonlander/config.h | 5 --- keyboards/zsa/moonlander/keyboard.json | 6 +++ keyboards/ztboards/after/config.h | 23 ----------- keyboards/ztboards/after/keyboard.json | 6 +++ keyboards/ztboards/noon/config.h | 23 ----------- keyboards/ztboards/noon/keyboard.json | 6 +++ 82 files changed, 246 insertions(+), 787 deletions(-) delete mode 100644 keyboards/x16/config.h delete mode 100644 keyboards/xelus/akis/config.h delete mode 100644 keyboards/xelus/dharma/config.h delete mode 100644 keyboards/xelus/kangaroo/rev2/config.h delete mode 100644 keyboards/xelus/pachi/mini_32u4/config.h delete mode 100644 keyboards/xelus/pachi/rev1/config.h delete mode 100644 keyboards/xelus/snap96/config.h delete mode 100644 keyboards/xiudi/xd60/rev2/config.h delete mode 100644 keyboards/xiudi/xd60/rev3/config.h delete mode 100644 keyboards/xiudi/xd68/config.h delete mode 100644 keyboards/xiudi/xd75/config.h delete mode 100644 keyboards/xiudi/xd84pro/config.h delete mode 100644 keyboards/xiudi/xd87/config.h delete mode 100644 keyboards/xmmx/config.h delete mode 100644 keyboards/ydkb/chili/config.h delete mode 100644 keyboards/ydkb/just60/config.h delete mode 100644 keyboards/ymdk/melody96/soldered/config.h delete mode 100644 keyboards/ymdk/np21/config.h delete mode 100644 keyboards/ymdk/yd60mq/config.h delete mode 100644 keyboards/ymdk/ymd09/config.h delete mode 100644 keyboards/ymdk/ymd67/config.h delete mode 100644 keyboards/yushakobo/quick7/config.h delete mode 100644 keyboards/yynmt/acperience12/rev1/config.h delete mode 100644 keyboards/yynmt/dozen0/config.h delete mode 100644 keyboards/yynmt/kagamidget/config.h delete mode 100644 keyboards/zigotica/z12/config.h delete mode 100644 keyboards/zj68/config.h delete mode 100755 keyboards/zlant/config.h delete mode 100644 keyboards/ztboards/after/config.h delete mode 100644 keyboards/ztboards/noon/config.h diff --git a/keyboards/x16/config.h b/keyboards/x16/config.h deleted file mode 100644 index c30966d9d2f..00000000000 --- a/keyboards/x16/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2019 - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/x16/keyboard.json b/keyboards/x16/keyboard.json index faf90df99a5..4d407e53329 100644 --- a/keyboards/x16/keyboard.json +++ b/keyboards/x16/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["C7", "C6", "B4", "D7"], "rows": ["E6", "F7", "D6", "B6"] diff --git a/keyboards/xelus/akis/config.h b/keyboards/xelus/akis/config.h deleted file mode 100644 index 5df8b9c56bd..00000000000 --- a/keyboards/xelus/akis/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Harrison Chan (Xelus) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xelus/akis/keyboard.json b/keyboards/xelus/akis/keyboard.json index 5163b414c41..23a8178b265 100644 --- a/keyboards/xelus/akis/keyboard.json +++ b/keyboards/xelus/akis/keyboard.json @@ -38,6 +38,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "F6", "F7", "C7", "C6", "B6", "B5"], "rows": ["F5", "F4", "F1", "F0", "E6"] diff --git a/keyboards/xelus/dharma/config.h b/keyboards/xelus/dharma/config.h deleted file mode 100644 index 5df8b9c56bd..00000000000 --- a/keyboards/xelus/dharma/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 Harrison Chan (Xelus) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xelus/dharma/keyboard.json b/keyboards/xelus/dharma/keyboard.json index 84ef6045588..8d6b7465277 100644 --- a/keyboards/xelus/dharma/keyboard.json +++ b/keyboards/xelus/dharma/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2", "B1", "D5", "D4", "E6", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1"], "rows": ["D0", "D1", "D2", "D3", "B0"] diff --git a/keyboards/xelus/kangaroo/rev1/config.h b/keyboards/xelus/kangaroo/rev1/config.h index c174b67e573..62c06133c06 100644 --- a/keyboards/xelus/kangaroo/rev1/config.h +++ b/keyboards/xelus/kangaroo/rev1/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // I2C OLED defines #define I2C1_SCL_PIN B8 #define I2C1_SDA_PIN B9 diff --git a/keyboards/xelus/kangaroo/rev1/keyboard.json b/keyboards/xelus/kangaroo/rev1/keyboard.json index 12d72f43737..cc5f09b15f8 100644 --- a/keyboards/xelus/kangaroo/rev1/keyboard.json +++ b/keyboards/xelus/kangaroo/rev1/keyboard.json @@ -11,6 +11,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B10", "B2", "B11", "A10", "B7", "B6", "B5", "B4", "B3", "A15", "A14"], "rows": ["A9", "A8", "B15", "B14", "B13", "B12", "A4", "A5", "A6", "A7", "B0", "B1"] diff --git a/keyboards/xelus/kangaroo/rev2/config.h b/keyboards/xelus/kangaroo/rev2/config.h deleted file mode 100644 index dfe8035b10c..00000000000 --- a/keyboards/xelus/kangaroo/rev2/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Harrison Chan (Xelus) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xelus/kangaroo/rev2/keyboard.json b/keyboards/xelus/kangaroo/rev2/keyboard.json index 1d6794cfa32..1fb7aaa6937 100644 --- a/keyboards/xelus/kangaroo/rev2/keyboard.json +++ b/keyboards/xelus/kangaroo/rev2/keyboard.json @@ -11,6 +11,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B10", "B2", "B11", "A10", "B7", "B6", "B5", "B4", "B3", "A15", "A14"], "rows": ["A9", "A8", "B15", "B14", "B13", "B12", "A4", "A5", "A6", "A7", "B0", "B1"] diff --git a/keyboards/xelus/ninjin/config.h b/keyboards/xelus/ninjin/config.h index 7a8ac2f0130..6180fe50d7a 100644 --- a/keyboards/xelus/ninjin/config.h +++ b/keyboards/xelus/ninjin/config.h @@ -23,9 +23,3 @@ #define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM5 #define WS2812_PWM_DMA_CHANNEL 3 #define WS2812_EXTERNAL_PULLUP - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xelus/ninjin/keyboard.json b/keyboards/xelus/ninjin/keyboard.json index 36e6a390339..34032ea4269 100644 --- a/keyboards/xelus/ninjin/keyboard.json +++ b/keyboards/xelus/ninjin/keyboard.json @@ -37,6 +37,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A9", "A8", "B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "B6", "B5"], "rows": ["B4", "B3", "A15", "A3", "B9", "B8"] diff --git a/keyboards/xelus/pachi/mini_32u4/config.h b/keyboards/xelus/pachi/mini_32u4/config.h deleted file mode 100644 index 651f613045d..00000000000 --- a/keyboards/xelus/pachi/mini_32u4/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Harrison Chan (Xelus) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xelus/pachi/mini_32u4/keyboard.json b/keyboards/xelus/pachi/mini_32u4/keyboard.json index e5058d0f088..590b32de6b6 100644 --- a/keyboards/xelus/pachi/mini_32u4/keyboard.json +++ b/keyboards/xelus/pachi/mini_32u4/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "E6", "B7", "D0"], "rows": ["B0", "B1", "B2", "F0", "D2", "D1"] diff --git a/keyboards/xelus/pachi/rev1/config.h b/keyboards/xelus/pachi/rev1/config.h deleted file mode 100644 index 651f613045d..00000000000 --- a/keyboards/xelus/pachi/rev1/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Harrison Chan (Xelus) - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xelus/pachi/rev1/keyboard.json b/keyboards/xelus/pachi/rev1/keyboard.json index 1afdfe11935..98b59c8641a 100644 --- a/keyboards/xelus/pachi/rev1/keyboard.json +++ b/keyboards/xelus/pachi/rev1/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A2", "A1", "A0", "A3", "B6", "B5"], "rows": ["B4", "B3", "A15", "B15", "B9", "B8"] diff --git a/keyboards/xelus/snap96/config.h b/keyboards/xelus/snap96/config.h deleted file mode 100644 index c6f9a6c1bfd..00000000000 --- a/keyboards/xelus/snap96/config.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap -#define LOCKING_SUPPORT_ENABLE -// Locking resynchronize hack -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xelus/snap96/keyboard.json b/keyboards/xelus/snap96/keyboard.json index c4c806d8e8b..f9ce42dd15f 100644 --- a/keyboards/xelus/snap96/keyboard.json +++ b/keyboards/xelus/snap96/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "D5", "B7", "D0", "F5", "D3", "B4", "B5", "D4", "D6"], "rows": ["B2", "B1", "B0", "C7", "F6", "F7", "B3", "D1", "D2", "D7", "B6", "C6"] diff --git a/keyboards/xelus/xs108/config.h b/keyboards/xelus/xs108/config.h index 4b3b447c957..3ac31458a15 100644 --- a/keyboards/xelus/xs108/config.h +++ b/keyboards/xelus/xs108/config.h @@ -16,11 +16,6 @@ #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // I2C setup #define I2C1_SCL_PIN B8 #define I2C1_SDA_PIN B9 diff --git a/keyboards/xelus/xs108/keyboard.json b/keyboards/xelus/xs108/keyboard.json index e80292365a6..14d442d197c 100644 --- a/keyboards/xelus/xs108/keyboard.json +++ b/keyboards/xelus/xs108/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A9", "A8", "B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "B6", "B5", "B4", "B3", "A15", "A14"], "rows": ["C14", "C13", "A10", "A3", "A1", "A0"] diff --git a/keyboards/xiudi/xd60/rev2/config.h b/keyboards/xiudi/xd60/rev2/config.h deleted file mode 100644 index 4e596948184..00000000000 --- a/keyboards/xiudi/xd60/rev2/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xiudi/xd60/rev2/keyboard.json b/keyboards/xiudi/xd60/rev2/keyboard.json index 639c2dda9e0..8e03fdba20a 100644 --- a/keyboards/xiudi/xd60/rev2/keyboard.json +++ b/keyboards/xiudi/xd60/rev2/keyboard.json @@ -13,6 +13,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/xiudi/xd60/rev3/config.h b/keyboards/xiudi/xd60/rev3/config.h deleted file mode 100644 index 61a74eb88a9..00000000000 --- a/keyboards/xiudi/xd60/rev3/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Rodrigo Feijao - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xiudi/xd60/rev3/keyboard.json b/keyboards/xiudi/xd60/rev3/keyboard.json index 5b12c38f8ec..09af3681af3 100644 --- a/keyboards/xiudi/xd60/rev3/keyboard.json +++ b/keyboards/xiudi/xd60/rev3/keyboard.json @@ -13,6 +13,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/xiudi/xd68/config.h b/keyboards/xiudi/xd68/config.h deleted file mode 100644 index 139fb913228..00000000000 --- a/keyboards/xiudi/xd68/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 Michael Campbell - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/xiudi/xd68/keyboard.json b/keyboards/xiudi/xd68/keyboard.json index 1836feb49d5..620c0b59639 100644 --- a/keyboards/xiudi/xd68/keyboard.json +++ b/keyboards/xiudi/xd68/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3", "F7"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/xiudi/xd75/config.h b/keyboards/xiudi/xd75/config.h deleted file mode 100644 index 9bbab0cdf0b..00000000000 --- a/keyboards/xiudi/xd75/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 Benjamin Kesselring - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/xiudi/xd75/keyboard.json b/keyboards/xiudi/xd75/keyboard.json index 5086134cf1a..df1ec335776 100644 --- a/keyboards/xiudi/xd75/keyboard.json +++ b/keyboards/xiudi/xd75/keyboard.json @@ -17,6 +17,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3", "B0"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/xiudi/xd84pro/config.h b/keyboards/xiudi/xd84pro/config.h deleted file mode 100644 index 1e378e8f472..00000000000 --- a/keyboards/xiudi/xd84pro/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xiudi/xd84pro/keyboard.json b/keyboards/xiudi/xd84pro/keyboard.json index 23bad3fcab1..5388d8f7c22 100644 --- a/keyboards/xiudi/xd84pro/keyboard.json +++ b/keyboards/xiudi/xd84pro/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3", "F7"], "rows": ["F4", "D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/xiudi/xd87/config.h b/keyboards/xiudi/xd87/config.h deleted file mode 100644 index 95110fa5900..00000000000 --- a/keyboards/xiudi/xd87/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2018 Alexander Fougner - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/xiudi/xd87/keyboard.json b/keyboards/xiudi/xd87/keyboard.json index a84c5660a8a..d46c6ccba72 100644 --- a/keyboards/xiudi/xd87/keyboard.json +++ b/keyboards/xiudi/xd87/keyboard.json @@ -17,6 +17,12 @@ "mousekey": false, "nkro": false }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "B5", "B6", "C6", "D4", "D6", "D7", "B4", "B2", "B3", "D2"], "rows": ["D1", "B0", "B1", "C7", "D3", "D5"] diff --git a/keyboards/xmmx/config.h b/keyboards/xmmx/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/xmmx/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/xmmx/keyboard.json b/keyboards/xmmx/keyboard.json index c0687ca1b7b..2e6813520c0 100644 --- a/keyboards/xmmx/keyboard.json +++ b/keyboards/xmmx/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B3", "B2", "B1", "E6", "B7", "C7", "C6", "D4", "D6", "D7", "B4", "D0", "D1", "F7", "D2", "D3", "D5"], "rows": ["B0", "F6", "F5", "F4", "F1", "F0"] diff --git a/keyboards/ydkb/chili/config.h b/keyboards/ydkb/chili/config.h deleted file mode 100644 index b9449c4714b..00000000000 --- a/keyboards/ydkb/chili/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ydkb/chili/keyboard.json b/keyboards/ydkb/chili/keyboard.json index 78dd6318fe8..92552d96a3d 100644 --- a/keyboards/ydkb/chili/keyboard.json +++ b/keyboards/ydkb/chili/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6"], "rows": ["F5", "F4", "F1", "F0", "E6", "B0", "D5", "D3", "D2", "D1", "D0"] diff --git a/keyboards/ydkb/grape/config.h b/keyboards/ydkb/grape/config.h index a835243d580..5b08baa214c 100644 --- a/keyboards/ydkb/grape/config.h +++ b/keyboards/ydkb/grape/config.h @@ -23,8 +23,3 @@ #define MATRIX_COL_PINS { F4, F5, F6, F7, C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, B3, B2, B1, B0 } #define SN74X138_ADDRESS_PINS { D2, D1, D0 } - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ydkb/grape/keyboard.json b/keyboards/ydkb/grape/keyboard.json index f8f0364d93d..e1645d7d035 100644 --- a/keyboards/ydkb/grape/keyboard.json +++ b/keyboards/ydkb/grape/keyboard.json @@ -15,6 +15,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "backlight": { "pin": "B7", "breathing": true diff --git a/keyboards/ydkb/just60/config.h b/keyboards/ydkb/just60/config.h deleted file mode 100644 index 4ec059e4b58..00000000000 --- a/keyboards/ydkb/just60/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2019 Jianfei Wang - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ydkb/just60/keyboard.json b/keyboards/ydkb/just60/keyboard.json index fb46e08ea31..586ea80f21f 100644 --- a/keyboards/ydkb/just60/keyboard.json +++ b/keyboards/ydkb/just60/keyboard.json @@ -11,6 +11,12 @@ "features": { "bootmagic": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D6", "D7", "B4", "B6", "B5", "B7", "F7", "F6", "F5", "F4", "F1", "F0", "E6", "B0"], "rows": ["E2", "C7", "B3", "B2", "B1"] diff --git a/keyboards/yiancardesigns/barleycorn/config.h b/keyboards/yiancardesigns/barleycorn/config.h index 5e90dd35159..137ad99b8d8 100644 --- a/keyboards/yiancardesigns/barleycorn/config.h +++ b/keyboards/yiancardesigns/barleycorn/config.h @@ -41,11 +41,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/yiancardesigns/barleycorn/keyboard.json b/keyboards/yiancardesigns/barleycorn/keyboard.json index 2fd79052c91..a1676840a55 100644 --- a/keyboards/yiancardesigns/barleycorn/keyboard.json +++ b/keyboards/yiancardesigns/barleycorn/keyboard.json @@ -13,6 +13,12 @@ "extrakey": true, "mousekey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "processor": "atmega328p", "bootloader": "usbasploader", "layouts": { diff --git a/keyboards/yiancardesigns/gingham/config.h b/keyboards/yiancardesigns/gingham/config.h index fe06114dd56..20dd8f5eaf7 100644 --- a/keyboards/yiancardesigns/gingham/config.h +++ b/keyboards/yiancardesigns/gingham/config.h @@ -41,11 +41,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/yiancardesigns/gingham/keyboard.json b/keyboards/yiancardesigns/gingham/keyboard.json index eb5573a355b..d1d9b866e8d 100644 --- a/keyboards/yiancardesigns/gingham/keyboard.json +++ b/keyboards/yiancardesigns/gingham/keyboard.json @@ -14,6 +14,12 @@ "extrakey": true, "mousekey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "processor": "atmega328p", "bootloader": "usbasploader", "layouts": { diff --git a/keyboards/yiancardesigns/seigaiha/config.h b/keyboards/yiancardesigns/seigaiha/config.h index 70ce1c29abf..427da6610a9 100644 --- a/keyboards/yiancardesigns/seigaiha/config.h +++ b/keyboards/yiancardesigns/seigaiha/config.h @@ -41,11 +41,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/yiancardesigns/seigaiha/keyboard.json b/keyboards/yiancardesigns/seigaiha/keyboard.json index 5890357c99f..bb694f5b8ee 100644 --- a/keyboards/yiancardesigns/seigaiha/keyboard.json +++ b/keyboards/yiancardesigns/seigaiha/keyboard.json @@ -14,6 +14,12 @@ "extrakey": true, "mousekey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "bootmagic": { "matrix": [1, 0] }, diff --git a/keyboards/ymdk/melody96/soldered/config.h b/keyboards/ymdk/melody96/soldered/config.h deleted file mode 100644 index 5f360813239..00000000000 --- a/keyboards/ymdk/melody96/soldered/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ymdk/melody96/soldered/keyboard.json b/keyboards/ymdk/melody96/soldered/keyboard.json index 06d39472406..dbb2ddc32bb 100644 --- a/keyboards/ymdk/melody96/soldered/keyboard.json +++ b/keyboards/ymdk/melody96/soldered/keyboard.json @@ -16,6 +16,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4"], "rows": ["B7", "B3", "B2", "B1", "B0", "E6", "F0", "F1", "F4", "F5", "F6", "F7"] diff --git a/keyboards/ymdk/np21/config.h b/keyboards/ymdk/np21/config.h deleted file mode 100644 index 6c187131d44..00000000000 --- a/keyboards/ymdk/np21/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2017 Luiz Ribeiro - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/ymdk/np21/keyboard.json b/keyboards/ymdk/np21/keyboard.json index 14a075042b5..a1997161ee9 100644 --- a/keyboards/ymdk/np21/keyboard.json +++ b/keyboards/ymdk/np21/keyboard.json @@ -18,6 +18,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A5"], "rows": ["B0", "B1", "B2", "B3"] diff --git a/keyboards/ymdk/yd60mq/config.h b/keyboards/ymdk/yd60mq/config.h deleted file mode 100644 index 6f34d5132a8..00000000000 --- a/keyboards/ymdk/yd60mq/config.h +++ /dev/null @@ -1,4 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE diff --git a/keyboards/ymdk/yd60mq/info.json b/keyboards/ymdk/yd60mq/info.json index a1c4bc8f760..4152ed6e077 100644 --- a/keyboards/ymdk/yd60mq/info.json +++ b/keyboards/ymdk/yd60mq/info.json @@ -17,6 +17,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": false + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "F7", "B5", "B4", "D7", "D6", "B3", "B2"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/ymdk/ymd09/config.h b/keyboards/ymdk/ymd09/config.h deleted file mode 100644 index 8d59b7832f4..00000000000 --- a/keyboards/ymdk/ymd09/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2020 Patrick Fruh -Copyright 2023 SHVD3x - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ymdk/ymd09/keyboard.json b/keyboards/ymdk/ymd09/keyboard.json index 52dc9d31609..571aa8c45f6 100644 --- a/keyboards/ymdk/ymd09/keyboard.json +++ b/keyboards/ymdk/ymd09/keyboard.json @@ -24,6 +24,12 @@ "nkro": true, "rgb_matrix": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "ws2812": { "pin": "E2" }, diff --git a/keyboards/ymdk/ymd67/config.h b/keyboards/ymdk/ymd67/config.h deleted file mode 100644 index 6f34d5132a8..00000000000 --- a/keyboards/ymdk/ymd67/config.h +++ /dev/null @@ -1,4 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE diff --git a/keyboards/ymdk/ymd67/keyboard.json b/keyboards/ymdk/ymd67/keyboard.json index 5e470553d5f..5f9ba275f97 100644 --- a/keyboards/ymdk/ymd67/keyboard.json +++ b/keyboards/ymdk/ymd67/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": false + } + }, "matrix_pins": { "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "F7", "B5", "B4", "D7", "D6", "B3", "B2"], "rows": ["D0", "D1", "D2", "D3", "D5"] diff --git a/keyboards/yoichiro/lunakey_mini/config.h b/keyboards/yoichiro/lunakey_mini/config.h index 079dd3e3d73..c817b5cfe3e 100644 --- a/keyboards/yoichiro/lunakey_mini/config.h +++ b/keyboards/yoichiro/lunakey_mini/config.h @@ -20,11 +20,6 @@ along with this program. If not, see . /* Audio Support */ #define AUDIO_PIN C6 -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/yoichiro/lunakey_mini/keyboard.json b/keyboards/yoichiro/lunakey_mini/keyboard.json index 5fbf6c8fbc9..e31f09c285e 100644 --- a/keyboards/yoichiro/lunakey_mini/keyboard.json +++ b/keyboards/yoichiro/lunakey_mini/keyboard.json @@ -12,6 +12,12 @@ "bootmagic": true, "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3"], "rows": ["D4", "D7", "E6", "B4"] diff --git a/keyboards/yushakobo/quick7/config.h b/keyboards/yushakobo/quick7/config.h deleted file mode 100644 index 1c876487949..00000000000 --- a/keyboards/yushakobo/quick7/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2020 yushakobo - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/yushakobo/quick7/keyboard.json b/keyboards/yushakobo/quick7/keyboard.json index 14d65945ce9..ba4854015bf 100644 --- a/keyboards/yushakobo/quick7/keyboard.json +++ b/keyboards/yushakobo/quick7/keyboard.json @@ -41,6 +41,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ ["D2", "D4", "F4"], diff --git a/keyboards/yynmt/acperience12/rev1/config.h b/keyboards/yynmt/acperience12/rev1/config.h deleted file mode 100644 index 65a752a97f5..00000000000 --- a/keyboards/yynmt/acperience12/rev1/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright 2021 yynmt - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT diff --git a/keyboards/yynmt/acperience12/rev1/keyboard.json b/keyboards/yynmt/acperience12/rev1/keyboard.json index deb02bd55d4..ccdf2fa1113 100644 --- a/keyboards/yynmt/acperience12/rev1/keyboard.json +++ b/keyboards/yynmt/acperience12/rev1/keyboard.json @@ -13,6 +13,12 @@ "extrakey": true, "mousekey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "processor": "atmega32u2", "bootloader": "atmel-dfu", "matrix_pins": { diff --git a/keyboards/yynmt/dozen0/config.h b/keyboards/yynmt/dozen0/config.h deleted file mode 100644 index eb679ebba0a..00000000000 --- a/keyboards/yynmt/dozen0/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 yynmt - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/yynmt/dozen0/keyboard.json b/keyboards/yynmt/dozen0/keyboard.json index cdd55389f3c..1ad2b13be05 100644 --- a/keyboards/yynmt/dozen0/keyboard.json +++ b/keyboards/yynmt/dozen0/keyboard.json @@ -37,6 +37,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["B6", "B2", "B3", "B1", "F7", "F6", "B5", "B4", "E6", "D7", "C6", "D4"], "rows": ["F4"] diff --git a/keyboards/yynmt/kagamidget/config.h b/keyboards/yynmt/kagamidget/config.h deleted file mode 100644 index eb679ebba0a..00000000000 --- a/keyboards/yynmt/kagamidget/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2019 yynmt - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * 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 diff --git a/keyboards/yynmt/kagamidget/keyboard.json b/keyboards/yynmt/kagamidget/keyboard.json index 15e48da7dd3..a4dff734b5f 100644 --- a/keyboards/yynmt/kagamidget/keyboard.json +++ b/keyboards/yynmt/kagamidget/keyboard.json @@ -37,6 +37,12 @@ "nkro": false, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5", "B6", "B2", "B3", "B1", "F7", "F6"], "rows": ["D1", "D0", "F4", "F5"] diff --git a/keyboards/zigotica/z12/config.h b/keyboards/zigotica/z12/config.h deleted file mode 100644 index fef7fb59bd1..00000000000 --- a/keyboards/zigotica/z12/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2020 Sergi Meseguer - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/zigotica/z12/keyboard.json b/keyboards/zigotica/z12/keyboard.json index d9791d9c5ef..2d3e92d6e2c 100644 --- a/keyboards/zigotica/z12/keyboard.json +++ b/keyboards/zigotica/z12/keyboard.json @@ -29,6 +29,12 @@ "nkro": false, "oled": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "direct": [ [null, "E6", "C6", null], diff --git a/keyboards/zigotica/z34/config.h b/keyboards/zigotica/z34/config.h index d2ec68cc394..10c442f2066 100644 --- a/keyboards/zigotica/z34/config.h +++ b/keyboards/zigotica/z34/config.h @@ -16,11 +16,6 @@ along with this program. If not, see . #pragma once -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - // EE_HANDS MASTER_RIGHT MASTER_LEFT #define MASTER_RIGHT diff --git a/keyboards/zigotica/z34/keyboard.json b/keyboards/zigotica/z34/keyboard.json index 5faa9b23b21..c08934360e4 100644 --- a/keyboards/zigotica/z34/keyboard.json +++ b/keyboards/zigotica/z34/keyboard.json @@ -14,6 +14,12 @@ "features": { "extrakey": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "processor": "atmega32u4", "bootloader": "caterina", "matrix_pins": { diff --git a/keyboards/zj68/config.h b/keyboards/zj68/config.h deleted file mode 100644 index f97ce7b0f84..00000000000 --- a/keyboards/zj68/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2019 Collin Diekvoss - -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 . -*/ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/zj68/keyboard.json b/keyboards/zj68/keyboard.json index 3adf890df90..9273b81cd5a 100644 --- a/keyboards/zj68/keyboard.json +++ b/keyboards/zj68/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["B0", "B1", "B2", "B3", "B7"] diff --git a/keyboards/zlant/config.h b/keyboards/zlant/config.h deleted file mode 100755 index 5f360813239..00000000000 --- a/keyboards/zlant/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/zlant/keyboard.json b/keyboards/zlant/keyboard.json index d59b1c3f19d..965a259c3be 100644 --- a/keyboards/zlant/keyboard.json +++ b/keyboards/zlant/keyboard.json @@ -15,6 +15,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "B7", "D1", "D2", "D3", "B3", "B2"], "rows": ["B0", "B1", "D4", "D5"] diff --git a/keyboards/zoo/wampus/config.h b/keyboards/zoo/wampus/config.h index e0ddfaca88c..b64c645a415 100644 --- a/keyboards/zoo/wampus/config.h +++ b/keyboards/zoo/wampus/config.h @@ -36,8 +36,3 @@ along with this program. If not, see . #define I2C1_TIMINGR_SDADEL 1U #define I2C1_TIMINGR_SCLH 3U #define I2C1_TIMINGR_SCLL 9U - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/zoo/wampus/keyboard.json b/keyboards/zoo/wampus/keyboard.json index fdc10ae2108..3e65c502319 100644 --- a/keyboards/zoo/wampus/keyboard.json +++ b/keyboards/zoo/wampus/keyboard.json @@ -18,6 +18,12 @@ "nkro": true, "rgblight": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["A10", "A9", "A8", "B12", "A15", "A13", "A7", "A2", "A1", "A0", "F1", "F0", "B3", "B4", "B5"], "rows": ["C13", "C14", "A5", "A4", "A3"] diff --git a/keyboards/zsa/moonlander/config.h b/keyboards/zsa/moonlander/config.h index 9fbb7a64b5f..08870fba9d5 100644 --- a/keyboards/zsa/moonlander/config.h +++ b/keyboards/zsa/moonlander/config.h @@ -44,11 +44,6 @@ /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION ROW2COL -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/zsa/moonlander/keyboard.json b/keyboards/zsa/moonlander/keyboard.json index 08864fe2d77..571674fe1c8 100644 --- a/keyboards/zsa/moonlander/keyboard.json +++ b/keyboards/zsa/moonlander/keyboard.json @@ -22,6 +22,12 @@ "rgb_matrix": true, "swap_hands": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "audio": { "driver": "dac_additive" }, diff --git a/keyboards/ztboards/after/config.h b/keyboards/ztboards/after/config.h deleted file mode 100644 index 59d91c329de..00000000000 --- a/keyboards/ztboards/after/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2019 - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ztboards/after/keyboard.json b/keyboards/ztboards/after/keyboard.json index 08fcdb3625f..1b023908377 100644 --- a/keyboards/ztboards/after/keyboard.json +++ b/keyboards/ztboards/after/keyboard.json @@ -17,6 +17,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D0", "D1", "D2", "D3", "D7", "D6", "D4", "C7", "C6", "B6", "B5", "B4", "F7", "F0", "F4", "F1"], "rows": ["B3", "F6", "F5", "D5", "B2"] diff --git a/keyboards/ztboards/noon/config.h b/keyboards/ztboards/noon/config.h deleted file mode 100644 index 59d91c329de..00000000000 --- a/keyboards/ztboards/noon/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2019 - * - * 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 . - */ - -#pragma once - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE - -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/ztboards/noon/keyboard.json b/keyboards/ztboards/noon/keyboard.json index 0f965963cfc..a3f9912acc4 100644 --- a/keyboards/ztboards/noon/keyboard.json +++ b/keyboards/ztboards/noon/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": true }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, "matrix_pins": { "cols": ["D2", "D1", "D0", "D4", "D6", "B2", "D7", "B4", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1"], "rows": ["B5", "D5", "D3", "B1", "F0"] From b8f29c38652fb56fd122e61018778fd5355a8739 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 25 May 2024 04:38:57 +1000 Subject: [PATCH 051/519] Update GPIO macros in keymaps (#23792) --- .../1up60rgb/keymaps/default/keymap.c | 8 ++--- .../1up60rgb/keymaps/iso/keymap.c | 8 ++--- .../1up60rgb/keymaps/tsangan/keymap.c | 8 ++--- keyboards/45_ats/keymaps/default/keymap.c | 6 ++-- keyboards/45_ats/keymaps/via/keymap.c | 6 ++-- .../blu/vimclutch/keymaps/default/keymap.c | 4 +-- keyboards/bobpad/keymaps/default/keymap.c | 2 +- keyboards/bobpad/keymaps/via/keymap.c | 10 +++--- .../siemens_tastatur/keymaps/default/keymap.c | 8 ++--- .../wraith/keymaps/default/keymap.c | 4 +-- .../keymaps/default/keymap.c | 2 +- .../kd83a_bfg_edition/keymaps/via/keymap.c | 2 +- .../keymaps/default/keymap.c | 2 +- .../kd87a_bfg_edition/keymaps/via/keymap.c | 2 +- keyboards/db/db63/keymaps/default/keymap.c | 4 +-- .../dm9records/plaid/keymaps/default/keymap.c | 32 ++++++++--------- .../dm9records/plaid/keymaps/via/keymap.c | 4 +-- .../dosa40rgb/keymaps/default/keymap.c | 4 +-- .../dyz/synthesis60/keymaps/default/keymap.c | 4 +-- .../keymaps/default_arrow/keymap.c | 4 +-- .../dyz/synthesis60/keymaps/via/keymap.c | 4 +-- .../evyd13/nt650/keymaps/default/keymap.c | 6 ++-- .../wonderland/keymaps/default/keymap.c | 6 ++-- .../handwired/daishi/keymaps/default/keymap.c | 12 +++---- .../dqz11n1g/keymaps/default/keymap.c | 6 ++-- .../handwired/jopr/keymaps/default/keymap.c | 12 +++---- .../jopr/keymaps/modded_white/keymap.c | 12 +++---- .../jotanck/keymaps/default/keymap.c | 12 +++---- .../handwired/kbod/keymaps/default/keymap.c | 8 ++--- .../keymaps/default/keymap.c | 6 ++-- .../prime_exl/keymaps/default/keymap.c | 8 ++--- .../handwired/prime_exl/keymaps/via/keymap.c | 8 ++--- .../handwired/sono1/keymaps/default/keymap.c | 12 +++---- keyboards/hp69/keymaps/via/keymap.c | 4 +-- .../jukaie/jk01/keymaps/default/keymap.c | 2 +- keyboards/jukaie/jk01/keymaps/via/keymap.c | 2 +- .../kmac_pad/keymaps/default/keymap.c | 4 +-- .../plaid_pad/keymaps/default/keymap.c | 2 +- .../keycapsss/plaid_pad/keymaps/via/keymap.c | 2 +- .../keyhive/navi10/keymaps/default/keymap.c | 4 +-- keyboards/kin80/keymaps/default/keymap.c | 2 +- keyboards/kinesis/keymaps/alvicstep/keymap.c | 8 ++--- keyboards/kmini/keymaps/default/keymap.c | 4 +-- keyboards/lime/keymaps/default/keymap.c | 4 +-- keyboards/makrosu/keymaps/default/keymap.c | 18 +++++----- keyboards/makrosu/keymaps/via/keymap.c | 18 +++++----- .../leftover30/keymaps/default/keymap.c | 4 +-- .../keymaps/default_isoenter/keymap.c | 4 +-- .../mechlovin/kay65/keymaps/default/keymap.c | 4 +-- .../mechlovin/kay65/keymaps/via/keymap.c | 4 +-- .../wearhaus66/keymaps/default/keymap.c | 4 +-- .../wearhaus66/keymaps/via/keymap.c | 4 +-- keyboards/minimon/bartlesplit/matrix.c | 20 +++++------ keyboards/noxary/268/keymaps/ansi/keymap.c | 8 ++--- keyboards/noxary/268/keymaps/default/keymap.c | 8 ++--- keyboards/noxary/268/keymaps/iso/keymap.c | 8 ++--- keyboards/orange75/keymaps/default/keymap.c | 24 ++++++------- .../peej/lumberjack/keymaps/via/keymap.c | 12 +++---- keyboards/planck/keymaps/default/keymap.c | 4 +-- .../playkbtw/pk60/keymaps/default/keymap.c | 8 ++--- keyboards/preonic/keymaps/default/keymap.c | 4 +-- .../primekb/prime_e/keymaps/default/keymap.c | 24 ++++++------- .../primekb/prime_e/keymaps/via/keymap.c | 24 ++++++------- keyboards/punk75/keymaps/default/keymap.c | 2 +- keyboards/punk75/keymaps/via/keymap.c | 2 +- .../retropad/keymaps/default/keymap.c | 18 +++++----- .../swiftrax/retropad/keymaps/via/keymap.c | 18 +++++----- keyboards/uk78/keymaps/default/keymap.c | 8 ++--- .../viktus/at101_bh/keymaps/default/keymap.c | 18 +++++----- .../viktus/sp_mini/keymaps/default/keymap.c | 24 ++++++------- keyboards/viktus/sp_mini/keymaps/via/keymap.c | 36 +++++++++---------- .../cajal/keymaps/default/keymap.c | 30 ++++++++-------- .../cajal/keymaps/default_ortho/keymap.c | 26 +++++++------- .../walletburner/cajal/keymaps/via/keymap.c | 30 ++++++++-------- .../cypher/rev1/keymaps/kwer/keymap.c | 12 +++---- .../work_board/keymaps/via/keymap.c | 12 +++---- .../wsk/g4m3ralpha/keymaps/default/keymap.c | 18 +++++----- .../wsk/gothic50/keymaps/default/keymap.c | 18 +++++----- .../wsk/gothic70/keymaps/default/keymap.c | 18 +++++----- keyboards/wsk/gothic70/keymaps/via/keymap.c | 12 +++---- keyboards/wsk/jerkin/keymaps/default/keymap.c | 22 ++++++------ keyboards/zsa/voyager/matrix.c | 2 +- 82 files changed, 402 insertions(+), 402 deletions(-) diff --git a/keyboards/1upkeyboards/1up60rgb/keymaps/default/keymap.c b/keyboards/1upkeyboards/1up60rgb/keymaps/default/keymap.c index 5792f51ca82..3b5442c9574 100644 --- a/keyboards/1upkeyboards/1up60rgb/keymaps/default/keymap.c +++ b/keyboards/1upkeyboards/1up60rgb/keymaps/default/keymap.c @@ -20,11 +20,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - setPinOutput(B2); - writePinLow(B2); + gpio_set_pin_output(B2); + gpio_write_pin_low(B2); } else { - setPinInput(B2); - writePinLow(B2); + gpio_set_pin_input(B2); + gpio_write_pin_low(B2); } return false; } diff --git a/keyboards/1upkeyboards/1up60rgb/keymaps/iso/keymap.c b/keyboards/1upkeyboards/1up60rgb/keymaps/iso/keymap.c index 20783c22cba..b720c984e45 100644 --- a/keyboards/1upkeyboards/1up60rgb/keymaps/iso/keymap.c +++ b/keyboards/1upkeyboards/1up60rgb/keymaps/iso/keymap.c @@ -20,11 +20,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - setPinOutput(B2); - writePinLow(B2); + gpio_set_pin_output(B2); + gpio_write_pin_low(B2); } else { - setPinInput(B2); - writePinLow(B2); + gpio_set_pin_input(B2); + gpio_write_pin_low(B2); } return false; } diff --git a/keyboards/1upkeyboards/1up60rgb/keymaps/tsangan/keymap.c b/keyboards/1upkeyboards/1up60rgb/keymaps/tsangan/keymap.c index 5cc92278859..a634d913b2c 100644 --- a/keyboards/1upkeyboards/1up60rgb/keymaps/tsangan/keymap.c +++ b/keyboards/1upkeyboards/1up60rgb/keymaps/tsangan/keymap.c @@ -20,11 +20,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - setPinOutput(B2); - writePinLow(B2); + gpio_set_pin_output(B2); + gpio_write_pin_low(B2); } else { - setPinInput(B2); - writePinLow(B2); + gpio_set_pin_input(B2); + gpio_write_pin_low(B2); } return false; } diff --git a/keyboards/45_ats/keymaps/default/keymap.c b/keyboards/45_ats/keymaps/default/keymap.c index 3208614b329..3d4b74ab40d 100644 --- a/keyboards/45_ats/keymaps/default/keymap.c +++ b/keyboards/45_ats/keymaps/default/keymap.c @@ -90,9 +90,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //function for layer indicator LED layer_state_t layer_state_set_user(layer_state_t state) { - writePin(D0, layer_state_cmp(state, 0)); - writePin(D1, layer_state_cmp(state, 1)); - writePin(D2, layer_state_cmp(state, 2)); + gpio_write_pin(D0, layer_state_cmp(state, 0)); + gpio_write_pin(D1, layer_state_cmp(state, 1)); + gpio_write_pin(D2, layer_state_cmp(state, 2)); return state; } diff --git a/keyboards/45_ats/keymaps/via/keymap.c b/keyboards/45_ats/keymaps/via/keymap.c index 3208614b329..3d4b74ab40d 100644 --- a/keyboards/45_ats/keymaps/via/keymap.c +++ b/keyboards/45_ats/keymaps/via/keymap.c @@ -90,9 +90,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //function for layer indicator LED layer_state_t layer_state_set_user(layer_state_t state) { - writePin(D0, layer_state_cmp(state, 0)); - writePin(D1, layer_state_cmp(state, 1)); - writePin(D2, layer_state_cmp(state, 2)); + gpio_write_pin(D0, layer_state_cmp(state, 0)); + gpio_write_pin(D1, layer_state_cmp(state, 1)); + gpio_write_pin(D2, layer_state_cmp(state, 2)); return state; } diff --git a/keyboards/blu/vimclutch/keymaps/default/keymap.c b/keyboards/blu/vimclutch/keymaps/default/keymap.c index 49eaa2b8816..9c602571d8b 100644 --- a/keyboards/blu/vimclutch/keymaps/default/keymap.c +++ b/keyboards/blu/vimclutch/keymaps/default/keymap.c @@ -37,8 +37,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Layer-specific lighting */ layer_state_t layer_state_set_user(layer_state_t state) { - writePin(F4, !layer_state_cmp(state, _VC)); - writePin(F5, !layer_state_cmp(state, _VIM)); + gpio_write_pin(F4, !layer_state_cmp(state, _VC)); + gpio_write_pin(F5, !layer_state_cmp(state, _VIM)); return state; }; diff --git a/keyboards/bobpad/keymaps/default/keymap.c b/keyboards/bobpad/keymaps/default/keymap.c index 5c7dcd591e1..f02c9764b7a 100644 --- a/keyboards/bobpad/keymaps/default/keymap.c +++ b/keyboards/bobpad/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; layer_state_t layer_state_set_user(layer_state_t state) { - writePin(D0, IS_LAYER_ON_STATE(state, 1)); + gpio_write_pin(D0, IS_LAYER_ON_STATE(state, 1)); return state; } diff --git a/keyboards/bobpad/keymaps/via/keymap.c b/keyboards/bobpad/keymaps/via/keymap.c index c244c6037e5..61292299036 100644 --- a/keyboards/bobpad/keymaps/via/keymap.c +++ b/keyboards/bobpad/keymaps/via/keymap.c @@ -46,11 +46,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // C6 E6 D7 void matrix_scan_user(void) { - writePin(C6, layer_state_is(1)); - writePin(E6, layer_state_is(2)); - writePin(D7, layer_state_is(3)); - writePin(D4, layer_state_is(4)); - writePin(D0, layer_state_is(5)); + gpio_write_pin(C6, layer_state_is(1)); + gpio_write_pin(E6, layer_state_is(2)); + gpio_write_pin(D7, layer_state_is(3)); + gpio_write_pin(D4, layer_state_is(4)); + gpio_write_pin(D0, layer_state_is(5)); if (is_alt_tab_active) { if (timer_elapsed(alt_tab_timer) > 1000) { unregister_code(KC_LWIN); diff --git a/keyboards/converter/siemens_tastatur/keymaps/default/keymap.c b/keyboards/converter/siemens_tastatur/keymaps/default/keymap.c index 0f3911a2d36..c6bda674e33 100644 --- a/keyboards/converter/siemens_tastatur/keymaps/default/keymap.c +++ b/keyboards/converter/siemens_tastatur/keymaps/default/keymap.c @@ -47,15 +47,15 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } void matrix_init_user(void) { - setPinOutput(B0); - writePinLow(B0); + gpio_set_pin_output(B0); + gpio_write_pin_low(B0); } bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - writePinHigh(B0); + gpio_write_pin_high(B0); } else { - writePinLow(B0); + gpio_write_pin_low(B0); } return false; } diff --git a/keyboards/cutie_club/wraith/keymaps/default/keymap.c b/keyboards/cutie_club/wraith/keymaps/default/keymap.c index 7759bb6e469..3e6c460a566 100644 --- a/keyboards/cutie_club/wraith/keymaps/default/keymap.c +++ b/keyboards/cutie_club/wraith/keymaps/default/keymap.c @@ -37,8 +37,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void matrix_scan_user(void) { // escape LED on layer 1 if (IS_LAYER_ON(1)) { - writePinLow(B0); + gpio_write_pin_low(B0); } else { - writePinHigh(B0); + gpio_write_pin_high(B0); } } diff --git a/keyboards/darkproject/kd83a_bfg_edition/keymaps/default/keymap.c b/keyboards/darkproject/kd83a_bfg_edition/keymaps/default/keymap.c index 0d426d3c9ac..0c23701f5b8 100644 --- a/keyboards/darkproject/kd83a_bfg_edition/keymaps/default/keymap.c +++ b/keyboards/darkproject/kd83a_bfg_edition/keymaps/default/keymap.c @@ -73,6 +73,6 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { #endif layer_state_t layer_state_set_user(layer_state_t state) { - writePin(C0, layer_state_cmp(state, 1)); + gpio_write_pin(C0, layer_state_cmp(state, 1)); return state; }; diff --git a/keyboards/darkproject/kd83a_bfg_edition/keymaps/via/keymap.c b/keyboards/darkproject/kd83a_bfg_edition/keymaps/via/keymap.c index 0d426d3c9ac..0c23701f5b8 100644 --- a/keyboards/darkproject/kd83a_bfg_edition/keymaps/via/keymap.c +++ b/keyboards/darkproject/kd83a_bfg_edition/keymaps/via/keymap.c @@ -73,6 +73,6 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { #endif layer_state_t layer_state_set_user(layer_state_t state) { - writePin(C0, layer_state_cmp(state, 1)); + gpio_write_pin(C0, layer_state_cmp(state, 1)); return state; }; diff --git a/keyboards/darkproject/kd87a_bfg_edition/keymaps/default/keymap.c b/keyboards/darkproject/kd87a_bfg_edition/keymaps/default/keymap.c index 5f475caa1b6..8d48ed9acfe 100644 --- a/keyboards/darkproject/kd87a_bfg_edition/keymaps/default/keymap.c +++ b/keyboards/darkproject/kd87a_bfg_edition/keymaps/default/keymap.c @@ -64,6 +64,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; layer_state_t layer_state_set_user(layer_state_t state) { - writePin(C0, layer_state_cmp(state, 1)); + gpio_write_pin(C0, layer_state_cmp(state, 1)); return state; }; \ No newline at end of file diff --git a/keyboards/darkproject/kd87a_bfg_edition/keymaps/via/keymap.c b/keyboards/darkproject/kd87a_bfg_edition/keymaps/via/keymap.c index 300855c452f..e4de9aff089 100644 --- a/keyboards/darkproject/kd87a_bfg_edition/keymaps/via/keymap.c +++ b/keyboards/darkproject/kd87a_bfg_edition/keymaps/via/keymap.c @@ -64,6 +64,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; layer_state_t layer_state_set_user(layer_state_t state) { - writePin(C0, layer_state_cmp(state, 1)); + gpio_write_pin(C0, layer_state_cmp(state, 1)); return state; }; diff --git a/keyboards/db/db63/keymaps/default/keymap.c b/keyboards/db/db63/keymaps/default/keymap.c index 409545b2a94..b1cc922c8f4 100644 --- a/keyboards/db/db63/keymaps/default/keymap.c +++ b/keyboards/db/db63/keymaps/default/keymap.c @@ -51,10 +51,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { rgblight_sethsv(HSV_CYAN); - writePinHigh(D1); + gpio_write_pin_high(D1); } else { rgblight_sethsv(HSV_GREEN); - writePinLow(D1); + gpio_write_pin_low(D1); } return false; } diff --git a/keyboards/dm9records/plaid/keymaps/default/keymap.c b/keyboards/dm9records/plaid/keymaps/default/keymap.c index 419f2590caf..2b366f49309 100644 --- a/keyboards/dm9records/plaid/keymaps/default/keymap.c +++ b/keyboards/dm9records/plaid/keymaps/default/keymap.c @@ -215,18 +215,18 @@ led_config_t led_config; //Set leds to saved state during powerup void keyboard_post_init_user(void) { // set LED pin modes - setPinOutput(LED_RED); - setPinOutput(LED_GREEN); + gpio_set_pin_output(LED_RED); + gpio_set_pin_output(LED_GREEN); // Call the post init code. led_config.raw = eeconfig_read_user(); if(led_config.red_mode == LEDMODE_ON) { - writePinHigh(LED_RED); + gpio_write_pin_high(LED_RED); } if(led_config.green_mode == LEDMODE_ON) { - writePinHigh(LED_GREEN); + gpio_write_pin_high(LED_GREEN); } } @@ -248,10 +248,10 @@ void led_keypress_update(uint8_t led, uint8_t led_mode, uint16_t keycode, keyrec for (int i=0;ievent.pressed) { - writePinHigh(led); + gpio_write_pin_high(led); } else { - writePinLow(led); + gpio_write_pin_low(led); } } } @@ -260,30 +260,30 @@ void led_keypress_update(uint8_t led, uint8_t led_mode, uint16_t keycode, keyrec if (record->event.pressed) { if(rand() % 2 == 1) { if(rand() % 2 == 0) { - writePinLow(led); + gpio_write_pin_low(led); } else { - writePinHigh(led); + gpio_write_pin_high(led); } } } break; case LEDMODE_KEY: if (record->event.pressed) { - writePinHigh(led); + gpio_write_pin_high(led); return; } else { - writePinLow(led); + gpio_write_pin_low(led); return; } break; case LEDMODE_ENTER: if (keycode==KC_ENT) { - writePinHigh(led); + gpio_write_pin_high(led); } else { - writePinLow(led); + gpio_write_pin_low(led); } break; @@ -345,11 +345,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { if (led_config.red_mode==LEDMODE_ON) { led_config.red_mode=LEDMODE_OFF; - writePinLow(LED_RED); + gpio_write_pin_low(LED_RED); } else { led_config.red_mode=LEDMODE_ON; - writePinHigh(LED_RED); + gpio_write_pin_high(LED_RED); } } eeconfig_update_user(led_config.raw); @@ -359,11 +359,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { if (led_config.green_mode==LEDMODE_ON) { led_config.green_mode=LEDMODE_OFF; - writePinLow(LED_GREEN); + gpio_write_pin_low(LED_GREEN); } else { led_config.green_mode=LEDMODE_ON; - writePinHigh(LED_GREEN); + gpio_write_pin_high(LED_GREEN); } } eeconfig_update_user(led_config.raw); diff --git a/keyboards/dm9records/plaid/keymaps/via/keymap.c b/keyboards/dm9records/plaid/keymaps/via/keymap.c index f54c5b9008b..37019e89a5f 100644 --- a/keyboards/dm9records/plaid/keymaps/via/keymap.c +++ b/keyboards/dm9records/plaid/keymaps/via/keymap.c @@ -95,7 +95,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; bool led_update_user(led_t led_state) { - writePin(LED_RED, led_state.caps_lock); - writePin(LED_GREEN, led_state.scroll_lock); + gpio_write_pin(LED_RED, led_state.caps_lock); + gpio_write_pin(LED_GREEN, led_state.scroll_lock); return false; } diff --git a/keyboards/dtisaac/dosa40rgb/keymaps/default/keymap.c b/keyboards/dtisaac/dosa40rgb/keymaps/default/keymap.c index 92a10afc34f..38db55938a0 100644 --- a/keyboards/dtisaac/dosa40rgb/keymaps/default/keymap.c +++ b/keyboards/dtisaac/dosa40rgb/keymaps/default/keymap.c @@ -66,6 +66,6 @@ bool rgb_matrix_indicators_user(void) { } void keyboard_pre_init_user(void) { - setPinOutput(B5); - writePinLow(B5); + gpio_set_pin_output(B5); + gpio_write_pin_low(B5); } diff --git a/keyboards/dyz/synthesis60/keymaps/default/keymap.c b/keyboards/dyz/synthesis60/keymaps/default/keymap.c index bdc705f90b3..5173689dd0e 100644 --- a/keyboards/dyz/synthesis60/keymaps/default/keymap.c +++ b/keyboards/dyz/synthesis60/keymaps/default/keymap.c @@ -48,9 +48,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { layer_state_t layer_state_set_user(layer_state_t state) { if (get_highest_layer(state) != 0) { - writePinLow(C6); + gpio_write_pin_low(C6); } else { - writePinHigh(C6); + gpio_write_pin_high(C6); } return state; } diff --git a/keyboards/dyz/synthesis60/keymaps/default_arrow/keymap.c b/keyboards/dyz/synthesis60/keymaps/default_arrow/keymap.c index 5ef6db46753..3836e902f20 100644 --- a/keyboards/dyz/synthesis60/keymaps/default_arrow/keymap.c +++ b/keyboards/dyz/synthesis60/keymaps/default_arrow/keymap.c @@ -48,9 +48,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { layer_state_t layer_state_set_user(layer_state_t state) { if (get_highest_layer(state) != 0) { - writePinLow(C6); + gpio_write_pin_low(C6); } else { - writePinHigh(C6); + gpio_write_pin_high(C6); } return state; } diff --git a/keyboards/dyz/synthesis60/keymaps/via/keymap.c b/keyboards/dyz/synthesis60/keymaps/via/keymap.c index bdc705f90b3..5173689dd0e 100644 --- a/keyboards/dyz/synthesis60/keymaps/via/keymap.c +++ b/keyboards/dyz/synthesis60/keymaps/via/keymap.c @@ -48,9 +48,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { layer_state_t layer_state_set_user(layer_state_t state) { if (get_highest_layer(state) != 0) { - writePinLow(C6); + gpio_write_pin_low(C6); } else { - writePinHigh(C6); + gpio_write_pin_high(C6); } return state; } diff --git a/keyboards/evyd13/nt650/keymaps/default/keymap.c b/keyboards/evyd13/nt650/keymaps/default/keymap.c index e9978376d06..bc77aebae22 100644 --- a/keyboards/evyd13/nt650/keymaps/default/keymap.c +++ b/keyboards/evyd13/nt650/keymaps/default/keymap.c @@ -56,13 +56,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; layer_state_t layer_state_set_user(layer_state_t state) { - setPinOutput(LOCK_LED_PIN); + gpio_set_pin_output(LOCK_LED_PIN); switch (get_highest_layer(state)) { case _LOCK: - writePin(LOCK_LED_PIN, 0); + gpio_write_pin(LOCK_LED_PIN, 0); break; default: // for any other layers, or the default layer - writePin(LOCK_LED_PIN, 1); + gpio_write_pin(LOCK_LED_PIN, 1); break; } return state; diff --git a/keyboards/evyd13/wonderland/keymaps/default/keymap.c b/keyboards/evyd13/wonderland/keymaps/default/keymap.c index cb81428043e..3ef74fe3595 100644 --- a/keyboards/evyd13/wonderland/keymaps/default/keymap.c +++ b/keyboards/evyd13/wonderland/keymaps/default/keymap.c @@ -46,9 +46,9 @@ layer_state_t layer_state_set_user(layer_state_t state) { // override kb level function bool led_update_user(led_t usb_led) { - writePin(B1, !top); - writePin(B2, !middle); - writePin(B3, !bottom); + gpio_write_pin(B1, !top); + gpio_write_pin(B2, !middle); + gpio_write_pin(B3, !bottom); return false; // we are using LEDs for something else override kb } #endif diff --git a/keyboards/handwired/daishi/keymaps/default/keymap.c b/keyboards/handwired/daishi/keymaps/default/keymap.c index 696dda3a05b..453be5b095f 100644 --- a/keyboards/handwired/daishi/keymaps/default/keymap.c +++ b/keyboards/handwired/daishi/keymaps/default/keymap.c @@ -95,15 +95,15 @@ void matrix_init_user(void) { // Call the keymap level matrix init. // Set our LED pins as output - setPinOutput(C4); - setPinOutput(C5); - setPinOutput(C6); + gpio_set_pin_output(C4); + gpio_set_pin_output(C5); + gpio_set_pin_output(C6); } bool led_update_user(led_t led_state) { - writePin(C4, led_state.num_lock); - writePin(C5, led_state.caps_lock); - writePin(C6, led_state.scroll_lock); + gpio_write_pin(C4, led_state.num_lock); + gpio_write_pin(C5, led_state.caps_lock); + gpio_write_pin(C6, led_state.scroll_lock); return false; } diff --git a/keyboards/handwired/dqz11n1g/keymaps/default/keymap.c b/keyboards/handwired/dqz11n1g/keymaps/default/keymap.c index 29d9cad7b72..2a4ca0c7033 100644 --- a/keyboards/handwired/dqz11n1g/keymaps/default/keymap.c +++ b/keyboards/handwired/dqz11n1g/keymaps/default/keymap.c @@ -54,12 +54,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Show "Fun Lock" layer state via the "Fun Lock" LED */ layer_state_t layer_state_set_user(layer_state_t state) { - setPinOutput(LED_FUN_LOCK_PIN); + gpio_set_pin_output(LED_FUN_LOCK_PIN); if (layer_state_cmp(state, _FUNCTION)) - writePinHigh(LED_FUN_LOCK_PIN); + gpio_write_pin_high(LED_FUN_LOCK_PIN); else - writePinLow(LED_FUN_LOCK_PIN); + gpio_write_pin_low(LED_FUN_LOCK_PIN); return state; } diff --git a/keyboards/handwired/jopr/keymaps/default/keymap.c b/keyboards/handwired/jopr/keymaps/default/keymap.c index fc615b01091..9630ce6816f 100644 --- a/keyboards/handwired/jopr/keymaps/default/keymap.c +++ b/keyboards/handwired/jopr/keymaps/default/keymap.c @@ -25,15 +25,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - writePinHigh(F1); + gpio_write_pin_high(F1); } else { - writePinLow(F1); + gpio_write_pin_low(F1); } if (led_state.scroll_lock) { - writePinHigh(F0); + gpio_write_pin_high(F0); } else { - writePinLow(F0); + gpio_write_pin_low(F0); } if (!led_state.num_lock) { @@ -46,13 +46,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { if (sysreq_led) { sysreq_led = false; - writePinLow(F4); + gpio_write_pin_low(F4); } else { switch(keycode) { case KC_SYSTEM_REQUEST: sysreq_led = true; - writePinHigh(F4); + gpio_write_pin_high(F4); } } } diff --git a/keyboards/handwired/jopr/keymaps/modded_white/keymap.c b/keyboards/handwired/jopr/keymaps/modded_white/keymap.c index 69d1a56bb5c..f062953b3fa 100644 --- a/keyboards/handwired/jopr/keymaps/modded_white/keymap.c +++ b/keyboards/handwired/jopr/keymaps/modded_white/keymap.c @@ -25,15 +25,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - writePinHigh(F1); + gpio_write_pin_high(F1); } else { - writePinLow(F1); + gpio_write_pin_low(F1); } if (led_state.scroll_lock) { - writePinHigh(F0); + gpio_write_pin_high(F0); } else { - writePinLow(F0); + gpio_write_pin_low(F0); } if (!led_state.num_lock) { @@ -46,13 +46,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { if (sysreq_led) { sysreq_led = false; - writePinLow(F4); + gpio_write_pin_low(F4); } else { switch(keycode) { case KC_SYSTEM_REQUEST: sysreq_led = true; - writePinHigh(F4); + gpio_write_pin_high(F4); } } } diff --git a/keyboards/handwired/jotanck/keymaps/default/keymap.c b/keyboards/handwired/jotanck/keymaps/default/keymap.c index 6c3e757cecd..6a581d420b9 100644 --- a/keyboards/handwired/jotanck/keymaps/default/keymap.c +++ b/keyboards/handwired/jotanck/keymaps/default/keymap.c @@ -84,16 +84,16 @@ layer_state_t layer_state_set_user(layer_state_t state) { #ifdef JOTANCK_LEDS switch (get_highest_layer(state)) { case _LOWER: - writePinHigh(JOTANCK_LED1); - writePinLow(JOTANCK_LED2); + gpio_write_pin_high(JOTANCK_LED1); + gpio_write_pin_low(JOTANCK_LED2); break; case _RAISE: - writePinLow(JOTANCK_LED1); - writePinHigh(JOTANCK_LED2); + gpio_write_pin_low(JOTANCK_LED1); + gpio_write_pin_high(JOTANCK_LED2); break; default: - writePinLow(JOTANCK_LED1); - writePinLow(JOTANCK_LED2); + gpio_write_pin_low(JOTANCK_LED1); + gpio_write_pin_low(JOTANCK_LED2); break; }; #endif diff --git a/keyboards/handwired/kbod/keymaps/default/keymap.c b/keyboards/handwired/kbod/keymaps/default/keymap.c index 856f0eda60f..24fc4c20afd 100644 --- a/keyboards/handwired/kbod/keymaps/default/keymap.c +++ b/keyboards/handwired/kbod/keymaps/default/keymap.c @@ -76,15 +76,15 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } void matrix_init_user(void) { - setPinOutput(C7); - writePinLow(C7); + gpio_set_pin_output(C7); + gpio_write_pin_low(C7); } layer_state_t layer_state_set_user(layer_state_t state) { if (get_highest_layer(state)) { - writePinHigh(C7); + gpio_write_pin_high(C7); } else { - writePinLow(C7); + gpio_write_pin_low(C7); } return state; } diff --git a/keyboards/handwired/mechboards_micropad/keymaps/default/keymap.c b/keyboards/handwired/mechboards_micropad/keymaps/default/keymap.c index 69bd7ec877a..9a99d233318 100644 --- a/keyboards/handwired/mechboards_micropad/keymaps/default/keymap.c +++ b/keyboards/handwired/mechboards_micropad/keymaps/default/keymap.c @@ -51,7 +51,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case LEDCHANGE: if (record->event.pressed) { led_state = !led_state; - writePin(F6, led_state); + gpio_write_pin(F6, led_state); } break; } @@ -59,6 +59,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } void matrix_init_user(void) { - setPinOutput(F6); - writePinLow(F6); + gpio_set_pin_output(F6); + gpio_write_pin_low(F6); } diff --git a/keyboards/handwired/prime_exl/keymaps/default/keymap.c b/keyboards/handwired/prime_exl/keymaps/default/keymap.c index ed3da63a150..2f310b0b415 100644 --- a/keyboards/handwired/prime_exl/keymaps/default/keymap.c +++ b/keyboards/handwired/prime_exl/keymaps/default/keymap.c @@ -67,16 +67,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; bool led_update_user(led_t led_state) { - writePin(NUM_LOCK_LED_PIN, led_state.num_lock); - writePin(CAPS_LOCK_LED_PIN, led_state.caps_lock); - // writePin(SCROLL_LOCK_LED_PIN, led_state.scroll_lock); + gpio_write_pin(NUM_LOCK_LED_PIN, led_state.num_lock); + gpio_write_pin(CAPS_LOCK_LED_PIN, led_state.caps_lock); + // gpio_write_pin(SCROLL_LOCK_LED_PIN, led_state.scroll_lock); return false; } //function for layer indicator LED layer_state_t layer_state_set_user(layer_state_t state) { - writePin(SCROLL_LOCK_LED_PIN, (get_highest_layer(state) == 1)); + gpio_write_pin(SCROLL_LOCK_LED_PIN, (get_highest_layer(state) == 1)); return state; } diff --git a/keyboards/handwired/prime_exl/keymaps/via/keymap.c b/keyboards/handwired/prime_exl/keymaps/via/keymap.c index 2081d672de0..b2f53cfdc6c 100644 --- a/keyboards/handwired/prime_exl/keymaps/via/keymap.c +++ b/keyboards/handwired/prime_exl/keymaps/via/keymap.c @@ -52,16 +52,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; bool led_update_user(led_t led_state) { - writePin(NUM_LOCK_LED_PIN, led_state.num_lock); - writePin(CAPS_LOCK_LED_PIN, led_state.caps_lock); - // writePin(SCROLL_LOCK_LED_PIN, led_state.scroll_lock); + gpio_write_pin(NUM_LOCK_LED_PIN, led_state.num_lock); + gpio_write_pin(CAPS_LOCK_LED_PIN, led_state.caps_lock); + // gpio_write_pin(SCROLL_LOCK_LED_PIN, led_state.scroll_lock); return false; } //function for layer indicator LED layer_state_t layer_state_set_user(layer_state_t state) { - writePin(SCROLL_LOCK_LED_PIN, (get_highest_layer(state) == 1)); + gpio_write_pin(SCROLL_LOCK_LED_PIN, (get_highest_layer(state) == 1)); return state; } diff --git a/keyboards/handwired/sono1/keymaps/default/keymap.c b/keyboards/handwired/sono1/keymaps/default/keymap.c index a3bf8b71066..cd9f9bcdb69 100644 --- a/keyboards/handwired/sono1/keymaps/default/keymap.c +++ b/keyboards/handwired/sono1/keymaps/default/keymap.c @@ -150,18 +150,18 @@ layer_state_t layer_state_set_user(layer_state_t state) { /* Use LED0 and 4 (Kana and KB Lock as layer indicators) */ switch (get_highest_layer(state)) { case _FN: - writePinLow(LED_KANA_PIN); + gpio_write_pin_low(LED_KANA_PIN); break; case _MUS: - writePinLow(LED_KB_LOCK_PIN); + gpio_write_pin_low(LED_KB_LOCK_PIN); break; case _LOCK: - writePinLow(LED_KANA_PIN); - writePinLow(LED_KB_LOCK_PIN); + gpio_write_pin_low(LED_KANA_PIN); + gpio_write_pin_low(LED_KB_LOCK_PIN); break; default: // for any other layers, or the default layer - writePinHigh(LED_KANA_PIN); - writePinHigh(LED_KB_LOCK_PIN); + gpio_write_pin_high(LED_KANA_PIN); + gpio_write_pin_high(LED_KB_LOCK_PIN); break; } return state; diff --git a/keyboards/hp69/keymaps/via/keymap.c b/keyboards/hp69/keymaps/via/keymap.c index e97e1bab7d0..106cd1940dd 100644 --- a/keyboards/hp69/keymaps/via/keymap.c +++ b/keyboards/hp69/keymaps/via/keymap.c @@ -50,10 +50,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void matrix_scan_user(void) { - writePin(A7, layer_state_is(1)); + gpio_write_pin(A7, layer_state_is(1)); } bool led_update_user(led_t led_state) { - writePin(LED_CAPS_LOCK_PIN, led_state.caps_lock); + gpio_write_pin(LED_CAPS_LOCK_PIN, led_state.caps_lock); return false; }; diff --git a/keyboards/jukaie/jk01/keymaps/default/keymap.c b/keyboards/jukaie/jk01/keymaps/default/keymap.c index 156fb77d697..243c782fad2 100644 --- a/keyboards/jukaie/jk01/keymaps/default/keymap.c +++ b/keyboards/jukaie/jk01/keymaps/default/keymap.c @@ -73,6 +73,6 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { #endif layer_state_t layer_state_set_user(layer_state_t state) { - writePin(C0, layer_state_cmp(state, 1)); + gpio_write_pin(C0, layer_state_cmp(state, 1)); return state; }; diff --git a/keyboards/jukaie/jk01/keymaps/via/keymap.c b/keyboards/jukaie/jk01/keymaps/via/keymap.c index 156fb77d697..243c782fad2 100644 --- a/keyboards/jukaie/jk01/keymaps/via/keymap.c +++ b/keyboards/jukaie/jk01/keymaps/via/keymap.c @@ -73,6 +73,6 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { #endif layer_state_t layer_state_set_user(layer_state_t state) { - writePin(C0, layer_state_cmp(state, 1)); + gpio_write_pin(C0, layer_state_cmp(state, 1)); return state; }; diff --git a/keyboards/kbdmania/kmac_pad/keymaps/default/keymap.c b/keyboards/kbdmania/kmac_pad/keymaps/default/keymap.c index e6afa533469..da94b40d79b 100644 --- a/keyboards/kbdmania/kmac_pad/keymaps/default/keymap.c +++ b/keyboards/kbdmania/kmac_pad/keymaps/default/keymap.c @@ -132,12 +132,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } bool led_update_user(led_t led_state) { - writePin(B1, led_state.num_lock); + gpio_write_pin(B1, led_state.num_lock); return false; } layer_state_t layer_state_set_user(layer_state_t state) { - writePin(B3, !IS_LAYER_ON_STATE(state, 0)); + gpio_write_pin(B3, !IS_LAYER_ON_STATE(state, 0)); return state; } diff --git a/keyboards/keycapsss/plaid_pad/keymaps/default/keymap.c b/keyboards/keycapsss/plaid_pad/keymaps/default/keymap.c index 789bb7af024..55c89dc7e80 100644 --- a/keyboards/keycapsss/plaid_pad/keymaps/default/keymap.c +++ b/keyboards/keycapsss/plaid_pad/keymaps/default/keymap.c @@ -28,7 +28,7 @@ LAYOUT_ortho_4x4( // Only for Rev1 & Rev2 #ifdef LED_RED void keyboard_post_init_user(void) { - writePinHigh(LED_RED); + gpio_write_pin_high(LED_RED); } #endif diff --git a/keyboards/keycapsss/plaid_pad/keymaps/via/keymap.c b/keyboards/keycapsss/plaid_pad/keymaps/via/keymap.c index 4ca3fc944b5..5163aa89008 100644 --- a/keyboards/keycapsss/plaid_pad/keymaps/via/keymap.c +++ b/keyboards/keycapsss/plaid_pad/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Only for Rev1 & Rev2 #ifdef LED_RED void keyboard_post_init_user(void) { - writePinHigh(LED_RED); + gpio_write_pin_high(LED_RED); } #endif diff --git a/keyboards/keyhive/navi10/keymaps/default/keymap.c b/keyboards/keyhive/navi10/keymaps/default/keymap.c index bbf51f56ff8..2a9de350478 100644 --- a/keyboards/keyhive/navi10/keymaps/default/keymap.c +++ b/keyboards/keyhive/navi10/keymaps/default/keymap.c @@ -99,13 +99,13 @@ void tk_finished(tap_dance_state_t *state, void *user_data){ layer_off(_ML1); //turn off the indicator LED //set LED HI to turn it off - writePinHigh(INDICATOR_LED); + gpio_write_pin_high(INDICATOR_LED); } else { //turn on the media layer layer_on(_ML1); //turn on the indicator LED //set LED pin to LOW to turn it on - writePinLow(INDICATOR_LED); + gpio_write_pin_low(INDICATOR_LED); } break; case SINGLE_HOLD: diff --git a/keyboards/kin80/keymaps/default/keymap.c b/keyboards/kin80/keymaps/default/keymap.c index 311aeed9891..50bad2a9744 100644 --- a/keyboards/kin80/keymaps/default/keymap.c +++ b/keyboards/kin80/keymaps/default/keymap.c @@ -97,6 +97,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { layer_state_t layer_state_set_user(layer_state_t state) { - writePin(LED4_PIN, layer_state_cmp(state, _NM)); + gpio_write_pin(LED4_PIN, layer_state_cmp(state, _NM)); return state; } diff --git a/keyboards/kinesis/keymaps/alvicstep/keymap.c b/keyboards/kinesis/keymaps/alvicstep/keymap.c index e9373ea2145..0068ef7d959 100644 --- a/keyboards/kinesis/keymaps/alvicstep/keymap.c +++ b/keyboards/kinesis/keymaps/alvicstep/keymap.c @@ -111,11 +111,11 @@ KC_GRV,KC_LGUI,KC_ESC,MO(_NUMPAD), KC_LBRC, layer_state_t layer_state_set_user(layer_state_t state) { //set LEDs which are triggered by a layer change #ifdef LED_COMPOSE_PIN - writePin(LED_COMPOSE_PIN, !layer_state_cmp(state, _KEYPAD)); + gpio_write_pin(LED_COMPOSE_PIN, !layer_state_cmp(state, _KEYPAD)); #endif #ifdef LED_NUM_LOCK_PIN - writePin(LED_NUM_LOCK_PIN, !layer_state_cmp(state, _NUMPAD)); + gpio_write_pin(LED_NUM_LOCK_PIN, !layer_state_cmp(state, _NUMPAD)); #endif return state; @@ -123,11 +123,11 @@ layer_state_t layer_state_set_user(layer_state_t state) { bool led_update_user(led_t led_state) { #ifdef LED_CAPS_LOCK_PIN - writePin(LED_CAPS_LOCK_PIN, !led_state.caps_lock); + gpio_write_pin(LED_CAPS_LOCK_PIN, !led_state.caps_lock); #endif #ifdef LED_SCROLL_LOCK_PIN - writePin(LED_SCROLL_LOCK_PIN, !led_state.scroll_lock); + gpio_write_pin(LED_SCROLL_LOCK_PIN, !led_state.scroll_lock); #endif //disable default processing of LEDs diff --git a/keyboards/kmini/keymaps/default/keymap.c b/keyboards/kmini/keymaps/default/keymap.c index 571572f38f3..60fcac30eff 100755 --- a/keyboards/kmini/keymaps/default/keymap.c +++ b/keyboards/kmini/keymaps/default/keymap.c @@ -41,9 +41,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - writePinLow(B1); + gpio_write_pin_low(B1); } else { - writePinHigh(B1); + gpio_write_pin_high(B1); } return false; } diff --git a/keyboards/lime/keymaps/default/keymap.c b/keyboards/lime/keymaps/default/keymap.c index b208bd01e78..e3e5d5a323b 100644 --- a/keyboards/lime/keymaps/default/keymap.c +++ b/keyboards/lime/keymaps/default/keymap.c @@ -173,8 +173,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Joystick + Encoder fix */ void keyboard_post_init_kb(void) { if (is_keyboard_master()) { - writePinLow(JOYSTICK_X_PIN); - writePinLow(JOYSTICK_Y_PIN); + gpio_write_pin_low(JOYSTICK_X_PIN); + gpio_write_pin_low(JOYSTICK_Y_PIN); } } diff --git a/keyboards/makrosu/keymaps/default/keymap.c b/keyboards/makrosu/keymaps/default/keymap.c index b0c47dbdd9f..3de4f71df3a 100644 --- a/keyboards/makrosu/keymaps/default/keymap.c +++ b/keyboards/makrosu/keymaps/default/keymap.c @@ -60,9 +60,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { layer_state_t layer_state_set_user(layer_state_t state) { state = update_tri_layer_state(state, _4, X_PAUSE, X_PAUSE); - writePin(IND_1, layer_state_cmp(state, 1)); - writePin(IND_2, layer_state_cmp(state, 2)); - writePin(IND_3, layer_state_cmp(state, 3)); + gpio_write_pin(IND_1, layer_state_cmp(state, 1)); + gpio_write_pin(IND_2, layer_state_cmp(state, 2)); + gpio_write_pin(IND_3, layer_state_cmp(state, 3)); return state; } @@ -89,13 +89,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { void matrix_init_user(void) { //init the Pro Micro on-board LEDs - setPinOutput(IND_1); - setPinOutput(IND_2); - setPinOutput(IND_3); + gpio_set_pin_output(IND_1); + gpio_set_pin_output(IND_2); + gpio_set_pin_output(IND_3); //set to off - writePinHigh(IND_1); - writePinHigh(IND_2); - writePinHigh(IND_3); + gpio_write_pin_high(IND_1); + gpio_write_pin_high(IND_2); + gpio_write_pin_high(IND_3); } bool encoder_update_user(uint8_t index, bool clockwise) { diff --git a/keyboards/makrosu/keymaps/via/keymap.c b/keyboards/makrosu/keymaps/via/keymap.c index b0c47dbdd9f..3de4f71df3a 100644 --- a/keyboards/makrosu/keymaps/via/keymap.c +++ b/keyboards/makrosu/keymaps/via/keymap.c @@ -60,9 +60,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { layer_state_t layer_state_set_user(layer_state_t state) { state = update_tri_layer_state(state, _4, X_PAUSE, X_PAUSE); - writePin(IND_1, layer_state_cmp(state, 1)); - writePin(IND_2, layer_state_cmp(state, 2)); - writePin(IND_3, layer_state_cmp(state, 3)); + gpio_write_pin(IND_1, layer_state_cmp(state, 1)); + gpio_write_pin(IND_2, layer_state_cmp(state, 2)); + gpio_write_pin(IND_3, layer_state_cmp(state, 3)); return state; } @@ -89,13 +89,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { void matrix_init_user(void) { //init the Pro Micro on-board LEDs - setPinOutput(IND_1); - setPinOutput(IND_2); - setPinOutput(IND_3); + gpio_set_pin_output(IND_1); + gpio_set_pin_output(IND_2); + gpio_set_pin_output(IND_3); //set to off - writePinHigh(IND_1); - writePinHigh(IND_2); - writePinHigh(IND_3); + gpio_write_pin_high(IND_1); + gpio_write_pin_high(IND_2); + gpio_write_pin_high(IND_3); } bool encoder_update_user(uint8_t index, bool clockwise) { diff --git a/keyboards/marksard/leftover30/keymaps/default/keymap.c b/keyboards/marksard/leftover30/keymaps/default/keymap.c index 2e0d2aa6bb1..ce527ea5a7b 100644 --- a/keyboards/marksard/leftover30/keymaps/default/keymap.c +++ b/keyboards/marksard/leftover30/keymaps/default/keymap.c @@ -156,7 +156,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) { // for exsample customize of LED inducator // bool led_update_user(led_t led_state) { -// writePin(D2, IS_LAYER_ON(_LOWER)); -// writePin(D1, IS_LAYER_ON(_RAISE)); +// gpio_write_pin(D2, IS_LAYER_ON(_LOWER)); +// gpio_write_pin(D1, IS_LAYER_ON(_RAISE)); // return false; // } diff --git a/keyboards/marksard/leftover30/keymaps/default_isoenter/keymap.c b/keyboards/marksard/leftover30/keymaps/default_isoenter/keymap.c index db2baa90852..831d7fa69e2 100644 --- a/keyboards/marksard/leftover30/keymaps/default_isoenter/keymap.c +++ b/keyboards/marksard/leftover30/keymaps/default_isoenter/keymap.c @@ -156,7 +156,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) { // for exsample customize of LED inducator // bool led_update_user(led_t led_state) { -// writePin(D2, IS_LAYER_ON(_LOWER)); -// writePin(D1, IS_LAYER_ON(_RAISE)); +// gpio_write_pin(D2, IS_LAYER_ON(_LOWER)); +// gpio_write_pin(D1, IS_LAYER_ON(_RAISE)); // return false; // } diff --git a/keyboards/mechlovin/kay65/keymaps/default/keymap.c b/keyboards/mechlovin/kay65/keymaps/default/keymap.c index 189b782b206..9c2bda5ac23 100644 --- a/keyboards/mechlovin/kay65/keymaps/default/keymap.c +++ b/keyboards/mechlovin/kay65/keymaps/default/keymap.c @@ -36,12 +36,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case LOGO_LED_ON: if (record->event.pressed) { - writePinLow(D7); + gpio_write_pin_low(D7); } break; case LOGO_LED_OFF: if (record->event.pressed) { - writePinHigh(D7); + gpio_write_pin_high(D7); } break; } diff --git a/keyboards/mechlovin/kay65/keymaps/via/keymap.c b/keyboards/mechlovin/kay65/keymaps/via/keymap.c index 1f29ba8c3a8..943d8d9bf0e 100644 --- a/keyboards/mechlovin/kay65/keymaps/via/keymap.c +++ b/keyboards/mechlovin/kay65/keymaps/via/keymap.c @@ -59,12 +59,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case LOGO_LED_ON: if (record->event.pressed) { - writePinLow(D7); + gpio_write_pin_low(D7); } break; case LOGO_LED_OFF: if (record->event.pressed) { - writePinHigh(D7); + gpio_write_pin_high(D7); } break; } diff --git a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/default/keymap.c b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/default/keymap.c index 017f57b1605..a360d2c1eab 100644 --- a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/default/keymap.c +++ b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/default/keymap.c @@ -32,12 +32,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case BL_ON: if (record->event.pressed) { - writePinHigh(B7); + gpio_write_pin_high(B7); } break; case BL_OFF: if (record->event.pressed) { - writePinLow(B7); + gpio_write_pin_low(B7); } break; } diff --git a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/via/keymap.c b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/via/keymap.c index 344be9548cd..e6b991de7f8 100644 --- a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/via/keymap.c +++ b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/via/keymap.c @@ -57,12 +57,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case LOGO_LED_ON: if (record->event.pressed) { - writePinHigh(B7); + gpio_write_pin_high(B7); } break; case LOGO_LED_OFF: if (record->event.pressed) { - writePinLow(B7); + gpio_write_pin_low(B7); } break; } diff --git a/keyboards/minimon/bartlesplit/matrix.c b/keyboards/minimon/bartlesplit/matrix.c index 351781f5207..4be8496dcf4 100644 --- a/keyboards/minimon/bartlesplit/matrix.c +++ b/keyboards/minimon/bartlesplit/matrix.c @@ -30,32 +30,32 @@ static const pin_t row_pins[] = MATRIX_ROW_PINS; static const pin_t col_pins[] = MATRIX_COL_PINS; static void select_row(uint8_t row) { - setPinOutput(row_pins[row]); - writePinLow(row_pins[row]); + gpio_set_pin_output(row_pins[row]); + gpio_write_pin_low(row_pins[row]); } static void unselect_row(uint8_t row) { - setPinInputHigh(row_pins[row]); + gpio_set_pin_input_high(row_pins[row]); } static void unselect_rows(void) { for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - setPinInputHigh(row_pins[x]); + gpio_set_pin_input_high(row_pins[x]); } } static void select_col(uint8_t col) { - setPinOutput(col_pins[col]); - writePinLow(col_pins[col]); + gpio_set_pin_output(col_pins[col]); + gpio_write_pin_low(col_pins[col]); } static void unselect_col(uint8_t col) { - setPinInputHigh(col_pins[col]); + gpio_set_pin_input_high(col_pins[col]); } static void unselect_cols(void) { for (uint8_t x = 0; x < MATRIX_COLS/2; x++) { - setPinInputHigh(col_pins[x*2]); + gpio_set_pin_input_high(col_pins[x*2]); } } @@ -76,7 +76,7 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row) for (uint8_t col_index = 0; col_index < MATRIX_COLS / 2; col_index++) { uint16_t column_index_bitmask = ROW_SHIFTER << ((col_index * 2) + 1); // Check row pin state - if (readPin(col_pins[col_index*2])) { + if (gpio_read_pin(col_pins[col_index*2])) { // Pin HI, clear col bit current_matrix[current_row] &= ~column_index_bitmask; } else { @@ -105,7 +105,7 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) uint16_t column_index_bitmask = ROW_SHIFTER << (current_col * 2); // Check row pin state - if (readPin(row_pins[row_index])) { + if (gpio_read_pin(row_pins[row_index])) { // Pin HI, clear col bit current_matrix[row_index] &= ~column_index_bitmask; } else { diff --git a/keyboards/noxary/268/keymaps/ansi/keymap.c b/keyboards/noxary/268/keymaps/ansi/keymap.c index dfbf6445499..6a81718d490 100644 --- a/keyboards/noxary/268/keymaps/ansi/keymap.c +++ b/keyboards/noxary/268/keymaps/ansi/keymap.c @@ -54,11 +54,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - setPinOutput(B6); - writePinHigh(B6); + gpio_set_pin_output(B6); + gpio_write_pin_high(B6); } else { - setPinInput(B6); - writePinLow(B6); + gpio_set_pin_input(B6); + gpio_write_pin_low(B6); } return false; } diff --git a/keyboards/noxary/268/keymaps/default/keymap.c b/keyboards/noxary/268/keymaps/default/keymap.c index 717dba04b27..4692ca6fc6d 100644 --- a/keyboards/noxary/268/keymaps/default/keymap.c +++ b/keyboards/noxary/268/keymaps/default/keymap.c @@ -72,12 +72,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - setPinOutput(B6); - writePinHigh(B6); + gpio_set_pin_output(B6); + gpio_write_pin_high(B6); } else { - setPinInput(B6); - writePinLow(B6); + gpio_set_pin_input(B6); + gpio_write_pin_low(B6); } return false; } diff --git a/keyboards/noxary/268/keymaps/iso/keymap.c b/keyboards/noxary/268/keymaps/iso/keymap.c index 827aa8bbd6a..df218461671 100644 --- a/keyboards/noxary/268/keymaps/iso/keymap.c +++ b/keyboards/noxary/268/keymaps/iso/keymap.c @@ -54,11 +54,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - setPinOutput(B6); - writePinHigh(B6); + gpio_set_pin_output(B6); + gpio_write_pin_high(B6); } else { - setPinInput(B6); - writePinLow(B6); + gpio_set_pin_input(B6); + gpio_write_pin_low(B6); } return false; } diff --git a/keyboards/orange75/keymaps/default/keymap.c b/keyboards/orange75/keymaps/default/keymap.c index 19321f289c8..cf5deb93752 100644 --- a/keyboards/orange75/keymaps/default/keymap.c +++ b/keyboards/orange75/keymaps/default/keymap.c @@ -55,27 +55,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.num_lock) { - setPinOutput(B0); - writePinLow(B0); + gpio_set_pin_output(B0); + gpio_write_pin_low(B0); } else { - setPinInput(B0); - writePinLow(B0); + gpio_set_pin_input(B0); + gpio_write_pin_low(B0); } if (led_state.caps_lock) { - setPinOutput(B1); - writePinLow(B1); + gpio_set_pin_output(B1); + gpio_write_pin_low(B1); } else { - setPinInput(B1); - writePinLow(B1); + gpio_set_pin_input(B1); + gpio_write_pin_low(B1); } if (led_state.scroll_lock) { - setPinOutput(B2); - writePinLow(B2); + gpio_set_pin_output(B2); + gpio_write_pin_low(B2); } else { - setPinInput(B2); - writePinLow(B2); + gpio_set_pin_input(B2); + gpio_write_pin_low(B2); } return false; } diff --git a/keyboards/peej/lumberjack/keymaps/via/keymap.c b/keyboards/peej/lumberjack/keymaps/via/keymap.c index 018f284a4f7..c46b868c63f 100644 --- a/keyboards/peej/lumberjack/keymaps/via/keymap.c +++ b/keyboards/peej/lumberjack/keymaps/via/keymap.c @@ -50,23 +50,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; void keyboard_pre_init_user() { - writePin(LED1, true); - writePin(LED2, true); + gpio_write_pin(LED1, true); + gpio_write_pin(LED2, true); } void keyboard_post_init_user() { - writePin(LED1, false); - writePin(LED2, false); + gpio_write_pin(LED1, false); + gpio_write_pin(LED2, false); } bool process_record_user(uint16_t keycode, keyrecord_t *record) { - writePin(LED1, record->event.pressed); + gpio_write_pin(LED1, record->event.pressed); return true; } layer_state_t layer_state_set_user(layer_state_t state) { - writePin(LED2, state); + gpio_write_pin(LED2, state); return state; } diff --git a/keyboards/planck/keymaps/default/keymap.c b/keyboards/planck/keymaps/default/keymap.c index 93ee9199237..5b2b83df1a5 100644 --- a/keyboards/planck/keymaps/default/keymap.c +++ b/keyboards/planck/keymaps/default/keymap.c @@ -210,12 +210,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { backlight_step(); #endif #ifdef KEYBOARD_planck_rev5 - writePinLow(E6); + gpio_write_pin_low(E6); #endif } else { unregister_code(KC_RSFT); #ifdef KEYBOARD_planck_rev5 - writePinHigh(E6); + gpio_write_pin_high(E6); #endif } return false; diff --git a/keyboards/playkbtw/pk60/keymaps/default/keymap.c b/keyboards/playkbtw/pk60/keymaps/default/keymap.c index d8c61edf14a..c5d9da63bcd 100644 --- a/keyboards/playkbtw/pk60/keymaps/default/keymap.c +++ b/keyboards/playkbtw/pk60/keymaps/default/keymap.c @@ -22,11 +22,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - setPinOutput(F4); - writePinLow(F4); + gpio_set_pin_output(F4); + gpio_write_pin_low(F4); } else { - setPinInput(F4); - writePinLow(F4); + gpio_set_pin_input(F4); + gpio_write_pin_low(F4); } return false; } diff --git a/keyboards/preonic/keymaps/default/keymap.c b/keyboards/preonic/keymaps/default/keymap.c index 12bec41a85a..511ac41f20c 100644 --- a/keyboards/preonic/keymaps/default/keymap.c +++ b/keyboards/preonic/keymaps/default/keymap.c @@ -216,12 +216,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { rgblight_step(); #endif #ifdef __AVR__ - writePinLow(E6); + gpio_write_pin_low(E6); #endif } else { unregister_code(KC_RSFT); #ifdef __AVR__ - writePinHigh(E6); + gpio_write_pin_high(E6); #endif } return false; diff --git a/keyboards/primekb/prime_e/keymaps/default/keymap.c b/keyboards/primekb/prime_e/keymaps/default/keymap.c index e5e47cffc2c..0178efba2e0 100644 --- a/keyboards/primekb/prime_e/keymaps/default/keymap.c +++ b/keyboards/primekb/prime_e/keymaps/default/keymap.c @@ -47,26 +47,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void matrix_init_user(void) { // set CapsLock LED to output and low - setPinOutput(B1); - writePinLow(B1); + gpio_set_pin_output(B1); + gpio_write_pin_low(B1); // set NumLock LED to output and low - setPinOutput(B2); - writePinLow(B2); + gpio_set_pin_output(B2); + gpio_write_pin_low(B2); // set ScrollLock LED to output and low - setPinOutput(B3); - writePinLow(B3); + gpio_set_pin_output(B3); + gpio_write_pin_low(B3); } bool led_update_user(led_t led_state) { if (led_state.num_lock) { - writePinHigh(B2); + gpio_write_pin_high(B2); } else { - writePinLow(B2); + gpio_write_pin_low(B2); } if (led_state.caps_lock) { - writePinHigh(B1); + gpio_write_pin_high(B1); } else { - writePinLow(B1); + gpio_write_pin_low(B1); } return false; } @@ -75,9 +75,9 @@ bool led_update_user(led_t led_state) { layer_state_t layer_state_set_user(layer_state_t state) { if (get_highest_layer(state) == 1) { - writePinHigh(B3); + gpio_write_pin_high(B3); } else { - writePinLow(B3); + gpio_write_pin_low(B3); } return state; } diff --git a/keyboards/primekb/prime_e/keymaps/via/keymap.c b/keyboards/primekb/prime_e/keymaps/via/keymap.c index 09a42b0d165..b8d2c24797e 100644 --- a/keyboards/primekb/prime_e/keymaps/via/keymap.c +++ b/keyboards/primekb/prime_e/keymaps/via/keymap.c @@ -75,26 +75,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void matrix_init_user(void) { // set CapsLock LED to output and low - setPinOutput(B1); - writePinLow(B1); + gpio_set_pin_output(B1); + gpio_write_pin_low(B1); // set NumLock LED to output and low - setPinOutput(B2); - writePinLow(B2); + gpio_set_pin_output(B2); + gpio_write_pin_low(B2); // set ScrollLock LED to output and low - setPinOutput(B3); - writePinLow(B3); + gpio_set_pin_output(B3); + gpio_write_pin_low(B3); } bool led_update_user(led_t led_state) { if (led_state.num_lock) { - writePinHigh(B2); + gpio_write_pin_high(B2); } else { - writePinLow(B2); + gpio_write_pin_low(B2); } if (led_state.caps_lock) { - writePinHigh(B1); + gpio_write_pin_high(B1); } else { - writePinLow(B1); + gpio_write_pin_low(B1); } return false; } @@ -103,9 +103,9 @@ bool led_update_user(led_t led_state) { layer_state_t layer_state_set_user(layer_state_t state) { if (get_highest_layer(state) == 1) { - writePinHigh(B3); + gpio_write_pin_high(B3); } else { - writePinLow(B3); + gpio_write_pin_low(B3); } return state; } diff --git a/keyboards/punk75/keymaps/default/keymap.c b/keyboards/punk75/keymaps/default/keymap.c index c867e0e493d..9a6ef29307e 100644 --- a/keyboards/punk75/keymaps/default/keymap.c +++ b/keyboards/punk75/keymaps/default/keymap.c @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void led_keypress_update(pin_t led_pin, uint16_t keycode, keyrecord_t *record) { // When a key is pressed turn on the LED, when released turn it off - writePin(led_pin, record->event.pressed); + gpio_write_pin(led_pin, record->event.pressed); } bool process_record_user(uint16_t keycode, keyrecord_t *record) { diff --git a/keyboards/punk75/keymaps/via/keymap.c b/keyboards/punk75/keymaps/via/keymap.c index e284c525b64..72ef91fd370 100644 --- a/keyboards/punk75/keymaps/via/keymap.c +++ b/keyboards/punk75/keymaps/via/keymap.c @@ -64,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void led_keypress_update(pin_t led_pin, uint16_t keycode, keyrecord_t *record) { // When a key is pressed turn on the LED, when released turn it off - writePin(led_pin, record->event.pressed); + gpio_write_pin(led_pin, record->event.pressed); } bool process_record_user(uint16_t keycode, keyrecord_t *record) { diff --git a/keyboards/swiftrax/retropad/keymaps/default/keymap.c b/keyboards/swiftrax/retropad/keymaps/default/keymap.c index 6fd2ff5daa2..fcbe1ededdb 100644 --- a/keyboards/swiftrax/retropad/keymaps/default/keymap.c +++ b/keyboards/swiftrax/retropad/keymaps/default/keymap.c @@ -51,20 +51,20 @@ bool encoder_update_user(uint8_t index, bool clockwise) { void matrix_init_user(void) { // set top LED to output and off (active low) - setPinOutput(D5); - writePinHigh(D5); + gpio_set_pin_output(D5); + gpio_write_pin_high(D5); // set middle LED to output and off (active low) - setPinOutput(D4); - writePinHigh(D4); + gpio_set_pin_output(D4); + gpio_write_pin_high(D4); // set bottom LED to output and off (active low) - setPinOutput(D3); - writePinHigh(D3); + gpio_set_pin_output(D3); + gpio_write_pin_high(D3); } // write to above indicators in a binary fashion based on current layer layer_state_t layer_state_set_user(layer_state_t state) { - writePin(D5, get_highest_layer(state)); - writePin(D4, !layer_state_cmp(state, 1)); - writePin(D3, !layer_state_cmp(state, 2)); + gpio_write_pin(D5, get_highest_layer(state)); + gpio_write_pin(D4, !layer_state_cmp(state, 1)); + gpio_write_pin(D3, !layer_state_cmp(state, 2)); return state; } diff --git a/keyboards/swiftrax/retropad/keymaps/via/keymap.c b/keyboards/swiftrax/retropad/keymaps/via/keymap.c index 6fd2ff5daa2..fcbe1ededdb 100644 --- a/keyboards/swiftrax/retropad/keymaps/via/keymap.c +++ b/keyboards/swiftrax/retropad/keymaps/via/keymap.c @@ -51,20 +51,20 @@ bool encoder_update_user(uint8_t index, bool clockwise) { void matrix_init_user(void) { // set top LED to output and off (active low) - setPinOutput(D5); - writePinHigh(D5); + gpio_set_pin_output(D5); + gpio_write_pin_high(D5); // set middle LED to output and off (active low) - setPinOutput(D4); - writePinHigh(D4); + gpio_set_pin_output(D4); + gpio_write_pin_high(D4); // set bottom LED to output and off (active low) - setPinOutput(D3); - writePinHigh(D3); + gpio_set_pin_output(D3); + gpio_write_pin_high(D3); } // write to above indicators in a binary fashion based on current layer layer_state_t layer_state_set_user(layer_state_t state) { - writePin(D5, get_highest_layer(state)); - writePin(D4, !layer_state_cmp(state, 1)); - writePin(D3, !layer_state_cmp(state, 2)); + gpio_write_pin(D5, get_highest_layer(state)); + gpio_write_pin(D4, !layer_state_cmp(state, 1)); + gpio_write_pin(D3, !layer_state_cmp(state, 2)); return state; } diff --git a/keyboards/uk78/keymaps/default/keymap.c b/keyboards/uk78/keymaps/default/keymap.c index 0385f8bf17c..831b872ef13 100644 --- a/keyboards/uk78/keymaps/default/keymap.c +++ b/keyboards/uk78/keymaps/default/keymap.c @@ -77,11 +77,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { if (led_state.caps_lock) { - setPinOutput(A3); - writePinHigh(A3); + gpio_set_pin_output(A3); + gpio_write_pin_high(A3); } else { - setPinInput(A3); - writePinLow(A3); + gpio_set_pin_input(A3); + gpio_write_pin_low(A3); } return false; } diff --git a/keyboards/viktus/at101_bh/keymaps/default/keymap.c b/keyboards/viktus/at101_bh/keymaps/default/keymap.c index cef4ad93cb1..5e8fae3ccd4 100644 --- a/keyboards/viktus/at101_bh/keymaps/default/keymap.c +++ b/keyboards/viktus/at101_bh/keymaps/default/keymap.c @@ -20,26 +20,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; bool led_update_user(led_t led_state) { - setPinOutput(B4); - setPinOutput(D6); - setPinOutput(D7); + gpio_set_pin_output(B4); + gpio_set_pin_output(D6); + gpio_set_pin_output(D7); if (led_state.num_lock) { - writePinHigh(D7); + gpio_write_pin_high(D7); } else { - writePinLow(D7); + gpio_write_pin_low(D7); } if (led_state.caps_lock) { - writePinHigh(B4); + gpio_write_pin_high(B4); } else { - writePinLow(B4); + gpio_write_pin_low(B4); } if (led_state.scroll_lock) { - writePinHigh(D6); + gpio_write_pin_high(D6); } else { - writePinLow(D6); + gpio_write_pin_low(D6); } return false; } diff --git a/keyboards/viktus/sp_mini/keymaps/default/keymap.c b/keyboards/viktus/sp_mini/keymaps/default/keymap.c index 939b545d0ba..3e844b2c087 100644 --- a/keyboards/viktus/sp_mini/keymaps/default/keymap.c +++ b/keyboards/viktus/sp_mini/keymaps/default/keymap.c @@ -75,30 +75,30 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; void keyboard_pre_init_user(void) { - setPinOutput(F5); // initialize F5 for LED - setPinOutput(F6); // initialize F6 for LED - setPinOutput(F7); // initialize F7 for LED + gpio_set_pin_output(F5); // initialize F5 for LED + gpio_set_pin_output(F6); // initialize F6 for LED + gpio_set_pin_output(F7); // initialize F7 for LED } layer_state_t layer_state_set_user(layer_state_t state) { - writePinLow(F5); - writePinLow(F6); - writePinLow(F7); + gpio_write_pin_low(F5); + gpio_write_pin_low(F6); + gpio_write_pin_low(F7); switch (get_highest_layer(state)) { case _FN1: - writePinHigh(F5); + gpio_write_pin_high(F5); break; case _FN2: - writePinHigh(F6); + gpio_write_pin_high(F6); break; case _FN3: // replace 'XXXX' with the layer or function name - writePinHigh(F7); + gpio_write_pin_high(F7); break; case KC_F24: - writePinHigh(F7); - writePinHigh(F5); - writePinHigh(F6); + gpio_write_pin_high(F7); + gpio_write_pin_high(F5); + gpio_write_pin_high(F6); break; } return state; diff --git a/keyboards/viktus/sp_mini/keymaps/via/keymap.c b/keyboards/viktus/sp_mini/keymaps/via/keymap.c index 7fd1eb0961c..e9e626a467a 100644 --- a/keyboards/viktus/sp_mini/keymaps/via/keymap.c +++ b/keyboards/viktus/sp_mini/keymaps/via/keymap.c @@ -75,38 +75,38 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; void keyboard_pre_init_user(void) { - setPinOutput(F5); // initialize F5 for LED - setPinOutput(F6); // initialize F6 for LED - setPinOutput(F7); // initialize F7 for LED + gpio_set_pin_output(F5); // initialize F5 for LED + gpio_set_pin_output(F6); // initialize F6 for LED + gpio_set_pin_output(F7); // initialize F7 for LED } layer_state_t layer_state_set_user(layer_state_t state) { switch (get_highest_layer(state)) { case _FN1: - writePinHigh(F5); - writePinLow(F6); - writePinLow(F7); + gpio_write_pin_high(F5); + gpio_write_pin_low(F6); + gpio_write_pin_low(F7); break; case _FN2: - writePinHigh(F6); - writePinLow(F5); - writePinLow(F7); + gpio_write_pin_high(F6); + gpio_write_pin_low(F5); + gpio_write_pin_low(F7); break; case _FN3: // replace 'XXXX' with the layer or function name - writePinHigh(F7); - writePinLow(F5); - writePinLow(F6); + gpio_write_pin_high(F7); + gpio_write_pin_low(F5); + gpio_write_pin_low(F6); break; case KC_F24: - writePinHigh(F7); - writePinHigh(F5); - writePinHigh(F6); + gpio_write_pin_high(F7); + gpio_write_pin_high(F5); + gpio_write_pin_high(F6); break; default: - writePinLow(F5); - writePinLow(F6); - writePinLow(F7); + gpio_write_pin_low(F5); + gpio_write_pin_low(F6); + gpio_write_pin_low(F7); break; } return state; diff --git a/keyboards/walletburner/cajal/keymaps/default/keymap.c b/keyboards/walletburner/cajal/keymaps/default/keymap.c index 4586e5695b3..3851bc806cd 100644 --- a/keyboards/walletburner/cajal/keymaps/default/keymap.c +++ b/keyboards/walletburner/cajal/keymaps/default/keymap.c @@ -49,38 +49,38 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //Initialize indicator LEDs void matrix_init_user(void) { - setPinOutput(B5); - writePinLow(B5); - setPinOutput(B6); - writePinLow(B6); - setPinOutput(B7); - writePinLow(B7); + gpio_set_pin_output(B5); + gpio_write_pin_low(B5); + gpio_set_pin_output(B6); + gpio_write_pin_low(B6); + gpio_set_pin_output(B7); + gpio_write_pin_low(B7); } layer_state_t layer_state_set_user(layer_state_t state) { switch (get_highest_layer(state)) { case 1: - writePinHigh(B7); - writePinLow(B6); + gpio_write_pin_high(B7); + gpio_write_pin_low(B6); break; case 2: - writePinLow(B7); - writePinHigh(B6); + gpio_write_pin_low(B7); + gpio_write_pin_high(B6); break; case 3: - writePinHigh(B7); - writePinHigh(B6); + gpio_write_pin_high(B7); + gpio_write_pin_high(B6); break; default: - writePinLow(B7); - writePinLow(B6); + gpio_write_pin_low(B7); + gpio_write_pin_low(B6); break; } return state; } bool led_update_user(led_t led_state) { - writePin(B5, led_state.caps_lock); + gpio_write_pin(B5, led_state.caps_lock); return false; } diff --git a/keyboards/walletburner/cajal/keymaps/default_ortho/keymap.c b/keyboards/walletburner/cajal/keymaps/default_ortho/keymap.c index 87575e492fd..2947f31ca84 100644 --- a/keyboards/walletburner/cajal/keymaps/default_ortho/keymap.c +++ b/keyboards/walletburner/cajal/keymaps/default_ortho/keymap.c @@ -49,34 +49,34 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //Initialize indicator LEDs void matrix_init_user(void) { - setPinOutput(B5); - writePinLow(B5); - setPinOutput(B6); - writePinLow(B6); - setPinOutput(B7); - writePinLow(B7); + gpio_set_pin_output(B5); + gpio_write_pin_low(B5); + gpio_set_pin_output(B6); + gpio_write_pin_low(B6); + gpio_set_pin_output(B7); + gpio_write_pin_low(B7); } layer_state_t layer_state_set_user(layer_state_t state) { - writePinLow(B7); - writePinLow(B6); + gpio_write_pin_low(B7); + gpio_write_pin_low(B6); switch (get_highest_layer(state)) { case 1: - writePinHigh(B7); + gpio_write_pin_high(B7); break; case 2: - writePinHigh(B6); + gpio_write_pin_high(B6); break; case 3: - writePinHigh(B7); - writePinHigh(B6); + gpio_write_pin_high(B7); + gpio_write_pin_high(B6); break; } return state; } bool led_update_user(led_t led_state) { - writePin(B5, led_state.caps_lock); + gpio_write_pin(B5, led_state.caps_lock); return false; } diff --git a/keyboards/walletburner/cajal/keymaps/via/keymap.c b/keyboards/walletburner/cajal/keymaps/via/keymap.c index 246bbfa2463..e104a195750 100644 --- a/keyboards/walletburner/cajal/keymaps/via/keymap.c +++ b/keyboards/walletburner/cajal/keymaps/via/keymap.c @@ -49,38 +49,38 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //Initialize indicator LEDs void matrix_init_user(void) { - setPinOutput(B5); - writePinLow(B5); - setPinOutput(B6); - writePinLow(B6); - setPinOutput(B7); - writePinLow(B7); + gpio_set_pin_output(B5); + gpio_write_pin_low(B5); + gpio_set_pin_output(B6); + gpio_write_pin_low(B6); + gpio_set_pin_output(B7); + gpio_write_pin_low(B7); } layer_state_t layer_state_set_user(layer_state_t state) { switch (get_highest_layer(state)) { case 1: - writePinHigh(B7); - writePinLow(B6); + gpio_write_pin_high(B7); + gpio_write_pin_low(B6); break; case 2: - writePinLow(B7); - writePinHigh(B6); + gpio_write_pin_low(B7); + gpio_write_pin_high(B6); break; case 3: - writePinHigh(B7); - writePinHigh(B6); + gpio_write_pin_high(B7); + gpio_write_pin_high(B6); break; default: - writePinLow(B7); - writePinLow(B6); + gpio_write_pin_low(B7); + gpio_write_pin_low(B6); break; } return state; } bool led_update_user(led_t led_state) { - writePin(B5, led_state.caps_lock); + gpio_write_pin(B5, led_state.caps_lock); return false; } diff --git a/keyboards/westfoxtrot/cypher/rev1/keymaps/kwer/keymap.c b/keyboards/westfoxtrot/cypher/rev1/keymaps/kwer/keymap.c index 9763abe3691..baeda467e63 100644 --- a/keyboards/westfoxtrot/cypher/rev1/keymaps/kwer/keymap.c +++ b/keyboards/westfoxtrot/cypher/rev1/keymaps/kwer/keymap.c @@ -54,13 +54,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool led_update_user(led_t led_state) { // Insert custom handling for CAPS_LOCK, NUM_LOCK, SCROLL_LOCK here if (led_state.num_lock) { - writePinHigh(F4); - writePinHigh(F1); - writePinHigh(F5); + gpio_write_pin_high(F4); + gpio_write_pin_high(F1); + gpio_write_pin_high(F5); } else { - writePinLow(F4); - writePinLow(F1); - writePinLow(F5); + gpio_write_pin_low(F4); + gpio_write_pin_low(F1); + gpio_write_pin_low(F5); } return false; } diff --git a/keyboards/work_louder/work_board/keymaps/via/keymap.c b/keyboards/work_louder/work_board/keymaps/via/keymap.c index 7f0627eb672..255ee3ed789 100644 --- a/keyboards/work_louder/work_board/keymaps/via/keymap.c +++ b/keyboards/work_louder/work_board/keymaps/via/keymap.c @@ -114,20 +114,20 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } layer_state_t layer_state_set_user(layer_state_t state) { - writePinLow(B2); - writePinLow(B3); - writePinLow(B7); + gpio_write_pin_low(B2); + gpio_write_pin_low(B3); + gpio_write_pin_low(B7); if (work_louder_config.led_level) { switch (get_highest_layer(state)) { case 1: - writePinHigh(B2); + gpio_write_pin_high(B2); break; case 2: - writePinHigh(B3); + gpio_write_pin_high(B3); break; case 3: - writePinHigh(B7); + gpio_write_pin_high(B7); break; } } diff --git a/keyboards/wsk/g4m3ralpha/keymaps/default/keymap.c b/keyboards/wsk/g4m3ralpha/keymaps/default/keymap.c index 54ff0f9df50..d1e5f62d4a7 100644 --- a/keyboards/wsk/g4m3ralpha/keymaps/default/keymap.c +++ b/keyboards/wsk/g4m3ralpha/keymaps/default/keymap.c @@ -56,26 +56,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { layer_state_t layer_state_set_user(layer_state_t state) { switch (get_highest_layer(state)) { case _FN: - writePinHigh(D3); - writePinLow(D2); + gpio_write_pin_high(D3); + gpio_write_pin_low(D2); break; case _FNCHAR: - writePinLow(D3); - writePinHigh(D2); + gpio_write_pin_low(D3); + gpio_write_pin_high(D2); break; case _FKEYS: - writePinHigh(D3); - writePinHigh(D2); + gpio_write_pin_high(D3); + gpio_write_pin_high(D2); break; default: // for any other layers, or the default layer - writePinLow(D3); - writePinLow(D2); + gpio_write_pin_low(D3); + gpio_write_pin_low(D2); break; } return state; } bool led_update_user(led_t led_state) { - writePin(D0, led_state.caps_lock); + gpio_write_pin(D0, led_state.caps_lock); return false; } diff --git a/keyboards/wsk/gothic50/keymaps/default/keymap.c b/keyboards/wsk/gothic50/keymaps/default/keymap.c index 71ad616eb63..de3288b4e6a 100644 --- a/keyboards/wsk/gothic50/keymaps/default/keymap.c +++ b/keyboards/wsk/gothic50/keymaps/default/keymap.c @@ -32,21 +32,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void matrix_init_user(void) { // set CapsLock LED to output and low - setPinOutput(F6); - writePinLow(F6); + gpio_set_pin_output(F6); + gpio_write_pin_low(F6); // set NumLock LED to output and low - setPinOutput(F5); - writePinLow(F5); + gpio_set_pin_output(F5); + gpio_write_pin_low(F5); // set ScrollLock LED to output and low - setPinOutput(F4); - writePinLow(F4); + gpio_set_pin_output(F4); + gpio_write_pin_low(F4); } layer_state_t layer_state_set_user(layer_state_t state) { - writePin(F4, (state & 0x1)); - writePin(F5, (state & 0x2)); - writePin(F6, (state & 0x4)); + gpio_write_pin(F4, (state & 0x1)); + gpio_write_pin(F5, (state & 0x2)); + gpio_write_pin(F6, (state & 0x4)); return state; } diff --git a/keyboards/wsk/gothic70/keymaps/default/keymap.c b/keyboards/wsk/gothic70/keymaps/default/keymap.c index 589b30c4ef0..cbc40bb93b6 100644 --- a/keyboards/wsk/gothic70/keymaps/default/keymap.c +++ b/keyboards/wsk/gothic70/keymaps/default/keymap.c @@ -42,22 +42,22 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void matrix_init_user(void) { // set CapsLock LED to output and off (active low) - setPinOutput(F5); - writePinHigh(F5); + gpio_set_pin_output(F5); + gpio_write_pin_high(F5); // set NumLock LED to output and off (active low) - setPinOutput(F6); - writePinHigh(F6); + gpio_set_pin_output(F6); + gpio_write_pin_high(F6); // set ScrollLock LED to output and off (active low) - setPinOutput(F7); - writePinHigh(F7); + gpio_set_pin_output(F7); + gpio_write_pin_high(F7); } // write to above indicators in a binary fashion based on current layer layer_state_t layer_state_set_user(layer_state_t state) { - writePin(F5, (state & 0x1)); - writePin(F6, (state & 0x2)); - writePin(F7, (state & 0x4)); + gpio_write_pin(F5, (state & 0x1)); + gpio_write_pin(F6, (state & 0x2)); + gpio_write_pin(F7, (state & 0x4)); return state; } diff --git a/keyboards/wsk/gothic70/keymaps/via/keymap.c b/keyboards/wsk/gothic70/keymaps/via/keymap.c index 3f72979b924..6b511a94b1c 100644 --- a/keyboards/wsk/gothic70/keymaps/via/keymap.c +++ b/keyboards/wsk/gothic70/keymaps/via/keymap.c @@ -59,18 +59,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void matrix_init_user(void) { // set CapsLock LED to output and off (active high) - setPinOutput(F5); + gpio_set_pin_output(F5); // set NumLock LED to output and off (active high) - setPinOutput(F6); + gpio_set_pin_output(F6); // set ScrollLock LED to output and off (active high) - setPinOutput(F7); + gpio_set_pin_output(F7); } // write to above indicators in a binary fashion based on current layer layer_state_t layer_state_set_user(layer_state_t state) { - writePin(F5, (state & 0x1)); - writePin(F6, (state & 0x2)); - writePin(F7, (state & 0x4)); + gpio_write_pin(F5, (state & 0x1)); + gpio_write_pin(F6, (state & 0x2)); + gpio_write_pin(F7, (state & 0x4)); return state; } diff --git a/keyboards/wsk/jerkin/keymaps/default/keymap.c b/keyboards/wsk/jerkin/keymaps/default/keymap.c index 046d703c39c..64bec404a20 100644 --- a/keyboards/wsk/jerkin/keymaps/default/keymap.c +++ b/keyboards/wsk/jerkin/keymaps/default/keymap.c @@ -39,27 +39,27 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { void matrix_init_user(void) { // set CapsLock LED to output and low - setPinOutput(B2); - writePinLow(B2); + gpio_set_pin_output(B2); + gpio_write_pin_low(B2); // set NumLock LED to output and low - setPinOutput(B6); - writePinLow(B6); + gpio_set_pin_output(B6); + gpio_write_pin_low(B6); } layer_state_t layer_state_set_user(layer_state_t state) { if (layer_state_cmp(state, 1)) { - writePinHigh(B2); + gpio_write_pin_high(B2); } else if (state & (1<<2)) { - writePinLow(B2); - writePinHigh(B6); + gpio_write_pin_low(B2); + gpio_write_pin_high(B6); } else if (state & (1<<3)) { - writePinHigh(B2); - writePinHigh(B6); + gpio_write_pin_high(B2); + gpio_write_pin_high(B6); } else { - writePinLow(B2); - writePinLow(B6); + gpio_write_pin_low(B2); + gpio_write_pin_low(B6); } return state; } diff --git a/keyboards/zsa/voyager/matrix.c b/keyboards/zsa/voyager/matrix.c index 614c3ffa041..931af40bc83 100644 --- a/keyboards/zsa/voyager/matrix.c +++ b/keyboards/zsa/voyager/matrix.c @@ -116,7 +116,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: From 249f1706f16a118e05b597614a85435153308056 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Sun, 26 May 2024 13:45:29 -0700 Subject: [PATCH 052/519] noroadsleft's 0.25.0 Changelogs and Touch-Ups (#23793) * Modify PR23309 changelog Adds a direct link to the pull request. * Add PR23329 changelog * Update keyboard aliases file Updates the legacy keyboard aliases for the JJ40 and JJ50, which have been moved again for version 0.25.0. * Minor touch-up for JJ40 rev1 readme --- data/mappings/keyboard_aliases.hjson | 4 ++-- docs/ChangeLog/20240526/PR23309.md | 2 +- docs/ChangeLog/20240526/PR23329.md | 13 +++++++++++++ keyboards/kprepublic/jj40/rev1/readme.md | 2 +- 4 files changed, 17 insertions(+), 4 deletions(-) create mode 100644 docs/ChangeLog/20240526/PR23329.md diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 7421b8bfacd..57585aae923 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -306,13 +306,13 @@ "target": "jacky_studio/piggy60/rev1" }, "jj40": { - "target": "kprepublic/jj40" + "target": "kprepublic/jj40/rev1" }, "jj4x4": { "target": "kprepublic/jj4x4" }, "jj50": { - "target": "kprepublic/jj50" + "target": "kprepublic/jj50/rev1" }, "jm60": { "target": "kbdfans/jm60" diff --git a/docs/ChangeLog/20240526/PR23309.md b/docs/ChangeLog/20240526/PR23309.md index b5ca5f1e4d0..1270e74d934 100644 --- a/docs/ChangeLog/20240526/PR23309.md +++ b/docs/ChangeLog/20240526/PR23309.md @@ -1,4 +1,4 @@ -# MechKeys ACR60 Layout Updates +# MechKeys ACR60 Layout Updates ([#23309](https://github.com/qmk/qmk_firmware/pull/23309)) This PR removed and changed some of the layouts that were configured for the ACR60. If you use one of the following layouts, you will need to diff --git a/docs/ChangeLog/20240526/PR23329.md b/docs/ChangeLog/20240526/PR23329.md new file mode 100644 index 00000000000..78dc609c094 --- /dev/null +++ b/docs/ChangeLog/20240526/PR23329.md @@ -0,0 +1,13 @@ +# P3D Spacey Layout Updates ([#23329](https://github.com/qmk/qmk_firmware/pull/23329)) + +This PR removed the `LAYOUT` macro that was configured for the Spacey. +If you have a keymap for this keyboard, you will need to update your +keymap using the following steps: + +1. Change your layout macro to `LAYOUT_all`. +2. Remove the two `KC_NO` keycodes following the Space and Delete keys + on the bottom row. +3. Move the keycode for the encoder pushbutton (customarily Mute) to the + end of the top row, after the customary Backspace key. +4. Move the keycode for the Right Arrow to the end of the Shift row, + after the Down Arrow key. diff --git a/keyboards/kprepublic/jj40/rev1/readme.md b/keyboards/kprepublic/jj40/rev1/readme.md index 12d65869da3..49f644849e9 100644 --- a/keyboards/kprepublic/jj40/rev1/readme.md +++ b/keyboards/kprepublic/jj40/rev1/readme.md @@ -5,7 +5,7 @@ A compact 40% (12x4) ortholinear keyboard kit made and KPRepublic on AliExpress. * Keyboard Maintainer: [QMK Community](https://github.com/qmk) -* Hardware Supported: JJ40 rev1 (Atmega32A) +* Hardware Supported: JJ40 rev1 (ATmega32A) * Hardware Availability: [AliExpress](https://www.aliexpress.com/store/product/jj40-Custom-Mechanical-Keyboard-40-PCB-programmed-40-planck-layouts-bface-firmware-gh40/3034003_32828781103.html) Make example for this keyboard (after setting up your build environment): From c9f9cb25103817aa05da494a4551ed235a750d4c Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 28 May 2024 02:48:48 +0100 Subject: [PATCH 053/519] 2024 Q2 changelog (#23794) Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel --- docs/ChangeLog/20240526.md | 334 +++++++++++++++++++++++++++++ docs/ChangeLog/20240526/PR23309.md | 35 --- docs/ChangeLog/20240526/PR23329.md | 13 -- docs/_summary.md | 2 +- docs/breaking_changes.md | 20 +- docs/breaking_changes_history.md | 1 + util/list-moved-keyboards.sh | 11 + 7 files changed, 357 insertions(+), 59 deletions(-) create mode 100644 docs/ChangeLog/20240526.md delete mode 100644 docs/ChangeLog/20240526/PR23309.md delete mode 100644 docs/ChangeLog/20240526/PR23329.md create mode 100755 util/list-moved-keyboards.sh diff --git a/docs/ChangeLog/20240526.md b/docs/ChangeLog/20240526.md new file mode 100644 index 00000000000..4cf185234ce --- /dev/null +++ b/docs/ChangeLog/20240526.md @@ -0,0 +1,334 @@ +# QMK Breaking Changes - 2024 May 26 Changelog + +## Notable Features :id=notable-features + +May 2024 brings about another heavy maintenance release of QMK. Of the 209 PRs created this breaking changes cycle against the `develop` branch, 174 behind-the-scenes PRs (83%!) were aimed at converting, consolidating, and cleaning up keyboards and their configuration data. Not the most glamorous work, but it means QMK is in a much more manageable spot than what it was 3 months prior. The work steadily continues! + +## Changes Requiring User Action :id=changes-requiring-user-action + +### Updated Keyboard Codebases :id=updated-keyboard-codebases + +One note with updated keyboard names -- historical keyboard names are still considered valid when using [External Userspace](newbs_external_userspace.md) for builds. If you're already using External Userspace, you do not need to move your keymap inside your repository. + +| Old Keyboard Name | New Keyboard Name | +|------------------------------|-----------------------------------| +| adkb96 | adkb96/rev1 | +| canary/canary60rgb | canary/canary60rgb/v1 | +| handwired/meck_tkl | handwired/meck_tkl/blackpill_f401 | +| handwired/qc60 | handwired/qc60/proto | +| handwired/stef9998/split_5x7 | handwired/stef9998/split_5x7/rev1 | +| junco | junco/rev1 | +| keaboard | keaboard/rev1 | +| kprepublic/jj40 | kprepublic/jj40/rev1 | +| kprepublic/jj50 | kprepublic/jj50/rev1 | +| melgeek/mj65 | melgeek/mj65/rev3 | +| melgeek/mojo68 | melgeek/mojo68/rev1 | +| melgeek/mojo75 | melgeek/mojo75/rev1 | +| melgeek/tegic | melgeek/tegic/rev1 | +| melgeek/z70ultra | melgeek/z70ultra/rev1 | +| miiiw/blackio83 | miiiw/blackio83/rev_0100 | +| murcielago | murcielago/rev1 | +| polilla | polilla/rev1 | +| qwertyydox | qwertyydox/rev1 | +| spaceholdings/nebula68b | spaceholdings/nebula68b/solder | +| splitty | splitty/rev1 | +| xiudi/xd004 | xiudi/xd004/v1 | + +### Remove deprecated quantum keycodes ([#23407](https://github.com/qmk/qmk_firmware/pull/23407)) + +A bunch of legacy keycodes have been removed -- check [the affected keycodes](https://github.com/qmk/qmk_firmware/blob/70e34e491c297231a3f987fd69760d38e79dbfa4/quantum/quantum_keycodes_legacy.h) if you run into compilation problems, as it'll show you what the problematic keycodes should be replaced with. + +The latest of these were officially deprecated within QMK in the August 2023 breaking changes -- the new keycodes are the way forward. + +### P3D Spacey Layout Updates ([#23329](https://github.com/qmk/qmk_firmware/pull/23329)) :id=spacey-layout-updates + +This PR removed the `LAYOUT` macro that was configured for the Spacey. +If you have a keymap for this keyboard, you will need to update your +keymap using the following steps: + +1. Change your layout macro to `LAYOUT_all`. +2. Remove the two `KC_NO` keycodes following the Space and Delete keys + on the bottom row. +3. Move the keycode for the encoder pushbutton (customarily Mute) to the + end of the top row, after the customary Backspace key. +4. Move the keycode for the Right Arrow to the end of the Shift row, + after the Down Arrow key. + +### MechKeys ACR60 Layout Updates ([#23309](https://github.com/qmk/qmk_firmware/pull/23309)) :id=acr60-layout-updates + +This PR removed and changed some of the layouts that were configured for the ACR60. If you use one of the following layouts, you will need to update your keymap: + +- [`LAYOUT_hhkb`](#layout-hhkb) +- [`LAYOUT_true_hhkb`](#layout-true-hhkb) +- [`LAYOUT_directional`](#layout-directional) +- [`LAYOUT_mitchsplit`](#layout-mitchsplit) + +#### `LAYOUT_hhkb` :id=acr60-layout-hhkb + +1. Change your layout macro to `LAYOUT_60_hhkb`. +1. Remove any keycodes for the key between Left Shift and QWERTY Z. + +#### `LAYOUT_true_hhkb` :id=acr60-layout-true-hhkb + +1. Change your layout macro to `LAYOUT_60_true_hhkb`. +1. Remove any keycodes for the key between Left Shift and QWERTY Z. + +#### `LAYOUT_directional` :id=acr60-layout-directional + +1. Change your layout macro to `LAYOUT_60_ansi_arrow_split_bs`. +1. Remove any keycodes for the key between Left Shift and QWERTY Z. +1. Remove any keycodes for the keys immediately before *and* after the 1.25u key of Split Spacebar. + +If you need split spacebars, you may implement `LAYOUT_60_ansi_arrow_split_space_split_bs` and change your layout to it, removing the keycode between Left Shift and QWERTY Z. + +#### `LAYOUT_mitchsplit` :id=acr60-layout-mitchsplit + +1. Use `LAYOUT_60_ansi_split_space_split_rshift`. + +## Notable core changes :id=notable-core + +### Introduction of `keyboard.json` ([22891](https://github.com/qmk/qmk_firmware/pull/22891)) :id=keyboard-json + +One longer term goal of QMK is increased maintainability. +As part of the continued push towards [Data Driven Configuration](data_driven_config.md), the build system has been updated to simplify the existing codebase, and power future workflows. + +The `keyboard.json` configuration file allows the support of a single data file for keyboard level config. + +Additionally, +* `info.json` now represents potential fragments of config that can be shared across keyboard revisions. +* `rules.mk` is now optional - Completely blank files are no longer required. +* Currently supported keyboards have been migrated to reflect this change. + +Backwards compatibility of the old system has been maintained, but will be removed in a future breaking changes cycle. + +### Refactor ChibiOS USB endpoints to be fully async ([#21656](https://github.com/qmk/qmk_firmware/pull/21656)) + +For most users, this change will mean suspend and resume on ARM-based boards works correctly. Others will notice that their keyboard now works correctly in BIOS/UEFI. + +Essentially, changes were made in the internals of how QMK interacts with USB for ARM-based devices. Before this change, whenever a packet was attempted to be sent from the keyboard to the host machine, QMK would wait for the transmission to complete. After this change, those packets are queued and sent when opportune; this results in much better "correctness" as far as the USB protocol is concerned, and means far less likelihood of failure scenarios such as "stuck keys" or "random lockups" and the like. + +Compliance checks were run against QMK firmwares for the most popular ARM microcontrollers, as well as suspend/resume tests. As far as we can tell, a whole host of hard-to-reproduce issues are mitigated by this change. + +## Full changelist :id=full-changelist + +Core: +* Refactor vusb to protocol use pre/post task ([#14944](https://github.com/qmk/qmk_firmware/pull/14944)) +* Refactor ChibiOS USB endpoints to be fully async ([#21656](https://github.com/qmk/qmk_firmware/pull/21656)) +* Infer eeconfig identifiers ([#22135](https://github.com/qmk/qmk_firmware/pull/22135)) +* [Audio] Add support for audio shutdown pin ([#22731](https://github.com/qmk/qmk_firmware/pull/22731)) +* Enable 'keyboard.json' as a build target ([#22891](https://github.com/qmk/qmk_firmware/pull/22891)) +* Remove unuseful layer_on() call ([#23055](https://github.com/qmk/qmk_firmware/pull/23055)) +* Add init function to RGBLight driver struct ([#23076](https://github.com/qmk/qmk_firmware/pull/23076)) +* Add utility functions for Pointing Device Auto Mouse feature ([#23144](https://github.com/qmk/qmk_firmware/pull/23144)) +* Remove midi_ep_task from ChibiOS ([#23162](https://github.com/qmk/qmk_firmware/pull/23162)) +* LED drivers: add support for IS31FL3236 ([#23264](https://github.com/qmk/qmk_firmware/pull/23264)) +* Un-`extern` RGBLight `led[]` array ([#23322](https://github.com/qmk/qmk_firmware/pull/23322)) +* Update I2C API usage in keyboard code ([#23360](https://github.com/qmk/qmk_firmware/pull/23360)) +* Update GPIO expander API naming ([#23375](https://github.com/qmk/qmk_firmware/pull/23375)) +* Remove deprecated quantum keycodes ([#23407](https://github.com/qmk/qmk_firmware/pull/23407)) +* Add MacOS Czech ISO and ANSI keymaps #23346 ([#23412](https://github.com/qmk/qmk_firmware/pull/23412)) +* Rename `process_{led,rgb}_matrix()` ([#23422](https://github.com/qmk/qmk_firmware/pull/23422)) +* Separate keycode handling for LED Matrix and Backlight ([#23426](https://github.com/qmk/qmk_firmware/pull/23426)) +* Add new set of keycodes for LED Matrix ([#23432](https://github.com/qmk/qmk_firmware/pull/23432)) +* Oneshot locked mods split transaction ([#23434](https://github.com/qmk/qmk_firmware/pull/23434)) +* Bodge consolidation. ([#23448](https://github.com/qmk/qmk_firmware/pull/23448)) +* LED Matrix: replace backlight keycodes with newly added ones ([#23455](https://github.com/qmk/qmk_firmware/pull/23455)) +* Add new set of keycodes for RGB Matrix ([#23463](https://github.com/qmk/qmk_firmware/pull/23463)) +* Refactoring successive press() release() calls into tap_key() calls ([#23573](https://github.com/qmk/qmk_firmware/pull/23573)) +* Rename `RGBW` define to `WS2812_RGBW` ([#23585](https://github.com/qmk/qmk_firmware/pull/23585)) +* Normalise RGBLight (underglow) keycodes ([#23656](https://github.com/qmk/qmk_firmware/pull/23656)) +* split_util: rename `usbIsActive` to `usb_bus_detected` ([#23657](https://github.com/qmk/qmk_firmware/pull/23657)) +* Insert delay between shifted chars in send_string_with_delay for AVR ([#23673](https://github.com/qmk/qmk_firmware/pull/23673)) +* Remove useless `LED/RGB_MATRIX_ENABLE` ifdefs ([#23726](https://github.com/qmk/qmk_firmware/pull/23726)) + +CLI: +* Some metadata on QGF/QFF files ([#20101](https://github.com/qmk/qmk_firmware/pull/20101)) +* `qmk new-keyboard` - detach community layout when selecting "none of the above" ([#20405](https://github.com/qmk/qmk_firmware/pull/20405)) +* Initial `qmk test-c` functionality ([#23038](https://github.com/qmk/qmk_firmware/pull/23038)) +* Reject duplicate matrix locations in LAYOUT macros ([#23273](https://github.com/qmk/qmk_firmware/pull/23273)) +* Align 'qmk lint' argument handling ([#23297](https://github.com/qmk/qmk_firmware/pull/23297)) +* Produce warning if keyboard is not configured via `keyboard.json` ([#23321](https://github.com/qmk/qmk_firmware/pull/23321)) + +Submodule updates: +* Update ChibiOS submodules. ([#23405](https://github.com/qmk/qmk_firmware/pull/23405)) + +Keyboards: +* Move `SPLIT_KEYBOARD` to data driven ([#21410](https://github.com/qmk/qmk_firmware/pull/21410)) +* Change to `development_board` ([#21695](https://github.com/qmk/qmk_firmware/pull/21695)) +* Add solid_reactive effects for MIIIW BlackIO83 ([#22251](https://github.com/qmk/qmk_firmware/pull/22251)) +* Migrate content where only parent info.json exists ([#22895](https://github.com/qmk/qmk_firmware/pull/22895)) +* Remove redundant disabling of features ([#22926](https://github.com/qmk/qmk_firmware/pull/22926)) +* Update ScottoAlp handwired keyboard to 12 column layout ([#22962](https://github.com/qmk/qmk_firmware/pull/22962)) +* Overhaul ploopyco devices ([#22967](https://github.com/qmk/qmk_firmware/pull/22967)) +* Add rp2040_ce option to lotus58 ([#23185](https://github.com/qmk/qmk_firmware/pull/23185)) +* Migrate features from rules.mk to data driven - 0-9 ([#23202](https://github.com/qmk/qmk_firmware/pull/23202)) +* Change default RGB effect for momokai keypads to solid white ([#23217](https://github.com/qmk/qmk_firmware/pull/23217)) +* Migrate annepro2 away from custom matrix ([#23221](https://github.com/qmk/qmk_firmware/pull/23221)) +* Update BAMFK-1 ([#23236](https://github.com/qmk/qmk_firmware/pull/23236)) +* Migrate features from rules.mk to data driven - ABCD ([#23247](https://github.com/qmk/qmk_firmware/pull/23247)) +* Migrate features from rules.mk to data driven - EFGH ([#23248](https://github.com/qmk/qmk_firmware/pull/23248)) +* Remove 60_ansi_arrow_split_bs_7u_spc Community Layout ([#23259](https://github.com/qmk/qmk_firmware/pull/23259)) +* Migrate features from rules.mk to data driven - IJK ([#23276](https://github.com/qmk/qmk_firmware/pull/23276)) +* Migrate features from rules.mk to data driven - LMN ([#23277](https://github.com/qmk/qmk_firmware/pull/23277)) +* Migrate features from rules.mk to data driven - OPQR ([#23285](https://github.com/qmk/qmk_firmware/pull/23285)) +* Migrate features from rules.mk to data driven - ST ([#23286](https://github.com/qmk/qmk_firmware/pull/23286)) +* Migrate features from rules.mk to data driven - UVWXYZ ([#23287](https://github.com/qmk/qmk_firmware/pull/23287)) +* Swift65 Hotswap Layout Name Standardization ([#23288](https://github.com/qmk/qmk_firmware/pull/23288)) +* Swift65 Solder Layout Name Standardization ([#23289](https://github.com/qmk/qmk_firmware/pull/23289)) +* Migrate build target markers to keyboard.json ([#23293](https://github.com/qmk/qmk_firmware/pull/23293)) +* KPRepublic JJ50 rev1 Refactor ([#23294](https://github.com/qmk/qmk_firmware/pull/23294)) +* KPRepublic JJ40 rev1 Refactor ([#23299](https://github.com/qmk/qmk_firmware/pull/23299)) +* Migrate features and LTO from rules.mk to data driven ([#23302](https://github.com/qmk/qmk_firmware/pull/23302)) +* Add RGB lighting for the PetruziaMini ([#23305](https://github.com/qmk/qmk_firmware/pull/23305)) +* Migrate features and LTO from rules.mk to data driven ([#23307](https://github.com/qmk/qmk_firmware/pull/23307)) +* MechKeys ACR60 Layout Updates ([#23309](https://github.com/qmk/qmk_firmware/pull/23309)) +* Remove RGBLight `led[]` references ([#23311](https://github.com/qmk/qmk_firmware/pull/23311)) +* Reduce firmware size of helix/rev3 ([#23324](https://github.com/qmk/qmk_firmware/pull/23324)) +* P3D Spacey Layout Updates ([#23329](https://github.com/qmk/qmk_firmware/pull/23329)) +* Data-Driven Keyboard Conversions: 0-9 ([#23357](https://github.com/qmk/qmk_firmware/pull/23357)) +* Update GPIO API usage in keyboard code ([#23361](https://github.com/qmk/qmk_firmware/pull/23361)) +* Remove "w": 1 from keyboards/ ([#23367](https://github.com/qmk/qmk_firmware/pull/23367)) +* Remove `quantum.h` includes from keyboard custom `matrix.c`s ([#23371](https://github.com/qmk/qmk_firmware/pull/23371)) +* refactor: mechwild/bbs ([#23373](https://github.com/qmk/qmk_firmware/pull/23373)) +* Remove 'NO_USB_STARTUP_CHECK = no' from keyboards ([#23376](https://github.com/qmk/qmk_firmware/pull/23376)) +* Remove completely redundant DEFAULT_FOLDER from keyboards ([#23377](https://github.com/qmk/qmk_firmware/pull/23377)) +* Miscellaneous keyboard.json migrations ([#23378](https://github.com/qmk/qmk_firmware/pull/23378)) +* Data-Driven Keyboard Conversions: A ([#23379](https://github.com/qmk/qmk_firmware/pull/23379)) +* refactor: flehrad/bigswitch ([#23384](https://github.com/qmk/qmk_firmware/pull/23384)) +* add second encoder to matrix info of arrowmechanics/wings ([#23390](https://github.com/qmk/qmk_firmware/pull/23390)) +* Change the VID and PID of the file kb38 info.json ([#23393](https://github.com/qmk/qmk_firmware/pull/23393)) +* Remove `quantum.h` includes from keyboard code ([#23394](https://github.com/qmk/qmk_firmware/pull/23394)) +* [ UPDATE 15PAD & 6PAD ] ([#23397](https://github.com/qmk/qmk_firmware/pull/23397)) +* Remove more unnecessary `quantum.h` includes ([#23402](https://github.com/qmk/qmk_firmware/pull/23402)) +* KB name change to Part.1-75-HS ([#23403](https://github.com/qmk/qmk_firmware/pull/23403)) +* Tidy up keyboards/zvecr ([#23418](https://github.com/qmk/qmk_firmware/pull/23418)) +* "features.split" is not a valid key ([#23419](https://github.com/qmk/qmk_firmware/pull/23419)) +* Migrate build target markers to keyboard.json - YZ ([#23421](https://github.com/qmk/qmk_firmware/pull/23421)) +* refactor: mechwild/waka60 ([#23423](https://github.com/qmk/qmk_firmware/pull/23423)) +* Convert some AVR GPIO operations to macros ([#23424](https://github.com/qmk/qmk_firmware/pull/23424)) +* Data-Driven Keyboard Conversions: B ([#23425](https://github.com/qmk/qmk_firmware/pull/23425)) +* Tidy up default layer handling in keymaps ([#23436](https://github.com/qmk/qmk_firmware/pull/23436)) +* Added Chapter1 ([#23452](https://github.com/qmk/qmk_firmware/pull/23452)) +* Data-driven Keyboard Conversions: C ([#23453](https://github.com/qmk/qmk_firmware/pull/23453)) +* Migrate build target markers to keyboard.json - X ([#23460](https://github.com/qmk/qmk_firmware/pull/23460)) +* Data-Driven Keyboard Conversions: D ([#23461](https://github.com/qmk/qmk_firmware/pull/23461)) +* Miscellaneous keyboard.json migrations ([#23486](https://github.com/qmk/qmk_firmware/pull/23486)) +* Migrate build target markers to keyboard.json - 0AB ([#23488](https://github.com/qmk/qmk_firmware/pull/23488)) +* Migrate build target markers to keyboard.json - W ([#23511](https://github.com/qmk/qmk_firmware/pull/23511)) +* Data-Driven Keyboard Conversions: E ([#23512](https://github.com/qmk/qmk_firmware/pull/23512)) +* Migrate build target markers to keyboard.json - TUV ([#23514](https://github.com/qmk/qmk_firmware/pull/23514)) +* Migrate build target markers to keyboard.json - DE ([#23515](https://github.com/qmk/qmk_firmware/pull/23515)) +* Data-Driven Keyboard Conversions: F ([#23516](https://github.com/qmk/qmk_firmware/pull/23516)) +* Data-Driven Keyboard Conversions: G ([#23522](https://github.com/qmk/qmk_firmware/pull/23522)) +* Data-Driven Keyboard Conversions: H, Part 1 ([#23524](https://github.com/qmk/qmk_firmware/pull/23524)) +* Data-Driven Keyboard Conversions: H, Part 2 ([#23525](https://github.com/qmk/qmk_firmware/pull/23525)) +* Migrate build target markers to keyboard.json - C ([#23529](https://github.com/qmk/qmk_firmware/pull/23529)) +* Data-Driven Keyboard Conversions: H, Part 3 ([#23530](https://github.com/qmk/qmk_firmware/pull/23530)) +* Migrate build target markers to keyboard.json - S ([#23532](https://github.com/qmk/qmk_firmware/pull/23532)) +* Data-Driven Keyboard Conversions: I ([#23533](https://github.com/qmk/qmk_firmware/pull/23533)) +* Migrate build target markers to keyboard.json - FG ([#23534](https://github.com/qmk/qmk_firmware/pull/23534)) +* Migrate build target markers to keyboard.json - HI ([#23540](https://github.com/qmk/qmk_firmware/pull/23540)) +* Remove *_SUPPORTED = yes ([#23541](https://github.com/qmk/qmk_firmware/pull/23541)) +* Migrate build target markers to keyboard.json - R ([#23542](https://github.com/qmk/qmk_firmware/pull/23542)) +* Data-Driven Keyboard Conversions: J ([#23547](https://github.com/qmk/qmk_firmware/pull/23547)) +* Data-Driven Keyboard Conversions: K, Part 1 ([#23556](https://github.com/qmk/qmk_firmware/pull/23556)) +* Tidy use of raw hid within keyboards ([#23557](https://github.com/qmk/qmk_firmware/pull/23557)) +* Data-Driven Keyboard Conversions: K, Part 2 ([#23562](https://github.com/qmk/qmk_firmware/pull/23562)) +* Migrate build target markers to keyboard.json - OQ ([#23564](https://github.com/qmk/qmk_firmware/pull/23564)) +* Migrate build target markers to keyboard.json - P ([#23565](https://github.com/qmk/qmk_firmware/pull/23565)) +* Data-Driven Keyboard Conversions: K, Part 3 ([#23566](https://github.com/qmk/qmk_firmware/pull/23566)) +* Data-Driven Keyboard Conversions: K, Part 4 ([#23567](https://github.com/qmk/qmk_firmware/pull/23567)) +* Data-Driven Keyboard Conversions: K, Part 5 ([#23569](https://github.com/qmk/qmk_firmware/pull/23569)) +* Data-Driven Keyboard Conversions: L ([#23576](https://github.com/qmk/qmk_firmware/pull/23576)) +* Migrate build target markers to keyboard.json - JK ([#23588](https://github.com/qmk/qmk_firmware/pull/23588)) +* Migrate build target markers to keyboard.json - N ([#23589](https://github.com/qmk/qmk_firmware/pull/23589)) +* Data-Driven Keyboard Conversions: M, Part 1 ([#23590](https://github.com/qmk/qmk_firmware/pull/23590)) +* Add haptic driver to keyboard.json schema ([#23591](https://github.com/qmk/qmk_firmware/pull/23591)) +* Migrate build target markers to keyboard.json - Keychron ([#23593](https://github.com/qmk/qmk_firmware/pull/23593)) +* Remove RGBLIGHT_SPLIT in rules.mk ([#23599](https://github.com/qmk/qmk_firmware/pull/23599)) +* Data-Driven Keyboard Conversions: M, Part 2 ([#23601](https://github.com/qmk/qmk_firmware/pull/23601)) +* Align NO_SUSPEND_POWER_DOWN keyboard config ([#23606](https://github.com/qmk/qmk_firmware/pull/23606)) +* Migrate build target markers to keyboard.json - L ([#23607](https://github.com/qmk/qmk_firmware/pull/23607)) +* Migrate build target markers to keyboard.json - Misc ([#23609](https://github.com/qmk/qmk_firmware/pull/23609)) +* Migrate build target markers to keyboard.json - Misc ([#23612](https://github.com/qmk/qmk_firmware/pull/23612)) +* Data-Driven Keyboard Conversions: M, Part 3 ([#23614](https://github.com/qmk/qmk_firmware/pull/23614)) +* Add audio driver to keyboard.json schema ([#23616](https://github.com/qmk/qmk_firmware/pull/23616)) +* Data-Driven Keyboard Conversions: BastardKB ([#23622](https://github.com/qmk/qmk_firmware/pull/23622)) +* Data-Driven Keyboard Conversions: Mechlovin ([#23624](https://github.com/qmk/qmk_firmware/pull/23624)) +* Migrate build target markers to keyboard.json - BM ([#23627](https://github.com/qmk/qmk_firmware/pull/23627)) +* gh80_3000 - Enable indicator LED functionality ([#23633](https://github.com/qmk/qmk_firmware/pull/23633)) +* Iris keymap update ([#23635](https://github.com/qmk/qmk_firmware/pull/23635)) +* Migrate build target markers to keyboard.json - Misc ([#23653](https://github.com/qmk/qmk_firmware/pull/23653)) +* Add via support for craftwalk ([#23658](https://github.com/qmk/qmk_firmware/pull/23658)) +* Align RGBKB keyboards to current standards ([#23663](https://github.com/qmk/qmk_firmware/pull/23663)) +* Remove 'split.transport.protocol=serial_usart' ([#23668](https://github.com/qmk/qmk_firmware/pull/23668)) +* Remove redundant keymap templates ([#23685](https://github.com/qmk/qmk_firmware/pull/23685)) +* Change all RGB mode keycodes to short aliases ([#23691](https://github.com/qmk/qmk_firmware/pull/23691)) +* Adjust keycode alignment around `QK_BOOT` ([#23697](https://github.com/qmk/qmk_firmware/pull/23697)) +* Remove RGB keycodes from boards with no RGB config ([#23709](https://github.com/qmk/qmk_firmware/pull/23709)) +* Miscellaneous Data-Driven Keyboard Conversions ([#23712](https://github.com/qmk/qmk_firmware/pull/23712)) +* Delete trivial keymap readmes ([#23714](https://github.com/qmk/qmk_firmware/pull/23714)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: 0-9 ([#23716](https://github.com/qmk/qmk_firmware/pull/23716)) +* Add media key support to Riot Pad ([#23719](https://github.com/qmk/qmk_firmware/pull/23719)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: A-C, Part 1 ([#23745](https://github.com/qmk/qmk_firmware/pull/23745)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: A-C, Part 2 ([#23746](https://github.com/qmk/qmk_firmware/pull/23746)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: A-C, Part 3 ([#23747](https://github.com/qmk/qmk_firmware/pull/23747)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: D, Part 1 ([#23749](https://github.com/qmk/qmk_firmware/pull/23749)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: D, Part 2 ([#23750](https://github.com/qmk/qmk_firmware/pull/23750)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: E ([#23751](https://github.com/qmk/qmk_firmware/pull/23751)) +* Move VIA config to keymap level ([#23754](https://github.com/qmk/qmk_firmware/pull/23754)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: F ([#23757](https://github.com/qmk/qmk_firmware/pull/23757)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: G ([#23758](https://github.com/qmk/qmk_firmware/pull/23758)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: H, Part 1 ([#23759](https://github.com/qmk/qmk_firmware/pull/23759)) +* Remove includes of config.h ([#23760](https://github.com/qmk/qmk_firmware/pull/23760)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: H, Part 2 ([#23762](https://github.com/qmk/qmk_firmware/pull/23762)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: H, Part 3 ([#23763](https://github.com/qmk/qmk_firmware/pull/23763)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: H, Part 4 ([#23764](https://github.com/qmk/qmk_firmware/pull/23764)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: I-J ([#23767](https://github.com/qmk/qmk_firmware/pull/23767)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: K, Part 1 ([#23768](https://github.com/qmk/qmk_firmware/pull/23768)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: K, Part 2 ([#23769](https://github.com/qmk/qmk_firmware/pull/23769)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: K, Part 3 ([#23770](https://github.com/qmk/qmk_firmware/pull/23770)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: L ([#23771](https://github.com/qmk/qmk_firmware/pull/23771)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: M, Part 1 ([#23772](https://github.com/qmk/qmk_firmware/pull/23772)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: M, Part 2 ([#23773](https://github.com/qmk/qmk_firmware/pull/23773)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: N ([#23774](https://github.com/qmk/qmk_firmware/pull/23774)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: O ([#23778](https://github.com/qmk/qmk_firmware/pull/23778)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: P, Part 1 ([#23779](https://github.com/qmk/qmk_firmware/pull/23779)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: P, Part 2 ([#23780](https://github.com/qmk/qmk_firmware/pull/23780)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: Q-R ([#23781](https://github.com/qmk/qmk_firmware/pull/23781)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: S, Part 1 ([#23783](https://github.com/qmk/qmk_firmware/pull/23783)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: S, Part 2 ([#23784](https://github.com/qmk/qmk_firmware/pull/23784)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: T ([#23785](https://github.com/qmk/qmk_firmware/pull/23785)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: U-V ([#23786](https://github.com/qmk/qmk_firmware/pull/23786)) +* Remove some useless code from keymaps ([#23787](https://github.com/qmk/qmk_firmware/pull/23787)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: W, Part 1 ([#23788](https://github.com/qmk/qmk_firmware/pull/23788)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: W, Part 2 ([#23789](https://github.com/qmk/qmk_firmware/pull/23789)) +* Migrate `LOCKING_*_ENABLE` to Data-Driven: X-Z ([#23790](https://github.com/qmk/qmk_firmware/pull/23790)) +* Update GPIO macros in keymaps ([#23792](https://github.com/qmk/qmk_firmware/pull/23792)) +* noroadsleft's 0.25.0 Changelogs and Touch-Ups ([#23793](https://github.com/qmk/qmk_firmware/pull/23793)) + +Keyboard fixes: +* Fix mapping of GUI/ALT for Win/Mac layers ([#22662](https://github.com/qmk/qmk_firmware/pull/22662)) +* Adding standard keymap for wave keyboard to fix #22695 ([#22741](https://github.com/qmk/qmk_firmware/pull/22741)) +* Fixup qk100 (firmware size) ([#23169](https://github.com/qmk/qmk_firmware/pull/23169)) +* Fixup mechlovin/octagon ([#23179](https://github.com/qmk/qmk_firmware/pull/23179)) +* Fix up scanning for Djinn, post-asyncUSB. ([#23188](https://github.com/qmk/qmk_firmware/pull/23188)) +* Fixup annepro2 ([#23206](https://github.com/qmk/qmk_firmware/pull/23206)) +* Fixed keychron q1v1 led config for iso layout ([#23222](https://github.com/qmk/qmk_firmware/pull/23222)) +* Fixes for idobao vendor keymaps ([#23246](https://github.com/qmk/qmk_firmware/pull/23246)) +* Fixup work_board ([#23266](https://github.com/qmk/qmk_firmware/pull/23266)) +* Linworks FAve 87H Keymap Refactor/Bugfix ([#23292](https://github.com/qmk/qmk_firmware/pull/23292)) +* Align encoder layout validation with encoder.h logic ([#23330](https://github.com/qmk/qmk_firmware/pull/23330)) +* 0xcb/splaytoraid: remove `CONVERT_TO` at keyboard level ([#23395](https://github.com/qmk/qmk_firmware/pull/23395)) +* 40percentclub/gherkin: remove `CONVERT_TO` at keyboard level ([#23396](https://github.com/qmk/qmk_firmware/pull/23396)) +* Fix spaceholdings/nebula68b ([#23399](https://github.com/qmk/qmk_firmware/pull/23399)) +* Fix failing keyboards on develop ([#23406](https://github.com/qmk/qmk_firmware/pull/23406)) +* Corrections to split keyboard migrations ([#23462](https://github.com/qmk/qmk_firmware/pull/23462)) +* Fix iris via keymap ([#23652](https://github.com/qmk/qmk_firmware/pull/23652)) +* xiudi/xd75 - Fix backlight compilation issues ([#23655](https://github.com/qmk/qmk_firmware/pull/23655)) + +Bugs: +* WS2812 PWM: prefix for DMA defines ([#23111](https://github.com/qmk/qmk_firmware/pull/23111)) +* Fix rgblight init ([#23335](https://github.com/qmk/qmk_firmware/pull/23335)) +* Fix WAIT_FOR_USB handling ([#23598](https://github.com/qmk/qmk_firmware/pull/23598)) +* Fix PS/2 Trackpoint mouse clicks (#22265) ([#23694](https://github.com/qmk/qmk_firmware/pull/23694)) diff --git a/docs/ChangeLog/20240526/PR23309.md b/docs/ChangeLog/20240526/PR23309.md deleted file mode 100644 index 1270e74d934..00000000000 --- a/docs/ChangeLog/20240526/PR23309.md +++ /dev/null @@ -1,35 +0,0 @@ -# MechKeys ACR60 Layout Updates ([#23309](https://github.com/qmk/qmk_firmware/pull/23309)) - -This PR removed and changed some of the layouts that were configured for -the ACR60. If you use one of the following layouts, you will need to -update your keymap: - -- [`LAYOUT_hhkb`](#layout-hhkb) -- [`LAYOUT_true_hhkb`](#layout-true-hhkb) -- [`LAYOUT_directional`](#layout-directional) -- [`LAYOUT_mitchsplit`](#layout-mitchsplit) - -## `LAYOUT_hhkb` :id=layout-hhkb - -1. Change your layout macro to `LAYOUT_60_hhkb`. -2. Remove any keycodes for the key between Left Shift and QWERTY Z. - -## `LAYOUT_true_hhkb` :id=layout-true-hhkb - -1. Change your layout macro to `LAYOUT_60_true_hhkb`. -2. Remove any keycodes for the key between Left Shift and QWERTY Z. - -## `LAYOUT_directional` :id=layout-directional - -1. Change your layout macro to `LAYOUT_60_ansi_arrow_split_bs`. -2. Remove any keycodes for the key between Left Shift and QWERTY Z. -3. Remove any keycodes for the keys immediately before *and* after the -1.25u key of Split Spacebar. - -If you need split spacebars, you may implement -`LAYOUT_60_ansi_arrow_split_space_split_bs` and change your layout to -it, removing the keycode between Left Shift and QWERTY Z. - -## `LAYOUT_mitchsplit` :id=layout-mitchsplit - -1. Use `LAYOUT_60_ansi_split_space_split_rshift`. diff --git a/docs/ChangeLog/20240526/PR23329.md b/docs/ChangeLog/20240526/PR23329.md deleted file mode 100644 index 78dc609c094..00000000000 --- a/docs/ChangeLog/20240526/PR23329.md +++ /dev/null @@ -1,13 +0,0 @@ -# P3D Spacey Layout Updates ([#23329](https://github.com/qmk/qmk_firmware/pull/23329)) - -This PR removed the `LAYOUT` macro that was configured for the Spacey. -If you have a keymap for this keyboard, you will need to update your -keymap using the following steps: - -1. Change your layout macro to `LAYOUT_all`. -2. Remove the two `KC_NO` keycodes following the Space and Delete keys - on the bottom row. -3. Move the keycode for the encoder pushbutton (customarily Mute) to the - end of the top row, after the customary Backspace key. -4. Move the keycode for the Right Arrow to the end of the Shift row, - after the Down Arrow key. diff --git a/docs/_summary.md b/docs/_summary.md index fb584955ce1..adf48cec85d 100644 --- a/docs/_summary.md +++ b/docs/_summary.md @@ -138,7 +138,7 @@ * Breaking Changes * [Overview](breaking_changes.md) * [My Pull Request Was Flagged](breaking_changes_instructions.md) - * [Most Recent ChangeLog](ChangeLog/20240225.md "QMK v0.24.0 - 2024 Feb 25") + * [Most Recent ChangeLog](ChangeLog/20240526.md "QMK v0.25.0 - 2024 May 26") * [Past Breaking Changes](breaking_changes_history.md) * C Development diff --git a/docs/breaking_changes.md b/docs/breaking_changes.md index b60118cd641..1c0b1bafceb 100644 --- a/docs/breaking_changes.md +++ b/docs/breaking_changes.md @@ -10,25 +10,25 @@ Practically, this means QMK merges the `develop` branch into the `master` branch ## What has been included in past Breaking Changes? +* [2024 May 26](ChangeLog/20240526.md) * [2024 Feb 25](ChangeLog/20240225.md) * [2023 Nov 26](ChangeLog/20231126.md) -* [2023 Aug 27](ChangeLog/20230827.md) * [Older Breaking Changes](breaking_changes_history.md) ## When is the next Breaking Change? -The next Breaking Change is scheduled for May 26, 2024. +The next Breaking Change is scheduled for August 25, 2024. ### Important Dates -* 2024 Feb 25 - `develop` is tagged with a new release version. Each push to `master` is subsequently merged to `develop` by GitHub actions. -* 2024 Apr 28 - `develop` closed to new PRs. -* 2024 Apr 28 - Call for testers. -* 2024 May 5 - Last day for merges -- after this point `develop` is locked for testing and accepts only bugfixes -* 2024 May 19 - `develop` is locked, only critical bugfix PRs merged. -* 2024 May 23 - `master` is locked, no PRs merged. -* 2024 May 26 - Merge `develop` to `master`. -* 2024 May 26 - `master` is unlocked. PRs can be merged again. +* 2024 May 26 - `develop` is tagged with a new release version. Each push to `master` is subsequently merged to `develop` by GitHub actions. +* 2024 Jul 28 - `develop` closed to new PRs. +* 2024 Jul 28 - Call for testers. +* 2024 Aug 4 - Last day for merges -- after this point `develop` is locked for testing and accepts only bugfixes +* 2024 Aug 18 - `develop` is locked, only critical bugfix PRs merged. +* 2024 Aug 22 - `master` is locked, no PRs merged. +* 2024 Aug 25 - Merge `develop` to `master`. +* 2024 Aug 25 - `master` is unlocked. PRs can be merged again. ## What changes will be included? diff --git a/docs/breaking_changes_history.md b/docs/breaking_changes_history.md index 6e304685b52..6f0f25be0e6 100644 --- a/docs/breaking_changes_history.md +++ b/docs/breaking_changes_history.md @@ -2,6 +2,7 @@ This page links to all previous changelogs from the QMK Breaking Changes process. +* [2024 May 26](ChangeLog/20240526.md) - version 0.25.0 * [2024 Feb 25](ChangeLog/20240225.md) - version 0.24.0 * [2023 Nov 26](ChangeLog/20231126.md) - version 0.23.0 * [2023 Aug 27](ChangeLog/20230827.md) - version 0.22.0 diff --git a/util/list-moved-keyboards.sh b/util/list-moved-keyboards.sh new file mode 100755 index 00000000000..1a39f512a25 --- /dev/null +++ b/util/list-moved-keyboards.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +echo "This might take a while... let it sit." >&2 + +git cherry upstream/master upstream/develop | awk '{print $2}' | while read sha1; do + git diff --name-status -M25 ${sha1}^..${sha1} | grep 'keyboards/' | grep '^R' | grep -E '(info|keyboard).json' +done | sed -e 's@keyboards/@@g' -e 's@/info.json@@g' -e 's@/keyboard.json@@g' | sort -k+2 | while IFS=$'\n' read line; do + if [[ $(echo $line | awk '{print $2}') != $(echo $line | awk '{print $3}') ]]; then + echo $line + fi +done | sort -k+2 | awk '{printf "| %s | %s |\n", $2, $3}' | column -t | sort From 465ab5a20643722c9b712c6b6924472b7345dd64 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Tue, 28 May 2024 14:37:58 +1000 Subject: [PATCH 054/519] Merge point for 2024q2 Breaking Changes. - Remove `develop` notice from readme. --- readme.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/readme.md b/readme.md index c277ca0aade..f0e49a08e95 100644 --- a/readme.md +++ b/readme.md @@ -1,7 +1,3 @@ -# 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 [![Current Version](https://img.shields.io/github/tag/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/tags) From 6921c8a7ddbf5596d629f6272b4043bb3cbcf661 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Tue, 28 May 2024 14:41:15 +1000 Subject: [PATCH 055/519] Branch point for 2024q3 Breaking Change. --- readme.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/readme.md b/readme.md index f0e49a08e95..c277ca0aade 100644 --- a/readme.md +++ b/readme.md @@ -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 [![Current Version](https://img.shields.io/github/tag/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/tags) From 267dffda154d119ed5f155665e90fc5e03d138a5 Mon Sep 17 00:00:00 2001 From: Purdea Andrei Date: Tue, 28 May 2024 14:49:55 +0300 Subject: [PATCH 056/519] EEPROM: Don't erase if we don't have to. Adding eeprom_driver_format abstraction. (#18332) --- drivers/eeprom/eeprom_custom.c-template | 11 +++++++++++ drivers/eeprom/eeprom_driver.c | 6 ++++++ drivers/eeprom/eeprom_driver.h | 2 ++ drivers/eeprom/eeprom_i2c.c | 8 ++++++++ drivers/eeprom/eeprom_spi.c | 8 ++++++++ drivers/eeprom/eeprom_transient.c | 9 +++++++-- drivers/eeprom/eeprom_wear_leveling.c | 6 ++++++ .../drivers/eeprom/eeprom_legacy_emulated_flash.c | 7 +++++++ platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.c | 6 ++++++ quantum/eeconfig.c | 4 ++-- 10 files changed, 63 insertions(+), 4 deletions(-) diff --git a/drivers/eeprom/eeprom_custom.c-template b/drivers/eeprom/eeprom_custom.c-template index 5f915f7fab5..fb1f0a3a974 100644 --- a/drivers/eeprom/eeprom_custom.c-template +++ b/drivers/eeprom/eeprom_custom.c-template @@ -23,6 +23,17 @@ void eeprom_driver_init(void) { /* Any initialisation code */ } +void eeprom_driver_format(bool erase) { + /* If erase=false, then only do the absolute minimum initialisation necessary + to make sure that the eeprom driver is usable. It doesn't need to guarantee + that the content of the eeprom is reset to any particular value. For many + eeprom drivers this may be a no-op. + + If erase=true, then in addition to making sure the eeprom driver is in a + usable state, also make sure that it is erased. + */ +} + void eeprom_driver_erase(void) { /* Wipe out the EEPROM, setting values to zero */ } diff --git a/drivers/eeprom/eeprom_driver.c b/drivers/eeprom/eeprom_driver.c index 885cf219811..1f3f96f0068 100644 --- a/drivers/eeprom/eeprom_driver.c +++ b/drivers/eeprom/eeprom_driver.c @@ -77,3 +77,9 @@ void eeprom_update_dword(uint32_t *addr, uint32_t value) { eeprom_write_dword(addr, value); } } + +void eeprom_driver_format(bool erase) __attribute__((weak)); +void eeprom_driver_format(bool erase) { + (void)erase; /* The default implementation assumes that the eeprom must be erased in order to be usable. */ + eeprom_driver_erase(); +} diff --git a/drivers/eeprom/eeprom_driver.h b/drivers/eeprom/eeprom_driver.h index 74592bc8f05..0c55c497d46 100644 --- a/drivers/eeprom/eeprom_driver.h +++ b/drivers/eeprom/eeprom_driver.h @@ -16,7 +16,9 @@ #pragma once +#include #include "eeprom.h" void eeprom_driver_init(void); +void eeprom_driver_format(bool erase); void eeprom_driver_erase(void); diff --git a/drivers/eeprom/eeprom_i2c.c b/drivers/eeprom/eeprom_i2c.c index 0d3d5ccbe50..d29aff5f85f 100644 --- a/drivers/eeprom/eeprom_i2c.c +++ b/drivers/eeprom/eeprom_i2c.c @@ -36,6 +36,7 @@ #include "wait.h" #include "i2c_master.h" #include "eeprom.h" +#include "eeprom_driver.h" #include "eeprom_i2c.h" // #define DEBUG_EEPROM_OUTPUT @@ -62,6 +63,13 @@ void eeprom_driver_init(void) { #endif } +void eeprom_driver_format(bool erase) { + /* i2c eeproms do not need to be formatted before use */ + if (erase) { + eeprom_driver_erase(); + } +} + void eeprom_driver_erase(void) { #if defined(CONSOLE_ENABLE) && defined(DEBUG_EEPROM_OUTPUT) uint32_t start = timer_read32(); diff --git a/drivers/eeprom/eeprom_spi.c b/drivers/eeprom/eeprom_spi.c index 51ba25deced..14f0afa68be 100644 --- a/drivers/eeprom/eeprom_spi.c +++ b/drivers/eeprom/eeprom_spi.c @@ -35,6 +35,7 @@ #include "timer.h" #include "spi_master.h" #include "eeprom.h" +#include "eeprom_driver.h" #include "eeprom_spi.h" #define CMD_WREN 6 @@ -92,6 +93,13 @@ void eeprom_driver_init(void) { spi_init(); } +void eeprom_driver_format(bool erase) { + /* spi eeproms do not need to be formatted before use */ + if (erase) { + eeprom_driver_erase(); + } +} + void eeprom_driver_erase(void) { #if defined(CONSOLE_ENABLE) && defined(DEBUG_EEPROM_OUTPUT) uint32_t start = timer_read32(); diff --git a/drivers/eeprom/eeprom_transient.c b/drivers/eeprom/eeprom_transient.c index 9dc4289c271..d9f5db98532 100644 --- a/drivers/eeprom/eeprom_transient.c +++ b/drivers/eeprom/eeprom_transient.c @@ -30,8 +30,13 @@ size_t clamp_length(intptr_t offset, size_t len) { return len; } -void eeprom_driver_init(void) { - eeprom_driver_erase(); +void eeprom_driver_init(void) {} + +void eeprom_driver_format(bool erase) { + /* The transient eeprom driver doesn't necessarily need to be formatted before use, and it always starts up filled with zeros, due to placement in the .bss section */ + if (erase) { + eeprom_driver_erase(); + } } void eeprom_driver_erase(void) { diff --git a/drivers/eeprom/eeprom_wear_leveling.c b/drivers/eeprom/eeprom_wear_leveling.c index bd77eef35cc..24ca6c3c6b3 100644 --- a/drivers/eeprom/eeprom_wear_leveling.c +++ b/drivers/eeprom/eeprom_wear_leveling.c @@ -10,6 +10,12 @@ void eeprom_driver_init(void) { wear_leveling_init(); } +void eeprom_driver_format(bool erase) { + /* wear leveling requires the write log data structures to be erased before use. */ + (void)erase; + eeprom_driver_erase(); +} + void eeprom_driver_erase(void) { wear_leveling_erase(); } diff --git a/platforms/chibios/drivers/eeprom/eeprom_legacy_emulated_flash.c b/platforms/chibios/drivers/eeprom/eeprom_legacy_emulated_flash.c index a81fe3353c6..9857ac046bd 100644 --- a/platforms/chibios/drivers/eeprom/eeprom_legacy_emulated_flash.c +++ b/platforms/chibios/drivers/eeprom/eeprom_legacy_emulated_flash.c @@ -24,6 +24,7 @@ #include "debug.h" #include "eeprom_legacy_emulated_flash.h" #include "legacy_flash_ops.h" +#include "eeprom_driver.h" /* * We emulate eeprom by writing a snapshot compacted view of eeprom contents, @@ -564,6 +565,12 @@ void eeprom_driver_init(void) { EEPROM_Init(); } +void eeprom_driver_format(bool erase) { + /* emulated eepron requires the write log data structures to be erased before use. */ + (void)erase; + eeprom_driver_erase(); +} + void eeprom_driver_erase(void) { EEPROM_Erase(); } diff --git a/platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.c b/platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.c index ed26cc71457..628137a0b35 100644 --- a/platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.c +++ b/platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.c @@ -52,6 +52,12 @@ static inline void STM32_L0_L1_EEPROM_Lock(void) { void eeprom_driver_init(void) {} +void eeprom_driver_format(bool erase) { + if (erase) { + eeprom_driver_erase(); + } +} + void eeprom_driver_erase(void) { STM32_L0_L1_EEPROM_Unlock(); diff --git a/quantum/eeconfig.c b/quantum/eeconfig.c index 40690d6a97a..ffbbf43a95c 100644 --- a/quantum/eeconfig.c +++ b/quantum/eeconfig.c @@ -46,7 +46,7 @@ __attribute__((weak)) void eeconfig_init_kb(void) { */ void eeconfig_init_quantum(void) { #if defined(EEPROM_DRIVER) - eeprom_driver_erase(); + eeprom_driver_format(false); #endif eeprom_update_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER); @@ -108,7 +108,7 @@ void eeconfig_enable(void) { */ void eeconfig_disable(void) { #if defined(EEPROM_DRIVER) - eeprom_driver_erase(); + eeprom_driver_format(false); #endif eeprom_update_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER_OFF); } From 2f9f000d0cb8474e44983838e904f88f58431f5e Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 29 May 2024 02:54:47 +0100 Subject: [PATCH 057/519] Workaround for broken ChibiOS startup (#23822) --- platforms/chibios/boards/GENERIC_STM32_G431XB/configs/mcuconf.h | 2 +- platforms/chibios/boards/GENERIC_STM32_L432XC/configs/mcuconf.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/platforms/chibios/boards/GENERIC_STM32_G431XB/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_G431XB/configs/mcuconf.h index fd00280115c..0537ee92357 100644 --- a/platforms/chibios/boards/GENERIC_STM32_G431XB/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_STM32_G431XB/configs/mcuconf.h @@ -62,7 +62,7 @@ #define STM32_HSI16_ENABLED TRUE #define STM32_HSI48_ENABLED TRUE #define STM32_HSE_ENABLED FALSE -#define STM32_LSI_ENABLED TRUE +#define STM32_LSI_ENABLED FALSE #define STM32_LSE_ENABLED FALSE #define STM32_SW STM32_SW_PLLRCLK #define STM32_PLLSRC STM32_PLLSRC_HSI16 diff --git a/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/mcuconf.h index be64b048124..6962a340c55 100644 --- a/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/mcuconf.h @@ -43,7 +43,7 @@ #define STM32_PLS STM32_PLS_LEV0 #define STM32_HSI16_ENABLED TRUE #define STM32_HSI48_ENABLED TRUE -#define STM32_LSI_ENABLED TRUE +#define STM32_LSI_ENABLED FALSE #define STM32_HSE_ENABLED FALSE #define STM32_LSE_ENABLED FALSE #define STM32_MSIPLL_ENABLED FALSE From 4d320736815152abc9b9bd0318edd02d2a045b74 Mon Sep 17 00:00:00 2001 From: burkfers Date: Wed, 29 May 2024 06:53:48 +0200 Subject: [PATCH 058/519] BastardKB: remove legacy board `tbk` (#23818) remove legacy board `tbk` --- keyboards/bastardkb/tbk/config.h | 20 ---- keyboards/bastardkb/tbk/keyboard.json | 111 ------------------ .../bastardkb/tbk/keymaps/default/keymap.c | 60 ---------- keyboards/bastardkb/tbk/readme.md | 22 ---- 4 files changed, 213 deletions(-) delete mode 100644 keyboards/bastardkb/tbk/config.h delete mode 100644 keyboards/bastardkb/tbk/keyboard.json delete mode 100644 keyboards/bastardkb/tbk/keymaps/default/keymap.c delete mode 100644 keyboards/bastardkb/tbk/readme.md diff --git a/keyboards/bastardkb/tbk/config.h b/keyboards/bastardkb/tbk/config.h deleted file mode 100644 index 8515cac5ef0..00000000000 --- a/keyboards/bastardkb/tbk/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright 2021 Quentin LEBASTARD - * - * 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 . - */ - -#pragma once - -#define MASTER_RIGHT diff --git a/keyboards/bastardkb/tbk/keyboard.json b/keyboards/bastardkb/tbk/keyboard.json deleted file mode 100644 index 90e37478a1e..00000000000 --- a/keyboards/bastardkb/tbk/keyboard.json +++ /dev/null @@ -1,111 +0,0 @@ -{ - "keyboard_name": "The Bastard Keyboard", - "url": "https://bastardkb.com/", - "usb": { - "device_version": "0.0.1", - "pid": "0x1828" - }, - "rgblight": { - "led_count": 38, - "split_count": [19, 19], - "animations": { - "breathing": true, - "rainbow_mood": true, - "rainbow_swirl": true, - "snake": true, - "knight": true, - "christmas": true, - "static_gradient": true, - "rgb_test": true, - "alternating": true, - "twinkle": true - } - }, - "ws2812": { - "pin": "D2" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "extrakey": true, - "mousekey": true, - "nkro": false, - "rgblight": true - }, - "matrix_pins": { - "cols": ["B4", "E6", "C6", "B1", "B3", "B2"], - "rows": ["D7", "B5", "F7", "F6", "B6"] - }, - "diode_direction": "ROW2COL", - "split": { - "enabled": true, - "soft_serial_pin": "D0" - }, - "processor": "atmega32u4", - "bootloader": "atmel-dfu", - "layouts": { - "LAYOUT_split_4x6_5": { - "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": [5, 5], "x": 11, "y": 0}, - {"matrix": [5, 4], "x": 12, "y": 0}, - {"matrix": [5, 3], "x": 13, "y": 0}, - {"matrix": [5, 2], "x": 14, "y": 0}, - {"matrix": [5, 1], "x": 15, "y": 0}, - {"matrix": [5, 0], "x": 16, "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": [6, 5], "x": 11, "y": 1}, - {"matrix": [6, 4], "x": 12, "y": 1}, - {"matrix": [6, 3], "x": 13, "y": 1}, - {"matrix": [6, 2], "x": 14, "y": 1}, - {"matrix": [6, 1], "x": 15, "y": 1}, - {"matrix": [6, 0], "x": 16, "y": 1}, - {"matrix": [2, 0], "x": 0, "y": 2}, - {"matrix": [2, 1], "x": 1, "y": 2}, - {"matrix": [2, 2], "x": 2, "y": 2}, - {"matrix": [2, 3], "x": 3, "y": 2}, - {"matrix": [2, 4], "x": 4, "y": 2}, - {"matrix": [2, 5], "x": 5, "y": 2}, - {"matrix": [7, 5], "x": 11, "y": 2}, - {"matrix": [7, 4], "x": 12, "y": 2}, - {"matrix": [7, 3], "x": 13, "y": 2}, - {"matrix": [7, 2], "x": 14, "y": 2}, - {"matrix": [7, 1], "x": 15, "y": 2}, - {"matrix": [7, 0], "x": 16, "y": 2}, - {"matrix": [3, 0], "x": 0, "y": 3}, - {"matrix": [3, 1], "x": 1, "y": 3}, - {"matrix": [3, 2], "x": 2, "y": 3}, - {"matrix": [3, 3], "x": 3, "y": 3}, - {"matrix": [3, 4], "x": 4, "y": 3}, - {"matrix": [3, 5], "x": 5, "y": 3}, - {"matrix": [8, 5], "x": 11, "y": 3}, - {"matrix": [8, 4], "x": 12, "y": 3}, - {"matrix": [8, 3], "x": 13, "y": 3}, - {"matrix": [8, 2], "x": 14, "y": 3}, - {"matrix": [8, 1], "x": 15, "y": 3}, - {"matrix": [8, 0], "x": 16, "y": 3}, - {"matrix": [4, 3], "x": 5, "y": 4}, - {"matrix": [4, 4], "x": 6, "y": 4}, - {"matrix": [4, 1], "x": 7, "y": 4}, - {"matrix": [9, 1], "x": 9, "y": 4}, - {"matrix": [9, 4], "x": 10, "y": 4}, - {"matrix": [9, 3], "x": 11, "y": 4}, - {"matrix": [4, 5], "x": 6, "y": 5}, - {"matrix": [4, 2], "x": 7, "y": 5}, - {"matrix": [9, 2], "x": 9, "y": 5}, - {"matrix": [9, 5], "x": 10, "y": 5} - ] - } - } -} diff --git a/keyboards/bastardkb/tbk/keymaps/default/keymap.c b/keyboards/bastardkb/tbk/keymaps/default/keymap.c deleted file mode 100644 index 3227076c076..00000000000 --- a/keyboards/bastardkb/tbk/keymaps/default/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright 2021 Quentin LEBASTARD - * - * 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 . - */ - -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [0] = LAYOUT_split_4x6_5( - KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, -//-------------------------------------------------//-----------------------------------------------------------// - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, -//-------------------------------------------------//-----------------------------------------------------------// - 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_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS, -//-------------------------------------------------//-----------------------------------------------------------// - KC_LCTL, KC_SPC, MO(1), MO(2), KC_ENT, KC_RGUI, - KC_HOME, KC_BSPC, KC_DEL, KC_RALT - ), - - [1] = LAYOUT_split_4x6_5( - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, -//---------------------------------------------------------//-----------------------------------------------------------// - QK_BOOT, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, _______, KC_PLUS, -//---------------------------------------------------------//-----------------------------------------------------------// - _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END, KC_LPRN, KC_RPRN, KC_P4, KC_P5, KC_P6, KC_MINS, KC_PIPE, -//---------------------------------------------------------//-----------------------------------------------------------// - _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_EQL, KC_UNDS, -//---------------------------------------------------------//-----------------------------------------------------------// - KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, KC_RGUI, - KC_SPC, KC_BSPC, KC_RCTL, KC_ENT - ), - - [2] = LAYOUT_split_4x6_5( - KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, -//---------------------------------------------------------//--------------------------------------------------------------// - _______, _______, RGB_RMOD, RGB_TOG, RGB_MOD, KC_LBRC, KC_RBRC, _______, KC_NUM, KC_INS, KC_SCRL, KC_MUTE, -//---------------------------------------------------------//--------------------------------------------------------------// - _______, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, KC_LPRN, KC_RPRN, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_VOLU, -//---------------------------------------------------------//--------------------------------------------------------------// - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, -//---------------------------------------------------------//--------------------------------------------------------------// - KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, QK_BOOT, - KC_SPC, KC_BSPC, KC_RCTL, KC_ENT - ), -}; diff --git a/keyboards/bastardkb/tbk/readme.md b/keyboards/bastardkb/tbk/readme.md deleted file mode 100644 index 0d552e5caf8..00000000000 --- a/keyboards/bastardkb/tbk/readme.md +++ /dev/null @@ -1,22 +0,0 @@ -# The Bastard Keyboard - -A split ergonomic keyboard. - -* Keyboard Maintainer: [Bastard Keyboards](https://github.com/Bastardkb/) -* Hardware Supported: elite-C V4 -* Hardware Availability: [Bastard Keyboards](https://bastardkb.com/) - -Make example for this keyboard (after setting up your build environment): - - make bastardkb/tbk:default - -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). - -See the [keyboard build instructions](https://docs.bastardkb.com) - - -## Important information regarding the reset - -If you modify this firmware, make sure to always have a QK_BOOT key that can be triggered using only the master side ! This way you ensure that you can always flash the keyboard, even if you mess up. - -Otherwise if you're stuck, open the case and reset manually by shorting Gnd and Rst, or pressing the RST button. From 395766657ff98a4b1fd0dcba5917557f8acbb9e4 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Thu, 30 May 2024 10:43:45 +1000 Subject: [PATCH 059/519] Decrease CPU count by one to try and stop GHA from killing runners. (#23826) --- .github/workflows/ci_build_major_branch_keymap.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_build_major_branch_keymap.yml b/.github/workflows/ci_build_major_branch_keymap.yml index c38d0458d7a..0804c9e2d04 100644 --- a/.github/workflows/ci_build_major_branch_keymap.yml +++ b/.github/workflows/ci_build_major_branch_keymap.yml @@ -108,7 +108,7 @@ jobs: - name: Build targets continue-on-error: true run: | - export NCPUS=$(nproc 2>/dev/null || sysctl -n hw.ncpu 2>/dev/null || getconf _NPROCESSORS_ONLN 2>/dev/null) + export NCPUS=$(( $(nproc 2>/dev/null || sysctl -n hw.ncpu 2>/dev/null || getconf _NPROCESSORS_ONLN 2>/dev/null) -1 )) qmk mass-compile -t -j $NCPUS -e DUMP_CI_METADATA=yes $(jq -r '.["${{ matrix.target }}"].targets' targets.json) || touch .failed - name: Upload binaries From 6ef97172889ccd5db376b2a9f8825489e24fdac4 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Thu, 30 May 2024 12:00:41 +1000 Subject: [PATCH 060/519] Vitepress conversion of docs. (#23795) --- .github/workflows/docs.yml | 53 +- Doxyfile | 70 +- builddefs/docsgen/.gitignore | 5 + builddefs/docsgen/.vitepress/config.mts | 51 ++ .../docsgen/.vitepress/theme/QMKLayout.vue | 18 + builddefs/docsgen/.vitepress/theme/custom.css | 19 + builddefs/docsgen/.vitepress/theme/index.ts | 13 + builddefs/docsgen/build-docs.sh | 6 + builddefs/docsgen/package.json | 14 + builddefs/docsgen/start-docs.sh | 5 + builddefs/docsgen/yarn.lock | 797 ++++++++++++++++ docs/.nojekyll | 0 docs/CNAME | 1 - docs/ChangeLog/20190830.md | 4 +- docs/ChangeLog/20200229.md | 2 +- docs/ChangeLog/20200829.md | 18 +- docs/ChangeLog/20201128.md | 16 +- docs/ChangeLog/20210529.md | 32 +- docs/ChangeLog/20210828.md | 30 +- docs/ChangeLog/20211127.md | 40 +- docs/ChangeLog/20220226.md | 14 +- docs/ChangeLog/20220528.md | 34 +- docs/ChangeLog/20220827.md | 32 +- docs/ChangeLog/20221126.md | 40 +- docs/ChangeLog/20230226.md | 20 +- docs/ChangeLog/20230528.md | 32 +- docs/ChangeLog/20230827.md | 22 +- docs/ChangeLog/20231126.md | 34 +- docs/ChangeLog/20240225.md | 26 +- docs/ChangeLog/20240526.md | 28 +- docs/__capabilities.md | 47 +- docs/_langs.md | 4 - docs/_sidebar.json | 309 +++++++ docs/_summary.md | 204 ----- docs/adc_driver.md | 2 +- docs/apa102_driver.md | 16 +- docs/api_docs.md | 10 +- docs/api_overview.md | 6 +- docs/audio_driver.md | 24 +- docs/breaking_changes.md | 12 +- docs/breaking_changes_history.md | 38 +- docs/cli.md | 12 +- docs/cli_commands.md | 33 +- docs/cli_development.md | 4 +- docs/coding_conventions_python.md | 2 +- docs/compatible_microcontrollers.md | 2 +- docs/config_options.md | 38 +- docs/configurator_default_keymaps.md | 18 +- docs/configurator_step_by_step.md | 34 +- docs/configurator_troubleshooting.md | 4 +- docs/contributing.md | 18 +- docs/custom_quantum_functions.md | 36 +- docs/data_driven_config.md | 4 +- docs/documentation_best_practices.md | 18 +- docs/documentation_templates.md | 4 +- docs/driver_installation_zadig.md | 16 +- docs/easy_maker.md | 2 +- docs/eeprom_driver.md | 50 +- docs/faq_build.md | 8 +- docs/faq_debug.md | 12 +- docs/faq_general.md | 10 +- docs/faq_keymap.md | 12 +- docs/faq_misc.md | 2 +- docs/feature_advanced_keycodes.md | 38 +- docs/feature_audio.md | 10 +- docs/feature_auto_shift.md | 32 +- docs/feature_autocorrect.md | 44 +- docs/feature_backlight.md | 74 +- docs/feature_bluetooth.md | 2 +- docs/feature_bootmagic.md | 16 +- docs/feature_caps_word.md | 20 +- docs/feature_combo.md | 8 +- docs/feature_command.md | 2 +- docs/feature_converters.md | 38 +- docs/feature_debounce_type.md | 12 +- docs/feature_digitizer.md | 24 +- docs/feature_dip_switch.md | 6 +- docs/feature_dynamic_macros.md | 4 +- docs/feature_eeprom.md | 2 +- docs/feature_encoders.md | 22 +- docs/feature_haptic_feedback.md | 4 +- docs/feature_hd44780.md | 84 +- docs/feature_joystick.md | 48 +- docs/feature_key_lock.md | 4 +- docs/feature_key_overrides.md | 44 +- docs/feature_layers.md | 36 +- docs/feature_leader_key.md | 76 +- docs/feature_led_indicators.md | 12 +- docs/feature_led_matrix.md | 50 +- docs/feature_macros.md | 20 +- docs/feature_midi.md | 8 +- docs/feature_mouse_keys.md | 2 +- docs/feature_oled_driver.md | 22 +- docs/feature_os_detection.md | 6 +- docs/feature_pointing_device.md | 32 +- docs/feature_programmable_button.md | 46 +- docs/feature_ps2_mouse.md | 36 +- docs/feature_rawhid.md | 26 +- docs/feature_repeat_key.md | 10 +- docs/feature_rgb_matrix.md | 118 ++- docs/feature_rgblight.md | 32 +- docs/feature_secure.md | 6 +- docs/feature_send_string.md | 70 +- docs/feature_sequencer.md | 4 +- docs/feature_space_cadet.md | 2 +- docs/feature_split_keyboard.md | 52 +- docs/feature_stenography.md | 44 +- docs/feature_swap_hands.md | 4 +- docs/feature_tap_dance.md | 34 +- docs/feature_tri_layer.md | 10 +- docs/feature_unicode.md | 132 +-- docs/feature_userspace.md | 20 +- docs/flash_driver.md | 8 +- docs/flashing.md | 6 +- docs/flashing_bootloadhid.md | 4 +- docs/getting_started_docker.md | 4 +- docs/getting_started_github.md | 4 +- docs/getting_started_introduction.md | 6 +- docs/getting_started_make_guide.md | 16 +- docs/gpio_control.md | 8 +- docs/hand_wire.md | 8 +- docs/hardware_drivers.md | 10 +- docs/hardware_keyboard_guidelines.md | 26 +- docs/how_a_matrix_works.md | 2 +- docs/how_keyboards_work.md | 2 +- docs/i2c_driver.md | 62 +- docs/index.html | 147 --- docs/{README.md => index.md} | 15 +- docs/internals/defines.md | 78 -- docs/internals/input_callback_reg.md | 169 ---- docs/internals/midi_device.md | 143 --- docs/internals/midi_device_setup_process.md | 31 - docs/internals/midi_util.md | 54 -- docs/internals/send_functions.md | 241 ----- docs/internals/sysex_tools.md | 61 -- docs/isp_flashing_guide.md | 34 +- docs/ja/README.md | 47 - docs/ja/_summary.md | 180 ---- docs/ja/adc_driver.md | 155 ---- docs/ja/api_development_environment.md | 8 - docs/ja/api_development_overview.md | 49 - docs/ja/api_docs.md | 73 -- docs/ja/api_overview.md | 20 - docs/ja/arm_debugging.md | 92 -- docs/ja/breaking_changes.md | 120 --- docs/ja/breaking_changes_instructions.md | 51 -- docs/ja/cli.md | 43 - docs/ja/cli_commands.md | 296 ------ docs/ja/cli_configuration.md | 126 --- docs/ja/cli_development.md | 223 ----- docs/ja/coding_conventions_c.md | 63 -- docs/ja/coding_conventions_python.md | 331 ------- docs/ja/compatible_microcontrollers.md | 54 -- docs/ja/config_options.md | 410 --------- docs/ja/configurator_step_by_step.md | 67 -- docs/ja/configurator_troubleshooting.md | 32 - docs/ja/contributing.md | 173 ---- docs/ja/custom_matrix.md | 114 --- docs/ja/custom_quantum_functions.md | 403 -------- docs/ja/data_driven_config.md | 123 --- docs/ja/documentation_best_practices.md | 69 -- docs/ja/documentation_templates.md | 45 - docs/ja/driver_installation_zadig.md | 53 -- docs/ja/faq_build.md | 73 -- docs/ja/faq_debug.md | 131 --- docs/ja/faq_general.md | 58 -- docs/ja/faq_keymap.md | 160 ---- docs/ja/faq_misc.md | 103 --- docs/ja/feature_advanced_keycodes.md | 185 ---- docs/ja/feature_audio.md | 322 ------- docs/ja/feature_auto_shift.md | 135 --- docs/ja/feature_backlight.md | 225 ----- docs/ja/feature_bluetooth.md | 49 - docs/ja/feature_bootmagic.md | 182 ---- docs/ja/feature_combo.md | 108 --- docs/ja/feature_command.md | 56 -- docs/ja/feature_debounce_type.md | 128 --- docs/ja/feature_dip_switch.md | 115 --- docs/ja/feature_dynamic_macros.md | 72 -- docs/ja/feature_encoders.md | 85 -- docs/ja/feature_grave_esc.md | 37 - docs/ja/feature_haptic_feedback.md | 173 ---- docs/ja/feature_hd44780.md | 62 -- docs/ja/feature_key_lock.md | 27 - docs/ja/feature_layers.md | 97 -- docs/ja/feature_layouts.md | 114 --- docs/ja/feature_leader_key.md | 164 ---- docs/ja/feature_led_indicators.md | 119 --- docs/ja/feature_led_matrix.md | 96 -- docs/ja/feature_macros.md | 303 ------ docs/ja/feature_mouse_keys.md | 147 --- docs/ja/feature_pointing_device.md | 58 -- docs/ja/feature_ps2_mouse.md | 288 ------ docs/ja/feature_rawhid.md | 74 -- docs/ja/feature_split_keyboard.md | 251 ----- docs/ja/feature_stenography.md | 135 --- docs/ja/feature_swap_hands.md | 36 - docs/ja/feature_tap_dance.md | 530 ----------- docs/ja/feature_thermal_printer.md | 15 - docs/ja/feature_unicode.md | 266 ------ docs/ja/feature_userspace.md | 260 ------ docs/ja/feature_wpm.md | 24 - docs/ja/flashing.md | 247 ----- docs/ja/flashing_bootloadhid.md | 75 -- docs/ja/getting_started_docker.md | 60 -- docs/ja/getting_started_github.md | 69 -- docs/ja/getting_started_introduction.md | 65 -- docs/ja/getting_started_make_guide.md | 161 ---- docs/ja/gpio_control.md | 47 - docs/ja/hardware_avr.md | 190 ---- docs/ja/hardware_drivers.md | 41 - docs/ja/hardware_keyboard_guidelines.md | 239 ----- docs/ja/how_a_matrix_works.md | 104 --- docs/ja/how_keyboards_work.md | 74 -- docs/ja/i2c_driver.md | 134 --- docs/ja/isp_flashing_guide.md | 294 ------ docs/ja/ja_doc_status.sh | 34 - docs/ja/keycodes.md | 574 ------------ docs/ja/keycodes_basic.md | 261 ------ docs/ja/keycodes_us_ansi_shifted.md | 41 - docs/ja/keymap.md | 189 ---- docs/ja/mod_tap.md | 71 -- docs/ja/newbs.md | 40 - docs/ja/newbs_building_firmware.md | 81 -- .../newbs_building_firmware_configurator.md | 20 - docs/ja/newbs_flashing.md | 133 --- docs/ja/newbs_getting_started.md | 210 ----- docs/ja/newbs_git_best_practices.md | 24 - .../ja/newbs_git_resolving_merge_conflicts.md | 94 -- docs/ja/newbs_git_resynchronize_a_branch.md | 88 -- docs/ja/newbs_git_using_your_master_branch.md | 101 -- docs/ja/newbs_learn_more_resources.md | 63 -- docs/ja/newbs_testing_debugging.md | 15 - docs/ja/one_shot_keys.md | 110 --- docs/ja/other_eclipse.md | 89 -- docs/ja/other_vscode.md | 119 --- docs/ja/pr_checklist.md | 145 --- docs/ja/proton_c_conversion.md | 98 -- docs/ja/quantum_keycodes.md | 20 - docs/ja/ref_functions.md | 124 --- docs/ja/reference_configurator_support.md | 200 ---- docs/ja/reference_glossary.md | 173 ---- docs/ja/reference_info_json.md | 68 -- docs/ja/reference_keymap_extras.md | 89 -- docs/ja/serial_driver.md | 75 -- docs/ja/support.md | 22 - docs/ja/syllabus.md | 76 -- docs/ja/tap_hold.md | 167 ---- docs/ja/translating.md | 60 -- docs/ja/understanding_qmk.md | 190 ---- docs/keycodes.md | 124 +-- docs/keycodes_basic.md | 4 +- docs/keycodes_magic.md | 2 +- docs/keymap.md | 12 +- docs/mod_tap.md | 8 +- docs/newbs.md | 16 +- docs/newbs_building_firmware.md | 24 +- docs/newbs_building_firmware_configurator.md | 8 +- docs/newbs_building_firmware_workflow.md | 48 +- docs/newbs_external_userspace.md | 24 +- docs/newbs_flashing.md | 20 +- docs/newbs_getting_started.md | 114 ++- docs/newbs_git_best_practices.md | 10 +- docs/newbs_git_resolving_merge_conflicts.md | 4 +- docs/newbs_git_resynchronize_a_branch.md | 10 +- docs/newbs_git_using_your_master_branch.md | 14 +- docs/newbs_testing_debugging.md | 6 +- docs/one_shot_keys.md | 6 +- docs/other_eclipse.md | 2 +- docs/other_vscode.md | 10 +- docs/platformdev_chibios_earlyinit.md | 8 +- docs/platformdev_rp2040.md | 42 +- docs/platformdev_selecting_arm_mcu.md | 10 +- docs/porting_your_keyboard_to_qmk.md | 26 +- docs/pr_checklist.md | 28 +- docs/public/badge-community-dark.svg | 1 + docs/public/badge-community-light.svg | 1 + docs/qmk.css | 862 ------------------ docs/qmk_custom_dark.css | 45 - docs/qmk_custom_light.css | 58 -- docs/quantum_keycodes.md | 6 +- docs/quantum_painter.md | 215 +++-- docs/quantum_painter_lvgl.md | 27 +- docs/quantum_painter_qff.md | 22 +- docs/quantum_painter_qgf.md | 18 +- docs/quantum_painter_rle.md | 4 +- docs/redirects.json | 52 -- docs/ref_functions.md | 16 +- docs/reference_configurator_support.md | 16 +- docs/reference_glossary.md | 20 +- docs/reference_info_json.md | 108 +-- docs/serial_driver.md | 22 +- docs/spi_driver.md | 44 +- docs/squeezing_avr.md | 2 +- docs/support_deprecation_policy.md | 8 +- docs/sw.js | 83 -- docs/syllabus.md | 82 +- docs/tap_hold.md | 32 +- docs/translating.md | 55 -- docs/uart_driver.md | 34 +- docs/understanding_qmk.md | 6 +- docs/unit_testing.md | 4 +- docs/ws2812_driver.md | 50 +- docs/zh-cn/README.md | 42 - docs/zh-cn/_summary.md | 191 ---- docs/zh-cn/api_docs.md | 73 -- docs/zh-cn/api_overview.md | 20 - docs/zh-cn/cli.md | 43 - docs/zh-cn/cli_commands.md | 503 ---------- docs/zh-cn/cli_configuration.md | 126 --- docs/zh-cn/cli_tab_complete.md | 32 - docs/zh-cn/configurator_architecture.md | 66 -- docs/zh-cn/configurator_default_keymaps.md | 198 ---- docs/zh-cn/configurator_step_by_step.md | 63 -- docs/zh-cn/configurator_troubleshooting.md | 31 - docs/zh-cn/contributing.md | 175 ---- docs/zh-cn/custom_quantum_functions.md | 476 ---------- docs/zh-cn/driver_installation_zadig.md | 102 --- docs/zh-cn/easy_maker.md | 37 - docs/zh-cn/faq_build.md | 73 -- docs/zh-cn/faq_debug.md | 136 --- docs/zh-cn/faq_general.md | 58 -- docs/zh-cn/faq_keymap.md | 157 ---- docs/zh-cn/faq_misc.md | 108 --- docs/zh-cn/feature_grave_esc.md | 39 - docs/zh-cn/feature_space_cadet.md | 70 -- docs/zh-cn/flashing.md | 329 ------- docs/zh-cn/flashing_bootloadhid.md | 75 -- docs/zh-cn/getting_started_docker.md | 59 -- docs/zh-cn/getting_started_github.md | 69 -- docs/zh-cn/getting_started_introduction.md | 59 -- docs/zh-cn/hand_wire.md | 255 ------ docs/zh-cn/keymap.md | 211 ----- docs/zh-cn/mod_tap.md | 141 --- docs/zh-cn/newbs.md | 29 - docs/zh-cn/newbs_building_firmware.md | 68 -- .../newbs_building_firmware_configurator.md | 18 - docs/zh-cn/newbs_flashing.md | 124 --- docs/zh-cn/newbs_getting_started.md | 208 ----- docs/zh-cn/newbs_git_best_practices.md | 23 - .../newbs_git_resolving_merge_conflicts.md | 86 -- .../zh-cn/newbs_git_resynchronize_a_branch.md | 76 -- .../newbs_git_using_your_master_branch.md | 79 -- docs/zh-cn/newbs_learn_more_resources.md | 35 - docs/zh-cn/newbs_testing_debugging.md | 14 - docs/zh-cn/other_eclipse.md | 90 -- docs/zh-cn/other_vscode.md | 120 --- docs/zh-cn/reference_configurator_support.md | 200 ---- docs/zh-cn/reference_glossary.md | 198 ---- docs/zh-cn/support.md | 22 - docs/zh-cn/syllabus.md | 77 -- docs/zh-cn/translating.md | 60 -- docs/zh-cn/zh_cn_doc_status.sh | 35 - lib/python/qmk/cli/docs.py | 41 +- lib/python/qmk/cli/generate/docs.py | 42 +- lib/python/qmk/cli/new/keyboard.py | 2 +- lib/python/qmk/docs.py | 61 ++ 357 files changed, 3611 insertions(+), 24208 deletions(-) create mode 100644 builddefs/docsgen/.gitignore create mode 100644 builddefs/docsgen/.vitepress/config.mts create mode 100644 builddefs/docsgen/.vitepress/theme/QMKLayout.vue create mode 100644 builddefs/docsgen/.vitepress/theme/custom.css create mode 100644 builddefs/docsgen/.vitepress/theme/index.ts create mode 100755 builddefs/docsgen/build-docs.sh create mode 100644 builddefs/docsgen/package.json create mode 100755 builddefs/docsgen/start-docs.sh create mode 100644 builddefs/docsgen/yarn.lock delete mode 100644 docs/.nojekyll delete mode 100644 docs/CNAME delete mode 100644 docs/_langs.md create mode 100644 docs/_sidebar.json delete mode 100644 docs/_summary.md delete mode 100644 docs/index.html rename docs/{README.md => index.md} (76%) delete mode 100644 docs/internals/defines.md delete mode 100644 docs/internals/input_callback_reg.md delete mode 100644 docs/internals/midi_device.md delete mode 100644 docs/internals/midi_device_setup_process.md delete mode 100644 docs/internals/midi_util.md delete mode 100644 docs/internals/send_functions.md delete mode 100644 docs/internals/sysex_tools.md delete mode 100644 docs/ja/README.md delete mode 100644 docs/ja/_summary.md delete mode 100644 docs/ja/adc_driver.md delete mode 100644 docs/ja/api_development_environment.md delete mode 100644 docs/ja/api_development_overview.md delete mode 100644 docs/ja/api_docs.md delete mode 100644 docs/ja/api_overview.md delete mode 100644 docs/ja/arm_debugging.md delete mode 100644 docs/ja/breaking_changes.md delete mode 100644 docs/ja/breaking_changes_instructions.md delete mode 100644 docs/ja/cli.md delete mode 100644 docs/ja/cli_commands.md delete mode 100644 docs/ja/cli_configuration.md delete mode 100644 docs/ja/cli_development.md delete mode 100644 docs/ja/coding_conventions_c.md delete mode 100644 docs/ja/coding_conventions_python.md delete mode 100644 docs/ja/compatible_microcontrollers.md delete mode 100644 docs/ja/config_options.md delete mode 100644 docs/ja/configurator_step_by_step.md delete mode 100644 docs/ja/configurator_troubleshooting.md delete mode 100644 docs/ja/contributing.md delete mode 100644 docs/ja/custom_matrix.md delete mode 100644 docs/ja/custom_quantum_functions.md delete mode 100644 docs/ja/data_driven_config.md delete mode 100644 docs/ja/documentation_best_practices.md delete mode 100644 docs/ja/documentation_templates.md delete mode 100644 docs/ja/driver_installation_zadig.md delete mode 100644 docs/ja/faq_build.md delete mode 100644 docs/ja/faq_debug.md delete mode 100644 docs/ja/faq_general.md delete mode 100644 docs/ja/faq_keymap.md delete mode 100644 docs/ja/faq_misc.md delete mode 100644 docs/ja/feature_advanced_keycodes.md delete mode 100644 docs/ja/feature_audio.md delete mode 100644 docs/ja/feature_auto_shift.md delete mode 100644 docs/ja/feature_backlight.md delete mode 100644 docs/ja/feature_bluetooth.md delete mode 100644 docs/ja/feature_bootmagic.md delete mode 100644 docs/ja/feature_combo.md delete mode 100644 docs/ja/feature_command.md delete mode 100644 docs/ja/feature_debounce_type.md delete mode 100644 docs/ja/feature_dip_switch.md delete mode 100644 docs/ja/feature_dynamic_macros.md delete mode 100644 docs/ja/feature_encoders.md delete mode 100644 docs/ja/feature_grave_esc.md delete mode 100644 docs/ja/feature_haptic_feedback.md delete mode 100644 docs/ja/feature_hd44780.md delete mode 100644 docs/ja/feature_key_lock.md delete mode 100644 docs/ja/feature_layers.md delete mode 100644 docs/ja/feature_layouts.md delete mode 100644 docs/ja/feature_leader_key.md delete mode 100644 docs/ja/feature_led_indicators.md delete mode 100644 docs/ja/feature_led_matrix.md delete mode 100644 docs/ja/feature_macros.md delete mode 100644 docs/ja/feature_mouse_keys.md delete mode 100644 docs/ja/feature_pointing_device.md delete mode 100644 docs/ja/feature_ps2_mouse.md delete mode 100644 docs/ja/feature_rawhid.md delete mode 100644 docs/ja/feature_split_keyboard.md delete mode 100644 docs/ja/feature_stenography.md delete mode 100644 docs/ja/feature_swap_hands.md delete mode 100644 docs/ja/feature_tap_dance.md delete mode 100644 docs/ja/feature_thermal_printer.md delete mode 100644 docs/ja/feature_unicode.md delete mode 100644 docs/ja/feature_userspace.md delete mode 100644 docs/ja/feature_wpm.md delete mode 100644 docs/ja/flashing.md delete mode 100644 docs/ja/flashing_bootloadhid.md delete mode 100644 docs/ja/getting_started_docker.md delete mode 100644 docs/ja/getting_started_github.md delete mode 100644 docs/ja/getting_started_introduction.md delete mode 100644 docs/ja/getting_started_make_guide.md delete mode 100644 docs/ja/gpio_control.md delete mode 100644 docs/ja/hardware_avr.md delete mode 100644 docs/ja/hardware_drivers.md delete mode 100644 docs/ja/hardware_keyboard_guidelines.md delete mode 100644 docs/ja/how_a_matrix_works.md delete mode 100644 docs/ja/how_keyboards_work.md delete mode 100644 docs/ja/i2c_driver.md delete mode 100644 docs/ja/isp_flashing_guide.md delete mode 100644 docs/ja/ja_doc_status.sh delete mode 100644 docs/ja/keycodes.md delete mode 100644 docs/ja/keycodes_basic.md delete mode 100644 docs/ja/keycodes_us_ansi_shifted.md delete mode 100644 docs/ja/keymap.md delete mode 100644 docs/ja/mod_tap.md delete mode 100644 docs/ja/newbs.md delete mode 100644 docs/ja/newbs_building_firmware.md delete mode 100644 docs/ja/newbs_building_firmware_configurator.md delete mode 100644 docs/ja/newbs_flashing.md delete mode 100644 docs/ja/newbs_getting_started.md delete mode 100644 docs/ja/newbs_git_best_practices.md delete mode 100644 docs/ja/newbs_git_resolving_merge_conflicts.md delete mode 100644 docs/ja/newbs_git_resynchronize_a_branch.md delete mode 100644 docs/ja/newbs_git_using_your_master_branch.md delete mode 100644 docs/ja/newbs_learn_more_resources.md delete mode 100644 docs/ja/newbs_testing_debugging.md delete mode 100644 docs/ja/one_shot_keys.md delete mode 100644 docs/ja/other_eclipse.md delete mode 100644 docs/ja/other_vscode.md delete mode 100644 docs/ja/pr_checklist.md delete mode 100644 docs/ja/proton_c_conversion.md delete mode 100644 docs/ja/quantum_keycodes.md delete mode 100644 docs/ja/ref_functions.md delete mode 100644 docs/ja/reference_configurator_support.md delete mode 100644 docs/ja/reference_glossary.md delete mode 100644 docs/ja/reference_info_json.md delete mode 100644 docs/ja/reference_keymap_extras.md delete mode 100644 docs/ja/serial_driver.md delete mode 100644 docs/ja/support.md delete mode 100644 docs/ja/syllabus.md delete mode 100644 docs/ja/tap_hold.md delete mode 100644 docs/ja/translating.md delete mode 100644 docs/ja/understanding_qmk.md create mode 100644 docs/public/badge-community-dark.svg create mode 100644 docs/public/badge-community-light.svg delete mode 100644 docs/qmk.css delete mode 100644 docs/qmk_custom_dark.css delete mode 100644 docs/qmk_custom_light.css delete mode 100644 docs/redirects.json delete mode 100644 docs/sw.js delete mode 100644 docs/translating.md delete mode 100644 docs/zh-cn/README.md delete mode 100644 docs/zh-cn/_summary.md delete mode 100644 docs/zh-cn/api_docs.md delete mode 100644 docs/zh-cn/api_overview.md delete mode 100644 docs/zh-cn/cli.md delete mode 100644 docs/zh-cn/cli_commands.md delete mode 100644 docs/zh-cn/cli_configuration.md delete mode 100644 docs/zh-cn/cli_tab_complete.md delete mode 100644 docs/zh-cn/configurator_architecture.md delete mode 100644 docs/zh-cn/configurator_default_keymaps.md delete mode 100644 docs/zh-cn/configurator_step_by_step.md delete mode 100644 docs/zh-cn/configurator_troubleshooting.md delete mode 100644 docs/zh-cn/contributing.md delete mode 100644 docs/zh-cn/custom_quantum_functions.md delete mode 100644 docs/zh-cn/driver_installation_zadig.md delete mode 100644 docs/zh-cn/easy_maker.md delete mode 100644 docs/zh-cn/faq_build.md delete mode 100644 docs/zh-cn/faq_debug.md delete mode 100644 docs/zh-cn/faq_general.md delete mode 100644 docs/zh-cn/faq_keymap.md delete mode 100644 docs/zh-cn/faq_misc.md delete mode 100644 docs/zh-cn/feature_grave_esc.md delete mode 100644 docs/zh-cn/feature_space_cadet.md delete mode 100644 docs/zh-cn/flashing.md delete mode 100644 docs/zh-cn/flashing_bootloadhid.md delete mode 100644 docs/zh-cn/getting_started_docker.md delete mode 100644 docs/zh-cn/getting_started_github.md delete mode 100644 docs/zh-cn/getting_started_introduction.md delete mode 100644 docs/zh-cn/hand_wire.md delete mode 100644 docs/zh-cn/keymap.md delete mode 100644 docs/zh-cn/mod_tap.md delete mode 100644 docs/zh-cn/newbs.md delete mode 100644 docs/zh-cn/newbs_building_firmware.md delete mode 100644 docs/zh-cn/newbs_building_firmware_configurator.md delete mode 100644 docs/zh-cn/newbs_flashing.md delete mode 100644 docs/zh-cn/newbs_getting_started.md delete mode 100644 docs/zh-cn/newbs_git_best_practices.md delete mode 100644 docs/zh-cn/newbs_git_resolving_merge_conflicts.md delete mode 100644 docs/zh-cn/newbs_git_resynchronize_a_branch.md delete mode 100644 docs/zh-cn/newbs_git_using_your_master_branch.md delete mode 100644 docs/zh-cn/newbs_learn_more_resources.md delete mode 100644 docs/zh-cn/newbs_testing_debugging.md delete mode 100644 docs/zh-cn/other_eclipse.md delete mode 100644 docs/zh-cn/other_vscode.md delete mode 100644 docs/zh-cn/reference_configurator_support.md delete mode 100644 docs/zh-cn/reference_glossary.md delete mode 100644 docs/zh-cn/support.md delete mode 100644 docs/zh-cn/syllabus.md delete mode 100644 docs/zh-cn/translating.md delete mode 100644 docs/zh-cn/zh_cn_doc_status.sh create mode 100644 lib/python/qmk/docs.py diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index a00e6616a64..25311019c6c 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -7,20 +7,26 @@ on: push: branches: - master + - vitepress paths: + - 'builddefs/docsgen/**' - 'tmk_core/**' - 'quantum/**' - 'platforms/**' - 'docs/**' - '.github/workflows/docs.yml' +defaults: + run: + shell: bash + jobs: generate: runs-on: ubuntu-latest container: ghcr.io/qmk/qmk_cli # protect against those who develop with their fork on master - if: github.repository == 'qmk/qmk_firmware' + if: github.repository == 'qmk/qmk_firmware' || (github.repository == 'tzarc/qmk_firmware' && github.ref == 'refs/heads/vitepress') steps: - uses: actions/checkout@v4 @@ -29,18 +35,51 @@ jobs: - name: Install dependencies run: | - apt-get update && apt-get install -y rsync nodejs npm doxygen + apt-get update && apt-get install -y rsync doxygen curl + # install nvm + touch $HOME/.bashrc + curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash + + - name: Install node + run: | + source $HOME/.bashrc + nvm install 20 + nvm use 20 + corepack enable npm install -g moxygen - name: Build docs run: | + source $HOME/.bashrc + nvm use 20 qmk --verbose generate-docs + touch '.build/docs/.nojekyll' + + - name: Set CNAME + if: github.repository == 'qmk/qmk_firmware' + run: | + # Override target CNAME + echo 'docs.qmk.fm' > .build/docs/CNAME + + - name: Override CNAME + if: github.repository == 'tzarc/qmk_firmware' + run: | + # Temporarily override target CNAME during development + echo 'vitepress.qmk.fm' > .build/docs/CNAME - name: Deploy + if: github.repository == 'qmk/qmk_firmware' uses: JamesIves/github-pages-deploy-action@v4.6.1 with: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - BASE_BRANCH: master - BRANCH: gh-pages - FOLDER: .build/docs - GIT_CONFIG_EMAIL: hello@qmk.fm + token: ${{ secrets.GITHUB_TOKEN }} + branch: gh-pages + folder: .build/docs + git-config-name: QMK Bot + git-config-email: hello@qmk.fm + + - name: Deploy + if: github.repository == 'tzarc/qmk_firmware' + uses: JamesIves/github-pages-deploy-action@v4.6.1 + with: + branch: gh-pages + folder: .build/docs diff --git a/Doxyfile b/Doxyfile index 4b0ea3f086d..42f2e70c0ec 100644 --- a/Doxyfile +++ b/Doxyfile @@ -21,7 +21,7 @@ DOXYFILE_ENCODING = UTF-8 PROJECT_NAME = "QMK Firmware" PROJECT_NUMBER = https://github.com/qmk/qmk_firmware PROJECT_BRIEF = "Keyboard controller firmware for Atmel AVR and ARM USB families" -OUTPUT_DIRECTORY = .build/doxygen +OUTPUT_DIRECTORY = .build/docs/static/doxygen ALLOW_UNICODE_NAMES = NO OUTPUT_LANGUAGE = English BRIEF_MEMBER_DESC = YES @@ -40,8 +40,8 @@ ABBREVIATE_BRIEF = "The $name class" \ ALWAYS_DETAILED_SEC = NO INLINE_INHERITED_MEMB = NO FULL_PATH_NAMES = YES -STRIP_FROM_PATH = -STRIP_FROM_INC_PATH = +STRIP_FROM_PATH = +STRIP_FROM_INC_PATH = SHORT_NAMES = NO JAVADOC_AUTOBRIEF = NO QT_AUTOBRIEF = NO @@ -49,13 +49,13 @@ MULTILINE_CPP_IS_BRIEF = NO INHERIT_DOCS = YES SEPARATE_MEMBER_PAGES = NO TAB_SIZE = 4 -ALIASES = -TCL_SUBST = +ALIASES = +TCL_SUBST = OPTIMIZE_OUTPUT_FOR_C = YES OPTIMIZE_OUTPUT_JAVA = NO OPTIMIZE_FOR_FORTRAN = NO OPTIMIZE_OUTPUT_VHDL = NO -EXTENSION_MAPPING = +EXTENSION_MAPPING = MARKDOWN_SUPPORT = YES TOC_INCLUDE_HEADINGS = 2 AUTOLINK_SUPPORT = YES @@ -104,14 +104,14 @@ GENERATE_TODOLIST = YES GENERATE_TESTLIST = YES GENERATE_BUGLIST = YES GENERATE_DEPRECATEDLIST= YES -ENABLED_SECTIONS = +ENABLED_SECTIONS = MAX_INITIALIZER_LINES = 30 SHOW_USED_FILES = YES SHOW_FILES = YES SHOW_NAMESPACES = YES -FILE_VERSION_FILTER = -LAYOUT_FILE = -CITE_BIB_FILES = +FILE_VERSION_FILTER = +LAYOUT_FILE = +CITE_BIB_FILES = #--------------------------------------------------------------------------- # Configuration options related to warning and progress messages @@ -124,7 +124,7 @@ WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO WARN_AS_ERROR = NO WARN_FORMAT = "$file:$line: $text" -WARN_LOGFILE = +WARN_LOGFILE = #--------------------------------------------------------------------------- # Configuration options related to the input files @@ -143,19 +143,19 @@ FILE_PATTERNS = *.c \ *.hpp \ *.h++ RECURSIVE = YES -EXCLUDE = +EXCLUDE = EXCLUDE_SYMLINKS = NO EXCLUDE_PATTERNS = */protocol/arm_atsam/* -EXCLUDE_SYMBOLS = -EXAMPLE_PATH = +EXCLUDE_SYMBOLS = +EXAMPLE_PATH = EXAMPLE_PATTERNS = * EXAMPLE_RECURSIVE = NO -IMAGE_PATH = -INPUT_FILTER = -FILTER_PATTERNS = +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = FILTER_SOURCE_FILES = NO -FILTER_SOURCE_PATTERNS = -USE_MDFILE_AS_MAINPAGE = +FILTER_SOURCE_PATTERNS = +USE_MDFILE_AS_MAINPAGE = #--------------------------------------------------------------------------- # Configuration options related to source browsing @@ -177,7 +177,7 @@ VERBATIM_HEADERS = YES ALPHABETICAL_INDEX = YES COLS_IN_ALPHA_INDEX = 5 -IGNORE_PREFIX = +IGNORE_PREFIX = #--------------------------------------------------------------------------- # Configuration options related to disabled outputs @@ -207,18 +207,18 @@ ENABLE_PREPROCESSING = YES MACRO_EXPANSION = NO EXPAND_ONLY_PREDEF = NO SEARCH_INCLUDES = YES -INCLUDE_PATH = -INCLUDE_FILE_PATTERNS = +INCLUDE_PATH = +INCLUDE_FILE_PATTERNS = PREDEFINED = __DOXYGEN__ PROGMEM -EXPAND_AS_DEFINED = +EXPAND_AS_DEFINED = SKIP_FUNCTION_MACROS = YES #--------------------------------------------------------------------------- # Configuration options related to external references #--------------------------------------------------------------------------- -TAGFILES = -GENERATE_TAGFILE = +TAGFILES = +GENERATE_TAGFILE = ALLEXTERNALS = NO EXTERNAL_GROUPS = YES EXTERNAL_PAGES = YES @@ -229,14 +229,14 @@ PERL_PATH = /usr/bin/perl #--------------------------------------------------------------------------- CLASS_DIAGRAMS = YES -MSCGEN_PATH = -DIA_PATH = +MSCGEN_PATH = +DIA_PATH = HIDE_UNDOC_RELATIONS = YES HAVE_DOT = NO DOT_NUM_THREADS = 0 DOT_FONTNAME = Helvetica DOT_FONTSIZE = 10 -DOT_FONTPATH = +DOT_FONTPATH = CLASS_GRAPH = YES COLLABORATION_GRAPH = YES GROUP_GRAPHS = YES @@ -251,13 +251,13 @@ GRAPHICAL_HIERARCHY = YES DIRECTORY_GRAPH = YES DOT_IMAGE_FORMAT = png INTERACTIVE_SVG = NO -DOT_PATH = -DOTFILE_DIRS = -MSCFILE_DIRS = -DIAFILE_DIRS = -PLANTUML_JAR_PATH = -PLANTUML_CFG_FILE = -PLANTUML_INCLUDE_PATH = +DOT_PATH = +DOTFILE_DIRS = +MSCFILE_DIRS = +DIAFILE_DIRS = +PLANTUML_JAR_PATH = +PLANTUML_CFG_FILE = +PLANTUML_INCLUDE_PATH = DOT_GRAPH_MAX_NODES = 50 MAX_DOT_GRAPH_DEPTH = 0 DOT_TRANSPARENT = NO diff --git a/builddefs/docsgen/.gitignore b/builddefs/docsgen/.gitignore new file mode 100644 index 00000000000..e71427cba3f --- /dev/null +++ b/builddefs/docsgen/.gitignore @@ -0,0 +1,5 @@ +node_modules +.vitepress/cache +.vitepress/.temp +.vitepress/dist +docs diff --git a/builddefs/docsgen/.vitepress/config.mts b/builddefs/docsgen/.vitepress/config.mts new file mode 100644 index 00000000000..f2111eeb7c5 --- /dev/null +++ b/builddefs/docsgen/.vitepress/config.mts @@ -0,0 +1,51 @@ +import { defineConfig } from "vitepress"; +import { tabsMarkdownPlugin } from "vitepress-plugin-tabs"; +import sidebar from "../../../docs/_sidebar.json"; + +// https://vitepress.dev/reference/site-config +export default defineConfig(({ mode }) => { + const prod = mode === "production"; + return { + title: "QMK Firmware", + description: "Documentation for QMK Firmware", + + srcDir: prod ? "docs" : "../../docs", + outDir: "../../.build/docs", + cleanUrls: true, + + markdown: { + config(md) { + md.use(tabsMarkdownPlugin); + }, + }, + + vite: { + resolve: { + preserveSymlinks: true, + }, + }, + + themeConfig: { + // https://vitepress.dev/reference/default-theme-config + logo: { + light: "/badge-community-light.svg", + dark: "/badge-community-dark.svg", + }, + siteTitle: false, + + nav: [{ text: "Home", link: "./" }], + + search: { + provider: "local", + }, + + sidebar: sidebar, + + socialLinks: [ + { icon: { svg: '' }, link: "https://reddit.com/r/olkb" }, + { icon: "discord", link: "https://discord.gg/qmk" }, + { icon: "github", link: "https://github.com/qmk/qmk_firmware" }, + ], + } + }; +}); diff --git a/builddefs/docsgen/.vitepress/theme/QMKLayout.vue b/builddefs/docsgen/.vitepress/theme/QMKLayout.vue new file mode 100644 index 00000000000..30d0780d7c3 --- /dev/null +++ b/builddefs/docsgen/.vitepress/theme/QMKLayout.vue @@ -0,0 +1,18 @@ + + + diff --git a/builddefs/docsgen/.vitepress/theme/custom.css b/builddefs/docsgen/.vitepress/theme/custom.css new file mode 100644 index 00000000000..646d215c1f2 --- /dev/null +++ b/builddefs/docsgen/.vitepress/theme/custom.css @@ -0,0 +1,19 @@ +/* Override as vitepress doesn't put them with borders */ +kbd { + border: 1px solid var(--vp-c-text-1); + border-radius: 0.6em; + margin: 0.2em; + padding: 0.2em; +} + +:root { + --vp-nav-logo-height: 100%; +} + +.logo { + padding-bottom: 0.2em; +} + +.VPNavBarTitle.has-sidebar .title { + border-bottom: 0; +} diff --git a/builddefs/docsgen/.vitepress/theme/index.ts b/builddefs/docsgen/.vitepress/theme/index.ts new file mode 100644 index 00000000000..3c820ec5abd --- /dev/null +++ b/builddefs/docsgen/.vitepress/theme/index.ts @@ -0,0 +1,13 @@ +import type { Theme } from 'vitepress' +import DefaultTheme from 'vitepress/theme' +import { enhanceAppWithTabs } from 'vitepress-plugin-tabs/client' +import QMKLayout from './QMKLayout.vue' +import './custom.css' + +export default { + extends: DefaultTheme, + Layout: QMKLayout, + enhanceApp({ app }) { + enhanceAppWithTabs(app) + } +} satisfies Theme diff --git a/builddefs/docsgen/build-docs.sh b/builddefs/docsgen/build-docs.sh new file mode 100755 index 00000000000..2ea884752fe --- /dev/null +++ b/builddefs/docsgen/build-docs.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +cd "$(dirname "$(realpath "${BASH_SOURCE[0]}")")" +yarn install +[[ -e docs ]] || ln -sf ../../docs docs +DEBUG='vitepress:*,vite:*' yarn run docs:build diff --git a/builddefs/docsgen/package.json b/builddefs/docsgen/package.json new file mode 100644 index 00000000000..435e7481f1f --- /dev/null +++ b/builddefs/docsgen/package.json @@ -0,0 +1,14 @@ +{ + "license": "GPL-2.0-or-later", + "devDependencies": { + "vite": "^5.2.10", + "vitepress": "^1.1.0", + "vitepress-plugin-tabs": "^0.5.0", + "vue": "^3.4.24" + }, + "scripts": { + "docs:dev": "vitepress dev --host 0.0.0.0", + "docs:build": "vitepress build", + "docs:preview": "vitepress preview --host 0.0.0.0" + } +} diff --git a/builddefs/docsgen/start-docs.sh b/builddefs/docsgen/start-docs.sh new file mode 100755 index 00000000000..e6e044c6a12 --- /dev/null +++ b/builddefs/docsgen/start-docs.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +cd "$(dirname "$(realpath "${BASH_SOURCE[0]}")")" +yarn install +DEBUG='vitepress:*,vite:*' yarn run docs:dev diff --git a/builddefs/docsgen/yarn.lock b/builddefs/docsgen/yarn.lock new file mode 100644 index 00000000000..b40c1298d01 --- /dev/null +++ b/builddefs/docsgen/yarn.lock @@ -0,0 +1,797 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@algolia/autocomplete-core@1.9.3": + version "1.9.3" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.9.3.tgz#1d56482a768c33aae0868c8533049e02e8961be7" + integrity sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw== + dependencies: + "@algolia/autocomplete-plugin-algolia-insights" "1.9.3" + "@algolia/autocomplete-shared" "1.9.3" + +"@algolia/autocomplete-plugin-algolia-insights@1.9.3": + version "1.9.3" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.9.3.tgz#9b7f8641052c8ead6d66c1623d444cbe19dde587" + integrity sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg== + dependencies: + "@algolia/autocomplete-shared" "1.9.3" + +"@algolia/autocomplete-preset-algolia@1.9.3": + version "1.9.3" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.9.3.tgz#64cca4a4304cfcad2cf730e83067e0c1b2f485da" + integrity sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA== + dependencies: + "@algolia/autocomplete-shared" "1.9.3" + +"@algolia/autocomplete-shared@1.9.3": + version "1.9.3" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-shared/-/autocomplete-shared-1.9.3.tgz#2e22e830d36f0a9cf2c0ccd3c7f6d59435b77dfa" + integrity sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ== + +"@algolia/cache-browser-local-storage@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.23.3.tgz#0cc26b96085e1115dac5fcb9d826651ba57faabc" + integrity sha512-vRHXYCpPlTDE7i6UOy2xE03zHF2C8MEFjPN2v7fRbqVpcOvAUQK81x3Kc21xyb5aSIpYCjWCZbYZuz8Glyzyyg== + dependencies: + "@algolia/cache-common" "4.23.3" + +"@algolia/cache-common@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/cache-common/-/cache-common-4.23.3.tgz#3bec79092d512a96c9bfbdeec7cff4ad36367166" + integrity sha512-h9XcNI6lxYStaw32pHpB1TMm0RuxphF+Ik4o7tcQiodEdpKK+wKufY6QXtba7t3k8eseirEMVB83uFFF3Nu54A== + +"@algolia/cache-in-memory@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/cache-in-memory/-/cache-in-memory-4.23.3.tgz#3945f87cd21ffa2bec23890c85305b6b11192423" + integrity sha512-yvpbuUXg/+0rbcagxNT7un0eo3czx2Uf0y4eiR4z4SD7SiptwYTpbuS0IHxcLHG3lq22ukx1T6Kjtk/rT+mqNg== + dependencies: + "@algolia/cache-common" "4.23.3" + +"@algolia/client-account@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/client-account/-/client-account-4.23.3.tgz#8751bbf636e6741c95e7c778488dee3ee430ac6f" + integrity sha512-hpa6S5d7iQmretHHF40QGq6hz0anWEHGlULcTIT9tbUssWUriN9AUXIFQ8Ei4w9azD0hc1rUok9/DeQQobhQMA== + dependencies: + "@algolia/client-common" "4.23.3" + "@algolia/client-search" "4.23.3" + "@algolia/transporter" "4.23.3" + +"@algolia/client-analytics@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/client-analytics/-/client-analytics-4.23.3.tgz#f88710885278fe6fb6964384af59004a5a6f161d" + integrity sha512-LBsEARGS9cj8VkTAVEZphjxTjMVCci+zIIiRhpFun9jGDUlS1XmhCW7CTrnaWeIuCQS/2iPyRqSy1nXPjcBLRA== + dependencies: + "@algolia/client-common" "4.23.3" + "@algolia/client-search" "4.23.3" + "@algolia/requester-common" "4.23.3" + "@algolia/transporter" "4.23.3" + +"@algolia/client-common@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/client-common/-/client-common-4.23.3.tgz#891116aa0db75055a7ecc107649f7f0965774704" + integrity sha512-l6EiPxdAlg8CYhroqS5ybfIczsGUIAC47slLPOMDeKSVXYG1n0qGiz4RjAHLw2aD0xzh2EXZ7aRguPfz7UKDKw== + dependencies: + "@algolia/requester-common" "4.23.3" + "@algolia/transporter" "4.23.3" + +"@algolia/client-personalization@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/client-personalization/-/client-personalization-4.23.3.tgz#35fa8e5699b0295fbc400a8eb211dc711e5909db" + integrity sha512-3E3yF3Ocr1tB/xOZiuC3doHQBQ2zu2MPTYZ0d4lpfWads2WTKG7ZzmGnsHmm63RflvDeLK/UVx7j2b3QuwKQ2g== + dependencies: + "@algolia/client-common" "4.23.3" + "@algolia/requester-common" "4.23.3" + "@algolia/transporter" "4.23.3" + +"@algolia/client-search@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/client-search/-/client-search-4.23.3.tgz#a3486e6af13a231ec4ab43a915a1f318787b937f" + integrity sha512-P4VAKFHqU0wx9O+q29Q8YVuaowaZ5EM77rxfmGnkHUJggh28useXQdopokgwMeYw2XUht49WX5RcTQ40rZIabw== + dependencies: + "@algolia/client-common" "4.23.3" + "@algolia/requester-common" "4.23.3" + "@algolia/transporter" "4.23.3" + +"@algolia/logger-common@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/logger-common/-/logger-common-4.23.3.tgz#35c6d833cbf41e853a4f36ba37c6e5864920bfe9" + integrity sha512-y9kBtmJwiZ9ZZ+1Ek66P0M68mHQzKRxkW5kAAXYN/rdzgDN0d2COsViEFufxJ0pb45K4FRcfC7+33YB4BLrZ+g== + +"@algolia/logger-console@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/logger-console/-/logger-console-4.23.3.tgz#30f916781826c4db5f51fcd9a8a264a06e136985" + integrity sha512-8xoiseoWDKuCVnWP8jHthgaeobDLolh00KJAdMe9XPrWPuf1by732jSpgy2BlsLTaT9m32pHI8CRfrOqQzHv3A== + dependencies: + "@algolia/logger-common" "4.23.3" + +"@algolia/recommend@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/recommend/-/recommend-4.23.3.tgz#53d4f194d22d9c72dc05f3f7514c5878f87c5890" + integrity sha512-9fK4nXZF0bFkdcLBRDexsnGzVmu4TSYZqxdpgBW2tEyfuSSY54D4qSRkLmNkrrz4YFvdh2GM1gA8vSsnZPR73w== + dependencies: + "@algolia/cache-browser-local-storage" "4.23.3" + "@algolia/cache-common" "4.23.3" + "@algolia/cache-in-memory" "4.23.3" + "@algolia/client-common" "4.23.3" + "@algolia/client-search" "4.23.3" + "@algolia/logger-common" "4.23.3" + "@algolia/logger-console" "4.23.3" + "@algolia/requester-browser-xhr" "4.23.3" + "@algolia/requester-common" "4.23.3" + "@algolia/requester-node-http" "4.23.3" + "@algolia/transporter" "4.23.3" + +"@algolia/requester-browser-xhr@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.23.3.tgz#9e47e76f60d540acc8b27b4ebc7a80d1b41938b9" + integrity sha512-jDWGIQ96BhXbmONAQsasIpTYWslyjkiGu0Quydjlowe+ciqySpiDUrJHERIRfELE5+wFc7hc1Q5hqjGoV7yghw== + dependencies: + "@algolia/requester-common" "4.23.3" + +"@algolia/requester-common@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/requester-common/-/requester-common-4.23.3.tgz#7dbae896e41adfaaf1d1fa5f317f83a99afb04b3" + integrity sha512-xloIdr/bedtYEGcXCiF2muajyvRhwop4cMZo+K2qzNht0CMzlRkm8YsDdj5IaBhshqfgmBb3rTg4sL4/PpvLYw== + +"@algolia/requester-node-http@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/requester-node-http/-/requester-node-http-4.23.3.tgz#c9f94a5cb96a15f48cea338ab6ef16bbd0ff989f" + integrity sha512-zgu++8Uj03IWDEJM3fuNl34s746JnZOWn1Uz5taV1dFyJhVM/kTNw9Ik7YJWiUNHJQXcaD8IXD1eCb0nq/aByA== + dependencies: + "@algolia/requester-common" "4.23.3" + +"@algolia/transporter@4.23.3": + version "4.23.3" + resolved "https://registry.yarnpkg.com/@algolia/transporter/-/transporter-4.23.3.tgz#545b045b67db3850ddf0bbecbc6c84ff1f3398b7" + integrity sha512-Wjl5gttqnf/gQKJA+dafnD0Y6Yw97yvfY8R9h0dQltX1GXTgNs1zWgvtWW0tHl1EgMdhAyw189uWiZMnL3QebQ== + dependencies: + "@algolia/cache-common" "4.23.3" + "@algolia/logger-common" "4.23.3" + "@algolia/requester-common" "4.23.3" + +"@babel/parser@^7.24.4": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.4.tgz#234487a110d89ad5a3ed4a8a566c36b9453e8c88" + integrity sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg== + +"@docsearch/css@3.6.0", "@docsearch/css@^3.6.0": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@docsearch/css/-/css-3.6.0.tgz#0e9f56f704b3a34d044d15fd9962ebc1536ba4fb" + integrity sha512-+sbxb71sWre+PwDK7X2T8+bhS6clcVMLwBPznX45Qu6opJcgRjAp7gYSDzVFp187J+feSj5dNBN1mJoi6ckkUQ== + +"@docsearch/js@^3.6.0": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@docsearch/js/-/js-3.6.0.tgz#f9e46943449b9092d874944f7a80bcc071004cfb" + integrity sha512-QujhqINEElrkIfKwyyyTfbsfMAYCkylInLYMRqHy7PHc8xTBQCow73tlo/Kc7oIwBrCLf0P3YhjlOeV4v8hevQ== + dependencies: + "@docsearch/react" "3.6.0" + preact "^10.0.0" + +"@docsearch/react@3.6.0": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@docsearch/react/-/react-3.6.0.tgz#b4f25228ecb7fc473741aefac592121e86dd2958" + integrity sha512-HUFut4ztcVNmqy9gp/wxNbC7pTOHhgVVkHVGCACTuLhUKUhKAF9KYHJtMiLUJxEqiFLQiuri1fWF8zqwM/cu1w== + dependencies: + "@algolia/autocomplete-core" "1.9.3" + "@algolia/autocomplete-preset-algolia" "1.9.3" + "@docsearch/css" "3.6.0" + algoliasearch "^4.19.1" + +"@esbuild/aix-ppc64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz#a70f4ac11c6a1dfc18b8bbb13284155d933b9537" + integrity sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g== + +"@esbuild/android-arm64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz#db1c9202a5bc92ea04c7b6840f1bbe09ebf9e6b9" + integrity sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg== + +"@esbuild/android-arm@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.20.2.tgz#3b488c49aee9d491c2c8f98a909b785870d6e995" + integrity sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w== + +"@esbuild/android-x64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.20.2.tgz#3b1628029e5576249d2b2d766696e50768449f98" + integrity sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg== + +"@esbuild/darwin-arm64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz#6e8517a045ddd86ae30c6608c8475ebc0c4000bb" + integrity sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA== + +"@esbuild/darwin-x64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz#90ed098e1f9dd8a9381695b207e1cff45540a0d0" + integrity sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA== + +"@esbuild/freebsd-arm64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz#d71502d1ee89a1130327e890364666c760a2a911" + integrity sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw== + +"@esbuild/freebsd-x64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz#aa5ea58d9c1dd9af688b8b6f63ef0d3d60cea53c" + integrity sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw== + +"@esbuild/linux-arm64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz#055b63725df678379b0f6db9d0fa85463755b2e5" + integrity sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A== + +"@esbuild/linux-arm@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz#76b3b98cb1f87936fbc37f073efabad49dcd889c" + integrity sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg== + +"@esbuild/linux-ia32@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz#c0e5e787c285264e5dfc7a79f04b8b4eefdad7fa" + integrity sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig== + +"@esbuild/linux-loong64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz#a6184e62bd7cdc63e0c0448b83801001653219c5" + integrity sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ== + +"@esbuild/linux-mips64el@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz#d08e39ce86f45ef8fc88549d29c62b8acf5649aa" + integrity sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA== + +"@esbuild/linux-ppc64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz#8d252f0b7756ffd6d1cbde5ea67ff8fd20437f20" + integrity sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg== + +"@esbuild/linux-riscv64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz#19f6dcdb14409dae607f66ca1181dd4e9db81300" + integrity sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg== + +"@esbuild/linux-s390x@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz#3c830c90f1a5d7dd1473d5595ea4ebb920988685" + integrity sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ== + +"@esbuild/linux-x64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz#86eca35203afc0d9de0694c64ec0ab0a378f6fff" + integrity sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw== + +"@esbuild/netbsd-x64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz#e771c8eb0e0f6e1877ffd4220036b98aed5915e6" + integrity sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ== + +"@esbuild/openbsd-x64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz#9a795ae4b4e37e674f0f4d716f3e226dd7c39baf" + integrity sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ== + +"@esbuild/sunos-x64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz#7df23b61a497b8ac189def6e25a95673caedb03f" + integrity sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w== + +"@esbuild/win32-arm64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz#f1ae5abf9ca052ae11c1bc806fb4c0f519bacf90" + integrity sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ== + +"@esbuild/win32-ia32@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz#241fe62c34d8e8461cd708277813e1d0ba55ce23" + integrity sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ== + +"@esbuild/win32-x64@0.20.2": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz#9c907b21e30a52db959ba4f80bb01a0cc403d5cc" + integrity sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ== + +"@jridgewell/sourcemap-codec@^1.4.15": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@rollup/rollup-android-arm-eabi@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.16.4.tgz#5e8930291f1e5ead7fb1171d53ba5c87718de062" + integrity sha512-GkhjAaQ8oUTOKE4g4gsZ0u8K/IHU1+2WQSgS1TwTcYvL+sjbaQjNHFXbOJ6kgqGHIO1DfUhI/Sphi9GkRT9K+Q== + +"@rollup/rollup-android-arm64@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.16.4.tgz#ffb84f1359c04ec8a022a97110e18a5600f5f638" + integrity sha512-Bvm6D+NPbGMQOcxvS1zUl8H7DWlywSXsphAeOnVeiZLQ+0J6Is8T7SrjGTH29KtYkiY9vld8ZnpV3G2EPbom+w== + +"@rollup/rollup-darwin-arm64@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.16.4.tgz#b2fcee8d4806a0b1b9185ac038cc428ddedce9f4" + integrity sha512-i5d64MlnYBO9EkCOGe5vPR/EeDwjnKOGGdd7zKFhU5y8haKhQZTN2DgVtpODDMxUr4t2K90wTUJg7ilgND6bXw== + +"@rollup/rollup-darwin-x64@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.16.4.tgz#fcb25ccbaa3dd33a6490e9d1c64bab2e0e16b932" + integrity sha512-WZupV1+CdUYehaZqjaFTClJI72fjJEgTXdf4NbW69I9XyvdmztUExBtcI2yIIU6hJtYvtwS6pkTkHJz+k08mAQ== + +"@rollup/rollup-linux-arm-gnueabihf@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.16.4.tgz#40d46bdfe667e5eca31bf40047460e326d2e26bb" + integrity sha512-ADm/xt86JUnmAfA9mBqFcRp//RVRt1ohGOYF6yL+IFCYqOBNwy5lbEK05xTsEoJq+/tJzg8ICUtS82WinJRuIw== + +"@rollup/rollup-linux-arm-musleabihf@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.16.4.tgz#7741df2448c11c56588b50835dbfe91b1a10b375" + integrity sha512-tJfJaXPiFAG+Jn3cutp7mCs1ePltuAgRqdDZrzb1aeE3TktWWJ+g7xK9SNlaSUFw6IU4QgOxAY4rA+wZUT5Wfg== + +"@rollup/rollup-linux-arm64-gnu@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.16.4.tgz#0a23b02d2933e4c4872ad18d879890b6a4a295df" + integrity sha512-7dy1BzQkgYlUTapDTvK997cgi0Orh5Iu7JlZVBy1MBURk7/HSbHkzRnXZa19ozy+wwD8/SlpJnOOckuNZtJR9w== + +"@rollup/rollup-linux-arm64-musl@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.16.4.tgz#e37ef259358aa886cc07d782220a4fb83c1e6970" + integrity sha512-zsFwdUw5XLD1gQe0aoU2HVceI6NEW7q7m05wA46eUAyrkeNYExObfRFQcvA6zw8lfRc5BHtan3tBpo+kqEOxmg== + +"@rollup/rollup-linux-powerpc64le-gnu@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.16.4.tgz#8c69218b6de05ee2ba211664a2d2ac1e54e43f94" + integrity sha512-p8C3NnxXooRdNrdv6dBmRTddEapfESEUflpICDNKXpHvTjRRq1J82CbU5G3XfebIZyI3B0s074JHMWD36qOW6w== + +"@rollup/rollup-linux-riscv64-gnu@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.16.4.tgz#d32727dab8f538d9a4a7c03bcf58c436aecd0139" + integrity sha512-Lh/8ckoar4s4Id2foY7jNgitTOUQczwMWNYi+Mjt0eQ9LKhr6sK477REqQkmy8YHY3Ca3A2JJVdXnfb3Rrwkng== + +"@rollup/rollup-linux-s390x-gnu@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.16.4.tgz#d46097246a187d99fc9451fe8393b7155b47c5ec" + integrity sha512-1xwwn9ZCQYuqGmulGsTZoKrrn0z2fAur2ujE60QgyDpHmBbXbxLaQiEvzJWDrscRq43c8DnuHx3QorhMTZgisQ== + +"@rollup/rollup-linux-x64-gnu@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.16.4.tgz#6356c5a03a4afb1c3057490fc51b4764e109dbc7" + integrity sha512-LuOGGKAJ7dfRtxVnO1i3qWc6N9sh0Em/8aZ3CezixSTM+E9Oq3OvTsvC4sm6wWjzpsIlOCnZjdluINKESflJLA== + +"@rollup/rollup-linux-x64-musl@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.16.4.tgz#03a5831a9c0d05877b94653b5ddd3020d3c6fb06" + integrity sha512-ch86i7KkJKkLybDP2AtySFTRi5fM3KXp0PnHocHuJMdZwu7BuyIKi35BE9guMlmTpwwBTB3ljHj9IQXnTCD0vA== + +"@rollup/rollup-win32-arm64-msvc@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.16.4.tgz#6cc0db57750376b9303bdb6f5482af8974fcae35" + integrity sha512-Ma4PwyLfOWZWayfEsNQzTDBVW8PZ6TUUN1uFTBQbF2Chv/+sjenE86lpiEwj2FiviSmSZ4Ap4MaAfl1ciF4aSA== + +"@rollup/rollup-win32-ia32-msvc@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.16.4.tgz#aea0b7e492bd9ed46971cb80bc34f1eb14e07789" + integrity sha512-9m/ZDrQsdo/c06uOlP3W9G2ENRVzgzbSXmXHT4hwVaDQhYcRpi9bgBT0FTG9OhESxwK0WjQxYOSfv40cU+T69w== + +"@rollup/rollup-win32-x64-msvc@4.16.4": + version "4.16.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.16.4.tgz#c09ad9a132ccb5a67c4f211d909323ab1294f95f" + integrity sha512-YunpoOAyGLDseanENHmbFvQSfVL5BxW3k7hhy0eN4rb3gS/ct75dVD0EXOWIqFT/nE8XYW6LP6vz6ctKRi0k9A== + +"@shikijs/core@1.3.0", "@shikijs/core@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.3.0.tgz#5b93b51ddb8def1e3a1543107f9b5b0540f716f6" + integrity sha512-7fedsBfuILDTBmrYZNFI8B6ATTxhQAasUHllHmjvSZPnoq4bULWoTpHwmuQvZ8Aq03/tAa2IGo6RXqWtHdWaCA== + +"@shikijs/transformers@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@shikijs/transformers/-/transformers-1.3.0.tgz#b03c5733ef61e25e4f53666bf11889f8876f34e9" + integrity sha512-3mlpg2I9CjhjE96dEWQOGeCWoPcyTov3s4aAsHmgvnTHa8MBknEnCQy8/xivJPSpD+olqOqIEoHnLfbNJK29AA== + dependencies: + shiki "1.3.0" + +"@types/estree@1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== + +"@types/linkify-it@*": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@types/linkify-it/-/linkify-it-3.0.5.tgz#1e78a3ac2428e6d7e6c05c1665c242023a4601d8" + integrity sha512-yg6E+u0/+Zjva+buc3EIb+29XEg4wltq7cSmd4Uc2EE/1nUVmxyzpX6gUXD0V8jIrG0r7YeOGVIbYRkxeooCtw== + +"@types/markdown-it@^14.0.1": + version "14.0.1" + resolved "https://registry.yarnpkg.com/@types/markdown-it/-/markdown-it-14.0.1.tgz#3d3fdf9dba83b69edececc070d39ec72b84270a7" + integrity sha512-6WfOG3jXR78DW8L5cTYCVVGAsIFZskRHCDo5tbqa+qtKVt4oDRVH7hyIWu1SpDQJlmIoEivNQZ5h+AGAOrgOtQ== + dependencies: + "@types/linkify-it" "*" + "@types/mdurl" "*" + +"@types/mdurl@*": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/mdurl/-/mdurl-1.0.5.tgz#3e0d2db570e9fb6ccb2dc8fde0be1d79ac810d39" + integrity sha512-6L6VymKTzYSrEf4Nev4Xa1LCHKrlTlYCBMTlQKFuddo1CvQcE52I0mwfOJayueUC7MJuXOeHTcIU683lzd0cUA== + +"@types/web-bluetooth@^0.0.20": + version "0.0.20" + resolved "https://registry.yarnpkg.com/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz#f066abfcd1cbe66267cdbbf0de010d8a41b41597" + integrity sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow== + +"@vitejs/plugin-vue@^5.0.4": + version "5.0.4" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz#508d6a0f2440f86945835d903fcc0d95d1bb8a37" + integrity sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ== + +"@vue/compiler-core@3.4.24": + version "3.4.24" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.24.tgz#6b4a5ffddcd874a692f2acfa68981201bcd7096b" + integrity sha512-vbW/tgbwJYj62N/Ww99x0zhFTkZDTcGh3uwJEuadZ/nF9/xuFMC4693P9r+3sxGXISABpDKvffY5ApH9pmdd1A== + dependencies: + "@babel/parser" "^7.24.4" + "@vue/shared" "3.4.24" + entities "^4.5.0" + estree-walker "^2.0.2" + source-map-js "^1.2.0" + +"@vue/compiler-dom@3.4.24": + version "3.4.24" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.4.24.tgz#b7335a49f095b6d35e48b6f7be8da513c1fa52b8" + integrity sha512-4XgABML/4cNndVsQndG6BbGN7+EoisDwi3oXNovqL/4jdNhwvP8/rfRMTb6FxkxIxUUtg6AI1/qZvwfSjxJiWA== + dependencies: + "@vue/compiler-core" "3.4.24" + "@vue/shared" "3.4.24" + +"@vue/compiler-sfc@3.4.24": + version "3.4.24" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.4.24.tgz#2872e353147ce2a145169a33ddd4d68dc95c3a18" + integrity sha512-nRAlJUK02FTWfA2nuvNBAqsDZuERGFgxZ8sGH62XgFSvMxO2URblzulExsmj4gFZ8e+VAyDooU9oAoXfEDNxTA== + dependencies: + "@babel/parser" "^7.24.4" + "@vue/compiler-core" "3.4.24" + "@vue/compiler-dom" "3.4.24" + "@vue/compiler-ssr" "3.4.24" + "@vue/shared" "3.4.24" + estree-walker "^2.0.2" + magic-string "^0.30.10" + postcss "^8.4.38" + source-map-js "^1.2.0" + +"@vue/compiler-ssr@3.4.24": + version "3.4.24" + resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.4.24.tgz#0d11fe54dabd17cbd6393a16bf7f785da1cfab46" + integrity sha512-ZsAtr4fhaUFnVcDqwW3bYCSDwq+9Gk69q2r/7dAHDrOMw41kylaMgOP4zRnn6GIEJkQznKgrMOGPMFnLB52RbQ== + dependencies: + "@vue/compiler-dom" "3.4.24" + "@vue/shared" "3.4.24" + +"@vue/devtools-api@^7.0.27": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@vue/devtools-api/-/devtools-api-7.1.2.tgz#8808b0f008842b756bf1e9c30788837abb62ab3a" + integrity sha512-AKd49cN3BdRgttmX5Aw8op7sx6jmaPwaILcDjaa05UKc1yIHDYST7P8yGZs6zd2pKFETAQz40gmyG7+b57slsQ== + dependencies: + "@vue/devtools-kit" "^7.1.2" + +"@vue/devtools-kit@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@vue/devtools-kit/-/devtools-kit-7.1.2.tgz#dfb7306edf895dadc556dd5f0c516809c2f94826" + integrity sha512-UTrcUSOhlI9eXqbPMHUWwA6NQiiPT3onzXsVk2JHGR8ZFFSkzsWTTpHyVA1woG8zvgu2HNV/wigW2k87p858zw== + dependencies: + "@vue/devtools-shared" "^7.1.2" + hookable "^5.5.3" + mitt "^3.0.1" + perfect-debounce "^1.0.0" + speakingurl "^14.0.1" + +"@vue/devtools-shared@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@vue/devtools-shared/-/devtools-shared-7.1.2.tgz#7b1c1de10bab4756f271c377370a62833b4ee94b" + integrity sha512-r9cUf93VMhKSsxF2/cBbf6Lm1nRBx+r1pRuji5CiAf3JIPYPOjeEqJ13OuwP1fauYh1tyBFcCxt3eJPvHT59gg== + dependencies: + rfdc "^1.3.1" + +"@vue/reactivity@3.4.24": + version "3.4.24" + resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.4.24.tgz#150584316ca2acc4ed19a24f9f29863c3a17a7b2" + integrity sha512-nup3fSYg4i4LtNvu9slF/HF/0dkMQYfepUdORBcMSsankzRPzE7ypAFurpwyRBfU1i7Dn1kcwpYsE1wETSh91g== + dependencies: + "@vue/shared" "3.4.24" + +"@vue/runtime-core@3.4.24": + version "3.4.24" + resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.4.24.tgz#066c544dc59a07a96c12874a57b750c239124874" + integrity sha512-c7iMfj6cJMeAG3s5yOn9Rc5D9e2/wIuaozmGf/ICGCY3KV5H7mbTVdvEkd4ZshTq7RUZqj2k7LMJWVx+EBiY1g== + dependencies: + "@vue/reactivity" "3.4.24" + "@vue/shared" "3.4.24" + +"@vue/runtime-dom@3.4.24": + version "3.4.24" + resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.4.24.tgz#4f8e7acbe1e8ffa7c55af1366e4438729ebe9b20" + integrity sha512-uXKzuh/Emfad2Y7Qm0ABsLZZV6H3mAJ5ZVqmAOlrNQRf+T5mxpPGZBfec1hkP41t6h6FwF6RSGCs/gd8WbuySQ== + dependencies: + "@vue/runtime-core" "3.4.24" + "@vue/shared" "3.4.24" + csstype "^3.1.3" + +"@vue/server-renderer@3.4.24": + version "3.4.24" + resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.4.24.tgz#80dd546f8d6a9f5c4f8b68083fe9cc2d62299332" + integrity sha512-H+DLK4sQF6sRgzKyofmlEVBIV/9KrQU6HIV7nt6yIwSGGKvSwlV8pqJlebUKLpbXaNHugdSfAbP6YmXF69lxow== + dependencies: + "@vue/compiler-ssr" "3.4.24" + "@vue/shared" "3.4.24" + +"@vue/shared@3.4.24": + version "3.4.24" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.24.tgz#278ac71f492b392b9b17fe8fc7d324db1a8842db" + integrity sha512-BW4tajrJBM9AGAknnyEw5tO2xTmnqgup0VTnDAMcxYmqOX0RG0b9aSUGAbEKolD91tdwpA6oCwbltoJoNzpItw== + +"@vueuse/core@10.9.0", "@vueuse/core@^10.9.0": + version "10.9.0" + resolved "https://registry.yarnpkg.com/@vueuse/core/-/core-10.9.0.tgz#7d779a95cf0189de176fee63cee4ba44b3c85d64" + integrity sha512-/1vjTol8SXnx6xewDEKfS0Ra//ncg4Hb0DaZiwKf7drgfMsKFExQ+FnnENcN6efPen+1kIzhLQoGSy0eDUVOMg== + dependencies: + "@types/web-bluetooth" "^0.0.20" + "@vueuse/metadata" "10.9.0" + "@vueuse/shared" "10.9.0" + vue-demi ">=0.14.7" + +"@vueuse/integrations@^10.9.0": + version "10.9.0" + resolved "https://registry.yarnpkg.com/@vueuse/integrations/-/integrations-10.9.0.tgz#2b1a9556215ad3c1f96d39cbfbef102cf6e0ec05" + integrity sha512-acK+A01AYdWSvL4BZmCoJAcyHJ6EqhmkQEXbQLwev1MY7NBnS+hcEMx/BzVoR9zKI+UqEPMD9u6PsyAuiTRT4Q== + dependencies: + "@vueuse/core" "10.9.0" + "@vueuse/shared" "10.9.0" + vue-demi ">=0.14.7" + +"@vueuse/metadata@10.9.0": + version "10.9.0" + resolved "https://registry.yarnpkg.com/@vueuse/metadata/-/metadata-10.9.0.tgz#769a1a9db65daac15cf98084cbf7819ed3758620" + integrity sha512-iddNbg3yZM0X7qFY2sAotomgdHK7YJ6sKUvQqbvwnf7TmaVPxS4EJydcNsVejNdS8iWCtDk+fYXr7E32nyTnGA== + +"@vueuse/shared@10.9.0": + version "10.9.0" + resolved "https://registry.yarnpkg.com/@vueuse/shared/-/shared-10.9.0.tgz#13af2a348de15d07b7be2fd0c7fc9853a69d8fe0" + integrity sha512-Uud2IWncmAfJvRaFYzv5OHDli+FbOzxiVEQdLCKQKLyhz94PIyFC3CHcH7EDMwIn8NPtD06+PNbC/PiO0LGLtw== + dependencies: + vue-demi ">=0.14.7" + +algoliasearch@^4.19.1: + version "4.23.3" + resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-4.23.3.tgz#e09011d0a3b0651444916a3e6bbcba064ec44b60" + integrity sha512-Le/3YgNvjW9zxIQMRhUHuhiUjAlKY/zsdZpfq4dlLqg6mEm0nL6yk+7f2hDOtLpxsgE4jSzDmvHL7nXdBp5feg== + dependencies: + "@algolia/cache-browser-local-storage" "4.23.3" + "@algolia/cache-common" "4.23.3" + "@algolia/cache-in-memory" "4.23.3" + "@algolia/client-account" "4.23.3" + "@algolia/client-analytics" "4.23.3" + "@algolia/client-common" "4.23.3" + "@algolia/client-personalization" "4.23.3" + "@algolia/client-search" "4.23.3" + "@algolia/logger-common" "4.23.3" + "@algolia/logger-console" "4.23.3" + "@algolia/recommend" "4.23.3" + "@algolia/requester-browser-xhr" "4.23.3" + "@algolia/requester-common" "4.23.3" + "@algolia/requester-node-http" "4.23.3" + "@algolia/transporter" "4.23.3" + +csstype@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + +entities@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" + integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== + +esbuild@^0.20.1: + version "0.20.2" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.20.2.tgz#9d6b2386561766ee6b5a55196c6d766d28c87ea1" + integrity sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g== + optionalDependencies: + "@esbuild/aix-ppc64" "0.20.2" + "@esbuild/android-arm" "0.20.2" + "@esbuild/android-arm64" "0.20.2" + "@esbuild/android-x64" "0.20.2" + "@esbuild/darwin-arm64" "0.20.2" + "@esbuild/darwin-x64" "0.20.2" + "@esbuild/freebsd-arm64" "0.20.2" + "@esbuild/freebsd-x64" "0.20.2" + "@esbuild/linux-arm" "0.20.2" + "@esbuild/linux-arm64" "0.20.2" + "@esbuild/linux-ia32" "0.20.2" + "@esbuild/linux-loong64" "0.20.2" + "@esbuild/linux-mips64el" "0.20.2" + "@esbuild/linux-ppc64" "0.20.2" + "@esbuild/linux-riscv64" "0.20.2" + "@esbuild/linux-s390x" "0.20.2" + "@esbuild/linux-x64" "0.20.2" + "@esbuild/netbsd-x64" "0.20.2" + "@esbuild/openbsd-x64" "0.20.2" + "@esbuild/sunos-x64" "0.20.2" + "@esbuild/win32-arm64" "0.20.2" + "@esbuild/win32-ia32" "0.20.2" + "@esbuild/win32-x64" "0.20.2" + +estree-walker@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" + integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== + +focus-trap@^7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/focus-trap/-/focus-trap-7.5.4.tgz#6c4e342fe1dae6add9c2aa332a6e7a0bbd495ba2" + integrity sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w== + dependencies: + tabbable "^6.2.0" + +fsevents@~2.3.2, fsevents@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +hookable@^5.5.3: + version "5.5.3" + resolved "https://registry.yarnpkg.com/hookable/-/hookable-5.5.3.tgz#6cfc358984a1ef991e2518cb9ed4a778bbd3215d" + integrity sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ== + +magic-string@^0.30.10: + version "0.30.10" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.10.tgz#123d9c41a0cb5640c892b041d4cfb3bd0aa4b39e" + integrity sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ== + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.15" + +mark.js@8.11.1: + version "8.11.1" + resolved "https://registry.yarnpkg.com/mark.js/-/mark.js-8.11.1.tgz#180f1f9ebef8b0e638e4166ad52db879beb2ffc5" + integrity sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ== + +minisearch@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/minisearch/-/minisearch-6.3.0.tgz#985a2f1ca3c73c2d65af94f0616bfe57164b0b6b" + integrity sha512-ihFnidEeU8iXzcVHy74dhkxh/dn8Dc08ERl0xwoMMGqp4+LvRSCgicb+zGqWthVokQKvCSxITlh3P08OzdTYCQ== + +mitt@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/mitt/-/mitt-3.0.1.tgz#ea36cf0cc30403601ae074c8f77b7092cdab36d1" + integrity sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw== + +nanoid@^3.3.7: + version "3.3.7" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" + integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== + +perfect-debounce@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/perfect-debounce/-/perfect-debounce-1.0.0.tgz#9c2e8bc30b169cc984a58b7d5b28049839591d2a" + integrity sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +postcss@^8.4.38: + version "8.4.38" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.38.tgz#b387d533baf2054288e337066d81c6bee9db9e0e" + integrity sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A== + dependencies: + nanoid "^3.3.7" + picocolors "^1.0.0" + source-map-js "^1.2.0" + +preact@^10.0.0: + version "10.20.2" + resolved "https://registry.yarnpkg.com/preact/-/preact-10.20.2.tgz#0b343299a8c020562311cc25db93b3d832ec5e71" + integrity sha512-S1d1ernz3KQ+Y2awUxKakpfOg2CEmJmwOP+6igPx6dgr6pgDvenqYviyokWso2rhHvGtTlWWnJDa7RaPbQerTg== + +rfdc@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.1.tgz#2b6d4df52dffe8bb346992a10ea9451f24373a8f" + integrity sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg== + +rollup@^4.13.0: + version "4.16.4" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.16.4.tgz#fe328eb41293f20c9593a095ec23bdc4b5d93317" + integrity sha512-kuaTJSUbz+Wsb2ATGvEknkI12XV40vIiHmLuFlejoo7HtDok/O5eDDD0UpCVY5bBX5U5RYo8wWP83H7ZsqVEnA== + dependencies: + "@types/estree" "1.0.5" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.16.4" + "@rollup/rollup-android-arm64" "4.16.4" + "@rollup/rollup-darwin-arm64" "4.16.4" + "@rollup/rollup-darwin-x64" "4.16.4" + "@rollup/rollup-linux-arm-gnueabihf" "4.16.4" + "@rollup/rollup-linux-arm-musleabihf" "4.16.4" + "@rollup/rollup-linux-arm64-gnu" "4.16.4" + "@rollup/rollup-linux-arm64-musl" "4.16.4" + "@rollup/rollup-linux-powerpc64le-gnu" "4.16.4" + "@rollup/rollup-linux-riscv64-gnu" "4.16.4" + "@rollup/rollup-linux-s390x-gnu" "4.16.4" + "@rollup/rollup-linux-x64-gnu" "4.16.4" + "@rollup/rollup-linux-x64-musl" "4.16.4" + "@rollup/rollup-win32-arm64-msvc" "4.16.4" + "@rollup/rollup-win32-ia32-msvc" "4.16.4" + "@rollup/rollup-win32-x64-msvc" "4.16.4" + fsevents "~2.3.2" + +shiki@1.3.0, shiki@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.3.0.tgz#3eda35cb49f6f0a98525e9da48fc072e6c655a3f" + integrity sha512-9aNdQy/etMXctnPzsje1h1XIGm9YfRcSksKOGqZWXA/qP9G18/8fpz5Bjpma8bOgz3tqIpjERAd6/lLjFyzoww== + dependencies: + "@shikijs/core" "1.3.0" + +source-map-js@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" + integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== + +speakingurl@^14.0.1: + version "14.0.1" + resolved "https://registry.yarnpkg.com/speakingurl/-/speakingurl-14.0.1.tgz#f37ec8ddc4ab98e9600c1c9ec324a8c48d772a53" + integrity sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ== + +tabbable@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.2.0.tgz#732fb62bc0175cfcec257330be187dcfba1f3b97" + integrity sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew== + +vite@^5.2.10, vite@^5.2.9: + version "5.2.10" + resolved "https://registry.yarnpkg.com/vite/-/vite-5.2.10.tgz#2ac927c91e99d51b376a5c73c0e4b059705f5bd7" + integrity sha512-PAzgUZbP7msvQvqdSD+ErD5qGnSFiGOoWmV5yAKUEI0kdhjbH6nMWVyZQC/hSc4aXwc0oJ9aEdIiF9Oje0JFCw== + dependencies: + esbuild "^0.20.1" + postcss "^8.4.38" + rollup "^4.13.0" + optionalDependencies: + fsevents "~2.3.3" + +vitepress-plugin-tabs@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/vitepress-plugin-tabs/-/vitepress-plugin-tabs-0.5.0.tgz#2b193a72ed36b9fcd63e3907d3044fe7b6cf3e4e" + integrity sha512-SIhFWwGsUkTByfc2b279ray/E0Jt8vDTsM1LiHxmCOBAEMmvzIBZSuYYT1DpdDTiS3SuJieBheJkYnwCq/yD9A== + +vitepress@^1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/vitepress/-/vitepress-1.1.3.tgz#ded22392f5274680aaba8bb81dd4fb1c4741c02e" + integrity sha512-hGrIYN0w9IHWs0NQSnlMjKV/v/HLfD+Ywv5QdvCSkiT32mpNOOwUrZjnqZv/JL/WBPpUc94eghTUvmipxw0xrA== + dependencies: + "@docsearch/css" "^3.6.0" + "@docsearch/js" "^3.6.0" + "@shikijs/core" "^1.3.0" + "@shikijs/transformers" "^1.3.0" + "@types/markdown-it" "^14.0.1" + "@vitejs/plugin-vue" "^5.0.4" + "@vue/devtools-api" "^7.0.27" + "@vueuse/core" "^10.9.0" + "@vueuse/integrations" "^10.9.0" + focus-trap "^7.5.4" + mark.js "8.11.1" + minisearch "^6.3.0" + shiki "^1.3.0" + vite "^5.2.9" + vue "^3.4.23" + +vue-demi@>=0.14.7: + version "0.14.7" + resolved "https://registry.yarnpkg.com/vue-demi/-/vue-demi-0.14.7.tgz#8317536b3ef74c5b09f268f7782e70194567d8f2" + integrity sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA== + +vue@^3.4.23, vue@^3.4.24: + version "3.4.24" + resolved "https://registry.yarnpkg.com/vue/-/vue-3.4.24.tgz#f269549939a6c092480f018aa0bd886ba64f4c6f" + integrity sha512-NPdx7dLGyHmKHGRRU5bMRYVE+rechR+KDU5R2tSTNG36PuMwbfAJ+amEvOAw7BPfZp5sQulNELSLm5YUkau+Sg== + dependencies: + "@vue/compiler-dom" "3.4.24" + "@vue/compiler-sfc" "3.4.24" + "@vue/runtime-dom" "3.4.24" + "@vue/server-renderer" "3.4.24" + "@vue/shared" "3.4.24" diff --git a/docs/.nojekyll b/docs/.nojekyll deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/docs/CNAME b/docs/CNAME deleted file mode 100644 index e089843e0bc..00000000000 --- a/docs/CNAME +++ /dev/null @@ -1 +0,0 @@ -docs.qmk.fm \ No newline at end of file diff --git a/docs/ChangeLog/20190830.md b/docs/ChangeLog/20190830.md index 298ec958c52..d6895216e9c 100644 --- a/docs/ChangeLog/20190830.md +++ b/docs/ChangeLog/20190830.md @@ -20,7 +20,7 @@ This document marks the inaugural Breaking Change merge. A list of changes follo * `fn_actions` is deprecated, and its functionality has been superseded by direct keycodes and `process_record_user()` * The end result of removing this obsolete feature should result in a decent reduction in firmware size and code complexity -* All keymaps affected are recommended to switch away from `fn_actions` in favour of the [custom keycode](https://docs.qmk.fm/#/custom_quantum_functions) and [macro](https://docs.qmk.fm/#/feature_macros) features +* All keymaps affected are recommended to switch away from `fn_actions` in favour of the [custom keycode](../custom_quantum_functions) and [macro](../feature_macros) features ## Update Atreus to current code conventions @@ -43,7 +43,7 @@ This document marks the inaugural Breaking Change merge. A list of changes follo * `fn_actions` is deprecated, and its functionality has been superseded by direct keycodes and `process_record_user()` * All keymaps using these actions have had the relevant `KC_FN*` keys replaced with the equivalent `BL_*` keys -* If you currently use `KC_FN*` you will need to replace `fn_actions` with the [custom keycode](https://docs.qmk.fm/#/custom_quantum_functions) and [macro](https://docs.qmk.fm/#/feature_macros) features +* If you currently use `KC_FN*` you will need to replace `fn_actions` with the [custom keycode](../custom_quantum_functions) and [macro](../feature_macros) features ## Remove `KC_DELT` alias in favor of `KC_DEL` diff --git a/docs/ChangeLog/20200229.md b/docs/ChangeLog/20200229.md index 398fe01c0d0..02bca3e3716 100644 --- a/docs/ChangeLog/20200229.md +++ b/docs/ChangeLog/20200229.md @@ -51,7 +51,7 @@ Four times a year QMK runs a process for merging Breaking Changes. A Breaking Ch * `fn_actions` is deprecated, and its functionality has been superseded by direct keycodes and `process_record_user()` * The end result of removing this obsolete feature should result in a decent reduction in firmware size and code complexity -* All keymaps affected are recommended to switch away from `fn_actions` in favour of the [custom keycode](https://docs.qmk.fm/#/custom_quantum_functions) and [macro](https://docs.qmk.fm/#/feature_macros) features +* All keymaps affected are recommended to switch away from `fn_actions` in favour of the [custom keycode](../custom_quantum_functions) and [macro](../feature_macros) features ## Moving backlight keycode handling to `process_keycode/` diff --git a/docs/ChangeLog/20200829.md b/docs/ChangeLog/20200829.md index c6abed5b302..66957211f85 100644 --- a/docs/ChangeLog/20200829.md +++ b/docs/ChangeLog/20200829.md @@ -3,9 +3,9 @@ Four times a year QMK runs a process for merging Breaking Changes. A Breaking Change is any change which modifies how QMK behaves in a way that is incompatible or potentially dangerous. We limit these changes to 4 times per year so that users can have confidence that updating their QMK tree will not break their keymaps. -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### Relocated Keyboards :id=relocated-keyboards +### Relocated Keyboards {#relocated-keyboards} #### The Key Company project consolidation ([#9547](https://github.com/qmk/qmk_firmware/pull/9547)) #### relocating boards by flehrad to flehrad/ folder ([#9635](https://github.com/qmk/qmk_firmware/pull/9635)) @@ -24,7 +24,7 @@ handwired/numbrero | flehrad/numbrero snagpad | flehrad/snagpad handwired/tradestation | flehrad/tradestation -### Updated Keyboard Codebases :id=keyboard-updates +### Updated Keyboard Codebases {#keyboard-updates} #### Keebio RGB wiring update ([#7754](https://github.com/qmk/qmk_firmware/pull/7754)) @@ -46,7 +46,7 @@ This change affects: * Quefrency rev1 * Viterbi, revs. 1 and 2 -### Changes to Core Functionality :id=core-updates +### Changes to Core Functionality {#core-updates} * Bigger Combo index ([#9318](https://github.com/qmk/qmk_firmware/pull/9318)) @@ -58,14 +58,14 @@ Any fork that uses `process_combo_event` needs to update the function's first ar * New function: `void process_combo_event(uint16_t combo_index, bool pressed)` -## Core Changes :id=core-changes +## Core Changes {#core-changes} -### Fixes :id=core-fixes +### Fixes {#core-fixes} * Mousekeys: scrolling acceleration is no longer coupled to mouse movement acceleration ([#9174](https://github.com/qmk/qmk_firmware/pull/9174)) * Keymap Extras: correctly assign Question Mark in Czech layout ([#9987](https://github.com/qmk/qmk_firmware/pull/9987)) -### Additions and Enhancements :id=core-additions +### Additions and Enhancements {#core-additions} * allow for WS2812 PWM to work on DMAMUX-capable devices ([#9471](https://github.com/qmk/qmk_firmware/pull/9471)) * Newer STM32 MCUs have a DMAMUX peripheral, which allows mapping of DMAs to different DMA streams, rather than hard-defining the target streams in silicon. @@ -109,7 +109,7 @@ Any fork that uses `process_combo_event` needs to update the function's first ar * The K-Type has been refactored to use QMK's native matrix scanning routine, and now has partial support for the RGB Matrix feature. * Joysticks can now be used without defining analog pins ([#10169](https://github.com/qmk/qmk_firmware/pull/10169)) -### Clean-ups and Optimizations :id=core-optimizations +### Clean-ups and Optimizations {#core-optimizations} * iWRAP protocol removed ([#9284](https://github.com/qmk/qmk_firmware/pull/9284)) * work begun for consolidation of ChibiOS platform files ([#8327](https://github.com/qmk/qmk_firmware/pull/8327) and [#9315](https://github.com/qmk/qmk_firmware/pull/9315)) @@ -140,7 +140,7 @@ Any fork that uses `process_combo_event` needs to update the function's first ar * remove support for Adafruit EZ Key Bluetooth controller ([#10103](https://github.com/qmk/qmk_firmware/pull/10103)) -## QMK Infrastructure and Internals :id=qmk-internals +## QMK Infrastructure and Internals {#qmk-internals} * Attempt to fix CI for non-master branches. ([#9308](https://github.com/qmk/qmk_firmware/pull/9308)) * Actually fetch the branch we're attempting to compare against. diff --git a/docs/ChangeLog/20201128.md b/docs/ChangeLog/20201128.md index 44413202953..d005d3b56b6 100644 --- a/docs/ChangeLog/20201128.md +++ b/docs/ChangeLog/20201128.md @@ -3,9 +3,9 @@ Four times a year QMK runs a process for merging Breaking Changes. A Breaking Change is any change which modifies how QMK behaves in a way that is incompatible or potentially dangerous. We limit these changes to 4 times per year so that users can have confidence that updating their QMK tree will not break their keymaps. -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### Relocated Keyboards :id=relocated-keyboards +### Relocated Keyboards {#relocated-keyboards} #### Reduce Helix keyboard build variation ([#8669](https://github.com/qmk/qmk_firmware/pull/8669)) @@ -88,21 +88,21 @@ The Valor and Dawn60 keyboards by Xelus22 both now require their revisions to be | xelus/valor | xelus/valor/rev1 | -### Updated Keyboard Codebases :id=keyboard-updates +### Updated Keyboard Codebases {#keyboard-updates} #### AEboards EXT65 Refactor ([#10820](https://github.com/qmk/qmk_firmware/pull/10820)) The EXT65 codebase has been reworked so keymaps can be used with either revision. -## Core Changes :id=core-changes +## Core Changes {#core-changes} -### Fixes :id=core-fixes +### Fixes {#core-fixes} * Reconnect the USB if users wake up a computer from the keyboard to restore the USB state ([#10088](https://github.com/qmk/qmk_firmware/pull/10088)) * Fix cursor position bug in oled_write_raw functions ([#10800](https://github.com/qmk/qmk_firmware/pull/10800)) -### Additions and Enhancements :id=core-additions +### Additions and Enhancements {#core-additions} * Allow MATRIX_ROWS to be greater than 32 ([#10183](https://github.com/qmk/qmk_firmware/pull/10183)) * Add support for soft serial to ATmega32U2 ([#10204](https://github.com/qmk/qmk_firmware/pull/10204)) @@ -119,7 +119,7 @@ The EXT65 codebase has been reworked so keymaps can be used with either revision * Add AT90USB support for serial.c ([#10706](https://github.com/qmk/qmk_firmware/pull/10706)) * Auto shift: support repeats and early registration (#9826) -### Clean-ups and Optimizations :id=core-optimizations +### Clean-ups and Optimizations {#core-optimizations} * Haptic and solenoid cleanup ([#9700](https://github.com/qmk/qmk_firmware/pull/9700)) * XD75 cleanup ([#10524](https://github.com/qmk/qmk_firmware/pull/10524)) @@ -129,7 +129,7 @@ The EXT65 codebase has been reworked so keymaps can be used with either revision * Remove references to HD44780 ([#10735](https://github.com/qmk/qmk_firmware/pull/10735)) -## QMK Infrastructure and Internals :id=qmk-internals +## QMK Infrastructure and Internals {#qmk-internals} * Add ability to build a subset of all keyboards based on platform. ([#10420](https://github.com/qmk/qmk_firmware/pull/10420)) * Initialise EEPROM drivers at startup, instead of upon first execution ([#10438](https://github.com/qmk/qmk_firmware/pull/10438)) diff --git a/docs/ChangeLog/20210529.md b/docs/ChangeLog/20210529.md index 2feeed64376..69923b0c5ab 100644 --- a/docs/ChangeLog/20210529.md +++ b/docs/ChangeLog/20210529.md @@ -1,30 +1,30 @@ # QMK Breaking Changes - 2021 May 29 Changelog -## Notable Changes :id=notable-changes +## Notable Changes {#notable-changes} -### RGB Matrix support for split common ([#11055](https://github.com/qmk/qmk_firmware/pull/11055)) :id=rgb-matrix-split-common +### RGB Matrix support for split common ([#11055](https://github.com/qmk/qmk_firmware/pull/11055)) {#rgb-matrix-split-common} Split boards can now use RGB Matrix without defining a custom matrix. -### Teensy 3.6 support ([#12258](https://github.com/qmk/qmk_firmware/pull/12258)) :id=teensy-3-6-support +### Teensy 3.6 support ([#12258](https://github.com/qmk/qmk_firmware/pull/12258)) {#teensy-3-6-support} Added support for MK66F18 (Teensy 3.6) microcontroller. -### New command: qmk console ([#12828](https://github.com/qmk/qmk_firmware/pull/12828)) :id=new-command-qmk-console +### New command: qmk console ([#12828](https://github.com/qmk/qmk_firmware/pull/12828)) {#new-command-qmk-console} A new `qmk console` command has been added for attaching to your keyboard's console. It operates similiarly to QMK Toolbox by allowing you to connect to one or more keyboard consoles to display debugging messages. -### Improved command: qmk config :id=improve-command-qmk-config +### Improved command: qmk config {#improve-command-qmk-config} We've updated the `qmk config` command to show only the configuration items you have actually set. You can now display (almost) all of the available configuration options, along with their default values, using `qmk config -a`. -### LED Matrix Improvements ([#12509](https://github.com/qmk/qmk_firmware/pull/12509), [#12580](https://github.com/qmk/qmk_firmware/pull/12580), [#12588](https://github.com/qmk/qmk_firmware/pull/12588), [#12633](https://github.com/qmk/qmk_firmware/pull/12633), [#12651](https://github.com/qmk/qmk_firmware/pull/12651), [#12685](https://github.com/qmk/qmk_firmware/pull/12685)) :id=led-matrix-improvements +### LED Matrix Improvements ([#12509](https://github.com/qmk/qmk_firmware/pull/12509), [#12580](https://github.com/qmk/qmk_firmware/pull/12580), [#12588](https://github.com/qmk/qmk_firmware/pull/12588), [#12633](https://github.com/qmk/qmk_firmware/pull/12633), [#12651](https://github.com/qmk/qmk_firmware/pull/12651), [#12685](https://github.com/qmk/qmk_firmware/pull/12685)) {#led-matrix-improvements} LED Matrix has been improved with effects, CIE1931 curves, and a task system. -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} * Durgod keyboard refactor in preparation for adding additional durgod keyboards ([#11978](https://github.com/qmk/qmk_firmware/pull/11978)) * Updated Function96 with V2 files and removed chconf.h and halconf.h ([#12613](https://github.com/qmk/qmk_firmware/pull/12613)) @@ -52,7 +52,7 @@ The codebase for the [Durgod K320](https://github.com/qmk/qmk_firmware/tree/0.13 Additionally, the `crkbd/rev1/legacy` keyboard has been removed. -### Bootmagic Deprecation and Refactor ([#12172](https://github.com/qmk/qmk_firmware/pull/12172)) :id=bootmagic-deprecation-and-refactor +### Bootmagic Deprecation and Refactor ([#12172](https://github.com/qmk/qmk_firmware/pull/12172)) {#bootmagic-deprecation-and-refactor} QMK has decided to deprecate the full Bootmagic feature and leave Bootmagic Lite as the only remaining option. @@ -68,11 +68,11 @@ This is the current planned roadmap for the behavior of `BOOTMAGIC_ENABLE`: - From 2021 Aug 28, `BOOTMAGIC_ENABLE` must be either `yes`, `lite`, or `no` – setting `BOOTMAGIC_ENABLE = full` will cause compilation to fail. - From 2021 Nov 27, `BOOTMAGIC_ENABLE` must be either `yes` or `no` – setting `BOOTMAGIC_ENABLE = lite` will cause compilation to fail. -### Removal of LAYOUT_kc ([#12160](https://github.com/qmk/qmk_firmware/pull/12160)) :id=removal-of-layout-kc +### Removal of LAYOUT_kc ([#12160](https://github.com/qmk/qmk_firmware/pull/12160)) {#removal-of-layout-kc} We've removed support for `LAYOUT_kc` macros, if your keymap uses one you will need to update it use a regular `LAYOUT` macro. -### Encoder callbacks are now boolean ([#12805](https://github.com/qmk/qmk_firmware/pull/12805), [#12985](https://github.com/qmk/qmk_firmware/pull/12985)) :id=encoder-callback-boolean +### Encoder callbacks are now boolean ([#12805](https://github.com/qmk/qmk_firmware/pull/12805), [#12985](https://github.com/qmk/qmk_firmware/pull/12985)) {#encoder-callback-boolean} To allow for keyboards to override (or not) keymap level code the `encoder_update_kb` function has been changed from `void` to `bool`. You will need to update your function definition to reflect this and ensure that you return a `true` or `false` value. @@ -127,9 +127,9 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } ``` -## Core Changes :id=core-changes +## Core Changes {#core-changes} -### Fixes :id=core-fixes +### Fixes {#core-fixes} * Fix connection issue in split keyboards when slave and OLED display are connected via I2C (fixes #9335) ([#11487](https://github.com/qmk/qmk_firmware/pull/11487)) * Terrazzo: Fix wrong LED Matrix function names ([#12561](https://github.com/qmk/qmk_firmware/pull/12561)) @@ -147,7 +147,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) { * [Keyboard] Fix Terrazzo build failure ([#12977](https://github.com/qmk/qmk_firmware/pull/12977)) * Do not hard set config in CPTC files ([#11864](https://github.com/qmk/qmk_firmware/pull/11864)) -### Additions and Enhancements :id=core-additions +### Additions and Enhancements {#core-additions} * ARM - Refactor SLEEP_LED to support more platforms ([#8403](https://github.com/qmk/qmk_firmware/pull/8403)) * Add ability to toggle One Shot functionality ([#4198](https://github.com/qmk/qmk_firmware/pull/4198)) @@ -193,7 +193,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) { * Backlight: add defines for default level and breathing state ([#12560](https://github.com/qmk/qmk_firmware/pull/12560), [#13024](https://github.com/qmk/qmk_firmware/pull/13024)) * Add dire message about LUFA mass storage bootloader ([#13014](https://github.com/qmk/qmk_firmware/pull/13014)) -### Clean-ups and Optimizations :id=core-optimizations +### Clean-ups and Optimizations {#core-optimizations} * Overhaul bootmagic logic to have single entrypoint ([#8532](https://github.com/qmk/qmk_firmware/pull/8532)) * Refactor of USB code within split_common ([#11890](https://github.com/qmk/qmk_firmware/pull/11890)) @@ -218,7 +218,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) { * Deprecate `send_unicode_hex_string()` ([#12602](https://github.com/qmk/qmk_firmware/pull/12602)) * [Keyboard] Remove redundant legacy and common headers for crkbd ([#13023](https://github.com/qmk/qmk_firmware/pull/13023)) -### QMK Infrastructure and Internals :id=qmk-internals +### QMK Infrastructure and Internals {#qmk-internals} * trivial change to trigger api update ([`b15288fb87`](https://github.com/qmk/qmk_firmware/commit/b15288fb87)) * fix some references to bin/qmk that slipped in ([#12832](https://github.com/qmk/qmk_firmware/pull/12832)) diff --git a/docs/ChangeLog/20210828.md b/docs/ChangeLog/20210828.md index f96283e6ad4..f84169cc947 100644 --- a/docs/ChangeLog/20210828.md +++ b/docs/ChangeLog/20210828.md @@ -1,28 +1,28 @@ # QMK Breaking Changes - 2021 August 28 Changelog -## Notable Features :id=notable-features +## Notable Features {#notable-features} -### Combo processing improvements ([#8591](https://github.com/qmk/qmk_firmware/pull/8591)) :id=combo-processing-improvements +### Combo processing improvements ([#8591](https://github.com/qmk/qmk_firmware/pull/8591)) {#combo-processing-improvements} Combo processing has been reordered with respect to keypress handling, allowing for much better compatibility with mod taps. It is also now possible to define combos that have keys overlapping with other combos, triggering only one. For example, a combo of `A`, `B` can coexist with a longer combo of `A`, `B`, `C` -- previous functionality would trigger both combos if all three keys were pressed. -### Key Overrides ([#11422](https://github.com/qmk/qmk_firmware/pull/11422)) :id=key-overrides +### Key Overrides ([#11422](https://github.com/qmk/qmk_firmware/pull/11422)) {#key-overrides} -QMK now has a new feature: [key overrides](https://docs.qmk.fm/#/feature_key_overrides). This feature allows for overriding the output of key combinations involving modifiers. As an example, pressing Shift+2 normally results in an @ on US-ANSI keyboard layouts -- the new key overrides allow for adding similar functionality, but for any modifier + key press. +QMK now has a new feature: [key overrides](../feature_key_overrides). This feature allows for overriding the output of key combinations involving modifiers. As an example, pressing Shift+2 normally results in an @ on US-ANSI keyboard layouts -- the new key overrides allow for adding similar functionality, but for any modifier + key press. To illustrate, it's now possible to use the key overrides feature to translate Shift + Backspace into Delete -- an often-requested example of where this functionality comes in handy. -There's far more to describe that what lives in this changelog, so head over to the [key overrides documentation](https://docs.qmk.fm/#/feature_key_overrides) for more examples and info. +There's far more to describe that what lives in this changelog, so head over to the [key overrides documentation](../feature_key_overrides) for more examples and info. ### Digitizer support ([#12851](https://github.com/qmk/qmk_firmware/pull/12851)) QMK gained the ability to pretend to be a digitizer device -- much like a tablet device. A mouse uses delta-coordinates -- move up, move right -- but a digitizer works with absolute coordinates -- top left, bottom right. -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} The following keyboards have had their source moved within QMK: @@ -69,7 +69,7 @@ xd84pro | xiudi/xd84pro xd87 | xiudi/xd87 xd96 | xiudi/xd96 -### Bootmagic Full Removal ([#13846](https://github.com/qmk/qmk_firmware/pull/13846)) :id=bootmagic-full-removal +### Bootmagic Full Removal ([#13846](https://github.com/qmk/qmk_firmware/pull/13846)) {#bootmagic-full-removal} As noted during last breaking changes cycle, QMK has decided to deprecate the full Bootmagic feature and leave Bootmagic Lite as the only remaining option. @@ -85,7 +85,7 @@ This is the current roadmap for the behavior of `BOOTMAGIC_ENABLE`: - (now) From 2021 Aug 28, `BOOTMAGIC_ENABLE` must be either `yes`, `lite`, or `no` – setting `BOOTMAGIC_ENABLE = full` will cause compilation to fail. - (next) From 2021 Nov 27, `BOOTMAGIC_ENABLE` must be either `yes` or `no` – setting `BOOTMAGIC_ENABLE = lite` will cause compilation to fail. -### DIP switch callbacks are now boolean ([#13399](https://github.com/qmk/qmk_firmware/pull/13399)) :id=dip-switch-boolean +### DIP switch callbacks are now boolean ([#13399](https://github.com/qmk/qmk_firmware/pull/13399)) {#dip-switch-boolean} To match the encoder change last breaking changes cycle, DIP switch callbacks now return `bool`, too. @@ -149,9 +149,9 @@ bool dip_switch_update_mask_user(uint32_t state) { } ``` -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} -### Split transport improvements :id=split-transport-improvements +### Split transport improvements {#split-transport-improvements} Split keyboards gained a significant amount of improvements during this breaking changes cycle, specifically: @@ -160,9 +160,11 @@ Split keyboards gained a significant amount of improvements during this breaking * Make solo half of split keyboards (more) usable. ([#13523](https://github.com/qmk/qmk_firmware/pull/13523)) -- allows the slave to be disconnected, enabling one-handed use. * Switch split_common to CRC subsystem ([#13418](https://github.com/qmk/qmk_firmware/pull/13418)) -!> If you're updating your split keyboard, you will need to flash both sides of the split with the your firmware. +::: warning +If you're updating your split keyboard, you will need to flash both sides of the split with the your firmware. +::: -### Teensy 4.x support ([#13056](https://github.com/qmk/qmk_firmware/pull/13056), [#13076](https://github.com/qmk/qmk_firmware/pull/13076), [#13077](https://github.com/qmk/qmk_firmware/pull/13077)) :id=teensy-4-x-support +### Teensy 4.x support ([#13056](https://github.com/qmk/qmk_firmware/pull/13056), [#13076](https://github.com/qmk/qmk_firmware/pull/13076), [#13077](https://github.com/qmk/qmk_firmware/pull/13077)) {#teensy-4-x-support} Updated ChibiOS and ChibiOS-Contrib, which brought in support for Teensy 4.x dev boards, running NXP i.MX1062. @@ -243,7 +245,7 @@ We've added dozens of new keys to `info.json` so that you can configure more tha * `usb.force_nkro`, `usb.max_power`, `usb.no_startup_check`, `usb.polling_interval`, `usb.shared_endpoint.keyboard`, `usb.shared_endpoint.mouse`, `usb.suspend_wakeup_delay`, `usb.wait_for` * `qmk.keys_per_scan`, `qmk.tap_keycode_delay`, `qmk.tap_capslock_delay` -### Codebase restructure and cleanup :id=codebase-restructure +### Codebase restructure and cleanup {#codebase-restructure} QMK was originally based on TMK, and has grown in size considerably since its first inception. To keep moving things forward, restructure of some of the core areas of the code is needed to support new concepts and new hardware, and progress is happening along those lines: diff --git a/docs/ChangeLog/20211127.md b/docs/ChangeLog/20211127.md index 0780ab6a44c..d810be505a4 100644 --- a/docs/ChangeLog/20211127.md +++ b/docs/ChangeLog/20211127.md @@ -1,6 +1,6 @@ # QMK Breaking Changes - 2021 November 27 Changelog -## 2000 keyboards! :id=qmk-2000th-keyboard +## 2000 keyboards! {#qmk-2000th-keyboard} QMK had it's 2000th keyboard submitted during this breaking changes cycle.... and it only _just_ made the cut-off! @@ -11,9 +11,9 @@ QMK had it's 2000th keyboard submitted during this breaking changes cycle.... an From the whole QMK team, a major thankyou to the community for embracing QMK as your preferred keyboard firmware! -## Notable Features :id=notable-features +## Notable Features {#notable-features} -### Expanded Pointing Device support ([#14343](https://github.com/qmk/qmk_firmware/pull/14343)) :id=expanded-pointing-device +### Expanded Pointing Device support ([#14343](https://github.com/qmk/qmk_firmware/pull/14343)) {#expanded-pointing-device} Pointing device support has been reworked and reimplemented to allow for easier integration of new peripherals. @@ -31,9 +31,9 @@ QMK now has core-supplied support for the following pointing device peripherals: | `POINTING_DEVICE_DRIVER = pimoroni_trackball` | Pimoroni Trackball | | `POINTING_DEVICE_DRIVER = pmw3360` | PMW 3360 | -See the new documentation for the [Pointing Device](../feature_pointing_device.md) feature for more information on specific configuration for each driver. +See the new documentation for the [Pointing Device](../feature_pointing_device) feature for more information on specific configuration for each driver. -### Dynamic Tapping Term ([#11036](https://github.com/qmk/qmk_firmware/pull/11036)) :id=dynamic-tapping-term +### Dynamic Tapping Term ([#11036](https://github.com/qmk/qmk_firmware/pull/11036)) {#dynamic-tapping-term} For people who are starting out with tapping keys, or for people who think tapping keys don't "feel right", it's sometimes quite difficult to determine what duration of tapping term to use to make things seem natural. @@ -47,9 +47,9 @@ If you're in this stage of discovery, you can now add `DYNAMIC_TAPPING_TERM_ENAB Coupled with the use of `qmk console` or QMK Toolbox to show console output from your keyboard, you can tweak the tapping term dynamically in order to narrow down what "feels right" to you. Once you're happy, drop in the resulting number into your keymap's `config.h` and you're good to go! -### Macros in JSON keymaps ([#14374](https://github.com/qmk/qmk_firmware/pull/14374)) :id=macros-in-keymap-json +### Macros in JSON keymaps ([#14374](https://github.com/qmk/qmk_firmware/pull/14374)) {#macros-in-keymap-json} -You can now define up to 32 macros in your `keymap.json` file, as used by [QMK Configurator](newbs_building_firmware_configurator.md), and `qmk compile`. You can define these macros in a list under the `macros` keyword, like this: +You can now define up to 32 macros in your `keymap.json` file, as used by [QMK Configurator](../newbs_building_firmware_configurator), and `qmk compile`. You can define these macros in a list under the `macros` keyword, like this: ```json { @@ -83,9 +83,9 @@ You can now define up to 32 macros in your `keymap.json` file, as used by [QMK C In due course, [QMK Configurator](https://config.qmk.fm/) will pick up support for defining these in its UI, but for now the json is the only way to define macros. -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} The following keyboards have had their source moved within QMK: @@ -104,21 +104,21 @@ The following keyboards have had their source moved within QMK: | signum/3_0/elitec | signum/3_0 | | tgr/jane | tgr/jane/v2 | -### Squeezing space out of AVR ([#15243](https://github.com/qmk/qmk_firmware/pull/15243)) :id=squeezing-space-from-avr +### Squeezing space out of AVR ([#15243](https://github.com/qmk/qmk_firmware/pull/15243)) {#squeezing-space-from-avr} The AVR platform has been problematic for some time, in the sense that it is severely resource-constrained -- this makes life difficult for anyone attempting to add new functionality such as display panels to their keymap code. The illustrious Drashna has contributed some newer documentation on how to attempt to free up some space on AVR-based keyboards that are in short supply. Of course, there are much fewer constraints with ARM chips... ;) -### Require explicit enabling of RGB Matrix modes ([#15018](https://github.com/qmk/qmk_firmware/pull/15018)) :id=explicit-rgb-modes +### Require explicit enabling of RGB Matrix modes ([#15018](https://github.com/qmk/qmk_firmware/pull/15018)) {#explicit-rgb-modes} Related to the previous section -- RGB Matrix modes have now been made to be opt-in, rather than opt-out. As these animations are now opt-in, you may find that your keyboard no longer has all the RGB modes you're expecting -- you may need to configure and recompile your firmware and enable your animations of choice... with any luck they'll still fit in the space available. Most keyboards keep their original functionality, but over time the QMK maintainers have found that removal of animations ends up being the quickest way to free up space... and some keyboards have had animations such as reactive effects disabled by default in order to still fit within the flash space available. -The full list of configurables to turn specific animations back on can be found at on the [RGB Matrix documentation](feature_rgb_matrix.md#rgb-matrix-effects) page. +The full list of configurables to turn specific animations back on can be found at on the [RGB Matrix documentation](../feature_rgb_matrix#rgb-matrix-effects) page. -### OLED task refactoring ([#14864](https://github.com/qmk/qmk_firmware/pull/14864)) :id=oled-task-refactor +### OLED task refactoring ([#14864](https://github.com/qmk/qmk_firmware/pull/14864)) {#oled-task-refactor} OLED display code was traditionally difficult to override in keymaps as they did not follow the standard pattern of `bool *_kb()` deferring to `bool *_user()` functions, allowing signalling to the higher level that processing had already been done. @@ -152,7 +152,7 @@ bool oled_task_kb(void) { } ``` -### Bootmagic Full Removal ([#15002](https://github.com/qmk/qmk_firmware/pull/15002)) :id=bootmagic-full-removal +### Bootmagic Full Removal ([#15002](https://github.com/qmk/qmk_firmware/pull/15002)) {#bootmagic-full-removal} As noted during previous breaking changes cycles, QMK decided to deprecate the full Bootmagic feature and leave Bootmagic Lite as the only remaining option. @@ -170,13 +170,13 @@ This is the historical timeline for the behavior of `BOOTMAGIC_ENABLE`: - (done) From 2021 Aug 28, `BOOTMAGIC_ENABLE` must be either `yes`, `lite`, or `no` – setting `BOOTMAGIC_ENABLE = full` will cause compilation to fail. - (now) From 2021 Nov 27, `BOOTMAGIC_ENABLE` must be either `yes` or `no` – setting `BOOTMAGIC_ENABLE = lite` will cause compilation to fail. -### Remove QWIIC_DRIVERS ([#14174](https://github.com/qmk/qmk_firmware/pull/14174)) :id=remove-qwiic +### Remove QWIIC_DRIVERS ([#14174](https://github.com/qmk/qmk_firmware/pull/14174)) {#remove-qwiic} Due to minimal QWIIC adoption and other options for similar functionality, the QWIIC drivers were removed from QMK. Existing OLED usages have been migrated across to the normal QMK OLED driver instead. -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} -### New MCU Support :id=new-mcu-support +### New MCU Support {#new-mcu-support} QMK firmware picked up support for a handful of new MCU families, potentially making it a bit easier to source components. @@ -187,7 +187,7 @@ QMK firmware is now no longer limited to AVR and ARM - it also picked up support * Westberrytech pr ([#14422](https://github.com/qmk/qmk_firmware/pull/14422)) * Initial pass of F405 support ([#14584](https://github.com/qmk/qmk_firmware/pull/14584)) -### EEPROM Changes :id=eeprom-changes +### EEPROM Changes {#eeprom-changes} There were a few EEPROM-related changes that landed during this breaking changes cycle, most prominently the long-awaited ability for the Drop boards to gain persistent storage. Any users of the Drop CTRL or Drop ALT should update QMK Toolbox as well -- coupled with a QMK firmware update settings should now be saved. @@ -197,7 +197,7 @@ There were a few EEPROM-related changes that landed during this breaking changes * Further tidy up of STM32 eeprom emulation ([#14591](https://github.com/qmk/qmk_firmware/pull/14591)) * Enable eeprom with F401xE ld ([#14752](https://github.com/qmk/qmk_firmware/pull/14752)) -### Compilation Database :id=compile-commands +### Compilation Database {#compile-commands} A clang-compatible compilation database generator has been added as an option in order to help development environments such as Visual Studio Code. @@ -208,7 +208,7 @@ Do note that switching keyboards will require re-generation of this file. * New CLI subcommand to create clang-compatible compilation database (`compile_commands.json`) ([#14370](https://github.com/qmk/qmk_firmware/pull/14370)) * compiledb: query include paths from gcc directly. ([#14462](https://github.com/qmk/qmk_firmware/pull/14462)) -### Codebase restructure and cleanup :id=codebase-restructure +### Codebase restructure and cleanup {#codebase-restructure} QMK continues on its restructuring journey, in order to make it easier to integrate newer features and add support for new hardware. This quarter's batch of changes include: diff --git a/docs/ChangeLog/20220226.md b/docs/ChangeLog/20220226.md index a469612fe8b..f0cbbc0603e 100644 --- a/docs/ChangeLog/20220226.md +++ b/docs/ChangeLog/20220226.md @@ -1,6 +1,6 @@ # QMK Breaking Changes - 2022 February 26 Changelog -## Notable Features :id=notable-features +## Notable Features {#notable-features} ### Default USB Polling rate now 1kHz ([#15352](https://github.com/qmk/qmk_firmware/pull/15352)) @@ -12,13 +12,13 @@ Something something *Lets go gamers!* Pointing devices can now be shared across a split keyboard with support for a single pointing device or a pointing device on each side. -See the [Pointing Device](feature_pointing_device.md) documentation for further configuration options. +See the [Pointing Device](../feature_pointing_device) documentation for further configuration options. -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} ### Legacy macro and action_function system removed ([#16025](https://github.com/qmk/qmk_firmware/pull/16025)) -The long time deprecated `MACRO()` and `action_get_macro` methods have been removed. Where possible, existing usages have been migrated over to core [Macros](feature_macros.md). +The long time deprecated `MACRO()` and `action_get_macro` methods have been removed. Where possible, existing usages have been migrated over to core [Macros](../feature_macros). ### Create a build error if no bootloader is specified ([#16181](https://github.com/qmk/qmk_firmware/pull/16181)) @@ -31,7 +31,7 @@ Bootloader configuration is no longer assumed. Keyboards must now set either: In preparation of future bluetooth work, the `AdafruitBLE` integration has been renamed to allow potential for any other Adafruit BLE products. -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} The following keyboards have had their source moved within QMK: @@ -241,9 +241,9 @@ The following keyboards have had their source moved within QMK: | zinc/rev1 | 25keys/zinc/rev1 | | zinc/reva | 25keys/zinc/reva | -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} -### New MCU Support :id=new-mcu-support +### New MCU Support {#new-mcu-support} Building on previous cycles, QMK firmware picked up support for a couple extra MCU variants: diff --git a/docs/ChangeLog/20220528.md b/docs/ChangeLog/20220528.md index 1265c81206d..31347c9c005 100644 --- a/docs/ChangeLog/20220528.md +++ b/docs/ChangeLog/20220528.md @@ -1,16 +1,16 @@ # QMK Breaking Changes - 2022 May 28 Changelog -## Notable Features :id=notable-features +## Notable Features {#notable-features} -### Caps Word ([#16588](https://github.com/qmk/qmk_firmware/pull/16588)) :id=caps-word +### Caps Word ([#16588](https://github.com/qmk/qmk_firmware/pull/16588)) {#caps-word} This is a new feature that allows for capslock-like functionality that turns itself off at the end of the word. For instance, if you wish to type "QMK" without holding shift the entire time, you can either tap both left and right shift, or double-tap shift, to turn on _Caps Word_ -- then type `qmk` (lowercase) without holding shift. Once you hit any key other than `a`--`z`, `0`--`9`, `-`, `_`, delete, or backspace, this will go back to normal typing! -There are other activation mechanisms as well as configurable options like timeout and the like -- see the [Caps Word documentation](feature_caps_word.md) for more information. +There are other activation mechanisms as well as configurable options like timeout and the like -- see the [Caps Word documentation](../feature_caps_word) for more information. -### Quantum Painter ([#10174](https://github.com/qmk/qmk_firmware/pull/10174)) :id=quantum-painter +### Quantum Painter ([#10174](https://github.com/qmk/qmk_firmware/pull/10174)) {#quantum-painter} QMK has had support for small OLED displays for some time now, but hasn't really gained too much ability to draw to panels other than the SSD1306 or SH1106 panels. @@ -18,27 +18,31 @@ Quantum Painter is a new drawing subsystem available to suitable ARM and RISC-V The QMK CLI has new commands added to be able to generate images and fonts for Quantum Painter to digest -- it's even capable of converting animated gifs for display on screen. -See the [Quantum Painter documentation](quantum_painter.md) for more information on how to set up the displays as well as how to convert images and fonts. +See the [Quantum Painter documentation](../quantum_painter) for more information on how to set up the displays as well as how to convert images and fonts. -!> Quantum Painter is not supported on AVR due to complexity and size constraints. Boards based on AVR such as ProMicro or Elite-C builds will not be able to leverage Quantum Painter. +::: warning +Quantum Painter is not supported on AVR due to complexity and size constraints. Boards based on AVR such as ProMicro or Elite-C builds will not be able to leverage Quantum Painter. +::: -### Encoder Mapping ([#13286](https://github.com/qmk/qmk_firmware/pull/13286)) :id=encoder-mapping +### Encoder Mapping ([#13286](https://github.com/qmk/qmk_firmware/pull/13286)) {#encoder-mapping} -One of the long-standing complaints with Encoders is that there has been no easy way to configure them in user keymaps. [#13286](https://github.com/qmk/qmk_firmware/pull/13286) added support for [Encoder Mapping](feature_encoders.md#encoder-map), which allows users to define encoder functionality in a similar way to their normal keymap. +One of the long-standing complaints with Encoders is that there has been no easy way to configure them in user keymaps. [#13286](https://github.com/qmk/qmk_firmware/pull/13286) added support for [Encoder Mapping](../feature_encoders#encoder-map), which allows users to define encoder functionality in a similar way to their normal keymap. -!> This is not yet supported by QMK Configurator. It is also unlikely to ever be supported by VIA. +::: warning +This is not yet supported by QMK Configurator. It is also unlikely to ever be supported by VIA. +::: -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### `RESET` => `QK_BOOT` ([#17037](https://github.com/qmk/qmk_firmware/pull/17037)) :id=reset-2-qk_boot +### `RESET` => `QK_BOOT` ([#17037](https://github.com/qmk/qmk_firmware/pull/17037)) {#reset-2-qk_boot} QMK is always in the process of picking up support for new hardware platforms. One of the side-effects for future integrations has shown that QMK's usage of `RESET` as a keycode is causing naming collisions. As a result, [#17037](https://github.com/qmk/qmk_firmware/pull/17037) changed usages of `RESET` to the new keycode `QK_BOOT` in the majority of default-like keymaps. At this stage the old keycode is still usable but will likely be removed in the next breaking changes cycle. Users with keymaps containing `RESET` should also move to `QK_BOOT`. -### Sendstring keycode overhaul ([#16941](https://github.com/qmk/qmk_firmware/pull/16941)) :id=sendstring-keycodes +### Sendstring keycode overhaul ([#16941](https://github.com/qmk/qmk_firmware/pull/16941)) {#sendstring-keycodes} Some keycodes used with `SEND_STRING` and its relatives have been deprecated and may have their old keycode usages removed at a later date. The list of [deprecated keycodes](https://github.com/qmk/qmk_firmware/blob/ebd402788346aa6e88bde1486b2a835684d40d39/quantum/send_string_keycodes.h#L456-L505) should be consulted to determine if you're using one of the older names (the first identifier after `#define`) -- you should swap to the newer variant (the second identifier on the same line). -### Pillow Installation ([#17133](https://github.com/qmk/qmk_firmware/pull/17133)) :id=pillow-install +### Pillow Installation ([#17133](https://github.com/qmk/qmk_firmware/pull/17133)) {#pillow-install} The merge of Quantum Painter added some new dependencies in the QMK CLI, most notably _Pillow_, which requires some installation in order for the CLI to function. If you've got an existing installation, you'll need to run some commands in order to get things working: @@ -62,7 +66,7 @@ On Linux or WSL: python3 -m pip install --user --upgrade qmk ``` -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} The following keyboards have had their source moved within QMK: @@ -97,7 +101,7 @@ The following keyboards have had their source moved within QMK: --- -## Full changelist :id=full-changelist +## Full changelist {#full-changelist} Core: * Quantum Painter ([#10174](https://github.com/qmk/qmk_firmware/pull/10174)) diff --git a/docs/ChangeLog/20220827.md b/docs/ChangeLog/20220827.md index b672b57cb89..d58db91272f 100644 --- a/docs/ChangeLog/20220827.md +++ b/docs/ChangeLog/20220827.md @@ -1,28 +1,28 @@ # QMK Breaking Changes - 2022 August 27 Changelog -## Notable Features :id=notable-features +## Notable Features {#notable-features} -### Add Raspberry Pi RP2040 support ([#14877](https://github.com/qmk/qmk_firmware/pull/14877), [#17514](https://github.com/qmk/qmk_firmware/pull/17514), [#17516](https://github.com/qmk/qmk_firmware/pull/17516), [#17519](https://github.com/qmk/qmk_firmware/pull/17519), [#17612](https://github.com/qmk/qmk_firmware/pull/17612), [#17512](https://github.com/qmk/qmk_firmware/pull/17512), [#17557](https://github.com/qmk/qmk_firmware/pull/17557), [#17817](https://github.com/qmk/qmk_firmware/pull/17817), [#17839](https://github.com/qmk/qmk_firmware/pull/17839), [#18100](https://github.com/qmk/qmk_firmware/pull/18100)) :id=rp2040-support +### Add Raspberry Pi RP2040 support ([#14877](https://github.com/qmk/qmk_firmware/pull/14877), [#17514](https://github.com/qmk/qmk_firmware/pull/17514), [#17516](https://github.com/qmk/qmk_firmware/pull/17516), [#17519](https://github.com/qmk/qmk_firmware/pull/17519), [#17612](https://github.com/qmk/qmk_firmware/pull/17612), [#17512](https://github.com/qmk/qmk_firmware/pull/17512), [#17557](https://github.com/qmk/qmk_firmware/pull/17557), [#17817](https://github.com/qmk/qmk_firmware/pull/17817), [#17839](https://github.com/qmk/qmk_firmware/pull/17839), [#18100](https://github.com/qmk/qmk_firmware/pull/18100)) {#rp2040-support} QMK _finally_ picked up support for RP2040-based boards, such as the Raspberry Pi Pico, the Sparkfun Pro Micro RP2040, and the Adafruit KB2040. One of QMK's newest collaborators, _@KarlK90_, effectively did `/micdrop` with RP2040, with a massive set of changes to both QMK and the repository QMK uses for the base platform support, ChibiOS[-Contrib]. There has been a flurry of development this breaking changes cycle related to RP2040 from a large number of contributors -- so much so that almost all standard QMK hardware subsystems are supported. -Check the [RP2040 platform development page](platformdev_rp2040.md) for all supported peripherals and other hardware implementation details. +Check the [RP2040 platform development page](../platformdev_rp2040) for all supported peripherals and other hardware implementation details. -### Allow `qmk flash` to use prebuilt firmware binaries ([#16584](https://github.com/qmk/qmk_firmware/pull/16584)) :id=cli-flash-binaries +### Allow `qmk flash` to use prebuilt firmware binaries ([#16584](https://github.com/qmk/qmk_firmware/pull/16584)) {#cli-flash-binaries} A long-requested capability of the QMK CLI has been the ability to flash binaries directly, without needing to build a firmware. QMK provides prebuilt `develop`-based default firmwares on our [CI page](https://qmk.tzarc.io/) -- normally people would need [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases/latest) to flash them. This new functionality written by _@Erovia_ allows `qmk flash` to be provided the prebuilt file instead, simplifying the workflow for people who haven't got Toolbox available. -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} ### Default layers dropped from 32 to 16 ([#15286](https://github.com/qmk/qmk_firmware/pull/15286)) QMK allows for controlling the maximum number of layers it supports through `LAYER_STATE_(8|16|32)BIT`. Each definition allows for the same number of maximum layers -- `LAYER_STATE_8BIT` => 8 layers. There is also a corresponding firmware size decrease that goes along with smaller numbers -- given the vast majority of users don't use more than 16 layers the default has been swapped to 16. AVR users who were not previously specifying their max layer count may see some space freed up as a result. -### `RESET` => `QK_BOOT` ([#17940](https://github.com/qmk/qmk_firmware/pull/17940)) :id=reset-2-qk_boot +### `RESET` => `QK_BOOT` ([#17940](https://github.com/qmk/qmk_firmware/pull/17940)) {#reset-2-qk_boot} Following the last breaking changes cycle, QMK has been migrating usages of `RESET` to `QK_BOOT` due to naming collisions with our upstream board support packages. [#17940](https://github.com/qmk/qmk_firmware/pull/17940) converts user keymaps across to use the new keycode name. `RESET` should also move to `QK_BOOT`. -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} The following keyboards have had their source moved within QMK: @@ -33,7 +33,7 @@ The following keyboards have had their source moved within QMK: | idobao/id80/v1/ansi | idobao/id80/v2/ansi | | idobao/id80/v1/iso | idobao/id80/v2/iso | -### Data-driven USB IDs Refactoring ([#18152](https://github.com/qmk/qmk_firmware/pull/18152)) :id=usb-ids-Refactoring +### Data-driven USB IDs Refactoring ([#18152](https://github.com/qmk/qmk_firmware/pull/18152)) {#usb-ids-Refactoring} QMK has decided to deprecate the specification of USB IDs inside `config.h` in favour of `info.json`, eventually leaving data-driven as the only method to specify USB information. @@ -67,25 +67,25 @@ Replaced by `info.json`: - From 2022 Aug 27, specifying USB information in `config.h` will produce warnings during build but will still function as previously. - From 2022 Nov 26, specifying USB information in `config.h` will cause compilation to fail. -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} -### Board converters ([#17514](https://github.com/qmk/qmk_firmware/pull/17514), [#17603](https://github.com/qmk/qmk_firmware/pull/17603), [#17711](https://github.com/qmk/qmk_firmware/pull/17711), [#17827](https://github.com/qmk/qmk_firmware/pull/17827), [#17593](https://github.com/qmk/qmk_firmware/pull/17593), [#17652](https://github.com/qmk/qmk_firmware/pull/17652), [#17595](https://github.com/qmk/qmk_firmware/pull/17595)) :id=board-converters +### Board converters ([#17514](https://github.com/qmk/qmk_firmware/pull/17514), [#17603](https://github.com/qmk/qmk_firmware/pull/17603), [#17711](https://github.com/qmk/qmk_firmware/pull/17711), [#17827](https://github.com/qmk/qmk_firmware/pull/17827), [#17593](https://github.com/qmk/qmk_firmware/pull/17593), [#17652](https://github.com/qmk/qmk_firmware/pull/17652), [#17595](https://github.com/qmk/qmk_firmware/pull/17595)) {#board-converters} -Historically QMK had a `CONVERT_TO_PROTON_C` directive for `rules.mk` to allow people to replace an AVR-based Pro Micro with a QMK Proton C. Global parts shortages have prompted people to create their own pin-compatible boards -- QMK has made this conversion generic and now allows for drop-in replacements for a lot more boards. see the [Converters Feature](feature_converters.md) documentation for the full list of supported replacement boards -- in this breaking changes cycle we've gone from 1 to 7. +Historically QMK had a `CONVERT_TO_PROTON_C` directive for `rules.mk` to allow people to replace an AVR-based Pro Micro with a QMK Proton C. Global parts shortages have prompted people to create their own pin-compatible boards -- QMK has made this conversion generic and now allows for drop-in replacements for a lot more boards. see the [Converters Feature](../feature_converters) documentation for the full list of supported replacement boards -- in this breaking changes cycle we've gone from 1 to 7. -### Add cli command to import keyboard|keymap|kbfirmware ([#16668](https://github.com/qmk/qmk_firmware/pull/16668)) :id=cli-import +### Add cli command to import keyboard|keymap|kbfirmware ([#16668](https://github.com/qmk/qmk_firmware/pull/16668)) {#cli-import} To help with importing keyboards and keymaps from other sources, _@zvecr_ added [#16668](https://github.com/qmk/qmk_firmware/pull/16668) which adds a new set of commands to the CLI to automatically import keyboards (`qmk import-keyboard -h`), keymaps (`qmk import-keymap -h`), and kbfirmware definitions (`qmk import-kbfirmware -h`) into QMK. The now-EOL kbfirmware allowed people who aren't set up with QMK the ability to create keyboard firmwares without requiring a full installation of QMK. Unfortunately, it targets a 7-year-old version of QMK -- adding frustration for users who want the newest features, as well as for QMK maintainers who have to spend time explaining why QMK can't just accept a drive-by code drop from kbfirmware. With any luck, this new command helps both camps! -### Generic wear-leveling for EEPROM emulation ([#16996](https://github.com/qmk/qmk_firmware/pull/16996), [#17376](https://github.com/qmk/qmk_firmware/pull/17376), [#18102](https://github.com/qmk/qmk_firmware/pull/18102)) :id=wear-leveling +### Generic wear-leveling for EEPROM emulation ([#16996](https://github.com/qmk/qmk_firmware/pull/16996), [#17376](https://github.com/qmk/qmk_firmware/pull/17376), [#18102](https://github.com/qmk/qmk_firmware/pull/18102)) {#wear-leveling} QMK has had the ability to write to internal MCU flash in order to emulate EEPROM for some time now, but it was only limited to a small number of MCUs. The base HAL used by QMK for a large number of ARM devices provides a "proper" embedded MCU flash driver, so _@tzarc_ decoupled the wear-leveling algorithm from the old flash writing code, improved it, wrote some tests, and enabled its use for a much larger number of other devices... including RP2040's XIP flash, and external SPI NOR Flash. -See the [EEPROM Driver](eeprom_driver.md) documentation for more information. +See the [EEPROM Driver](../eeprom_driver) documentation for more information. -### Pointing Device Improvements ([#16371](https://github.com/qmk/qmk_firmware/pull/16371), [#17111](https://github.com/qmk/qmk_firmware/pull/17111), [#17176](https://github.com/qmk/qmk_firmware/pull/17176), [#17482](https://github.com/qmk/qmk_firmware/pull/17482), [#17776](https://github.com/qmk/qmk_firmware/pull/17776), [#17613](https://github.com/qmk/qmk_firmware/pull/17613)) :id=pointing-device-improvements +### Pointing Device Improvements ([#16371](https://github.com/qmk/qmk_firmware/pull/16371), [#17111](https://github.com/qmk/qmk_firmware/pull/17111), [#17176](https://github.com/qmk/qmk_firmware/pull/17176), [#17482](https://github.com/qmk/qmk_firmware/pull/17482), [#17776](https://github.com/qmk/qmk_firmware/pull/17776), [#17613](https://github.com/qmk/qmk_firmware/pull/17613)) {#pointing-device-improvements} Ever since Pointing Device Driver support and Split Pointing Device support were added by _@drashna_ and _@daskygit_, there has been increased interest in the development of the pointing device subsystem and its associated code. @@ -102,7 +102,7 @@ Other related changes: --- -## Full changelist :id=full-changelist +## Full changelist {#full-changelist} Core: * Tentative Teensy 3.5 support ([#14420](https://github.com/qmk/qmk_firmware/pull/14420)) diff --git a/docs/ChangeLog/20221126.md b/docs/ChangeLog/20221126.md index 82aa4a499e3..25cf1d592dd 100644 --- a/docs/ChangeLog/20221126.md +++ b/docs/ChangeLog/20221126.md @@ -1,14 +1,14 @@ # QMK Breaking Changes - 2022 November 26 Changelog -## Notable Features :id=notable-features +## Notable Features {#notable-features} -### Autocorrect ([#15699](https://github.com/qmk/qmk_firmware/pull/15699)) :id=autocorrect +### Autocorrect ([#15699](https://github.com/qmk/qmk_firmware/pull/15699)) {#autocorrect} -_@getreuer_ in their infinite wisdom decided that autocorrect was a feature needed by QMK. As is customary, _@drashna_ adapted it to core and got it into a state that everyone else can use it. See [Feature: Autocorrect](feature_autocorrect.md) for more ifnormation (grin). +_@getreuer_ in their infinite wisdom decided that autocorrect was a feature needed by QMK. As is customary, _@drashna_ adapted it to core and got it into a state that everyone else can use it. See [Feature: Autocorrect](../feature_autocorrect) for more ifnormation (grin). -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} The following keyboards have had their source moved within QMK: @@ -23,17 +23,19 @@ The following keyboards have had their source moved within QMK: | handwired/hillside/52 | hillside/52 | | maple_computing/christmas_tree/V2017 | maple_computing/christmas_tree/v2017 | -### Keycodes refactoring :id=keycodes-overhaul-user-action +### Keycodes refactoring {#keycodes-overhaul-user-action} -QMK's keycodes got a very significant overhaul this breaking changes cycle, with the bulk of the work done by _@zvecr_ and _@fauxpark_ -- renaming, reordering, removing has been their focus in this area. In an attempt to standardise interoperation with host applications, keycode values now have strong versioning so that any connected application has confidence that the keys it thinks exist on the board actually match up with what's compiled in. These strongly-versioned keycode definitions are now published online and will not change, so tools that remap keycodes have a reference to work with. In future versions of QMK, any new or changed keycodes will result in a new version specification. See [API docs](api_docs.md#qmk-constants) for more information on the published versions if you're writing a tool to manage keycodes. +QMK's keycodes got a very significant overhaul this breaking changes cycle, with the bulk of the work done by _@zvecr_ and _@fauxpark_ -- renaming, reordering, removing has been their focus in this area. In an attempt to standardise interoperation with host applications, keycode values now have strong versioning so that any connected application has confidence that the keys it thinks exist on the board actually match up with what's compiled in. These strongly-versioned keycode definitions are now published online and will not change, so tools that remap keycodes have a reference to work with. In future versions of QMK, any new or changed keycodes will result in a new version specification. See [API docs](../api_docs#qmk-constants) for more information on the published versions if you're writing a tool to manage keycodes. In most cases user keymaps in the repository have already been updated to reflect the new naming scheme. In some cases user keymaps outside the repository may strike a missing keycode with the old name -- it's highly likely that the name had already been deprecated for some time, and should have been updated previously. See below for the full list of changesets. -!> Keycode aliases have been put in place in most cases to cater for "old names" being mapped to "new names" -- the documentation already reflects all the new naming of keys. +::: warning +Keycode aliases have been put in place in most cases to cater for "old names" being mapped to "new names" -- the documentation already reflects all the new naming of keys. +::: -### Configuration Item Refactoring :id=config-refactoring +### Configuration Item Refactoring {#config-refactoring} A number of configuration items have been renamed for consistency. @@ -66,7 +68,7 @@ Joystick configuration: | JOYSTICK_AXES_COUNT | JOYSTICK_AXIS_COUNT | | JOYSTICK_AXES_RESOLUTION | JOYSTICK_AXIS_RESOLUTION | -### Data-driven USB IDs Refactoring ([#18152](https://github.com/qmk/qmk_firmware/pull/18152)) :id=usb-ids-Refactoring +### Data-driven USB IDs Refactoring ([#18152](https://github.com/qmk/qmk_firmware/pull/18152)) {#usb-ids-Refactoring} QMK has decided to deprecate the specification of USB IDs inside `config.h` in favour of `info.json`, leaving data-driven as the only method to specify USB information. As per the deprecation schedule put forward last breaking changes cycle, USB information must be specified in `info.json` instead. @@ -92,7 +94,7 @@ Replaced by `info.json`: } ``` -### LED Indicator callback refactoring ([#14864](https://github.com/qmk/qmk_firmware/pull/18450)) :id=led-callback-refactor +### LED Indicator callback refactoring ([#14864](https://github.com/qmk/qmk_firmware/pull/18450)) {#led-callback-refactor} _RGB Matrix_ and _LED Matrix_ Indicator display code was traditionally difficult to override in keymaps as they did not follow the standard pattern of `bool *_kb()` deferring to `bool *_user()` functions, allowing signalling to the higher level that processing had already been done. @@ -128,15 +130,15 @@ bool rgb_matrix_indicators_kb(void) { The equivalent transformations should be done for LED Matrix boards. -### Unicode mode refactoring :id=unicode-mode-renaming +### Unicode mode refactoring {#unicode-mode-renaming} -Unicode modes were renamed in order to prevent collision with equivalent keycodes. The available values for `UNICODE_SELECTED_MODES` changed -- see [Feature: Unicode](feature_unicode.md#setting-the-input-mode) for the new list of values and how to configure them. +Unicode modes were renamed in order to prevent collision with equivalent keycodes. The available values for `UNICODE_SELECTED_MODES` changed -- see [Feature: Unicode](../feature_unicode#setting-the-input-mode) for the new list of values and how to configure them. -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} This breaking changes cycle, a lot of the core changes are related to cleanup and refactoring -- commonly called "tech debt". -### Keycodes refactoring :id=keycodes-overhaul-core-changes +### Keycodes refactoring {#keycodes-overhaul-core-changes} We aren't going to list each and every change -- they're far too numerous -- instead, we'll just list the related PRs in order to convey just how wide-reaching these changes were: @@ -181,7 +183,7 @@ We aren't going to list each and every change -- they're far too numerous -- ins * Remove legacy sendstring keycodes ([#18749](https://github.com/qmk/qmk_firmware/pull/18749)) * Reworked backlight keycodes. ([#18961](https://github.com/qmk/qmk_firmware/pull/18961)) -### Board Converters :id=board-converters +### Board Converters {#board-converters} There was additional work in the space of board converters -- historically QMK allowed for "converting" a Pro Micro build to a QMK Proton-C build. The last few versions of QMK have added support for replacement boards much like the Proton-C, and this quarter was no exception: @@ -191,9 +193,9 @@ There was additional work in the space of board converters -- historically QMK a * Add Elite-Pi converter ([#18236](https://github.com/qmk/qmk_firmware/pull/18236)) * Allow QK_MAKE to work with converters ([#18637](https://github.com/qmk/qmk_firmware/pull/18637)) -See [Feature: Converters](feature_converters.md) for the full list of board conversions available. +See [Feature: Converters](../feature_converters) for the full list of board conversions available. -### Pointing and Digitizer device updates :id=pointing-and-digitizer +### Pointing and Digitizer device updates {#pointing-and-digitizer} Both pointing devices and digitizer got a host of updates this cycle. Inertia, automatic mouse layers, fixes for preventing sleep... you even get more buttons with digitizers! @@ -207,7 +209,7 @@ Both pointing devices and digitizer got a host of updates this cycle. Inertia, a * Invert pointing device motion pin for cirque touchpads ([#18404](https://github.com/qmk/qmk_firmware/pull/18404)) * Refactor more host code (programmable button & digitizer) ([#18565](https://github.com/qmk/qmk_firmware/pull/18565)) -## Full changelist :id=full-changelist +## Full changelist {#full-changelist} Core: * quantum: led: split out led_update_ports() for customization of led behaviour ([#14452](https://github.com/qmk/qmk_firmware/pull/14452)) diff --git a/docs/ChangeLog/20230226.md b/docs/ChangeLog/20230226.md index df5095ac7b5..ee560686044 100644 --- a/docs/ChangeLog/20230226.md +++ b/docs/ChangeLog/20230226.md @@ -1,8 +1,8 @@ # QMK Breaking Changes - 2023 February 26 Changelog -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### `IGNORE_MOD_TAP_INTERRUPT` behaviour changes ([#15741](https://github.com/qmk/qmk_firmware/pull/15741)) :id=i-m-t-i +### `IGNORE_MOD_TAP_INTERRUPT` behaviour changes ([#15741](https://github.com/qmk/qmk_firmware/pull/15741)) {#i-m-t-i} `IGNORE_MOD_TAP_INTERRUPT_PER_KEY` has been removed and `IGNORE_MOD_TAP_INTERRUPT` deprecated as a stepping stone towards making `IGNORE_MOD_TAP_INTERRUPT` the new default behavior for mod-taps in the future. @@ -46,9 +46,9 @@ bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) { } ``` -For more information, you are invited to read the sections on [IGNORE_MOD_TAP_INTERRUPT](tap_hold.md#ignore-mod-tap-interrupt) and [HOLD_ON_OTHER_KEY_PRESS](tap_hold.md#hold-on-other-key-press) in the page on [Tap-Hold configuration options](tap_hold.md). +For more information, you are invited to read the sections on [IGNORE_MOD_TAP_INTERRUPT](../tap_hold#ignore-mod-tap-interrupt) and [HOLD_ON_OTHER_KEY_PRESS](../tap_hold#hold-on-other-key-press) in the page on [Tap-Hold configuration options](../tap_hold). -### `TAPPING_FORCE_HOLD` => `QUICK_TAP_TERM` ([#17007](https://github.com/qmk/qmk_firmware/pull/17007)) :id=quick-tap-term +### `TAPPING_FORCE_HOLD` => `QUICK_TAP_TERM` ([#17007](https://github.com/qmk/qmk_firmware/pull/17007)) {#quick-tap-term} `TAPPING_FORCE_HOLD` feature is now replaced by `QUICK_TAP_TERM`. Instead of turning off auto-repeat completely, user will have the option to configure a `QUICK_TAP_TERM` in milliseconds. When the user holds a tap-hold key after tapping it within `QUICK_TAP_TERM`, QMK will send the tap keycode to the host, enabling auto-repeat. @@ -80,9 +80,9 @@ uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) { } ``` -For more details, please read the updated documentation section on [Quick Tap Term](tap_hold.md#quick-tap-term). +For more details, please read the updated documentation section on [Quick Tap Term](../tap_hold#quick-tap-term). -### Leader Key Rework :id=leader-key-rework ([#19632](https://github.com/qmk/qmk_firmware/pull/19632)) +### Leader Key Rework {#leader-key-rework ([#19632](https://github.com/qmk/qmk_firmware/pull/19632))} The Leader Key feature API has been significantly improved, along with some bugfixes and added tests. @@ -106,9 +106,9 @@ void leader_end_user(void) { } ``` -For more information please see the [Leader Key documentation](feature_leader_key.md). +For more information please see the [Leader Key documentation](../feature_leader_key). -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} The following keyboards have had their source moved within QMK: @@ -130,7 +130,7 @@ The following keyboards have had their source moved within QMK: | the_uni | stenothe_uni | | xelus/xs60 | xelus/xs60/soldered | -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} As per last breaking changes cycle, there has been _a lot_ of emphasis on behind-the-scenes changes, mainly around consolidation of core subsystems and constant values, as well as addressing tech debt. Whilst not outwardly visible, this cleanup and refactoring should start paying dividends as it simplifies future development and maintenance. @@ -142,7 +142,7 @@ A handful of examples: * Many more configuration options have moved into `info.json`, such as backlight, encoders * Additional unit tests to ensure keycode behaviours don't accidentally change -## Full changelist :id=full-changelist +## Full changelist {#full-changelist} Core: * Remove IGNORE_MOD_TAP_INTERRUPT_PER_KEY in favour of HOLD_ON_OTHER_KEY_PRESS_PER_KEY ([#15741](https://github.com/qmk/qmk_firmware/pull/15741)) diff --git a/docs/ChangeLog/20230528.md b/docs/ChangeLog/20230528.md index b4044d3109b..40ab3a420c2 100644 --- a/docs/ChangeLog/20230528.md +++ b/docs/ChangeLog/20230528.md @@ -1,6 +1,6 @@ # QMK Breaking Changes - 2023 May 28 Changelog -## Notable Changes :id=notable-changes +## Notable Changes {#notable-changes} As per last breaking changes cycle, there has been _a lot_ of emphasis on behind-the-scenes changes, mainly around migration of configurables into `info.json` files, cleanup of `info.json` files, additional layout definitions for keyboards, adding support for general community layouts to keyboards, as well as addressing technical debt. @@ -20,11 +20,11 @@ Of note for keyboard designers: * `encoder_map[][NUM_ENCODERS][2]` => `encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS]` * Users assumed the `2` referred to the number of encoders, rather than the number of directions (which is always 2) -### Repeat last key ([#19700](https://github.com/qmk/qmk_firmware/pull/19700)) :id=repeat-last-key +### Repeat last key ([#19700](https://github.com/qmk/qmk_firmware/pull/19700)) {#repeat-last-key} A new pair of keys has been added to QMK -- namely `QK_REPEAT_KEY` and `QK_ALT_REPEAT_KEY` (shortened: `QK_REP`/`QK_AREP`). These allow you to repeat the last key pressed, or in the case of the alternate key, press the "opposite" of the last key. For example, if you press `KC_LEFT`, pressing `QK_REPEAT_KEY` afterwards repeats `KC_LEFT`, but pressing `QK_ALT_REPEAT_KEY` instead sends `KC_RIGHT`. -The full list of default alternate keys is available on the [Repeat Key](feature_repeat_key.md) documentation. +The full list of default alternate keys is available on the [Repeat Key](../feature_repeat_key) documentation. To enable these keys, in your keymap's `rules.mk`, add: @@ -34,27 +34,27 @@ REPEAT_KEY_ENABLE = yes ...and add them to your keymap. -### User callback for pre process record ([#20584](https://github.com/qmk/qmk_firmware/pull/20584)) :id=user-callback-for-pre-process-record +### User callback for pre process record ([#20584](https://github.com/qmk/qmk_firmware/pull/20584)) {#user-callback-for-pre-process-record} Two new boolean callback functions, `pre_process_record_kb` and `pre_process_record_user`, have been added. They are called at the beginning of `process_record`, right before `process_combo`. -Similar to existing `*_kb` and `*_user` callback functions, returning `false` will halt further processing of key events. The `pre_process_record_user` function will allow user space opportunity to handle or capture an input before it undergoes quantum processing. For example, while action tapping is still resolving the tap or hold output of a mod-tap key, `pre_process_record_user` can capture the next key record of an input event that follows. That key record can be used to influence the [decision of the mod-tap](https://docs.qmk.fm/#/tap_hold) key that is currently undergoing quantum processing. +Similar to existing `*_kb` and `*_user` callback functions, returning `false` will halt further processing of key events. The `pre_process_record_user` function will allow user space opportunity to handle or capture an input before it undergoes quantum processing. For example, while action tapping is still resolving the tap or hold output of a mod-tap key, `pre_process_record_user` can capture the next key record of an input event that follows. That key record can be used to influence the [decision of the mod-tap](../tap_hold) key that is currently undergoing quantum processing. -### Consolidate modelm ([#14996](https://github.com/qmk/qmk_firmware/pull/14996) :id=consolidate-modelm +### Consolidate modelm ([#14996](https://github.com/qmk/qmk_firmware/pull/14996) {#consolidate-modelm} Several build targets for the IBM Model M were cluttered in different folders. The maintainers of several Model M replacement controller projects agreed to consolidate them under one common folder. -The list of all moved keyboard locations is listed [below](20230528.md#updated-keyboard-codebases). +The list of all moved keyboard locations is listed [below](20230528#updated-keyboard-codebases). -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### `IGNORE_MOD_TAP_INTERRUPT` behaviour changes ([#20211](https://github.com/qmk/qmk_firmware/pull/20211)) :id=i-m-t-i +### `IGNORE_MOD_TAP_INTERRUPT` behaviour changes ([#20211](https://github.com/qmk/qmk_firmware/pull/20211)) {#i-m-t-i} Following up from the last breaking changes cycle, `IGNORE_MOD_TAP_INTERRUPT` has been removed and if present in keymap code, will now fail to build. The previous functionality for `IGNORE_MOD_TAP_INTERRUPT` is now default, and should you wish to revert to the old behaviour, you can use `HOLD_ON_OTHER_KEY_PRESS` instead. -For more information, you are invited to read the section on [HOLD_ON_OTHER_KEY_PRESS](tap_hold.md#hold-on-other-key-press) in the page on [Tap-Hold configuration options](tap_hold.md). +For more information, you are invited to read the section on [HOLD_ON_OTHER_KEY_PRESS](../tap_hold#hold-on-other-key-press) in the page on [Tap-Hold configuration options](../tap_hold). -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} | Old Keyboard Name | New Keyboard Name | |---------------------------------|-------------------------------------| @@ -77,9 +77,9 @@ For more information, you are invited to read the section on [HOLD_ON_OTHER_KEY_ | tronguylabs/m122_3270/teensy | ibm/model_m_122/m122_3270/teensy | | yugo_m/model_m_101 | ibm/model_m/yugo_m | -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} -### Encoder functionality fallback ([#20320](https://github.com/qmk/qmk_firmware/pull/20320)) :id=encoder-functionality-fallback +### Encoder functionality fallback ([#20320](https://github.com/qmk/qmk_firmware/pull/20320)) {#encoder-functionality-fallback} For keyboards who have not yet been migrated to encoder map, a default set of encoder functionality is now enabled, gracefully degrading functionality depending on which flags are enabled by the keyboard: @@ -89,13 +89,13 @@ For keyboards who have not yet been migrated to encoder map, a default set of en Additionally, this ensures that builds on QMK Configurator produce some sort of usable encoder mapping. -### OLED Driver Improvements ([#20331](https://github.com/qmk/qmk_firmware/pull/20331)) :id=oled-driver-improvements +### OLED Driver Improvements ([#20331](https://github.com/qmk/qmk_firmware/pull/20331)) {#oled-driver-improvements} The "classic" OLED driver picked up support for additional sizes of OLED displays, support for the SH1107 controller, and SPI-based OLED support. -Other configurable items are available and can be found on the [OLED Driver page](https://docs.qmk.fm/#/feature_oled_driver). +Other configurable items are available and can be found on the [OLED Driver page](../feature_oled_driver). -## Full changelist :id=full-changelist +## Full changelist {#full-changelist} Core: * Refactor `keyevent_t` for 1ms timing resolution ([#15847](https://github.com/qmk/qmk_firmware/pull/15847)) diff --git a/docs/ChangeLog/20230827.md b/docs/ChangeLog/20230827.md index 12093d889f3..aecbcb0d8f4 100644 --- a/docs/ChangeLog/20230827.md +++ b/docs/ChangeLog/20230827.md @@ -1,14 +1,14 @@ # QMK Breaking Changes - 2023 Aug 27 Changelog -## Notable Changes :id=notable-changes +## Notable Changes {#notable-changes} As per last few breaking changes cycles, there have been _a lot_ of behind-the-scenes changes, mainly around migration of configurables into `info.json` files, cleanup of `info.json` files, additional layout definitions for keyboards, adding support for general community layouts to keyboards, as well as addressing technical debt. -One thing to note for this release -- `qmk/qmk_firmware` is no longer accepting PRs for keymaps other than for manufacturer-supported keymaps. User keymap workflow has been documented [here](https://docs.qmk.fm/#/newbs) for several years. This change is to progressively reduce the maintenance burden on the project, and to allow us to focus on the core features of QMK. +One thing to note for this release -- `qmk/qmk_firmware` is no longer accepting PRs for keymaps other than for manufacturer-supported keymaps. User keymap workflow has been documented [here](../newbs) for several years. This change is to progressively reduce the maintenance burden on the project, and to allow us to focus on the core features of QMK. Existing user keymaps and userspace areas will likely be relocated/removed in the future -- non-building keymaps and userspace will be first targets, likely during the new breaking changes cycle. We will provide more information on Discord regarding this initiative as it becomes available. -### RGB Matrix optimizations ([#21134](https://github.com/qmk/qmk_firmware/pull/21134), [#21135](https://github.com/qmk/qmk_firmware/pull/21135)) :id=rgb-matrix-optimizations +### RGB Matrix optimizations ([#21134](https://github.com/qmk/qmk_firmware/pull/21134), [#21135](https://github.com/qmk/qmk_firmware/pull/21135)) {#rgb-matrix-optimizations} Most RGB Matrix implementations now check whether or not RGB LED data has changed and skip transmission if it hasn't. This was measured to improve scan frequency in cases of static or infrequently-changing colors. @@ -18,9 +18,9 @@ Some audio code relating to "notes" used `double` datatypes, which are implement AVR sees minimal (if any) benefit -- `double` was interpreted as `float` on AVR anyway. -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} | Old Keyboard Name | New Keyboard Name | |---------------------------------------|-------------------------------------| @@ -40,11 +40,11 @@ AVR sees minimal (if any) benefit -- `double` was interpreted as `float` on AVR | modelh | ibm/model_m/modelh | | vinta | coarse/vinta | -### Remove encoder in-matrix workaround code ([#20389](https://github.com/qmk/qmk_firmware/pull/20389)) :id=remove-encoder-in-matrix-workaround-code +### Remove encoder in-matrix workaround code ([#20389](https://github.com/qmk/qmk_firmware/pull/20389)) {#remove-encoder-in-matrix-workaround-code} -Some keyboards "hacked" encoder support into spare slots in the key matrix in order to interoperate with VIA. This workaround is no longer necessary, and the code has been removed. If you have a keyboard that uses this workaround, you will need to update your keymap to use the new [Encoder Map](feature_encoders.md#encoder-map) API instead. +Some keyboards "hacked" encoder support into spare slots in the key matrix in order to interoperate with VIA. This workaround is no longer necessary, and the code has been removed. If you have a keyboard that uses this workaround, you will need to update your keymap to use the new [Encoder Map](../feature_encoders#encoder-map) API instead. -### Unicodemap keycodes rename ([#21092](https://github.com/qmk/qmk_firmware/pull/21092)) :id=unicodemap-keycodes-rename +### Unicodemap keycodes rename ([#21092](https://github.com/qmk/qmk_firmware/pull/21092)) {#unicodemap-keycodes-rename} The Unicodemap keycodes have been renamed: @@ -53,11 +53,11 @@ The Unicodemap keycodes have been renamed: | `X(i)` | `UM(i)` | | `XP(i,j)` | `UP(i,j)` | -### Remove old OLED API code ([#21651](https://github.com/qmk/qmk_firmware/pull/21651)) :id=remove-old-oled-api-code +### Remove old OLED API code ([#21651](https://github.com/qmk/qmk_firmware/pull/21651)) {#remove-old-oled-api-code} Old OLED code using `ssd1306.c` `ssd1306.h`, and `SSD1306OLED` and other similar files have been consolidated to use the standard OLED driver. External user keymaps will need to be updated to use the standard OLED driver accordingly. -### Driver naming consolidation ([#21551](https://github.com/qmk/qmk_firmware/pull/21551), [#21558](https://github.com/qmk/qmk_firmware/pull/21558), [#21580](https://github.com/qmk/qmk_firmware/pull/21580), [#21594](https://github.com/qmk/qmk_firmware/pull/21594), [#21624](https://github.com/qmk/qmk_firmware/pull/21624), [#21710](https://github.com/qmk/qmk_firmware/pull/21710)) :id=driver-naming-consolidation +### Driver naming consolidation ([#21551](https://github.com/qmk/qmk_firmware/pull/21551), [#21558](https://github.com/qmk/qmk_firmware/pull/21558), [#21580](https://github.com/qmk/qmk_firmware/pull/21580), [#21594](https://github.com/qmk/qmk_firmware/pull/21594), [#21624](https://github.com/qmk/qmk_firmware/pull/21624), [#21710](https://github.com/qmk/qmk_firmware/pull/21710)) {#driver-naming-consolidation} In most circumstances this won't affect users -- only keyboard designers with currently-unmerged boards. The only users affected are people who have modified existing keyboards in order to add/modify haptics, lighting, or bluetooth -- and only if the base keyboard did not configure them already. Driver naming has been modified to be lowercase. @@ -116,7 +116,7 @@ Bluetooth (`BLUETOOTH_DRIVER` / `bluetooth.driver`): | `BluefruitLE` | `bluefruit_le` | | `RN42` | `rn42` | -## Full changelist :id=full-changelist +## Full changelist {#full-changelist} Core: * On-each-release tap dance function ([#20255](https://github.com/qmk/qmk_firmware/pull/20255)) diff --git a/docs/ChangeLog/20231126.md b/docs/ChangeLog/20231126.md index 61cff520c80..8a43bb00168 100644 --- a/docs/ChangeLog/20231126.md +++ b/docs/ChangeLog/20231126.md @@ -1,14 +1,14 @@ # QMK Breaking Changes - 2023 November 26 Changelog -## Notable Features :id=notable-features +## Notable Features {#notable-features} As per last few breaking changes cycles, there have been _a lot_ of behind-the-scenes changes, mainly around consolidation of config into `info.json` files, cleanup of `info.json` files, cleaning up driver naming, as well as addressing technical debt. -As a followup to last cycle's [notable changes](20230827.md#notable-changes), as `qmk/qmk_firmware` is no longer accepting PRs for keymaps we're pleased to announce that storing and building keymaps externally from the normal QMK Firmware repository is now possible. This is done through the new [External Userspace](newbs_external_userspace.md) feature, more details below! +As a followup to last cycle's [notable changes](20230827#notable-changes), as `qmk/qmk_firmware` is no longer accepting PRs for keymaps we're pleased to announce that storing and building keymaps externally from the normal QMK Firmware repository is now possible. This is done through the new [External Userspace](../newbs_external_userspace) feature, more details below! -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} | Old Keyboard Name | New Keyboard Name | |---------------------------------------|-------------------------------| @@ -29,29 +29,31 @@ As a followup to last cycle's [notable changes](20230827.md#notable-changes), as | studiokestra/line_tkl | studiokestra/line_friends_tkl | | ymdk/melody96 | ymdk/melody96/soldered | -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} ### External Userspace ([#22222](https://github.com/qmk/qmk_firmware/pull/22222)) As mentioned above, the new External Userspace feature allows for keymaps to be stored and built externally from the main QMK Firmware repository. This allows for keymaps to be stored separately -- usually in their own repository -- and for users to be able to maintain and build their keymaps without needing to fork the main QMK Firmware repository. -See the [External Userspace documentation](newbs_external_userspace.md) for more details. +See the [External Userspace documentation](../newbs_external_userspace) for more details. A significant portion of user keymaps have already been removed from `qmk/qmk_firmware` and more will follow in coming weeks. You can still recover your keymap from the tag [user-keymaps-still-present](https://github.com/qmk/qmk_firmware/tree/user-keymaps-still-present) if required -- a perfect time to migrate to the new External Userspace! -!> This feature is still in beta, and we're looking for feedback on it. Please try it out and let us know what you think -- a new `#help-userspace` channel has been set up on Discord. +::: warning +This feature is still in beta, and we're looking for feedback on it. Please try it out and let us know what you think -- a new `#help-userspace` channel has been set up on Discord. +::: -### Improve and Cleanup Shutdown callbacks ([#21060](https://github.com/qmk/qmk_firmware/pull/20160)) :id=improve-and-cleanup-shutdown-callbacks +### Improve and Cleanup Shutdown callbacks ([#21060](https://github.com/qmk/qmk_firmware/pull/20160)) {#improve-and-cleanup-shutdown-callbacks} Shutdown callbacks at the keyboard level were never present, preventing safe shutdown sequencing for peripherals such as OLEDs, RGB LEDs, and other devices. This PR adds a new `shutdown_kb` function, as well as amending `shutdown_user`, allowing for safe shutdown of peripherals at both keyboard and keymap level. -See the [Keyboard Shutdown/Reboot Code](custom_quantum_functions.md#keyboard-shutdown-reboot-code) documentation for more details. +See the [Keyboard Shutdown/Reboot Code](../custom_quantum_functions#keyboard-shutdown-reboot-code) documentation for more details. -### OLED Force Flush ([#20953](https://github.com/qmk/qmk_firmware/pull/20953)) :id=oled-force-flush +### OLED Force Flush ([#20953](https://github.com/qmk/qmk_firmware/pull/20953)) {#oled-force-flush} Along with the new `shutdown_kb` function, a new API `oled_render_dirty(bool)` function has been added. This allows OLED contents to be written deterministically when supplied with `true` -- that is, the OLED will be updated immediately, rather than waiting for the next OLED update cycle. This allows for OLEDs to show things such as "BOOTLOADER MODE" and the like if resetting to bootloader from QMK. -### Switch statement helpers for keycode ranges ([#20059](https://github.com/qmk/qmk_firmware/pull/20059)) :id=switch-statement-helpers-for-keycode-ranges +### Switch statement helpers for keycode ranges ([#20059](https://github.com/qmk/qmk_firmware/pull/20059)) {#switch-statement-helpers-for-keycode-ranges} Predefined ranges usable within switch statements have been added for groups of similar keycodes, where people who wish to handle entire blocks at once can do so. This allows keymaps to be immune to changes in keycode values, and also allows for more efficient code generation. @@ -98,17 +100,17 @@ Becomes: /* do stuff with basic and modifier keycodes */ ``` -### Quantum Painter OLED support ([#19997](https://github.com/qmk/qmk_firmware/pull/19997)) :id=quantum-painter-oled-support +### Quantum Painter OLED support ([#19997](https://github.com/qmk/qmk_firmware/pull/19997)) {#quantum-painter-oled-support} Quantum Painter has picked up support for SH1106 displays -- commonly seen as 128x64 OLEDs. Support for both I2C and SPI displays is available. -If you're already using OLED through `OLED_DRIVER_ENABLE = yes` or equivalent in `info.json` and wish to use Quantum Painter instead, you'll need to disable the old OLED system, instead enabling Quantum Painter as well as enabling the appropriate SH1106 driver. See the [Quantum Painter driver documentation](quantum_painter.md#quantum-painter-drivers) for more details. The old OLED driver is still available, and keymaps do not require migrating to Quantum Painter if you don't want to do so. +If you're already using OLED through `OLED_DRIVER_ENABLE = yes` or equivalent in `info.json` and wish to use Quantum Painter instead, you'll need to disable the old OLED system, instead enabling Quantum Painter as well as enabling the appropriate SH1106 driver. See the [Quantum Painter driver documentation](../quantum_painter#quantum-painter-drivers) for more details. The old OLED driver is still available, and keymaps do not require migrating to Quantum Painter if you don't want to do so. ### RGB/LED lighting driver naming and cleanup ([#21890](https://github.com/qmk/qmk_firmware/pull/21890), [#21891](https://github.com/qmk/qmk_firmware/pull/21891), [#21892](https://github.com/qmk/qmk_firmware/pull/21892), [#21903](https://github.com/qmk/qmk_firmware/pull/21903), [#21904](https://github.com/qmk/qmk_firmware/pull/21904), [#21905](https://github.com/qmk/qmk_firmware/pull/21905), [#21918](https://github.com/qmk/qmk_firmware/pull/21918), [#21929](https://github.com/qmk/qmk_firmware/pull/21929), [#21938](https://github.com/qmk/qmk_firmware/pull/21938), [#22004](https://github.com/qmk/qmk_firmware/pull/22004), [#22008](https://github.com/qmk/qmk_firmware/pull/22008), [#22009](https://github.com/qmk/qmk_firmware/pull/22009), [#22071](https://github.com/qmk/qmk_firmware/pull/22071), [#22090](https://github.com/qmk/qmk_firmware/pull/22090), [#22099](https://github.com/qmk/qmk_firmware/pull/22099), [#22126](https://github.com/qmk/qmk_firmware/pull/22126), [#22133](https://github.com/qmk/qmk_firmware/pull/22133), [#22163](https://github.com/qmk/qmk_firmware/pull/22163), [#22200](https://github.com/qmk/qmk_firmware/pull/22200), [#22308](https://github.com/qmk/qmk_firmware/pull/22308), [#22309](https://github.com/qmk/qmk_firmware/pull/22309), [#22311](https://github.com/qmk/qmk_firmware/pull/22311), [#22325](https://github.com/qmk/qmk_firmware/pull/22325), [#22365](https://github.com/qmk/qmk_firmware/pull/22365), [#22379](https://github.com/qmk/qmk_firmware/pull/22379), [#22380](https://github.com/qmk/qmk_firmware/pull/22380), [#22381](https://github.com/qmk/qmk_firmware/pull/22381), [#22383](https://github.com/qmk/qmk_firmware/pull/22383), [#22436](https://github.com/qmk/qmk_firmware/pull/22436)) As you can probably tell by the list of PRs just above, there has been a lot of cleanup and consolidation this cycle when it comes to RGB/LED lighting drivers. The number of changes is too large to list here, but the general theme has been focusing on consistency of naming, both of drivers themselves and their respective implementation and configuration. Most changes only affect keyboard designers -- if you find that your in-development keyboard is no longer building due to naming of defines changing, your best bet is to refer to another board already in the repository which has had the changes applied. -### Peripheral subsystem enabling ([#22253](https://github.com/qmk/qmk_firmware/pull/22253), [#22448](https://github.com/qmk/qmk_firmware/pull/22448), [#22106](https://github.com/qmk/qmk_firmware/pull/22106)) :id=peripheral-subsystem-enabling +### Peripheral subsystem enabling ([#22253](https://github.com/qmk/qmk_firmware/pull/22253), [#22448](https://github.com/qmk/qmk_firmware/pull/22448), [#22106](https://github.com/qmk/qmk_firmware/pull/22106)) {#peripheral-subsystem-enabling} When enabling peripherals such as I2C, SPI, or Analog/ADC, some required manual inclusion of source files in order to provide driver support, and in some cases, when multiple drivers were using the same underlying peripheral, files were being added to the build multiple times. @@ -125,11 +127,11 @@ For a concrete example, users or keyboard designers who previously added `SRC += | `UART_DRIVER_REQUIRED = yes` | `SRC += uart.c` | | `WS2812_DRIVER_REQUIRED = yes` | `SRC += ws2812.c` | -### NKRO on V-USB boards ([#22398](https://github.com/qmk/qmk_firmware/pull/22398)) :id=vusb-nkro +### NKRO on V-USB boards ([#22398](https://github.com/qmk/qmk_firmware/pull/22398)) {#vusb-nkro} NKRO is now available for ATmega32A and 328P-based keyboards (including PS2AVRGB/Bootmapper boards), thanks to some internal refactoring and cleanup. To enable it, the process is the same as always - add `NKRO_ENABLE = yes` to your `rules.mk`, then assign and press the `NK_TOGG` keycode to switch modes. -## Full changelist :id=full-changelist +## Full changelist {#full-changelist} Core: * Compilation warning if both `keymap.json` and `keymap.c` exist ([#19939](https://github.com/qmk/qmk_firmware/pull/19939)) diff --git a/docs/ChangeLog/20240225.md b/docs/ChangeLog/20240225.md index 779b7784900..f4103c594e0 100644 --- a/docs/ChangeLog/20240225.md +++ b/docs/ChangeLog/20240225.md @@ -1,6 +1,6 @@ # QMK Breaking Changes - 2024 February 25 Changelog -## Notable Features :id=notable-features +## Notable Features {#notable-features} _0.24.0_ is mainly a maintenance release of QMK Firmware -- as per last few breaking changes cycles, there have been a lot of behind-the-scenes changes, mainly: @@ -10,17 +10,17 @@ _0.24.0_ is mainly a maintenance release of QMK Firmware -- as per last few brea * keyboard relocations * addressing technical debt -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} ### Windows Driver Changes ([QMK Toolbox 0.3.0 Release](https://github.com/qmk/qmk_toolbox/releases/tag/0.3.0)) Flashing keyboards that target `atmel-dfu` or `qmk-dfu` on Windows using `qmk flash` or QMK Toolbox have traditionally used _libusb_ for access to the DFU USB device. Since QMK Toolbox 0.3.0, this has changed to WinUSB. -If you update QMK Toolbox or update QMK MSYS, you may find that flashing Atmel DFU keyboards no longer functions as intended. If you strike such issues when flashing new firmware, you will need to replace the _libusb_ driver with _WinUSB_ using Zadig. You can follow the [Recovering from Installation to Wrong Device](driver_installation_zadig.md#recovering-from-installation-to-wrong-device) instructions to replace the driver associated with the Atmel DFU bootloader, skipping the section about removal as Zadig will safely replace the driver instead. Please ensure your keyboard is in bootloader mode and has _libusb_ as the existing driver before attempting to use Zadig to replace the driver. If instead you see _HidUsb_ you're not in bootloader mode and should not continue with driver replacement. +If you update QMK Toolbox or update QMK MSYS, you may find that flashing Atmel DFU keyboards no longer functions as intended. If you strike such issues when flashing new firmware, you will need to replace the _libusb_ driver with _WinUSB_ using Zadig. You can follow the [Recovering from Installation to Wrong Device](../driver_installation_zadig#recovering-from-installation-to-wrong-device) instructions to replace the driver associated with the Atmel DFU bootloader, skipping the section about removal as Zadig will safely replace the driver instead. Please ensure your keyboard is in bootloader mode and has _libusb_ as the existing driver before attempting to use Zadig to replace the driver. If instead you see _HidUsb_ you're not in bootloader mode and should not continue with driver replacement. -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} -One note with updated keyboard names -- historical keyboard names are still considered valid when using [External Userspace](newbs_external_userspace.md) for builds. If you're already using External Userspace, you do not need to move your keymap inside your repository. +One note with updated keyboard names -- historical keyboard names are still considered valid when using [External Userspace](../newbs_external_userspace) for builds. If you're already using External Userspace, you do not need to move your keymap inside your repository. | Old Keyboard Name | New Keyboard Name | |-------------------------|---------------------------------| @@ -77,9 +77,9 @@ One note with updated keyboard names -- historical keyboard names are still cons | z12 | zigotica/z12 | | z34 | zigotica/z34 | -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} -### Renaming Arduino-style GPIO pin functions ([#23085](https://github.com/qmk/qmk_firmware/pull/23085), [#23093](https://github.com/qmk/qmk_firmware/pull/23093)) :id=gpio-rename +### Renaming Arduino-style GPIO pin functions ([#23085](https://github.com/qmk/qmk_firmware/pull/23085), [#23093](https://github.com/qmk/qmk_firmware/pull/23093)) {#gpio-rename} QMK has long used Arduino-style GPIO naming conventions. This has been confusing for users, as over time they've had new variations added, as well as users mistakenly thinking that QMK supports the rest of the Arduino ecosystem. @@ -110,17 +110,17 @@ Much like the GPIO refactoring, I2C APIs were also updated to conform to QMK nam | `i2c_writeReg()` | `i2c_write_register()` | | `i2c_writeReg16()` | `i2c_write_register16()` | -### Renaming _Bootmagic Lite_ => _Bootmagic_ ([#22970](https://github.com/qmk/qmk_firmware/pull/22970), [#22979](https://github.com/qmk/qmk_firmware/pull/22979)) :id=bootmagic-rename +### Renaming _Bootmagic Lite_ => _Bootmagic_ ([#22970](https://github.com/qmk/qmk_firmware/pull/22970), [#22979](https://github.com/qmk/qmk_firmware/pull/22979)) {#bootmagic-rename} Bootmagic "Lite" had no real meaning once the historical Bootmagic "Full" was deprecated and removed. Any references to _Bootmagic Lite_ should now just refer to _Bootmagic_. We hope we got the majority of the code and the documentation, so if you find any more, let us know! -### Threshold for automatic mouse layer activation ([#21398](https://github.com/qmk/qmk_firmware/pull/21398)) :id=auto-mouse-layer +### Threshold for automatic mouse layer activation ([#21398](https://github.com/qmk/qmk_firmware/pull/21398)) {#auto-mouse-layer} In some cases, accidental automatic activation of the mouse layer made it difficult to continue typing, such as when brushing across a trackball. `AUTO_MOUSE_THRESHOLD` is now a configurable option in `config.h` which allows for specifying what the movement threshold is before automatically activating the mouse layer. -### DIP Switch Mapping ([#22543](https://github.com/qmk/qmk_firmware/pull/22543)) :id=dip-switch-map +### DIP Switch Mapping ([#22543](https://github.com/qmk/qmk_firmware/pull/22543)) {#dip-switch-map} -Much like Encoder Mapping, DIP Switch Mapping allows for specifying a table of actions to execute when a DIP switch state changes. See the [DIP Switch Documentation](feature_dip_switch.md#dip-switch-map) for more information. +Much like Encoder Mapping, DIP Switch Mapping allows for specifying a table of actions to execute when a DIP switch state changes. See the [DIP Switch Documentation](../feature_dip_switch#dip-switch-map) for more information. ```c #if defined(DIP_SWITCH_MAP_ENABLE) @@ -131,7 +131,7 @@ const uint16_t PROGMEM dip_switch_map[NUM_DIP_SWITCHES][NUM_DIP_STATES] = { #endif ``` -### Quantum Painter updates ([#18521](https://github.com/qmk/qmk_firmware/pull/18521), [#20645](https://github.com/qmk/qmk_firmware/pull/20645), [#22358](https://github.com/qmk/qmk_firmware/pull/22358)) :id=qp-updates +### Quantum Painter updates ([#18521](https://github.com/qmk/qmk_firmware/pull/18521), [#20645](https://github.com/qmk/qmk_firmware/pull/20645), [#22358](https://github.com/qmk/qmk_firmware/pull/22358)) {#qp-updates} Quantum Painter picked up support for the following: @@ -141,7 +141,7 @@ Quantum Painter picked up support for the following: Quantum Painter now supports the majority of common OLED panels supported by the basic OLED driver, so if you're using an ARM-based board you may find Quantum Painter a much more feature-rich API in comparison. -## Full changelist :id=full-changelist +## Full changelist {#full-changelist} Core: * [Driver] ILI9486 on Quantum Painter ([#18521](https://github.com/qmk/qmk_firmware/pull/18521)) diff --git a/docs/ChangeLog/20240526.md b/docs/ChangeLog/20240526.md index 4cf185234ce..b5e5b3b6938 100644 --- a/docs/ChangeLog/20240526.md +++ b/docs/ChangeLog/20240526.md @@ -1,14 +1,14 @@ # QMK Breaking Changes - 2024 May 26 Changelog -## Notable Features :id=notable-features +## Notable Features {#notable-features} May 2024 brings about another heavy maintenance release of QMK. Of the 209 PRs created this breaking changes cycle against the `develop` branch, 174 behind-the-scenes PRs (83%!) were aimed at converting, consolidating, and cleaning up keyboards and their configuration data. Not the most glamorous work, but it means QMK is in a much more manageable spot than what it was 3 months prior. The work steadily continues! -## Changes Requiring User Action :id=changes-requiring-user-action +## Changes Requiring User Action {#changes-requiring-user-action} -### Updated Keyboard Codebases :id=updated-keyboard-codebases +### Updated Keyboard Codebases {#updated-keyboard-codebases} -One note with updated keyboard names -- historical keyboard names are still considered valid when using [External Userspace](newbs_external_userspace.md) for builds. If you're already using External Userspace, you do not need to move your keymap inside your repository. +One note with updated keyboard names -- historical keyboard names are still considered valid when using [External Userspace](../newbs_external_userspace) for builds. If you're already using External Userspace, you do not need to move your keymap inside your repository. | Old Keyboard Name | New Keyboard Name | |------------------------------|-----------------------------------| @@ -40,7 +40,7 @@ A bunch of legacy keycodes have been removed -- check [the affected keycodes](ht The latest of these were officially deprecated within QMK in the August 2023 breaking changes -- the new keycodes are the way forward. -### P3D Spacey Layout Updates ([#23329](https://github.com/qmk/qmk_firmware/pull/23329)) :id=spacey-layout-updates +### P3D Spacey Layout Updates ([#23329](https://github.com/qmk/qmk_firmware/pull/23329)) {#spacey-layout-updates} This PR removed the `LAYOUT` macro that was configured for the Spacey. If you have a keymap for this keyboard, you will need to update your @@ -54,7 +54,7 @@ keymap using the following steps: 4. Move the keycode for the Right Arrow to the end of the Shift row, after the Down Arrow key. -### MechKeys ACR60 Layout Updates ([#23309](https://github.com/qmk/qmk_firmware/pull/23309)) :id=acr60-layout-updates +### MechKeys ACR60 Layout Updates ([#23309](https://github.com/qmk/qmk_firmware/pull/23309)) {#acr60-layout-updates} This PR removed and changed some of the layouts that were configured for the ACR60. If you use one of the following layouts, you will need to update your keymap: @@ -63,17 +63,17 @@ This PR removed and changed some of the layouts that were configured for the ACR - [`LAYOUT_directional`](#layout-directional) - [`LAYOUT_mitchsplit`](#layout-mitchsplit) -#### `LAYOUT_hhkb` :id=acr60-layout-hhkb +#### `LAYOUT_hhkb` {#acr60-layout-hhkb} 1. Change your layout macro to `LAYOUT_60_hhkb`. 1. Remove any keycodes for the key between Left Shift and QWERTY Z. -#### `LAYOUT_true_hhkb` :id=acr60-layout-true-hhkb +#### `LAYOUT_true_hhkb` {#acr60-layout-true-hhkb} 1. Change your layout macro to `LAYOUT_60_true_hhkb`. 1. Remove any keycodes for the key between Left Shift and QWERTY Z. -#### `LAYOUT_directional` :id=acr60-layout-directional +#### `LAYOUT_directional` {#acr60-layout-directional} 1. Change your layout macro to `LAYOUT_60_ansi_arrow_split_bs`. 1. Remove any keycodes for the key between Left Shift and QWERTY Z. @@ -81,16 +81,16 @@ This PR removed and changed some of the layouts that were configured for the ACR If you need split spacebars, you may implement `LAYOUT_60_ansi_arrow_split_space_split_bs` and change your layout to it, removing the keycode between Left Shift and QWERTY Z. -#### `LAYOUT_mitchsplit` :id=acr60-layout-mitchsplit +#### `LAYOUT_mitchsplit` {#acr60-layout-mitchsplit} 1. Use `LAYOUT_60_ansi_split_space_split_rshift`. -## Notable core changes :id=notable-core +## Notable core changes {#notable-core} -### Introduction of `keyboard.json` ([22891](https://github.com/qmk/qmk_firmware/pull/22891)) :id=keyboard-json +### Introduction of `keyboard.json` ([22891](https://github.com/qmk/qmk_firmware/pull/22891)) {#keyboard-json} One longer term goal of QMK is increased maintainability. -As part of the continued push towards [Data Driven Configuration](data_driven_config.md), the build system has been updated to simplify the existing codebase, and power future workflows. +As part of the continued push towards [Data Driven Configuration](../data_driven_config), the build system has been updated to simplify the existing codebase, and power future workflows. The `keyboard.json` configuration file allows the support of a single data file for keyboard level config. @@ -109,7 +109,7 @@ Essentially, changes were made in the internals of how QMK interacts with USB fo Compliance checks were run against QMK firmwares for the most popular ARM microcontrollers, as well as suspend/resume tests. As far as we can tell, a whole host of hard-to-reproduce issues are mitigated by this change. -## Full changelist :id=full-changelist +## Full changelist {#full-changelist} Core: * Refactor vusb to protocol use pre/post task ([#14944](https://github.com/qmk/qmk_firmware/pull/14944)) diff --git a/docs/__capabilities.md b/docs/__capabilities.md index 71183ed7608..e28b9289706 100644 --- a/docs/__capabilities.md +++ b/docs/__capabilities.md @@ -6,8 +6,6 @@ This page lays out the capabilities used by the QMK Firmware documentation, in o Unrelated to styling, high-level tech. -* I18n -- translations to other languages: [_langs.md](_langs.md) -* Sidebar -- listing of pages by category: [_summary.md](_summary.md) * Title anchors -- `:id=some-anchor-name`, used for direct linking to sections * Links to anchors: * Style 1: [early initialization](platformdev_chibios_earlyinit.md?id=board-init) @@ -40,7 +38,10 @@ Unrelated to styling, high-level tech. ![QMK Color Wheel with HSV Values](https://i.imgur.com/vkYVo66.jpg) -HSV Color Wheel +![QMK Light](./public/badge-community-light.svg) +![QMK Dark](./public/badge-community-dark.svg) + +HSV Color Wheel ### Lists @@ -126,6 +127,26 @@ Command+` !> Notification, damnit! +::: info +This is an info box. +::: + +::: tip +This is a tip. +::: + +::: warning +This is a warning. +::: + +::: danger +This is a dangerous warning. +::: + +::: details +This is a details block. +::: + ### Keyboard keys , @@ -242,6 +263,20 @@ Content three +::::tabs +=== tab a +a content 2 +=== tab b +b content 2 +=== tab c +:::tabs +== nested tab a +nested a content 2 +== nested tab b +nested b content 2 +::: +:::: + ## Details sections Expandable: @@ -254,8 +289,10 @@ Expandable: This is some inner content. - [1]: https://en.wikipedia.org/wiki/Eclipse_(software) - ## Embed [example embed](__capabilities_inc.md ':include') + + + + [1]: https://en.wikipedia.org/wiki/Eclipse_(software) diff --git a/docs/_langs.md b/docs/_langs.md deleted file mode 100644 index 8b08c345137..00000000000 --- a/docs/_langs.md +++ /dev/null @@ -1,4 +0,0 @@ -- Translations - - [:uk: English](/) - - [:cn: 简体中文](/zh-cn/) - - [:jp: 日本語](/ja/) diff --git a/docs/_sidebar.json b/docs/_sidebar.json new file mode 100644 index 00000000000..f1b7c156e6e --- /dev/null +++ b/docs/_sidebar.json @@ -0,0 +1,309 @@ +[ + { + "text": "Tutorial", + "items": [ + { "text": "Introduction", "link": "/newbs" }, + { "text": "Setup", "link": "/newbs_getting_started" }, + { "text": "Building Your First Firmware", "link": "/newbs_building_firmware" }, + { "text": "Flashing Firmware", "link": "/newbs_flashing" }, + { "text": "Getting Help/Support", "link": "/support" }, + { "text": "External Userspace", "link": "/newbs_external_userspace" }, + { "text": "Other Resources", "link": "/newbs_learn_more_resources" }, + { "text": "Syllabus", "link": "/syllabus" } + ] + }, + { + "text": "FAQs", + "items": [ + { "text": "General FAQ", "link": "/faq_general" }, + { "text": "Build/Compile QMK", "link": "/faq_build" }, + { "text": "Troubleshooting QMK", "link": "/faq_misc" }, + { "text": "Debugging QMK", "link": "/faq_debug" }, + { "text": "Keymap FAQ", "link": "/faq_keymap" }, + { "text": "Squeezing Space from AVR", "link": "/squeezing_avr" }, + { "text": "Glossary", "link": "/reference_glossary" } + ] + }, + { + "text": "Configurator", + "items": [ + { "text": "Overview", "link": "/newbs_building_firmware_configurator" }, + { "text": "Step by Step", "link": "/configurator_step_by_step" }, + { "text": "Troubleshooting", "link": "/configurator_troubleshooting" }, + { "text": "Architecture", "link": "/configurator_architecture" }, + { + "text": "QMK API", + "items": [ + { "text": "Overview", "link": "/api_overview" }, + { "text": "API Documentation", "link": "/api_docs" }, + { "text": "Keyboard Support", "link": "/reference_configurator_support" }, + { "text": "Adding Default Keymaps", "link": "/configurator_default_keymaps" } + ] + } + ] + }, + { + "text": "CLI", + "items": [ + { "text": "Overview", "link": "/cli" }, + { "text": "Configuration", "link": "/cli_configuration" }, + { "text": "Commands", "link": "/cli_commands" }, + { "text": "Tab Completion", "link": "/cli_tab_complete" } + ] + }, + { + "text": "Using QMK", + "items": [ + { + "text": "Guides", + "items": [ + { "text": "Customizing Functionality", "link": "/custom_quantum_functions" }, + { "text": "Driver Installation with Zadig", "link": "/driver_installation_zadig" }, + { "text": "Keymap Overview", "link": "/keymap" }, + { + "text": "Development Environments", + "items": [{ "text": "Docker Guide", "link": "/getting_started_docker" }] + }, + { + "text": "Flashing", + "items": [ + { "text": "Flashing", "link": "/flashing" }, + { "text": "Flashing ATmega32A (ps2avrgb)", "link": "/flashing_bootloadhid" } + ] + }, + { + "text": "IDEs", + "items": [ + { "text": "Using Eclipse with QMK", "link": "/other_eclipse" }, + { "text": "Using VSCode with QMK", "link": "/other_vscode" } + ] + }, + { + "text": "Git Best Practices", + "items": [ + { "text": "Introduction", "link": "/newbs_git_best_practices" }, + { "text": "Your Fork", "link": "/newbs_git_using_your_master_branch" }, + { "text": "Merge Conflicts", "link": "/newbs_git_resolving_merge_conflicts" }, + { "text": "Fixing Your Branch", "link": "/newbs_git_resynchronize_a_branch" } + ] + } + ] + }, + { + "text": "Simple Keycodes", + "items": [ + { "text": "Full List", "link": "/keycodes" }, + { "text": "Basic Keycodes", "link": "/keycodes_basic" }, + { "text": "Language-Specific Keycodes", "link": "/reference_keymap_extras" }, + { "text": "Modifier Keys", "link": "/feature_advanced_keycodes" }, + { "text": "Quantum Keycodes", "link": "/quantum_keycodes" }, + { "text": "Magic Keycodes", "link": "/keycodes_magic" } + ] + }, + { + "text": "Advanced Keycodes", + "items": [ + { "text": "Command", "link": "/feature_command" }, + { "text": "Dynamic Macros", "link": "/feature_dynamic_macros" }, + { "text": "Grave Escape", "link": "/feature_grave_esc" }, + { "text": "Leader Key", "link": "/feature_leader_key" }, + { "text": "Mod-Tap", "link": "/mod_tap" }, + { "text": "Macros", "link": "/feature_macros" }, + { "text": "Mouse Keys", "link": "/feature_mouse_keys" }, + { "text": "Programmable Button", "link": "/feature_programmable_button" }, + { "text": "Repeat Key", "link": "/feature_repeat_key" }, + { "text": "Space Cadet Shift", "link": "/feature_space_cadet" }, + { "text": "US ANSI Shifted Keys", "link": "/keycodes_us_ansi_shifted" } + ] + }, + { + "text": "Software Features", + "items": [ + { "text": "Auto Shift", "link": "/feature_auto_shift" }, + { "text": "Autocorrect", "link": "/feature_autocorrect" }, + { "text": "Caps Word", "link": "/feature_caps_word" }, + { "text": "Combos", "link": "/feature_combo" }, + { "text": "Debounce API", "link": "/feature_debounce_type" }, + { "text": "Digitizer", "link": "/feature_digitizer" }, + { "text": "EEPROM", "link": "/feature_eeprom" }, + { "text": "Key Lock", "link": "/feature_key_lock" }, + { "text": "Key Overrides", "link": "/feature_key_overrides" }, + { "text": "Layers", "link": "/feature_layers" }, + { "text": "One Shot Keys", "link": "/one_shot_keys" }, + { "text": "OS Detection", "link": "/feature_os_detection" }, + { "text": "Raw HID", "link": "/feature_rawhid" }, + { "text": "Secure", "link": "/feature_secure" }, + { "text": "Send String", "link": "/feature_send_string" }, + { "text": "Sequencer", "link": "/feature_sequencer" }, + { "text": "Swap Hands", "link": "/feature_swap_hands" }, + { "text": "Tap Dance", "link": "/feature_tap_dance" }, + { "text": "Tap-Hold Configuration", "link": "/tap_hold" }, + { "text": "Tri Layer", "link": "/feature_tri_layer" }, + { "text": "Unicode", "link": "/feature_unicode" }, + { "text": "Userspace", "link": "/feature_userspace" }, + { "text": "WPM Calculation", "link": "/feature_wpm" } + ] + }, + { + "text": "Hardware Features", + "items": [ + { + "text": "Displays", + "items": [ + { + "text": "Quantum Painter", + "link": "quantum_painter", + "items": [ + { "text": "Quantum Painter LVGL Integration", "link": "/quantum_painter_lvgl" } + ] + }, + { "text": "HD44780 LCD Driver", "link": "/feature_hd44780" }, + { "text": "ST7565 LCD Driver", "link": "/feature_st7565" }, + { "text": "OLED Driver", "link": "/feature_oled_driver" } + ] + }, + { + "text": "Lighting", + "items": [ + { "text": "Backlight", "link": "/feature_backlight" }, + { "text": "LED Matrix", "link": "/feature_led_matrix" }, + { "text": "RGB Lighting", "link": "/feature_rgblight" }, + { "text": "RGB Matrix", "link": "/feature_rgb_matrix" } + ] + }, + { "text": "Audio", "link": "/feature_audio" }, + { "text": "Bluetooth", "link": "/feature_bluetooth" }, + { "text": "Bootmagic Lite", "link": "/feature_bootmagic" }, + { "text": "Converters", "link": "/feature_converters" }, + { "text": "Custom Matrix", "link": "/custom_matrix" }, + { "text": "DIP Switch", "link": "/feature_dip_switch" }, + { "text": "Encoders", "link": "/feature_encoders" }, + { "text": "Haptic Feedback", "link": "/feature_haptic_feedback" }, + { "text": "Joystick", "link": "/feature_joystick" }, + { "text": "LED Indicators", "link": "/feature_led_indicators" }, + { "text": "MIDI", "link": "/feature_midi" }, + { "text": "Pointing Device", "link": "/feature_pointing_device" }, + { "text": "PS/2 Mouse", "link": "/feature_ps2_mouse" }, + { "text": "Split Keyboard", "link": "/feature_split_keyboard" }, + { "text": "Stenography", "link": "/feature_stenography" } + ] + }, + { + "text": "Keyboard Building", + "items": [ + { "text": "Easy Maker for One Offs", "link": "/easy_maker" }, + { "text": "Porting Keyboards", "link": "/porting_your_keyboard_to_qmk" }, + { "text": "Hand Wiring Guide", "link": "/hand_wire" }, + { "text": "ISP Flashing Guide", "link": "/isp_flashing_guide" } + ] + } + ] + }, + { + "text": "Developing QMK", + "items": [ + { "text": "PR Checklist", "link": "/pr_checklist" }, + { + "text": "Breaking Changes", + "items": [ + { "text": "Overview", "link": "/breaking_changes" }, + { "text": "My Pull Request Was Flagged", "link": "/breaking_changes_instructions" }, + { + "text": "Most Recent ChangeLog", + "link": "/ChangeLog/20240526" + }, + { "text": "Past Breaking Changes", "link": "/breaking_changes_history" } + ] + }, + + { + "text": "C Development", + "items": [ + { "text": "ARM Debugging Guide", "link": "/arm_debugging" }, + { "text": "Coding Conventions", "link": "/coding_conventions_c" }, + { "text": "Compatible Microcontrollers", "link": "/compatible_microcontrollers" }, + { + "text": "Drivers", + "link": "hardware_drivers", + "items": [ + { "text": "ADC Driver", "link": "/adc_driver" }, + { "text": "APA102 Driver", "link": "/apa102_driver" }, + { "text": "Audio Driver", "link": "/audio_driver" }, + { "text": "I2C Driver", "link": "/i2c_driver" }, + { "text": "SPI Driver", "link": "/spi_driver" }, + { "text": "WS2812 Driver", "link": "/ws2812_driver" }, + { "text": "EEPROM Driver", "link": "/eeprom_driver" }, + { "text": "Flash Driver", "link": "/flash_driver" }, + { "text": "'serial' Driver", "link": "/serial_driver" }, + { "text": "UART Driver", "link": "/uart_driver" } + ] + }, + { "text": "GPIO Controls", "link": "/gpio_control" }, + { "text": "Keyboard Guidelines", "link": "/hardware_keyboard_guidelines" } + ] + }, + + { + "text": "Python Development", + "items": [ + { "text": "Coding Conventions", "link": "/coding_conventions_python" }, + { "text": "QMK CLI Development", "link": "/cli_development" } + ] + }, + + { + "text": "Configurator Development", + "items": [ + { + "text": "QMK API", + "items": [ + { "text": "Development Environment", "link": "/api_development_environment" }, + { "text": "Architecture Overview", "link": "/api_development_overview" } + ] + } + ] + }, + + { + "text": "Hardware Platform Development", + "items": [ + { + "text": "Arm/ChibiOS", + "items": [ + { "text": "Selecting an MCU", "link": "/platformdev_selecting_arm_mcu" }, + { "text": "Early initialization", "link": "/platformdev_chibios_earlyinit" }, + { "text": "Raspberry Pi RP2040", "link": "/platformdev_rp2040" }, + { "text": "Proton C", "link": "/platformdev_proton_c" }, + { "text": "WeAct Blackpill F4x1", "link": "/platformdev_blackpill_f4x1" } + ] + } + ] + }, + + { + "text": "QMK Reference", + "items": [ + { "text": "Contributing to QMK", "link": "/contributing" }, + { "text": "Config Options", "link": "/config_options" }, + { "text": "Data Driven Configuration", "link": "/data_driven_config" }, + { "text": "Make Documentation", "link": "/getting_started_make_guide" }, + { "text": "Documentation Best Practices", "link": "/documentation_best_practices" }, + { "text": "Documentation Templates", "link": "/documentation_templates" }, + { "text": "Community Layouts", "link": "/feature_layouts" }, + { "text": "Unit Testing", "link": "/unit_testing" }, + { "text": "Useful Functions", "link": "/ref_functions" }, + { "text": "info.json Format", "link": "/reference_info_json" } + ] + }, + + { + "text": "For a Deeper Understanding", + "items": [ + { "text": "How Keyboards Work", "link": "/how_keyboards_work" }, + { "text": "How a Matrix Works", "link": "/how_a_matrix_works" }, + { "text": "Understanding QMK", "link": "/understanding_qmk" } + ] + } + ] + } +] diff --git a/docs/_summary.md b/docs/_summary.md deleted file mode 100644 index adf48cec85d..00000000000 --- a/docs/_summary.md +++ /dev/null @@ -1,204 +0,0 @@ -* Tutorial - * [Introduction](newbs.md) - * [Setup](newbs_getting_started.md) - * [Building Your First Firmware](newbs_building_firmware.md) - * [Flashing Firmware](newbs_flashing.md) - * [Getting Help/Support](support.md) - * [External Userspace](newbs_external_userspace.md) - * [Other Resources](newbs_learn_more_resources.md) - * [Syllabus](syllabus.md) - -* FAQs - * [General FAQ](faq_general.md) - * [Build/Compile QMK](faq_build.md) - * [Troubleshooting QMK](faq_misc.md) - * [Debugging QMK](faq_debug.md) - * [Keymap FAQ](faq_keymap.md) - * [Squeezing Space from AVR](squeezing_avr.md) - * [Glossary](reference_glossary.md) - -* Configurator - * [Overview](newbs_building_firmware_configurator.md) - * [Step by Step](configurator_step_by_step.md) - * [Troubleshooting](configurator_troubleshooting.md) - * [Architecture](configurator_architecture.md) - * QMK API - * [Overview](api_overview.md) - * [API Documentation](api_docs.md) - * [Keyboard Support](reference_configurator_support.md) - * [Adding Default Keymaps](configurator_default_keymaps.md) - -* CLI - * [Overview](cli.md) - * [Configuration](cli_configuration.md) - * [Commands](cli_commands.md) - * [Tab Completion](cli_tab_complete.md) - -* Using QMK - * Guides - * [Customizing Functionality](custom_quantum_functions.md) - * [Driver Installation with Zadig](driver_installation_zadig.md) - * [Keymap Overview](keymap.md) - * Development Environments - * [Docker Guide](getting_started_docker.md) - * Flashing - * [Flashing](flashing.md) - * [Flashing ATmega32A (ps2avrgb)](flashing_bootloadhid.md) - * IDEs - * [Using Eclipse with QMK](other_eclipse.md) - * [Using VSCode with QMK](other_vscode.md) - * Git Best Practices - * [Introduction](newbs_git_best_practices.md) - * [Your Fork](newbs_git_using_your_master_branch.md) - * [Merge Conflicts](newbs_git_resolving_merge_conflicts.md) - * [Fixing Your Branch](newbs_git_resynchronize_a_branch.md) - - * Simple Keycodes - * [Full List](keycodes.md) - * [Basic Keycodes](keycodes_basic.md) - * [Language-Specific Keycodes](reference_keymap_extras.md) - * [Modifier Keys](feature_advanced_keycodes.md) - * [Quantum Keycodes](quantum_keycodes.md) - * [Magic Keycodes](keycodes_magic.md) - - * Advanced Keycodes - * [Command](feature_command.md) - * [Dynamic Macros](feature_dynamic_macros.md) - * [Grave Escape](feature_grave_esc.md) - * [Leader Key](feature_leader_key.md) - * [Mod-Tap](mod_tap.md) - * [Macros](feature_macros.md) - * [Mouse Keys](feature_mouse_keys.md) - * [Programmable Button](feature_programmable_button.md) - * [Repeat Key](feature_repeat_key.md) - * [Space Cadet Shift](feature_space_cadet.md) - * [US ANSI Shifted Keys](keycodes_us_ansi_shifted.md) - - * Software Features - * [Auto Shift](feature_auto_shift.md) - * [Autocorrect](feature_autocorrect.md) - * [Caps Word](feature_caps_word.md) - * [Combos](feature_combo.md) - * [Debounce API](feature_debounce_type.md) - * [Digitizer](feature_digitizer.md) - * [EEPROM](feature_eeprom.md) - * [Key Lock](feature_key_lock.md) - * [Key Overrides](feature_key_overrides.md) - * [Layers](feature_layers.md) - * [One Shot Keys](one_shot_keys.md) - * [OS Detection](feature_os_detection.md) - * [Raw HID](feature_rawhid.md) - * [Secure](feature_secure.md) - * [Send String](feature_send_string.md) - * [Sequencer](feature_sequencer.md) - * [Swap Hands](feature_swap_hands.md) - * [Tap Dance](feature_tap_dance.md) - * [Tap-Hold Configuration](tap_hold.md) - * [Tri Layer](feature_tri_layer.md) - * [Unicode](feature_unicode.md) - * [Userspace](feature_userspace.md) - * [WPM Calculation](feature_wpm.md) - - * Hardware Features - * Displays - * [Quantum Painter](quantum_painter.md) - * [Quantum Painter LVGL Integration](quantum_painter_lvgl.md) - * [HD44780 LCD Driver](feature_hd44780.md) - * [ST7565 LCD Driver](feature_st7565.md) - * [OLED Driver](feature_oled_driver.md) - * Lighting - * [Backlight](feature_backlight.md) - * [LED Matrix](feature_led_matrix.md) - * [RGB Lighting](feature_rgblight.md) - * [RGB Matrix](feature_rgb_matrix.md) - * [Audio](feature_audio.md) - * [Bluetooth](feature_bluetooth.md) - * [Bootmagic Lite](feature_bootmagic.md) - * [Converters](feature_converters.md) - * [Custom Matrix](custom_matrix.md) - * [DIP Switch](feature_dip_switch.md) - * [Encoders](feature_encoders.md) - * [Haptic Feedback](feature_haptic_feedback.md) - * [Joystick](feature_joystick.md) - * [LED Indicators](feature_led_indicators.md) - * [MIDI](feature_midi.md) - * [Pointing Device](feature_pointing_device.md) - * [PS/2 Mouse](feature_ps2_mouse.md) - * [Split Keyboard](feature_split_keyboard.md) - * [Stenography](feature_stenography.md) - - * Keyboard Building - * [Easy Maker for One Offs](easy_maker.md) - * [Porting Keyboards](porting_your_keyboard_to_qmk.md) - * [Hand Wiring Guide](hand_wire.md) - * [ISP Flashing Guide](isp_flashing_guide.md) - -* Developing QMK - * [PR Checklist](pr_checklist.md) - * Breaking Changes - * [Overview](breaking_changes.md) - * [My Pull Request Was Flagged](breaking_changes_instructions.md) - * [Most Recent ChangeLog](ChangeLog/20240526.md "QMK v0.25.0 - 2024 May 26") - * [Past Breaking Changes](breaking_changes_history.md) - - * C Development - * [ARM Debugging Guide](arm_debugging.md) - * [Coding Conventions](coding_conventions_c.md) - * [Compatible Microcontrollers](compatible_microcontrollers.md) - * [Drivers](hardware_drivers.md) - * [ADC Driver](adc_driver.md) - * [APA102 Driver](apa102_driver.md) - * [Audio Driver](audio_driver.md) - * [I2C Driver](i2c_driver.md) - * [SPI Driver](spi_driver.md) - * [WS2812 Driver](ws2812_driver.md) - * [EEPROM Driver](eeprom_driver.md) - * [Flash Driver](flash_driver.md) - * ['serial' Driver](serial_driver.md) - * [UART Driver](uart_driver.md) - * [GPIO Controls](gpio_control.md) - * [Keyboard Guidelines](hardware_keyboard_guidelines.md) - - * Python Development - * [Coding Conventions](coding_conventions_python.md) - * [QMK CLI Development](cli_development.md) - - * Configurator Development - * QMK API - * [Development Environment](api_development_environment.md) - * [Architecture Overview](api_development_overview.md) - - * Hardware Platform Development - * Arm/ChibiOS - * [Selecting an MCU](platformdev_selecting_arm_mcu.md) - * [Early initialization](platformdev_chibios_earlyinit.md) - * [Raspberry Pi RP2040](platformdev_rp2040.md) - * [Proton C](platformdev_proton_c.md) - * [WeAct Blackpill F4x1](platformdev_blackpill_f4x1.md) - - * QMK Reference - * [Contributing to QMK](contributing.md) - * [Translating the QMK Docs](translating.md) - * [Config Options](config_options.md) - * [Data Driven Configuration](data_driven_config.md) - * [Make Documentation](getting_started_make_guide.md) - * [Documentation Best Practices](documentation_best_practices.md) - * [Documentation Templates](documentation_templates.md) - * [Community Layouts](feature_layouts.md) - * [Unit Testing](unit_testing.md) - * [Useful Functions](ref_functions.md) - * [info.json Format](reference_info_json.md) - - * For a Deeper Understanding - * [How Keyboards Work](how_keyboards_work.md) - * [How a Matrix Works](how_a_matrix_works.md) - * [Understanding QMK](understanding_qmk.md) - - * QMK Internals (In Progress) - * [Defines](internals/defines.md) - * [Input Callback Reg](internals/input_callback_reg.md) - * [Midi Device](internals/midi_device.md) - * [Midi Device Setup Process](internals/midi_device_setup_process.md) - * [Midi Util](internals/midi_util.md) - * [Send Functions](internals/send_functions.md) - * [Sysex Tools](internals/sysex_tools.md) diff --git a/docs/adc_driver.md b/docs/adc_driver.md index dd928e1e7f0..a1ab5a52513 100644 --- a/docs/adc_driver.md +++ b/docs/adc_driver.md @@ -1,6 +1,6 @@ # ADC Driver -QMK can leverage the Analog-to-Digital Converter (ADC) on supported MCUs to measure voltages on certain pins. This can be useful for implementing things such as battery level indicators for Bluetooth keyboards, or volume controls using a potentiometer, as opposed to a [rotary encoder](feature_encoders.md). +QMK can leverage the Analog-to-Digital Converter (ADC) on supported MCUs to measure voltages on certain pins. This can be useful for implementing things such as battery level indicators for Bluetooth keyboards, or volume controls using a potentiometer, as opposed to a [rotary encoder](feature_encoders). This driver currently supports both AVR and a limited selection of ARM devices. The values returned are 10-bit integers (0-1023) mapped between 0V and VCC (usually 5V or 3.3V for AVR, 3.3V only for ARM), however on ARM there is more flexibility in control of operation through `#define`s if you need more precision. diff --git a/docs/apa102_driver.md b/docs/apa102_driver.md index 1da2de6ca35..0f905e3f181 100644 --- a/docs/apa102_driver.md +++ b/docs/apa102_driver.md @@ -1,10 +1,10 @@ -# APA102 Driver :id=apa102-driver +# APA102 Driver {#apa102-driver} -This driver provides support for APA102 addressable RGB LEDs. They are similar to the [WS2812](ws2812_driver.md) LEDs, but have increased data and refresh rates. +This driver provides support for APA102 addressable RGB LEDs. They are similar to the [WS2812](ws2812_driver) LEDs, but have increased data and refresh rates. -## Usage :id=usage +## Usage {#usage} -In most cases, the APA102 driver code is automatically included if you are using either the [RGBLight](feature_rgblight.md) or [RGB Matrix](feature_rgb_matrix.md) feature with the `apa102` driver set, and you would use those APIs instead. +In most cases, the APA102 driver code is automatically included if you are using either the [RGBLight](feature_rgblight) or [RGB Matrix](feature_rgb_matrix) feature with the `apa102` driver set, and you would use those APIs instead. However, if you need to use the driver standalone, add the following to your `rules.mk`: @@ -14,7 +14,7 @@ APA102_DRIVER_REQUIRED = yes You can then call the APA102 API by including `apa102.h` in your code. -## Basic Configuration :id=basic-configuration +## Basic Configuration {#basic-configuration} Add the following to your `config.h`: @@ -24,13 +24,13 @@ Add the following to your `config.h`: |`APA102_CI_PIN` |*Not defined*|The GPIO pin connected to the CI pin of the first LED in the chain| |`APA102_DEFAULT_BRIGHTNESS`|`31` |The default global brightness level of the LEDs, from 0 to 31 | -## API :id=api +## API {#api} ### `void apa102_setleds(rgb_led_t *start_led, uint16_t num_leds)` Send RGB data to the APA102 LED chain. -#### Arguments :id=api-apa102-setleds-arguments +#### Arguments {#api-apa102-setleds-arguments} - `rgb_led_t *start_led` A pointer to the LED array. @@ -43,7 +43,7 @@ Send RGB data to the APA102 LED chain. Set the global brightness. -#### Arguments :id=api-apa102-set-brightness-arguments +#### Arguments {#api-apa102-set-brightness-arguments} - `uint8_t brightness` The brightness level to set, from 0 to 31. diff --git a/docs/api_docs.md b/docs/api_docs.md index 3324bc545bc..f4ba19c42a0 100644 --- a/docs/api_docs.md +++ b/docs/api_docs.md @@ -67,7 +67,7 @@ Once your compile job has finished you'll check the `result` key. The value of t * `firmware_source_url`: A list of URLs for the full firmware source code * `output`: The stdout and stderr for this compile job. Errors will be found here. -## Constants :id=qmk-constants +## Constants {#qmk-constants} If you're writing a tool that leverages constants used within QMK, the API is used to publish "locked-in" versions of those constants in order to ensure that any third-party tooling has a canonical set of information to work with. @@ -81,9 +81,13 @@ $ curl https://keyboards.develop.qmk.fm/v1/constants_metadata.json # For `develo {"last_updated": "2022-11-26 12:00:00 GMT", "constants": {"keycodes": ["0.0.1", "0.0.2"]}} ``` -!> Versions exported by the `master` endpoint are locked-in. Any extra versions that exist on the `develop` endpoint which don't exist in `master` are subject to change. +::: warning +Versions exported by the `master` endpoint are locked-in. Any extra versions that exist on the `develop` endpoint which don't exist in `master` are subject to change. +::: -?> Only keycodes are currently published, but over time all other "externally visible" IDs are expected to appear on these endpoints. +::: tip +Only keycodes are currently published, but over time all other "externally visible" IDs are expected to appear on these endpoints. +::: To retrieve the constants associated with a subsystem, the endpoint format is as follows: ``` diff --git a/docs/api_overview.md b/docs/api_overview.md index f851a48a4af..c8ec42e9476 100644 --- a/docs/api_overview.md +++ b/docs/api_overview.md @@ -4,12 +4,12 @@ The QMK API provides an asynchronous API that Web and GUI tools can use to compi ## App Developers -If you are an app developer interested in using this API in your application you should head over to [Using The API](api_docs.md). +If you are an app developer interested in using this API in your application you should head over to [Using The API](api_docs). ## Keyboard Maintainers -If you would like to enhance your keyboard's support in the QMK Compiler API head over to the [Keyboard Support](reference_configurator_support.md) section. +If you would like to enhance your keyboard's support in the QMK Compiler API head over to the [Keyboard Support](reference_configurator_support) section. ## Backend Developers -If you are interested in working on the API itself you should start by setting up a [Development Environment](api_development_environment.md), then check out [Hacking On The API](api_development_overview.md). +If you are interested in working on the API itself you should start by setting up a [Development Environment](api_development_environment), then check out [Hacking On The API](api_development_overview). diff --git a/docs/audio_driver.md b/docs/audio_driver.md index 03c0a824dfe..4a71b4f411c 100644 --- a/docs/audio_driver.md +++ b/docs/audio_driver.md @@ -1,11 +1,11 @@ -# Audio Driver :id=audio-driver +# Audio Driver {#audio-driver} -The [Audio feature](feature_audio.md) breaks the hardware specifics out into separate, exchangeable driver units, with a common interface to the audio-"core" - which itself handles playing songs and notes while tracking their progress in an internal state, initializing/starting/stopping the driver as needed. +The [Audio feature](feature_audio) breaks the hardware specifics out into separate, exchangeable driver units, with a common interface to the audio-"core" - which itself handles playing songs and notes while tracking their progress in an internal state, initializing/starting/stopping the driver as needed. Not all MCUs support every available driver, either the platform-support is not there (yet?) or the MCU simply does not have the required hardware peripheral. -## AVR :id=avr +## AVR {#avr} Boards built around an Atmega32U4 can use two sets of PWM capable pins, each driving a separate speaker. The possible configurations are: @@ -23,7 +23,7 @@ AUDIO_DRIVER = pwm_hardware ``` -## ARM :id=arm +## ARM {#arm} For Arm based boards, QMK depends on ChibiOS - hence any MCU supported by the later is likely usable, as long as certain hardware peripherals are available. @@ -50,7 +50,7 @@ piezo speakers are marked with :one: for the first/primary and :two: for the sec -### DAC basic :id=dac-basic +### DAC basic {#dac-basic} The default driver for ARM boards, in absence of an overriding configuration. This driver needs one Timer per enabled/used DAC channel, to trigger conversion; and a third timer to trigger state updates with the audio-core. @@ -79,7 +79,9 @@ Additionally, in the board config, you'll want to make changes to enable the DAC #define STM32_GPT_USE_TIM8 TRUE ``` -?> Note: DAC1 (A4) uses TIM6, DAC2 (A5) uses TIM7, and the audio state timer uses TIM8 (configurable). +::: tip +Note: DAC1 (A4) uses TIM6, DAC2 (A5) uses TIM7, and the audio state timer uses TIM8 (configurable). +::: You can also change the timer used for the overall audio state by defining the driver. For instance: @@ -87,7 +89,7 @@ You can also change the timer used for the overall audio state by defining the d #define AUDIO_STATE_TIMER GPTD9 ``` -### DAC additive :id=dac-additive +### DAC additive {#dac-additive} only needs one timer (GPTD6, Tim6) to trigger the DAC unit to do a conversion; the audio state updates are in turn triggered during the DAC callback. @@ -131,7 +133,7 @@ There are a number of predefined quality settings that you can use, with "sane m | `AUDIO_DAC_QUALITY_VERY_HIGH` | `88200U` | `1` | `256U` | | `AUDIO_DAC_QUALITY_SANE_MINIMUM` | `16384U` | `8` | `64U` | -#### Notes on buffer size :id=buffer-size +#### Notes on buffer size {#buffer-size} By default, the buffer size attempts to keep to these constraints: @@ -162,7 +164,7 @@ You can lower the buffer size if you need a bit more space in your firmware, or ``` -### PWM hardware :id=pwm-hardware +### PWM hardware {#pwm-hardware} This driver uses the ChibiOS-PWM system to produce a square-wave on specific output pins that are connected to the PWM hardware. The hardware directly toggles the pin via its alternate function. See your MCU's data-sheet for which pin can be driven by what timer - looking for TIMx_CHy and the corresponding alternate function. @@ -205,7 +207,7 @@ You can also use the Complementary output (`TIMx_CHyN`) for PWM on supported con #define AUDIO_PWM_COMPLEMENTARY_OUTPUT ``` -### PWM software :id=pwm-software +### PWM software {#pwm-software} This driver uses the PWM callbacks from PWMD1 with TIM1_CH1 to toggle the selected AUDIO_PIN in software. During the same callback, with AUDIO_PIN_ALT_AS_NEGATIVE set, the AUDIO_PIN_ALT is toggled inversely to AUDIO_PIN. This is useful for setups that drive a piezo from two pins (instead of one and Gnd). @@ -217,7 +219,7 @@ You can also change the timer used for software PWM by defining the driver. For ``` -### Testing Notes :id=testing-notes +### Testing Notes {#testing-notes} While not an exhaustive list, the following table provides the scenarios that have been partially validated: diff --git a/docs/breaking_changes.md b/docs/breaking_changes.md index 1c0b1bafceb..d72a8d47614 100644 --- a/docs/breaking_changes.md +++ b/docs/breaking_changes.md @@ -10,10 +10,10 @@ Practically, this means QMK merges the `develop` branch into the `master` branch ## What has been included in past Breaking Changes? -* [2024 May 26](ChangeLog/20240526.md) -* [2024 Feb 25](ChangeLog/20240225.md) -* [2023 Nov 26](ChangeLog/20231126.md) -* [Older Breaking Changes](breaking_changes_history.md) +* [2024 May 26](ChangeLog/20240526) +* [2024 Feb 25](ChangeLog/20240225) +* [2023 Nov 26](ChangeLog/20231126) +* [Older Breaking Changes](breaking_changes_history) ## When is the next Breaking Change? @@ -71,7 +71,7 @@ This section documents various processes we use when running the Breaking Change ### 1 Week Before Merge * `develop` is now closed to PR merges, only critical bugfixes may be included -* Announce that master will be closed from <2 Days Before> to -- message `@Breaking Changes Updates` on `#qmk_firmware` in Discord: +* Announce that master will be closed from `<2 Days Before>` to `` -- message `@Breaking Changes Updates` on `#qmk_firmware` in Discord: * `@Breaking Changes Updates -- Hey folks, last day for functional PRs to be merged into qmk_firmware for this breaking changes cycle is today. After that, we're handling bugfixes only.` ### 2 Days Before Merge @@ -136,7 +136,7 @@ This happens immediately after the previous `develop` branch is merged to `maste * Announce that both `master` and `develop` are now unlocked -- message `@Breaking Changes Updates` on `#qmk_firmware` in Discord: * `@Breaking Changes Updates -- Hey folks, develop has now been merged into master -- newest batch of changes are now available for everyone to use!` -* (Optional) [update ChibiOS + ChibiOS-Contrib on `develop`](chibios_upgrade_instructions.md) +* (Optional) [update ChibiOS + ChibiOS-Contrib on `develop`](chibios_upgrade_instructions) ### Set up Discord events for the next cycle diff --git a/docs/breaking_changes_history.md b/docs/breaking_changes_history.md index 6f0f25be0e6..8c01e35e688 100644 --- a/docs/breaking_changes_history.md +++ b/docs/breaking_changes_history.md @@ -2,22 +2,22 @@ This page links to all previous changelogs from the QMK Breaking Changes process. -* [2024 May 26](ChangeLog/20240526.md) - version 0.25.0 -* [2024 Feb 25](ChangeLog/20240225.md) - version 0.24.0 -* [2023 Nov 26](ChangeLog/20231126.md) - version 0.23.0 -* [2023 Aug 27](ChangeLog/20230827.md) - version 0.22.0 -* [2023 May 28](ChangeLog/20230528.md) - version 0.21.0 -* [2023 Feb 26](ChangeLog/20230226.md) - version 0.20.0 -* [2022 Nov 26](ChangeLog/20221126.md) - version 0.19.0 -* [2022 Aug 27](ChangeLog/20220827.md) - version 0.18.0 -* [2022 May 28](ChangeLog/20220528.md) - version 0.17.0 -* [2022 Feb 26](ChangeLog/20220226.md) - version 0.16.0 -* [2021 Nov 27](ChangeLog/20211127.md) - version 0.15.0 -* [2021 Aug 28](ChangeLog/20210828.md) - version 0.14.0 -* [2021 May 29](ChangeLog/20210529.md) - version 0.13.0 -* [2021 Feb 27](ChangeLog/20210227.md) - version 0.12.0 -* [2020 Nov 28](ChangeLog/20201128.md) - version 0.11.0 -* [2020 Aug 29](ChangeLog/20200829.md) - version 0.10.0 -* [2020 May 30](ChangeLog/20200530.md) - version 0.9.0 -* [2020 Feb 29](ChangeLog/20200229.md) - version 0.8.0 -* [2019 Aug 30](ChangeLog/20190830.md) - version 0.7.0 +* [2024 May 26](ChangeLog/20240526) - version 0.25.0 +* [2024 Feb 25](ChangeLog/20240225) - version 0.24.0 +* [2023 Nov 26](ChangeLog/20231126) - version 0.23.0 +* [2023 Aug 27](ChangeLog/20230827) - version 0.22.0 +* [2023 May 28](ChangeLog/20230528) - version 0.21.0 +* [2023 Feb 26](ChangeLog/20230226) - version 0.20.0 +* [2022 Nov 26](ChangeLog/20221126) - version 0.19.0 +* [2022 Aug 27](ChangeLog/20220827) - version 0.18.0 +* [2022 May 28](ChangeLog/20220528) - version 0.17.0 +* [2022 Feb 26](ChangeLog/20220226) - version 0.16.0 +* [2021 Nov 27](ChangeLog/20211127) - version 0.15.0 +* [2021 Aug 28](ChangeLog/20210828) - version 0.14.0 +* [2021 May 29](ChangeLog/20210529) - version 0.13.0 +* [2021 Feb 27](ChangeLog/20210227) - version 0.12.0 +* [2020 Nov 28](ChangeLog/20201128) - version 0.11.0 +* [2020 Aug 29](ChangeLog/20200829) - version 0.10.0 +* [2020 May 30](ChangeLog/20200530) - version 0.9.0 +* [2020 Feb 29](ChangeLog/20200229) - version 0.8.0 +* [2019 Aug 30](ChangeLog/20190830) - version 0.7.0 diff --git a/docs/cli.md b/docs/cli.md index 0fa068dc7b0..7d4c10cedd7 100644 --- a/docs/cli.md +++ b/docs/cli.md @@ -1,14 +1,14 @@ -# QMK CLI :id=qmk-cli +# QMK CLI {#qmk-cli} -## Overview :id=overview +## Overview {#overview} The QMK CLI (command line interface) makes building and working with QMK keyboards easier. We have provided a number of commands to simplify and streamline tasks such as obtaining and compiling the QMK firmware, creating keymaps, and more. -### Requirements :id=requirements +### 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. -### Install Using Homebrew (macOS, some Linux) :id=install-using-homebrew +### Install Using Homebrew (macOS, some Linux) {#install-using-homebrew} If you have installed [Homebrew](https://brew.sh) you can tap and install QMK: @@ -18,7 +18,7 @@ export QMK_HOME='~/qmk_firmware' # Optional, set the location for `qmk_firmware` qmk setup # This will clone `qmk/qmk_firmware` and optionally set up your build environment ``` -### Install Using pip :id=install-using-easy_install-or-pip +### 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: @@ -28,7 +28,7 @@ export QMK_HOME='~/qmk_firmware' # Optional, set the location for `qmk_firmware` qmk setup # This will clone `qmk/qmk_firmware` and optionally set up your build environment ``` -### Packaging For Other Operating Systems :id=packaging-for-other-operating-systems +### Packaging For Other Operating Systems {#packaging-for-other-operating-systems} We are looking for people to create and maintain a `qmk` package for more operating systems. If you would like to create a package for your OS please follow these guidelines: diff --git a/docs/cli_commands.md b/docs/cli_commands.md index e97af79d33f..6f82d9c9de0 100644 --- a/docs/cli_commands.md +++ b/docs/cli_commands.md @@ -86,7 +86,7 @@ qmk compile -j 0 -kb ## `qmk flash` -This command is similar to `qmk compile`, but can also target a bootloader. The bootloader is optional, and is set to `:flash` by default. To specify a different bootloader, use `-bl `. Visit the [Flashing Firmware](flashing.md) guide for more details of the available bootloaders. +This command is similar to `qmk compile`, but can also target a bootloader. The bootloader is optional, and is set to `:flash` by default. To specify a different bootloader, use `-bl `. Visit the [Flashing Firmware](flashing) guide for more details of the available bootloaders. This command is directory aware. It will automatically fill in KEYBOARD and/or KEYMAP if you are in a keyboard or keymap directory. @@ -127,7 +127,7 @@ qmk flash -b ## `qmk config` -This command lets you configure the behavior of QMK. For the full `qmk config` documentation see [CLI Configuration](cli_configuration.md). +This command lets you configure the behavior of QMK. For the full `qmk config` documentation see [CLI Configuration](cli_configuration). **Usage**: @@ -703,30 +703,39 @@ Now open your dev environment and live a squiggly-free life. ## `qmk docs` -This command starts a local HTTP server which you can use for browsing or improving the docs. Default port is 8936. -Use the `-b`/`--browser` flag to automatically open the local webserver in your default browser. +This command starts a local HTTP server which you can use for browsing or improving the docs. Default port is 5173. -This command runs `docsify serve` if `docsify-cli` is installed (which provides live reload), otherwise Python's builtin HTTP server module will be used. +This command requires `node` and `yarn` to be installed as prerequisites, and provides live reload capability whilst editing. **Usage**: ``` -qmk docs [-b] [-p PORT] +usage: qmk docs [-h] + +options: + -h, --help show this help message and exit ``` ## `qmk generate-docs` -This command allows you to generate QMK documentation locally. It can be uses for general browsing or improving the docs. External tools such as [serve](https://www.npmjs.com/package/serve) can be used to browse the generated files. +This command allows you to generate QMK documentation locally. It can be uses for general browsing or improving the docs. +Use the `-s`/`--serve` flag to also serve the static site once built. Default port is 4173. + +This command requires `node` and `yarn` to be installed as prerequisites, and requires the operating system to support symlinks. **Usage**: ``` -qmk generate-docs +usage: qmk generate-docs [-h] [-s] + +options: + -h, --help show this help message and exit + -s, --serve Serves the generated docs once built. ``` ## `qmk generate-rgb-breathe-table` -This command generates a lookup table (LUT) header file for the [RGB Lighting](feature_rgblight.md) feature's breathing animation. Place this file in your keyboard or keymap directory as `rgblight_breathe_table.h` to override the default LUT in `quantum/rgblight/`. +This command generates a lookup table (LUT) header file for the [RGB Lighting](feature_rgblight) feature's breathing animation. Place this file in your keyboard or keymap directory as `rgblight_breathe_table.h` to override the default LUT in `quantum/rgblight/`. **Usage**: @@ -793,15 +802,15 @@ Run single test: ## `qmk painter-convert-graphics` -This command converts images to a format usable by QMK, i.e. the QGF File Format. See the [Quantum Painter](quantum_painter.md?id=quantum-painter-cli) documentation for more information on this command. +This command converts images to a format usable by QMK, i.e. the QGF File Format. See the [Quantum Painter](quantum_painter#quantum-painter-cli) documentation for more information on this command. ## `qmk painter-make-font-image` -This command converts a TTF font to an intermediate format for editing, before converting to the QFF File Format. See the [Quantum Painter](quantum_painter.md?id=quantum-painter-cli) documentation for more information on this command. +This command converts a TTF font to an intermediate format for editing, before converting to the QFF File Format. See the [Quantum Painter](quantum_painter#quantum-painter-cli) documentation for more information on this command. ## `qmk painter-convert-font-image` -This command converts an intermediate font image to the QFF File Format. See the [Quantum Painter](quantum_painter.md?id=quantum-painter-cli) documentation for more information on this command. +This command converts an intermediate font image to the QFF File Format. See the [Quantum Painter](quantum_painter#quantum-painter-cli) documentation for more information on this command. ## `qmk test-c` diff --git a/docs/cli_development.md b/docs/cli_development.md index 8d4ee625352..e94884de2e9 100644 --- a/docs/cli_development.md +++ b/docs/cli_development.md @@ -202,7 +202,9 @@ We use nose2, flake8, and yapf to test, lint, and format code. You can use the ` We use [yapf](https://github.com/google/yapf) to automatically format code. Our configuration is in the `[yapf]` section of `setup.cfg`. -?> Tip- Many editors can use yapf as a plugin to automatically format code as you type. +::: tip +Tip- Many editors can use yapf as a plugin to automatically format code as you type. +::: ## Testing Details diff --git a/docs/coding_conventions_python.md b/docs/coding_conventions_python.md index 1ed27ee46ab..502ee9102ed 100644 --- a/docs/coding_conventions_python.md +++ b/docs/coding_conventions_python.md @@ -15,7 +15,7 @@ Most of our style follows PEP8 with some local modifications to make things less # YAPF -You can use [yapf](https://github.com/google/yapf) to style your code. We provide a config in [setup.cfg](setup.cfg). +You can use [yapf](https://github.com/google/yapf) to style your code. We provide a config in [setup.cfg](https://github.com/qmk/qmk_firmware/blob/master/setup.cfg). # Imports diff --git a/docs/compatible_microcontrollers.md b/docs/compatible_microcontrollers.md index 197033f78b5..785aee30d5c 100644 --- a/docs/compatible_microcontrollers.md +++ b/docs/compatible_microcontrollers.md @@ -73,7 +73,7 @@ You can also use any ARM chip with USB that [ChibiOS](https://www.chibios.org) s * [RP2040](https://www.raspberrypi.com/documentation/microcontrollers/rp2040.html) -For a detailed overview about the RP2040 support by QMK see the [dedicated RP2040 page](platformdev_rp2040.md). +For a detailed overview about the RP2040 support by QMK see the [dedicated RP2040 page](platformdev_rp2040). ## Atmel ATSAM diff --git a/docs/config_options.md b/docs/config_options.md index 046429a5875..236649a0ea5 100644 --- a/docs/config_options.md +++ b/docs/config_options.md @@ -6,11 +6,13 @@ There are three main types of configuration files in QMK: * `config.h`, which contains various preprocessor directives (`#define`, `#ifdef`) * `rules.mk`, which contains additional variables -* `info.json`, which is utilized for [data-driven configuration](https://docs.qmk.fm/#/data_driven_config) +* `info.json`, which is utilized for [data-driven configuration](data_driven_config) This page will only discuss the first two types, `config.h` and `rules.mk`. -?> While not all settings have data-driven equivalents yet, keyboard makers are encouraged to utilize the `info.json` file to set the metadata for their boards when possible. See the [`info.json` Format](https://docs.qmk.fm/#/reference_info_json) page for more details. +::: tip +While not all settings have data-driven equivalents yet, keyboard makers are encouraged to utilize the `info.json` file to set the metadata for their boards when possible. See the [`info.json` Format](reference_info_json) page for more details. +::: These files exist at various levels in QMK and all files of the same type are combined to build the final configuration. The levels, from lowest priority to highest priority, are: @@ -56,10 +58,10 @@ This is a C header file that is one of the first things included, and will persi * the number of columns in your keyboard's matrix * `#define MATRIX_ROW_PINS { D0, D5, B5, B6 }` * pins of the rows, from top to bottom - * may be omitted by the keyboard designer if matrix reads are handled in an alternate manner. See [low-level matrix overrides](custom_quantum_functions.md?id=low-level-matrix-overrides) for more information. + * may be omitted by the keyboard designer if matrix reads are handled in an alternate manner. See [low-level matrix overrides](custom_quantum_functions#low-level-matrix-overrides) for more information. * `#define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 }` * pins of the columns, from left to right - * may be omitted by the keyboard designer if matrix reads are handled in an alternate manner. See [low-level matrix overrides](custom_quantum_functions.md?id=low-level-matrix-overrides) for more information. + * may be omitted by the keyboard designer if matrix reads are handled in an alternate manner. See [low-level matrix overrides](custom_quantum_functions#low-level-matrix-overrides) for more information. * `#define MATRIX_IO_DELAY 30` * the delay in microseconds when between changing matrix pin state and reading values * `#define MATRIX_HAS_GHOST` @@ -151,26 +153,26 @@ If you define these options you will enable the associated feature, which may in * enables handling for per key `TAPPING_TERM` settings * `#define RETRO_TAPPING` * tap anyway, even after `TAPPING_TERM`, if there was no other key interruption between press and release - * See [Retro Tapping](tap_hold.md#retro-tapping) for details + * See [Retro Tapping](tap_hold#retro-tapping) for details * `#define RETRO_TAPPING_PER_KEY` * enables handling for per key `RETRO_TAPPING` settings * `#define TAPPING_TOGGLE 2` * how many taps before triggering the toggle * `#define PERMISSIVE_HOLD` * makes tap and hold keys trigger the hold if another key is pressed before releasing, even if it hasn't hit the `TAPPING_TERM` - * See [Permissive Hold](tap_hold.md#permissive-hold) for details + * See [Permissive Hold](tap_hold#permissive-hold) for details * `#define PERMISSIVE_HOLD_PER_KEY` * enabled handling for per key `PERMISSIVE_HOLD` settings * `#define QUICK_TAP_TERM 100` * tap-then-hold timing to use a dual role key to repeat keycode - * See [Quick Tap Term](tap_hold.md#quick-tap-term) + * See [Quick Tap Term](tap_hold#quick-tap-term) * Changes the timing of Tap Toggle functionality (`TT` or the One Shot Tap Toggle) * Defaults to `TAPPING_TERM` if not defined * `#define QUICK_TAP_TERM_PER_KEY` * enables handling for per key `QUICK_TAP_TERM` settings * `#define HOLD_ON_OTHER_KEY_PRESS` * selects the hold action of a dual-role key as soon as the tap of the dual-role key is interrupted by the press of another key. - * See "[hold on other key press](tap_hold.md#hold-on-other-key-press)" for details + * See "[hold on other key press](tap_hold#hold-on-other-key-press)" for details * `#define HOLD_ON_OTHER_KEY_PRESS_PER_KEY` * enables handling for per key `HOLD_ON_OTHER_KEY_PRESS` settings * `#define LEADER_TIMEOUT 300` @@ -205,7 +207,7 @@ If you define these options you will enable the associated feature, which may in * `#define TAP_HOLD_CAPS_DELAY 80` * Sets the delay for Tap Hold keys (`LT`, `MT`) when using `KC_CAPS_LOCK` keycode, as this has some special handling on MacOS. The value is in milliseconds, and defaults to 80 ms if not defined. For macOS, you may want to set this to 200 or higher. * `#define KEY_OVERRIDE_REPEAT_DELAY 500` - * Sets the key repeat interval for [key overrides](feature_key_overrides.md). + * Sets the key repeat interval for [key overrides](feature_key_overrides). * `#define LEGACY_MAGIC_HANDLING` * Enables magic configuration handling for advanced keycodes (such as Mod Tap and Layer Tap) @@ -215,14 +217,14 @@ If you define these options you will enable the associated feature, which may in * `#define WS2812_DI_PIN D7` * pin the DI on the WS2812 is hooked-up to * `#define RGBLIGHT_LAYERS` - * Lets you define [lighting layers](feature_rgblight.md?id=lighting-layers) that can be toggled on or off. Great for showing the current keyboard layer or caps lock state. + * Lets you define [lighting layers](feature_rgblight#lighting-layers) that can be toggled on or off. Great for showing the current keyboard layer or caps lock state. * `#define RGBLIGHT_MAX_LAYERS` - * Defaults to 8. Can be expanded up to 32 if more [lighting layers](feature_rgblight.md?id=lighting-layers) are needed. + * Defaults to 8. Can be expanded up to 32 if more [lighting layers](feature_rgblight#lighting-layers) are needed. * Note: Increasing the maximum will increase the firmware size and slow sync on split keyboards. * `#define RGBLIGHT_LAYER_BLINK` - * Adds ability to [blink](feature_rgblight.md?id=lighting-layer-blink) a lighting layer for a specified number of milliseconds (e.g. to acknowledge an action). + * Adds ability to [blink](feature_rgblight#lighting-layer-blink) a lighting layer for a specified number of milliseconds (e.g. to acknowledge an action). * `#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF` - * If defined, then [lighting layers](feature_rgblight?id=overriding-rgb-lighting-onoff-status) will be shown even if RGB Light is off. + * If defined, then [lighting layers](feature_rgblight#overriding-rgb-lighting-onoff-status) will be shown even if RGB Light is off. * `#define RGBLIGHT_LED_COUNT 12` * number of LEDs * `#define RGBLIGHT_SPLIT` @@ -294,7 +296,7 @@ There are a few different ways to set handedness for split keyboards (listed in * `#define MATRIX_ROW_PINS_RIGHT { }` * `#define MATRIX_COL_PINS_RIGHT { }` * If you want to specify a different pinout for the right half than the left half, you can define `MATRIX_ROW_PINS_RIGHT`/`MATRIX_COL_PINS_RIGHT`. Currently, the size of `MATRIX_ROW_PINS` must be the same as `MATRIX_ROW_PINS_RIGHT` and likewise for the definition of columns. - * may be omitted by the keyboard designer if matrix reads are handled in an alternate manner. See [low-level matrix overrides](custom_quantum_functions.md?id=low-level-matrix-overrides) for more information. + * may be omitted by the keyboard designer if matrix reads are handled in an alternate manner. See [low-level matrix overrides](custom_quantum_functions#low-level-matrix-overrides) for more information. * `#define DIRECT_PINS_RIGHT { { F1, F0, B0, C7 }, { F4, F5, F6, F7 } }` * If you want to specify a different direct pinout for the right half than the left half, you can define `DIRECT_PINS_RIGHT`. Currently, the size of `DIRECT_PINS` must be the same as `DIRECT_PINS_RIGHT`. @@ -356,7 +358,7 @@ There are a few different ways to set handedness for split keyboards (listed in * `#define SPLIT_TRANSACTION_IDS_KB .....` * `#define SPLIT_TRANSACTION_IDS_USER .....` - * Allows for custom data sync with the slave when using the QMK-provided split transport. See [custom data sync between sides](feature_split_keyboard.md#custom-data-sync) for more information. + * Allows for custom data sync with the slave when using the QMK-provided split transport. See [custom data sync between sides](feature_split_keyboard#custom-data-sync) for more information. # The `rules.mk` File @@ -385,7 +387,7 @@ This is a [make](https://www.gnu.org/software/make/manual/make.html) file that i ... a.o c.o ... lib_b.a lib_d.a ... ``` * `LAYOUTS` - * A list of [layouts](feature_layouts.md) this keyboard supports. + * A list of [layouts](feature_layouts) this keyboard supports. * `LTO_ENABLE` * Enables Link Time Optimization (LTO) when compiling the keyboard. This makes the process take longer, but it can significantly reduce the compiled size (and since the firmware is small, the added time is not noticeable). @@ -404,7 +406,7 @@ This is a [make](https://www.gnu.org/software/make/manual/make.html) file that i * `bootloadhid` * `usbasploader` -## Feature Options :id=feature-options +## Feature Options {#feature-options} Use these to enable or disable building certain features. The more you have enabled the bigger your firmware will be, and you run the risk of building a firmware too large for your MCU. @@ -451,7 +453,7 @@ Use these to enable or disable building certain features. The more you have enab * `NO_USB_STARTUP_CHECK` * Disables usb suspend check after keyboard startup. Usually the keyboard waits for the host to wake it up before any tasks are performed. This is useful for split keyboards as one half will not get a wakeup call but must send commands to the master. * `DEFERRED_EXEC_ENABLE` - * Enables deferred executor support -- timed delays before callbacks are invoked. See [deferred execution](custom_quantum_functions.md#deferred-execution) for more information. + * Enables deferred executor support -- timed delays before callbacks are invoked. See [deferred execution](custom_quantum_functions#deferred-execution) for more information. * `DYNAMIC_TAPPING_TERM_ENABLE` * Allows to configure the global tapping term on the fly. diff --git a/docs/configurator_default_keymaps.md b/docs/configurator_default_keymaps.md index 4d3c1b8f47c..40304dc57b7 100644 --- a/docs/configurator_default_keymaps.md +++ b/docs/configurator_default_keymaps.md @@ -1,9 +1,9 @@ -# Adding Default Keymaps to QMK Configurator :id=adding-default-keymaps +# Adding Default Keymaps to QMK Configurator {#adding-default-keymaps} This page covers how to add a default keymap for a keyboard to QMK Configurator. -## Technical Information :id=technical-information +## Technical Information {#technical-information} QMK Configurator uses JSON as its native file format for keymaps. As much as possible, these should be kept such that they behave the same as running `make :default` from `qmk_firmware`. @@ -27,7 +27,7 @@ f14629ed1cd7c7ec9089604d64f29a99981558e8 Remove/migrate action_get_macro()s from In this example, `f14629ed1cd7c7ec9089604d64f29a99981558e8` is the value that should be used for `commit`. -## Example :id=example +## Example {#example} If one wished to add a default keymap for the H87a by Hineybush, one would run the `git log` command above against the H87a's default keymap in `qmk_firmware`: @@ -96,9 +96,9 @@ The default keymap uses the `LAYOUT_all` macro, so that will be the value of the The white space in the `layers` arrays have no effect on the functionality of the keymap, but are used to make these files easier for humans to read. -## Caveats :id=caveats +## Caveats {#caveats} -### Layers can only be referenced by number :id=layer-references +### Layers can only be referenced by number {#layer-references} A common QMK convention is to name layers using a series of `#define`s, or an `enum` statement: @@ -112,11 +112,11 @@ enum layer_names { This works in C, but for Configurator, you *must* use the layer's numeric index – `MO(_FN)` would need to be `MO(2)` in the above example. -### No support for custom code of any kind :id=custom-code +### No support for custom code of any kind {#custom-code} Features that require adding functions to the keymap.c file, such as Tap Dance or Unicode, can not be compiled in Configurator **at all**. Even setting `TAP_DANCE_ENABLE = yes` in the `qmk_firmware` repository at the keyboard level will prevent Configurator from compiling **any** firmware for that keyboard. This is limited both by the API and the current spec of our JSON keymap format. -### Limited Support for Custom keycodes :id=custom-keycodes +### Limited Support for Custom keycodes {#custom-keycodes} There is a way to support custom keycodes: if the logic for a custom keycode is implemented at the keyboard level instead of the keymap level in qmk_firmware, that keycode *can* be used in Configurator and it *will* compile and work. Instead of using the following in your `keymap.c`: @@ -186,6 +186,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { Note the call to `process_record_user()` at the end. -## Additional Reading :id=additional-reading +## Additional Reading {#additional-reading} -For QMK Configurator to support your keyboard, your keyboard must be present in the `master` branch of the `qmk_firmware` repository. For instructions on this, please see [Supporting Your Keyboard in QMK Configurator](reference_configurator_support.md). +For QMK Configurator to support your keyboard, your keyboard must be present in the `master` branch of the `qmk_firmware` repository. For instructions on this, please see [Supporting Your Keyboard in QMK Configurator](reference_configurator_support). diff --git a/docs/configurator_step_by_step.md b/docs/configurator_step_by_step.md index c3cc2bfcdbc..4da9ea04a28 100644 --- a/docs/configurator_step_by_step.md +++ b/docs/configurator_step_by_step.md @@ -6,11 +6,15 @@ This page describes the steps for building your firmware in QMK Configurator. Click the drop down box and select the keyboard you want to create a keymap for. -?> If your keyboard has several versions, make sure you select the correct one. +::: tip +If your keyboard has several versions, make sure you select the correct one. +::: I'll say that again because it's important: -!> **MAKE SURE YOU SELECT THE RIGHT VERSION!** +::: warning +**MAKE SURE YOU SELECT THE RIGHT VERSION!** +::: If your keyboard has been advertised to be powered by QMK but is not in the list, chances are a developer hasn't gotten to it yet or we haven't had a chance to merge it in yet. File an issue at [qmk_firmware](https://github.com/qmk/qmk_firmware/issues) requesting to support that particular keyboard, if there is no active [Pull Request](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+is%3Apr+label%3Akeyboard) for it. There are also QMK powered keyboards that are in their manufacturer's own GitHub accounts. Double check for that as well. @@ -18,13 +22,17 @@ If your keyboard has been advertised to be powered by QMK but is not in the list Choose the layout that best represents the keymap you want to create. Some keyboards do not have enough layouts or correct layouts defined yet. They will be supported in the future. -!> Sometimes there isn't a layout that supports your exact build. In that case select `LAYOUT_all`. +::: warning +Sometimes there isn't a layout that supports your exact build. In that case select `LAYOUT_all`. +::: ## Step 3: Name Your Keymap Call this keymap what you want. -?> If you are running into issues when compiling, it may be worth changing this name, as it may already exist in the QMK Firmware repo. +::: tip +If you are running into issues when compiling, it may be worth changing this name, as it may already exist in the QMK Firmware repo. +::: ## Step 4: Define Your Keymap @@ -34,18 +42,24 @@ Keycode Entry is accomplished in one of 3 ways: 2. Clicking on an empty spot on the layout, then clicking the keycode you desire 3. Clicking on an empty spot on the layout, then pressing the physical key on your keyboard -?> Hover your mouse over a key and a short blurb will tell you what that keycode does. For a more verbose description please see: +::: tip +Hover your mouse over a key and a short blurb will tell you what that keycode does. For a more verbose description please see: +::: -* [Basic Keycode Reference](keycodes_basic.md) -* [Advanced Keycode Reference](feature_advanced_keycodes.md) +* [Basic Keycode Reference](keycodes_basic) +* [Advanced Keycode Reference](feature_advanced_keycodes) -!> If your selected layout doesn't match your physical build leave the unused keys blank. If you're not sure which key is in use, for example you have a one backspace key but `LAYOUT_all` has 2 keys, put the same keycode in both locations. +::: warning +If your selected layout doesn't match your physical build leave the unused keys blank. If you're not sure which key is in use, for example you have a one backspace key but `LAYOUT_all` has 2 keys, put the same keycode in both locations. +::: ## Step 5: Save Your Keymap for Future Changes When you're satisfied with your keymap or just want to work on it later, press the `Download this QMK Keymap JSON File` button. It will save your keymap to your computer. You can then load this .json file in the future by pressing the `Upload a QMK Keymap JSON File` button. -!> **CAUTION:** This is not the same type of .json file used for kbfirmware.com or any other tool. If you try to use this for those tools, or the .json from those tools with QMK Configurator, you will encounter problems. +::: warning +**CAUTION:** This is not the same type of .json file used for kbfirmware.com or any other tool. If you try to use this for those tools, or the .json from those tools with QMK Configurator, you will encounter problems. +::: ## Step 6: Compile Your Firmware File @@ -55,4 +69,4 @@ When the compilation is done, you will be able to press the green `Download Firm ## Next steps: Flashing Your Keyboard -Please refer to [Flashing Firmware](newbs_flashing.md). +Please refer to [Flashing Firmware](newbs_flashing). diff --git a/docs/configurator_troubleshooting.md b/docs/configurator_troubleshooting.md index 80b9713b64e..634b05c2065 100644 --- a/docs/configurator_troubleshooting.md +++ b/docs/configurator_troubleshooting.md @@ -14,8 +14,8 @@ If you're referring to having three spots for space bar, the best course of acti Please see: -* [Basic Keycode Reference](keycodes_basic.md) -* [Advanced Keycode Reference](feature_advanced_keycodes.md) +* [Basic Keycode Reference](keycodes_basic) +* [Advanced Keycode Reference](feature_advanced_keycodes) ## It won't compile diff --git a/docs/contributing.md b/docs/contributing.md index 8d993e3389d..14025c2c505 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -56,8 +56,8 @@ Never made an open source contribution before? Wondering how contributions work Most of our style is pretty easy to pick up on. If you are familiar with either C or Python you should not have too much trouble with our local styles. -* [Coding Conventions - C](coding_conventions_c.md) -* [Coding Conventions - Python](coding_conventions_python.md) +* [Coding Conventions - C](coding_conventions_c) +* [Coding Conventions - Python](coding_conventions_python) # General Guidelines @@ -101,17 +101,13 @@ enum my_keycodes { }; ``` -### Previewing the Documentation :id=previewing-the-documentation +### Previewing the Documentation {#previewing-the-documentation} Before opening a pull request, you can preview your changes if you have set up the development environment by running this command from the `qmk_firmware/` folder: qmk docs -or if you only have Python 3 installed: - - python3 -m http.server 8936 --directory docs - -and navigating to `http://localhost:8936/`. +and navigating to `http://localhost:5173/`. ## Keyboards @@ -119,7 +115,7 @@ Keyboards are the raison d'être for QMK. Some keyboards are community maintaine We also ask that you follow these guidelines: -* Write a `readme.md` using [the template](documentation_templates.md). +* Write a `readme.md` using [the template](documentation_templates). * Include a `default` keymap that provides a clean slate for users to start with when creating their own keymaps. * Do not lump core features in with new keyboards. Submit the feature first and then submit a separate PR for the keyboard. * Name `.c`/`.h` file after the immediate parent folder, eg `/keyboards///.[ch]` @@ -128,7 +124,7 @@ We also ask that you follow these guidelines: ## Quantum/TMK Core -Before you put a lot of work into building your new feature you should make sure you are implementing it in the best way. You can get a basic understanding of QMK by reading [Understanding QMK](understanding_qmk.md), which will take you on a tour of the QMK program flow. From here you should talk to us to get a sense of the best way to implement your idea. There are two main ways to do this: +Before you put a lot of work into building your new feature you should make sure you are implementing it in the best way. You can get a basic understanding of QMK by reading [Understanding QMK](understanding_qmk), which will take you on a tour of the QMK program flow. From here you should talk to us to get a sense of the best way to implement your idea. There are two main ways to do this: * [Chat on Discord](https://discord.gg/Uq7gcHh) * [Open an Issue](https://github.com/qmk/qmk_firmware/issues/new) @@ -146,7 +142,7 @@ We also ask that you follow these guidelines: * Keep the number of commits reasonable or we will squash your PR * Do not lump keyboards or keymaps in with core changes. Submit your core changes first. -* Write [Unit Tests](unit_testing.md) for your feature +* Write [Unit Tests](unit_testing) for your feature * Follow the style of the file you are editing. If the style is unclear or there are mixed styles you should conform to the [coding conventions](#coding-conventions) above. ## Refactoring diff --git a/docs/custom_quantum_functions.md b/docs/custom_quantum_functions.md index bc3b28bbba7..ac21f0e0390 100644 --- a/docs/custom_quantum_functions.md +++ b/docs/custom_quantum_functions.md @@ -2,9 +2,9 @@ For a lot of people a custom keyboard is about more than sending button presses to your computer. You want to be able to do things that are more complex than simple button presses and macros. QMK has hooks that allow you to inject code, override functionality, and otherwise customize how your keyboard behaves in different situations. -This page does not assume any special knowledge about QMK, but reading [Understanding QMK](understanding_qmk.md) will help you understand what is going on at a more fundamental level. +This page does not assume any special knowledge about QMK, but reading [Understanding QMK](understanding_qmk) will help you understand what is going on at a more fundamental level. -## A Word on Core vs Keyboards vs Keymap :id=a-word-on-core-vs-keyboards-vs-keymap +## A Word on Core vs Keyboards vs Keymap {#a-word-on-core-vs-keyboards-vs-keymap} We have structured QMK as a hierarchy: @@ -34,7 +34,7 @@ enum my_keycodes { }; ``` -## Programming the Behavior of Any Keycode :id=programming-the-behavior-of-any-keycode +## Programming the Behavior of Any Keycode {#programming-the-behavior-of-any-keycode} When you want to override the behavior of an existing key, or define the behavior for a new key, you should use the `process_record_kb()` and `process_record_user()` functions. These are called by QMK during key processing before the actual key event is handled. If these functions return `true` QMK will process the keycodes as usual. That can be handy for extending the functionality of a key rather than replacing it. If these functions return `false` QMK will skip the normal key handling, and it will be up to you to send any key up or down events that are required. @@ -98,7 +98,9 @@ These are the three main initialization functions, listed in the order that they * `matrix_init_*` - Happens midway through the firmware's startup process. Hardware is initialized, but features may not be yet. * `keyboard_post_init_*` - Happens at the end of the firmware's startup process. This is where you'd want to put "customization" code, for the most part. -!> For most people, the `keyboard_post_init_user` function is what you want to call. For instance, this is where you want to set up things for RGB Underglow. +::: warning +For most people, the `keyboard_post_init_user` function is what you want to call. For instance, this is where you want to set up things for RGB Underglow. +::: ## Keyboard Pre Initialization code @@ -144,7 +146,7 @@ This is useful for setting up stuff that you may need elsewhere, but isn't hardw * Keyboard/Revision: `void matrix_init_kb(void)` * Keymap: `void matrix_init_user(void)` -### Low-level Matrix Overrides Function Documentation :id=low-level-matrix-overrides +### Low-level Matrix Overrides Function Documentation {#low-level-matrix-overrides} * GPIO pin initialisation: `void matrix_init_pins(void)` * This needs to perform the low-level initialisation of all row and column pins. By default this will initialise the input/output state of each of the GPIO pins listed in `MATRIX_ROW_PINS` and `MATRIX_COL_PINS`, based on whether or not the keyboard is set up for `ROW2COL`, `COL2ROW`, or `DIRECT_PINS`. Should the keyboard designer override this function, no initialisation of pin state will occur within QMK itself, instead deferring to the keyboard's override. @@ -204,7 +206,7 @@ Similar to `matrix_scan_*`, these are called as often as the MCU can handle. To ### Example `void housekeeping_task_user(void)` implementation -This example will show you how to use `void housekeeping_task_user(void)` to turn off [RGB Light](feature_rgblight.md). For RGB Matrix, the [builtin](https://docs.qmk.fm/#/feature_rgb_matrix?id=additional-configh-options) `RGB_MATRIX_TIMEOUT` should be used. +This example will show you how to use `void housekeeping_task_user(void)` to turn off [RGB Light](feature_rgblight). For RGB Matrix, the [builtin](feature_rgb_matrix#additional-configh-options) `RGB_MATRIX_TIMEOUT` should be used. First, add the following lines to your keymap's `config.h`: @@ -284,7 +286,7 @@ void suspend_wakeup_init_user(void) { * Keymap: `void suspend_power_down_kb(void)` and `void suspend_wakeup_init_user(void)` -# Keyboard Shutdown/Reboot Code :id=keyboard-shutdown-reboot-code +# Keyboard Shutdown/Reboot Code {#keyboard-shutdown-reboot-code} This function gets called whenever the firmware is reset, whether it's a soft reset or reset to the bootloader. This is the spot to use for any sort of cleanup, as this happens right before the actual reset. And it can be useful for turning off different systems (such as RGB, onboard screens, etc). @@ -296,7 +298,9 @@ If `jump_to_bootloader` is set to `true`, this indicates that the board will be As there is a keyboard and user level function, returning `false` for the user function will disable the keyboard level function, allowing for customization. -?> Bootmagic does not trigger `shutdown_*()` as it happens before most of the initialization process. +::: tip +Bootmagic does not trigger `shutdown_*()` as it happens before most of the initialization process. +::: ### Example `shutdown_kb()` Implementation @@ -342,7 +346,7 @@ bool shutdown_user(bool jump_to_bootloader) { * Keyboard/Revision: `bool shutdown_kb(bool jump_to_bootloader)` * Keymap: `bool shutdown_user(bool jump_to_bootloader)` -# Deferred Execution :id=deferred-execution +# Deferred Execution {#deferred-execution} QMK has the ability to execute a callback after a specified period of time, rather than having to manually manage timers. To enable this functionality, set `DEFERRED_EXEC_ENABLE = yes` in rules.mk. @@ -364,7 +368,9 @@ The second argument `cb_arg` is the same argument passed into `defer_exec()` bel The return value is the number of milliseconds to use if the function should be repeated -- if the callback returns `0` then it's automatically unregistered. In the example above, a hypothetical `my_deferred_functionality()` is invoked to determine if the callback needs to be repeated -- if it does, it reschedules for a `500` millisecond delay, otherwise it informs the deferred execution background task that it's done, by returning `0`. -?> Note that the returned delay will be applied to the intended trigger time, not the time of callback invocation. This allows for generally consistent timing even in the face of occasional late execution. +::: tip +Note that the returned delay will be applied to the intended trigger time, not the time of callback invocation. This allows for generally consistent timing even in the face of occasional late execution. +::: ## Deferred executor registration @@ -408,14 +414,14 @@ If registrations fail, then you can increase this value in your keyboard or keym #define MAX_DEFERRED_EXECUTORS 16 ``` -# Advanced topics :id=advanced-topics +# Advanced topics {#advanced-topics} This page used to encompass a large set of features. We have moved many sections that used to be part of this page to their own pages. Everything below this point is simply a redirect so that people following old links on the web find what they're looking for. -## Layer Change Code :id=layer-change-code +## Layer Change Code {#layer-change-code} -[Layer change code](feature_layers.md#layer-change-code) +[Layer change code](feature_layers#layer-change-code) -## Persistent Configuration (EEPROM) :id=persistent-configuration-eeprom +## Persistent Configuration (EEPROM) {#persistent-configuration-eeprom} -[Persistent Configuration (EEPROM)](feature_eeprom.md) +[Persistent Configuration (EEPROM)](feature_eeprom) diff --git a/docs/data_driven_config.md b/docs/data_driven_config.md index b288f9901a8..2c1a56e004f 100644 --- a/docs/data_driven_config.md +++ b/docs/data_driven_config.md @@ -4,7 +4,7 @@ This page describes how QMK's data driven JSON configuration system works. It is ## History -Historically QMK has been configured through a combination of two mechanisms- `rules.mk` and `config.h`. While this worked well when QMK was only a handful of keyboards we've grown to encompass nearly 1500 supported keyboards. That extrapolates out to 6000 configuration files under `keyboards/` alone! The freeform nature of these files and the unique patterns people have used to avoid duplication have made ongoing maintenance a challenge, and a large number of our keyboards follow patterns that are outdated and sometimes harder to understand. +Historically QMK has been configured through a combination of two mechanisms- `rules.mk` and `config.h`. While this worked well when QMK was only a handful of keyboards we've grown to encompass nearly 4000 supported keyboards. That extrapolates out to 6000 configuration files under `keyboards/` alone! The freeform nature of these files and the unique patterns people have used to avoid duplication have made ongoing maintenance a challenge, and a large number of our keyboards follow patterns that are outdated and sometimes harder to understand. We have also been working on bringing the power of QMK to people who aren't comformable with a CLI, and other projects such as VIA are working to make using QMK as easy as installing a program. These tools need information about how a keyboard is laid out or what pins and features are available so that users can take full advantage of QMK. We introduced `info.json` as a first step towards this. The QMK API is an effort to combine these 3 sources of information- `config.h`, `rules.mk`, and `info.json`- into a single source of truth that end-user tools can use. @@ -75,7 +75,7 @@ Whenever QMK generates a complete `info.json` it extracts information from `conf If you are not sure how to edit this file or are not comfortable with Python [open an issue](https://github.com/qmk/qmk_firmware/issues/new?assignees=&labels=cli%2C+python&template=other_issues.md&title=) or [join #cli on Discord](https://discord.gg/heQPAgy) and someone can help you with this part. -### Add code to generate it :id=add-code-to-generate-it +### Add code to generate it {#add-code-to-generate-it} The final piece of the puzzle is providing your new option to the build system. This is done by generating two files: diff --git a/docs/documentation_best_practices.md b/docs/documentation_best_practices.md index c193fed6b86..d41ec28f196 100644 --- a/docs/documentation_best_practices.md +++ b/docs/documentation_best_practices.md @@ -25,22 +25,30 @@ You can have styled hint blocks drawn around text to draw attention to it. ### Important ``` -!> This is important +::: warning +This is important +::: ``` Renders as: -!> This is important +::: warning +This is important +::: ### General Tips ``` -?> This is a helpful tip. +::: tip +This is a helpful tip. +::: ``` Renders as: -?> This is a helpful tip. +::: tip +This is a helpful tip. +::: # Documenting Features @@ -61,4 +69,4 @@ This page describes my cool feature. You can use my cool feature to make coffee |KC_SUGAR||Order Sugar| ``` -Place your documentation into `docs/feature_.md`, and add that file to the appropriate place in `docs/_summary.md`. If you have added any keycodes be sure to add them to `docs/keycodes.md` with a link back to your feature page. +Place your documentation into `docs/feature_.md`, and add that file to the appropriate place in `docs/_sidebar.json`. If you have added any keycodes be sure to add them to `docs/keycodes.md` with a link back to your feature page. diff --git a/docs/documentation_templates.md b/docs/documentation_templates.md index 0ad4303416f..b60a00d673e 100644 --- a/docs/documentation_templates.md +++ b/docs/documentation_templates.md @@ -2,7 +2,7 @@ This page documents the templates you should use when submitting new Keymaps and Keyboards to QMK. -## Keymap `readme.md` Template :id=keyboard-readmemd-template +## Keymap `readme.md` Template {#keyboard-readmemd-template} Most keymaps have an image depicting the layout. You can use [Keyboard Layout Editor](http://keyboard-layout-editor.com) to create an image. Upload it to [Imgur](https://imgur.com) or another hosting service, please do not include images in your Pull Request. @@ -40,7 +40,7 @@ Flashing example for this keyboard: make planck/rev4: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). +See the [build environment setup](getting_started_build_tools) and the [make instructions](getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](newbs). ## Bootloader diff --git a/docs/driver_installation_zadig.md b/docs/driver_installation_zadig.md index 0440d6a4aa5..69113863f8f 100644 --- a/docs/driver_installation_zadig.md +++ b/docs/driver_installation_zadig.md @@ -8,15 +8,17 @@ We recommend the use of the [Zadig](https://zadig.akeo.ie/) utility. If you have ## Installation -Put your keyboard into bootloader mode, either by hitting the `QK_BOOT` keycode (which may be on a different layer), or by pressing the reset switch that's usually located on the underside of the board. If your keyboard has neither, try holding Escape or Space+`B` as you plug it in (see the [Bootmagic Lite](feature_bootmagic.md) docs for more details). Some boards use [Command](feature_command.md) instead of Bootmagic; in this case, you can enter bootloader mode by hitting Left Shift+Right Shift+`B` or Left Shift+Right Shift+Escape at any point while the keyboard is plugged in. -Some keyboards may have specific instructions for entering the bootloader. For example, the [Bootmagic Lite](feature_bootmagic.md) key (default: Escape) might be on a different key, e.g. Left Control; or the magic combination for Command (default: Left Shift+Right Shift) might require you to hold something else, e.g. Left Control+Right Control. Refer to the board's README file if you are unsure. +Put your keyboard into bootloader mode, either by hitting the `QK_BOOT` keycode (which may be on a different layer), or by pressing the reset switch that's usually located on the underside of the board. If your keyboard has neither, try holding Escape or Space+`B` as you plug it in (see the [Bootmagic Lite](feature_bootmagic) docs for more details). Some boards use [Command](feature_command) instead of Bootmagic; in this case, you can enter bootloader mode by hitting Left Shift+Right Shift+`B` or Left Shift+Right Shift+Escape at any point while the keyboard is plugged in. +Some keyboards may have specific instructions for entering the bootloader. For example, the [Bootmagic Lite](feature_bootmagic) key (default: Escape) might be on a different key, e.g. Left Control; or the magic combination for Command (default: Left Shift+Right Shift) might require you to hold something else, e.g. Left Control+Right Control. Refer to the board's README file if you are unsure. To put a device in bootloader mode with USBaspLoader, tap the `RESET` button while holding down the `BOOT` button. Alternatively, hold `BOOT` while inserting the USB cable. Zadig should automatically detect the bootloader device, but you may sometimes need to check **Options → List All Devices** and select the device from the dropdown instead. -!> If Zadig lists one or more devices with the `HidUsb` driver, your keyboard is probably not in bootloader mode. The arrow will be colored orange and you will be asked to confirm modifying a system driver. **Do not** proceed if this is the case! +::: warning +If Zadig lists one or more devices with the `HidUsb` driver, your keyboard is probably not in bootloader mode. The arrow will be colored orange and you will be asked to confirm modifying a system driver. **Do not** proceed if this is the case! +::: If the arrow appears green, select the driver, and click **Install Driver**. See the [list of known bootloaders](#list-of-known-bootloaders) for the correct driver to install. @@ -40,7 +42,9 @@ Right-click each entry and hit **Uninstall device**. Make sure to tick **Delete Click **Action → Scan for hardware changes**. At this point, you should be able to type again. Double check in Zadig that the keyboard device(s) are using the `HidUsb` driver. If so, you're all done, and your board should be functional again! Otherwise, repeat this process until Zadig reports the correct driver. -?> A full reboot of your computer may sometimes be necessary at this point, to get Windows to pick up the new driver. +::: tip +A full reboot of your computer may sometimes be necessary at this point, to get Windows to pick up the new driver. +::: ## Uninstallation @@ -60,7 +64,9 @@ Run `pnputil /delete-driver oemXX.inf /uninstall`. This will delete the driver a As with the previous section, this process may need to be repeated multiple times, as multiple drivers can be applicable to the same device. -!> **WARNING:** Be *extremely careful* when doing this! You could potentially uninstall the driver for some other critical device. If you are unsure, double check the output of `/enum-drivers`, and omit the `/uninstall` flag when running `/delete-driver`. +::: warning +**WARNING:** Be *extremely careful* when doing this! You could potentially uninstall the driver for some other critical device. If you are unsure, double check the output of `/enum-drivers`, and omit the `/uninstall` flag when running `/delete-driver`. +::: ## List of Known Bootloaders diff --git a/docs/easy_maker.md b/docs/easy_maker.md index 6af64738157..6a2f00686fd 100644 --- a/docs/easy_maker.md +++ b/docs/easy_maker.md @@ -5,7 +5,7 @@ Have you ever needed an easy way to program a controller, such as a Proton C or There are different styles of Easy Maker available depending on your needs: * [Direct Pin](https://config.qmk.fm/#/?filter=ez_maker/direct) - Connect a single switch to a single pin -* Direct Pin + Backlight (Coming Soon) - Like Direct Pin but dedicates a single pin to [Backlight](feature_backlight.md) control +* Direct Pin + Backlight (Coming Soon) - Like Direct Pin but dedicates a single pin to [Backlight](feature_backlight) control * Direct Pin + Numlock (Coming Soon) - Like Direct Pin but dedicates a single pin to the Numlock LED * Direct Pin + Capslock (Coming Soon) - Like Direct Pin but dedicates a single pin to the Capslock LED * Direct Pin + Encoder (Coming Soon) - Like Direct Pin but uses 2 pins to add a single rotary encoder diff --git a/docs/eeprom_driver.md b/docs/eeprom_driver.md index c77d18c68df..6d13377ed8d 100644 --- a/docs/eeprom_driver.md +++ b/docs/eeprom_driver.md @@ -1,4 +1,4 @@ -# EEPROM Driver Configuration :id=eeprom-driver-configuration +# EEPROM Driver Configuration {#eeprom-driver-configuration} The EEPROM driver can be swapped out depending on the needs of the keyboard, or whether extra hardware is present. @@ -12,17 +12,19 @@ Driver | Description `EEPROM_DRIVER = transient` | Fake EEPROM driver -- supports reading/writing to RAM, and will be discarded when power is lost. `EEPROM_DRIVER = wear_leveling` | Frontend driver for the wear_leveling system, allowing for EEPROM emulation on top of flash -- both in-MCU and external SPI NOR flash. -## Vendor Driver Configuration :id=vendor-eeprom-driver-configuration +## Vendor Driver Configuration {#vendor-eeprom-driver-configuration} -#### STM32 L0/L1 Configuration :id=stm32l0l1-eeprom-driver-configuration +#### STM32 L0/L1 Configuration {#stm32l0l1-eeprom-driver-configuration} -!> Resetting EEPROM using an STM32L0/L1 device takes up to 1 second for every 1kB of internal EEPROM used. +::: warning +Resetting EEPROM using an STM32L0/L1 device takes up to 1 second for every 1kB of internal EEPROM used. +::: `config.h` override | Description | Default Value ------------------------------------|--------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------- `#define STM32_ONBOARD_EEPROM_SIZE` | The size of the EEPROM to use, in bytes. Erase times can be high, so it's configurable here, if not using the default value. | Minimum required to cover base _eeconfig_ data, or `1024` if VIA is enabled. -## I2C Driver Configuration :id=i2c-eeprom-driver-configuration +## I2C Driver Configuration {#i2c-eeprom-driver-configuration} Currently QMK supports 24xx-series chips over I2C. As such, requires a working i2c_master driver configuration. You can override the driver configuration via your config.h: @@ -52,9 +54,11 @@ RM24C512C EEPROM | `#define EEPROM_I2C_RM24C512C` | MB85RC256V FRAM | `#define EEPROM_I2C_MB85RC256V` | -?> If you find that the EEPROM is not cooperating, ensure you've correctly shifted up your EEPROM address by 1. For example, the datasheet might state the address as `0b01010000` -- the correct value of `EXTERNAL_EEPROM_I2C_BASE_ADDRESS` needs to be `0b10100000`. +::: tip +If you find that the EEPROM is not cooperating, ensure you've correctly shifted up your EEPROM address by 1. For example, the datasheet might state the address as `0b01010000` -- the correct value of `EXTERNAL_EEPROM_I2C_BASE_ADDRESS` needs to be `0b10100000`. +::: -## SPI Driver Configuration :id=spi-eeprom-driver-configuration +## SPI Driver Configuration {#spi-eeprom-driver-configuration} Currently QMK supports 25xx-series chips over SPI. As such, requires a working spi_master driver configuration. You can override the driver configuration via your config.h: @@ -74,9 +78,11 @@ Module | Equivalent `#define` | Source -----------------|---------------------------------|------------------------------------------ MB85RS64V FRAM | `define EEPROM_SPI_MB85RS64V` | -!> There's no way to determine if there is an SPI EEPROM actually responding. Generally, this will result in reads of nothing but zero. +::: warning +There's no way to determine if there is an SPI EEPROM actually responding. Generally, this will result in reads of nothing but zero. +::: -## Transient Driver configuration :id=transient-eeprom-driver-configuration +## Transient Driver configuration {#transient-eeprom-driver-configuration} The only configurable item for the transient EEPROM driver is its size: @@ -86,13 +92,13 @@ The only configurable item for the transient EEPROM driver is its size: Default values and extended descriptions can be found in `drivers/eeprom/eeprom_transient.h`. -## Wear-leveling Driver Configuration :id=wear_leveling-eeprom-driver-configuration +## Wear-leveling Driver Configuration {#wear_leveling-eeprom-driver-configuration} The wear-leveling driver uses an algorithm to minimise the number of erase cycles on the underlying MCU flash memory. There is no specific configuration for this driver, but the wear-leveling system used by this driver may need configuration. See the [wear-leveling configuration](#wear_leveling-configuration) section for more information. -# Wear-leveling Configuration :id=wear_leveling-configuration +# Wear-leveling Configuration {#wear_leveling-configuration} The wear-leveling driver has a few possible _backing stores_ that may be used by adding to your keyboard's `rules.mk` file: @@ -103,9 +109,11 @@ Driver | Description `WEAR_LEVELING_DRIVER = rp2040_flash` | This driver is used to write to the same storage the RP2040 executes code from. `WEAR_LEVELING_DRIVER = legacy` | This driver is the "legacy" emulated EEPROM provided in historical revisions of QMK. Currently used for STM32F0xx and STM32F4x1, but slated for deprecation and removal once `embedded_flash` support for those MCU families is complete. -!> All wear-leveling drivers require an amount of RAM equivalent to the selected logical EEPROM size. Increasing the size to 32kB of EEPROM requires 32kB of RAM, which a significant number of MCUs simply do not have. +::: warning +All wear-leveling drivers require an amount of RAM equivalent to the selected logical EEPROM size. Increasing the size to 32kB of EEPROM requires 32kB of RAM, which a significant number of MCUs simply do not have. +::: -## Wear-leveling Embedded Flash Driver Configuration :id=wear_leveling-efl-driver-configuration +## Wear-leveling Embedded Flash Driver Configuration {#wear_leveling-efl-driver-configuration} This driver performs writes to the embedded flash storage embedded in the MCU. In most circumstances, the last few of sectors of flash are used in order to minimise the likelihood of collision with program code. @@ -119,11 +127,13 @@ Configurable options in your keyboard's `config.h`: `#define WEAR_LEVELING_BACKING_SIZE` | `2048` | Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size. `#define BACKING_STORE_WRITE_SIZE` | _automatic_ | The byte width of the underlying write used on the MCU, and is usually automatically determined from the selected MCU family. If an error occurs in the auto-detection, you'll need to consult the MCU's datasheet and determine this value, specifying it directly. -!> If your MCU does not boot after swapping to the EFL wear-leveling driver, it's likely that the flash size is incorrectly detected, usually as an MCU with larger flash and may require overriding. +::: warning +If your MCU does not boot after swapping to the EFL wear-leveling driver, it's likely that the flash size is incorrectly detected, usually as an MCU with larger flash and may require overriding. +::: -## Wear-leveling SPI Flash Driver Configuration :id=wear_leveling-flash_spi-driver-configuration +## Wear-leveling SPI Flash Driver Configuration {#wear_leveling-flash_spi-driver-configuration} -This driver performs writes to an external SPI NOR Flash peripheral. It also requires a working configuration for the SPI NOR Flash peripheral -- see the [flash driver](flash_driver.md) documentation for more information. +This driver performs writes to an external SPI NOR Flash peripheral. It also requires a working configuration for the SPI NOR Flash peripheral -- see the [flash driver](flash_driver) documentation for more information. Configurable options in your keyboard's `config.h`: @@ -135,9 +145,11 @@ Configurable options in your keyboard's `config.h`: `#define WEAR_LEVELING_BACKING_SIZE` | `(block_count*block_size)` | Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size. `#define BACKING_STORE_WRITE_SIZE` | `8` | The write width used whenever a write is performed on the external flash peripheral. -!> There is currently a limit of 64kB for the EEPROM subsystem within QMK, so using a larger flash is not going to be beneficial as the logical size cannot be increased beyond 65536. The backing size may be increased to a larger value, but erase timing may suffer as a result. +::: warning +There is currently a limit of 64kB for the EEPROM subsystem within QMK, so using a larger flash is not going to be beneficial as the logical size cannot be increased beyond 65536. The backing size may be increased to a larger value, but erase timing may suffer as a result. +::: -## Wear-leveling RP2040 Driver Configuration :id=wear_leveling-rp2040-driver-configuration +## Wear-leveling RP2040 Driver Configuration {#wear_leveling-rp2040-driver-configuration} This driver performs writes to the same underlying storage that the RP2040 executes its code. @@ -151,7 +163,7 @@ Configurable options in your keyboard's `config.h`: `#define WEAR_LEVELING_BACKING_SIZE` | `8192` | Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size as well as the sector size. `#define BACKING_STORE_WRITE_SIZE` | `2` | The write width used whenever a write is performed on the external flash peripheral. -## Wear-leveling Legacy EEPROM Emulation Driver Configuration :id=wear_leveling-legacy-driver-configuration +## Wear-leveling Legacy EEPROM Emulation Driver Configuration {#wear_leveling-legacy-driver-configuration} This driver performs writes to the embedded flash storage embedded in the MCU much like the normal Embedded Flash Driver, and is only for use with STM32F0xx and STM32F4x1 devices. This flash implementation is still currently provided as the EFL driver is currently non-functional for the previously mentioned families. diff --git a/docs/faq_build.md b/docs/faq_build.md index b86f2177a04..7fafff10664 100644 --- a/docs/faq_build.md +++ b/docs/faq_build.md @@ -1,6 +1,6 @@ # Frequently Asked Build Questions -This page covers questions about building QMK. If you haven't yet done so, you should read the [Build Environment Setup](getting_started_build_tools.md) and [Make Instructions](getting_started_make_guide.md) guides. +This page covers questions about building QMK. If you haven't yet done so, you should read the [Build Environment Setup](newbs_getting_started) and [Make Instructions](getting_started_make_guide) guides. ## Can't Program on Linux You will need proper permissions to operate a device. For Linux users, see the instructions regarding `udev` rules, below. If you have issues with `udev`, a work-around is to use the `sudo` command. If you are not familiar with this command, check its manual with `man sudo` or [see this webpage](https://linux.die.net/man/8/sudo). @@ -17,7 +17,7 @@ or just: Note that running `make` with `sudo` is generally ***not*** a good idea, and you should use one of the former methods, if possible. -### Linux `udev` Rules :id=linux-udev-rules +### Linux `udev` Rules {#linux-udev-rules} On Linux, you'll need proper privileges to communicate with the bootloader device. You can either use `sudo` when flashing firmware (not recommended), or place [this file](https://github.com/qmk/qmk_firmware/tree/master/util/udev/50-qmk.rules) into `/etc/udev/rules.d/`. @@ -46,7 +46,7 @@ Issues encountered when flashing keyboards on Windows are most often due to havi Re-running the QMK installation script (`./util/qmk_install.sh` from the `qmk_firmware` directory in MSYS2 or WSL) or reinstalling the QMK Toolbox may fix the issue. Alternatively, you can download and run the [`qmk_driver_installer`](https://github.com/qmk/qmk_driver_installer) package manually. -If that doesn't work, then you may need to download and run Zadig. See [Bootloader Driver Installation with Zadig](driver_installation_zadig.md) for more detailed information. +If that doesn't work, then you may need to download and run Zadig. See [Bootloader Driver Installation with Zadig](driver_installation_zadig) for more detailed information. ## USB VID and PID You can use any ID you want with editing `config.h`. Using any presumably unused ID will be no problem in fact except for very low chance of collision with other product. @@ -66,4 +66,4 @@ Due to how EEPROM works on ARM based chips, saved settings may no longer be vali [Planck rev6 reset EEPROM](https://cdn.discordapp.com/attachments/473506116718952450/539284620861243409/planck_rev6_default.bin) can be used to force an eeprom reset. After flashing this image, flash your normal firmware again which should restore your keyboard to _normal_ working order. [Preonic rev3 reset EEPROM](https://cdn.discordapp.com/attachments/473506116718952450/537849497313738762/preonic_rev3_default.bin) -If bootmagic is enabled in any form, you should be able to do this too (see [Bootmagic docs](feature_bootmagic.md) and keyboard info for specifics on how to do this). +If bootmagic is enabled in any form, you should be able to do this too (see [Bootmagic docs](feature_bootmagic) and keyboard info for specifics on how to do this). diff --git a/docs/faq_debug.md b/docs/faq_debug.md index cad98bc3317..e22bc5d9ced 100644 --- a/docs/faq_debug.md +++ b/docs/faq_debug.md @@ -2,9 +2,9 @@ This page details various common questions people have about troubleshooting their keyboards. -## Debugging :id=debugging +## Debugging {#debugging} -Your keyboard will output debug information if you have `CONSOLE_ENABLE = yes` in your `rules.mk`. By default the output is very limited, but you can turn on debug mode to increase the amount of debug output. Use the `DB_TOGG` keycode in your keymap, use the [Command](feature_command.md) feature to enable debug mode, or add the following code to your keymap. +Your keyboard will output debug information if you have `CONSOLE_ENABLE = yes` in your `rules.mk`. By default the output is very limited, but you can turn on debug mode to increase the amount of debug output. Use the `DB_TOGG` keycode in your keymap, use the [Command](feature_command) feature to enable debug mode, or add the following code to your keymap. ```c void keyboard_post_init_user(void) { @@ -26,15 +26,15 @@ For compatible platforms, [QMK Toolbox](https://github.com/qmk/qmk_toolbox) can ### Debugging with QMK CLI -Prefer a terminal based solution? The [QMK CLI console command](cli_commands.md#qmk-console) can be used to display debug messages from your keyboard. +Prefer a terminal based solution? The [QMK CLI console command](cli_commands#qmk-console) can be used to display debug messages from your keyboard. ### Debugging With hid_listen Something stand-alone? [hid_listen](https://www.pjrc.com/teensy/hid_listen.html), provided by PJRC, can also be used to display debug messages. Prebuilt binaries for Windows,Linux,and MacOS are available. -## Sending Your Own Debug Messages :id=debug-api +## Sending Your Own Debug Messages {#debug-api} -Sometimes it's useful to print debug messages from within your [custom code](custom_quantum_functions.md). Doing so is pretty simple. Start by including `print.h` at the top of your file: +Sometimes it's useful to print debug messages from within your [custom code](custom_quantum_functions). Doing so is pretty simple. Start by including `print.h` at the top of your file: ```c #include "print.h" @@ -49,7 +49,7 @@ After that you can use a few different print functions: ## Debug Examples -Below is a collection of real world debugging examples. For additional information, refer to [Debugging/Troubleshooting QMK](faq_debug.md). +Below is a collection of real world debugging examples. For additional information, refer to [Debugging/Troubleshooting QMK](faq_debug). ### Which matrix position is this keypress? diff --git a/docs/faq_general.md b/docs/faq_general.md index 56b150da29b..69ef4efa17b 100644 --- a/docs/faq_general.md +++ b/docs/faq_general.md @@ -6,13 +6,13 @@ ## I don't know where to start! -If this is the case, then you should start with our [Newbs Guide](newbs.md). There is a lot of great info there, and that should cover everything you need to get started. +If this is the case, then you should start with our [Newbs Guide](newbs). There is a lot of great info there, and that should cover everything you need to get started. If that's an issue, hop onto the [QMK Configurator](https://config.qmk.fm), as that will handle a majority of what you need there. ## How can I flash the firmware I built? -First, head to the [Compiling/Flashing FAQ Page](faq_build.md). There is a good deal of info there, and you'll find a bunch of solutions to common issues there. +First, head to the [Compiling/Flashing FAQ Page](faq_build). There is a good deal of info there, and you'll find a bunch of solutions to common issues there. ## What if I have an issue that isn't covered here? @@ -26,9 +26,9 @@ Then please open an [issue](https://github.com/qmk/qmk_firmware/issues/new), and ## But `git` and `GitHub` are intimidating! -Don't worry, we have some pretty nice [Guidelines](newbs_git_best_practices.md) on how to start using `git` and GitHub to make things easier to develop. +Don't worry, we have some pretty nice [Guidelines](newbs_git_best_practices) on how to start using `git` and GitHub to make things easier to develop. -Additionally, you can find additional `git` and GitHub related links [here](newbs_learn_more_resources.md). +Additionally, you can find additional `git` and GitHub related links [here](newbs_learn_more_resources). ## I have a Keyboard that I want to add support for @@ -46,7 +46,7 @@ If you have any questions about this, open an issue or head to [Discord](https:/ TMK was originally designed and implemented by [Jun Wako](https://github.com/tmk). QMK started as [Jack Humbert](https://github.com/jackhumbert)'s fork of TMK for the Planck. After a while Jack's fork had diverged quite a bit from TMK, and in 2015 Jack decided to rename his fork to QMK. -From a technical standpoint QMK builds upon TMK by adding several new features. Most notably QMK has expanded the number of available keycodes and uses these to implement advanced features like `S()`, `LCTL()`, and `MO()`. You can see a complete list of these keycodes in [Keycodes](keycodes.md). +From a technical standpoint QMK builds upon TMK by adding several new features. Most notably QMK has expanded the number of available keycodes and uses these to implement advanced features like `S()`, `LCTL()`, and `MO()`. You can see a complete list of these keycodes in [Keycodes](keycodes). From a project and community management standpoint TMK maintains all the officially supported keyboards by himself, with a bit of community support. Separate community maintained forks exist or can be created for other keyboards. Only a few keymaps are provided by default, so users typically don't share keymaps with each other. QMK encourages sharing of both keyboards and keymaps through a centrally managed repository, accepting all pull requests that follow the quality standards. These are mostly community maintained, but the QMK team also helps when necessary. diff --git a/docs/faq_keymap.md b/docs/faq_keymap.md index 86412818350..0070b6d1de1 100644 --- a/docs/faq_keymap.md +++ b/docs/faq_keymap.md @@ -1,10 +1,10 @@ # Keymap FAQ -This page covers questions people often have about keymaps. If you haven't you should read [Keymap Overview](keymap.md) first. +This page covers questions people often have about keymaps. If you haven't you should read [Keymap Overview](keymap) first. ## What Keycodes Can I Use? -See [Keycodes](keycodes.md) for an index of keycodes available to you. These link to more extensive documentation when available. +See [Keycodes](keycodes) for an index of keycodes available to you. These link to more extensive documentation when available. Keycodes are actually defined in [quantum/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/keycode.h). @@ -44,8 +44,8 @@ QMK has a couple of features which allow you to change the behavior of your keyb Refer to the EEPROM clearing methods above, which should return those keys to normal operation. If that doesn't work, look here: -* [Magic Keycodes](keycodes_magic.md) -* [Command](feature_command.md) +* [Magic Keycodes](keycodes_magic) +* [Command](feature_command) ## The Menu Key Isn't Working @@ -86,7 +86,7 @@ Old vintage mechanical keyboards occasionally have lock switches but modern ones ## Input Special Characters Other Than ASCII like Cédille 'Ç' -See the [Unicode](feature_unicode.md) feature. +See the [Unicode](feature_unicode) feature. ## `Fn` Key on macOS @@ -130,7 +130,7 @@ https://github.com/tekezo/Karabiner/issues/403 ## Esc and ` on a Single Key -See the [Grave Escape](feature_grave_esc.md) feature. +See the [Grave Escape](feature_grave_esc) feature. ## Eject on Mac OSX diff --git a/docs/faq_misc.md b/docs/faq_misc.md index 287ca7711d1..133dbcf6126 100644 --- a/docs/faq_misc.md +++ b/docs/faq_misc.md @@ -1,6 +1,6 @@ # Miscellaneous FAQ -## How do I test my keyboard? :id=testing +## How do I test my keyboard? {#testing} Testing your keyboard is usually pretty straightforward. Press every single key and make sure it sends the keys you expect. You can use [QMK Configurator](https://config.qmk.fm/#/test/)'s test mode to check your keyboard, even if it doesn't run QMK. diff --git a/docs/feature_advanced_keycodes.md b/docs/feature_advanced_keycodes.md index 171243301d3..50dc0bb2815 100644 --- a/docs/feature_advanced_keycodes.md +++ b/docs/feature_advanced_keycodes.md @@ -1,4 +1,4 @@ -# Modifier Keys :id=modifier-keys +# Modifier Keys {#modifier-keys} These allow you to combine a modifier with a keycode. When pressed, the keydown event for the modifier, then `kc` will be sent. On release, the keyup event for `kc`, then the modifier will be sent. @@ -26,7 +26,7 @@ These allow you to combine a modifier with a keycode. When pressed, the keydown You can also chain them, for example `LCTL(LALT(KC_DEL))` or `C(A(KC_DEL))` makes a key that sends Control+Alt+Delete with a single keypress. -# Checking Modifier State :id=checking-modifier-state +# Checking Modifier State {#checking-modifier-state} The current modifier state can mainly be accessed with two functions: `get_mods()` for normal modifiers and modtaps and `get_oneshot_mods()` for one-shot modifiers (unless they're held, in which case they act like normal modifier keys). @@ -35,7 +35,7 @@ The presence of one or more specific modifiers in the current modifier state can Thus, to give an example, `01000010` would be the internal representation of LShift+RAlt. For more information on bitwise operators in C, click [here](https://en.wikipedia.org/wiki/Bitwise_operations_in_C) to open the Wikipedia page on the topic. -In practice, this means that you can check whether a given modifier is active with `get_mods() & MOD_BIT(KC_)` (see the [list of modifier keycodes](keycodes_basic.md#modifiers)) or with `get_mods() & MOD_MASK_` if the difference between left and right hand modifiers is not important and you want to match both. Same thing can be done for one-shot modifiers if you replace `get_mods()` with `get_oneshot_mods()`. +In practice, this means that you can check whether a given modifier is active with `get_mods() & MOD_BIT(KC_)` (see the [list of modifier keycodes](keycodes_basic#modifiers)) or with `get_mods() & MOD_MASK_` if the difference between left and right hand modifiers is not important and you want to match both. Same thing can be done for one-shot modifiers if you replace `get_mods()` with `get_oneshot_mods()`. To check that *only* a specific set of mods is active at a time, use a simple equality operator: `get_mods() == `. @@ -77,11 +77,11 @@ Similarly, in addition to `get_oneshot_mods()`, there also exists these function * `set_oneshot_mods(mods)`: Overwrite current one-shot modifier state with `mods` * `clear_oneshot_mods()`: Reset the one-shot modifier state by disabling all one-shot modifiers -## Examples :id=examples +## Examples {#examples} -The following examples use [advanced macro functions](feature_macros.md#advanced-macro-functions) which you can read more about in the [documentation page on macros](feature_macros.md). +The following examples use [advanced macro functions](feature_macros#advanced-macro-functions) which you can read more about in the [documentation page on macros](feature_macros). -### Alt + Escape for Alt + Tab :id=alt-escape-for-alt-tab +### Alt + Escape for Alt + Tab {#alt-escape-for-alt-tab} Simple example where chording Left Alt with `KC_ESC` makes it behave like `KC_TAB` for alt-tabbing between applications. This example strictly checks if only Left Alt is active, meaning you can't do Alt+Shift+Esc to switch between applications in reverse order. Also keep in mind that this removes the ability to trigger the actual Alt+Escape keyboard shortcut, though it keeps the ability to do AltGr+Escape. @@ -110,7 +110,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { }; ``` -### Shift + Backspace for Delete :id=shift-backspace-for-delete +### Shift + Backspace for Delete {#shift-backspace-for-delete} Advanced example where the original behaviour of shift is cancelled when chorded with `KC_BSPC` and is instead fully replaced by `KC_DEL`. Two main variables are created to make this work well: `mod_state` and `delkey_registered`. The first one stores the modifier state and is used to restore it after registering `KC_DEL`. The second variable is a boolean variable (true or false) which keeps track of the status of `KC_DEL` to manage the release of the whole Backspace/Delete key correctly. @@ -160,28 +160,28 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return true; }; ``` -Alternatively, this can be done with [Key Overrides](feature_key_overrides?id=simple-example). +Alternatively, this can be done with [Key Overrides](feature_key_overrides#simple-example). -# Advanced topics :id=advanced-topics +# Advanced topics {#advanced-topics} This page used to encompass a large set of features. We have moved many sections that used to be part of this page to their own pages. Everything below this point is simply a redirect so that people following old links on the web find what they're looking for. -## Layers :id=switching-and-toggling-layers +## Layers {#switching-and-toggling-layers} -* [Layers](feature_layers.md) +* [Layers](feature_layers) -## Mod-Tap :id=mod-tap +## Mod-Tap {#mod-tap} -* [Mod-Tap](mod_tap.md) +* [Mod-Tap](mod_tap) -## One Shot Keys :id=one-shot-keys +## One Shot Keys {#one-shot-keys} -* [One Shot Keys](one_shot_keys.md) +* [One Shot Keys](one_shot_keys) -## Tap-Hold Configuration Options :id=tap-hold-configuration-options +## Tap-Hold Configuration Options {#tap-hold-configuration-options} -* [Tap-Hold Configuration Options](tap_hold.md) +* [Tap-Hold Configuration Options](tap_hold) -## Key Overrides :id=key-overrides +## Key Overrides {#key-overrides} -* [Key Overrides](feature_key_overrides.md) +* [Key Overrides](feature_key_overrides) diff --git a/docs/feature_audio.md b/docs/feature_audio.md index 05f32e98401..c83d6e3d939 100644 --- a/docs/feature_audio.md +++ b/docs/feature_audio.md @@ -27,7 +27,7 @@ per speaker is - for example with a piezo buzzer - the black lead to Ground, and ## ARM based boards -for more technical details, see the notes on [Audio driver](audio_driver.md). +for more technical details, see the notes on [Audio driver](audio_driver). ### DAC (basic) @@ -131,7 +131,7 @@ You can override the default songs by doing something like this in your `config. ```c #ifdef AUDIO_ENABLE -# define STARTUP_SONG SONG(STARTUP_SOUND) +# define STARTUP_SONG SONG(STARTUP_SOUND) #endif ``` @@ -167,7 +167,9 @@ The available keycodes for audio are: |`QK_AUDIO_OFF` |`AU_OFF` |Turns off Audio Feature | |`QK_AUDIO_TOGGLE` |`AU_TOGG`|Toggles Audio state | -!> These keycodes turn all of the audio functionality on and off. Turning it off means that audio feedback, audio clicky, music mode, etc. are disabled, completely. +::: warning +These keycodes turn all of the audio functionality on and off. Turning it off means that audio feedback, audio clicky, music mode, etc. are disabled, completely. +::: ## Audio Config @@ -346,7 +348,7 @@ You can configure the default, min and max frequencies, the stepping and built i ## MIDI Functionality -See [MIDI](feature_midi.md) +See [MIDI](feature_midi) ## Audio Keycodes diff --git a/docs/feature_auto_shift.md b/docs/feature_auto_shift.md index 74be33cdd47..3dbaec555e6 100644 --- a/docs/feature_auto_shift.md +++ b/docs/feature_auto_shift.md @@ -100,7 +100,9 @@ occasion. This is simply due to habit and holding some keys a little longer than others. Once you find this value, work on tapping your problem keys a little quicker than normal and you will be set. -?> Auto Shift has three special keys that can help you get this value right very quick. See "Auto Shift Setup" for more details! +::: tip +Auto Shift has three special keys that can help you get this value right very quick. See "Auto Shift Setup" for more details! +::: For more granular control of this feature, you can add the following to your `config.h`: @@ -179,23 +181,23 @@ For more granular control, there is `get_auto_shifted_key`. The default function ```c bool get_auto_shifted_key(uint16_t keycode, keyrecord_t *record) { switch (keycode) { -# ifndef NO_AUTO_SHIFT_ALPHA +# ifndef NO_AUTO_SHIFT_ALPHA case AUTO_SHIFT_ALPHA: -# endif -# ifndef NO_AUTO_SHIFT_NUMERIC +# endif +# ifndef NO_AUTO_SHIFT_NUMERIC case AUTO_SHIFT_NUMERIC: -# endif -# ifndef NO_AUTO_SHIFT_SPECIAL -# ifndef NO_AUTO_SHIFT_TAB +# endif +# ifndef NO_AUTO_SHIFT_SPECIAL +# ifndef NO_AUTO_SHIFT_TAB case KC_TAB: # endif -# ifndef NO_AUTO_SHIFT_SYMBOLS +# ifndef NO_AUTO_SHIFT_SYMBOLS case AUTO_SHIFT_SYMBOLS: # endif -# endif -# ifdef AUTO_SHIFT_ENTER +# endif +# ifdef AUTO_SHIFT_ENTER case KC_ENT: -# endif +# endif return true; } return get_custom_auto_shifted_key(keycode, record); @@ -290,7 +292,7 @@ Holding and releasing a Tap Hold key without pressing another key will ordinaril result in only the hold. With `retro shift` enabled this action will instead produce a shifted version of the tap keycode on release. -It does not require [Retro Tapping](tap_hold.md#retro-tapping) to be enabled, and +It does not require [Retro Tapping](tap_hold#retro-tapping) to be enabled, and if both are enabled the state of `retro tapping` will only apply if the tap keycode is not matched by Auto Shift. `RETRO_TAPPING_PER_KEY` and its corresponding function, however, are checked before `retro shift` is applied. @@ -314,10 +316,10 @@ Without a value set, holds of any length without an interrupting key will produc This value (if set) must be greater than one's `TAPPING_TERM`, as the key press must be designated as a 'hold' by `process_tapping` before we send the modifier. -[Per-key tapping terms](tap_hold.md#tapping-term) can be used as a workaround. +[Per-key tapping terms](tap_hold#tapping-term) can be used as a workaround. There is no such limitation in regards to `AUTO_SHIFT_TIMEOUT` for normal keys. -**Note:** Tap Holds must be added to Auto Shift, see [here.](feature_auto_shift.md#auto-shift-per-key) +**Note:** Tap Holds must be added to Auto Shift, see [here.](feature_auto_shift#auto-shift-per-key) `IS_RETRO` may be helpful if one wants all Tap Holds retro shifted. ### Retro Shift and Tap Hold Configurations @@ -326,7 +328,7 @@ Tap Hold Configurations work a little differently when using Retro Shift. Referencing `TAPPING_TERM` makes little sense, as holding longer would result in shifting one of the keys. -`RETRO_SHIFT` enables [`PERMISSIVE_HOLD`-like behaviour](tap_hold.md#permissive-hold) (even if not explicitly enabled) on all mod-taps for which `RETRO_SHIFT` applies. +`RETRO_SHIFT` enables [`PERMISSIVE_HOLD`-like behaviour](tap_hold#permissive-hold) (even if not explicitly enabled) on all mod-taps for which `RETRO_SHIFT` applies. ## Using Auto Shift Setup diff --git a/docs/feature_autocorrect.md b/docs/feature_autocorrect.md index 3a0a49095c6..1ad582207aa 100644 --- a/docs/feature_autocorrect.md +++ b/docs/feature_autocorrect.md @@ -2,7 +2,7 @@ There are a lot of words that are prone to being typed incorrectly, due to habit, sequence or just user error. This feature leverages your firmware to automatically correct these errors, to help reduce typos. -## How does it work? :id=how-does-it-work +## How does it work? {#how-does-it-work} The feature maintains a small buffer of recent key presses. On each key press, it checks whether the buffer ends in a recognized typo, and if so, automatically sends keystrokes to correct it. @@ -12,7 +12,7 @@ The tricky part is how to efficiently check the buffer for typos. We don’t wan Since we search whether the buffer ends in a typo, we store the trie writing in reverse. The trie is queried starting from the last letter, then second to last letter, and so on, until either a letter doesn’t match or we reach a leaf, meaning a typo was found. -## How do I enable Autocorrection :id=how-do-i-enable-autocorrection +## How do I enable Autocorrection {#how-do-i-enable-autocorrection} In your `rules.mk`, add this: @@ -24,7 +24,7 @@ Additionally, you will need a library for autocorrection. A small sample librar By default, autocorrect is disabled. To enable it, you need to use the `AC_TOGG` keycode to enable it. The status is stored in persistent memory, so you shouldn't need to enabled it again. -## Customizing autocorrect library :id=customizing-autocorrect-library +## Customizing autocorrect library {#customizing-autocorrect-library} To provide a custom library, you need to create a text file with the corrections. For instance: @@ -66,7 +66,7 @@ static const uint8_t autocorrect_data[DICTIONARY_SIZE] PROGMEM = {85, 7, 0, 23, 0}; ``` -### Avoiding false triggers :id=avoiding-false-triggers +### Avoiding false triggers {#avoiding-false-triggers} By default, typos are searched within words, to find typos within longer identifiers like maxFitlerOuput. While this is useful, a consequence is that autocorrection will falsely trigger when a typo happens to be a substring of a correctly-spelled word. For instance, if we had thier -> their as an entry, it would falsely trigger on (correct, though relatively uncommon) words like “wealthier” and “filthier.” @@ -82,7 +82,9 @@ The solution is to set a word break : before and/or after the typo to constrain The `qmk generate-autocorrect-data` commands can make an effort to check for entries that would false trigger as substrings of correct words. It searches each typo against a dictionary of 25K English words from the english_words Python package, provided it’s installed. (run `python3 -m pip install english_words` to install it.) -?> Unfortunately, this is limited to just english words, at this point. +::: tip +Unfortunately, this is limited to just english words, at this point. +::: ## Overriding Autocorrect @@ -96,7 +98,7 @@ This works because the autocorrection implementation doesn’t understand hotkey Additionally, you can use the `AC_TOGG` keycode to toggle the on/off status for Autocorrect. -### Keycodes :id=keycodes +### Keycodes {#keycodes} |Keycode |Aliases |Description | |-----------------------|---------|----------------------------------------------| @@ -110,7 +112,9 @@ Additionally, you can use the `AC_TOGG` keycode to toggle the on/off status for Callback function `bool process_autocorrect_user(uint16_t *keycode, keyrecord_t *record, uint8_t *typo_buffer_size, uint8_t *mods)` is available to customise incoming keycodes and handle exceptions. You can use this function to sanitise input before they are passed onto the autocorrect engine -?> Sanitisation of input is required because autocorrect will only match 8-bit [basic keycodes](keycodes_basic.md) for typos. If valid modifier keys or 16-bit keycodes that are part of a user's word input (such as Shift + A) is passed through, they will fail typo letter detection. For example a [Mod-Tap](mod_tap.md) key such as `LCTL_T(KC_A)` is 16-bit and should be masked for the 8-bit `KC_A`. +::: tip +Sanitisation of input is required because autocorrect will only match 8-bit [basic keycodes](keycodes_basic) for typos. If valid modifier keys or 16-bit keycodes that are part of a user's word input (such as Shift + A) is passed through, they will fail typo letter detection. For example a [Mod-Tap](mod_tap) key such as `LCTL_T(KC_A)` is 16-bit and should be masked for the 8-bit `KC_A`. +::: The default user callback function is found inside `quantum/process_keycode/process_autocorrect.c`. It covers most use-cases for QMK special functions and quantum keycodes, including [overriding autocorrect](#overriding-autocorrect) with a modifier other than shift. The `process_autocorrect_user` function is `weak` defined to allow user's copy inside `keymap.c` (or code files) to overwrite it. @@ -145,11 +149,11 @@ bool process_autocorrect_user(uint16_t *keycode, keyrecord_t *record, uint8_t *t // Exclude tap-hold keys when they are held down // and mask for base keycode when they are tapped. case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: -# ifdef NO_ACTION_LAYER +# ifdef NO_ACTION_LAYER // Exclude Layer Tap, if layers are disabled // but action tapping is still enabled. return false; -# endif +# endif case QK_MOD_TAP ... QK_MOD_TAP_MAX: // Exclude hold if mods other than Shift is not active if (!record->tap.count) { @@ -194,13 +198,17 @@ bool process_autocorrect_user(uint16_t *keycode, keyrecord_t *record, uint8_t *t } ``` -?> In this callback function, `return false` will skip processing of that keycode for autocorrect. Adding `*typo_buffer_size = 0` will also reset the autocorrect buffer at the same time, cancelling any current letters already stored in the buffer. +::: tip +In this callback function, `return false` will skip processing of that keycode for autocorrect. Adding `*typo_buffer_size = 0` will also reset the autocorrect buffer at the same time, cancelling any current letters already stored in the buffer. +::: ### Apply Autocorrect Additionally, `apply_autocorrect(uint8_t backspaces, const char *str, char *typo, char *correct)` allows for users to add additional handling to the autocorrection, or replace the functionality entirely. This passes on the number of backspaces needed to replace the words, as well as the replacement string (partial word, not the full word), and the typo and corrected strings (complete words). -?> Due to the way code works (no notion of words, just a stream of letters), the `typo` and `correct` strings are a best bet and could be "wrong". For example you may get `wordtpyo` & `wordtypo` instead of the expected `tpyo` & `typo`. +::: tip +Due to the way code works (no notion of words, just a stream of letters), the `typo` and `correct` strings are a best bet and could be "wrong". For example you may get `wordtpyo` & `wordtypo` instead of the expected `tpyo` & `typo`. +::: #### Apply Autocorrect Example @@ -223,9 +231,13 @@ bool apply_autocorrect(uint8_t backspaces, const char *str, char *typo, char *co } ``` -?> In this callback function, `return false` will stop the normal processing of autocorrect, which requires manually handling of removing the "bad" characters and typing the new characters. +::: tip +In this callback function, `return false` will stop the normal processing of autocorrect, which requires manually handling of removing the "bad" characters and typing the new characters. +::: -!> ***IMPORTANT***: `str` is a pointer to `PROGMEM` data for the autocorrection. If you return false, and want to send the string, this needs to use `send_string_P` and not `send_string` nor `SEND_STRING`. +::: warning +***IMPORTANT***: `str` is a pointer to `PROGMEM` data for the autocorrection. If you return false, and want to send the string, this needs to use `send_string_P` and not `send_string` nor `SEND_STRING`. +::: You can also use `apply_autocorrect` to detect and display the event but allow internal code to execute the autocorrection with `return true`: @@ -253,13 +265,13 @@ Additional user callback functions to manipulate Autocorrect: | `autocorrect_is_enabled()` | Returns true if Autocorrect is currently on. | -## Appendix: Trie binary data format :id=appendix +## Appendix: Trie binary data format {#appendix} This section details how the trie is serialized to byte data in autocorrect_data. You don’t need to care about this to use this autocorrection implementation. But it is documented for the record in case anyone is interested in modifying the implementation, or just curious how it works. What I did here is fairly arbitrary, but it is simple to decode and gets the job done. -### Encoding :id=encoding +### Encoding {#encoding} All autocorrection data is stored in a single flat array autocorrect_data. Each trie node is associated with a byte offset into this array, where data for that node is encoded, beginning with root at offset 0. There are three kinds of nodes. The highest two bits of the first byte of the node indicate what kind: @@ -299,7 +311,7 @@ If we were to encode this chain using the same format used for branching nodes, +-------+-------+-------+-------+-------+-------+ ``` -### Decoding :id=decoding +### Decoding {#decoding} This format is by design decodable with fairly simple logic. A 16-bit variable state represents our current position in the trie, initialized with 0 to start at the root node. Then, for each keycode, test the highest two bits in the byte at state to identify the kind of node. diff --git a/docs/feature_backlight.md b/docs/feature_backlight.md index 69391fcefe9..545d7be9495 100644 --- a/docs/feature_backlight.md +++ b/docs/feature_backlight.md @@ -1,10 +1,10 @@ -# Backlighting :id=backlighting +# Backlighting {#backlighting} -Many keyboards support backlit keys by way of individual LEDs placed through or underneath the keyswitches. This feature is distinct from both the [RGB Underglow](feature_rgblight.md) and [RGB Matrix](feature_rgb_matrix.md) features as it usually allows for only a single colour per switch, though you can obviously install multiple different single coloured LEDs on a keyboard. +Many keyboards support backlit keys by way of individual LEDs placed through or underneath the keyswitches. This feature is distinct from both the [RGB Underglow](feature_rgblight) and [RGB Matrix](feature_rgb_matrix) features as it usually allows for only a single colour per switch, though you can obviously install multiple different single coloured LEDs on a keyboard. QMK is able to control the brightness of these LEDs by switching them on and off rapidly in a certain ratio, a technique known as *Pulse Width Modulation*, or PWM. By altering the duty cycle of the PWM signal, it creates the illusion of dimming. -## Usage :id=usage +## Usage {#usage} Most keyboards have backlighting enabled by default if they support it, but if it is not working for you (or you have added support), check that your `rules.mk` includes the following: @@ -12,7 +12,7 @@ Most keyboards have backlighting enabled by default if they support it, but if i BACKLIGHT_ENABLE = yes ``` -## Keycodes :id=keycodes +## Keycodes {#keycodes} |Key |Aliases |Description | |-------------------------------|---------|-----------------------------------| @@ -24,7 +24,7 @@ BACKLIGHT_ENABLE = yes |`QK_BACKLIGHT_DOWN` |`BL_DOWN`|Decrease the backlight level | |`QK_BACKLIGHT_TOGGLE_BREATHING`|`BL_BRTG`|Toggle backlight breathing | -## Basic Configuration :id=basic-configuration +## Basic Configuration {#basic-configuration} Add the following to your `config.h`: @@ -43,7 +43,7 @@ Add the following to your `config.h`: Unless you are designing your own keyboard, you generally should not need to change the `BACKLIGHT_PIN` or `BACKLIGHT_ON_STATE`. -### "On" State :id=on-state +### "On" State {#on-state} Most backlight circuits are driven by an N-channel MOSFET or NPN transistor. This means that to turn the transistor *on* and light the LEDs, you must drive the backlight pin, connected to the gate or base, *high*. Sometimes, however, a P-channel MOSFET, or a PNP transistor is used. In this case, when the transistor is on, the pin is driven *low* instead. @@ -54,7 +54,7 @@ To configure the "on" state of the backlight circuit, add the following to your #define BACKLIGHT_ON_STATE 0 ``` -### Multiple Backlight Pins :id=multiple-backlight-pins +### Multiple Backlight Pins {#multiple-backlight-pins} Most keyboards have only one backlight pin which controls all backlight LEDs (especially if the backlight is connected to a hardware PWM pin). The `timer` and `software` drivers allow you to define multiple backlight pins, which will be turned on and off at the same time during the PWM duty cycle. @@ -67,11 +67,11 @@ To configure multiple backlight pins, add something like this to your `config.h` #define BACKLIGHT_PINS { F5, B2 } ``` -## Driver Configuration :id=driver-configuration +## Driver Configuration {#driver-configuration} Backlight driver selection is configured in `rules.mk`. Valid drivers are `pwm` (default), `timer`, `software`, or `custom`. See below for information on individual drivers. -### PWM Driver :id=pwm-driver +### PWM Driver {#pwm-driver} This is the default backlight driver, which leverages the hardware PWM output capability of the microcontroller. @@ -79,7 +79,7 @@ This is the default backlight driver, which leverages the hardware PWM output ca BACKLIGHT_DRIVER = pwm ``` -### Timer Driver :id=timer-driver +### Timer Driver {#timer-driver} This driver is similar to the PWM driver, but instead of directly configuring the pin to output a PWM signal, an interrupt handler is attached to the timer to turn the pin on and off as appropriate. @@ -87,7 +87,7 @@ This driver is similar to the PWM driver, but instead of directly configuring th BACKLIGHT_DRIVER = timer ``` -### Software Driver :id=software-driver +### Software Driver {#software-driver} In this mode, PWM is "emulated" while running other keyboard tasks. It offers maximum hardware compatibility without extra platform configuration. However, breathing is not supported, and the backlight can flicker when the keyboard is busy. @@ -95,7 +95,7 @@ In this mode, PWM is "emulated" while running other keyboard tasks. It offers ma BACKLIGHT_DRIVER = software ``` -### Custom Driver :id=custom-driver +### Custom Driver {#custom-driver} If none of the above drivers apply to your board (for example, you are using a separate IC to control the backlight), you can implement a custom backlight driver using a simple API. @@ -120,9 +120,9 @@ void backlight_task(void) { } ``` -## AVR Configuration :id=avr-configuration +## AVR Configuration {#avr-configuration} -### PWM Driver :id=avr-pwm-driver +### PWM Driver {#avr-pwm-driver} The following table describes the supported pins for the PWM driver. Only cells marked with a timer number are capable of hardware PWM output; any others must use the `timer` driver. @@ -139,7 +139,7 @@ The following table describes the supported pins for the PWM driver. Only cells |`D4` | | | | |Timer 1 | | |`D5` | | | | |Timer 1 | | -### Timer Driver :id=avr-timer-driver +### Timer Driver {#avr-timer-driver} Any GPIO pin can be used with this driver. The following table describes the supported timers: @@ -153,11 +153,11 @@ The following `#define`s apply only to the `timer` driver: |-----------------------|-------|----------------| |`BACKLIGHT_PWM_TIMER` |`1` |The timer to use| -Note that the choice of timer may conflict with the [Audio](feature_audio.md) feature. +Note that the choice of timer may conflict with the [Audio](feature_audio) feature. -## ChibiOS/ARM Configuration :id=arm-configuration +## ChibiOS/ARM Configuration {#arm-configuration} -### PWM Driver :id=arm-pwm-driver +### PWM Driver {#arm-pwm-driver} Depending on the ChibiOS board configuration, you may need to enable PWM at the keyboard level. For STM32, this would look like: @@ -183,7 +183,7 @@ The following `#define`s apply only to the `pwm` driver: Refer to the ST datasheet for your particular MCU to determine these values. For example, these defaults are set up for pin `B8` on a Proton-C (STM32F303) using `TIM4_CH3` on AF2. Unless you are designing your own keyboard, you generally should not need to change them. -### Timer Driver :id=arm-timer-driver +### Timer Driver {#arm-timer-driver} Depending on the ChibiOS board configuration, you may need to enable general-purpose timers at the keyboard level. For STM32, this would look like: @@ -213,97 +213,97 @@ The values of these resistors are not critical - see [this Electronics StackExch ![Backlight example circuit](https://i.imgur.com/BmAvoUC.png) -## API :id=api +## API {#api} -### `void backlight_toggle(void)` :id=api-backlight-toggle +### `void backlight_toggle(void)` {#api-backlight-toggle} Toggle the backlight on or off. --- -### `void backlight_enable(void)` :id=api-backlight-enable +### `void backlight_enable(void)` {#api-backlight-enable} Turn the backlight on. --- -### `void backlight_disable(void)` :id=api-backlight-disable +### `void backlight_disable(void)` {#api-backlight-disable} Turn the backlight off. --- -### `void backlight_step(void)` :id=api-backlight-step +### `void backlight_step(void)` {#api-backlight-step} Cycle through backlight levels. --- -### `void backlight_increase(void)` :id=api-backlight-increase +### `void backlight_increase(void)` {#api-backlight-increase} Increase the backlight level. --- -### `void backlight_decrease(void)` :id=api-backlight-decrease +### `void backlight_decrease(void)` {#api-backlight-decrease} Decrease the backlight level. --- -### `void backlight_level(uint8_t level)` :id=api-backlight-level +### `void backlight_level(uint8_t level)` {#api-backlight-level} Set the backlight level. -#### Arguments :id=api-backlight-level-arguments +#### Arguments {#api-backlight-level-arguments} - `uint8_t level` The level to set, from 0 to `BACKLIGHT_LEVELS`. --- -### `uint8_t get_backlight_level(void)` :id=api-get-backlight-level +### `uint8_t get_backlight_level(void)` {#api-get-backlight-level} Get the current backlight level. -#### Return Value :id=api-get-backlight-level-return +#### Return Value {#api-get-backlight-level-return} The current backlight level, from 0 to `BACKLIGHT_LEVELS`. --- -### `bool is_backlight_enabled(void)` :id=api-is-backlight-enabled +### `bool is_backlight_enabled(void)` {#api-is-backlight-enabled} Get the current backlight state. -#### Return Value :id=api-is-backlight-enabled-return +#### Return Value {#api-is-backlight-enabled-return} `true` if the backlight is enabled. --- -### `void backlight_toggle_breathing(void)` :id=api-backlight-toggle-breathing +### `void backlight_toggle_breathing(void)` {#api-backlight-toggle-breathing} Toggle backlight breathing on or off. --- -### `void backlight_enable_breathing(void)` :id=api-backlight-enable-breathing +### `void backlight_enable_breathing(void)` {#api-backlight-enable-breathing} Turn backlight breathing on. --- -### `void backlight_disable_breathing(void)` :id=api-backlight-disable-breathing +### `void backlight_disable_breathing(void)` {#api-backlight-disable-breathing} Turn backlight breathing off. --- -### `bool is_backlight_breathing(void)` :id=api-is-backlight-breathing +### `bool is_backlight_breathing(void)` {#api-is-backlight-breathing} Get the current backlight breathing state. -#### Return Value :id=api-is-backlight-breathing-return +#### Return Value {#api-is-backlight-breathing-return} `true` if backlight breathing is enabled. diff --git a/docs/feature_bluetooth.md b/docs/feature_bluetooth.md index 5fac06fba75..7562a75447d 100644 --- a/docs/feature_bluetooth.md +++ b/docs/feature_bluetooth.md @@ -26,7 +26,7 @@ A Bluefruit UART friend can be converted to an SPI friend, however this [require ## Bluetooth Rules.mk Options -The currently supported Bluetooth chipsets do not support [N-Key Rollover (NKRO)](reference_glossary.md#n-key-rollover-nkro), so `rules.mk` must contain `NKRO_ENABLE = no`. +The currently supported Bluetooth chipsets do not support [N-Key Rollover (NKRO)](reference_glossary#n-key-rollover-nkro), so `rules.mk` must contain `NKRO_ENABLE = no`. Add the following to your `rules.mk`: diff --git a/docs/feature_bootmagic.md b/docs/feature_bootmagic.md index 564760be925..df0344ee8e9 100644 --- a/docs/feature_bootmagic.md +++ b/docs/feature_bootmagic.md @@ -1,4 +1,4 @@ -# Bootmagic :id=bootmagic +# Bootmagic {#bootmagic} The Bootmagic feature that only handles jumping into the bootloader. This is great for boards that don't have a physical reset button, giving you a way to jump into the bootloader @@ -19,11 +19,13 @@ By default, these are set to 0 and 0, which is usually the "ESC" key on a majori And to trigger the bootloader, you hold this key down when plugging the keyboard in. Just the single key. -!> Using Bootmagic will **always reset** the EEPROM, so you will lose any settings that have been saved. +::: warning +Using Bootmagic will **always reset** the EEPROM, so you will lose any settings that have been saved. +::: ## Split Keyboards -When [handedness](feature_split_keyboard.md#setting-handedness) is predetermined via options like `SPLIT_HAND_PIN` or `EE_HANDS`, you might need to configure a different key between halves. To identify the correct key for the right half, examine the split key matrix defined in the `.h` file, e.g.: +When [handedness](feature_split_keyboard#setting-handedness) is predetermined via options like `SPLIT_HAND_PIN` or `EE_HANDS`, you might need to configure a different key between halves. To identify the correct key for the right half, examine the split key matrix defined in the `.h` file, e.g.: ```c #define LAYOUT_split_3x5_2( \ @@ -51,7 +53,9 @@ If you pick the top right key for the right half, it is `R05` on the top layout. #define BOOTMAGIC_COLUMN_RIGHT 4 ``` -?> These values are not set by default. +::: tip +These values are not set by default. +::: ## Advanced Bootmagic @@ -76,6 +80,6 @@ You can define additional logic here. For instance, resetting the EEPROM or requ ## Addenda -To manipulate settings that were formerly configured through the now-deprecated full Bootmagic feature, see [Magic Keycodes](keycodes_magic.md). +To manipulate settings that were formerly configured through the now-deprecated full Bootmagic feature, see [Magic Keycodes](keycodes_magic). -The Command feature, formerly known as Magic, also allows you to control different aspects of your keyboard. While it shares some functionality with Magic Keycodes, it also allows you to do things that Magic Keycodes cannot, such as printing version information to the console. For more information, see [Command](feature_command.md). +The Command feature, formerly known as Magic, also allows you to control different aspects of your keyboard. While it shares some functionality with Magic Keycodes, it also allows you to do things that Magic Keycodes cannot, such as printing version information to the console. For more information, see [Command](feature_command). diff --git a/docs/feature_caps_word.md b/docs/feature_caps_word.md index 7f726b059d8..666edecb6ec 100644 --- a/docs/feature_caps_word.md +++ b/docs/feature_caps_word.md @@ -32,7 +32,7 @@ a modern alternative to Caps Lock: shift](#configure-which-keys-are-word-breaking). -## How do I enable Caps Word :id=how-do-i-enable-caps-word +## How do I enable Caps Word {#how-do-i-enable-caps-word} In your `rules.mk`, add: @@ -62,16 +62,16 @@ Next, use one the following methods to activate Caps Word: * **Custom activation**: You can activate Caps Word from code by calling `caps_word_on()`. This may be used to activate Caps Word through [a - combo](feature_combo.md) or [tap dance](feature_tap_dance.md) or any means + combo](feature_combo) or [tap dance](feature_tap_dance) or any means you like. -### Troubleshooting: Command :id=troubleshooting-command +### Troubleshooting: Command {#troubleshooting-command} When using `BOTH_SHIFTS_TURNS_ON_CAPS_WORD`, you might see a compile message **"BOTH_SHIFTS_TURNS_ON_CAPS_WORD and Command should not be enabled at the same time, since both use the Left Shift + Right Shift key combination."** -Many keyboards enable the [Command feature](feature_command.md), which by +Many keyboards enable the [Command feature](feature_command), which by default is also activated using the Left Shift + Right Shift key combination. To fix this conflict, please disable Command by adding in rules.mk: @@ -88,9 +88,9 @@ by defining `IS_COMMAND()` in config.h: ``` -## Customizing Caps Word :id=customizing-caps-word +## Customizing Caps Word {#customizing-caps-word} -### Invert on shift :id=invert-on-shift +### Invert on shift {#invert-on-shift} By default, Caps Word turns off when Shift keys are pressed, considering them as word-breaking. Alternatively with the `CAPS_WORD_INVERT_ON_SHIFT` option, @@ -110,7 +110,7 @@ keys, and one-shot Shift keys. Note that while Caps Word is on, one-shot Shift keys behave like regular Shift keys, and have effect only while they are held. -### Idle timeout :id=idle-timeout +### Idle timeout {#idle-timeout} Caps Word turns off automatically if no keys are pressed for `CAPS_WORD_IDLE_TIMEOUT` milliseconds. The default is 5000 (5 seconds). @@ -124,7 +124,7 @@ Setting `CAPS_WORD_IDLE_TIMEOUT` to 0 configures Caps Word to never time out. Caps Word then remains active indefinitely until a word breaking key is pressed. -### Functions :id=functions +### Functions {#functions} Functions to manipulate Caps Word: @@ -136,7 +136,7 @@ Functions to manipulate Caps Word: | `is_caps_word_on()` | Returns true if Caps Word is currently on. | -### Configure which keys are "word breaking" :id=configure-which-keys-are-word-breaking +### Configure which keys are "word breaking" {#configure-which-keys-are-word-breaking} You can define the `caps_word_press_user(uint16_t keycode)` callback to configure which keys should be shifted and which keys are considered "word @@ -171,7 +171,7 @@ bool caps_word_press_user(uint16_t keycode) { ``` -### Representing Caps Word state :id=representing-caps-word-state +### Representing Caps Word state {#representing-caps-word-state} Define `caps_word_set_user(bool active)` to get callbacks when Caps Word turns on or off. This is useful to represent the current Caps Word state, e.g. by diff --git a/docs/feature_combo.md b/docs/feature_combo.md index 496e97bd3c1..b49a4448049 100644 --- a/docs/feature_combo.md +++ b/docs/feature_combo.md @@ -18,7 +18,7 @@ combo_t key_combos[] = { This will send "Escape" if you hit the A and B keys, and Ctrl+Z when you hit the C and D keys. ## Advanced Keycodes Support -Advanced keycodes, such as [Mod-Tap](mod_tap.md) and [Tap Dance](feature_tap_dance.md) are also supported together with combos. If you use these advanced keycodes in your keymap, you will need to place the full keycode in the combo definition, e.g.: +Advanced keycodes, such as [Mod-Tap](mod_tap) and [Tap Dance](feature_tap_dance) are also supported together with combos. If you use these advanced keycodes in your keymap, you will need to place the full keycode in the combo definition, e.g.: ```c const uint16_t PROGMEM test_combo1[] = {LSFT_T(KC_A), LT(1, KC_B), COMBO_END}; @@ -99,7 +99,7 @@ void process_combo_event(uint16_t combo_index, bool pressed) { This will send "john.doe@example.com" if you chord E and M together, and clear the current line with Backspace and Left-Shift. You could change this to do stuff like play sounds or change settings. -It is worth noting that `COMBO_ACTION`s are not needed anymore. As of [PR#8591](https://github.com/qmk/qmk_firmware/pull/8591/), it is possible to run your own custom keycodes from combos. Just define the custom keycode, program its functionality in `process_record_user`, and define a combo with `COMBO(, )`. See the first example in [Macros](feature_macros.md). +It is worth noting that `COMBO_ACTION`s are not needed anymore. As of [PR#8591](https://github.com/qmk/qmk_firmware/pull/8591/), it is possible to run your own custom keycodes from combos. Just define the custom keycode, program its functionality in `process_record_user`, and define a combo with `COMBO(, )`. See the first example in [Macros](feature_macros). ## Keycodes You can enable, disable and toggle the Combo feature on the fly. This is useful if you need to disable them temporarily, such as for a game. The following keycodes are available for use in your `keymap.c` @@ -373,7 +373,9 @@ In addition to the keycodes, there are a few functions that you can use to set t Having 3 places to update when adding new combos or altering old ones does become cumbersome when you have a lot of combos. We can alleviate this with some magic! ... If you consider C macros magic. First, you need to add `VPATH += keyboards/gboards` to your `rules.mk`. Next, include the file `g/keymap_combo.h` in your `keymap.c`. -!> This functionality uses the same `process_combo_event` function as `COMBO_ACTION` macros do, so you cannot use the function yourself in your keymap. Instead, you have to define the `case`s of the `switch` statement by themselves within `inject.h`, which `g/keymap_combo.h` will then include into the function. +::: warning +This functionality uses the same `process_combo_event` function as `COMBO_ACTION` macros do, so you cannot use the function yourself in your keymap. Instead, you have to define the `case`s of the `switch` statement by themselves within `inject.h`, which `g/keymap_combo.h` will then include into the function. +::: Then, write your combos in `combos.def` file in the following manner: diff --git a/docs/feature_command.md b/docs/feature_command.md index 83000661310..4aba9cfb630 100644 --- a/docs/feature_command.md +++ b/docs/feature_command.md @@ -1,6 +1,6 @@ # Command -Command, formerly known as Magic, is a way to change your keyboard's behavior without having to flash or unplug it to use [Bootmagic Lite](feature_bootmagic.md). There is a lot of overlap between this functionality and the [Magic Keycodes](keycodes_magic.md). Wherever possible we encourage you to use that feature instead of Command. +Command, formerly known as Magic, is a way to change your keyboard's behavior without having to flash or unplug it to use [Bootmagic Lite](feature_bootmagic). There is a lot of overlap between this functionality and the [Magic Keycodes](keycodes_magic). Wherever possible we encourage you to use that feature instead of Command. On some keyboards Command is disabled by default. If this is the case, it must be explicitly enabled in your `rules.mk`: diff --git a/docs/feature_converters.md b/docs/feature_converters.md index 62c214e2462..9b2d027a665 100644 --- a/docs/feature_converters.md +++ b/docs/feature_converters.md @@ -38,7 +38,9 @@ qmk flash -c -kb keebio/bdn9/rev1 -km default -e CONVERT_TO=proton_c You can also add the same `CONVERT_TO=` to your keymap's `rules.mk`, which will accomplish the same thing. -?> If you get errors about `PORTB/DDRB`, etc not being defined, you'll need to convert the keyboard's code to use the [GPIO Controls](gpio_control.md) that will work for both ARM and AVR. This shouldn't affect the AVR builds at all. +::: tip +If you get errors about `PORTB/DDRB`, etc not being defined, you'll need to convert the keyboard's code to use the [GPIO Controls](gpio_control) that will work for both ARM and AVR. This shouldn't affect the AVR builds at all. +::: ### Conditional Configuration @@ -104,7 +106,7 @@ Converter summary: | `imera` | `-e CONVERT_TO=imera` | `CONVERT_TO=imera` | `#ifdef CONVERT_TO_IMERA` | | `michi` | `-e CONVERT_TO=michi` | `CONVERT_TO=michi` | `#ifdef CONVERT_TO_MICHI` | -### Proton C :id=proton_c +### Proton C {#proton_c} The Proton C only has one on-board LED (C13), and by default, the TXLED (D5) is mapped to it. If you want the RXLED (B0) mapped to it instead, add this line to your `config.h`: @@ -116,28 +118,28 @@ The following defaults are based on what has been implemented for STM32 boards. | Feature | Notes | |----------------------------------------------|------------------------------------------------------------------------------------------------------------------| -| [Audio](feature_audio.md) | Enabled | -| [RGB Lighting](feature_rgblight.md) | Disabled | -| [Backlight](feature_backlight.md) | Forces [task driven PWM](feature_backlight.md#software-pwm-driver) until ARM can provide automatic configuration | +| [Audio](feature_audio) | Enabled | +| [RGB Lighting](feature_rgblight) | Disabled | +| [Backlight](feature_backlight) | Forces [task driven PWM](feature_backlight#software-pwm-driver) until ARM can provide automatic configuration | | USB Host (e.g. USB-USB converter) | Not supported (USB host code is AVR specific and is not currently supported on ARM) | -| [Split keyboards](feature_split_keyboard.md) | Partial - heavily dependent on enabled features | +| [Split keyboards](feature_split_keyboard) | Partial - heavily dependent on enabled features | -### Adafruit KB2040 :id=kb2040 +### Adafruit KB2040 {#kb2040} -The following defaults are based on what has been implemented for [RP2040](platformdev_rp2040.md) boards. +The following defaults are based on what has been implemented for [RP2040](platformdev_rp2040) boards. | Feature | Notes | |----------------------------------------------|------------------------------------------------------------------------------------------------------------------| -| [RGB Lighting](feature_rgblight.md) | Enabled via `PIO` vendor driver | -| [Backlight](feature_backlight.md) | Forces [task driven PWM](feature_backlight.md#software-pwm-driver) until ARM can provide automatic configuration | +| [RGB Lighting](feature_rgblight) | Enabled via `PIO` vendor driver | +| [Backlight](feature_backlight) | Forces [task driven PWM](feature_backlight#software-pwm-driver) until ARM can provide automatic configuration | | USB Host (e.g. USB-USB converter) | Not supported (USB host code is AVR specific and is not currently supported on ARM) | -| [Split keyboards](feature_split_keyboard.md) | Partial via `PIO` vendor driver - heavily dependent on enabled features | +| [Split keyboards](feature_split_keyboard) | Partial via `PIO` vendor driver - heavily dependent on enabled features | -### SparkFun Pro Micro - RP2040, Blok, Bit-C PRO and Michi :id=promicro_rp2040 +### SparkFun Pro Micro - RP2040, Blok, Bit-C PRO and Michi {#promicro_rp2040 } Feature set is identical to [Adafruit KB2040](#kb2040). -### STeMCell :id=stemcell +### STeMCell {#stemcell} Feature set currently identical to [Proton C](#proton_c). There are two versions of STeMCell available, with different pinouts: @@ -154,7 +156,7 @@ STeMCell has support to swap UART and I2C pins to enable single-wire uart commun | D1 | -e STMC_IS=yes| | D0 | Not needed | -### Bonsai C4 :id=bonsai_c4 +### Bonsai C4 {#bonsai_c4} The Bonsai C4 only has one on-board LED (B2), and by default, both the Pro Micro TXLED (D5) and RXLED (B0) are mapped to it. If you want only one of them mapped, you can undefine one and redefine it to another pin by adding these line to your `config.h`: @@ -164,9 +166,9 @@ The Bonsai C4 only has one on-board LED (B2), and by default, both the Pro Micro #define B0 PAL_LINE(GPIOA, 9) ``` -### RP2040 Community Edition - Elite-Pi, Helios, and Liatris :id=rp2040_ce +### RP2040 Community Edition - Elite-Pi, Helios, and Liatris {#rp2040_ce} -Feature set is identical to [Adafruit KB2040](#kb2040). VBUS detection is enabled by default for superior split keyboard support. For more information, refer to the [Community Edition pinout](platformdev_rp2040.md#rp2040_ce) docs. +Feature set is identical to [Adafruit KB2040](#kb2040). VBUS detection is enabled by default for superior split keyboard support. For more information, refer to the [Community Edition pinout](platformdev_rp2040#rp2040_ce) docs. ## Elite-C @@ -190,10 +192,10 @@ Converter summary: | `helios` | `-e CONVERT_TO=helios` | `CONVERT_TO=helios` | `#ifdef CONVERT_TO_HELIOS` | | `liatris` | `-e CONVERT_TO=liatris` | `CONVERT_TO=liatris` | `#ifdef CONVERT_TO_LIATRIS` | -### STeMCell :id=stemcell_elite +### STeMCell {#stemcell}_elite Identical to [Pro Micro - STeMCell](#stemcell) with support for the additional bottom row of pins. -### RP2040 Community Edition :id=rp2040_ce_elite +### RP2040 Community Edition {#rp2040_ce_elite} Identical to [Pro Micro - RP2040 Community Edition](#rp2040_ce) with support for the additional bottom row of pins. diff --git a/docs/feature_debounce_type.md b/docs/feature_debounce_type.md index 807b902a6cc..eb29b4ef260 100644 --- a/docs/feature_debounce_type.md +++ b/docs/feature_debounce_type.md @@ -99,7 +99,9 @@ Default debounce time is 5 milliseconds and it can be changed with the following ``` #define DEBOUNCE 10 ``` -?> Setting `DEBOUNCE` to `0` will disable this feature. +::: tip +Setting `DEBOUNCE` to `0` will disable this feature. +::: ### Debounce Method @@ -118,9 +120,13 @@ Name of algorithm is one of: | `sym_eager_pk` | Debouncing per key. On any state change, response is immediate, followed by `DEBOUNCE` milliseconds of no further input for that key. | | `asym_eager_defer_pk` | Debouncing per key. On a key-down state change, response is immediate, followed by `DEBOUNCE` milliseconds of no further input for that key. On a key-up state change, a per-key timer is set. When `DEBOUNCE` milliseconds of no changes have occurred on that key, the key-up status change is pushed. | -?> `sym_defer_g` is the default if `DEBOUNCE_TYPE` is undefined. +::: tip +`sym_defer_g` is the default if `DEBOUNCE_TYPE` is undefined. +::: -?> `sym_eager_pr` is suitable for use in keyboards where refreshing `NUM_KEYS` 8-bit counters is computationally expensive or has low scan rate while fingers usually hit one row at a time. This could be appropriate for the ErgoDox models where the matrix is rotated 90°. Hence its "rows" are really columns and each finger only hits a single "row" at a time with normal usage. +::: tip +`sym_eager_pr` is suitable for use in keyboards where refreshing `NUM_KEYS` 8-bit counters is computationally expensive or has low scan rate while fingers usually hit one row at a time. This could be appropriate for the ErgoDox models where the matrix is rotated 90°. Hence its "rows" are really columns and each finger only hits a single "row" at a time with normal usage. +::: ### Implementing your own debouncing code diff --git a/docs/feature_digitizer.md b/docs/feature_digitizer.md index 2e9e37cd5f2..905ad9cbd0c 100644 --- a/docs/feature_digitizer.md +++ b/docs/feature_digitizer.md @@ -1,10 +1,10 @@ -# Digitizer :id=digitizer +# Digitizer {#digitizer} -Digitizers allow the mouse cursor to be placed at absolute coordinates, unlike the [Pointing Device](feature_pointing_device.md) feature which applies relative displacements. +Digitizers allow the mouse cursor to be placed at absolute coordinates, unlike the [Pointing Device](feature_pointing_device) feature which applies relative displacements. This feature implements a stylus device with a tip switch and barrel switch (generally equivalent to the primary and secondary mouse buttons respectively). Tip pressure is not currently implemented. -## Usage :id=usage +## Usage {#usage} Add the following to your `rules.mk`: @@ -12,13 +12,15 @@ Add the following to your `rules.mk`: DIGITIZER_ENABLE = yes ``` -## Positioning :id=positioning +## Positioning {#positioning} The X and Y coordinates are normalized, meaning their value must be set between 0 and 1. For the X component, the value `0` is the leftmost position, whereas the value `1` is the rightmost position. Similarly for the Y component, `0` is at the top and `1` at the bottom. -?> Since there is no display attached, the OS will likely map these coordinates to the virtual desktop. This may be important to know if you have multiple monitors. +::: tip +Since there is no display attached, the OS will likely map these coordinates to the virtual desktop. This may be important to know if you have multiple monitors. +::: -## Examples :id=examples +## Examples {#examples} This example simply places the cursor in the middle of the screen: @@ -40,13 +42,13 @@ digitizer_flush(); `digitizer_state` is a struct of type `digitizer_t`. -## API :id=api +## API {#api} -### `struct digitizer_t` :id=api-digitizer-t +### `struct digitizer_t` {#api-digitizer-t} Contains the state of the digitizer. -#### Members :id=api-digitizer-t-members +#### Members {#api-digitizer-t-members} - `bool in_range` Indicates to the host that the contact is within range (ie. close to or in contact with the digitizer surface). @@ -63,7 +65,7 @@ Contains the state of the digitizer. --- -### `void digitizer_flush(void)` :id=api-digitizer-flush +### `void digitizer_flush(void)` {#api-digitizer-flush} Send the digitizer report to the host if it is marked as dirty. @@ -109,7 +111,7 @@ Deassert the barrel switch, and flush the report. Set the absolute X and Y position of the digitizer contact, and flush the report. -#### Arguments :id=api-digitizer-set-position-arguments +#### Arguments {#api-digitizer-set-position-arguments} - `float x` The X value of the contact position, from 0 to 1. diff --git a/docs/feature_dip_switch.md b/docs/feature_dip_switch.md index 0e31f5acae8..738331bef05 100644 --- a/docs/feature_dip_switch.md +++ b/docs/feature_dip_switch.md @@ -20,7 +20,7 @@ or #define DIP_SWITCH_MATRIX_GRID { {0,6}, {1,6}, {2,6} } // List of row and col pairs ``` -## DIP Switch map :id=dip-switch-map +## DIP Switch map {#dip-switch-map} DIP Switch mapping may be added to your `keymap.c`, which replicates the normal keyswitch functionality, but with dip switches. Add this to your keymap's `rules.mk`: @@ -39,7 +39,9 @@ const uint16_t PROGMEM dip_switch_map[NUM_DIP_SWITCHES][NUM_DIP_STATES] = { #endif ``` -?> This should only be enabled at the keymap level. +::: tip +This should only be enabled at the keymap level. +::: ## Callbacks diff --git a/docs/feature_dynamic_macros.md b/docs/feature_dynamic_macros.md index 8ab1bad61c8..a642ced43e3 100644 --- a/docs/feature_dynamic_macros.md +++ b/docs/feature_dynamic_macros.md @@ -24,7 +24,9 @@ To replay the macro, press either `DM_PLY1` or `DM_PLY2`. It is possible to replay a macro as part of a macro. It's ok to replay macro 2 while recording macro 1 and vice versa but never create recursive macros i.e. macro 1 that replays macro 1. If you do so and the keyboard will get unresponsive, unplug the keyboard and plug it again. You can disable this completely by defining `DYNAMIC_MACRO_NO_NESTING` in your `config.h` file. -?> For the details about the internals of the dynamic macros, please read the comments in the `process_dynamic_macro.h` and `process_dynamic_macro.c` files. +::: tip +For the details about the internals of the dynamic macros, please read the comments in the `process_dynamic_macro.h` and `process_dynamic_macro.c` files. +::: ## Customization diff --git a/docs/feature_eeprom.md b/docs/feature_eeprom.md index 088f4f36fff..63026d3c102 100644 --- a/docs/feature_eeprom.md +++ b/docs/feature_eeprom.md @@ -109,7 +109,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } } ``` -And lastly, you want to add the `eeconfig_init_user` function, so that when the EEPROM is reset, you can specify default values, and even custom actions. To force an EEPROM reset, use the `EE_CLR` keycode or [Bootmagic Lite](feature_bootmagic.md) functionallity. For example, if you want to set rgb layer indication by default, and save the default valued. +And lastly, you want to add the `eeconfig_init_user` function, so that when the EEPROM is reset, you can specify default values, and even custom actions. To force an EEPROM reset, use the `EE_CLR` keycode or [Bootmagic Lite](feature_bootmagic) functionallity. For example, if you want to set rgb layer indication by default, and save the default valued. ```c void eeconfig_init_user(void) { // EEPROM is getting reset! diff --git a/docs/feature_encoders.md b/docs/feature_encoders.md index 4eeb388e577..3d1cac79af7 100644 --- a/docs/feature_encoders.md +++ b/docs/feature_encoders.md @@ -67,9 +67,11 @@ Additionally, if one side does not have an encoder, you can specify `{}` for the #define ENCODER_RESOLUTIONS_RIGHT { 4 } ``` -!> Keep in mind that whenver you change the encoder resolution, you will need to reflash the half that has the encoder affected by the change. +::: warning +Keep in mind that whenver you change the encoder resolution, you will need to reflash the half that has the encoder affected by the change. +::: -## Encoder map :id=encoder-map +## Encoder map {#encoder-map} Encoder mapping may be added to your `keymap.c`, which replicates the normal keyswitch layer handling functionality, but with encoders. Add this to your keymap's `rules.mk`: @@ -90,7 +92,9 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { #endif ``` -?> This should only be enabled at the keymap level. +::: tip +This should only be enabled at the keymap level. +::: Using encoder mapping pumps events through the normal QMK keycode processing pipeline, resulting in a _keydown/keyup_ combination pushed through `process_record_xxxxx()`. To configure the amount of time between the encoder "keyup" and "keydown", you can add the following to your `config.h`: @@ -98,11 +102,15 @@ Using encoder mapping pumps events through the normal QMK keycode processing pip #define ENCODER_MAP_KEY_DELAY 10 ``` -?> By default, the encoder map delay matches the value of `TAP_CODE_DELAY`. +::: tip +By default, the encoder map delay matches the value of `TAP_CODE_DELAY`. +::: ## Callbacks -?> [**Default Behaviour**](https://github.com/qmk/qmk_firmware/blob/master/quantum/encoder.c#L79-#L98): all encoders installed will function as volume up (`KC_VOLU`) on clockwise rotation and volume down (`KC_VOLD`) on counter-clockwise rotation. If you do not wish to override this, no further configuration is necessary. +::: tip +[**Default Behaviour**](https://github.com/qmk/qmk_firmware/blob/master/quantum/encoder.c#L79-): all encoders installed will function as volume up (`KC_VOLU`) on clockwise rotation and volume down (`KC_VOLD`) on counter-clockwise rotation. If you do not wish to override this, no further configuration is necessary. +::: If you would like the alter the default behaviour, and are not using `ENCODER_MAP_ENABLE = yes`, the callback functions can be inserted into your `.c`: @@ -149,7 +157,9 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } ``` -!> If you return `true` in the keymap level `_user` function, it will allow the keyboard/core level encoder code to run on top of your own. Returning `false` will override the keyboard level function, if setup correctly. This is generally the safest option to avoid confusion. +::: warning +If you return `true` in the keymap level `_user` function, it will allow the keyboard/core level encoder code to run on top of your own. Returning `false` will override the keyboard level function, if setup correctly. This is generally the safest option to avoid confusion. +::: ## Hardware diff --git a/docs/feature_haptic_feedback.md b/docs/feature_haptic_feedback.md index 68145edd6cc..16370327cbc 100644 --- a/docs/feature_haptic_feedback.md +++ b/docs/feature_haptic_feedback.md @@ -192,11 +192,11 @@ The Haptic Exclusion is implemented as `__attribute__((weak)) bool get_haptic_en With the entry of `#define NO_HAPTIC_MOD` in config.h, the following keys will not trigger feedback: * Usual modifier keys such as Control/Shift/Alt/Gui (For example `KC_LCTL`) -* `MO()` momentary keys. See also [Layers](feature_layers.md). +* `MO()` momentary keys. See also [Layers](feature_layers). * `LM()` momentary keys with mod active. * `LT()` layer tap keys, when held to activate a layer. However when tapped, and the key is quickly released, and sends a keycode, haptic feedback is still triggered. * `TT()` layer tap toggle keys, when held to activate a layer. However when tapped `TAPPING_TOGGLE` times to permanently toggle the layer, on the last tap haptic feedback is still triggered. -* `MT()` mod tap keys, when held to keep a usual modifier key pressed. However when tapped, and the key is quickly released, and sends a keycode, haptic feedback is still triggered. See also [Mod-Tap](mod_tap.md). +* `MT()` mod tap keys, when held to keep a usual modifier key pressed. However when tapped, and the key is quickly released, and sends a keycode, haptic feedback is still triggered. See also [Mod-Tap](mod_tap). ### NO_HAPTIC_ALPHA With the entry of `#define NO_HAPTIC_ALPHA` in config.h, none of the alpha keys (A ... Z) will trigger a feedback. diff --git a/docs/feature_hd44780.md b/docs/feature_hd44780.md index dcbd656bbee..6b4209333bb 100644 --- a/docs/feature_hd44780.md +++ b/docs/feature_hd44780.md @@ -1,6 +1,6 @@ -# HD44780 LCD Driver :id=hd44780-lcd-driver +# HD44780 LCD Driver {#hd44780-lcd-driver} -## Supported Hardware :id=supported-hardware +## Supported Hardware {#supported-hardware} LCD modules using [HD44780U](https://www.sparkfun.com/datasheets/LCD/HD44780.pdf) IC or equivalent, communicating in 4-bit mode. @@ -11,7 +11,7 @@ LCD modules using [HD44780U](https://www.sparkfun.com/datasheets/LCD/HD44780.pdf To run these modules at 3.3V, an additional MAX660 voltage converter IC must be soldered on, along with two 10µF capacitors. See [this page](https://www.codrey.com/electronic-circuits/hack-your-16x2-lcd/) for more details. -## Usage :id=usage +## Usage {#usage} Add the following to your `rules.mk`: @@ -19,7 +19,7 @@ Add the following to your `rules.mk`: HD44780_ENABLE = yes ``` -## Basic Configuration :id=basic-configuration +## Basic Configuration {#basic-configuration} Add the following to your `config.h`: @@ -33,9 +33,9 @@ Add the following to your `config.h`: |`HD44780_DISPLAY_LINES`|`2` |The number of visible lines on the display | |`HD44780_WRAP_LINES` |*Not defined* |If defined, input characters will wrap to the next line | -## Examples :id=examples +## Examples {#examples} -### Hello World :id=example-hello-world +### Hello World {#example-hello-world} Add the following to your `keymap.c`: @@ -46,7 +46,7 @@ void keyboard_post_init_user(void) { } ``` -### Custom Character Definition :id=example-custom-character +### Custom Character Definition {#example-custom-character} Up to eight custom characters can be defined. This data is stored in the Character Generator RAM (CGRAM), and is not persistent across power cycles. @@ -77,15 +77,15 @@ void keyboard_post_init_user(void) { } ``` -## API :id=api +## API {#api} -### `void hd44780_init(bool cursor, bool blink)` :id=api-hd44780-init +### `void hd44780_init(bool cursor, bool blink)` {#api-hd44780-init} Initialize the display. This function should be called only once, before any of the other functions can be called. -#### Arguments :id=api-hd44780-init-arguments +#### Arguments {#api-hd44780-init-arguments} - `bool cursor` Whether to show the cursor. @@ -94,7 +94,7 @@ This function should be called only once, before any of the other functions can --- -### `void hd44780_clear(void)` :id=api-hd44780-clear +### `void hd44780_clear(void)` {#api-hd44780-clear} Clear the display. @@ -102,7 +102,7 @@ This function is called on init. --- -### `void hd44780_home(void)` :id=api-hd44780-home +### `void hd44780_home(void)` {#api-hd44780-home} Move the cursor to the home position. @@ -110,13 +110,13 @@ This function is called on init. --- -### `void hd44780_on(bool cursor, bool blink)` :id=api-hd44780-on +### `void hd44780_on(bool cursor, bool blink)` {#api-hd44780-on} Turn the display on, and/or set the cursor properties. This function is called on init. -#### Arguments :id=api-hd44780-on-arguments +#### Arguments {#api-hd44780-on-arguments} - `bool cursor` Whether to show the cursor. @@ -125,17 +125,17 @@ This function is called on init. --- -### `void hd44780_off(void)` :id=api-hd44780-off +### `void hd44780_off(void)` {#api-hd44780-off} Turn the display off. --- -### `void hd44780_set_cursor(uint8_t col, uint8_t line)` :id=api-hd44780-set-cursor +### `void hd44780_set_cursor(uint8_t col, uint8_t line)` {#api-hd44780-set-cursor} Move the cursor to the specified position on the display. -#### Arguments :id=api-hd44780-set-cursor-arguments +#### Arguments {#api-hd44780-set-cursor-arguments} - `uint8_t col` The column number to move to, from 0 to 15 on 16x2 displays. @@ -144,48 +144,48 @@ Move the cursor to the specified position on the display. --- -### `void hd44780_putc(char c)` :id=api-hd44780-putc +### `void hd44780_putc(char c)` {#api-hd44780-putc} Print a character to the display. The newline character `\n` will move the cursor to the start of the next line. The exact character shown may depend on the ROM code of your particular display - refer to the datasheet for the full character set. -#### Arguments :id=api-hd44780-putc-arguments +#### Arguments {#api-hd44780-putc-arguments} - `char c` The character to print. --- -### `void hd44780_puts(const char *s)` :id=api-hd44780-puts +### `void hd44780_puts(const char *s)` {#api-hd44780-puts} Print a string of characters to the display. -#### Arguments :id=api-hd44780-puts-arguments +#### Arguments {#api-hd44780-puts-arguments} - `const char *s` The string to print. --- -### `void hd44780_puts_P(const char *s)` :id=api-hd44780-puts-p +### `void hd44780_puts_P(const char *s)` {#api-hd44780-puts-p} Print a string of characters from PROGMEM to the display. On ARM devices, this function is simply an alias of `hd44780_puts()`. -#### Arguments :id=api-hd44780-puts-p-arguments +#### Arguments {#api-hd44780-puts-p-arguments} - `const char *s` The PROGMEM string to print (ie. `PSTR("Hello")`). --- -### `void hd44780_define_char(uint8_t index, uint8_t *data)` :id=api-hd44780-define-char +### `void hd44780_define_char(uint8_t index, uint8_t *data)` {#api-hd44780-define-char} Define a custom character. -#### Arguments :id=api-hd44780-define-char-arguments +#### Arguments {#api-hd44780-define-char-arguments} - `uint8_t index` The index of the custom character to define, from 0 to 7. @@ -194,13 +194,13 @@ Define a custom character. --- -### `void hd44780_define_char_P(uint8_t index, const uint8_t *data)` :id=api-hd44780-define-char-p +### `void hd44780_define_char_P(uint8_t index, const uint8_t *data)` {#api-hd44780-define-char-p} Define a custom character from PROGMEM. On ARM devices, this function is simply an alias of `hd44780_define_char()`. -#### Arguments :id=api-hd44780-define-char-p-arguments +#### Arguments {#api-hd44780-define-char-p-arguments} - `uint8_t index` The index of the custom character to define, from 0 to 7. @@ -209,21 +209,21 @@ On ARM devices, this function is simply an alias of `hd44780_define_char()`. --- -### `bool hd44780_busy(void)` :id=api-hd44780-busy +### `bool hd44780_busy(void)` {#api-hd44780-busy} Indicates whether the display is currently processing, and cannot accept instructions. -#### Return Value :id=api-hd44780-busy-arguments +#### Return Value {#api-hd44780-busy-arguments} `true` if the display is busy. --- -### `void hd44780_write(uint8_t data, bool isData)` :id=api-hd44780-write +### `void hd44780_write(uint8_t data, bool isData)` {#api-hd44780-write} Write a byte to the display. -#### Arguments :id=api-hd44780-write-arguments +#### Arguments {#api-hd44780-write-arguments} - `uint8_t data` The byte to send to the display. @@ -232,67 +232,67 @@ Write a byte to the display. --- -### `uint8_t hd44780_read(bool isData)` :id=api-hd44780-read +### `uint8_t hd44780_read(bool isData)` {#api-hd44780-read} Read a byte from the display. -#### Arguments :id=api-hd44780-read-arguments +#### Arguments {#api-hd44780-read-arguments} - `bool isData` Whether to read the current cursor position, or the character at the cursor. -#### Return Value :id=api-hd44780-read-return +#### Return Value {#api-hd44780-read-return} If `isData` is `true`, the returned byte will be the character at the current DDRAM address. Otherwise, it will be the current DDRAM address and the busy flag. --- -### `void hd44780_command(uint8_t command)` :id=api-hd44780-command +### `void hd44780_command(uint8_t command)` {#api-hd44780-command} Send a command to the display. Refer to the datasheet and `hd44780.h` for the valid commands and defines. This function waits for the display to clear the busy flag before sending the command. -#### Arguments :id=api-hd44780-command-arguments +#### Arguments {#api-hd44780-command-arguments} - `uint8_t command` The command to send. --- -### `void hd44780_data(uint8_t data)` :id=api-hd44780-data +### `void hd44780_data(uint8_t data)` {#api-hd44780-data} Send a byte of data to the display. This function waits for the display to clear the busy flag before sending the data. -#### Arguments :id=api-hd44780-data-arguments +#### Arguments {#api-hd44780-data-arguments} - `uint8_t data` The byte of data to send. --- -### `void hd44780_set_cgram_address(uint8_t address)` :id=api-hd44780-set-cgram-address +### `void hd44780_set_cgram_address(uint8_t address)` {#api-hd44780-set-cgram-address} Set the CGRAM address. This function is used when defining custom characters. -#### Arguments :id=api-hd44780-set-cgram-address-arguments +#### Arguments {#api-hd44780-set-cgram-address-arguments} - `uint8_t address` The CGRAM address to move to, from `0x00` to `0x3F`. --- -### `void hd44780_set_ddram_address(uint8_t address)` :id=api-hd44780-set-ddram-address +### `void hd44780_set_ddram_address(uint8_t address)` {#api-hd44780-set-ddram-address} Set the DDRAM address. This function is used when printing characters to the display, and setting the cursor. -#### Arguments :id=api-hd44780-set-ddram-address-arguments +#### Arguments {#api-hd44780-set-ddram-address-arguments} - `uint8_t address` The DDRAM address to move to, from `0x00` to `0x7F`. diff --git a/docs/feature_joystick.md b/docs/feature_joystick.md index 0e4529b2ebc..75bffa605ae 100644 --- a/docs/feature_joystick.md +++ b/docs/feature_joystick.md @@ -1,10 +1,10 @@ -# Joystick :id=joystick +# Joystick {#joystick} -This feature provides game controller input as a joystick device supporting up to 6 axes and 32 buttons. Axes can be read either from an [ADC-capable input pin](adc_driver.md), or can be virtual, so that its value is provided by your code. +This feature provides game controller input as a joystick device supporting up to 6 axes and 32 buttons. Axes can be read either from an [ADC-capable input pin](adc_driver), or can be virtual, so that its value is provided by your code. An analog device such as a [potentiometer](https://en.wikipedia.org/wiki/Potentiometer) found on an analog joystick's axes is based on a voltage divider, where adjusting the movable wiper controls the output voltage which can then be read by the microcontroller's ADC. -## Usage :id=usage +## Usage {#usage} Add the following to your `rules.mk`: @@ -18,7 +18,7 @@ By default the joystick driver is `analog`, but you can change this with: JOYSTICK_DRIVER = digital ``` -## Configuration :id=configuration +## Configuration {#configuration} By default, two axes and eight buttons are defined, with a reported resolution of 8 bits (-127 to +127). This can be changed in your `config.h`: @@ -31,9 +31,11 @@ By default, two axes and eight buttons are defined, with a reported resolution o #define JOYSTICK_AXIS_RESOLUTION 10 ``` -?> You must define at least one button or axis. Also note that the maximum ADC resolution of the supported AVR MCUs is 10-bit, and 12-bit for most STM32 MCUs. +::: tip +You must define at least one button or axis. Also note that the maximum ADC resolution of the supported AVR MCUs is 10-bit, and 12-bit for most STM32 MCUs. +::: -### Axes :id=axes +### Axes {#axes} When defining axes for your joystick, you must provide a definition array typically in your `keymap.c`. @@ -55,7 +57,7 @@ Axes can be configured using one of the following macros: The `low` and `high` values can be swapped to effectively invert the axis. -#### Virtual Axes :id=virtual-axes +#### Virtual Axes {#virtual-axes} The following example adjusts two virtual axes (X and Y) based on keypad presses, with `KC_P0` as a precision modifier: @@ -96,7 +98,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } ``` -## Keycodes :id=keycodes +## Keycodes {#keycodes} |Key |Aliases|Description| |-----------------------|-------|-----------| @@ -133,13 +135,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { |`QK_JOYSTICK_BUTTON_30`|`JS_30`|Button 30 | |`QK_JOYSTICK_BUTTON_31`|`JS_31`|Button 31 | -## API :id=api +## API {#api} -### `struct joystick_t` :id=api-joystick-t +### `struct joystick_t` {#api-joystick-t} Contains the state of the joystick. -#### Members :id=api-joystick-t-members +#### Members {#api-joystick-t-members} - `uint8_t buttons[]` A bit-packed array containing the joystick button states. The size is calculated as `(JOYSTICK_BUTTON_COUNT - 1) / 8 + 1`. @@ -150,11 +152,11 @@ Contains the state of the joystick. --- -### `struct joystick_config_t` :id=api-joystick-config-t +### `struct joystick_config_t` {#api-joystick-config-t} Describes a single axis. -#### Members :id=api-joystick-config-t-members +#### Members {#api-joystick-config-t-members} - `pin_t input_pin` The pin to read the analog value from, or `JS_VIRTUAL_AXIS`. @@ -167,52 +169,52 @@ Describes a single axis. --- -### `void joystick_flush(void)` :id=api-joystick-flush +### `void joystick_flush(void)` {#api-joystick-flush} Send the joystick report to the host, if it has been marked as dirty. --- -### `void register_joystick_button(uint8_t button)` :id=api-register-joystick-button +### `void register_joystick_button(uint8_t button)` {#api-register-joystick-button} Set the state of a button, and flush the report. -#### Arguments :id=api-register-joystick-button-arguments +#### Arguments {#api-register-joystick-button-arguments} - `uint8_t button` The index of the button to press, from 0 to 31. --- -### `void unregister_joystick_button(uint8_t button)` :id=api-unregister-joystick-button +### `void unregister_joystick_button(uint8_t button)` {#api-unregister-joystick-button} Reset the state of a button, and flush the report. -#### Arguments :id=api-unregister-joystick-button-arguments +#### Arguments {#api-unregister-joystick-button-arguments} - `uint8_t button` The index of the button to release, from 0 to 31. --- -### `int16_t joystick_read_axis(uint8_t axis)` :id=api-joystick-read-axis +### `int16_t joystick_read_axis(uint8_t axis)` {#api-joystick-read-axis} Sample and process the analog value of the given axis. -#### Arguments :id=api-joystick-read-axis-arguments +#### Arguments {#api-joystick-read-axis-arguments} - `uint8_t axis` The axis to read. -#### Return Value :id=api-joystick-read-axis-return +#### Return Value {#api-joystick-read-axis-return} A signed 16-bit integer, where 0 is the resting or mid point. -### `void joystick_set_axis(uint8_t axis, int16_t value)` :id=api-joystick-set-axis +### `void joystick_set_axis(uint8_t axis, int16_t value)` {#api-joystick-set-axis} Set the value of the given axis. -#### Arguments :id=api-joystick-set-axis-arguments +#### Arguments {#api-joystick-set-axis-arguments} - `uint8_t axis` The axis to set the value of. diff --git a/docs/feature_key_lock.md b/docs/feature_key_lock.md index 1acee524dad..1a0a2dfb601 100644 --- a/docs/feature_key_lock.md +++ b/docs/feature_key_lock.md @@ -16,8 +16,8 @@ First, enable Key Lock by setting `KEY_LOCK_ENABLE = yes` in your `rules.mk`. Th ## Caveats -Key Lock is only able to hold standard action keys and [One Shot modifier](one_shot_keys.md) keys (for example, if you have your Shift defined as `OSM(MOD_LSFT)`). -This does not include any of the QMK special functions (except One Shot modifiers), or shifted versions of keys such as `KC_LPRN`. If it's in the [Basic Keycodes](keycodes_basic.md) list, it can be held. +Key Lock is only able to hold standard action keys and [One Shot modifier](one_shot_keys) keys (for example, if you have your Shift defined as `OSM(MOD_LSFT)`). +This does not include any of the QMK special functions (except One Shot modifiers), or shifted versions of keys such as `KC_LPRN`. If it's in the [Basic Keycodes](keycodes_basic) list, it can be held. Switching layers will not cancel the Key Lock. The Key Lock can be cancelled by calling the `cancel_key_lock()` function. diff --git a/docs/feature_key_overrides.md b/docs/feature_key_overrides.md index 59eced95c36..b9fbd35966a 100644 --- a/docs/feature_key_overrides.md +++ b/docs/feature_key_overrides.md @@ -1,4 +1,4 @@ -# Key Overrides :id=key-overrides +# Key Overrides {#key-overrides} Key overrides allow you to override modifier-key combinations to send a different modifier-key combination or perform completely custom actions. Don't want `shift` + `1` to type `!` on your computer? Use a key override to make your keyboard type something different when you press `shift` + `1`. The general behavior is like this: If `modifiers w` + `key x` are pressed, replace these keys with `modifiers y` + `key z` in the keyboard report. @@ -10,13 +10,13 @@ You can use key overrides in a similar way to momentary layer/fn keys to activat - Create custom shortcuts or change existing ones: E.g. Send `ctrl`+`shift`+`z` when `ctrl`+`y` is pressed. - Run custom code when `ctrl` + `alt` + `esc` is pressed. -## Setup :id=setup +## Setup {#setup} To enable this feature, you need to add `KEY_OVERRIDE_ENABLE = yes` to your `rules.mk`. Then, in your `keymap.c` file, you'll need to define the array `key_overrides`, which defines all key overrides to be used. Each override is a value of type `key_override_t`. The array `key_overrides` is `NULL`-terminated and contains pointers to `key_override_t` values (`const key_override_t **`). -## Creating Key Overrides :id=creating-key-overrides +## Creating Key Overrides {#creating-key-overrides} The `key_override_t` struct has many options that allow you to precisely tune your overrides. The full reference is shown below. Instead of manually creating a `key_override_t` value, it is recommended to use these dedicated initializers: @@ -34,7 +34,7 @@ Additionally takes a bitmask `options` that specifies additional options. See `k For more customization possibilities, you may directly create a `key_override_t`, which allows you to customize even more behavior. Read further below for details and examples. -## Simple Example :id=simple-example +## Simple Example {#simple-example} This shows how the mentioned example of sending `delete` when `shift` + `backspace` are pressed is realized: @@ -48,9 +48,9 @@ const key_override_t **key_overrides = (const key_override_t *[]){ }; ``` -## Intermediate Difficulty Examples :id=intermediate-difficulty-examples +## Intermediate Difficulty Examples {#intermediate-difficulty-examples} -### Media Controls & Screen Brightness :id=media-controls-amp-screen-brightness +### Media Controls & Screen Brightness {#media-controls-amp-screen-brightness} In this example a single key is configured to control media, volume and screen brightness by using key overrides. @@ -102,8 +102,8 @@ const key_override_t **key_overrides = (const key_override_t *[]){ }; ``` -### Flexible macOS-friendly Grave Escape :id=flexible-macos-friendly-grave-escape -The [Grave Escape feature](feature_grave_esc.md) is limited in its configurability and has [bugs when used on macOS](feature_grave_esc.md#caveats). Key overrides can be used to achieve a similar functionality as Grave Escape, but with more customization and without bugs on macOS. +### Flexible macOS-friendly Grave Escape {#flexible-macos-friendly-grave-escape} +The [Grave Escape feature](feature_grave_esc) is limited in its configurability and has [bugs when used on macOS](feature_grave_esc#caveats). Key overrides can be used to achieve a similar functionality as Grave Escape, but with more customization and without bugs on macOS. ```c // Shift + esc = ~ @@ -121,8 +121,8 @@ const key_override_t **key_overrides = (const key_override_t *[]){ In addition to not encountering unexpected bugs on macOS, you can also change the behavior as you wish. Instead setting `GUI` + `ESC` = `` ` `` you may change it to an arbitrary other modifier, for example `Ctrl` + `ESC` = `` ` ``. -## Advanced Examples :id=advanced-examples -### Modifiers as Layer Keys :id=modifiers-as-layer-keys +## Advanced Examples {#advanced-examples} +### Modifiers as Layer Keys {#modifiers-as-layer-keys} Do you really need a dedicated key to toggle your fn layer? With key overrides, perhaps not. This example shows how you can configure to use `rGUI` + `rAlt` (right GUI and right alt) to access a momentary layer like an fn layer. With this you completely eliminate the need to use a dedicated layer key. Of course the choice of modifier keys can be changed as needed, `rGUI` + `rAlt` is just an example here. @@ -150,7 +150,7 @@ const key_override_t fn_override = {.trigger_mods = MOD_BIT(KC_RGUI) | .enabled = NULL}; ``` -## Keycodes :id=keycodes +## Keycodes {#keycodes} |Keycode |Aliases |Description | |------------------------|---------|----------------------| @@ -158,7 +158,7 @@ const key_override_t fn_override = {.trigger_mods = MOD_BIT(KC_RGUI) | |`QK_KEY_OVERRIDE_ON` |`KO_ON` |Turn on key overrides | |`QK_KEY_OVERRIDE_OFF` |`KO_OFF` |Turn off key overrides| -## Reference for `key_override_t` :id=reference-for-key_override_t +## Reference for `key_override_t` {#reference-for-key_override_t} Advanced users may need more customization than what is offered by the simple `ko_make` initializers. For this, directly create a `key_override_t` value and set all members. Below is a reference for all members of `key_override_t`. @@ -175,7 +175,7 @@ Advanced users may need more customization than what is offered by the simple `k | `void *context` | A context that will be passed to the custom action function. | | `bool *enabled` | If this points to false this override will not be used. Set to NULL to always have this override enabled. | -## Reference for `ko_option_t` :id=reference-for-ko_option_t +## Reference for `ko_option_t` {#reference-for-ko_option_t} Bitfield with various options controlling the behavior of a key override. @@ -189,11 +189,11 @@ Bitfield with various options controlling the behavior of a key override. | `ko_option_no_reregister_trigger` | If set, the trigger key will never be registered again after the override is deactivated. | | `ko_options_default` | The default options used by the `ko_make_xxx` functions | -## For Advanced Users: Inner Workings :id=for-advanced-users-inner-workings +## For Advanced Users: Inner Workings {#for-advanced-users-inner-workings} This section explains how a key override works in detail, explaining where each member of `key_override_t` comes into play. Understanding this is essential to be able to take full advantage of all the options offered by key overrides. -#### Activation :id=activation +#### Activation {#activation} When the necessary keys are pressed (`trigger_mods` + `trigger`), the override is 'activated' and the replacement key is registered in the keyboard report (`replacement`), while the `trigger` key is removed from the keyboard report. The trigger modifiers may also be removed from the keyboard report upon activation of an override (`suppressed_mods`). The override will not activate if any of the `negative_modifiers` are pressed. @@ -207,11 +207,11 @@ Use the `option` member to customize which of these events are allowed to activa In any case, a key override can only activate if the `trigger` key is the _last_ non-modifier key that was pressed down. This emulates the behavior of how standard OSes (macOS, Windows, Linux) handle normal key input (to understand: Hold down `a`, then also hold down `b`, then hold down `shift`; `B` will be typed but not `A`). -#### Deactivation :id=deactivation +#### Deactivation {#deactivation} An override is 'deactivated' when one of the trigger keys (`trigger_mods`, `trigger`) is lifted, another non-modifier key is pressed down, or one of the `negative_modifiers` is pressed down. When an override deactivates, the `replacement` key is removed from the keyboard report, while the `suppressed_mods` that are still held down are re-added to the keyboard report. By default, the `trigger` key is re-added to the keyboard report if it is still held down and no other non-modifier key has been pressed since. This again emulates the behavior of how standard OSes handle normal key input (To understand: hold down `a`, then also hold down `b`, then also `shift`, then release `b`; `A` will not be typed even though you are holding the `a` and `shift` keys). Use the `option` field `ko_option_no_reregister_trigger` to prevent re-registering the trigger key in all cases. -#### Key Repeat Delay :id=key-repeat-delay +#### Key Repeat Delay {#key-repeat-delay} A third way in which standard OS-handling of modifier-key input is emulated in key overrides is with a ['key repeat delay'](https://www.dummies.com/computers/pcs/set-your-keyboards-repeat-delay-and-repeat-rate/). To explain what this is, let's look at how normal keyboard input is handled by mainstream OSes again: If you hold down `a`, followed by `shift`, you will see the letter `a` is first typed, then for a short moment nothing is typed and then repeating `A`s are typed. Take note that, although shift is pressed down just after `a` is pressed, it takes a moment until `A` is typed. This is caused by the aforementioned key repeat delay, and it is a feature that prevents unwanted repeated characters from being typed. @@ -222,11 +222,11 @@ This applies equally to releasing a modifier: When you hold `shift`, then press The duration of the key repeat delay is controlled with the `KEY_OVERRIDE_REPEAT_DELAY` macro. Define this value in your `config.h` file to change it. It is 500ms by default. -## Difference to Combos :id=difference-to-combos +## Difference to Combos {#difference-to-combos} -Note that key overrides are very different from [combos](https://docs.qmk.fm/#/feature_combo). Combos require that you press down several keys almost _at the same time_ and can work with any combination of non-modifier keys. Key overrides work like keyboard shortcuts (e.g. `ctrl` + `z`): They take combinations of _multiple_ modifiers and _one_ non-modifier key to then perform some custom action. Key overrides are implemented with much care to behave just like normal keyboard shortcuts would in regards to the order of pressed keys, timing, and interaction with other pressed keys. There are a number of optional settings that can be used to really fine-tune the behavior of each key override as well. Using key overrides also does not delay key input for regular key presses, which inherently happens in combos and may be undesirable. +Note that key overrides are very different from [combos](feature_combo). Combos require that you press down several keys almost _at the same time_ and can work with any combination of non-modifier keys. Key overrides work like keyboard shortcuts (e.g. `ctrl` + `z`): They take combinations of _multiple_ modifiers and _one_ non-modifier key to then perform some custom action. Key overrides are implemented with much care to behave just like normal keyboard shortcuts would in regards to the order of pressed keys, timing, and interaction with other pressed keys. There are a number of optional settings that can be used to really fine-tune the behavior of each key override as well. Using key overrides also does not delay key input for regular key presses, which inherently happens in combos and may be undesirable. -## Solution to the problem of flashing modifiers :id=neutralize-flashing-modifiers +## Solution to the problem of flashing modifiers {#neutralize-flashing-modifiers} If the programs you use bind an action to taps of modifier keys (e.g. tapping left GUI to bring up the applications menu or tapping left Alt to focus the menu bar), you may find that using key overrides with suppressed mods falsely triggers those actions. To counteract this, you can define a `DUMMY_MOD_NEUTRALIZER_KEYCODE` in `config.h` that will get sent in between the register and unregister events of a suppressed modifier. That way, the programs on your computer will no longer interpret the mod suppression induced by key overrides as a lone tap of a modifier key and will thus not falsely trigger the undesired action. @@ -251,4 +251,6 @@ Examples: #define MODS_TO_NEUTRALIZE { MOD_BIT(KC_LEFT_ALT), MOD_BIT(KC_LEFT_GUI), MOD_BIT(KC_RIGHT_GUI), MOD_BIT(KC_LEFT_CTRL)|MOD_BIT(KC_LEFT_SHIFT) } ``` -!> Do not use `MOD_xxx` constants like `MOD_LSFT` or `MOD_RALT`, since they're 5-bit packed bit-arrays while `MODS_TO_NEUTRALIZE` expects a list of 8-bit packed bit-arrays. Use `MOD_BIT()` or `MOD_MASK_xxx` instead. +::: warning +Do not use `MOD_xxx` constants like `MOD_LSFT` or `MOD_RALT`, since they're 5-bit packed bit-arrays while `MODS_TO_NEUTRALIZE` expects a list of 8-bit packed bit-arrays. Use `MOD_BIT()` or `MOD_MASK_xxx` instead. +::: diff --git a/docs/feature_layers.md b/docs/feature_layers.md index e57642071f4..77b6ef95313 100644 --- a/docs/feature_layers.md +++ b/docs/feature_layers.md @@ -1,25 +1,25 @@ -# Layers :id=layers +# Layers {#layers} One of the most powerful and well used features of QMK Firmware is the ability to use layers. For most people, this amounts to a function key that allows for different keys, much like what you would see on a laptop or tablet keyboard. -For a detailed explanation of how the layer stack works, checkout [Keymap Overview](keymap.md#keymap-and-layers). +For a detailed explanation of how the layer stack works, checkout [Keymap Overview](keymap#keymap-and-layers). -## Switching and Toggling Layers :id=switching-and-toggling-layers +## Switching and Toggling Layers {#switching-and-toggling-layers} These functions allow you to activate layers in various ways. Note that layers are not generally independent layouts -- multiple layers can be activated at once, and it's typical for layers to use `KC_TRNS` to allow keypresses to pass through to lower layers. When using momentary layer switching with MO(), LM(), TT(), or LT(), make sure to leave the key on the above layers transparent or it may not work as intended. -* `DF(layer)` - switches the default layer. The default layer is the always-active base layer that other layers stack on top of. See below for more about the default layer. This might be used to switch from QWERTY to Dvorak layout. (Note that this is a temporary switch that only persists until the keyboard loses power. To modify the default layer in a persistent way requires deeper customization, such as calling the `set_single_persistent_default_layer` function inside of [process_record_user](custom_quantum_functions.md#programming-the-behavior-of-any-keycode).) +* `DF(layer)` - switches the default layer. The default layer is the always-active base layer that other layers stack on top of. See below for more about the default layer. This might be used to switch from QWERTY to Dvorak layout. (Note that this is a temporary switch that only persists until the keyboard loses power. To modify the default layer in a persistent way requires deeper customization, such as calling the `set_single_persistent_default_layer` function inside of [process_record_user](custom_quantum_functions#programming-the-behavior-of-any-keycode).) * `MO(layer)` - momentarily activates *layer*. As soon as you let go of the key, the layer is deactivated. * `LM(layer, mod)` - Momentarily activates *layer* (like `MO`), but with modifier(s) *mod* active. Only supports layers 0-15. The modifiers this keycode accept are prefixed with `MOD_`, not `KC_`. These modifiers can be combined using bitwise OR, e.g. `LM(_RAISE, MOD_LCTL | MOD_LALT)`. * `LT(layer, kc)` - momentarily activates *layer* when held, and sends *kc* when tapped. Only supports layers 0-15. -* `OSL(layer)` - momentarily activates *layer* until the next key is pressed. See [One Shot Keys](one_shot_keys.md) for details and additional functionality. +* `OSL(layer)` - momentarily activates *layer* until the next key is pressed. See [One Shot Keys](one_shot_keys) for details and additional functionality. * `TG(layer)` - toggles *layer*, activating it if it's inactive and vice versa * `TO(layer)` - activates *layer* and de-activates all other layers (except your default layer). This function is special, because instead of just adding/removing one layer to your active layer stack, it will completely replace your current active layers, uniquely allowing you to replace higher layers with a lower one. This is activated on keydown (as soon as the key is pressed). * `TT(layer)` - Layer Tap-Toggle. If you hold the key down, *layer* is activated, and then is de-activated when you let go (like `MO`). If you repeatedly tap it, the layer will be toggled on or off (like `TG`). It needs 5 taps by default, but you can change this by defining `TAPPING_TOGGLE` -- for example, `#define TAPPING_TOGGLE 2` to toggle on just two taps. -### Caveats :id=caveats +### Caveats {#caveats} -Currently, the `layer` argument of `LT()` is limited to layers 0-15, and the `kc` argument to the [Basic Keycode set](keycodes_basic.md), meaning you can't use keycodes like `LCTL()`, `KC_TILD`, or anything greater than `0xFF`. This is because QMK uses 16-bit keycodes, of which 4 bits are used for the function identifier and 4 bits for the layer, leaving only 8 bits for the keycode. +Currently, the `layer` argument of `LT()` is limited to layers 0-15, and the `kc` argument to the [Basic Keycode set](keycodes_basic), meaning you can't use keycodes like `LCTL()`, `KC_TILD`, or anything greater than `0xFF`. This is because QMK uses 16-bit keycodes, of which 4 bits are used for the function identifier and 4 bits for the layer, leaving only 8 bits for the keycode. For a similar reason, the `layer` argument of `LM()` is also limited to layers 0-15 and the `mod` argument must fit within 5 bits. As a consequence, although left and right modifiers are supported by `LM()`, it is impossible to mix and match left and right modifiers. Specifying at least one right-hand modifier in a combination such as `MOD_RALT|MOD_LSFT` will convert *all* the listed modifiers to their right-hand counterpart. So, using the aforementionned mod-mask will actually send Right Alt+Right Shift. Make sure to use the `MOD_xxx` constants over alternative ways of specifying modifiers when defining your layer-mod key. @@ -27,13 +27,13 @@ For a similar reason, the `layer` argument of `LM()` is also limited to layers 0 |:---------------:|:----------------------:|:------------------------:|:----------------:| | ❌ | ❌ | ❌ | ✅ | -Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, [Tap Dance](feature_tap_dance.md#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) can be used to accomplish this. +Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, [Tap Dance](feature_tap_dance#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) can be used to accomplish this. -## Working with Layers :id=working-with-layers +## Working with Layers {#working-with-layers} Care must be taken when switching layers, it's possible to lock yourself into a layer with no way to deactivate that layer (without unplugging your keyboard.) We've created some guidelines to help users avoid the most common problems. -### Beginners :id=beginners +### Beginners {#beginners} If you are just getting started with QMK you will want to keep everything simple. Follow these guidelines when setting up your layers: @@ -41,11 +41,11 @@ If you are just getting started with QMK you will want to keep everything simple * Arrange your layers in a "tree" layout, with layer 0 as the root. Do not try to enter the same layer from more than one other layer. * In a layer's keymap, only reference higher-numbered layers. Because layers are processed from the highest-numbered (topmost) active layer down, modifying the state of lower layers can be tricky and error-prone. -### Intermediate Users :id=intermediate-users +### Intermediate Users {#intermediate-users} Sometimes you need more than one base layer. For example, if you want to switch between QWERTY and Dvorak, switch between layouts for different countries, or switch your layout for different videogames. Your base layers should always be the lowest numbered layers. When you have multiple base layers you should always treat them as mutually exclusive. When one base layer is on the others are off. -### Advanced Users :id=advanced-users +### Advanced Users {#advanced-users} Once you have a good feel for how layers work and what you can do, you can get more creative. The rules listed in the beginner section will help you be successful by avoiding some of the tricker details but they can be constraining, especially for ultra-compact keyboard users. Understanding how layers work will allow you to use them in more advanced ways. @@ -53,7 +53,7 @@ Layers stack on top of each other in numerical order. When determining what a ke Sometimes, you might want to switch between layers in a macro or as part of a tap dance routine. `layer_on` activates a layer, and `layer_off` deactivates it. More layer-related functions can be found in [action_layer.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/action_layer.h). -## Functions :id=functions +## Functions {#functions} There are a number of functions (and variables) related to how you can use or manipulate the layers. @@ -87,7 +87,9 @@ In addition to the functions that you can call, there are a number of callback f | `default_layer_state_set_kb(layer_state_t state)` | Callback for default layer functions, for keyboard. Called on keyboard initialization. | | `default_layer_state_set_user(layer_state_t state)` | Callback for default layer functions, for users. Called on keyboard initialization. | -?> For additional details on how you can use these callbacks, check out the [Layer Change Code](custom_quantum_functions.md#layer-change-code) document. +::: tip +For additional details on how you can use these callbacks, check out the [Layer Change Code](custom_quantum_functions#layer-change-code) document. +::: It is also possible to check the state of a particular layer using the following functions and macros. @@ -96,13 +98,13 @@ It is also possible to check the state of a particular layer using the following | `layer_state_is(layer)` | Checks if the specified `layer` is enabled globally. | `IS_LAYER_ON(layer)`, `IS_LAYER_OFF(layer)` | | `layer_state_cmp(state, layer)` | Checks `state` to see if the specified `layer` is enabled. Intended for use in layer callbacks. | `IS_LAYER_ON_STATE(state, layer)`, `IS_LAYER_OFF_STATE(state, layer)` | -## Layer Change Code :id=layer-change-code +## Layer Change Code {#layer-change-code} This runs code every time that the layers get changed. This can be useful for layer indication, or custom layer handling. ### Example `layer_state_set_*` Implementation -This example shows how to set the [RGB Underglow](feature_rgblight.md) lights based on the layer, using the Planck as an example. +This example shows how to set the [RGB Underglow](feature_rgblight) lights based on the layer, using the Planck as an example. ```c layer_state_t layer_state_set_user(layer_state_t state) { @@ -185,4 +187,4 @@ Outside of `layer_state_set_*` functions, you can use the `IS_LAYER_ON(layer)` a * Keymap: `layer_state_t layer_state_set_user(layer_state_t state)` -The `state` is the bitmask of the active layers, as explained in the [Keymap Overview](keymap.md#keymap-layer-status) +The `state` is the bitmask of the active layers, as explained in the [Keymap Overview](keymap#keymap-layer-status) diff --git a/docs/feature_leader_key.md b/docs/feature_leader_key.md index 72a6818dd1d..641c2d7ae58 100644 --- a/docs/feature_leader_key.md +++ b/docs/feature_leader_key.md @@ -1,8 +1,8 @@ -# The Leader Key: A New Kind of Modifier :id=the-leader-key +# The Leader Key: A New Kind of Modifier {#the-leader-key} -If you're a Vim user, you probably know what a Leader key is. In contrast to [Combos](feature_combo.md), the Leader key allows you to hit a *sequence* of up to five keys instead, which triggers some custom functionality once complete. +If you're a Vim user, you probably know what a Leader key is. In contrast to [Combos](feature_combo), the Leader key allows you to hit a *sequence* of up to five keys instead, which triggers some custom functionality once complete. -## Usage :id=usage +## Usage {#usage} Add the following to your `rules.mk`: @@ -12,7 +12,7 @@ LEADER_ENABLE = yes Then add the `QK_LEAD` keycode to your keymap. -## Callbacks :id=callbacks +## Callbacks {#callbacks} These callbacks are invoked when the leader sequence begins and ends. In the latter you can implement your custom functionality based on the contents of the sequence buffer. @@ -38,9 +38,9 @@ void leader_end_user(void) { } ``` -## Basic Configuration :id=basic-configuration +## Basic Configuration {#basic-configuration} -### Timeout :id=timeout +### Timeout {#timeout} This is the amount of time you have to complete a sequence once the leader key has been pressed. The default value is 300 milliseconds, but you can change this by adding the following to your `config.h`: @@ -48,7 +48,7 @@ This is the amount of time you have to complete a sequence once the leader key h #define LEADER_TIMEOUT 350 ``` -### Per-Key Timeout :id=per-key-timeout +### Per-Key Timeout {#per-key-timeout} Rather than relying on an incredibly high timeout for long leader key strings or those of us without 200 wpm typing skills, you can enable per-key timing to ensure that each key pressed provides you with more time to finish the sequence. This is incredibly helpful with leader key emulation of tap dance (such as multiple taps of the same key like C, C, C). @@ -72,7 +72,7 @@ if (leader_sequence_three_keys(KC_C, KC_C, KC_C)) { } ``` -### Disabling Initial Timeout :id=disabling-initial-timeout +### Disabling Initial Timeout {#disabling-initial-timeout} Sometimes your leader key may be too far away from the rest of the keys in the sequence. Imagine that your leader key is one of your outer top right keys - you may need to reposition your hand just to reach your leader key. This can make typing the entire sequence on time hard difficult if you are able to type most of the sequence fast. For example, if your sequence is `Leader + asd`, typing `asd` fast is very easy once you have your hands in your home row, but starting the sequence in time after moving your hand out of the home row to reach the leader key and back is not. @@ -84,9 +84,9 @@ To remove the stress this situation produces to your hands, you can disable the Now, after you hit the leader key, you will have an infinite amount of time to start the rest of the sequence, allowing you to properly position your hands to type the rest of the sequence comfortably. This way you can configure a very short `LEADER_TIMEOUT`, but still have plenty of time to position your hands. -### Strict Key Processing :id=strict-key-processing +### Strict Key Processing {#strict-key-processing} -By default, only the "tap keycode" portions of [Mod-Taps](mod_tap.md) and [Layer Taps](feature_layers.md#switching-and-toggling-layers) are added to the sequence buffer. This means if you press eg. `LT(3, KC_A)` as part of a sequence, `KC_A` will be added to the buffer, rather than the entire `LT(3, KC_A)` keycode. +By default, only the "tap keycode" portions of [Mod-Taps](mod_tap) and [Layer Taps](feature_layers#switching-and-toggling-layers) are added to the sequence buffer. This means if you press eg. `LT(3, KC_A)` as part of a sequence, `KC_A` will be added to the buffer, rather than the entire `LT(3, KC_A)` keycode. This gives a more expected behaviour for most users, however you may want to change this. @@ -96,7 +96,7 @@ To enable this, add the following to your `config.h`: #define LEADER_KEY_STRICT_KEY_PROCESSING ``` -## Example :id=example +## Example {#example} This example will play the Mario "One Up" sound when you hit `QK_LEAD` to start the leader sequence. When the sequence ends, it will play "All Star" if it completes successfully or "Rick Roll" you if it fails (in other words, no sequence matched). @@ -134,62 +134,62 @@ void leader_end_user(void) { } ``` -## Keycodes :id=keycodes +## Keycodes {#keycodes} |Key |Aliases |Description | |-----------------------|---------|-------------------------| |`QK_LEADER` |`QK_LEAD`|Begin the leader sequence| -## API :id=api +## API {#api} -### `void leader_start_user(void)` :id=api-leader-start-user +### `void leader_start_user(void)` {#api-leader-start-user} User callback, invoked when the leader sequence begins. --- -### `void leader_end_user(void)` :id=api-leader-end-user +### `void leader_end_user(void)` {#api-leader-end-user} User callback, invoked when the leader sequence ends. --- -### `void leader_start(void)` :id=api-leader-start +### `void leader_start(void)` {#api-leader-start} Begin the leader sequence, resetting the buffer and timer. --- -### `void leader_end(void)` :id=api-leader-end +### `void leader_end(void)` {#api-leader-end} End the leader sequence. --- -### `bool leader_sequence_active(void)` :id=api-leader-sequence-active +### `bool leader_sequence_active(void)` {#api-leader-sequence-active} Whether the leader sequence is active. --- -### `bool leader_sequence_add(uint16_t keycode)` :id=api-leader-sequence-add +### `bool leader_sequence_add(uint16_t keycode)` {#api-leader-sequence-add} Add the given keycode to the sequence buffer. If `LEADER_NO_TIMEOUT` is defined, the timer is reset if the buffer is empty. -#### Arguments :id=api-leader-sequence-add-arguments +#### Arguments {#api-leader-sequence-add-arguments} - `uint16_t keycode` The keycode to add. -#### Return Value :id=api-leader-sequence-add-return +#### Return Value {#api-leader-sequence-add-return} `true` if the keycode was added, `false` if the buffer is full. --- -### `bool leader_sequence_timed_out(void)` :id=api-leader-sequence-timed-out +### `bool leader_sequence_timed_out(void)` {#api-leader-sequence-timed-out} Whether the leader sequence has reached the timeout. @@ -197,49 +197,49 @@ If `LEADER_NO_TIMEOUT` is defined, the buffer must also contain at least one key --- -### `bool leader_reset_timer(void)` :id=api-leader-reset-timer +### `bool leader_reset_timer(void)` {#api-leader-reset-timer} Reset the leader sequence timer. --- -### `bool leader_sequence_one_key(uint16_t kc)` :id=api-leader-sequence-one-key +### `bool leader_sequence_one_key(uint16_t kc)` {#api-leader-sequence-one-key} Check the sequence buffer for the given keycode. -#### Arguments :id=api-leader-sequence-one-key-arguments +#### Arguments {#api-leader-sequence-one-key-arguments} - `uint16_t kc` The keycode to check. -#### Return Value :id=api-leader-sequence-one-key-return +#### Return Value {#api-leader-sequence-one-key-return} `true` if the sequence buffer matches. --- -### `bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)` :id=api-leader-sequence-two-keys +### `bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)` {#api-leader-sequence-two-keys} Check the sequence buffer for the given keycodes. -#### Arguments :id=api-leader-sequence-two-keys-arguments +#### Arguments {#api-leader-sequence-two-keys-arguments} - `uint16_t kc1` The first keycode to check. - `uint16_t kc2` The second keycode to check. -#### Return Value :id=api-leader-sequence-two-keys-return +#### Return Value {#api-leader-sequence-two-keys-return} `true` if the sequence buffer matches. --- -### `bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)` :id=api-leader-sequence-three-keys +### `bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)` {#api-leader-sequence-three-keys} Check the sequence buffer for the given keycodes. -#### Arguments :id=api-leader-sequence-three-keys-arguments +#### Arguments {#api-leader-sequence-three-keys-arguments} - `uint16_t kc1` The first keycode to check. @@ -248,17 +248,17 @@ Check the sequence buffer for the given keycodes. - `uint16_t kc3` The third keycode to check. -#### Return Value :id=api-leader-sequence-three-keys-return +#### Return Value {#api-leader-sequence-three-keys-return} `true` if the sequence buffer matches. --- -### `bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)` :id=api-leader-sequence-four-keys +### `bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)` {#api-leader-sequence-four-keys} Check the sequence buffer for the given keycodes. -#### Arguments :id=api-leader-sequence-four-keys-arguments +#### Arguments {#api-leader-sequence-four-keys-arguments} - `uint16_t kc1` The first keycode to check. @@ -269,17 +269,17 @@ Check the sequence buffer for the given keycodes. - `uint16_t kc4` The fourth keycode to check. -#### Return Value :id=api-leader-sequence-four-keys-return +#### Return Value {#api-leader-sequence-four-keys-return} `true` if the sequence buffer matches. --- -### `bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)` :id=api-leader-sequence-five-keys +### `bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)` {#api-leader-sequence-five-keys} Check the sequence buffer for the given keycodes. -#### Arguments :id=api-leader-sequence-five-keys-arguments +#### Arguments {#api-leader-sequence-five-keys-arguments} - `uint16_t kc1` The first keycode to check. @@ -292,6 +292,6 @@ Check the sequence buffer for the given keycodes. - `uint16_t kc5` The fifth keycode to check. -#### Return Value :id=api-leader-sequence-five-keys-return +#### Return Value {#api-leader-sequence-five-keys-return} `true` if the sequence buffer matches. diff --git a/docs/feature_led_indicators.md b/docs/feature_led_indicators.md index b35a1744907..e28c222e765 100644 --- a/docs/feature_led_indicators.md +++ b/docs/feature_led_indicators.md @@ -1,6 +1,8 @@ # LED Indicators -?> LED indicators on split keyboards will require state information synced to the slave half (e.g. `#define SPLIT_LED_STATE_ENABLE`). See [data sync options](feature_split_keyboard.md#data-sync-options) for more details. +::: tip +LED indicators on split keyboards will require state information synced to the slave half (e.g. `#define SPLIT_LED_STATE_ENABLE`). See [data sync options](feature_split_keyboard#data-sync-options) for more details. +::: QMK provides methods to read 5 of the LEDs defined in the HID spec: @@ -15,7 +17,9 @@ There are three ways to get the lock LED state: * Implement `led_update_*` function * Call `led_t host_keyboard_led_state()` -!> The `host_keyboard_led_state()` may reflect an updated state before `led_update_user()` is called. +::: warning +The `host_keyboard_led_state()` may reflect an updated state before `led_update_user()` is called. +::: Two deprecated functions that provide the LED state as `uint8_t`: @@ -46,7 +50,9 @@ When the configuration options do not provide enough flexibility, the following Both receives LED state as a struct parameter. Returning `true` in `led_update_user()` will allow the keyboard level code in `led_update_kb()` to run as well. Returning `false` will override the keyboard level code, depending on how the keyboard level function is set up. -?> This boolean return type of `led_update_user` allows for overriding keyboard LED controls, and is thus recommended over the void `led_set_user` function. +::: tip +This boolean return type of `led_update_user` allows for overriding keyboard LED controls, and is thus recommended over the void `led_set_user` function. +::: ### Example of keyboard LED update implementation diff --git a/docs/feature_led_matrix.md b/docs/feature_led_matrix.md index 83357ab14e8..78afb36d2c6 100644 --- a/docs/feature_led_matrix.md +++ b/docs/feature_led_matrix.md @@ -1,12 +1,12 @@ -# LED Matrix Lighting :id=led-matrix-lighting +# LED Matrix Lighting {#led-matrix-lighting} This feature allows you to use LED matrices driven by external drivers. It hooks into the backlight system so you can use the same keycodes as backlighting to control it. -If you want to use RGB LED's you should use the [RGB Matrix Subsystem](feature_rgb_matrix.md) instead. +If you want to use RGB LED's you should use the [RGB Matrix Subsystem](feature_rgb_matrix) instead. -## Driver configuration :id=driver-configuration +## Driver configuration {#driver-configuration} --- -### IS31FL3731 :id=is31fl3731 +### IS31FL3731 {#is31fl3731} There is basic support for addressable LED matrix lighting with the I2C IS31FL3731 LED controller. To enable it, add this to your `rules.mk`: @@ -47,7 +47,9 @@ Here is an example using 2 drivers. #define LED_MATRIX_LED_COUNT (LED_DRIVER_1_LED_TOTAL + LED_DRIVER_2_LED_TOTAL) ``` -!> Note the parentheses, this is so when `LED_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (LED_DRIVER_1_LED_TOTAL + LED_DRIVER_2_LED_TOTAL)` will give very different results than `rand() % LED_DRIVER_1_LED_TOTAL + LED_DRIVER_2_LED_TOTAL`. +::: warning +Note the parentheses, this is so when `LED_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (LED_DRIVER_1_LED_TOTAL + LED_DRIVER_2_LED_TOTAL)` will give very different results than `rand() % LED_DRIVER_1_LED_TOTAL + LED_DRIVER_2_LED_TOTAL`. +::: For split keyboards using `LED_MATRIX_SPLIT` with an LED driver, you can either have the same driver address or different driver addresses. If using different addresses, use `IS31FL3731_I2C_ADDRESS_1` for one and `IS31FL3731_I2C_ADDRESS_2` for the other one. Then, in `g_is31fl3731_leds`, fill out the correct driver index (0 or 1). If using one address, use `IS31FL3731_I2C_ADDRESS_1` for both, and use index 0 for `g_is31fl3731_leds`. @@ -68,7 +70,7 @@ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = { Where `Cx_y` is the location of the LED in the matrix defined by [the datasheet](https://www.issi.com/WW/pdf/31FL3731.pdf) and the header file `drivers/led/issi/is31fl3731-mono.h`. The `driver` is the index of the driver you defined in your `config.h` (`0`, `1`, `2`, or `3` ). --- -### IS31FLCOMMON :id=is31flcommon +### IS31FLCOMMON {#is31flcommon} There is basic support for addressable LED matrix lighting with a selection of I2C ISSI Lumissil LED controllers through a shared common driver. To enable it, add this to your `rules.mk`: @@ -130,7 +132,9 @@ Here is an example using 2 drivers. #define DRIVER_2_LED_TOTAL 42 #define LED_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) ``` -!> Note the parentheses, this is so when `LED_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: warning +Note the parentheses, this is so when `LED_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: Currently only 4 drivers are supported, but it would be trivial to support for more. Note that using a combination of different drivers is not supported. All drivers must be of the same model. @@ -170,7 +174,7 @@ Where LED Index is the position of the LED in the `g_is31_leds` array. The `scal --- -## Common Configuration :id=common-configuration +## Common Configuration {#common-configuration} From this point forward the configuration is the same for all the drivers. The `led_config_t` struct provides a key electrical matrix to led index lookup table, what the physical position of each LED is on the board, and what type of key or usage the LED if the LED represents. Here is a brief example: @@ -203,7 +207,7 @@ As mentioned earlier, the center of the keyboard by default is expected to be `{ `// LED Index to Flag` is a bitmask, whether or not a certain LEDs is of a certain type. It is recommended that LEDs are set to only 1 type. -## Flags :id=flags +## Flags {#flags} |Define |Value |Description | |----------------------------|------|-------------------------------------------------| @@ -215,7 +219,7 @@ As mentioned earlier, the center of the keyboard by default is expected to be `{ |`LED_FLAG_KEYLIGHT` |`0x04`|If the LED is for key backlight | |`LED_FLAG_INDICATOR` |`0x08`|If the LED is for keyboard state indication | -## Keycodes :id=keycodes +## Keycodes {#keycodes} |Key |Aliases |Description | |-------------------------------|---------|-----------------------------------| @@ -229,7 +233,7 @@ As mentioned earlier, the center of the keyboard by default is expected to be `{ |`QK_LED_MATRIX_SPEED_UP` |`LM_SPDU`|Increase the animation speed | |`QK_LED_MATRIX_SPEED_DOWN` |`LM_SPDD`|Decrease the animation speed | -## LED Matrix Effects :id=led-matrix-effects +## LED Matrix Effects {#led-matrix-effects} These are the effects that are currently available: @@ -290,9 +294,11 @@ You can enable a single effect by defining `ENABLE_[EFFECT_NAME]` in your `confi |`#define ENABLE_LED_MATRIX_SOLID_SPLASH` |Enables `LED_MATRIX_SOLID_SPLASH` | |`#define ENABLE_LED_MATRIX_SOLID_MULTISPLASH` |Enables `LED_MATRIX_SOLID_MULTISPLASH` | -?> These modes introduce additional logic that can increase firmware size. +::: tip +These modes introduce additional logic that can increase firmware size. +::: -## Custom LED Matrix Effects :id=custom-led-matrix-effects +## Custom LED Matrix Effects {#custom-led-matrix-effects} By setting `LED_MATRIX_CUSTOM_USER` (and/or `LED_MATRIX_CUSTOM_KB`) in `rules.mk`, new effects can be defined directly from userspace, without having to edit any QMK core files. @@ -353,7 +359,7 @@ static bool my_cool_effect2(effect_params_t* params) { For inspiration and examples, check out the built-in effects under `quantum/led_matrix/animations/`. -## Additional `config.h` Options :id=additional-configh-options +## Additional `config.h` Options {#additional-configh-options} ```c #define LED_MATRIX_KEYRELEASES // reactive effects respond to keyreleases (instead of keypresses) @@ -371,17 +377,17 @@ For inspiration and examples, check out the built-in effects under `quantum/led_ // If reactive effects are enabled, you also will want to enable SPLIT_TRANSPORT_MIRROR ``` -## EEPROM storage :id=eeprom-storage +## EEPROM storage {#eeprom-storage} The EEPROM for it is currently shared with the RGB Matrix system (it's generally assumed only one feature would be used at a time). -### Direct Operation :id=direct-operation +### Direct Operation {#direct-operation} |Function |Description | |--------------------------------------------|-------------| |`led_matrix_set_value_all(v)` |Set all of the LEDs to the given value, where `v` is between 0 and 255 (not written to EEPROM) | |`led_matrix_set_value(index, v)` |Set a single LED to the given value, where `v` is between 0 and 255, and `index` is between 0 and `LED_MATRIX_LED_COUNT` (not written to EEPROM) | -### Disable/Enable Effects :id=disable-enable-effects +### Disable/Enable Effects {#disable-enable-effects} |Function |Description | |--------------------------------------------|-------------| |`led_matrix_toggle()` |Toggle effect range LEDs between on and off | @@ -391,7 +397,7 @@ The EEPROM for it is currently shared with the RGB Matrix system (it's generally |`led_matrix_disable()` |Turn effect range LEDs off, based on their previous state | |`led_matrix_disable_noeeprom()` |Turn effect range LEDs off, based on their previous state (not written to EEPROM) | -### Change Effect Mode :id=change-effect-mode +### Change Effect Mode {#change-effect-mode} |Function |Description | |--------------------------------------------|-------------| |`led_matrix_mode(mode)` |Set the mode, if LED animations are enabled | @@ -407,7 +413,7 @@ The EEPROM for it is currently shared with the RGB Matrix system (it's generally |`led_matrix_set_speed(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 | |`led_matrix_set_speed_noeeprom(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 (not written to EEPROM) | -### Change Value :id=change-value +### Change Value {#change-value} |Function |Description | |--------------------------------------------|-------------| |`led_matrix_increase_val()` |Increase the value for effect range LEDs. This wraps around at maximum value | @@ -415,7 +421,7 @@ The EEPROM for it is currently shared with the RGB Matrix system (it's generally |`led_matrix_decrease_val()` |Decrease the value for effect range LEDs. This wraps around at minimum value | |`led_matrix_decrease_val_noeeprom()` |Decrease the value for effect range LEDs. This wraps around at minimum value (not written to EEPROM) | -### Query Current Status :id=query-current-status +### Query Current Status {#query-current-status} |Function |Description | |---------------------------------|---------------------------| |`led_matrix_is_enabled()` |Gets current on/off status | @@ -424,9 +430,9 @@ The EEPROM for it is currently shared with the RGB Matrix system (it's generally |`led_matrix_get_speed()` |Gets current speed | |`led_matrix_get_suspend_state()` |Gets current suspend state | -## Callbacks :id=callbacks +## Callbacks {#callbacks} -### Indicators :id=indicators +### Indicators {#indicators} If you want to set custom indicators, such as an LED for Caps Lock, or layer indication, then you can use the `led_matrix_indicators_kb` function on the keyboard level source file, or `led_matrix_indicators_user` function in the user `keymap.c`. ```c diff --git a/docs/feature_macros.md b/docs/feature_macros.md index f0533f14fef..c3162dba80c 100644 --- a/docs/feature_macros.md +++ b/docs/feature_macros.md @@ -2,11 +2,13 @@ Macros allow you to send multiple keystrokes when pressing just one key. QMK has a number of ways to define and use macros. These can do anything you want: type common phrases for you, copypasta, repetitive game movements, or even help you code. -!> **Security Note**: While it is possible to use macros to send passwords, credit card numbers, and other sensitive information it is a supremely bad idea to do so. Anyone who gets a hold of your keyboard will be able to access that information by opening a text editor. +::: warning +**Security Note**: While it is possible to use macros to send passwords, credit card numbers, and other sensitive information it is a supremely bad idea to do so. Anyone who gets a hold of your keyboard will be able to access that information by opening a text editor. +::: ## Using Macros In JSON Keymaps -You can define up to 32 macros in a `keymap.json` file, as used by [Configurator](newbs_building_firmware_configurator.md), and `qmk compile`. You can define these macros in a list under the `macros` keyword, like this: +You can define up to 32 macros in a `keymap.json` file, as used by [Configurator](newbs_building_firmware_configurator), and `qmk compile`. You can define these macros in a list under the `macros` keyword, like this: ```json { @@ -84,7 +86,7 @@ All objects have one required key: `action`. This tells QMK what the object does Only basic keycodes (prefixed by `KC_`) are supported. Do not include the `KC_` prefix when listing keycodes. * `beep` - * Play a bell if the keyboard has [audio enabled](feature_audio.md). + * Play a bell if the keyboard has [audio enabled](feature_audio). * Example: `{"action": "beep"}` * `delay` * Pause macro playback. Duration is specified in milliseconds (ms). @@ -106,7 +108,7 @@ Only basic keycodes (prefixed by `KC_`) are supported. Do not include the `KC_` ### `SEND_STRING()` & `process_record_user` -See also: [Send String](feature_send_string.md) +See also: [Send String](feature_send_string) Sometimes you want a key to type out words or phrases. For the most common situations, we've provided `SEND_STRING()`, which will type out a string (i.e. a sequence of characters) for you. All ASCII characters that are easily translatable to a keycode are supported (e.g. `qmk 123\n\t`). @@ -146,7 +148,7 @@ If yes, we send the string `"QMK is the best thing ever!"` to the computer via t We return `true` to indicate to the caller that the key press we just processed should continue to be processed as normal (as we didn't replace or alter the functionality). Finally, we define the keymap so that the first button activates our macro and the second button is just an escape button. -?>It is recommended to use the SAFE_RANGE macro as per [Customizing Functionality](custom_quantum_functions.md). +?>It is recommended to use the SAFE_RANGE macro as per [Customizing Functionality](custom_quantum_functions). You might want to add more than one macro. You can do that by adding another keycode and adding another case to the switch statement, like so: @@ -195,7 +197,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; ``` -?> An enumerated list of custom keycodes (`enum custom_keycodes`) must be declared before `keymaps[]` array, `process_record_user()` and any other function that use the list for the compiler to recognise it. +::: tip +An enumerated list of custom keycodes (`enum custom_keycodes`) must be declared before `keymaps[]` array, `process_record_user()` and any other function that use the list for the compiler to recognise it. +::: #### Advanced Macros @@ -315,7 +319,9 @@ SEND_STRING(".."SS_TAP(X_END)); There are some functions you may find useful in macro-writing. Keep in mind that while you can write some fairly advanced code within a macro, if your functionality gets too complex you may want to define a custom keycode instead. Macros are meant to be simple. -?> You can also use the functions described in [Useful function](ref_functions.md) and [Checking modifier state](feature_advanced_keycodes#checking-modifier-state) for additional functionality. For example, `reset_keyboard()` allows you to reset the keyboard as part of a macro and `get_mods() & MOD_MASK_SHIFT` lets you check for the existence of active shift modifiers. +::: tip +You can also use the functions described in [Useful function](ref_functions) and [Checking modifier state](feature_advanced_keycodes#checking-modifier-state) for additional functionality. For example, `reset_keyboard()` allows you to reset the keyboard as part of a macro and `get_mods() & MOD_MASK_SHIFT` lets you check for the existence of active shift modifiers. +::: #### `record->event.pressed` diff --git a/docs/feature_midi.md b/docs/feature_midi.md index 59ee0114c8b..89c6af05085 100644 --- a/docs/feature_midi.md +++ b/docs/feature_midi.md @@ -34,7 +34,7 @@ To enable advanced MIDI, add the following to your `config.h`: If you're aiming to emulate the features of something like a Launchpad or other MIDI controller you'll need to access the internal MIDI device directly. -Because there are so many possible CC messages, not all of them are implemented as keycodes. Additionally, you might need to provide more than just two values that you would get from a keycode (pressed and released) - for example, the analog values from a fader or a potentiometer. So, you will need to implement [custom keycodes](feature_macros.md) if you want to use them in your keymap directly using `process_record_user()`. +Because there are so many possible CC messages, not all of them are implemented as keycodes. Additionally, you might need to provide more than just two values that you would get from a keycode (pressed and released) - for example, the analog values from a fader or a potentiometer. So, you will need to implement [custom keycodes](feature_macros) if you want to use them in your keymap directly using `process_record_user()`. For reference of all the possible control code numbers see [MIDI Specification](#midi-specification) @@ -258,7 +258,7 @@ For the above, the `MI_C` keycode will produce a C3 (note number 48), and so on. diff --git a/docs/feature_mouse_keys.md b/docs/feature_mouse_keys.md index 42448325c9f..240f6bf9be0 100644 --- a/docs/feature_mouse_keys.md +++ b/docs/feature_mouse_keys.md @@ -205,4 +205,4 @@ Tips: ## Use with PS/2 Mouse and Pointing Device -Mouse keys button state is shared with [PS/2 mouse](feature_ps2_mouse.md) and [pointing device](feature_pointing_device.md) so mouse keys button presses can be used for clicks and drags. +Mouse keys button state is shared with [PS/2 mouse](feature_ps2_mouse) and [pointing device](feature_pointing_device) so mouse keys button presses can be used for clicks and drags. diff --git a/docs/feature_oled_driver.md b/docs/feature_oled_driver.md index 5a583fd40ee..cb7a2f13f3d 100644 --- a/docs/feature_oled_driver.md +++ b/docs/feature_oled_driver.md @@ -102,7 +102,9 @@ bool oled_task_user(void) { } ``` -?> The default font file is located at `drivers/oled/glcdfont.c` and its location can be overwritten with the `OLED_FONT_H` configuration option. Font file content can be edited with external tools such as [Helix Font Editor](https://helixfonteditor.netlify.app/) and [Logo Editor](https://joric.github.io/qle/). +::: tip +The default font file is located at `drivers/oled/glcdfont.c` and its location can be overwritten with the `OLED_FONT_H` configuration option. Font file content can be edited with external tools such as [Helix Font Editor](https://helixfonteditor.netlify.app/) and [Logo Editor](https://joric.github.io/qle/). +::: ## Buffer Read Example For some purposes, you may need to read the current state of the OLED display @@ -243,7 +245,9 @@ These configuration options should be placed in `config.h`. Example: |`OLED_DISPLAY_128X128`|*Not defined* |Changes the display defines for use with 128x128 displays. | |`OLED_DISPLAY_CUSTOM` |*Not defined* |Changes the display defines for use with custom displays.
Requires user to implement the below defines. | -!> 64x128 and 128x128 displays default to the SH1107 IC type, as these heights are not supported by the other IC types. +::: warning +64x128 and 128x128 displays default to the SH1107 IC type, as these heights are not supported by the other IC types. +::: |Define |Default |Description | | --------------------|---------------|----------------------------------------------------------------------------------------------------------------------------------------| @@ -391,9 +395,9 @@ void oled_write_ln_P(const char *data, bool invert); // Writes a PROGMEM string to the buffer at current cursor position void oled_write_raw_P(const char *data, uint16_t size); #else -# define oled_write_P(data, invert) oled_write(data, invert) -# define oled_write_ln_P(data, invert) oled_write_ln(data, invert) -# define oled_write_raw_P(data, size) oled_write_raw(data, size) +# define oled_write_P(data, invert) oled_write(data, invert) +# define oled_write_ln_P(data, invert) oled_write_ln(data, invert) +# define oled_write_raw_P(data, size) oled_write_raw(data, size) #endif // defined(__AVR__) // Can be used to manually turn on the screen if it is off @@ -462,9 +466,13 @@ uint8_t oled_max_chars(void); uint8_t oled_max_lines(void); ``` -!> Scrolling is unsupported on the SH1106 and SH1107. +::: warning +Scrolling is unsupported on the SH1106 and SH1107. +::: -!> Scrolling does not work properly on the SSD1306 if the display width is smaller than 128. +::: warning +Scrolling does not work properly on the SSD1306 if the display width is smaller than 128. +::: ## SSD1306.h Driver Conversion Guide diff --git a/docs/feature_os_detection.md b/docs/feature_os_detection.md index a50ee7ccc23..d0556d2549d 100644 --- a/docs/feature_os_detection.md +++ b/docs/feature_os_detection.md @@ -29,10 +29,12 @@ enum { } os_variant_t; ``` -?> Note that it takes some time after firmware is booted to detect the OS. +::: tip +Note that it takes some time after firmware is booted to detect the OS. +::: This time is quite short, probably hundreds of milliseconds, but this data may be not ready in keyboard and layout setup functions which run very early during firmware startup. -## Callbacks :id=callbacks +## Callbacks {#callbacks} If you want to perform custom actions when the OS is detected, then you can use the `process_detected_host_os_kb` function on the keyboard level source file, or `process_detected_host_os_user` function in the user `keymap.c`. diff --git a/docs/feature_pointing_device.md b/docs/feature_pointing_device.md index f55b3082861..933202a009b 100644 --- a/docs/feature_pointing_device.md +++ b/docs/feature_pointing_device.md @@ -1,4 +1,4 @@ -# Pointing Device :id=pointing-device +# Pointing Device {#pointing-device} Pointing Device is a generic name for a feature intended to be generic: moving the system pointer around. There are certainly other options for it - like mousekeys - but this aims to be easily modifiable and hardware driven. You can implement custom keys to control functionality, or you can gather information from other peripherals and insert it directly here - let QMK handle the processing for you. @@ -112,7 +112,9 @@ Specific device profiles are provided which set the required values for dimensio | `AZOTEQ_IQS5XX_TPS43` | (Pick One) Sets resolution/mm to TPS43 specifications. | | `AZOTEQ_IQS5XX_TPS65` | (Pick One) Sets resolution/mm to TPS65 specifications. | -?> If using one of the above defines you can skip to gesture settings. +::: tip +If using one of the above defines you can skip to gesture settings. +::: | Setting | Description | Default | | -------------------------------- | ---------------------------------------------------------- | ------------- | @@ -383,7 +385,9 @@ uint16_t pointing_device_driver_get_cpi(void) { return 0; } void pointing_device_driver_set_cpi(uint16_t cpi) {} ``` -!> Ideally, new sensor hardware should be added to `drivers/sensors/` and `quantum/pointing_device_drivers.c`, but there may be cases where it's very specific to the hardware. So these functions are provided, just in case. +::: warning +Ideally, new sensor hardware should be added to `drivers/sensors/` and `quantum/pointing_device_drivers.c`, but there may be cases where it's very specific to the hardware. So these functions are provided, just in case. +::: ## Common Configuration @@ -404,15 +408,19 @@ void pointing_device_driver_set_cpi(uint16_t cpi) {} | `POINTING_DEVICE_SDIO_PIN` | (Optional) Provides a default SDIO pin, useful for supporting multiple sensor configs. | _not defined_ | | `POINTING_DEVICE_SCLK_PIN` | (Optional) Provides a default SCLK pin, useful for supporting multiple sensor configs. | _not defined_ | -!> When using `SPLIT_POINTING_ENABLE` the `POINTING_DEVICE_MOTION_PIN` functionality is not supported and `POINTING_DEVICE_TASK_THROTTLE_MS` will default to `1`. Increasing this value will increase transport performance at the cost of possible mouse responsiveness. +::: warning +When using `SPLIT_POINTING_ENABLE` the `POINTING_DEVICE_MOTION_PIN` functionality is not supported and `POINTING_DEVICE_TASK_THROTTLE_MS` will default to `1`. Increasing this value will increase transport performance at the cost of possible mouse responsiveness. +::: The `POINTING_DEVICE_CS_PIN`, `POINTING_DEVICE_SDIO_PIN`, and `POINTING_DEVICE_SCLK_PIN` provide a convenient way to define a single pin that can be used for an interchangeable sensor config. This allows you to have a single config, without defining each device. Each sensor allows for this to be overridden with their own defines. -!> 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. +::: warning +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. +::: ## Split Keyboard Configuration -The following configuration options are only available when using `SPLIT_POINTING_ENABLE` see [data sync options](feature_split_keyboard.md?id=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. +The following configuration options are only available when using `SPLIT_POINTING_ENABLE` see [data sync options](feature_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. | Setting | Description | Default | | ------------------------------------ | ----------------------------------------------------------------------------------------------------- | ------------- | @@ -425,7 +433,9 @@ The following configuration options are only available when using `SPLIT_POINTIN | `POINTING_DEVICE_INVERT_X_RIGHT` | (Optional) Inverts the X axis report. | _not defined_ | | `POINTING_DEVICE_INVERT_Y_RIGHT` | (Optional) Inverts the Y axis report. | _not defined_ | -!> If there is a `_RIGHT` configuration option or callback, the [common configuration](feature_pointing_device.md?id=common-configuration) option will work for the left. For correct left/right detection you should setup a [handedness option](feature_split_keyboard?id=setting-handedness), `EE_HANDS` is usually a good option for an existing board that doesn't do handedness by hardware. +::: warning +If there is a `_RIGHT` configuration option or callback, the [common configuration](feature_pointing_device#common-configuration) option will work for the left. For correct left/right detection you should setup a [handedness option](feature_split_keyboard#setting-handedness), `EE_HANDS` is usually a good option for an existing board that doesn't do handedness by hardware. +::: ## Callbacks and Functions @@ -448,7 +458,7 @@ The following configuration options are only available when using `SPLIT_POINTIN ## Split Keyboard Callbacks and Functions -The combined functions below are only available when using `SPLIT_POINTING_ENABLE` and `POINTING_DEVICE_COMBINED`. The 2 callbacks `pointing_device_task_combined_*` replace the single sided equivalents above. See the [combined pointing devices example](feature_pointing_device.md?id=combined-pointing-devices) +The combined functions below are only available when using `SPLIT_POINTING_ENABLE` and `POINTING_DEVICE_COMBINED`. The 2 callbacks `pointing_device_task_combined_*` replace the single sided equivalents above. See the [combined pointing devices example](feature_pointing_device#combined-pointing-devices) | Function | Description | | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | @@ -673,11 +683,13 @@ If you are having issues with pointing device drivers debug messages can be enab #define POINTING_DEVICE_DEBUG ``` -?> The messages will be printed out to the `CONSOLE` output. For additional information, refer to [Debugging/Troubleshooting QMK](faq_debug.md). +::: tip +The messages will be printed out to the `CONSOLE` output. For additional information, refer to [Debugging/Troubleshooting QMK](faq_debug). +::: --- -# Automatic Mouse Layer :id=pointing-device-auto-mouse +# Automatic Mouse Layer {#pointing-device-auto-mouse} When using a pointing device combined with a keyboard the mouse buttons are often kept on a separate layer from the default keyboard layer, which requires pressing or holding a key to change layers before using the mouse. To make this easier and more efficient an additional pointing device feature may be enabled that will automatically activate a target layer as soon as the pointing device is active _(in motion, mouse button pressed etc.)_ and deactivate the target layer after a set time. diff --git a/docs/feature_programmable_button.md b/docs/feature_programmable_button.md index 091464e19c0..1fdf44c29e0 100644 --- a/docs/feature_programmable_button.md +++ b/docs/feature_programmable_button.md @@ -1,12 +1,14 @@ -# Programmable Button :id=programmable-button +# Programmable Button {#programmable-button} Programmable Buttons are keys that have no predefined meaning. This means they can be processed on the host side by custom software without the operating system trying to interpret them. The keycodes are emitted according to the HID Telephony Device page (`0x0B`), Programmable Button usage (`0x09`). On Linux (> 5.14) they are handled automatically and translated to `KEY_MACRO#` keycodes (up to `KEY_MACRO30`). -?> Currently there is no known support in Windows or macOS. It may be possible to write a custom HID driver to receive these usages, but this is out of the scope of the QMK documentation. +::: tip +Currently there is no known support in Windows or macOS. It may be possible to write a custom HID driver to receive these usages, but this is out of the scope of the QMK documentation. +::: -## Usage :id=usage +## Usage {#usage} Add the following to your `rules.mk`: @@ -14,7 +16,7 @@ Add the following to your `rules.mk`: PROGRAMMABLE_BUTTON_ENABLE = yes ``` -## Keycodes :id=keycodes +## Keycodes {#keycodes} |Key |Aliases|Description | |---------------------------|-------|----------------------| @@ -51,94 +53,94 @@ PROGRAMMABLE_BUTTON_ENABLE = yes |`QK_PROGRAMMABLE_BUTTON_31`|`PB_31`|Programmable button 31| |`QK_PROGRAMMABLE_BUTTON_32`|`PB_32`|Programmable button 32| -## API :id=api +## API {#api} -### `void programmable_button_clear(void)` :id=api-programmable-button-clear +### `void programmable_button_clear(void)` {#api-programmable-button-clear} Clear the programmable button report. --- -### `void programmable_button_add(uint8_t index)` :id=api-programmable-button-add +### `void programmable_button_add(uint8_t index)` {#api-programmable-button-add} Set the state of a button. -#### Arguments :id=api-programmable-button-add-arguments +#### Arguments {#api-programmable-button-add-arguments} - `uint8_t index` The index of the button to press, from 0 to 31. --- -### `void programmable_button_remove(uint8_t index)` :id=api-programmable-button-remove +### `void programmable_button_remove(uint8_t index)` {#api-programmable-button-remove} Reset the state of a button. -#### Arguments :id=api-programmable-button-remove-arguments +#### Arguments {#api-programmable-button-remove-arguments} - `uint8_t index` The index of the button to release, from 0 to 31. --- -### `void programmable_button_register(uint8_t index)` :id=api-programmable-button-register +### `void programmable_button_register(uint8_t index)` {#api-programmable-button-register} Set the state of a button, and flush the report. -#### Arguments :id=api-programmable-button-register-arguments +#### Arguments {#api-programmable-button-register-arguments} - `uint8_t index` The index of the button to press, from 0 to 31. --- -### `void programmable_button_unregister(uint8_t index)` :id=api-programmable-button-unregister +### `void programmable_button_unregister(uint8_t index)` {#api-programmable-button-unregister} Reset the state of a button, and flush the report. -#### Arguments :id=api-programmable-button-unregister-arguments +#### Arguments {#api-programmable-button-unregister-arguments} - `uint8_t index` The index of the button to release, from 0 to 31. --- -### `bool programmable_button_is_on(uint8_t index)` :id=api-programmable-button-is-on +### `bool programmable_button_is_on(uint8_t index)` {#api-programmable-button-is-on} Get the state of a button. -#### Arguments :id=api-programmable-button-is-on-arguments +#### Arguments {#api-programmable-button-is-on-arguments} - `uint8_t index` The index of the button to check, from 0 to 31. -#### Return Value :id=api-programmable-button-is-on-return +#### Return Value {#api-programmable-button-is-on-return} `true` if the button is pressed. --- -### `void programmable_button_flush(void)` :id=api-programmable-button-flush +### `void programmable_button_flush(void)` {#api-programmable-button-flush} Send the programmable button report to the host. --- -### `uint32_t programmable_button_get_report(void)` :id=api-programmable-button-get-report +### `uint32_t programmable_button_get_report(void)` {#api-programmable-button-get-report} Get the programmable button report. -#### Return Value :id=api-programmable-button-get-report-return +#### Return Value {#api-programmable-button-get-report-return} The bitmask of programmable button states. --- -### `void programmable_button_set_report(uint32_t report)` :id=api-programmable-button-set-report +### `void programmable_button_set_report(uint32_t report)` {#api-programmable-button-set-report} Set the programmable button report. -#### Arguments :id=api-programmable-button-set-report-arguments +#### Arguments {#api-programmable-button-set-report-arguments} - `uint32_t report` A bitmask of programmable button states. diff --git a/docs/feature_ps2_mouse.md b/docs/feature_ps2_mouse.md index 766fd6fe78f..90f4cca8275 100644 --- a/docs/feature_ps2_mouse.md +++ b/docs/feature_ps2_mouse.md @@ -1,4 +1,4 @@ -# PS/2 Mouse Support :id=ps2-mouse-support +# PS/2 Mouse Support {#ps2-mouse-support} Its possible to hook up a PS/2 mouse (for example touchpads or trackpoints) to your keyboard as a composite device. @@ -6,7 +6,7 @@ To hook up a Trackpoint, you need to obtain a Trackpoint module (i.e. harvest fr There are three available modes for hooking up PS/2 devices: USART (best), interrupts (better) or busywait (not recommended). -## The Circuitry between Trackpoint and Controller :id=the-circuitry-between-trackpoint-and-controller +## The Circuitry between Trackpoint and Controller {#the-circuitry-between-trackpoint-and-controller} To get the things working, a 4.7K drag is needed between the two lines DATA and CLK and the line 5+. @@ -24,7 +24,7 @@ MODULE 5+ --------+--+--------- PWR CONTROLLER ``` -## Busywait Version :id=busywait-version +## Busywait Version {#busywait-version} Note: This is not recommended, you may encounter jerky movement or unsent inputs. Please use interrupt or USART version if possible. @@ -40,12 +40,12 @@ In your keyboard config.h: ```c #ifdef PS2_DRIVER_BUSYWAIT -# define PS2_CLOCK_PIN D1 -# define PS2_DATA_PIN D2 +# define PS2_CLOCK_PIN D1 +# define PS2_DATA_PIN D2 #endif ``` -### Interrupt Version (AVR/ATMega32u4) :id=interrupt-version-avr +### Interrupt Version (AVR/ATMega32u4) {#interrupt-version-avr} The following example uses D2 for clock and D5 for data. You can use any INT or PCINT pin for clock, and any pin for data. @@ -78,7 +78,7 @@ In your keyboard config.h: #endif ``` -### Interrupt Version (ARM chibios) :id=interrupt-version-chibios +### Interrupt Version (ARM chibios) {#interrupt-version-chibios} Pretty much any two pins can be used for the (software) interrupt variant on ARM cores. The example below uses A8 for clock, and A9 for data. @@ -103,7 +103,7 @@ And in the chibios specifig halconf.h: ``` -### USART Version :id=usart-version +### USART Version {#usart-version} To use USART on the ATMega32u4, you have to use PD5 for clock and PD2 for data. If one of those are unavailable, you need to use interrupt version. @@ -155,7 +155,7 @@ In your keyboard config.h: #endif ``` -### RP2040 PIO Version :id=rp2040-pio-version +### RP2040 PIO Version {#rp2040-pio-version} The `PIO` subsystem is a Raspberry Pi RP2040 specific implementation, using the integrated PIO peripheral and is therefore only available on this MCU. @@ -178,9 +178,9 @@ Example info.json content: } ``` -## Additional Settings :id=additional-settings +## Additional Settings {#additional-settings} -### PS/2 Mouse Features :id=ps2-mouse-features +### PS/2 Mouse Features {#ps2-mouse-features} These enable settings supported by the PS/2 mouse protocol. @@ -221,7 +221,7 @@ void ps2_mouse_set_resolution(ps2_mouse_resolution_t resolution); void ps2_mouse_set_sample_rate(ps2_mouse_sample_rate_t sample_rate); ``` -### Fine Control :id=fine-control +### Fine Control {#fine-control} Use the following defines to change the sensitivity and speed of the mouse. Note: you can also use `ps2_mouse_set_resolution` for the same effect (not supported on most touchpads). @@ -232,7 +232,7 @@ Note: you can also use `ps2_mouse_set_resolution` for the same effect (not suppo #define PS2_MOUSE_V_MULTIPLIER 1 ``` -### Scroll Button :id=scroll-button +### Scroll Button {#scroll-button} If you're using a trackpoint, you will likely want to be able to use it for scrolling. It's possible to enable a "scroll button/s" that when pressed will cause the mouse to scroll instead of moving. @@ -279,7 +279,7 @@ Fine control over the scrolling is supported with the following defines: #define PS2_MOUSE_SCROLL_DIVISOR_V 2 ``` -### Invert Mouse buttons :id=invert-buttons +### Invert Mouse buttons {#invert-buttons} To invert the left & right buttons you can put: @@ -289,7 +289,7 @@ To invert the left & right buttons you can put: into config.h. -### Invert Mouse and Scroll Axes :id=invert-mouse-and-scroll-axes +### Invert Mouse and Scroll Axes {#invert-mouse-and-scroll-axes} To invert the X and Y axes you can put: @@ -309,7 +309,7 @@ To reverse the scroll axes you can put: into config.h. -### Rotate Mouse Axes :id=rotate-mouse-axes +### Rotate Mouse Axes {#rotate-mouse-axes} Transform the output of the device with a clockwise rotation of 90, 180, or 270 degrees. @@ -328,7 +328,7 @@ be North-facing, compensate as follows: #define PS2_MOUSE_ROTATE 90 /* Compensate for West-facing device orientation. */ ``` -### Debug Settings :id=debug-settings +### Debug Settings {#debug-settings} To debug the mouse, add `debug_mouse = true` or enable via bootmagic. @@ -338,7 +338,7 @@ To debug the mouse, add `debug_mouse = true` or enable via bootmagic. #define PS2_MOUSE_DEBUG_RAW ``` -### Movement Hook :id=movement-hook +### Movement Hook {#movement-hook} Process mouse movement in the keymap before it is sent to the host. Example uses include filtering noise, adding acceleration, and automatically activating diff --git a/docs/feature_rawhid.md b/docs/feature_rawhid.md index 64cb42fdfee..c3ecfbe099d 100644 --- a/docs/feature_rawhid.md +++ b/docs/feature_rawhid.md @@ -1,10 +1,10 @@ -# Raw HID :id=raw-hid +# Raw HID {#raw-hid} The Raw HID feature allows for bidirectional communication between QMK and the host computer over an HID interface. This has many potential use cases, such as switching keymaps on the fly or sending useful metrics like CPU/RAM usage. In order to communicate with the keyboard using this feature, you will need to write a program that runs on the host. As such, some basic programming skills are required - more if you intend to implement complex behaviour. -## Usage :id=usage +## Usage {#usage} Add the following to your `rules.mk`: @@ -12,7 +12,7 @@ Add the following to your `rules.mk`: RAW_ENABLE = yes ``` -## Basic Configuration :id=basic-configuration +## Basic Configuration {#basic-configuration} By default, the HID Usage Page and Usage ID for the Raw HID interface are `0xFF60` and `0x61`. However, they can be changed if necessary by adding the following to your `config.h`: @@ -21,7 +21,7 @@ By default, the HID Usage Page and Usage ID for the Raw HID interface are `0xFF6 |`RAW_USAGE_PAGE`|`0xFF60`|The usage page of the Raw HID interface| |`RAW_USAGE_ID` |`0x61` |The usage ID of the Raw HID interface | -## Sending Data to the Keyboard :id=sending-data-to-the-keyboard +## Sending Data to the Keyboard {#sending-data-to-the-keyboard} To send data to the keyboard, you must first find a library for communicating with HID devices in the programming language of your choice. Here are some examples: @@ -46,15 +46,17 @@ void raw_hid_receive(uint8_t *data, uint8_t length) { } ``` -!> Because the HID specification does not support variable length reports, all reports in both directions must be exactly `RAW_EPSIZE` (currently 32) bytes long, regardless of actual payload length. However, variable length payloads can potentially be implemented on top of this by creating your own data structure that may span multiple reports. +::: warning +Because the HID specification does not support variable length reports, all reports in both directions must be exactly `RAW_EPSIZE` (currently 32) bytes long, regardless of actual payload length. However, variable length payloads can potentially be implemented on top of this by creating your own data structure that may span multiple reports. +::: -## Receiving Data from the Keyboard :id=receiving-data-from-the-keyboard +## Receiving Data from the Keyboard {#receiving-data-from-the-keyboard} If you need the keyboard to send data back to the host, simply call the `raw_hid_send()` function. It requires two arguments - a pointer to a 32-byte buffer containing the data you wish to send, and the length (which should always be `RAW_EPSIZE`). The received report can then be handled in whichever way your HID library provides. -## Simple Example :id=simple-example +## Simple Example {#simple-example} The following example reads the first byte of the received report from the host, and if it is an ASCII "A", responds with "B". `memset()` is used to fill the response buffer (which could still contain the previous response) with null bytes. @@ -129,13 +131,13 @@ if __name__ == '__main__': ]) ``` -## API :id=api +## API {#api} -### `void raw_hid_receive(uint8_t *data, uint8_t length)` :id=api-raw-hid-receive +### `void raw_hid_receive(uint8_t *data, uint8_t length)` {#api-raw-hid-receive} Callback, invoked when a raw HID report has been received from the host. -#### Arguments :id=api-raw-hid-receive-arguments +#### Arguments {#api-raw-hid-receive-arguments} - `uint8_t *data` A pointer to the received data. Always 32 bytes in length. @@ -144,11 +146,11 @@ Callback, invoked when a raw HID report has been received from the host. --- -### `void raw_hid_send(uint8_t *data, uint8_t length)` :id=api-raw-hid-send +### `void raw_hid_send(uint8_t *data, uint8_t length)` {#api-raw-hid-send} Send an HID report. -#### Arguments :id=api-raw-hid-send-arguments +#### Arguments {#api-raw-hid-send-arguments} - `uint8_t *data` A pointer to the data to send. Must always be 32 bytes in length. diff --git a/docs/feature_repeat_key.md b/docs/feature_repeat_key.md index 6fa8a724ef7..c353ec5b59b 100644 --- a/docs/feature_repeat_key.md +++ b/docs/feature_repeat_key.md @@ -172,7 +172,7 @@ uint16_t get_alt_repeat_key_keycode_user(uint16_t keycode, uint8_t mods) { #### Typing shortcuts A useful possibility is having Alternate Repeat press [a -macro](feature_macros.md). This way macros can be used without having to +macro](feature_macros). This way macros can be used without having to dedicate keys to them. The following defines a couple shortcuts. * Typing K, Alt Repeat produces "`keyboard`," with the @@ -280,8 +280,10 @@ bool remember_last_key_user(uint16_t keycode, keyrecord_t* record, } ``` -?> See [Layer Functions](feature_layers.md#functions) and [Checking Modifier -State](feature_advanced_keycodes.md#checking-modifier-state) for further +::: tip +See [Layer Functions](feature_layers#functions) and [Checking Modifier +::: +State](feature_advanced_keycodes#checking-modifier-state) for further details. @@ -386,7 +388,7 @@ By leveraging `get_last_keycode()` in macros, it is possible to define additional, distinct "Alternate Repeat"-like keys. The following defines two keys `ALTREP2` and `ALTREP3` and implements ten shortcuts with them for common English 5-gram letter patterns, taking inspiration from -[Stenotype](feature_stenography.md): +[Stenotype](feature_stenography): | Typing | Produces | Typing | Produces | diff --git a/docs/feature_rgb_matrix.md b/docs/feature_rgb_matrix.md index d05d768ceb8..b9c01dcbf5f 100644 --- a/docs/feature_rgb_matrix.md +++ b/docs/feature_rgb_matrix.md @@ -1,12 +1,12 @@ -# RGB Matrix Lighting :id=rgb-matrix-lighting +# RGB Matrix Lighting {#rgb-matrix-lighting} This feature allows you to use RGB LED matrices driven by external drivers. It hooks into the RGBLIGHT system so you can use the same keycodes as RGBLIGHT to control it. -If you want to use single color LED's you should use the [LED Matrix Subsystem](feature_led_matrix.md) instead. +If you want to use single color LED's you should use the [LED Matrix Subsystem](feature_led_matrix) instead. -## Driver configuration :id=driver-configuration +## Driver configuration {#driver-configuration} --- -### IS31FL3731 :id=is31fl3731 +### IS31FL3731 {#is31fl3731} There is basic support for addressable RGB matrix lighting with the I2C IS31FL3731 RGB controller. To enable it, add this to your `rules.mk`: @@ -48,7 +48,9 @@ Here is an example using 2 drivers. #define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) ``` -!> Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: warning +Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: For split keyboards using `RGB_MATRIX_SPLIT` with an LED driver, you can either have the same driver address or different driver addresses. If using different addresses, use `IS31FL3731_I2C_ADDRESS_1` for one and `IS31FL3731_I2C_ADDRESS_2` for the other one. Then, in `g_is31fl3731_leds`, fill out the correct driver index (0 or 1). If using one address, use `IS31FL3731_I2C_ADDRESS_1` for both, and use index 0 for `g_is31fl3731_leds`. @@ -70,7 +72,7 @@ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = { Where `Cx_y` is the location of the LED in the matrix defined by [the datasheet](https://www.issi.com/WW/pdf/31FL3731.pdf) and the header file `drivers/led/issi/is31fl3731.h`. The `driver` is the index of the driver you defined in your `config.h` (`0`, `1`, `2`, or `3`). --- -### IS31FL3733 :id=is31fl3733 +### IS31FL3733 {#is31fl3733} There is basic support for addressable RGB matrix lighting with the I2C IS31FL3733 RGB controller. To enable it, add this to your `rules.mk`: @@ -132,7 +134,9 @@ Here is an example using 2 drivers. #define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) ``` -!> Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: warning +Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: Currently only 4 drivers are supported, but it would be trivial to support all 8 combinations. @@ -154,7 +158,7 @@ const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = { Where `SWx_CSy` is the location of the LED in the matrix defined by [the datasheet](https://www.issi.com/WW/pdf/31FL3733.pdf) and the header file `drivers/led/issi/is31fl3733.h`. The `driver` is the index of the driver you defined in your `config.h` (`0`, `1`, `2`, or `3` for now). --- -### IS31FL3736 :id=is31fl3736 +### IS31FL3736 {#is31fl3736} There is basic support for addressable RGB matrix lighting with the I2C IS31FL3736 RGB controller. To enable it, add this to your `rules.mk`: @@ -213,7 +217,9 @@ Here is an example using 2 drivers. #define DRIVER_2_LED_TOTAL 32 #define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) ``` -!> Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: warning +Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: Define these arrays listing all the LEDs in your `.c`: @@ -229,7 +235,7 @@ const is31fl3736_led_t PROGMEM g_is31fl3736_leds[IS31FL3736_LED_COUNT] = { .... } ``` -### IS31FL3737 :id=is31fl3737 +### IS31FL3737 {#is31fl3737} There is basic support for addressable RGB matrix lighting with the I2C IS31FL3737 RGB controller. To enable it, add this to your `rules.mk`: @@ -287,7 +293,9 @@ Here is an example using 2 drivers. #define DRIVER_2_LED_TOTAL 36 #define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) ``` -!> Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: warning +Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: Define these arrays listing all the LEDs in your `.c`: @@ -307,7 +315,7 @@ const is31fl3737_led_t PROGMEM g_is31fl3737_leds[IS31FL3737_LED_COUNT] = { Where `SWx_CSy` is the location of the LED in the matrix defined by [the datasheet](https://www.issi.com/WW/pdf/31FL3737.pdf) and the header file `drivers/led/issi/is31fl3737.h`. The `driver` is the index of the driver you defined in your `config.h` (Only `0`, `1`, `2`, or `3` for now). --- -### IS31FLCOMMON :id=is31flcommon +### IS31FLCOMMON {#is31flcommon} There is basic support for addressable RGB matrix lighting with a selection of I2C ISSI Lumissil RGB controllers through a shared common driver. To enable it, add this to your `rules.mk`: @@ -372,7 +380,9 @@ Here is an example using 2 drivers. #define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) ``` -!> Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: warning +Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: Currently only 4 drivers are supported, but it would be trivial to support for more. Note that using a combination of different drivers is not supported. All drivers must be of the same model. @@ -415,7 +425,7 @@ Where LED Index is the position of the LED in the `g_is31_leds` array. The `scal --- -### WS2812 :id=ws2812 +### WS2812 {#ws2812} There is basic support for addressable RGB matrix lighting with a WS2811/WS2812{a,b,c} addressable LED strand. To enable it, add this to your `rules.mk`: @@ -433,11 +443,13 @@ Configure the hardware via your `config.h`: #define RGB_MATRIX_LED_COUNT 70 ``` -?> There are additional configuration options for ARM controllers that offer increased performance over the default bitbang driver. Please see [WS2812 Driver](ws2812_driver.md) for more information. +::: tip +There are additional configuration options for ARM controllers that offer increased performance over the default bitbang driver. Please see [WS2812 Driver](ws2812_driver) for more information. +::: --- -### APA102 :id=apa102 +### APA102 {#apa102} There is basic support for APA102 based addressable LED strands. To enable it, add this to your `rules.mk`: @@ -458,7 +470,7 @@ Configure the hardware via your `config.h`: ``` --- -### AW20216S :id=aw20216s +### AW20216S {#aw20216s} There is basic support for addressable RGB matrix lighting with the SPI AW20216S RGB controller. To enable it, add this to your `rules.mk`: ```make @@ -496,7 +508,9 @@ Here is an example using 2 drivers. #define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) ``` -!> Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: warning +Note the parentheses, this is so when `RGB_MATRIX_LED_COUNT` is used in code and expanded, the values are added together before any additional math is applied to them. As an example, `rand() % (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)` will give very different results than `rand() % DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL`. +::: Define these arrays listing all the LEDs in your `.c`: @@ -527,7 +541,7 @@ const aw20216s_led_t PROGMEM g_aw20216s_leds[AW20216S_LED_COUNT] = { --- -## Common Configuration :id=common-configuration +## Common Configuration {#common-configuration} From this point forward the configuration is the same for all the drivers. The `led_config_t` struct provides a key electrical matrix to led index lookup table, what the physical position of each LED is on the board, and what type of key or usage the LED if the LED represents. Here is a brief example: @@ -560,7 +574,7 @@ As mentioned earlier, the center of the keyboard by default is expected to be `{ `// LED Index to Flag` is a bitmask, whether or not a certain LEDs is of a certain type. It is recommended that LEDs are set to only 1 type. -## Flags :id=flags +## Flags {#flags} |Define |Value |Description | |----------------------------|------|-------------------------------------------------| @@ -573,7 +587,7 @@ As mentioned earlier, the center of the keyboard by default is expected to be `{ |`LED_FLAG_KEYLIGHT` |`0x04`|If the LED is for key backlight | |`LED_FLAG_INDICATOR` |`0x08`|If the LED is for keyboard state indication | -## Keycodes :id=keycodes +## Keycodes {#keycodes} All RGB keycodes are currently shared with the RGBLIGHT system: @@ -599,12 +613,16 @@ All RGB keycodes are currently shared with the RGBLIGHT system: `RGB_MODE_PLAIN`, `RGB_MODE_BREATHE`, `RGB_MODE_RAINBOW`, and `RGB_MODE_SWIRL` are the only ones that are mapped properly. The rest don't have a direct equivalent, and are not mapped. -?> `RGB_*` keycodes cannot be used with functions like `tap_code16(RGB_HUD)` as they're not USB HID keycodes. If you wish to replicate similar behaviour in custom code within your firmware (e.g. inside `encoder_update_user()` or `process_record_user()`), the equivalent [RGB functions](#functions) should be used instead. +::: tip +`RGB_*` keycodes cannot be used with functions like `tap_code16(RGB_HUD)` as they're not USB HID keycodes. If you wish to replicate similar behaviour in custom code within your firmware (e.g. inside `encoder_update_user()` or `process_record_user()`), the equivalent [RGB functions](#functions) should be used instead. +::: -!> By default, if you have both the [RGB Light](feature_rgblight.md) and the RGB Matrix feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature. +::: warning +By default, if you have both the [RGB Light](feature_rgblight) and the RGB Matrix feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature. +::: -## RGB Matrix Effects :id=rgb-matrix-effects +## RGB Matrix Effects {#rgb-matrix-effects} All effects have been configured to support current configuration values (Hue, Saturation, Value, & Speed) unless otherwise noted below. These are the effects that are currently available: @@ -709,7 +727,9 @@ You can enable a single effect by defining `ENABLE_[EFFECT_NAME]` in your `confi |`#define ENABLE_RGB_MATRIX_TYPING_HEATMAP` |Enables `RGB_MATRIX_TYPING_HEATMAP` | |`#define ENABLE_RGB_MATRIX_DIGITAL_RAIN` |Enables `RGB_MATRIX_DIGITAL_RAIN` | -?> These modes introduce additional logic that can increase firmware size. +::: tip +These modes introduce additional logic that can increase firmware size. +::: |Reactive Defines |Description | |------------------------------------------------------|----------------------------------------------| @@ -726,10 +746,12 @@ You can enable a single effect by defining `ENABLE_[EFFECT_NAME]` in your `confi |`#define ENABLE_RGB_MATRIX_SOLID_SPLASH` |Enables `RGB_MATRIX_SOLID_SPLASH` | |`#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH` |Enables `RGB_MATRIX_SOLID_MULTISPLASH` | -?> These modes introduce additional logic that can increase firmware size. +::: tip +These modes introduce additional logic that can increase firmware size. +::: -### RGB Matrix Effect Typing Heatmap :id=rgb-matrix-effect-typing-heatmap +### RGB Matrix Effect Typing Heatmap {#rgb-matrix-effect-typing-heatmap} This effect will color the RGB matrix according to a heatmap of recently pressed keys. Whenever a key is pressed its "temperature" increases as well as that of its neighboring keys. The temperature of each key is then decreased automatically every 25 milliseconds by default. @@ -767,7 +789,7 @@ the number of keystrokes needed to fully heat up the key. #define RGB_MATRIX_TYPING_HEATMAP_INCREASE_STEP 32 ``` -### RGB Matrix Effect Solid Reactive :id=rgb-matrix-effect-solid-reactive +### RGB Matrix Effect Solid Reactive {#rgb-matrix-effect-solid-reactive} Solid reactive effects will pulse RGB light on key presses with user configurable hues. To enable gradient mode that will automatically change reactive color, add the following define: @@ -777,11 +799,13 @@ Solid reactive effects will pulse RGB light on key presses with user configurabl Gradient mode will loop through the color wheel hues over time and its duration can be controlled with the effect speed keycodes (`RGB_SPI`/`RGB_SPD`). -## Custom RGB Matrix Effects :id=custom-rgb-matrix-effects +## Custom RGB Matrix Effects {#custom-rgb-matrix-effects} By setting `RGB_MATRIX_CUSTOM_USER = yes` in `rules.mk`, new effects can be defined directly from your keymap or userspace, without having to edit any QMK core files. To declare new effects, create a `rgb_matrix_user.inc` file in the user keymap directory or userspace folder. -?> Hardware maintainers who want to limit custom effects to a specific keyboard can create a `rgb_matrix_kb.inc` file in the root of the keyboard directory, and add `RGB_MATRIX_CUSTOM_KB = yes` to the keyboard level `rules.mk`. +::: tip +Hardware maintainers who want to limit custom effects to a specific keyboard can create a `rgb_matrix_kb.inc` file in the root of the keyboard directory, and add `RGB_MATRIX_CUSTOM_KB = yes` to the keyboard level `rules.mk`. +::: To use custom effects in your code, simply prepend `RGB_MATRIX_CUSTOM_` to the effect name specified in `RGB_MATRIX_EFFECT()`. For example, an effect declared as `RGB_MATRIX_EFFECT(my_cool_effect)` would be referenced with: @@ -835,7 +859,7 @@ static bool my_cool_effect2(effect_params_t* params) { For inspiration and examples, check out the built-in effects under `quantum/rgb_matrix/animations/`. -## Colors :id=colors +## Colors {#colors} These are shorthands to popular colors. The `RGB` ones can be passed to the `setrgb` functions, while the `HSV` ones to the `sethsv` functions. @@ -864,7 +888,7 @@ These are shorthands to popular colors. The `RGB` ones can be passed to the `set These are defined in [`color.h`](https://github.com/qmk/qmk_firmware/blob/master/quantum/color.h). Feel free to add to this list! -## Additional `config.h` Options :id=additional-configh-options +## Additional `config.h` Options {#additional-configh-options} ```c #define RGB_MATRIX_KEYRELEASES // reactive effects respond to keyreleases (instead of keypresses) @@ -886,19 +910,19 @@ These are defined in [`color.h`](https://github.com/qmk/qmk_firmware/blob/master #define RGB_TRIGGER_ON_KEYDOWN // Triggers RGB keypress events on key down. This makes RGB control feel more responsive. This may cause RGB to not function properly on some boards ``` -## EEPROM storage :id=eeprom-storage +## EEPROM storage {#eeprom-storage} The EEPROM for it is currently shared with the LED Matrix system (it's generally assumed only one feature would be used at a time). -## Functions :id=functions +## Functions {#functions} -### Direct Operation :id=direct-operation +### Direct Operation {#direct-operation} |Function |Description | |--------------------------------------------|-------------| |`rgb_matrix_set_color_all(r, g, b)` |Set all of the LEDs to the given RGB value, where `r`/`g`/`b` are between 0 and 255 (not written to EEPROM) | |`rgb_matrix_set_color(index, r, g, b)` |Set a single LED to the given RGB value, where `r`/`g`/`b` are between 0 and 255, and `index` is between 0 and `RGB_MATRIX_LED_COUNT` (not written to EEPROM) | -### Disable/Enable Effects :id=disable-enable-effects +### Disable/Enable Effects {#disable-enable-effects} |Function |Description | |--------------------------------------------|-------------| |`rgb_matrix_toggle()` |Toggle effect range LEDs between on and off | @@ -908,7 +932,7 @@ The EEPROM for it is currently shared with the LED Matrix system (it's generally |`rgb_matrix_disable()` |Turn effect range LEDs off, based on their previous state | |`rgb_matrix_disable_noeeprom()` |Turn effect range LEDs off, based on their previous state (not written to EEPROM) | -### Change Effect Mode :id=change-effect-mode +### Change Effect Mode {#change-effect-mode} |Function |Description | |--------------------------------------------|-------------| |`rgb_matrix_mode(mode)` |Set the mode, if RGB animations are enabled | @@ -925,7 +949,7 @@ The EEPROM for it is currently shared with the LED Matrix system (it's generally |`rgb_matrix_set_speed_noeeprom(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 (not written to EEPROM) | |`rgb_matrix_reload_from_eeprom()` |Reload the effect configuration (enabled, mode and color) from EEPROM | -### Change Color :id=change-color +### Change Color {#change-color} |Function |Description | |--------------------------------------------|-------------| |`rgb_matrix_increase_hue()` |Increase the hue for effect range LEDs. This wraps around at maximum hue | @@ -943,7 +967,7 @@ The EEPROM for it is currently shared with the LED Matrix system (it's generally |`rgb_matrix_sethsv(h, s, v)` |Set LEDs to the given HSV value where `h`/`s`/`v` are between 0 and 255 | |`rgb_matrix_sethsv_noeeprom(h, s, v)` |Set LEDs to the given HSV value where `h`/`s`/`v` are between 0 and 255 (not written to EEPROM) | -### Query Current Status :id=query-current-status +### Query Current Status {#query-current-status} |Function |Description | |---------------------------------|---------------------------| |`rgb_matrix_is_enabled()` |Gets current on/off status | @@ -955,9 +979,9 @@ The EEPROM for it is currently shared with the LED Matrix system (it's generally |`rgb_matrix_get_speed()` |Gets current speed | |`rgb_matrix_get_suspend_state()` |Gets current suspend state | -## Callbacks :id=callbacks +## Callbacks {#callbacks} -### Indicators :id=indicators +### Indicators {#indicators} If you want to set custom indicators, such as an LED for Caps Lock, or layer indication, then you can use the `rgb_matrix_indicators_kb` function on the keyboard level source file, or `rgb_matrix_indicators_user` function in the user `keymap.c`. ```c @@ -979,7 +1003,7 @@ bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { } ``` -### Indicator Examples :id=indicator-examples +### Indicator Examples {#indicator-examples} Caps Lock indicator on alphanumeric flagged keys: ```c @@ -1035,9 +1059,11 @@ bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { } ``` -?> Split keyboards will require layer state data syncing with `#define SPLIT_LAYER_STATE_ENABLE`. See [Data Sync Options](feature_split_keyboard?id=data-sync-options) for more details. +::: tip +Split keyboards will require layer state data syncing with `#define SPLIT_LAYER_STATE_ENABLE`. See [Data Sync Options](feature_split_keyboard#data-sync-options) for more details. +::: -#### Examples :id=indicator-examples +#### Examples {#indicator-examples-2} This example sets the modifiers to be a specific color based on the layer state. You can use a switch case here, instead, if you would like. This uses HSV and then converts to RGB, because this allows the brightness to be limited (important when using the WS2812 driver). @@ -1078,7 +1104,9 @@ bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { } ``` -?> RGB indicators on split keyboards will require state information synced to the slave half (e.g. `#define SPLIT_LAYER_STATE_ENABLE`). See [data sync options](feature_split_keyboard.md#data-sync-options) for more details. +::: tip +RGB indicators on split keyboards will require state information synced to the slave half (e.g. `#define SPLIT_LAYER_STATE_ENABLE`). See [data sync options](feature_split_keyboard#data-sync-options) for more details. +::: #### Indicators without RGB Matrix Effect diff --git a/docs/feature_rgblight.md b/docs/feature_rgblight.md index ae37ceca92f..bd973ef0095 100644 --- a/docs/feature_rgblight.md +++ b/docs/feature_rgblight.md @@ -22,7 +22,9 @@ On keyboards with onboard RGB LEDs, it is usually enabled by default. If it is n RGBLIGHT_ENABLE = yes ``` -?> There are additional configuration options for ARM controllers that offer increased performance over the default WS2812 bitbang driver. Please see [WS2812 Driver](ws2812_driver.md) for more information. +::: tip +There are additional configuration options for ARM controllers that offer increased performance over the default WS2812 bitbang driver. Please see [WS2812 Driver](ws2812_driver) for more information. +::: For APA102 LEDs, add the following to your `rules.mk`: @@ -47,7 +49,7 @@ Then you should be able to use the keycodes below to change the RGB lighting to QMK uses [Hue, Saturation, and Value](https://en.wikipedia.org/wiki/HSL_and_HSV) to select colors rather than RGB. The color wheel below demonstrates how this works. -HSV Color Wheel +HSV Color Wheel Changing the **Hue** cycles around the circle.
Changing the **Saturation** moves between the inner and outer sections of the wheel, affecting the intensity of the color.
@@ -79,10 +81,14 @@ Changing the **Value** sets the overall brightness.
|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red, Green, Blue test animation mode | |`RGB_MODE_TWINKLE` |`RGB_M_TW`|Twinkle animation mode | -?> `RGB_*` keycodes cannot be used with functions like `tap_code16(RGB_HUI)` as they're not USB HID keycodes. If you wish to replicate similar behaviour in custom code within your firmware (e.g. inside `encoder_update_user()` or `process_record_user()`), the equivalent [RGB functions](#functions) should be used instead. +::: tip +`RGB_*` keycodes cannot be used with functions like `tap_code16(RGB_HUI)` as they're not USB HID keycodes. If you wish to replicate similar behaviour in custom code within your firmware (e.g. inside `encoder_update_user()` or `process_record_user()`), the equivalent [RGB functions](#functions) should be used instead. +::: -!> By default, if you have both the RGB Light and the [RGB Matrix](feature_rgb_matrix.md) feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature. +::: warning +By default, if you have both the RGB Light and the [RGB Matrix](feature_rgb_matrix) feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature. +::: ## Configuration @@ -146,7 +152,9 @@ Use these defines to add or remove animations from the firmware. When you are ru |`RGBLIGHT_EFFECT_STATIC_GRADIENT` |*Not defined*|Enable static gradient mode. | |`RGBLIGHT_EFFECT_TWINKLE` |*Not defined*|Enable twinkle animation mode. | -!> `RGBLIGHT_ANIMATIONS` is being deprecated and animation modes should be explicitly defined. +::: warning +`RGBLIGHT_ANIMATIONS` is being deprecated and animation modes should be explicitly defined. +::: ### Effect and Animation Settings @@ -209,12 +217,14 @@ const uint8_t RGBLED_GRADIENT_RANGES[] PROGMEM = {255, 170, 127, 85, 64}; ## Lighting Layers -?> **Note:** Lighting Layers is an RGB Light feature, it will not work for RGB Matrix. See [RGB Matrix Indicators](feature_rgb_matrix.md#indicators) for details on how to do so. +::: tip +**Note:** Lighting Layers is an RGB Light feature, it will not work for RGB Matrix. See [RGB Matrix Indicators](feature_rgb_matrix#indicators) for details on how to do so. +::: By including `#define RGBLIGHT_LAYERS` in your `config.h` file you can enable lighting layers. These make it easy to use your underglow LEDs as status indicators to show which keyboard layer is currently active, or the state of caps lock, all without disrupting any animations. [Here's a video](https://youtu.be/uLGE1epbmdY) showing an example of what you can do. -### Defining Lighting Layers :id=defining-lighting-layers +### Defining Lighting Layers {#defining-lighting-layers} By default, 8 layers are possible. This can be expanded to as many as 32 by overriding the definition of `RGBLIGHT_MAX_LAYERS` in `config.h` (e.g. `#define RGBLIGHT_MAX_LAYERS 32`). Please note, if you use a split keyboard, you will need to flash both sides of the split after changing this. Also, increasing the maximum will increase the firmware size, and will slow sync on split keyboards. @@ -259,7 +269,7 @@ void keyboard_post_init_user(void) { ``` Note: For split keyboards with two controllers, both sides need to be flashed when updating the contents of rgblight_layers. -### Enabling and disabling lighting layers :id=enabling-lighting-layers +### Enabling and disabling lighting layers {#enabling-lighting-layers} Everything above just configured the definition of each lighting layer. We can now enable and disable the lighting layers whenever the state of the keyboard changes: @@ -282,7 +292,7 @@ layer_state_t layer_state_set_user(layer_state_t state) { } ``` -### Lighting layer blink :id=lighting-layer-blink +### Lighting layer blink {#lighting-layer-blink} By including `#define RGBLIGHT_LAYER_BLINK` in your `config.h` file you can turn a lighting layer on for a specified duration. Once the specified number of milliseconds has elapsed @@ -342,7 +352,9 @@ rgblight_unblink_layer(3); rgblight_blink_layer(2, 500); ``` -!> Lighting layers on split keyboards will require layer state synced to the slave half (e.g. `#define SPLIT_LAYER_STATE_ENABLE`). See [data sync options](feature_split_keyboard.md#data-sync-options) for more details. +::: warning +Lighting layers on split keyboards will require layer state synced to the slave half (e.g. `#define SPLIT_LAYER_STATE_ENABLE`). See [data sync options](feature_split_keyboard#data-sync-options) for more details. +::: ### Overriding RGB Lighting on/off status diff --git a/docs/feature_secure.md b/docs/feature_secure.md index eaa2b601aef..5ca9eed65fc 100644 --- a/docs/feature_secure.md +++ b/docs/feature_secure.md @@ -2,7 +2,9 @@ The secure feature aims to prevent unwanted interaction without user intervention. -?> Secure does **not** currently implement encryption/decryption/etc and should not be a replacement where a strong hardware/software based solution is required. +::: tip +Secure does **not** currently implement encryption/decryption/etc and should not be a replacement where a strong hardware/software based solution is required. +::: ### Unlock sequence @@ -14,7 +16,7 @@ To unlock, the user must perform a set of actions. This can optionally be config ### Automatic Locking Once unlocked, the keyboard will revert back to a locked state after the configured timeout. -The timeout can be refreshed by using the `secure_activity_event` function, for example from one of the various [hooks](custom_quantum_functions.md). +The timeout can be refreshed by using the `secure_activity_event` function, for example from one of the various [hooks](custom_quantum_functions). ## Usage diff --git a/docs/feature_send_string.md b/docs/feature_send_string.md index 7d3f3ba32a1..97e4ccc8096 100644 --- a/docs/feature_send_string.md +++ b/docs/feature_send_string.md @@ -1,12 +1,14 @@ -# Send String :id=send-string +# Send String {#send-string} The Send String API is part of QMK's macro system. It allows for sequences of keystrokes to be sent automatically. The full ASCII character set is supported, along with all of the keycodes in the Basic Keycode range (as these are the only ones that will actually be sent to the host). -?> Unicode characters are **not** supported with this API -- see the [Unicode](feature_unicode.md) feature instead. +::: tip +Unicode characters are **not** supported with this API -- see the [Unicode](feature_unicode) feature instead. +::: -## Usage :id=usage +## Usage {#usage} Send String is enabled by default, so there is usually no need for any special setup. However, if it is disabled, add the following to your `rules.mk`: @@ -14,18 +16,18 @@ Send String is enabled by default, so there is usually no need for any special s SEND_STRING_ENABLE = yes ``` -## Basic Configuration :id=basic-configuration +## Basic Configuration {#basic-configuration} Add the following to your `config.h`: |Define |Default |Description | |-----------------|----------------|------------------------------------------------------------------------------------------------------------| -|`SENDSTRING_BELL`|*Not defined* |If the [Audio](feature_audio.md) feature is enabled, the `\a` character (ASCII `BEL`) will beep the speaker.| +|`SENDSTRING_BELL`|*Not defined* |If the [Audio](feature_audio) feature is enabled, the `\a` character (ASCII `BEL`) will beep the speaker.| |`BELL_SOUND` |`TERMINAL_SOUND`|The song to play when the `\a` character is encountered. By default, this is an eighth note of C5. | -## Keycodes :id=keycodes +## Keycodes {#keycodes} -The Send String functions accept C string literals, but specific keycodes can be injected with the below macros. All of the keycodes in the [Basic Keycode range](keycodes_basic.md) are supported (as these are the only ones that will actually be sent to the host), but with an `X_` prefix instead of `KC_`. +The Send String functions accept C string literals, but specific keycodes can be injected with the below macros. All of the keycodes in the [Basic Keycode range](keycodes_basic) are supported (as these are the only ones that will actually be sent to the host), but with an `X_` prefix instead of `KC_`. |Macro |Description | |--------------|-------------------------------------------------------------------| @@ -44,13 +46,13 @@ The following characters are also mapped to their respective keycodes for conven |`\t` |`\x1B`|`TAB`|`KC_TAB` | | |`\x7F`|`DEL`|`KC_DELETE` | -### Language Support :id=language-support +### Language Support {#language-support} -By default, Send String assumes your OS keyboard layout is set to US ANSI. If you are using a different keyboard layout, you can [override the lookup tables used to convert ASCII characters to keystrokes](reference_keymap_extras.md#sendstring-support). +By default, Send String assumes your OS keyboard layout is set to US ANSI. If you are using a different keyboard layout, you can [override the lookup tables used to convert ASCII characters to keystrokes](reference_keymap_extras#sendstring-support). -## Examples :id=examples +## Examples {#examples} -### Hello World :id=example-hello-world +### Hello World {#example-hello-world} A simple custom keycode which types out "Hello, world!" and the Enter key when pressed. @@ -70,7 +72,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } ``` -### Keycode Injection :id=example-keycode-injection +### Keycode Injection {#example-keycode-injection} This example types out opening and closing curly braces, then taps the left arrow key to move the cursor between the two. @@ -84,26 +86,26 @@ This example types Ctrl+A, then Ctrl+C, without releasing Ctrl. SEND_STRING(SS_LCTL("ac")); ``` -## API :id=api +## API {#api} -### `void send_string(const char *string)` :id=api-send-string +### `void send_string(const char *string)` {#api-send-string} Type out a string of ASCII characters. This function simply calls `send_string_with_delay(string, 0)`. -#### Arguments :id=api-send-string-arguments +#### Arguments {#api-send-string-arguments} - `const char *string` The string to type out. --- -### `void send_string_with_delay(const char *string, uint8_t interval)` :id=api-send-string-with-delay +### `void send_string_with_delay(const char *string, uint8_t interval)` {#api-send-string-with-delay} Type out a string of ASCII characters, with a delay between each character. -#### Arguments :id=api-send-string-with-delay-arguments +#### Arguments {#api-send-string-with-delay-arguments} - `const char *string` The string to type out. @@ -112,26 +114,26 @@ Type out a string of ASCII characters, with a delay between each character. --- -### `void send_string_P(const char *string)` :id=api-send-string-p +### `void send_string_P(const char *string)` {#api-send-string-p} Type out a PROGMEM string of ASCII characters. On ARM devices, this function is simply an alias for `send_string_with_delay(string, 0)`. -#### Arguments :id=api-send-string-p-arguments +#### Arguments {#api-send-string-p-arguments} - `const char *string` The string to type out. --- -### `void send_string_with_delay_P(const char *string, uint8_t interval)` :id=api-send-string-with-delay-p +### `void send_string_with_delay_P(const char *string, uint8_t interval)` {#api-send-string-with-delay-p} Type out a PROGMEM string of ASCII characters, with a delay between each character. On ARM devices, this function is simply an alias for `send_string_with_delay(string, interval)`. -#### Arguments :id=api-send-string-with-delay-p-arguments +#### Arguments {#api-send-string-with-delay-p-arguments} - `const char *string` The string to type out. @@ -140,76 +142,76 @@ On ARM devices, this function is simply an alias for `send_string_with_delay(str --- -### `void send_char(char ascii_code)` :id=api-send-char +### `void send_char(char ascii_code)` {#api-send-char} Type out an ASCII character. -#### Arguments :id=api-send-char-arguments +#### Arguments {#api-send-char-arguments} - `char ascii_code` The character to type. --- -### `void send_dword(uint32_t number)` :id=api-send-dword +### `void send_dword(uint32_t number)` {#api-send-dword} Type out an eight digit (unsigned 32-bit) hexadecimal value. The format is `[0-9a-f]{8}`, eg. `00000000` through `ffffffff`. -#### Arguments :id=api-send-dword-arguments +#### Arguments {#api-send-dword-arguments} - `uint32_t number` The value to type, from 0 to 4,294,967,295. --- -### `void send_word(uint16_t number)` :id=api-send-word +### `void send_word(uint16_t number)` {#api-send-word} Type out a four digit (unsigned 16-bit) hexadecimal value. The format is `[0-9a-f]{4}`, eg. `0000` through `ffff`. -#### Arguments :id=api-send-word-arguments +#### Arguments {#api-send-word-arguments} - `uint16_t number` The value to type, from 0 to 65,535. --- -### `void send_byte(uint8_t number)` :id=api-send-bytes +### `void send_byte(uint8_t number)` {#api-send-bytes} Type out a two digit (8-bit) hexadecimal value. The format is `[0-9a-f]{2}`, eg. `00` through `ff`. -#### Arguments :id=api-send-byte-arguments +#### Arguments {#api-send-byte-arguments} - `uint8_t number` The value to type, from 0 to 255. --- -### `void send_nibble(uint8_t number)` :id=api-send-nibble +### `void send_nibble(uint8_t number)` {#api-send-nibble} Type out a single hexadecimal digit. The format is `[0-9a-f]{1}`, eg. `0` through `f`. -#### Arguments :id=api-send-nibble-arguments +#### Arguments {#api-send-nibble-arguments} - `uint8_t number` The value to type, from 0 to 15. --- -### `void tap_random_base64(void)` :id=api-tap-random-base64 +### `void tap_random_base64(void)` {#api-tap-random-base64} Type a pseudorandom character from the set `A-Z`, `a-z`, `0-9`, `+` and `/`. --- -### `SEND_STRING(string)` :id=api-send-string-macro +### `SEND_STRING(string)` {#api-send-string-macro} Shortcut macro for `send_string_with_delay_P(PSTR(string), 0)`. @@ -217,7 +219,7 @@ On ARM devices, this define evaluates to `send_string_with_delay(string, 0)`. --- -### `SEND_STRING_DELAY(string, interval)` :id=api-send-string-delay-macro +### `SEND_STRING_DELAY(string, interval)` {#api-send-string-delay-macro} Shortcut macro for `send_string_with_delay_P(PSTR(string), interval)`. diff --git a/docs/feature_sequencer.md b/docs/feature_sequencer.md index 3af55197c54..c58b6225cac 100644 --- a/docs/feature_sequencer.md +++ b/docs/feature_sequencer.md @@ -2,7 +2,9 @@ Since QMK has experimental support for MIDI, you can now turn your keyboard into a [step sequencer](https://en.wikipedia.org/wiki/Music_sequencer#Step_sequencers)! -!> **IMPORTANT:** This feature is highly experimental, it has only been tested on a Planck EZ so far. Also, the scope will be limited to support the drum machine use-case to start with. +::: warning +**IMPORTANT:** This feature is highly experimental, it has only been tested on a Planck EZ so far. Also, the scope will be limited to support the drum machine use-case to start with. +::: ## Enable the step sequencer diff --git a/docs/feature_space_cadet.md b/docs/feature_space_cadet.md index 223a5b3ccf6..cbb79e10adf 100644 --- a/docs/feature_space_cadet.md +++ b/docs/feature_space_cadet.md @@ -24,7 +24,7 @@ Firstly, in your keymap, do one of the following: ## Caveats -Space Cadet's functionality can conflict with the default Command functionality when both Shift keys are held at the same time. See the [Command feature](feature_command.md) for info on how to change it, or make sure that Command is disabled in your `rules.mk` with: +Space Cadet's functionality can conflict with the default Command functionality when both Shift keys are held at the same time. See the [Command feature](feature_command) for info on how to change it, or make sure that Command is disabled in your `rules.mk` with: ```make COMMAND_ENABLE = no diff --git a/docs/feature_split_keyboard.md b/docs/feature_split_keyboard.md index 99c252d03ec..c39d0a7e083 100644 --- a/docs/feature_split_keyboard.md +++ b/docs/feature_split_keyboard.md @@ -8,20 +8,24 @@ QMK Firmware has a generic implementation that is usable by any board, as well a For this, we will mostly be talking about the generic implementation used by the Let's Split and other keyboards. -!> ARM split supports most QMK subsystems when using the 'serial' and 'serial_usart' drivers. I2C slave is currently unsupported. +::: warning +ARM split supports most QMK subsystems when using the 'serial' and 'serial_usart' drivers. I2C slave is currently unsupported. +::: -!> Both sides must use the same MCU family, for eg two Pro Micro-compatible controllers or two Blackpills. Currently, mixing AVR and ARM is not possible as ARM vs AVR uses different method for serial communication, and are not compatible. Moreover Blackpill's uses 3.3v logic, and atmega32u4 uses 5v logic. +::: warning +Both sides must use the same MCU family, for eg two Pro Micro-compatible controllers or two Blackpills. Currently, mixing AVR and ARM is not possible as ARM vs AVR uses different method for serial communication, and are not compatible. Moreover Blackpill's uses 3.3v logic, and atmega32u4 uses 5v logic. +::: ## Compatibility Overview | Transport | AVR | ARM | |------------------------------|--------------------|--------------------| -| ['serial'](serial_driver.md) | :heavy_check_mark: | :white_check_mark: 1 | +| ['serial'](serial_driver) | :heavy_check_mark: | :white_check_mark: 1 | | I2C | :heavy_check_mark: | | Notes: -1. Both hardware and software limitations are detailed within the [driver documentation](serial_driver.md). +1. Both hardware and software limitations are detailed within the [driver documentation](serial_driver). ## Hardware Configuration @@ -45,13 +49,17 @@ Another option is to use phone cables (as in, old school RJ-11/RJ-14 cables). Ma However, USB cables, SATA cables, and even just 4 wires have been known to be used for communication between the controllers. -!> Using USB cables for communication between the controllers works just fine, but the connector could be mistaken for a normal USB connection and potentially short out the keyboard, depending on how it's wired. For this reason, they are not recommended for connecting split keyboards. +::: warning +Using USB cables for communication between the controllers works just fine, but the connector could be mistaken for a normal USB connection and potentially short out the keyboard, depending on how it's wired. For this reason, they are not recommended for connecting split keyboards. +::: ### Serial Wiring The 3 wires of the TRS/TRRS cable need to connect GND, VCC, and D0/D1/D2/D3 (aka PD0/PD1/PD2/PD3) between the two Pro Micros. -?> Note that the pin used here is actually set by `SOFT_SERIAL_PIN` below. +::: tip +Note that the pin used here is actually set by `SOFT_SERIAL_PIN` below. +::: sk-pd0-connection-mono sk-pd2-connection-mono @@ -160,9 +168,13 @@ Reset the right controller and run: qmk flash -kb crkbd/rev1 -km default -bl avrdude-split-right ``` -?> Some controllers (e.g. Blackpill with DFU compatible bootloader) will need to be flashed with handedness bootloader parameter every time because it is not retained between flashes. +::: tip +Some controllers (e.g. Blackpill with DFU compatible bootloader) will need to be flashed with handedness bootloader parameter every time because it is not retained between flashes. +::: -?> [QMK Toolbox]() can also be used to flash EEPROM handedness files. Place the controller in bootloader mode and select menu option Tools -> EEPROM -> Set Left/Right Hand +::: tip +[QMK Toolbox]() can also be used to flash EEPROM handedness files. Place the controller in bootloader mode and select menu option Tools -> EEPROM -> Set Left/Right Hand +::: This setting is not changed when re-initializing the EEPROM using the `EE_CLR` key, or using the `eeconfig_init()` function. However, if you reset the EEPROM outside of the firmware's built in options (such as flashing a file that overwrites the `EEPROM`, like how the [QMK Toolbox]()'s "Reset EEPROM" button works), you'll need to re-flash the controller with the `EEPROM` files. @@ -183,7 +195,9 @@ If the USB cable is always connected to the left side, add the following to your #define MASTER_LEFT ``` -?> If neither options are defined, the handedness defaults to `MASTER_LEFT`. +::: tip +If neither options are defined, the handedness defaults to `MASTER_LEFT`. +::: ### Communication Options @@ -292,7 +306,9 @@ This enables transmitting the current ST7565 on/off status to the slave side of This enables transmitting the pointing device status to the master side of the split keyboard. The purpose of this feature is to enable use pointing devices on the slave side. -!> There is additional required configuration for `SPLIT_POINTING_ENABLE` outlined in the [pointing device documentation](feature_pointing_device.md?id=split-keyboard-configuration). +::: warning +There is additional required configuration for `SPLIT_POINTING_ENABLE` outlined in the [pointing device documentation](feature_pointing_device#split-keyboard-configuration). +::: ```c #define SPLIT_HAPTIC_ENABLE @@ -306,7 +322,7 @@ This enables the triggering of haptic feedback on the slave side of the split ke This synchronizes the activity timestamps between sides of the split keyboard, allowing for activity timeouts to occur. -### Custom data sync between sides :id=custom-data-sync +### Custom data sync between sides {#custom-data-sync} QMK's split transport allows for arbitrary data transactions at both the keyboard and user levels. This is modelled on a remote procedure call, with the master invoking a function on the slave side, with the ability to send data from master to slave, process it slave side, and send data back from slave to master. @@ -362,7 +378,9 @@ void housekeeping_task_user(void) { } ``` -!> It is recommended that any data sync between halves happens during the master side's _housekeeping task_. This ensures timely retries should failures occur. +::: warning +It is recommended that any data sync between halves happens during the master side's _housekeeping task_. This ensures timely retries should failures occur. +::: If only one-way data transfer is needed, helper methods are provided: @@ -381,7 +399,7 @@ By default, the inbound and outbound data is limited to a maximum of 32 bytes ea #define RPC_S2M_BUFFER_SIZE 48 ``` -### Hardware Configuration Options +### Hardware Configuration Options There are some settings that you may need to configure, based on how the hardware is set up. @@ -417,7 +435,9 @@ This option enables synchronization of the RGB Light modes between the controlle This sets how many LEDs are directly connected to each controller. The first number is the left side, and the second number is the right side. -?> This setting implies that `RGBLIGHT_SPLIT` is enabled, and will forcibly enable it, if it's not. +::: tip +This setting implies that `RGBLIGHT_SPLIT` is enabled, and will forcibly enable it, if it's not. +::: ```c @@ -430,7 +450,9 @@ Without this option, the master is the half that can detect voltage on the physi Enabled by default on ChibiOS/ARM. -?> This setting will stop the ability to demo using battery packs. +::: tip +This setting will stop the ability to demo using battery packs. +::: ```c #define SPLIT_USB_TIMEOUT 2000 diff --git a/docs/feature_stenography.md b/docs/feature_stenography.md index 5ca3ea945fc..6827117a6b3 100644 --- a/docs/feature_stenography.md +++ b/docs/feature_stenography.md @@ -1,10 +1,10 @@ -# Stenography in QMK :id=stenography-in-qmk +# Stenography in QMK {#stenography-in-qmk} [Stenography](https://en.wikipedia.org/wiki/Stenotype) is a method of writing most often used by court reports, closed-captioning, and real-time transcription for the deaf. In stenography words are chorded syllable by syllable with a mixture of spelling, phonetic, and shortcut (briefs) strokes. Professional stenographers can reach 200-300 WPM without any of the strain usually found in standard typing and with far fewer errors (>99.9% accuracy). The [Open Steno Project](https://www.openstenoproject.org/) has built an open-source program called Plover that provides real-time translation of steno strokes into words and commands. It has an established dictionary and supports -## Plover with QWERTY Keyboard :id=plover-with-qwerty-keyboard +## Plover with QWERTY Keyboard {#plover-with-qwerty-keyboard} Plover can work with any standard QWERTY keyboard, although it is more efficient if the keyboard supports NKRO (n-key rollover) to allow Plover to see all the pressed keys at once. An example keymap for Plover can be found in `planck/keymaps/default`. Switching to the `PLOVER` layer adjusts the position of the keyboard to support the number bar. @@ -12,7 +12,7 @@ To enable NKRO, add `NKRO_ENABLE = yes` in your `rules.mk` and make sure to pres You may also need to adjust your layout, either in QMK or in Plover, if you have anything other than a standard layout. You may also want to purchase some steno-friendly keycaps to make it easier to hit multiple keys. -## Plover with Steno Protocol :id=plover-with-steno-protocol +## Plover with Steno Protocol {#plover-with-steno-protocol} Plover also understands the language of several steno machines. QMK can speak a couple of these languages: TX Bolt and GeminiPR. An example layout can be found in `planck/keymaps/steno`. @@ -20,21 +20,25 @@ When QMK speaks to Plover over a steno protocol, Plover will not use the keyboar In this mode, Plover expects to speak with a steno machine over a serial port so QMK will present itself to the operating system as a virtual serial port in addition to a keyboard. -> Note: Due to hardware limitations, you might not be able to run both a virtual serial port and mouse emulation at the same time. +::: info +Note: Due to hardware limitations, you might not be able to run both a virtual serial port and mouse emulation at the same time. +::: -!> Serial stenography protocols are not supported on [V-USB keyboards](compatible_microcontrollers#atmel-avr). +::: warning +Serial stenography protocols are not supported on [V-USB keyboards](compatible_microcontrollers#atmel-avr). +::: To enable stenography protocols, add the following lines to your `rules.mk`: -```mk +```make STENO_ENABLE = yes ``` -### TX Bolt :id=tx-bolt +### TX Bolt {#tx-bolt} TX Bolt communicates the status of 24 keys over a simple protocol in variable-sized (1–4 bytes) packets. To select TX Bolt, add the following lines to your `rules.mk`: -```mk +```make STENO_ENABLE = yes STENO_PROTOCOL = txbolt ``` @@ -53,12 +57,12 @@ Examples of steno strokes and the associated packet: - `WAZ` = `00010000 01000010 11001000` - `PHAPBGS` = `00101000 01000010 10101100 11000010` -### GeminiPR :id=geminipr +### GeminiPR {#geminipr} GeminiPR encodes 42 keys into a 6-byte packet. While TX Bolt contains everything that is necessary for standard stenography, GeminiPR opens up many more options, including differentiating between top and bottom `S-`, and supporting non-English theories. To select GeminiPR, add the following lines to your `rules.mk`: -```mk +```make STENO_ENABLE = yes STENO_PROTOCOL = geminipr ``` @@ -80,12 +84,12 @@ Examples of steno strokes and the associated packet: - `WAZ` = `10000000 00000010 00100000 00000000 00000000 00000001` - `PHAPBGS` = `10000000 00000101 00100000 00000000 01101010 00000000` -### Switching protocols on the fly :id=switching-protocols-on-the-fly +### Switching protocols on the fly {#switching-protocols-on-the-fly} If you wish to switch the serial protocol used to transfer the steno chords without having to recompile your keyboard firmware every time, you can press the `QK_STENO_BOLT` and `QK_STENO_GEMINI` keycodes in order to switch protocols on the fly. To enable these special keycodes, add the following lines to your `rules.mk`: -```mk +```make STENO_ENABLE = yes STENO_PROTOCOL = all ``` @@ -98,11 +102,13 @@ Naturally, this option takes the most amount of firmware space as it needs to co The default value for `STENO_PROTOCOL` is `all`. -## Configuring QMK for Steno :id=configuring-qmk-for-steno +## Configuring QMK for Steno {#configuring-qmk-for-steno} After enabling stenography and optionally selecting a protocol, you may also need disable mouse keys, extra keys, or another USB endpoint to prevent conflicts. The builtin USB stack for some processors only supports a certain number of USB endpoints and the virtual serial port needed for steno fills 3 of them. -!> If you had *explicitly* set `VIRSTER_ENABLE = no`, none of the serial stenography protocols (GeminiPR, TX Bolt) will work properly. You are expected to either set it to `yes`, remove the line from your `rules.mk` or send the steno chords yourself in an alternative way using the [provided interceptable hooks](#interfacing-with-the-code). +::: warning +If you had *explicitly* set `VIRSTER_ENABLE = no`, none of the serial stenography protocols (GeminiPR, TX Bolt) will work properly. You are expected to either set it to `yes`, remove the line from your `rules.mk` or send the steno chords yourself in an alternative way using the [provided interceptable hooks](#interfacing-with-the-code). +::: In your keymap, create a new layer for Plover, that you can fill in with the [steno keycodes](#keycode-reference). Remember to create a key to switch to the layer as well as a key for exiting the layer. @@ -110,13 +116,13 @@ Once you have your keyboard flashed, launch Plover. Click the 'Configure...' but To test your keymap, you can chord keys on your keyboard and either look at the output of the 'paper tape' (Tools > Paper Tape) or that of the 'layout display' (Tools > Layout Display). If your strokes correctly show up, you are now ready to steno! -## Learning Stenography :id=learning-stenography +## Learning Stenography {#learning-stenography} * [Learn Plover!](https://sites.google.com/site/learnplover/) * [Steno Jig](https://joshuagrams.github.io/steno-jig/) * More resources at the Plover [Learning Stenography](https://github.com/openstenoproject/plover/wiki/Learning-Stenography) wiki -## Interfacing with the code :id=interfacing-with-the-code +## Interfacing with the code {#interfacing-with-the-code} The steno code has three interceptable hooks. If you define these functions, they will be called at certain points in processing; if they return true, processing continues, otherwise it's assumed you handled things. @@ -147,9 +153,11 @@ This is not always equal to the number of bits set to 1 (aka the [Hamming weight At the end of this scenario given as an example, `chord` would have five bits set to 1 but `n_pressed_keys` would be set to 2 because there are only two keys currently being pressed down. -## Keycode Reference :id=keycode-reference +## Keycode Reference {#keycode-reference} -> Note: TX Bolt does not support the full set of keys. The TX Bolt implementation in QMK will map the GeminiPR keys to the nearest TX Bolt key so that one key map will work for both. +::: info +Note: TX Bolt does not support the full set of keys. The TX Bolt implementation in QMK will map the GeminiPR keys to the nearest TX Bolt key so that one key map will work for both. +::: |GeminiPR|TX Bolt|Steno Key| |--------|-------|-----------| diff --git a/docs/feature_swap_hands.md b/docs/feature_swap_hands.md index e9c1d4b7ba8..7546823d841 100644 --- a/docs/feature_swap_hands.md +++ b/docs/feature_swap_hands.md @@ -30,7 +30,7 @@ Note that the array indices are reversed same as the matrix and the values are o |`QK_SWAP_HANDS_TAP_TOGGLE` |`SH_TT` |Momentary swap when held, toggle when tapped | |`QK_SWAP_HANDS_ONE_SHOT` |`SH_OS` |Turn on hand swap while held or until next key press| -`SH_TT` swap-hands tap-toggle key is similar to [layer tap-toggle](feature_layers.md?id=switching-and-toggling-layers). Tapping repeatedly (5 taps by default) will toggle swap-hands on or off, like `SH_TOGG`. Tap-toggle count can be changed by defining a value for `TAPPING_TOGGLE`. +`SH_TT` swap-hands tap-toggle key is similar to [layer tap-toggle](feature_layers#switching-and-toggling-layers). Tapping repeatedly (5 taps by default) will toggle swap-hands on or off, like `SH_TOGG`. Tap-toggle count can be changed by defining a value for `TAPPING_TOGGLE`. ## Encoder Mapping @@ -45,7 +45,7 @@ const uint8_t PROGMEM encoder_hand_swap_config[NUM_ENCODERS] = { 1, 0 }; #endif ``` -### Functions :id=functions +### Functions {#functions} User callback functions to manipulate Swap-Hands: diff --git a/docs/feature_tap_dance.md b/docs/feature_tap_dance.md index bb1c2c80346..e43daf41967 100644 --- a/docs/feature_tap_dance.md +++ b/docs/feature_tap_dance.md @@ -1,12 +1,12 @@ # Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things -## Introduction :id=introduction +## Introduction {#introduction} Hit the semicolon key once, send a semicolon. Hit it twice, rapidly -- send a colon. Hit it three times, and your keyboard's LEDs do a wild dance. That's just one example of what Tap Dance can do. It's one of the nicest community-contributed features in the firmware, conceived and created by [algernon](https://github.com/algernon) in [#451](https://github.com/qmk/qmk_firmware/pull/451). Here's how algernon describes the feature: With this feature one can specify keys that behave differently, based on the amount of times they have been tapped, and when interrupted, they get handled before the interrupter. -## How to Use Tap Dance :id=how-to-use +## How to Use Tap Dance {#how-to-use} First, you will need `TAP_DANCE_ENABLE = yes` in your `rules.mk`, because the feature is disabled by default. This adds a little less than 1k to the firmware size. @@ -17,7 +17,7 @@ Optionally, you might want to set a custom `TAPPING_TERM` time by adding somethi #define TAPPING_TERM_PER_KEY ``` -The `TAPPING_TERM` time is the maximum time allowed between taps of your Tap Dance key, and is measured in milliseconds. For example, if you used the above `#define` statement and set up a Tap Dance key that sends `Space` on single-tap and `Enter` on double-tap, then this key will send `ENT` only if you tap this key twice in less than 175ms. If you tap the key, wait more than 175ms, and tap the key again you'll end up sending `SPC SPC` instead. The `TAPPING_TERM_PER_KEY` definition is only needed if you control the tapping term through a [custom `get_tapping_term` function](tap_hold.md#tapping_term), which may be needed because `TAPPING_TERM` affects not just tap-dance keys. +The `TAPPING_TERM` time is the maximum time allowed between taps of your Tap Dance key, and is measured in milliseconds. For example, if you used the above `#define` statement and set up a Tap Dance key that sends `Space` on single-tap and `Enter` on double-tap, then this key will send `ENT` only if you tap this key twice in less than 175ms. If you tap the key, wait more than 175ms, and tap the key again you'll end up sending `SPC SPC` instead. The `TAPPING_TERM_PER_KEY` definition is only needed if you control the tapping term through a [custom `get_tapping_term` function](tap_hold#tapping_term), which may be needed because `TAPPING_TERM` affects not just tap-dance keys. Next, you will want to define some tap-dance keys, which is easiest to do with the `TD()` macro. That macro takes a number which will later be used as an index into the `tap_dance_actions` array and turns it into a tap-dance keycode. @@ -32,13 +32,15 @@ After this, you'll want to use the `tap_dance_actions` array to specify what act The first option is enough for a lot of cases, that just want dual roles. For example, `ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_ENT)` will result in `Space` being sent on single-tap, `Enter` otherwise. -!> Keep in mind that only [basic keycodes](keycodes_basic.md) are supported here. Custom keycodes are not supported. +::: warning +Keep in mind that only [basic keycodes](keycodes_basic) are supported here. Custom keycodes are not supported. +::: Similar to the first option, the second and third option are good for simple layer-switching cases. For more complicated cases, like blink the LEDs, fiddle with the backlighting, and so on, use the fourth or fifth option. Examples of each are listed below. -## Implementation Details :id=implementation +## Implementation Details {#implementation} Well, that's the bulk of it! You should now be able to work through the examples below, and to develop your own Tap Dance functionality. But if you want a deeper understanding of what's going on behind the scenes, then read on for the explanation of how it all works! @@ -48,9 +50,9 @@ To accomplish this logic, the tap dance mechanics use three entry points. The ma This means that you have `TAPPING_TERM` time to tap the key again; you do not have to input all the taps within a single `TAPPING_TERM` timeframe. This allows for longer tap counts, with minimal impact on responsiveness. -## Examples :id=examples +## Examples {#examples} -### Simple Example: Send `ESC` on Single Tap, `CAPS_LOCK` on Double Tap :id=simple-example +### Simple Example: Send `ESC` on Single Tap, `CAPS_LOCK` on Double Tap {#simple-example} Here's a simple example for a single definition: @@ -77,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; ``` -### Complex Examples :id=complex-examples +### Complex Examples {#complex-examples} This section details several complex tap dance examples. All the enums used in the examples are declared like this: @@ -93,7 +95,7 @@ enum { }; ``` -#### Example 1: Send "Safety Dance!" After 100 Taps :id=example-1 +#### Example 1: Send "Safety Dance!" After 100 Taps {#example-1} ```c void dance_egg(tap_dance_state_t *state, void *user_data) { @@ -108,7 +110,7 @@ tap_dance_action_t tap_dance_actions[] = { }; ``` -#### Example 2: Turn LED Lights On Then Off, One at a Time :id=example-2 +#### Example 2: Turn LED Lights On Then Off, One at a Time {#example-2} ```c // On each tap, light up one LED, from right to left @@ -157,7 +159,7 @@ tap_dance_action_t tap_dance_actions[] = { }; ``` -#### Example 3: Send `:` on Tap, `;` on Hold :id=example-3 +#### Example 3: Send `:` on Tap, `;` on Hold {#example-3} With a little effort, powerful tap-hold configurations can be implemented as tap dances. To emit taps as early as possible, we need to act on releases of the tap dance key. There is no callback for this in the tap dance framework, so we use `process_record_user()`. @@ -217,7 +219,7 @@ tap_dance_action_t tap_dance_actions[] = { }; ``` -#### Example 4: 'Quad Function Tap-Dance' :id=example-4 +#### Example 4: 'Quad Function Tap-Dance' {#example-4} By [DanielGGordon](https://github.com/danielggordon) @@ -356,9 +358,11 @@ tap_dance_action_t tap_dance_actions[] = { And then simply use `TD(X_CTL)` anywhere in your keymap. -> In this configuration "hold" takes place **after** tap dance timeout. To achieve instant hold, remove `state->interrupted` checks in conditions. As a result you may use comfortable longer tapping periods to have more time for taps and not to wait too long for holds (try starting with doubled `TAPPING_TERM`). +::: info +In this configuration "hold" takes place **after** tap dance timeout. To achieve instant hold, remove `state->interrupted` checks in conditions. As a result you may use comfortable longer tapping periods to have more time for taps and not to wait too long for holds (try starting with doubled `TAPPING_TERM`). +::: -#### Example 5: Using tap dance for advanced mod-tap and layer-tap keys :id=example-5 +#### Example 5: Using tap dance for advanced mod-tap and layer-tap keys {#example-5} Tap dance can be used to emulate `MT()` and `LT()` behavior when the tapped code is not a basic keycode. This is useful to send tapped keycodes that normally require `Shift`, such as parentheses or curly braces—or other modified keycodes, such as `Control + X`. @@ -450,7 +454,7 @@ tap_dance_action_t tap_dance_actions[] = { Wrap each tapdance keycode in `TD()` when including it in your keymap, e.g. `TD(ALT_LP)`. -#### Example 6: Using tap dance for momentary-layer-switch and layer-toggle keys :id=example-6 +#### Example 6: Using tap dance for momentary-layer-switch and layer-toggle keys {#example-6} Tap Dance can be used to mimic MO(layer) and TG(layer) functionality. For this example, we will set up a key to function as `KC_QUOT` on single-tap, as `MO(_MY_LAYER)` on single-hold, and `TG(_MY_LAYER)` on double-tap. diff --git a/docs/feature_tri_layer.md b/docs/feature_tri_layer.md index 3087fb5a550..a67ec97a89f 100644 --- a/docs/feature_tri_layer.md +++ b/docs/feature_tri_layer.md @@ -1,4 +1,4 @@ -# Tri Layers :id=tri-layers +# Tri Layers {#tri-layers} This enables support for the OLKB style "Tri Layer" keycodes. These function similar to the `MO` (momentary) function key, but if both the "Lower" and "Upper" keys are pressed, it activates a third "Adjust" layer. To enable this functionality, add this line to your `rules.mk`: @@ -8,9 +8,9 @@ TRI_LAYER_ENABLE = yes Note that the "upper", "lower" and "adjust" names don't have a particular significance, they are just used to identify and clarify the behavior. Layers are processed from highest numeric value to lowest, however the values are not required to be consecutive. -For a detailed explanation of how the layer stack works, check out [Keymap Overview](keymap.md#keymap-and-layers). +For a detailed explanation of how the layer stack works, check out [Keymap Overview](keymap#keymap-and-layers). -## Keycodes :id=keycodes +## Keycodes {#keycodes} | Keycode | Alias | Description | |----------------------|-----------|---------------------------------------------------------------------------------------------------------| @@ -45,4 +45,6 @@ Eg, if you wanted to set the "Adjust" layer to be layer 5, you'd add this to you | `get_tri_layer_upper_layer()` | Gets the current "upper" layer. | | `get_tri_layer_adjust_layer()` | Gets the current "adjust" layer. | -!> Note: these settings are not persistent, and will be reset to the default on power loss or power cycling of the controller. +::: warning +Note: these settings are not persistent, and will be reset to the default on power loss or power cycling of the controller. +::: diff --git a/docs/feature_unicode.md b/docs/feature_unicode.md index 2c6d2ef002e..aa5a064e202 100644 --- a/docs/feature_unicode.md +++ b/docs/feature_unicode.md @@ -1,12 +1,12 @@ -# Unicode :id=unicode +# Unicode {#unicode} With a little help from your OS, practically any Unicode character can be input using your keyboard. -## Caveats :id=caveats +## Caveats {#caveats} There are some limitations to this feature. Because there is no "standard" method of Unicode input across all operating systems, each of them require their own setup process on both the host *and* in the firmware, which may involve installation of additional software. This also means Unicode input will not "just work" when the keyboard is plugged into another device. -## Usage :id=usage +## Usage {#usage} The core Unicode API can be used purely programmatically. However, there are also additional subsystems which build on top of it and come with keycodes to make things easier. See below for more details. @@ -16,7 +16,7 @@ Add the following to your keymap's `rules.mk`: UNICODE_COMMON = yes ``` -## Basic Configuration :id=basic-configuration +## Basic Configuration {#basic-configuration} Add the following to your `config.h`: @@ -29,9 +29,9 @@ Add the following to your `config.h`: |`UNICODE_CYCLE_PERSIST` |`true` |Whether to persist the current Unicode input mode to EEPROM | |`UNICODE_TYPE_DELAY` |`10` |The amount of time to wait, in milliseconds, between Unicode sequence keystrokes| -### Audio Feedback :id=audio-feedback +### Audio Feedback {#audio-feedback} -If you have the [Audio](feature_audio.md) feature enabled on your board, you can configure it to play sounds when the input mode is changed. +If you have the [Audio](feature_audio) feature enabled on your board, you can configure it to play sounds when the input mode is changed. Add the following to your `config.h`: @@ -43,13 +43,13 @@ Add the following to your `config.h`: |`UNICODE_SONG_WIN` |*n/a* |The song to play when the Windows input mode is selected | |`UNICODE_SONG_WINC`|*n/a* |The song to play when the WinCompose input mode is selected| -## Input Subsystems :id=input-subsystems +## Input Subsystems {#input-subsystems} Each of these subsystems have their own pros and cons in terms of flexibility and ease of use. Choose the one that best fits your needs. - +::::tabs -### ** Basic ** +=== Basic This is the easiest to use, albeit somewhat limited. It supports code points up to `U+7FFF`, which covers characters for most modern languages (including East Asian), as well as many symbols, but does not include emoji. @@ -61,7 +61,7 @@ UNICODE_ENABLE = yes You can then add `UC(c)` keycodes to your keymap, where *c* is the code point of the desired character (in hexadecimal - the `U+` prefix will not work). For example, `UC(0x40B)` will output [Ћ](https://unicode-table.com/en/040B/), and `UC(0x30C4)` will output [ツ](https://unicode-table.com/en/30C4). -### ** Unicode Map ** +=== Unicode Map Unicode Map supports all possible code points (up to `U+10FFFF`). Here, the code points are stored in a separate mapping table (which may contain at most 16,384 entries), instead of directly in the keymap. @@ -89,7 +89,7 @@ const uint32_t PROGMEM unicode_map[] = { Finally, add `UM(i)` keycodes to your keymap, where *i* is an index into the `unicode_map[]` array. If you defined the enum above, you can use those names instead, for example `UM(BANG)` or `UM(SNEK)`. -#### Lower and Upper Case Pairs :id=unicodemap-pairs +#### Lower and Upper Case Pairs {#unicodemap-pairs} Some writing systems have lowercase and uppercase variants of each character, such as å and Å. To make inputting these characters easier, you can use the `UP(i, j)` keycode in your keymap, where *i* and *j* are the mapping table indices of the lowercase and uppercase characters, respectively. If you're holding down Shift or have Caps Lock turned on when you press the key, the uppercase character will be inserted; otherwise, the lowercase character will be inserted. @@ -104,7 +104,7 @@ This is most useful when creating a keymap for an international layout with spec Due to keycode size constraints, *i* and *j* can each only refer to one of the first 128 characters in your `unicode_map`. In other words, 0 ≤ *i* ≤ 127 and 0 ≤ *j* ≤ 127. -### ** UCIS ** +=== UCIS As with Unicode Map, the UCIS method also supports all possible code points, and requires the use of a mapping table. However, it works much differently - Unicode characters are input by replacing a typed mnemonic. @@ -129,9 +129,9 @@ By default, each table entry may be up to three code points long. This can be ch To invoke UCIS input, the `ucis_start()` function must first be called (for example, in a custom "Unicode" keycode). Then, type the mnemonic for the mapping table entry (such as "rofl"), and hit Space or Enter. The "rofl" text will be backspaced and the emoji inserted. - +:::: -## Input Modes :id=input-modes +## Input Modes {#input-modes} Unicode input works by typing a sequence of characters, similar to a macro. However, since this sequence depends on your OS, you will need to prepare both your host machine and QMK to recognise and send the correct Unicode input sequences respectively. @@ -147,9 +147,9 @@ These modes can then be cycled through using the `UC_NEXT` and `UC_PREV` keycode If your keyboard has working EEPROM, it will remember the last used input mode and continue using it on the next power up. This can be disabled by defining `UNICODE_CYCLE_PERSIST` to `false`. - +:::::tabs -### ** macOS ** +==== macOS **Mode Name:** `UNICODE_MODE_MACOS` @@ -157,7 +157,7 @@ macOS has built-in support for Unicode input as its own input source. It support To enable, go to **System Preferences → Keyboard → Input Sources**, then add Unicode Hex Input to the list (under Other), and activate it from the input dropdown in the menu bar. Note that this may disable some Option-based shortcuts such as Option+Left and Option+Right. -### ** Linux (IBus) ** +==== Linux (IBus) **Mode Name:** `UNICODE_MODE_LINUX` @@ -165,7 +165,7 @@ For Linux distros with IBus, Unicode input is enabled by default, supports all p Users who would like support in non-GTK apps without IBus may need to resort to a more indirect method, such as creating a custom keyboard layout. -### ** Windows (WinCompose) ** +==== Windows (WinCompose) **Mode Name:** `UNICODE_MODE_WINCOMPOSE` @@ -173,11 +173,13 @@ This mode requires a third-party tool called [WinCompose](https://github.com/sam To enable, install the [latest release from GitHub](https://github.com/samhocevar/wincompose/releases/latest). Once installed, it will automatically run on startup. This works reliably under all versions of Windows supported by WinCompose. -### ** Windows (HexNumpad) ** +==== Windows (HexNumpad) **Mode Name:** `UNICODE_MODE_WINDOWS` -!> This input mode is *not* the "Alt code" system. Alt codes are not Unicode; they instead follow [the Windows-1252 character set](https://en.wikipedia.org/wiki/Alt_code). +::: warning +This input mode is *not* the "Alt code" system. Alt codes are not Unicode; they instead follow [the Windows-1252 character set](https://en.wikipedia.org/wiki/Alt_code). +::: This is Windows' built-in hex numpad Unicode input mode. It only supports code points up to `U+FFFF`, and is not recommended due to reliability and compatibility issues. @@ -187,21 +189,21 @@ To enable, run the following as an administrator, then reboot: reg add "HKCU\Control Panel\Input Method" -v EnableHexNumpad -t REG_SZ -d 1 ``` -### ** Emacs ** +==== Emacs **Mode Name:** `UNICODE_MODE_EMACS` Emacs supports code point input with the `insert-char` command. -### ** BSD ** +==== BSD **Mode Name:** `UNICODE_MODE_BSD` -Not currently implemented. If you're a BSD user and want to contribute support for this input mode, please [feel free](contributing.md)! +Not currently implemented. If you're a BSD user and want to contribute support for this input mode, please [feel free](contributing)! - +::::: -## Keycodes :id=keycodes +## Keycodes {#keycodes} |Key |Aliases |Description | |----------------------------|---------|----------------------------------------------------------------| @@ -217,64 +219,64 @@ Not currently implemented. If you're a BSD user and want to contribute support f |`QK_UNICODE_MODE_WINCOMPOSE`|`UC_WINC`|Switch to Windows input using WinCompose | |`QK_UNICODE_MODE_EMACS` |`UC_EMAC`|Switch to emacs (`C-x-8 RET`) | -## API :id=api +## API {#api} -### `uint8_t get_unicode_input_mode(void)` :id=api-get-unicode-input-mode +### `uint8_t get_unicode_input_mode(void)` {#api-get-unicode-input-mode} Get the current Unicode input mode. -#### Return Value :id=api-get-unicode-input-mode-return-value +#### Return Value {#api-get-unicode-input-mode-return-value} The currently active Unicode input mode. --- -### `void set_unicode_input_mode(uint8_t mode)` :id=api-set-unicode-input-mode +### `void set_unicode_input_mode(uint8_t mode)` {#api-set-unicode-input-mode} Set the Unicode input mode. -#### Arguments :id=api-set-unicode-input-mode-arguments +#### Arguments {#api-set-unicode-input-mode-arguments} - `uint8_t mode` The input mode to set. --- -### `void unicode_input_mode_step(void)` : id=api-unicode-input-mode-step +### `void unicode_input_mode_step(void)` : {#api-unicode-input-mode-step} Change to the next Unicode input mode. --- -### `void unicode_input_mode_step_reverse(void)` : id=api-unicode-input-mode-step-reverse +### `void unicode_input_mode_step_reverse(void)` : {#api-unicode-input-mode-step-reverse} Change to the previous Unicode input mode. --- -### `void unicode_input_mode_set_user(uint8_t input_mode)` :id=api-unicode-input-mode-set-user +### `void unicode_input_mode_set_user(uint8_t input_mode)` {#api-unicode-input-mode-set-user} User-level callback, invoked when the input mode is changed. -#### Arguments :id=api-unicode-input-mode-set-user-arguments +#### Arguments {#api-unicode-input-mode-set-user-arguments} - `uint8_t input_mode` The new input mode. --- -### `void unicode_input_mode_set_kb(uint8_t input_mode)` :id=api-unicode-input-mode-set-kb +### `void unicode_input_mode_set_kb(uint8_t input_mode)` {#api-unicode-input-mode-set-kb} Keyboard-level callback, invoked when the input mode is changed. -#### Arguments :id=api-unicode-input-mode-set-kb-arguments +#### Arguments {#api-unicode-input-mode-set-kb-arguments} - `uint8_t input_mode` The new input mode. --- -### `void unicode_input_start(void)` :id=api-unicode-input-start +### `void unicode_input_start(void)` {#api-unicode-input-start} Begin the Unicode input sequence. The exact behavior depends on the currently selected input mode: @@ -288,7 +290,7 @@ This function is weakly defined, and can be overridden in user code. --- -### `void unicode_input_finish(void)` :id=api-unicode-input-finish +### `void unicode_input_finish(void)` {#api-unicode-input-finish} Complete the Unicode input sequence. The exact behavior depends on the currently selected input mode: @@ -302,7 +304,7 @@ This function is weakly defined, and can be overridden in user code. --- -### `void unicode_input_cancel(void)` :id=api-unicode-input-cancel +### `void unicode_input_cancel(void)` {#api-unicode-input-cancel} Cancel the Unicode input sequence. The exact behavior depends on the currently selected input mode: @@ -316,137 +318,137 @@ This function is weakly defined, and can be overridden in user code. --- -### `void register_unicode(uint32_t code_point)` :id=api-register-unicode +### `void register_unicode(uint32_t code_point)` {#api-register-unicode} Input a single Unicode character. A surrogate pair will be sent if required by the input mode. -#### Arguments :id=api-register-unicode-arguments +#### Arguments {#api-register-unicode-arguments} - `uint32_t code_point` The code point of the character to send. --- -### `void send_unicode_string(const char *str)` :id=api-send-unicode-string +### `void send_unicode_string(const char *str)` {#api-send-unicode-string} Send a string containing Unicode characters. -#### Arguments :id=api-send-unicode-string-arguments +#### Arguments {#api-send-unicode-string-arguments} - `const char *str` The string to send. --- -### `uint8_t unicodemap_index(uint16_t keycode)` :id=api-unicodemap-index +### `uint8_t unicodemap_index(uint16_t keycode)` {#api-unicodemap-index} Get the index into the `unicode_map` array for the given keycode, respecting shift state for pair keycodes. -#### Arguments :id=api-unicodemap-index-arguments +#### Arguments {#api-unicodemap-index-arguments} - `uint16_t keycode` The Unicode Map keycode to get the index of. -#### Return Value :id=api-unicodemap-index-return-value +#### Return Value {#api-unicodemap-index-return-value} An index into the `unicode_map` array. --- -### `uint32_t unicodemap_get_code_point(uint8_t index)` :id=api-unicodemap-get-code-point +### `uint32_t unicodemap_get_code_point(uint8_t index)` {#api-unicodemap-get-code-point} Get the code point for the given index in the `unicode_map` array. -#### Arguments :id=unicodemap-get-code-point-arguments +#### Arguments {#unicodemap-get-code-point-arguments} - `uint8_t index` The index into the `unicode_map` array. -#### Return Value :id=unicodemap-get-code-point-return-value +#### Return Value {#unicodemap-get-code-point-return-value} A Unicode code point value. --- -### `void register_unicodemap(uint8_t index)` :id=api-register-unicodemap +### `void register_unicodemap(uint8_t index)` {#api-register-unicodemap} Send the code point for the given index in the `unicode_map` array. -#### Arguments :id=api-register-unicodemap-arguments +#### Arguments {#api-register-unicodemap-arguments} - `uint8_t index` The index into the `unicode_map` array. --- -### `void ucis_start(void)` :id=api-ucis-start +### `void ucis_start(void)` {#api-ucis-start} Begin the input sequence. --- -### `bool ucis_active(void)` :id=api-ucis-active +### `bool ucis_active(void)` {#api-ucis-active} Whether UCIS is currently active. -#### Return Value :id=api-ucis-active-return-value +#### Return Value {#api-ucis-active-return-value} `true` if UCIS is active. --- -### `uint8_t ucis_count(void)` :id=api-ucis-count +### `uint8_t ucis_count(void)` {#api-ucis-count} Get the number of characters in the input sequence buffer. -#### Return Value :id=api-ucis-count-return-value +#### Return Value {#api-ucis-count-return-value} The current input sequence buffer length. --- -### `bool ucis_add(uint16_t keycode)` :id=api-ucis-add +### `bool ucis_add(uint16_t keycode)` {#api-ucis-add} Add the given keycode to the input sequence buffer. -#### Arguments :id=api-ucis-add-arguments +#### Arguments {#api-ucis-add-arguments} - `uint16_t keycode` The keycode to add. Must be between `KC_A` and `KC_Z`, or `KC_1` and `KC_0`. -#### Return Value :id=api-ucis-add-return-value +#### Return Value {#api-ucis-add-return-value} `true` if the keycode was added. --- -### `bool ucis_remove_last(void)` :id=api-ucis-remove-last +### `bool ucis_remove_last(void)` {#api-ucis-remove-last} Remove the last character from the input sequence buffer. -#### Return Value :id=api-ucis-remove-last +#### Return Value {#api-ucis-remove-last-return-value} `true` if the sequence was not empty. --- -### `void ucis_finish(void)` :id=api-ucis-finish +### `void ucis_finish(void)` {#api-ucis-finish} Mark the input sequence as complete, and attempt to match. --- -### `void ucis_cancel(void)` :id=api-ucis-cancel +### `void ucis_cancel(void)` {#api-ucis-cancel} Cancel the input sequence. --- -### `void register_ucis(void)` :id=api-register-ucis +### `void register_ucis(void)` {#api-register-ucis} Send the code point(s) for the given UCIS index. -#### Arguments :id=api-register-ucis-arguments +#### Arguments {#api-register-ucis-arguments} - `uint8_t index` The index into the UCIS symbol table. diff --git a/docs/feature_userspace.md b/docs/feature_userspace.md index aabf18e393e..1e7c3b37cdc 100644 --- a/docs/feature_userspace.md +++ b/docs/feature_userspace.md @@ -1,6 +1,8 @@ # Userspace: Sharing Code Between Keymaps -!> Please note, userspace submissions to the upstream `qmk/qmk_firmware` repository are no longer being accepted. The userspace feature itself remains functional and can be configured locally. +::: warning +Please note, userspace submissions to the upstream `qmk/qmk_firmware` repository are no longer being accepted. The userspace feature itself remains functional and can be configured locally. +::: If you use more than one keyboard with a similar keymap, you might see the benefit in being able to share code between them. Create your own folder in `users/` named the same as your keymap (ideally your GitHub username, ``) with the following structure: @@ -24,7 +26,9 @@ For example, Will include the `/users/jack/` folder in the path, along with `/users/jack/rules.mk`. -!> This `name` can be [overridden](#override-default-userspace), if needed. +::: warning +This `name` can be [overridden](#override-default-userspace), if needed. +::: ## `Rules.mk` @@ -56,7 +60,7 @@ endif ### Override default userspace -By default the userspace used will be the same as the keymap name. In some situations this isn't desirable. For instance, if you use the [layout](feature_layouts.md) feature you can't use the same name for different keymaps (e.g. ANSI and ISO). You can name your layouts `mylayout-ansi` and `mylayout-iso` and add the following line to your layout's `rules.mk`: +By default the userspace used will be the same as the keymap name. In some situations this isn't desirable. For instance, if you use the [layout](feature_layouts) feature you can't use the same name for different keymaps (e.g. ANSI and ISO). You can name your layouts `mylayout-ansi` and `mylayout-iso` and add the following line to your layout's `rules.mk`: ``` USER_NAME := mylayout @@ -70,7 +74,7 @@ Additionally, `config.h` here will be processed like the same file in your keyma The reason for this, is that `.h` won't be added in time to add settings (such as `#define TAPPING_TERM 100`), and including the `` file in any `config.h` files will result in compile issues. -!>You should use the `config.h` for [configuration options](config_options.md), and the `.h` file for user or keymap specific settings (such as the enum for layer or keycodes) +!>You should use the `config.h` for [configuration options](config_options), and the `.h` file for user or keymap specific settings (such as the enum for layer or keycodes) ## Readme (`readme.md`) @@ -119,12 +123,12 @@ For a more complicated example, checkout [`/users/drashna/`](https://github.com/ ### Customized Functions -QMK has a bunch of [functions](custom_quantum_functions.md) that have [`_quantum`, `_kb`, and `_user` versions](custom_quantum_functions.md#a-word-on-core-vs-keyboards-vs-keymap) that you can use. You will pretty much always want to use the user version of these functions. But the problem is that if you use them in your userspace, then you don't have a version that you can use in your keymap. +QMK has a bunch of [functions](custom_quantum_functions) that have [`_quantum`, `_kb`, and `_user` versions](custom_quantum_functions#a-word-on-core-vs-keyboards-vs-keymap) that you can use. You will pretty much always want to use the user version of these functions. But the problem is that if you use them in your userspace, then you don't have a version that you can use in your keymap. However, you can actually add support for keymap version, so that you can use it in both your userspace and your keymap! -For instance, let's look at the `layer_state_set_user()` function. You can enable the [Tri Layer State](ref_functions.md#olkb-tri-layers) functionality on all of your boards, while also retaining the Tri Layer functionality in your `keymap.c` files. +For instance, let's look at the `layer_state_set_user()` function. You can enable the [Tri Layer State](ref_functions#olkb-tri-layers) functionality on all of your boards, while also retaining the Tri Layer functionality in your `keymap.c` files. In your `` file, you'd want to add this: ```c @@ -254,4 +258,6 @@ Also, holding Shift will add the flash target (`:flash`) to the command. Holdin And for the boards that lack a shift key, or that you want to always attempt the flashing part, you can add `FLASH_BOOTLOADER = yes` to the `rules.mk` of that keymap. -?> This should flash the newly compiled firmware automatically, using the correct utility, based on the bootloader settings (or default to just generating the HEX file). However, it should be noted that this may not work on all systems. AVRDUDE doesn't work on WSL, namely. +::: tip +This should flash the newly compiled firmware automatically, using the correct utility, based on the bootloader settings (or default to just generating the HEX file). However, it should be noted that this may not work on all systems. AVRDUDE doesn't work on WSL, namely. +::: diff --git a/docs/flash_driver.md b/docs/flash_driver.md index fa7fed5171b..4160721350b 100644 --- a/docs/flash_driver.md +++ b/docs/flash_driver.md @@ -1,4 +1,4 @@ -# FLASH Driver Configuration :id=flash-driver-configuration +# FLASH Driver Configuration {#flash-driver-configuration} The FLASH driver can be swapped out depending on the needs of the keyboard, or whether extra hardware is present. @@ -7,7 +7,7 @@ Driver | Description `FLASH_DRIVER = spi` | Supports writing to almost all NOR Flash chips. See the driver section below. -## SPI FLASH Driver Configuration :id=spi-flash-driver-configuration +## SPI FLASH Driver Configuration {#spi-flash-driver-configuration} Currently QMK supports almost all NOR Flash chips over SPI. As such, requires a working spi_master driver configuration. You can override the driver configuration via your config.h: @@ -21,4 +21,6 @@ Currently QMK supports almost all NOR Flash chips over SPI. As such, requires a `#define EXTERNAL_FLASH_SIZE` | The total size of the FLASH in bytes, as specified in the datasheet | `(512 * 1024)` `#define EXTERNAL_FLASH_ADDRESS_SIZE` | The Flash address size in bytes, as specified in datasheet | `3` -!> All the above default configurations are based on MX25L4006E NOR Flash. +::: warning +All the above default configurations are based on MX25L4006E NOR Flash. +::: diff --git a/docs/flashing.md b/docs/flashing.md index 4867c20bec8..c1e9f2a43d4 100644 --- a/docs/flashing.md +++ b/docs/flashing.md @@ -8,7 +8,7 @@ You will also be able to use the CLI to flash your keyboard, by running: ``` $ qmk flash -kb -km ``` -See the [`qmk flash`](cli_commands.md#qmk-flash) documentation for more information. +See the [`qmk flash`](cli_commands#qmk-flash) documentation for more information. ## Atmel DFU @@ -53,7 +53,7 @@ QMK maintains [a fork of the LUFA DFU bootloader](https://github.com/qmk/lufa/tr //#define QMK_LED E6 //#define QMK_SPEAKER C6 ``` -Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](feature_bootmagic.md), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader. +Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](feature_bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader. The manufacturer and product strings are automatically pulled from `config.h`, with " Bootloader" appended to the product string. @@ -209,7 +209,7 @@ To enable the additional features, add the following defines to your `config.h`: //#define QMK_SPEAKER C6 ``` -Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](feature_bootmagic.md), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader. +Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](feature_bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader. The manufacturer and product strings are automatically pulled from `config.h`, with " Bootloader" appended to the product string. diff --git a/docs/flashing_bootloadhid.md b/docs/flashing_bootloadhid.md index aacf2cc2c42..6e55a4e7fd2 100644 --- a/docs/flashing_bootloadhid.md +++ b/docs/flashing_bootloadhid.md @@ -13,7 +13,9 @@ General flashing sequence: ## bootloadHID Flashing Target -?> Using the QMK installation script, detailed [here](newbs_getting_started.md), the required bootloadHID tools should be automatically installed. +::: tip +Using the QMK installation script, detailed [here](newbs_getting_started), the required bootloadHID tools should be automatically installed. +::: To flash via the command line, use the target `:bootloadhid` by executing the following command: diff --git a/docs/getting_started_docker.md b/docs/getting_started_docker.md index c4da8af968d..6e69b17d347 100644 --- a/docs/getting_started_docker.md +++ b/docs/getting_started_docker.md @@ -52,4 +52,6 @@ RUNTIME="podman" util/docker_build.sh keyboard:keymap:target On Windows and macOS, it requires [Docker Machine](http://gw.tnode.com/docker/docker-machine-with-usb-support-on-windows-macos/) to be running. This is tedious to set up, so it's not recommended; use [QMK Toolbox](https://github.com/qmk/qmk_toolbox) instead. -!> Docker for Windows requires [Hyper-V](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v) to be enabled. This means that it cannot work on versions of Windows which don't have Hyper-V, such as Windows 7, Windows 8 and **Windows 10 Home**. +::: warning +Docker for Windows requires [Hyper-V](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v) to be enabled. This means that it cannot work on versions of Windows which don't have Hyper-V, such as Windows 7, Windows 8 and **Windows 10 Home**. +::: diff --git a/docs/getting_started_github.md b/docs/getting_started_github.md index 9232bc62296..b8587dbb138 100644 --- a/docs/getting_started_github.md +++ b/docs/getting_started_github.md @@ -2,7 +2,9 @@ GitHub can be a little tricky to those that aren't familiar with it - this guide will walk through each step of forking, cloning, and submitting a pull request with QMK. -?> This guide assumes you're somewhat comfortable with running things at the command line, and have git installed on your system. +::: tip +This guide assumes you're somewhat comfortable with running things at the command line, and have git installed on your system. +::: Start on the [QMK GitHub page](https://github.com/qmk/qmk_firmware), and you'll see a button in the upper right that says "Fork": diff --git a/docs/getting_started_introduction.md b/docs/getting_started_introduction.md index 80203353452..9417351747f 100644 --- a/docs/getting_started_introduction.md +++ b/docs/getting_started_introduction.md @@ -8,7 +8,7 @@ QMK is a fork of [Jun Wako](https://github.com/tmk)'s [tmk_keyboard](https://git ### Userspace Structure -Within the folder `users` is a directory for each user. This is a place for users to put code that they might use between keyboards. See the docs for [Userspace feature](feature_userspace.md) for more information. +Within the folder `users` is a directory for each user. This is a place for users to put code that they might use between keyboards. See the docs for [Userspace feature](feature_userspace) for more information. ### Keyboard Project Structure @@ -17,12 +17,12 @@ Within the folder `keyboards`, its subfolder `handwired` and its vendor and manu * `keymaps/`: Different keymaps that can be built * `rules.mk`: The file that sets the default "make" options. Do not edit this file directly, instead use a keymap specific `rules.mk`. * `config.h`: The file that sets the default compile time options. Do not edit this file directly, instead use a keymap specific `config.h`. -* `info.json`: The file used for setting layout for QMK Configurator. See [Configurator Support](reference_configurator_support.md) for more information. +* `info.json`: The file used for setting layout for QMK Configurator. See [Configurator Support](reference_configurator_support) for more information. * `readme.md`: A brief overview of the keyboard. * `.h`: This file is where the keyboard layout is defined against the keyboard's switch matrix. * `.c`: This file is where you can find custom code for the keyboard. -For more information on project structure, see [QMK Keyboard Guidelines](hardware_keyboard_guidelines.md). +For more information on project structure, see [QMK Keyboard Guidelines](hardware_keyboard_guidelines). ### Keymap Structure diff --git a/docs/getting_started_make_guide.md b/docs/getting_started_make_guide.md index 3d98e4602b4..8a66a65c21a 100644 --- a/docs/getting_started_make_guide.md +++ b/docs/getting_started_make_guide.md @@ -15,8 +15,8 @@ The `` means the following * If no target is given, then it's the same as `all` below * `all` compiles as many keyboard/revision/keymap combinations as specified. For example, `make planck/rev4:default` will generate a single .hex, while `make planck/rev4:all` will generate a hex for every keymap available to the planck. * `flash`, `dfu`, `teensy`, `avrdude`, `dfu-util`, or `bootloadhid` compile and upload the firmware to the keyboard. If the compilation fails, then nothing will be uploaded. The programmer to use depends on the keyboard. For most keyboards it's `dfu`, but for ChibiOS keyboards you should use `dfu-util`, and `teensy` for standard Teensys. To find out which command you should use for your keyboard, check the keyboard specific readme. - Visit the [Flashing Firmware](flashing.md) guide for more details of the available bootloaders. - * **Note**: some operating systems need privileged access for these commands to work. This means that you may need to setup [`udev rules`](faq_build.md#linux-udev-rules) to access these without root access, or to run the command with root access (`sudo make planck/rev4:default:flash`). + Visit the [Flashing Firmware](flashing) guide for more details of the available bootloaders. + * **Note**: some operating systems need privileged access for these commands to work. This means that you may need to setup [`udev rules`](faq_build#linux-udev-rules) to access these without root access, or to run the command with root access (`sudo make planck/rev4:default:flash`). * `clean`, cleans the build output folders to make sure that everything is built from scratch. Run this before normal compilation if you have some unexplainable problems. * `distclean` removes .hex files and .bin files. @@ -115,19 +115,19 @@ This allows you to send Unicode characters using `UM()` in your keyma This allows you to send Unicode characters by inputting a mnemonic corresponding to the character you want to send. You will need to maintain a mapping table in your keymap file. All possible code points (up to `0x10FFFF`) are supported. -For further details, as well as limitations, see the [Unicode page](feature_unicode.md). +For further details, as well as limitations, see the [Unicode page](feature_unicode). `AUDIO_ENABLE` -This allows you output audio on the C6 pin (needs abstracting). See the [audio page](feature_audio.md) for more information. +This allows you output audio on the C6 pin (needs abstracting). See the [audio page](feature_audio) for more information. `VARIABLE_TRACE` -Use this to debug changes to variable values, see the [tracing variables](unit_testing.md#tracing-variables) section of the Unit Testing page for more information. +Use this to debug changes to variable values, see the [tracing variables](unit_testing#tracing-variables) section of the Unit Testing page for more information. `KEY_LOCK_ENABLE` -This enables [key lock](feature_key_lock.md). +This enables [key lock](feature_key_lock). `SPLIT_KEYBOARD` @@ -139,7 +139,7 @@ As there is no standard split communication driver for ARM-based split keyboards `CUSTOM_MATRIX` -Lets you replace the default matrix scanning routine with your own code. For further details, see the [Custom Matrix page](custom_matrix.md). +Lets you replace the default matrix scanning routine with your own code. For further details, see the [Custom Matrix page](custom_matrix). `DEBOUNCE_TYPE` @@ -147,7 +147,7 @@ Lets you replace the default key debouncing routine with an alternative one. If `DEFERRED_EXEC_ENABLE` -Enables deferred executor support -- timed delays before callbacks are invoked. See [deferred execution](custom_quantum_functions.md#deferred-execution) for more information. +Enables deferred executor support -- timed delays before callbacks are invoked. See [deferred execution](custom_quantum_functions#deferred-execution) for more information. ## Customizing Makefile Options on a Per-Keymap Basis diff --git a/docs/gpio_control.md b/docs/gpio_control.md index 90798fc87b8..9ce4f2aa20c 100644 --- a/docs/gpio_control.md +++ b/docs/gpio_control.md @@ -1,8 +1,8 @@ -# GPIO Control :id=gpio-control +# GPIO Control {#gpio-control} QMK has a GPIO control abstraction layer which is microcontroller agnostic. This is done to allow easy access to pin control across different platforms. -## Macros :id=macros +## Macros {#macros} The following macros provide basic control of GPIOs and are found in `platforms//gpio.h`. @@ -20,11 +20,11 @@ The following macros provide basic control of GPIOs and are found in `platforms/ |`gpio_read_pin(pin)` |Returns the level of the pin | |`gpio_toggle_pin(pin)` |Invert pin level, assuming it is an output | -## Advanced Settings :id=advanced-settings +## Advanced Settings {#advanced-settings} Each microcontroller can have multiple advanced settings regarding its GPIO. This abstraction layer does not limit the use of architecture-specific functions. Advanced users should consult the datasheet of their desired device. For AVR, the standard `avr/io.h` library is used; for STM32, the ChibiOS [PAL library](https://chibios.sourceforge.net/docs3/hal/group___p_a_l.html) is used. -## Atomic Operation :id=atomic-operation +## Atomic Operation {#atomic-operation} The above functions are not always guaranteed to work atomically. Therefore, if you want to prevent interruptions in the middle of operations when using multiple combinations of the above functions, use the following `ATOMIC_BLOCK_FORCEON` macro. diff --git a/docs/hand_wire.md b/docs/hand_wire.md index cfae38d6d20..460e8e8be63 100644 --- a/docs/hand_wire.md +++ b/docs/hand_wire.md @@ -88,7 +88,7 @@ Note that these methods can be combined. Prepare your lengths of wire before mo ### A note on split keyboards -If you are planning a split keyboard (e.g. Dactyl) each half will require a controller and a means of communicating between them (like a TRRS or hardwired cable). Further information can be found in the [QMK split keyboard documentation.](feature_split_keyboard.md) +If you are planning a split keyboard (e.g. Dactyl) each half will require a controller and a means of communicating between them (like a TRRS or hardwired cable). Further information can be found in the [QMK split keyboard documentation.](feature_split_keyboard) ### Soldering @@ -177,7 +177,7 @@ From here, you should have a working keyboard once you program a firmware. Simple firmware can be created easily using the [Keyboard Firmware Builder](https://kbfirmware.com/) website. Recreate your layout using [Keyboard Layout Editor](https://www.keyboard-layout-editor.com), import it and recreate the matrix (if not already done as part of [planning the matrix](#planning-the-matrix)). -Go through the rest of the tabs, assigning keys until you get to the last one where you can compile and download your firmware. The .hex file can be flashed straight onto your keyboard, or for advanced functionality, compiled locally after [Setting up Your Environment](newbs_getting_started.md). +Go through the rest of the tabs, assigning keys until you get to the last one where you can compile and download your firmware. The .hex file can be flashed straight onto your keyboard, or for advanced functionality, compiled locally after [Setting up Your Environment](newbs_getting_started). The source given by Keyboard Firmware Builder is QMK, but is based on a version of QMK from early 2017. To compile the firmware in a modern version of QMK Firmware, you'll need to export via the `Save Configuration` button, then run: @@ -244,6 +244,6 @@ There are a lot of possibilities inside the firmware - explore [docs.qmk.fm](htt This page used to include more content. We have moved a section that used to be part of this page its own page. Everything below this point is simply a redirect so that people following old links on the web find what they're looking for. -## Preamble: How a Keyboard Matrix Works (and why we need diodes) :id=preamble-how-a-keyboard-matrix-works-and-why-we-need-diodes +## Preamble: How a Keyboard Matrix Works (and why we need diodes) {#preamble-how-a-keyboard-matrix-works-and-why-we-need-diodes} -* [How a Keyboard Matrix Works](how_a_matrix_works.md) +* [How a Keyboard Matrix Works](how_a_matrix_works) diff --git a/docs/hardware_drivers.md b/docs/hardware_drivers.md index a157501326d..6960bbcaa18 100644 --- a/docs/hardware_drivers.md +++ b/docs/hardware_drivers.md @@ -16,20 +16,20 @@ Support for addressing pins on the ProMicro by their Arduino name rather than th ## SSD1306 OLED Driver -Support for SSD1306 based OLED displays. For more information see the [OLED Driver Feature](feature_oled_driver.md) page. +Support for SSD1306 based OLED displays. For more information see the [OLED Driver Feature](feature_oled_driver) page. ## WS2812 -Support for WS2811/WS2812{a,b,c} LED's. For more information see the [RGB Light](feature_rgblight.md) page. +Support for WS2811/WS2812{a,b,c} LED's. For more information see the [RGB Light](feature_rgblight) page. ## IS31FL3731 -Support for up to 2 drivers. Each driver impliments 2 charlieplex matrices to individually address LEDs using I2C. This allows up to 144 same color LEDs or 32 RGB LEDs. For more information on how to setup the driver see the [RGB Matrix](feature_rgb_matrix.md) page. +Support for up to 2 drivers. Each driver impliments 2 charlieplex matrices to individually address LEDs using I2C. This allows up to 144 same color LEDs or 32 RGB LEDs. For more information on how to setup the driver see the [RGB Matrix](feature_rgb_matrix) page. ## IS31FL3733 -Support for up to a single driver with room for expansion. Each driver can control 192 individual LEDs or 64 RGB LEDs. For more information on how to setup the driver see the [RGB Matrix](feature_rgb_matrix.md) page. +Support for up to a single driver with room for expansion. Each driver can control 192 individual LEDs or 64 RGB LEDs. For more information on how to setup the driver see the [RGB Matrix](feature_rgb_matrix) page. ## 24xx series external I2C EEPROM -Support for an external I2C-based EEPROM instead of using the on-chip EEPROM. For more information on how to setup the driver see the [EEPROM Driver](eeprom_driver.md) page. +Support for an external I2C-based EEPROM instead of using the on-chip EEPROM. For more information on how to setup the driver see the [EEPROM Driver](eeprom_driver) page. diff --git a/docs/hardware_keyboard_guidelines.md b/docs/hardware_keyboard_guidelines.md index 684ccc73f68..e7c62321f66 100644 --- a/docs/hardware_keyboard_guidelines.md +++ b/docs/hardware_keyboard_guidelines.md @@ -70,11 +70,11 @@ Your keyboard should be located in `qmk_firmware/keyboards/` and the folder name ### `readme.md` -All projects need to have a `readme.md` file that explains what the keyboard is, who made it and where it's available. If applicable, it should also contain links to more information, such as the maker's website. Please follow the [published template](documentation_templates.md#keyboard-readmemd-template). +All projects need to have a `readme.md` file that explains what the keyboard is, who made it and where it's available. If applicable, it should also contain links to more information, such as the maker's website. Please follow the [published template](documentation_templates#keyboard-readmemd-template). ### `info.json` -This file is used by the [QMK API](https://github.com/qmk/qmk_api). It contains the information [QMK Configurator](https://config.qmk.fm/) needs to display a representation of your keyboard. You can also set metadata here. For more information see the [reference page](reference_info_json.md). +This file is used by the [QMK API](https://github.com/qmk/qmk_api). It contains the information [QMK Configurator](https://config.qmk.fm/) needs to display a representation of your keyboard. You can also set metadata here. For more information see the [reference page](reference_info_json). ### `config.h` @@ -87,7 +87,7 @@ The `config.h` files can also be placed in sub-folders, and the order in which t * `keyboards/top_folder/sub_1/sub_2/config.h` * `keyboards/top_folder/sub_1/sub_2/sub_3/config.h` * `keyboards/top_folder/sub_1/sub_2/sub_3/sub_4/config.h` - * [`.build/objs_/src/info_config.h`](data_driven_config.md#add-code-to-generate-it) see [Data Driven Configuration](data_driven_config.md) + * [`.build/objs_/src/info_config.h`](data_driven_config#add-code-to-generate-it) see [Data Driven Configuration](data_driven_config) * `users/a_user_folder/config.h` * `keyboards/top_folder/keymaps/a_keymap/config.h` * `keyboards/top_folder/sub_1/sub_2/sub_3/sub_4/post_config.h` @@ -130,7 +130,9 @@ The `post_config.h` file can be used for additional post-processing, depending o #endif ``` -?> If you define options using `post_config.h` as in the above example, you should not define the same options in the keyboard- or user-level `config.h`. +::: tip +If you define options using `post_config.h` as in the above example, you should not define the same options in the keyboard- or user-level `config.h`. +::: ### `rules.mk` @@ -177,7 +179,9 @@ The `post_rules.mk` file can interpret `features` of a keyboard-level before `co endif ``` -?> See `build_keyboard.mk` and `common_features.mk` for more details. +::: tip +See `build_keyboard.mk` and `common_features.mk` for more details. +::: ### `` @@ -208,7 +212,9 @@ As an example, if you have a 60% PCB that supports ANSI and ISO you might define | LAYOUT_ansi | default_ansi | An ANSI layout | | LAYOUT_iso | default_iso | An ISO layout | -?> Providing only `LAYOUT_all` is invalid - especially when implementing the additional layouts within 3rd party tooling. +::: tip +Providing only `LAYOUT_all` is invalid - especially when implementing the additional layouts within 3rd party tooling. +::: ## Image/Hardware Files @@ -222,7 +228,7 @@ Given the amount of functionality that QMK exposes it's very easy to confuse new ### Magic Keycodes and Command -[Magic Keycodes](keycodes_magic.md) and [Command](feature_command.md) are two related features that allow a user to control their keyboard in non-obvious ways. We recommend you think long and hard about if you're going to enable either feature, and how you will expose this functionality. Keep in mind that users who want this functionality can enable it in their personal keymaps without affecting all the novice users who may be using your keyboard as their first programmable board. +[Magic Keycodes](keycodes_magic) and [Command](feature_command) are two related features that allow a user to control their keyboard in non-obvious ways. We recommend you think long and hard about if you're going to enable either feature, and how you will expose this functionality. Keep in mind that users who want this functionality can enable it in their personal keymaps without affecting all the novice users who may be using your keyboard as their first programmable board. By far the most common problem new users encounter is accidentally triggering Bootmagic while they're plugging in their keyboard. They're holding the keyboard by the bottom, unknowingly pressing in alt and spacebar, and then they find that these keys have been swapped on them. We recommend leaving this feature disabled by default, but if you do turn it on consider setting `BOOTMAGIC_KEY_SALT` to a key that is hard to press while plugging your keyboard in. @@ -230,7 +236,7 @@ If your keyboard does not have 2 shift keys you should provide a working default ## Custom Keyboard Programming -As documented on [Customizing Functionality](custom_quantum_functions.md) you can define custom functions for your keyboard. Please keep in mind that your users may want to customize that behavior as well, and make it possible for them to do that. If you are providing a custom function, for example `process_record_kb()`, make sure that your function calls the `_user()` version of the call too. You should also take into account the return value of the `_user()` version, and only run your custom code if the user returns `true`. +As documented on [Customizing Functionality](custom_quantum_functions) you can define custom functions for your keyboard. Please keep in mind that your users may want to customize that behavior as well, and make it possible for them to do that. If you are providing a custom function, for example `process_record_kb()`, make sure that your function calls the `_user()` version of the call too. You should also take into account the return value of the `_user()` version, and only run your custom code if the user returns `true`. ## Non-Production/Handwired Projects @@ -257,7 +263,3 @@ The year should be the first year the file is created. If work was done to that ## License The core of QMK is licensed under the [GNU General Public License](https://www.gnu.org/licenses/licenses.en.html). If you are shipping binaries for AVR processors you may choose either [GPLv2](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html) or [GPLv3](https://www.gnu.org/licenses/gpl.html). If you are shipping binaries for ARM processors you must choose [GPL Version 3](https://www.gnu.org/licenses/gpl.html) to comply with the [ChibiOS](https://www.chibios.org) GPLv3 license. - -## Technical Details - -If you're looking for more information on making your keyboard work with QMK, [check out the hardware section](hardware.md)! diff --git a/docs/how_a_matrix_works.md b/docs/how_a_matrix_works.md index 48e41e5c7de..ebe90eb3de9 100644 --- a/docs/how_a_matrix_works.md +++ b/docs/how_a_matrix_works.md @@ -96,4 +96,4 @@ Further reading: - [Deskthority article](https://deskthority.net/wiki/Keyboard_matrix) - [Keyboard Matrix Help by Dave Dribin (2000)](https://www.dribin.org/dave/keyboard/one_html/) - [How Key Matrices Works by PCBheaven](https://pcbheaven.com/wikipages/How_Key_Matrices_Works/) (animated examples) -- [How keyboards work - QMK documentation](how_keyboards_work.md) +- [How keyboards work - QMK documentation](how_keyboards_work) diff --git a/docs/how_keyboards_work.md b/docs/how_keyboards_work.md index 0f4b039fd4f..9d620f00607 100644 --- a/docs/how_keyboards_work.md +++ b/docs/how_keyboards_work.md @@ -55,7 +55,7 @@ layout is set to QWERTY, a sample of the matching table is as follows: ## Back to the Firmware -As the layout is generally fixed (unless you create your own), the firmware can actually call a keycode by its layout name directly to ease things for you. This is exactly what is done here with `KC_A` actually representing `0x04` in QWERTY. The full list can be found in [keycodes](keycodes.md). +As the layout is generally fixed (unless you create your own), the firmware can actually call a keycode by its layout name directly to ease things for you. This is exactly what is done here with `KC_A` actually representing `0x04` in QWERTY. The full list can be found in [keycodes](keycodes). ## List of Characters You Can Send diff --git a/docs/i2c_driver.md b/docs/i2c_driver.md index 9a3c08b90b6..ccc21137b38 100644 --- a/docs/i2c_driver.md +++ b/docs/i2c_driver.md @@ -1,10 +1,10 @@ -# I2C Master Driver :id=i2c-master-driver +# I2C Master Driver {#i2c-master-driver} The I2C Master drivers used in QMK have a set of common functions to allow portability between MCUs. -## Usage :id=usage +## Usage {#usage} -In most cases, the I2C Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](feature_oled_driver.md). +In most cases, the I2C Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](feature_oled_driver). However, if you need to use the driver standalone, add the following to your `rules.mk`: @@ -14,7 +14,7 @@ I2C_DRIVER_REQUIRED = yes You can then call the I2C API by including `i2c_master.h` in your code. -## I2C Addressing :id=note-on-i2c-addresses +## I2C Addressing {#note-on-i2c-addresses} All of the addresses expected by this driver should be pushed to the upper 7 bits of the address byte. Setting the lower bit (indicating read/write) will be done by the respective functions. Almost all I2C addresses listed @@ -29,7 +29,7 @@ You can either do this on each call to the functions below, or once in your defi See https://www.robot-electronics.co.uk/i2c-tutorial for more information about I2C addressing and other technical details. -## AVR Configuration :id=avr-configuration +## AVR Configuration {#avr-configuration} The following defines can be used to configure the I2C master driver: @@ -46,9 +46,11 @@ No further setup is required - just connect the `SDA` and `SCL` pins of your I2C |ATmega32A |`C0` |`C1` | |ATmega328/P |`C5` |`C4` | -?> The ATmega16/32U2 does not possess I2C functionality, and so cannot use this driver. +::: tip +The ATmega16/32U2 does not possess I2C functionality, and so cannot use this driver. +::: -## ChibiOS/ARM Configuration :id=arm-configuration +## ChibiOS/ARM Configuration {#arm-configuration} You'll need to determine which pins can be used for I2C -- a an example, STM32 parts generally have multiple I2C peripherals, labeled I2C1, I2C2, I2C3 etc. @@ -84,7 +86,7 @@ Configuration-wise, you'll need to set up the peripheral as per your MCU's datas The following configuration values depend on the specific MCU in use. -### I2Cv1 :id=arm-configuration-i2cv1 +### I2Cv1 {#arm-configuration-i2cv1} * STM32F1xx * STM32F2xx @@ -100,7 +102,7 @@ See [this page](https://www.playembedded.org/blog/stm32-i2c-chibios/#7_I2Cv1_con |`I2C1_CLOCK_SPEED` |`100000` | |`I2C1_DUTY_CYCLE` |`STD_DUTY_CYCLE`| -### I2Cv2 :id=arm-configuration-i2cv2 +### I2Cv2 {#arm-configuration-i2cv2} * STM32F0xx * STM32F3xx @@ -117,9 +119,9 @@ See [this page](https://www.playembedded.org/blog/stm32-i2c-chibios/#8_I2Cv2_I2C |`I2C1_TIMINGR_SCLH` |`38U` | |`I2C1_TIMINGR_SCLL` |`129U` | -## API :id=api +## API {#api} -### `void i2c_init(void)` :id=api-i2c-init +### `void i2c_init(void)` {#api-i2c-init} Initialize the I2C driver. This function must be called only once, before any of the below functions can be called. @@ -138,11 +140,11 @@ void i2c_init(void) { --- -### `i2c_status_t i2c_transmit(uint8_t address, uint8_t *data, uint16_t length, uint16_t timeout)` :id=api-i2c-transmit +### `i2c_status_t i2c_transmit(uint8_t address, uint8_t *data, uint16_t length, uint16_t timeout)` {#api-i2c-transmit} Send multiple bytes to the selected I2C device. -#### Arguments :id=api-i2c-transmit-arguments +#### Arguments {#api-i2c-transmit-arguments} - `uint8_t address` The 7-bit I2C address of the device. @@ -153,17 +155,17 @@ Send multiple bytes to the selected I2C device. - `uint16_t timeout` The time in milliseconds to wait for a response from the target device. -#### Return Value :id=api-i2c-transmit-return +#### Return Value {#api-i2c-transmit-return} `I2C_STATUS_TIMEOUT` if the timeout period elapses, `I2C_STATUS_ERROR` if some other error occurs, otherwise `I2C_STATUS_SUCCESS`. --- -### `i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)` :id=api-i2c-receive +### `i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)` {#api-i2c-receive} Receive multiple bytes from the selected I2C device. -#### Arguments :id=api-i2c-receive-arguments +#### Arguments {#api-i2c-receive-arguments} - `uint8_t address` The 7-bit I2C address of the device. @@ -174,17 +176,17 @@ Receive multiple bytes from the selected I2C device. - `uint16_t timeout` The time in milliseconds to wait for a response from the target device. -#### Return Value :id=api-i2c-receive-return +#### Return Value {#api-i2c-receive-return} `I2C_STATUS_TIMEOUT` if the timeout period elapses, `I2C_STATUS_ERROR` if some other error occurs, otherwise `I2C_STATUS_SUCCESS`. --- -### `i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)` :id=api-i2c-write-register +### `i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)` {#api-i2c-write-register} Writes to a register with an 8-bit address on the I2C device. -#### Arguments :id=api-i2c-write-register-arguments +#### Arguments {#api-i2c-write-register-arguments} - `uint8_t devaddr` The 7-bit I2C address of the device. @@ -197,17 +199,17 @@ Writes to a register with an 8-bit address on the I2C device. - `uint16_t timeout` The time in milliseconds to wait for a response from the target device. -#### Return Value :id=api-i2c-write-register-return +#### Return Value {#api-i2c-write-register-return} `I2C_STATUS_TIMEOUT` if the timeout period elapses, `I2C_STATUS_ERROR` if some other error occurs, otherwise `I2C_STATUS_SUCCESS`. --- -### `i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)` :id=api-i2c-write-register16 +### `i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)` {#api-i2c-write-register16} Writes to a register with a 16-bit address (big endian) on the I2C device. -#### Arguments :id=api-i2c-write-register16-arguments +#### Arguments {#api-i2c-write-register16-arguments} - `uint8_t devaddr` The 7-bit I2C address of the device. @@ -220,17 +222,17 @@ Writes to a register with a 16-bit address (big endian) on the I2C device. - `uint16_t timeout` The time in milliseconds to wait for a response from the target device. -#### Return Value :id=api-i2c-write-register16-return +#### Return Value {#api-i2c-write-register16-return} `I2C_STATUS_TIMEOUT` if the timeout period elapses, `I2C_STATUS_ERROR` if some other error occurs, otherwise `I2C_STATUS_SUCCESS`. --- -### `i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)` :id=api-i2c-read-register +### `i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)` {#api-i2c-read-register} Reads from a register with an 8-bit address on the I2C device. -#### Arguments :id=api-i2c-read-register-arguments +#### Arguments {#api-i2c-read-register-arguments} - `uint8_t devaddr` The 7-bit I2C address of the device. @@ -241,17 +243,17 @@ Reads from a register with an 8-bit address on the I2C device. - `uint16_t timeout` The time in milliseconds to wait for a response from the target device. -#### Return Value :id=api-i2c-read-register-return +#### Return Value {#api-i2c-read-register-return} `I2C_STATUS_TIMEOUT` if the timeout period elapses, `I2C_STATUS_ERROR` if some other error occurs, otherwise `I2C_STATUS_SUCCESS`. --- -### `i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)` :id=api-i2c-read-register16 +### `i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)` {#api-i2c-read-register16} Reads from a register with a 16-bit address (big endian) on the I2C device. -#### Arguments :id=api-i2c-read-register16-arguments +#### Arguments {#api-i2c-read-register16-arguments} - `uint8_t devaddr` The 7-bit I2C address of the device. @@ -262,13 +264,13 @@ Reads from a register with a 16-bit address (big endian) on the I2C device. - `uint16_t timeout` The time in milliseconds to wait for a response from the target device. -#### Return Value :id=api-i2c-read-register16-return +#### Return Value {#api-i2c-read-register16-return} `I2C_STATUS_TIMEOUT` if the timeout period elapses, `I2C_STATUS_ERROR` if some other error occurs, otherwise `I2C_STATUS_SUCCESS`. --- -### `i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)` :id=api-i2c-ping-address +### `i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)` {#api-i2c-ping-address} Pings the I2C bus for a specific address. diff --git a/docs/index.html b/docs/index.html deleted file mode 100644 index 4827024bdc7..00000000000 --- a/docs/index.html +++ /dev/null @@ -1,147 +0,0 @@ - - - - - QMK Firmware - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - diff --git a/docs/README.md b/docs/index.md similarity index 76% rename from docs/README.md rename to docs/index.md index 9330f0facee..91f27a8a803 100644 --- a/docs/README.md +++ b/docs/index.md @@ -8,21 +8,25 @@ QMK (*Quantum Mechanical Keyboard*) is an open source community centered around
-?> **Basic** [QMK Configurator](newbs_building_firmware_configurator.md)
+::: tip +**Basic** [QMK Configurator](newbs_building_firmware_configurator)
+::: User friendly graphical interfaces, no programming knowledge required. -?> **Advanced** [Use The Source](newbs.md)
+::: tip +**Advanced** [Use The Source](newbs)
+::: More powerful, but harder to use.
## Make It Yours -QMK has lots of features to explore, and a good deal of reference documentation to dig through. Most features are taken advantage of by modifying your [keymap](keymap.md), and changing the [keycodes](keycodes.md). +QMK has lots of features to explore, and a good deal of reference documentation to dig through. Most features are taken advantage of by modifying your [keymap](keymap), and changing the [keycodes](keycodes). ## Need help? -Check out the [support page](support.md) to see how you can get help using QMK. +Check out the [support page](support) to see how you can get help using QMK. ## Give Back @@ -32,6 +36,5 @@ There are a lot of ways you can contribute to the QMK Community. The easiest way * [/r/olkb](https://www.reddit.com/r/olkb/) * [Discord Server](https://discord.gg/Uq7gcHh) * Contribute to our documentation by clicking "Edit This Page" at the bottom -* [Translate our documentation into your language](translating.md) * [Report a bug](https://github.com/qmk/qmk_firmware/issues/new/choose) -* [Open a Pull Request](contributing.md) +* [Open a Pull Request](contributing) diff --git a/docs/internals/defines.md b/docs/internals/defines.md deleted file mode 100644 index fdcb553589b..00000000000 --- a/docs/internals/defines.md +++ /dev/null @@ -1,78 +0,0 @@ -# group `defines` {#group__defines} - -## Summary - - Members | Descriptions ---------------------------------|--------------------------------------------- -`define `[`SYSEX_BEGIN`](#group__defines_1ga1a3c39bb790dda8a368c4247caabcf79) | -`define `[`SYSEX_END`](#group__defines_1ga753706d1d28e6f96d7caf1973e80feed) | -`define `[`MIDI_STATUSMASK`](#group__defines_1gab78a1c818a5f5dab7a8946543f126c69) | -`define `[`MIDI_CHANMASK`](#group__defines_1ga239edc0a6f8405d3a8f2804f1590b909) | -`define `[`MIDI_CC`](#group__defines_1ga45f116a1daab76b3c930c2cecfaef215) | -`define `[`MIDI_NOTEON`](#group__defines_1gafd416f27bf3590868c0c1f55c30be4c7) | -`define `[`MIDI_NOTEOFF`](#group__defines_1gabed24bea2d989fd655e2ef2ad0765adc) | -`define `[`MIDI_AFTERTOUCH`](#group__defines_1ga3a322d8cfd53576a2e167c1840551b0f) | -`define `[`MIDI_PITCHBEND`](#group__defines_1gabcc799504e8064679bca03f232223af4) | -`define `[`MIDI_PROGCHANGE`](#group__defines_1gaefb3f1595ffbb9db66b46c2c919a3d42) | -`define `[`MIDI_CHANPRESSURE`](#group__defines_1gaeb3281cc7fcd0daade8ed3d2dfc33dbe) | -`define `[`MIDI_CLOCK`](#group__defines_1gafa5e4e295aafd15ab7893344599b3b89) | -`define `[`MIDI_TICK`](#group__defines_1ga3b99408ff864613765d4c3c2ceb52aa7) | -`define `[`MIDI_START`](#group__defines_1ga8233631c85823aa546f932ad8975caa4) | -`define `[`MIDI_CONTINUE`](#group__defines_1gab24430f0081e27215b0da84dd0ee745c) | -`define `[`MIDI_STOP`](#group__defines_1ga3af9271d4b1f0d22904a0b055f48cf62) | -`define `[`MIDI_ACTIVESENSE`](#group__defines_1gacd88ed42dba52bb4b2052c5656362677) | -`define `[`MIDI_RESET`](#group__defines_1ga02947f30ca62dc332fdeb10c5868323b) | -`define `[`MIDI_TC_QUARTERFRAME`](#group__defines_1gaaa072f33590e236d1bfd8f28e833ae31) | -`define `[`MIDI_SONGPOSITION`](#group__defines_1ga412f6ed33a2150051374bee334ee1705) | -`define `[`MIDI_SONGSELECT`](#group__defines_1gafcab254838b028365ae0259729e72c4e) | -`define `[`MIDI_TUNEREQUEST`](#group__defines_1ga8100b907b8c0a84e58b1c53dcd9bd795) | -`define `[`SYSEX_EDUMANUFID`](#group__defines_1ga5ef855ed955b00a2239ca16afbeb164f) | - -## Members - -#### `define `[`SYSEX_BEGIN`](#group__defines_1ga1a3c39bb790dda8a368c4247caabcf79) {#group__defines_1ga1a3c39bb790dda8a368c4247caabcf79} - -#### `define `[`SYSEX_END`](#group__defines_1ga753706d1d28e6f96d7caf1973e80feed) {#group__defines_1ga753706d1d28e6f96d7caf1973e80feed} - -#### `define `[`MIDI_STATUSMASK`](#group__defines_1gab78a1c818a5f5dab7a8946543f126c69) {#group__defines_1gab78a1c818a5f5dab7a8946543f126c69} - -#### `define `[`MIDI_CHANMASK`](#group__defines_1ga239edc0a6f8405d3a8f2804f1590b909) {#group__defines_1ga239edc0a6f8405d3a8f2804f1590b909} - -#### `define `[`MIDI_CC`](#group__defines_1ga45f116a1daab76b3c930c2cecfaef215) {#group__defines_1ga45f116a1daab76b3c930c2cecfaef215} - -#### `define `[`MIDI_NOTEON`](#group__defines_1gafd416f27bf3590868c0c1f55c30be4c7) {#group__defines_1gafd416f27bf3590868c0c1f55c30be4c7} - -#### `define `[`MIDI_NOTEOFF`](#group__defines_1gabed24bea2d989fd655e2ef2ad0765adc) {#group__defines_1gabed24bea2d989fd655e2ef2ad0765adc} - -#### `define `[`MIDI_AFTERTOUCH`](#group__defines_1ga3a322d8cfd53576a2e167c1840551b0f) {#group__defines_1ga3a322d8cfd53576a2e167c1840551b0f} - -#### `define `[`MIDI_PITCHBEND`](#group__defines_1gabcc799504e8064679bca03f232223af4) {#group__defines_1gabcc799504e8064679bca03f232223af4} - -#### `define `[`MIDI_PROGCHANGE`](#group__defines_1gaefb3f1595ffbb9db66b46c2c919a3d42) {#group__defines_1gaefb3f1595ffbb9db66b46c2c919a3d42} - -#### `define `[`MIDI_CHANPRESSURE`](#group__defines_1gaeb3281cc7fcd0daade8ed3d2dfc33dbe) {#group__defines_1gaeb3281cc7fcd0daade8ed3d2dfc33dbe} - -#### `define `[`MIDI_CLOCK`](#group__defines_1gafa5e4e295aafd15ab7893344599b3b89) {#group__defines_1gafa5e4e295aafd15ab7893344599b3b89} - -#### `define `[`MIDI_TICK`](#group__defines_1ga3b99408ff864613765d4c3c2ceb52aa7) {#group__defines_1ga3b99408ff864613765d4c3c2ceb52aa7} - -#### `define `[`MIDI_START`](#group__defines_1ga8233631c85823aa546f932ad8975caa4) {#group__defines_1ga8233631c85823aa546f932ad8975caa4} - -#### `define `[`MIDI_CONTINUE`](#group__defines_1gab24430f0081e27215b0da84dd0ee745c) {#group__defines_1gab24430f0081e27215b0da84dd0ee745c} - -#### `define `[`MIDI_STOP`](#group__defines_1ga3af9271d4b1f0d22904a0b055f48cf62) {#group__defines_1ga3af9271d4b1f0d22904a0b055f48cf62} - -#### `define `[`MIDI_ACTIVESENSE`](#group__defines_1gacd88ed42dba52bb4b2052c5656362677) {#group__defines_1gacd88ed42dba52bb4b2052c5656362677} - -#### `define `[`MIDI_RESET`](#group__defines_1ga02947f30ca62dc332fdeb10c5868323b) {#group__defines_1ga02947f30ca62dc332fdeb10c5868323b} - -#### `define `[`MIDI_TC_QUARTERFRAME`](#group__defines_1gaaa072f33590e236d1bfd8f28e833ae31) {#group__defines_1gaaa072f33590e236d1bfd8f28e833ae31} - -#### `define `[`MIDI_SONGPOSITION`](#group__defines_1ga412f6ed33a2150051374bee334ee1705) {#group__defines_1ga412f6ed33a2150051374bee334ee1705} - -#### `define `[`MIDI_SONGSELECT`](#group__defines_1gafcab254838b028365ae0259729e72c4e) {#group__defines_1gafcab254838b028365ae0259729e72c4e} - -#### `define `[`MIDI_TUNEREQUEST`](#group__defines_1ga8100b907b8c0a84e58b1c53dcd9bd795) {#group__defines_1ga8100b907b8c0a84e58b1c53dcd9bd795} - -#### `define `[`SYSEX_EDUMANUFID`](#group__defines_1ga5ef855ed955b00a2239ca16afbeb164f) {#group__defines_1ga5ef855ed955b00a2239ca16afbeb164f} - diff --git a/docs/internals/input_callback_reg.md b/docs/internals/input_callback_reg.md deleted file mode 100644 index 4ea132a83a8..00000000000 --- a/docs/internals/input_callback_reg.md +++ /dev/null @@ -1,169 +0,0 @@ -# group `input_callback_reg` {#group__input__callback__reg} - -These are the functions you use to register your input callbacks. - -The functions are called when the appropriate midi message is matched on the associated device's input. - -## Summary - - Members | Descriptions ---------------------------------|--------------------------------------------- -`public void `[`midi_register_cc_callback`](#group__input__callback__reg_1ga64ab672abbbe393c9c4a83110c8df718)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | Register a control change message (cc) callback. -`public void `[`midi_register_noteon_callback`](#group__input__callback__reg_1ga3962f276c17618923f1152779552103e)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | Register a note on callback. -`public void `[`midi_register_noteoff_callback`](#group__input__callback__reg_1gac847b66051bd6d53b762958be0ec4c6d)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | Register a note off callback. -`public void `[`midi_register_aftertouch_callback`](#group__input__callback__reg_1gaa95bc901bd9edff956a667c9a69dd01f)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | Register an after touch callback. -`public void `[`midi_register_pitchbend_callback`](#group__input__callback__reg_1ga071a28f02ba14f53de219be70ebd9a48)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | Register a pitch bend callback. -`public void `[`midi_register_songposition_callback`](#group__input__callback__reg_1gaf2adfd79637f3553d8f26deb1ca22ed6)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | Register a song position callback. -`public void `[`midi_register_progchange_callback`](#group__input__callback__reg_1gae6ba1a35a4cde9bd15dd42f87401d127)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` | Register a program change callback. -`public void `[`midi_register_chanpressure_callback`](#group__input__callback__reg_1ga39b31f1f4fb93917ce039b958f21b4f5)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` | Register a channel pressure callback. -`public void `[`midi_register_songselect_callback`](#group__input__callback__reg_1gaf9aafc76a2dc4b9fdbb4106cbda6ce72)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` | Register a song select callback. -`public void `[`midi_register_tc_quarterframe_callback`](#group__input__callback__reg_1ga0a119fada2becc628cb15d753b257e6e)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` | Register a tc quarter frame callback. -`public void `[`midi_register_realtime_callback`](#group__input__callback__reg_1ga764f440e857b89084b1a07f9da2ff93a)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_one_byte_func_t func)` | Register a realtime callback. -`public void `[`midi_register_tunerequest_callback`](#group__input__callback__reg_1gae40ff3ce20bda79fef87da24b8321cb1)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_one_byte_func_t func)` | Register a tune request callback. -`public void `[`midi_register_sysex_callback`](#group__input__callback__reg_1ga63ce9631b025785c1848d0122d4c4c48)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_sysex_func_t func)` | Register a sysex callback. -`public void `[`midi_register_fallthrough_callback`](#group__input__callback__reg_1ga7ed189164aa9682862b3181153afbd94)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t func)` | Register fall through callback. -`public void `[`midi_register_catchall_callback`](#group__input__callback__reg_1ga9dbfed568d047a6cd05708f11fe39e99)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t func)` | Register a catch all callback. - -## Members - -#### `public void `[`midi_register_cc_callback`](#group__input__callback__reg_1ga64ab672abbbe393c9c4a83110c8df718)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1ga64ab672abbbe393c9c4a83110c8df718} - -Register a control change message (cc) callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_noteon_callback`](#group__input__callback__reg_1ga3962f276c17618923f1152779552103e)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1ga3962f276c17618923f1152779552103e} - -Register a note on callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_noteoff_callback`](#group__input__callback__reg_1gac847b66051bd6d53b762958be0ec4c6d)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1gac847b66051bd6d53b762958be0ec4c6d} - -Register a note off callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_aftertouch_callback`](#group__input__callback__reg_1gaa95bc901bd9edff956a667c9a69dd01f)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1gaa95bc901bd9edff956a667c9a69dd01f} - -Register an after touch callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_pitchbend_callback`](#group__input__callback__reg_1ga071a28f02ba14f53de219be70ebd9a48)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1ga071a28f02ba14f53de219be70ebd9a48} - -Register a pitch bend callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_songposition_callback`](#group__input__callback__reg_1gaf2adfd79637f3553d8f26deb1ca22ed6)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1gaf2adfd79637f3553d8f26deb1ca22ed6} - -Register a song position callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_progchange_callback`](#group__input__callback__reg_1gae6ba1a35a4cde9bd15dd42f87401d127)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` {#group__input__callback__reg_1gae6ba1a35a4cde9bd15dd42f87401d127} - -Register a program change callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_chanpressure_callback`](#group__input__callback__reg_1ga39b31f1f4fb93917ce039b958f21b4f5)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` {#group__input__callback__reg_1ga39b31f1f4fb93917ce039b958f21b4f5} - -Register a channel pressure callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_songselect_callback`](#group__input__callback__reg_1gaf9aafc76a2dc4b9fdbb4106cbda6ce72)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` {#group__input__callback__reg_1gaf9aafc76a2dc4b9fdbb4106cbda6ce72} - -Register a song select callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_tc_quarterframe_callback`](#group__input__callback__reg_1ga0a119fada2becc628cb15d753b257e6e)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` {#group__input__callback__reg_1ga0a119fada2becc628cb15d753b257e6e} - -Register a tc quarter frame callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_realtime_callback`](#group__input__callback__reg_1ga764f440e857b89084b1a07f9da2ff93a)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_one_byte_func_t func)` {#group__input__callback__reg_1ga764f440e857b89084b1a07f9da2ff93a} - -Register a realtime callback. - -The callback will be called for all of the real time message types. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_tunerequest_callback`](#group__input__callback__reg_1gae40ff3ce20bda79fef87da24b8321cb1)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_one_byte_func_t func)` {#group__input__callback__reg_1gae40ff3ce20bda79fef87da24b8321cb1} - -Register a tune request callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_sysex_callback`](#group__input__callback__reg_1ga63ce9631b025785c1848d0122d4c4c48)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_sysex_func_t func)` {#group__input__callback__reg_1ga63ce9631b025785c1848d0122d4c4c48} - -Register a sysex callback. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_fallthrough_callback`](#group__input__callback__reg_1ga7ed189164aa9682862b3181153afbd94)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t func)` {#group__input__callback__reg_1ga7ed189164aa9682862b3181153afbd94} - -Register fall through callback. - -This is only called if a more specific callback is not matched and called. For instance, if you don't register a note on callback but you get a note on message the fall through callback will be called, if it is registered. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - -#### `public void `[`midi_register_catchall_callback`](#group__input__callback__reg_1ga9dbfed568d047a6cd05708f11fe39e99)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t func)` {#group__input__callback__reg_1ga9dbfed568d047a6cd05708f11fe39e99} - -Register a catch all callback. - -If registered, the catch all callback is called for every message that is matched, even if a more specific or the fallthrough callback is registered. - -#### Parameters -* `device` the device associate with - -* `func` the callback function to register - diff --git a/docs/internals/midi_device.md b/docs/internals/midi_device.md deleted file mode 100644 index 5b57abd4546..00000000000 --- a/docs/internals/midi_device.md +++ /dev/null @@ -1,143 +0,0 @@ -# group `midi_device` {#group__midi__device} - -You use the functions when you are implementing your own midi device. - -You set a send function to actually send bytes via your device, this method is called when you call a send function with this device, for instance midi_send_cc - -You use the midi_device_input to process input data from the device and pass it through the device's associated callbacks. - -You use the midi_device_set_pre_input_process_func if you want to have a function called at the beginning of the device's process function, generally to poll for input and pass that into midi_device_input - -## Summary - - Members | Descriptions ---------------------------------|--------------------------------------------- -`define `[`MIDI_INPUT_QUEUE_LENGTH`](#group__midi__device_1ga4aaa419caebdca2bbdfc1331e79781a8) | -`enum `[`input_state_t`](#group__midi__device_1gac203e877d3df4275ceb8e7180a61f621) | -`public void `[`midi_device_input`](#group__midi__device_1gad8d3db8eb35d9cfa51ef036a0a9d70db)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t cnt,uint8_t * input)` | Process input bytes. This function parses bytes and calls the appropriate callbacks associated with the given device. You use this function if you are creating a custom device and you want to have midi input. -`public void `[`midi_device_set_send_func`](#group__midi__device_1ga59f5a46bdd4452f186cc73d9e96d4673)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t send_func)` | Set the callback function that will be used for sending output data bytes. This is only used if you're creating a custom device. You'll most likely want the callback function to disable interrupts so that you can call the various midi send functions without worrying about locking. -`public void `[`midi_device_set_pre_input_process_func`](#group__midi__device_1ga4de0841b87c04fc23cb56b6451f33b69)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_no_byte_func_t pre_process_func)` | Set a callback which is called at the beginning of the midi_device_process call. This can be used to poll for input data and send the data through the midi_device_input function. You'll probably only use this if you're creating a custom device. -`struct `[`_midi_device`](docs/api_midi_device.md#struct__midi__device) | This structure represents the input and output functions and processing data for a midi device. - -## Members - -#### `define `[`MIDI_INPUT_QUEUE_LENGTH`](#group__midi__device_1ga4aaa419caebdca2bbdfc1331e79781a8) {#group__midi__device_1ga4aaa419caebdca2bbdfc1331e79781a8} - -#### `enum `[`input_state_t`](#group__midi__device_1gac203e877d3df4275ceb8e7180a61f621) {#group__midi__device_1gac203e877d3df4275ceb8e7180a61f621} - - Values | Descriptions ---------------------------------|--------------------------------------------- -IDLE | -ONE_BYTE_MESSAGE | -TWO_BYTE_MESSAGE | -THREE_BYTE_MESSAGE | -SYSEX_MESSAGE | - -#### `public void `[`midi_device_input`](#group__midi__device_1gad8d3db8eb35d9cfa51ef036a0a9d70db)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t cnt,uint8_t * input)` {#group__midi__device_1gad8d3db8eb35d9cfa51ef036a0a9d70db} - -Process input bytes. This function parses bytes and calls the appropriate callbacks associated with the given device. You use this function if you are creating a custom device and you want to have midi input. - -#### Parameters -* `device` the midi device to associate the input with - -* `cnt` the number of bytes you are processing - -* `input` the bytes to process - -#### `public void `[`midi_device_set_send_func`](#group__midi__device_1ga59f5a46bdd4452f186cc73d9e96d4673)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t send_func)` {#group__midi__device_1ga59f5a46bdd4452f186cc73d9e96d4673} - -Set the callback function that will be used for sending output data bytes. This is only used if you're creating a custom device. You'll most likely want the callback function to disable interrupts so that you can call the various midi send functions without worrying about locking. - -#### Parameters -* `device` the midi device to associate this callback with - -* `send_func` the callback function that will do the sending - -#### `public void `[`midi_device_set_pre_input_process_func`](#group__midi__device_1ga4de0841b87c04fc23cb56b6451f33b69)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_no_byte_func_t pre_process_func)` {#group__midi__device_1ga4de0841b87c04fc23cb56b6451f33b69} - -Set a callback which is called at the beginning of the midi_device_process call. This can be used to poll for input data and send the data through the midi_device_input function. You'll probably only use this if you're creating a custom device. - -#### Parameters -* `device` the midi device to associate this callback with - -* `midi_no_byte_func_t` the actual callback function - -# struct `_midi_device` {#struct__midi__device} - -This structure represents the input and output functions and processing data for a midi device. - -A device can represent an actual physical device [serial port, usb port] or something virtual. You should not need to modify this structure directly. - -## Summary - - Members | Descriptions ---------------------------------|--------------------------------------------- -`public midi_var_byte_func_t `[`send_func`](docs/api_midi_device.md#struct__midi__device_1a25d4c94b4bbccd5b98f1032b469f3ff9) | -`public midi_three_byte_func_t `[`input_cc_callback`](docs/api_midi_device.md#struct__midi__device_1a6da5236c1bc73877728df92d213a78d1) | -`public midi_three_byte_func_t `[`input_noteon_callback`](docs/api_midi_device.md#struct__midi__device_1aa10b15cf1a7fb825a5df0d2abbe34a1c) | -`public midi_three_byte_func_t `[`input_noteoff_callback`](docs/api_midi_device.md#struct__midi__device_1aaf290043078534d3a5a0ea4c840eba84) | -`public midi_three_byte_func_t `[`input_aftertouch_callback`](docs/api_midi_device.md#struct__midi__device_1acb0b4901c545cec4b28b126f2d8c315f) | -`public midi_three_byte_func_t `[`input_pitchbend_callback`](docs/api_midi_device.md#struct__midi__device_1a305fea672caeb996f2233bf8cd2bef18) | -`public midi_three_byte_func_t `[`input_songposition_callback`](docs/api_midi_device.md#struct__midi__device_1a5f3f13638b3fef3fc561ed1bf301d586) | -`public midi_two_byte_func_t `[`input_progchange_callback`](docs/api_midi_device.md#struct__midi__device_1adaf1da617c9a10a9dcad00ab1959d3da) | -`public midi_two_byte_func_t `[`input_chanpressure_callback`](docs/api_midi_device.md#struct__midi__device_1ab7ca2925c539915d43974eff604d85f7) | -`public midi_two_byte_func_t `[`input_songselect_callback`](docs/api_midi_device.md#struct__midi__device_1a89bed8a5a55376120cfc0a62b42f057f) | -`public midi_two_byte_func_t `[`input_tc_quarterframe_callback`](docs/api_midi_device.md#struct__midi__device_1ad9813e75d22e284f9f65a907d20600f0) | -`public midi_one_byte_func_t `[`input_realtime_callback`](docs/api_midi_device.md#struct__midi__device_1a9448eba4afb7e43650434748db3777be) | -`public midi_one_byte_func_t `[`input_tunerequest_callback`](docs/api_midi_device.md#struct__midi__device_1a0cb8fd53e00cf1d4202d4fa04d038e8d) | -`public midi_sysex_func_t `[`input_sysex_callback`](docs/api_midi_device.md#struct__midi__device_1afff9a0ce641762aaef24c1e6953ec9a2) | -`public midi_var_byte_func_t `[`input_fallthrough_callback`](docs/api_midi_device.md#struct__midi__device_1abb974ec6d734001b4a0e370f292be503) | -`public midi_var_byte_func_t `[`input_catchall_callback`](docs/api_midi_device.md#struct__midi__device_1aae0d535129d4fd650edc98eb3f7584f8) | -`public midi_no_byte_func_t `[`pre_input_process_callback`](docs/api_midi_device.md#struct__midi__device_1aeb0bb8923d66c23d874e177dc4265754) | -`public uint8_t `[`input_buffer`](docs/api_midi_device.md#struct__midi__device_1a7c5684857d6af4ebc4dc12da27bd6b2a) | -`public input_state_t `[`input_state`](docs/api_midi_device.md#struct__midi__device_1a69a687d2d1c449ec15a11c07a5722e39) | -`public uint16_t `[`input_count`](docs/api_midi_device.md#struct__midi__device_1a68dea8e7b6151e89c85c95caa612ee5d) | -`public uint8_t `[`input_queue_data`](docs/api_midi_device.md#struct__midi__device_1ada41de021135dc423abedcbb30f366ff) | -`public `[`byteQueue_t`](#structbyte_queue__t)` `[`input_queue`](#struct__midi__device_1a49c8538a8a02193c58e28a56eb695d8f) | - -## Members - -#### `public midi_var_byte_func_t `[`send_func`](docs/api_midi_device.md#struct__midi__device_1a25d4c94b4bbccd5b98f1032b469f3ff9) {#struct__midi__device_1a25d4c94b4bbccd5b98f1032b469f3ff9} - -#### `public midi_three_byte_func_t `[`input_cc_callback`](docs/api_midi_device.md#struct__midi__device_1a6da5236c1bc73877728df92d213a78d1) {#struct__midi__device_1a6da5236c1bc73877728df92d213a78d1} - -#### `public midi_three_byte_func_t `[`input_noteon_callback`](docs/api_midi_device.md#struct__midi__device_1aa10b15cf1a7fb825a5df0d2abbe34a1c) {#struct__midi__device_1aa10b15cf1a7fb825a5df0d2abbe34a1c} - -#### `public midi_three_byte_func_t `[`input_noteoff_callback`](docs/api_midi_device.md#struct__midi__device_1aaf290043078534d3a5a0ea4c840eba84) {#struct__midi__device_1aaf290043078534d3a5a0ea4c840eba84} - -#### `public midi_three_byte_func_t `[`input_aftertouch_callback`](docs/api_midi_device.md#struct__midi__device_1acb0b4901c545cec4b28b126f2d8c315f) {#struct__midi__device_1acb0b4901c545cec4b28b126f2d8c315f} - -#### `public midi_three_byte_func_t `[`input_pitchbend_callback`](docs/api_midi_device.md#struct__midi__device_1a305fea672caeb996f2233bf8cd2bef18) {#struct__midi__device_1a305fea672caeb996f2233bf8cd2bef18} - -#### `public midi_three_byte_func_t `[`input_songposition_callback`](docs/api_midi_device.md#struct__midi__device_1a5f3f13638b3fef3fc561ed1bf301d586) {#struct__midi__device_1a5f3f13638b3fef3fc561ed1bf301d586} - -#### `public midi_two_byte_func_t `[`input_progchange_callback`](docs/api_midi_device.md#struct__midi__device_1adaf1da617c9a10a9dcad00ab1959d3da) {#struct__midi__device_1adaf1da617c9a10a9dcad00ab1959d3da} - -#### `public midi_two_byte_func_t `[`input_chanpressure_callback`](docs/api_midi_device.md#struct__midi__device_1ab7ca2925c539915d43974eff604d85f7) {#struct__midi__device_1ab7ca2925c539915d43974eff604d85f7} - -#### `public midi_two_byte_func_t `[`input_songselect_callback`](docs/api_midi_device.md#struct__midi__device_1a89bed8a5a55376120cfc0a62b42f057f) {#struct__midi__device_1a89bed8a5a55376120cfc0a62b42f057f} - -#### `public midi_two_byte_func_t `[`input_tc_quarterframe_callback`](docs/api_midi_device.md#struct__midi__device_1ad9813e75d22e284f9f65a907d20600f0) {#struct__midi__device_1ad9813e75d22e284f9f65a907d20600f0} - -#### `public midi_one_byte_func_t `[`input_realtime_callback`](docs/api_midi_device.md#struct__midi__device_1a9448eba4afb7e43650434748db3777be) {#struct__midi__device_1a9448eba4afb7e43650434748db3777be} - -#### `public midi_one_byte_func_t `[`input_tunerequest_callback`](docs/api_midi_device.md#struct__midi__device_1a0cb8fd53e00cf1d4202d4fa04d038e8d) {#struct__midi__device_1a0cb8fd53e00cf1d4202d4fa04d038e8d} - -#### `public midi_sysex_func_t `[`input_sysex_callback`](docs/api_midi_device.md#struct__midi__device_1afff9a0ce641762aaef24c1e6953ec9a2) {#struct__midi__device_1afff9a0ce641762aaef24c1e6953ec9a2} - -#### `public midi_var_byte_func_t `[`input_fallthrough_callback`](docs/api_midi_device.md#struct__midi__device_1abb974ec6d734001b4a0e370f292be503) {#struct__midi__device_1abb974ec6d734001b4a0e370f292be503} - -#### `public midi_var_byte_func_t `[`input_catchall_callback`](docs/api_midi_device.md#struct__midi__device_1aae0d535129d4fd650edc98eb3f7584f8) {#struct__midi__device_1aae0d535129d4fd650edc98eb3f7584f8} - -#### `public midi_no_byte_func_t `[`pre_input_process_callback`](docs/api_midi_device.md#struct__midi__device_1aeb0bb8923d66c23d874e177dc4265754) {#struct__midi__device_1aeb0bb8923d66c23d874e177dc4265754} - -#### `public uint8_t `[`input_buffer`](docs/api_midi_device.md#struct__midi__device_1a7c5684857d6af4ebc4dc12da27bd6b2a) {#struct__midi__device_1a7c5684857d6af4ebc4dc12da27bd6b2a} - -#### `public input_state_t `[`input_state`](docs/api_midi_device.md#struct__midi__device_1a69a687d2d1c449ec15a11c07a5722e39) {#struct__midi__device_1a69a687d2d1c449ec15a11c07a5722e39} - -#### `public uint16_t `[`input_count`](docs/api_midi_device.md#struct__midi__device_1a68dea8e7b6151e89c85c95caa612ee5d) {#struct__midi__device_1a68dea8e7b6151e89c85c95caa612ee5d} - -#### `public uint8_t `[`input_queue_data`](docs/api_midi_device.md#struct__midi__device_1ada41de021135dc423abedcbb30f366ff) {#struct__midi__device_1ada41de021135dc423abedcbb30f366ff} - -#### `public `[`byteQueue_t`](#structbyte_queue__t)` `[`input_queue`](#struct__midi__device_1a49c8538a8a02193c58e28a56eb695d8f) {#struct__midi__device_1a49c8538a8a02193c58e28a56eb695d8f} - diff --git a/docs/internals/midi_device_setup_process.md b/docs/internals/midi_device_setup_process.md deleted file mode 100644 index ae82197c5c8..00000000000 --- a/docs/internals/midi_device_setup_process.md +++ /dev/null @@ -1,31 +0,0 @@ -# group `midi_device_setup_process` {#group__midi__device__setup__process} - -These are method that you must use to initialize and run a device. - -## Summary - - Members | Descriptions ---------------------------------|--------------------------------------------- -`public void `[`midi_device_init`](#group__midi__device__setup__process_1gaf29deddc94ea98a59daa0bde1aefd9d9)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Initialize a device. -`public void `[`midi_device_process`](#group__midi__device__setup__process_1gaa3d5993d0e998a1b59bbf5ab9c7b492b)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Process input data. - -## Members - -#### `public void `[`midi_device_init`](#group__midi__device__setup__process_1gaf29deddc94ea98a59daa0bde1aefd9d9)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__midi__device__setup__process_1gaf29deddc94ea98a59daa0bde1aefd9d9} - -Initialize a device. - -You must call this before using the device in question. - -#### Parameters -* `device` the device to initialize - -#### `public void `[`midi_device_process`](#group__midi__device__setup__process_1gaa3d5993d0e998a1b59bbf5ab9c7b492b)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__midi__device__setup__process_1gaa3d5993d0e998a1b59bbf5ab9c7b492b} - -Process input data. - -This method drives the input processing, you must call this method frequently if you expect to have your input callbacks called. - -#### Parameters -* `device` the device to process - diff --git a/docs/internals/midi_util.md b/docs/internals/midi_util.md deleted file mode 100644 index 97821bd1806..00000000000 --- a/docs/internals/midi_util.md +++ /dev/null @@ -1,54 +0,0 @@ -# group `midi_util` {#group__midi__util} - -## Summary - - Members | Descriptions ---------------------------------|--------------------------------------------- -`enum `[`midi_packet_length_t`](#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e) | An enumeration of the possible packet length values. -`public bool `[`midi_is_statusbyte`](#group__midi__util_1ga12e3b42ff9cbb4b4f2bc455fc8743ee5)`(uint8_t theByte)` | Test to see if the byte given is a status byte. -`public bool `[`midi_is_realtime`](#group__midi__util_1gad2f52c363e34a8000d80c983c324e2d7)`(uint8_t theByte)` | Test to see if the byte given is a realtime message. -`public `[`midi_packet_length_t`](#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e)` `[`midi_packet_length`](#group__midi__util_1gaa168b43af6ae9de0debce1625e4b8175)`(uint8_t status)` | Find the length of the packet associated with the status byte given. - -## Members - -#### `enum `[`midi_packet_length_t`](#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e) {#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e} - - Values | Descriptions ---------------------------------|--------------------------------------------- -UNDEFINED | -ONE | -TWO | -THREE | - -An enumeration of the possible packet length values. - -#### `public bool `[`midi_is_statusbyte`](#group__midi__util_1ga12e3b42ff9cbb4b4f2bc455fc8743ee5)`(uint8_t theByte)` {#group__midi__util_1ga12e3b42ff9cbb4b4f2bc455fc8743ee5} - -Test to see if the byte given is a status byte. - -#### Parameters -* `theByte` the byte to test - -#### Returns -true if the byte given is a midi status byte - -#### `public bool `[`midi_is_realtime`](#group__midi__util_1gad2f52c363e34a8000d80c983c324e2d7)`(uint8_t theByte)` {#group__midi__util_1gad2f52c363e34a8000d80c983c324e2d7} - -Test to see if the byte given is a realtime message. - -#### Parameters -* `theByte` the byte to test - -#### Returns -true if it is a realtime message, false otherwise - -#### `public `[`midi_packet_length_t`](#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e)` `[`midi_packet_length`](#group__midi__util_1gaa168b43af6ae9de0debce1625e4b8175)`(uint8_t status)` {#group__midi__util_1gaa168b43af6ae9de0debce1625e4b8175} - -Find the length of the packet associated with the status byte given. - -#### Parameters -* `status` the status byte - -#### Returns -the length of the packet, will return UNDEFINED if the byte is not a status byte or if it is a sysex status byte - diff --git a/docs/internals/send_functions.md b/docs/internals/send_functions.md deleted file mode 100644 index b331508008a..00000000000 --- a/docs/internals/send_functions.md +++ /dev/null @@ -1,241 +0,0 @@ -# group `send_functions` {#group__send__functions} - -These are the functions you use to send midi data through a device. - -## Summary - - Members | Descriptions ---------------------------------|--------------------------------------------- -`public void `[`midi_send_cc`](#group__send__functions_1gaaf884811c92df405ca8fe1a00082f960)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t val)` | Send a control change message (cc) via the given device. -`public void `[`midi_send_noteon`](#group__send__functions_1ga467bcf46dbf03ec269ce565b46bc2775)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t vel)` | Send a note on message via the given device. -`public void `[`midi_send_noteoff`](#group__send__functions_1gaedb7d8805425eef5d47d57ddcb4c7a49)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t vel)` | Send a note off message via the given device. -`public void `[`midi_send_aftertouch`](#group__send__functions_1ga0014847571317a0e34b2ef46a6bc584f)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t note_num,uint8_t amt)` | Send an after touch message via the given device. -`public void `[`midi_send_pitchbend`](#group__send__functions_1gae5a4a1e71611e7534be80af9ce3d3491)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,int16_t amt)` | Send a pitch bend message via the given device. -`public void `[`midi_send_programchange`](#group__send__functions_1ga7b15588ef25e5e1ff09c2afc3151ce86)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num)` | Send a program change message via the given device. -`public void `[`midi_send_channelpressure`](#group__send__functions_1gaf23e69fdf812e89c0036f51f88ab2e1b)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t amt)` | Send a channel pressure message via the given device. -`public void `[`midi_send_clock`](#group__send__functions_1ga4e1b11a7cdb0875f6e03ce7c79c581aa)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Send a clock message via the given device. -`public void `[`midi_send_tick`](#group__send__functions_1ga2b43c7d433d940c5b907595aac947972)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Send a tick message via the given device. -`public void `[`midi_send_start`](#group__send__functions_1ga1569749a8d58ccc56789289d7c7245cc)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Send a start message via the given device. -`public void `[`midi_send_continue`](#group__send__functions_1gaed5dc29d754a27372e89ab8bc20ee120)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Send a continue message via the given device. -`public void `[`midi_send_stop`](#group__send__functions_1ga026e1a620276cb653ac501aa0d12a988)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Send a stop message via the given device. -`public void `[`midi_send_activesense`](#group__send__functions_1ga9b6e4c6ce4719d2604187b325620db37)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Send an active sense message via the given device. -`public void `[`midi_send_reset`](#group__send__functions_1ga3671e39a6d93ca9568fc493001af1b1b)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Send a reset message via the given device. -`public void `[`midi_send_tcquarterframe`](#group__send__functions_1ga5b85639910eec280bb744c934d0fd45a)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t time)` | Send a tc quarter frame message via the given device. -`public void `[`midi_send_songposition`](#group__send__functions_1gab1c9eeef3b57a8cd2e6128d18e85eb7f)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t pos)` | Send a song position message via the given device. -`public void `[`midi_send_songselect`](#group__send__functions_1ga42de7838ba70d949af9a50f9facc3c50)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t song)` | Send a song select message via the given device. -`public void `[`midi_send_tunerequest`](#group__send__functions_1ga8db6c7e04d48e4d2266dd59118ca0656)`(`[`MidiDevice`](#struct__midi__device)` * device)` | Send a tune request message via the given device. -`public void `[`midi_send_byte`](#group__send__functions_1ga857e85eb90b288385642d4d991e09881)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t b)` | Send a byte via the given device. -`public void `[`midi_send_data`](#group__send__functions_1ga36e2f2e45369d911b76969361679054b)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t count,uint8_t byte0,uint8_t byte1,uint8_t byte2)` | Send up to 3 bytes of data. -`public void `[`midi_send_array`](#group__send__functions_1ga245243cb1da18d2cea18d4b18d846ead)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t count,uint8_t * array)` | Send an array of formatted midi data. - -## Members - -#### `public void `[`midi_send_cc`](#group__send__functions_1gaaf884811c92df405ca8fe1a00082f960)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t val)` {#group__send__functions_1gaaf884811c92df405ca8fe1a00082f960} - -Send a control change message (cc) via the given device. - -#### Parameters -* `device` the device to use for sending - -* `chan` the channel to send on, 0-15 - -* `num` the cc num - -* `val` the value of that cc num - -#### `public void `[`midi_send_noteon`](#group__send__functions_1ga467bcf46dbf03ec269ce565b46bc2775)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t vel)` {#group__send__functions_1ga467bcf46dbf03ec269ce565b46bc2775} - -Send a note on message via the given device. - -#### Parameters -* `device` the device to use for sending - -* `chan` the channel to send on, 0-15 - -* `num` the note number - -* `vel` the note velocity - -#### `public void `[`midi_send_noteoff`](#group__send__functions_1gaedb7d8805425eef5d47d57ddcb4c7a49)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t vel)` {#group__send__functions_1gaedb7d8805425eef5d47d57ddcb4c7a49} - -Send a note off message via the given device. - -#### Parameters -* `device` the device to use for sending - -* `chan` the channel to send on, 0-15 - -* `num` the note number - -* `vel` the note velocity - -#### `public void `[`midi_send_aftertouch`](#group__send__functions_1ga0014847571317a0e34b2ef46a6bc584f)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t note_num,uint8_t amt)` {#group__send__functions_1ga0014847571317a0e34b2ef46a6bc584f} - -Send an after touch message via the given device. - -#### Parameters -* `device` the device to use for sending - -* `chan` the channel to send on, 0-15 - -* `note_num` the note number - -* `amt` the after touch amount - -#### `public void `[`midi_send_pitchbend`](#group__send__functions_1gae5a4a1e71611e7534be80af9ce3d3491)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,int16_t amt)` {#group__send__functions_1gae5a4a1e71611e7534be80af9ce3d3491} - -Send a pitch bend message via the given device. - -#### Parameters -* `device` the device to use for sending - -* `chan` the channel to send on, 0-15 - -* `amt` the bend amount range: -8192..8191, 0 means no bend - -#### `public void `[`midi_send_programchange`](#group__send__functions_1ga7b15588ef25e5e1ff09c2afc3151ce86)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num)` {#group__send__functions_1ga7b15588ef25e5e1ff09c2afc3151ce86} - -Send a program change message via the given device. - -#### Parameters -* `device` the device to use for sending - -* `chan` the channel to send on, 0-15 - -* `num` the program to change to - -#### `public void `[`midi_send_channelpressure`](#group__send__functions_1gaf23e69fdf812e89c0036f51f88ab2e1b)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t amt)` {#group__send__functions_1gaf23e69fdf812e89c0036f51f88ab2e1b} - -Send a channel pressure message via the given device. - -#### Parameters -* `device` the device to use for sending - -* `chan` the channel to send on, 0-15 - -* `amt` the amount of channel pressure - -#### `public void `[`midi_send_clock`](#group__send__functions_1ga4e1b11a7cdb0875f6e03ce7c79c581aa)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga4e1b11a7cdb0875f6e03ce7c79c581aa} - -Send a clock message via the given device. - -#### Parameters -* `device` the device to use for sending - -#### `public void `[`midi_send_tick`](#group__send__functions_1ga2b43c7d433d940c5b907595aac947972)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga2b43c7d433d940c5b907595aac947972} - -Send a tick message via the given device. - -#### Parameters -* `device` the device to use for sending - -#### `public void `[`midi_send_start`](#group__send__functions_1ga1569749a8d58ccc56789289d7c7245cc)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga1569749a8d58ccc56789289d7c7245cc} - -Send a start message via the given device. - -#### Parameters -* `device` the device to use for sending - -#### `public void `[`midi_send_continue`](#group__send__functions_1gaed5dc29d754a27372e89ab8bc20ee120)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1gaed5dc29d754a27372e89ab8bc20ee120} - -Send a continue message via the given device. - -#### Parameters -* `device` the device to use for sending - -#### `public void `[`midi_send_stop`](#group__send__functions_1ga026e1a620276cb653ac501aa0d12a988)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga026e1a620276cb653ac501aa0d12a988} - -Send a stop message via the given device. - -#### Parameters -* `device` the device to use for sending - -#### `public void `[`midi_send_activesense`](#group__send__functions_1ga9b6e4c6ce4719d2604187b325620db37)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga9b6e4c6ce4719d2604187b325620db37} - -Send an active sense message via the given device. - -#### Parameters -* `device` the device to use for sending - -#### `public void `[`midi_send_reset`](#group__send__functions_1ga3671e39a6d93ca9568fc493001af1b1b)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga3671e39a6d93ca9568fc493001af1b1b} - -Send a reset message via the given device. - -#### Parameters -* `device` the device to use for sending - -#### `public void `[`midi_send_tcquarterframe`](#group__send__functions_1ga5b85639910eec280bb744c934d0fd45a)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t time)` {#group__send__functions_1ga5b85639910eec280bb744c934d0fd45a} - -Send a tc quarter frame message via the given device. - -#### Parameters -* `device` the device to use for sending - -* `time` the time of this quarter frame, range 0..16383 - -#### `public void `[`midi_send_songposition`](#group__send__functions_1gab1c9eeef3b57a8cd2e6128d18e85eb7f)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t pos)` {#group__send__functions_1gab1c9eeef3b57a8cd2e6128d18e85eb7f} - -Send a song position message via the given device. - -#### Parameters -* `device` the device to use for sending - -* `pos` the song position - -#### `public void `[`midi_send_songselect`](#group__send__functions_1ga42de7838ba70d949af9a50f9facc3c50)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t song)` {#group__send__functions_1ga42de7838ba70d949af9a50f9facc3c50} - -Send a song select message via the given device. - -#### Parameters -* `device` the device to use for sending - -* `song` the song to select - -#### `public void `[`midi_send_tunerequest`](#group__send__functions_1ga8db6c7e04d48e4d2266dd59118ca0656)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga8db6c7e04d48e4d2266dd59118ca0656} - -Send a tune request message via the given device. - -#### Parameters -* `device` the device to use for sending - -#### `public void `[`midi_send_byte`](#group__send__functions_1ga857e85eb90b288385642d4d991e09881)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t b)` {#group__send__functions_1ga857e85eb90b288385642d4d991e09881} - -Send a byte via the given device. - -This is a generic method for sending data via the given midi device. This would be useful for sending sysex data or messages that are not implemented in this API, if there are any. Please contact the author if you find some so we can add them. - -#### Parameters -* `device` the device to use for sending - -* `b` the byte to send - -#### `public void `[`midi_send_data`](#group__send__functions_1ga36e2f2e45369d911b76969361679054b)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t count,uint8_t byte0,uint8_t byte1,uint8_t byte2)` {#group__send__functions_1ga36e2f2e45369d911b76969361679054b} - -Send up to 3 bytes of data. - -% 4 is applied to count so that you can use this to pass sysex through - -#### Parameters -* `device` the device to use for sending - -* `count` the count of bytes to send, %4 is applied - -* `byte0` the first byte - -* `byte1` the second byte, ignored if cnt % 4 != 2 - -* `byte2` the third byte, ignored if cnt % 4 != 3 - -#### `public void `[`midi_send_array`](#group__send__functions_1ga245243cb1da18d2cea18d4b18d846ead)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t count,uint8_t * array)` {#group__send__functions_1ga245243cb1da18d2cea18d4b18d846ead} - -Send an array of formatted midi data. - -Can be used for sysex. - -#### Parameters -* `device` the device to use for sending - -* `count` the count of bytes to send - -* `array` the array of bytes - diff --git a/docs/internals/sysex_tools.md b/docs/internals/sysex_tools.md deleted file mode 100644 index 55dbe9e1644..00000000000 --- a/docs/internals/sysex_tools.md +++ /dev/null @@ -1,61 +0,0 @@ -# group `sysex_tools` {#group__sysex__tools} - -## Summary - - Members | Descriptions ---------------------------------|--------------------------------------------- -`public uint16_t `[`sysex_encoded_length`](#group__sysex__tools_1ga061e5607030412d6e62e2390d8013f0a)`(uint16_t decoded_length)` | Compute the length of a message after it is encoded. -`public uint16_t `[`sysex_decoded_length`](#group__sysex__tools_1ga121fc227d3acc1c0ea08c9a5c26fa3b0)`(uint16_t encoded_length)` | Compute the length of a message after it is decoded. -`public uint16_t `[`sysex_encode`](#group__sysex__tools_1ga54d77f8d32f92a6f329daefa2b314742)`(uint8_t * encoded,const uint8_t * source,uint16_t length)` | Encode data so that it can be transmitted safely in a sysex message. -`public uint16_t `[`sysex_decode`](#group__sysex__tools_1gaaad1d9ba2d5eca709a0ab4ba40662229)`(uint8_t * decoded,const uint8_t * source,uint16_t length)` | Decode encoded data. - -## Members - -#### `public uint16_t `[`sysex_encoded_length`](#group__sysex__tools_1ga061e5607030412d6e62e2390d8013f0a)`(uint16_t decoded_length)` {#group__sysex__tools_1ga061e5607030412d6e62e2390d8013f0a} - -Compute the length of a message after it is encoded. - -#### Parameters -* `decoded_length` The length, in bytes, of the message to encode. - -#### Returns -The length, in bytes, of the message after encodeing. - -#### `public uint16_t `[`sysex_decoded_length`](#group__sysex__tools_1ga121fc227d3acc1c0ea08c9a5c26fa3b0)`(uint16_t encoded_length)` {#group__sysex__tools_1ga121fc227d3acc1c0ea08c9a5c26fa3b0} - -Compute the length of a message after it is decoded. - -#### Parameters -* `encoded_length` The length, in bytes, of the encoded message. - -#### Returns -The length, in bytes, of the message after it is decoded. - -#### `public uint16_t `[`sysex_encode`](#group__sysex__tools_1ga54d77f8d32f92a6f329daefa2b314742)`(uint8_t * encoded,const uint8_t * source,uint16_t length)` {#group__sysex__tools_1ga54d77f8d32f92a6f329daefa2b314742} - -Encode data so that it can be transmitted safely in a sysex message. - -#### Parameters -* `encoded` The output data buffer, must be at least sysex_encoded_length(length) bytes long. - -* `source` The input buffer of data to be encoded. - -* `length` The number of bytes from the input buffer to encode. - -#### Returns -number of bytes encoded. - -#### `public uint16_t `[`sysex_decode`](#group__sysex__tools_1gaaad1d9ba2d5eca709a0ab4ba40662229)`(uint8_t * decoded,const uint8_t * source,uint16_t length)` {#group__sysex__tools_1gaaad1d9ba2d5eca709a0ab4ba40662229} - -Decode encoded data. - -#### Parameters -* `decoded` The output data buffer, must be at least sysex_decoded_length(length) bytes long. - -* `source` The input buffer of data to be decoded. - -* `length` The number of bytes from the input buffer to decode. - -#### Returns -number of bytes decoded. - diff --git a/docs/isp_flashing_guide.md b/docs/isp_flashing_guide.md index 80fd1ddda12..afebcc6ad65 100644 --- a/docs/isp_flashing_guide.md +++ b/docs/isp_flashing_guide.md @@ -33,7 +33,9 @@ To use a 5V/16MHz Pro Micro as an ISP flashing tool, you will first need to load |`16` (`B2`)|`MOSI` | |`14` (`B3`)|`MISO` | -!> Note that the `10` pin on the Pro Micro should be wired to the `RESET` pin on the keyboard's controller. ***DO NOT*** connect the `RESET` pin on the Pro Micro to the `RESET` on the keyboard. +::: warning +Note that the `10` pin on the Pro Micro should be wired to the `RESET` pin on the keyboard's controller. ***DO NOT*** connect the `RESET` pin on the Pro Micro to the `RESET` on the keyboard. +::: ### Arduino Uno / Micro as ISP @@ -66,7 +68,9 @@ A standard Uno or Micro can be used as an ISP flashing tool using the [example " |`16` (`B2`)|`MOSI` | |`14` (`B3`)|`MISO` | -!> Note that the `10` pin on the Uno/Micro should be wired to the `RESET` pin on the keyboard's controller. ***DO NOT*** connect the `RESET` pin on the Uno/Micro to the `RESET` on the keyboard. +::: warning +Note that the `10` pin on the Uno/Micro should be wired to the `RESET` pin on the keyboard's controller. ***DO NOT*** connect the `RESET` pin on the Uno/Micro to the `RESET` on the keyboard. +::: ### Teensy 2.0 as ISP @@ -89,7 +93,9 @@ To use a Teensy 2.0 as an ISP flashing tool, you will first need to load a [spec |`B2` |`MOSI` | |`B3` |`MISO` | -!> Note that the `B0` pin on the Teensy should be wired to the `RESET` pin on the keyboard's controller. ***DO NOT*** connect the `RESET` pin on the Teensy to the `RESET` on the keyboard. +::: warning +Note that the `B0` pin on the Teensy should be wired to the `RESET` pin on the keyboard's controller. ***DO NOT*** connect the `RESET` pin on the Teensy to the `RESET` on the keyboard. +::: ### SparkFun PocketAVR / USBtinyISP @@ -97,7 +103,9 @@ To use a Teensy 2.0 as an ISP flashing tool, you will first need to load a [spec [SparkFun PocketAVR](https://www.sparkfun.com/products/9825) [Adafruit USBtinyISP](https://www.adafruit.com/product/46) -!> SparkFun PocketAVR and USBtinyISP **DO NOT support** AVR chips with more than 64 KiB of flash (e.g., the AT90USB128 series). This limitation is mentioned on the [shop page for SparkFun PocketAVR](https://www.sparkfun.com/products/9825) and in the [FAQ for USBtinyISP](https://learn.adafruit.com/usbtinyisp/f-a-q#faq-2270879). If you try to use one of these programmers with AT90USB128 chips, you will get verification errors from `avrdude`, and the bootloader won't be flashed properly (e.g., see the [issue #3286](https://github.com/qmk/qmk_firmware/issues/3286)). +::: warning +SparkFun PocketAVR and USBtinyISP **DO NOT support** AVR chips with more than 64 KiB of flash (e.g., the AT90USB128 series). This limitation is mentioned on the [shop page for SparkFun PocketAVR](https://www.sparkfun.com/products/9825) and in the [FAQ for USBtinyISP](https://learn.adafruit.com/usbtinyisp/f-a-q#faq-2270879). If you try to use one of these programmers with AT90USB128 chips, you will get verification errors from `avrdude`, and the bootloader won't be flashed properly (e.g., see the [issue #3286](https://github.com/qmk/qmk_firmware/issues/3286)). +::: **AVRDUDE Programmer**: `usbtiny` **AVRDUDE Port**: `usb` @@ -137,7 +145,9 @@ To use a Teensy 2.0 as an ISP flashing tool, you will first need to load a [spec [Adafruit Bus Pirate](https://www.adafruit.com/product/237) -!> The 5-pin "ICSP" header is for ISP flashing the PIC microcontroller of the Bus Pirate. Connect your target board to the 10-pin header opposite the USB connector instead. +::: warning +The 5-pin "ICSP" header is for ISP flashing the PIC microcontroller of the Bus Pirate. Connect your target board to the 10-pin header opposite the USB connector instead. +::: **AVRDUDE Programmer**: `buspirate` **AVRDUDE Port**: Serial @@ -157,7 +167,7 @@ To use a Teensy 2.0 as an ISP flashing tool, you will first need to load a [spec [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) supports flashing both the ISP firmware and bootloader, but note that it cannot (currently) set the AVR fuse bytes for the actual ISP flashing step, so you may want to work with `avrdude` directly instead. -Setting up the [QMK environment](newbs.md) is highly recommended, as it automatically installs `avrdude` along with a host of other tools. +Setting up the [QMK environment](newbs) is highly recommended, as it automatically installs `avrdude` along with a host of other tools. ## Bootloader Firmware @@ -194,7 +204,9 @@ There are several variants depending on the vendor, but they all mostly work the |[Arduino Leonardo](https://github.com/arduino/ArduinoCore-avr/blob/master/bootloaders/caterina/Caterina-Leonardo.hex)* |`0xFF`|`0xD8`|`0xFB` |`2341:0036`| |[Arduino Micro](https://github.com/arduino/ArduinoCore-avr/blob/master/bootloaders/caterina/Caterina-Micro.hex)* |`0xFF`|`0xD8`|`0xFB` |`2341:0037`| -?> Files marked with a * have combined Arduino sketches, which runs by default and also appears as a serial port. However, this is *not* the bootloader device. +::: tip +Files marked with a * have combined Arduino sketches, which runs by default and also appears as a serial port. However, this is *not* the bootloader device. +::: ### BootloadHID (PS2AVRGB) @@ -273,7 +285,9 @@ avrdude done. Thank you. This is a slightly more advanced topic, but may be necessary if you are switching from one bootloader to another (for example, Caterina to Atmel/QMK DFU on a Pro Micro). Fuses control some of the low-level functionality of the AVR microcontroller, such as clock speed, whether JTAG is enabled, and the size of the section of flash memory reserved for the bootloader, among other things. You can find a fuse calculator for many AVR parts [here](https://www.engbedded.com/conffuse/). -!> **WARNING:** Setting incorrect fuse values, in particular the clock-related bits, may render the MCU practically unrecoverable without high voltage programming (not covered here)! Make sure to double check the commands you enter before you execute them. +::: warning +**WARNING:** Setting incorrect fuse values, in particular the clock-related bits, may render the MCU practically unrecoverable without high voltage programming (not covered here)! Make sure to double check the commands you enter before you execute them. +::: To set the fuses, add the following to the `avrdude` command: @@ -283,7 +297,9 @@ To set the fuses, add the following to the `avrdude` command: where the `lfuse`, `hfuse` and `efuse` arguments represent the low, high and extended fuse bytes as listed in the [Hardware](#hardware) section. -?> You may get a warning from `avrdude` that the extended fuse byte does not match what you provided when reading it back. If the second hex digit matches, this can usually be safely ignored, because the top four bits of this fuse do not actually exist on many AVR parts, and may read back as anything. +::: tip +You may get a warning from `avrdude` that the extended fuse byte does not match what you provided when reading it back. If the second hex digit matches, this can usually be safely ignored, because the top four bits of this fuse do not actually exist on many AVR parts, and may read back as anything. +::: ## Creating a "Production" Firmware diff --git a/docs/ja/README.md b/docs/ja/README.md deleted file mode 100644 index aefacbc414a..00000000000 --- a/docs/ja/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# Quantum Mechanical Keyboard Firmware - - - -[![現在のバージョン](https://img.shields.io/github/tag/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/tags) -[![Discord](https://img.shields.io/discord/440868230475677696.svg)](https://discord.gg/Uq7gcHh) -[![ドキュメントの状態](https://img.shields.io/badge/docs-ready-orange.svg)](https://docs.qmk.fm) -[![GitHub 貢献者](https://img.shields.io/github/contributors/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/pulse/monthly) -[![GitHub フォーク](https://img.shields.io/github/forks/qmk/qmk_firmware.svg?style=social&label=Fork)](https://github.com/qmk/qmk_firmware/) - -## QMK ファームウェアとは何でしょうか? - -QMK (*Quantum Mechanical Keyboard*)は、コンピュータ入力デバイスの開発を中心としたオープンソースコミュニティです。コミュニティには、キーボード、マウス、MIDI デバイスなど、全ての種類の入力デバイスが含まれます。協力者の中心グループは、[QMK ファームウェア](https://github.com/qmk/qmk_firmware)、[QMK Configurator](https://config.qmk.fm)、[QMK ツールボックス](https://github.com/qmk/qmk_toolbox)、[qmk.fm](https://qmk.fm)、そして、このドキュメントを、あなたのようなコミュニティメンバーの助けを借りて保守しています。 - -## 始めましょう - -QMK は初めてですか?始めるには2つの方法があります: - -* 基本: [QMK Configurator](https://config.qmk.fm) - * ドロップダウンからあなたのキーボードを選択し、キーボードをプログラムします。 - * 見ることができる [紹介ビデオ](https://www.youtube.com/watch?v=-imgglzDMdY) があります。 - * 読むことができる概要 [ドキュメント](ja/newbs_building_firmware_configurator.md) があります。 -* 発展: [ソースを使用します](ja/newbs.md) - * より強力ですが、使うのはより困難です。 - -## 自分用にアレンジします - -QMK には、探求すべき多くの[機能](ja/features.md)と、深く知るためのリファレンスドキュメントがたくさんあります。ほとんどの機能は[キーマップ](ja/keymap.md)を変更し、[キーコード](ja/keycodes.md)を変更することで活用されます。 - -## 手助けが必要ですか? - -[サポートページ](ja/support.md) をチェックして、QMK の使い方について手助けを得る方法を確認してください。 - -## 貢献する - -QMK コミュニティに貢献する方法はたくさんあります。始める最も簡単な方法は、それを使って友人に QMK という単語を広めることです。 - -* フォーラムやチャットルームで人々を支援します: - * [/r/olkb](https://www.reddit.com/r/olkb/) - * [Discord サーバ](https://discord.gg/Uq7gcHh) -* 下にある「Edit This Page」をクリックしてドキュメントに貢献します -* [ドキュメントをあなたの言語に翻訳します](ja/translating.md) -* [バグを報告します](https://github.com/qmk/qmk_firmware/issues/new/choose) -* [プルリクエストを開きます](ja/contributing.md) diff --git a/docs/ja/_summary.md b/docs/ja/_summary.md deleted file mode 100644 index f26665e6143..00000000000 --- a/docs/ja/_summary.md +++ /dev/null @@ -1,180 +0,0 @@ -* チュートリアル - * [入門](ja/newbs.md) - * [セットアップ](ja/newbs_getting_started.md) - * [初めてのファームウェアの構築](ja/newbs_building_firmware.md) - * [ファームウェアのフラッシュ](ja/newbs_flashing.md) - * [手助けを得る/サポート](ja/support.md) - * [他のリソース](ja/newbs_learn_more_resources.md) - * [シラバス](ja/syllabus.md) - -* FAQ - * [一般的な FAQ](ja/faq_general.md) - * [QMK のビルド/コンパイル](ja/faq_build.md) - * [QMK のデバッグ](ja/faq_debug.md) - * [QMK のトラブルシューティング](ja/faq_misc.md) - * [キーマップ FAQ](ja/faq_keymap.md) - * [用語](ja/reference_glossary.md) - -* Configurator - * [概要](ja/newbs_building_firmware_configurator.md) - * [ステップ・バイ・ステップ](ja/configurator_step_by_step.md) - * [トラブルシューティング](ja/configurator_troubleshooting.md) - * QMK API - * [概要](ja/api_overview.md) - * [API ドキュメント](ja/api_docs.md) - * [キーボードサポート](ja/reference_configurator_support.md) - * [デフォルトキーマップの追加](ja/configurator_default_keymaps.md) - -* CLI - * [概要](ja/cli.md) - * [設定](ja/cli_configuration.md) - * [コマンド](ja/cli_commands.md) - * [Tab 補完](ja/cli_tab_complete.md) - -* QMK を使う - * ガイド - * [機能のカスタマイズ](ja/custom_quantum_functions.md) - * [Zadig を使ったドライバのインストール](ja/driver_installation_zadig.md) - * [キーマップの概要](ja/keymap.md) - * 開発環境 - * [Docker のガイド](ja/getting_started_docker.md) - * 書き込み - * [書き込み](ja/flashing.md) - * [ATmega32A の書き込み (ps2avrgb)](ja/flashing_bootloadhid.md) - * IDE - * [QMK での Eclipse の使用](ja/other_eclipse.md) - * [QMK での VSCode の使用](ja/other_vscode.md) - * Git のベストプラクティス - * [入門](ja/newbs_git_best_practices.md) - * [フォーク](ja/newbs_git_using_your_master_branch.md) - * [マージの競合の解決](ja/newbs_git_resolving_merge_conflicts.md) - * [ブランチの修正](ja/newbs_git_resynchronize_a_branch.md) - * キーボードを作る - * [Hand Wiring ガイド](ja/hand_wire.md) - * [ISP 書き込みガイド](ja/isp_flashing_guide.md) - - * 単純なキーコード - * [完全なリスト](ja/keycodes.md) - * [基本的なキーコード](ja/keycodes_basic.md) - * [言語固有のキーコード](ja/reference_keymap_extras.md) - * [修飾キー](ja/feature_advanced_keycodes.md) - * [Quantum キーコード](ja/quantum_keycodes.md) - - * 高度なキーコード - * [コマンド](ja/feature_command.md) - * [動的マクロ](ja/feature_dynamic_macros.md) - * [グレイブ エスケープ](ja/feature_grave_esc.md) - * [リーダーキー](ja/feature_leader_key.md) - * [モッドタップ](ja/mod_tap.md) - * [マクロ](ja/feature_macros.md) - * [マウスキー](ja/feature_mouse_keys.md) - * [Repeat Key](ja/feature_repeat_key.md) - * [Space Cadet Shift](ja/feature_space_cadet.md) - * [US ANSI シフトキー](ja/keycodes_us_ansi_shifted.md) - - * ソフトウェア機能 - * [自動シフト](ja/feature_auto_shift.md) - * [コンボ](ja/feature_combo.md) - * [デバウンス API](ja/feature_debounce_type.md) - * [キーロック](ja/feature_key_lock.md) - * [レイヤー](ja/feature_layers.md) - * [ワンショットキー](ja/one_shot_keys.md) - * [ポインティング デバイス](ja/feature_pointing_device.md) - * [ロー HID](ja/feature_rawhid.md) - * [シーケンサー](ja/feature_sequencer.md) - * [スワップハンド](ja/feature_swap_hands.md) - * [タップダンス](ja/feature_tap_dance.md) - * [タップホールド設定](ja/tap_hold.md) - * [ユニコード](ja/feature_unicode.md) - * [ユーザスペース](ja/feature_userspace.md) - * [WPM 計算](ja/feature_wpm.md) - - * ハードウェア機能 - * 表示 - * [HD44780 LCD コントローラ](ja/feature_hd44780.md) - * [OLED ドライバ](ja/feature_oled_driver.md) - * 電飾 - * [バックライト](ja/feature_backlight.md) - * [LED マトリックス](ja/feature_led_matrix.md) - * [RGB ライト](ja/feature_rgblight.md) - * [RGB マトリックス](ja/feature_rgb_matrix.md) - * [オーディオ](ja/feature_audio.md) - * [Bluetooth](ja/feature_bluetooth.md) - * [ブートマジック](ja/feature_bootmagic.md) - * [カスタムマトリックス](ja/custom_matrix.md) - * [DIP スイッチ](ja/feature_dip_switch.md) - * [エンコーダ](ja/feature_encoders.md) - * [触覚フィードバック](ja/feature_haptic_feedback.md) - * [ジョイスティック](ja/feature_joystick.md) - * [LED インジケータ](ja/feature_led_indicators.md) - * [Proton C 変換](ja/proton_c_conversion.md) - * [PS/2 マウス](ja/feature_ps2_mouse.md) - * [分割キーボード](ja/feature_split_keyboard.md) - * [速記](ja/feature_stenography.md) - * [感熱式プリンタ](ja/feature_thermal_printer.md) - -* QMK の開発 - * [PR チェックリスト](ja/pr_checklist.md) - * 互換性を破る変更/Breaking changes - * [概要](ja/breaking_changes.md) - * [プルリクエストにフラグが付けられた](ja/breaking_changes_instructions.md) - * [最近の変更履歴](ChangeLog/20210227.md "QMK v0.12.0 - 2021 Feb 27") - * [過去の互換性を破る変更](ja/breaking_changes_history.md) - - * C 開発 - * [ARM デバッグ ガイド](ja/arm_debugging.md) - * [AVR プロセッサ](ja/hardware_avr.md) - * [コーディング規約](ja/coding_conventions_c.md) - * [互換性のあるマイクロコントローラ](ja/compatible_microcontrollers.md) - * [ドライバ](ja/hardware_drivers.md) - * [ADC ドライバ](ja/adc_driver.md) - * [オーディオドライバ](ja/audio_driver.md) - * [I2C ドライバ](ja/i2c_driver.md) - * [SPI ドライバ](ja/spi_driver.md) - * [WS2812 ドライバ](ja/ws2812_driver.md) - * [EEPROM ドライバ](ja/eeprom_driver.md) - * [シリアル ドライバ](ja/serial_driver.md) - * [UART ドライバ](ja/uart_driver.md) - * [GPIO 制御](ja/gpio_control.md) - * [キーボード ガイドライン](ja/hardware_keyboard_guidelines.md) - - * Python 開発 - * [コーディング規約](ja/coding_conventions_python.md) - * [QMK CLI 開発](ja/cli_development.md) - - * Configurator 開発 - * QMK API - * [開発環境](ja/api_development_environment.md) - * [アーキテクチャの概要](ja/api_development_overview.md) - - * ハードウェアプラットフォーム開発 - * Arm/ChibiOS - * [MCU の選択](ja/platformdev_selecting_arm_mcu.md) - * [早期初期化](ja/platformdev_chibios_earlyinit.md) - - * QMK Reference - * [QMK への貢献](ja/contributing.md) - * [QMK ドキュメントの翻訳](ja/translating.md) - * [設定オプション](ja/config_options.md) - * [データ駆動型コンフィギュレーション](ja/data_driven_config.md) - * [Make ドキュメント](ja/getting_started_make_guide.md) - * [ドキュメント ベストプラクティス](ja/documentation_best_practices.md) - * [ドキュメント テンプレート](ja/documentation_templates.md) - * [コミュニティレイアウト](ja/feature_layouts.md) - * [ユニットテスト](ja/unit_testing.md) - * [便利な関数](ja/ref_functions.md) - * [info.json 形式](ja/reference_info_json.md) - - * より深く知るために - * [キーボードがどのように動作するか](ja/how_keyboards_work.md) - * [マトリックスがどのように動作するか](ja/how_a_matrix_works.md) - * [QMK を理解する](ja/understanding_qmk.md) - - * QMK の内部詳細(作成中) - * [定義](ja/internals/defines.md) - * [入力コールバック登録](ja/internals/input_callback_reg.md) - * [Midi デバイス](ja/internals/midi_device.md) - * [Midi デバイスのセットアップ手順](ja/internals/midi_device_setup_process.md) - * [Midi ユーティリティ](ja/internals/midi_util.md) - * [Midi 送信関数](ja/internals/send_functions.md) - * [Sysex Tools](ja/internals/sysex_tools.md) diff --git a/docs/ja/adc_driver.md b/docs/ja/adc_driver.md deleted file mode 100644 index 0a531c8db9a..00000000000 --- a/docs/ja/adc_driver.md +++ /dev/null @@ -1,155 +0,0 @@ -# ADC ドライバ - - - -QMK は対応している MCU のアナログ・デジタルコンバータ(ADC) を使用し、特定のピンの電圧を計測することができます。この機能はデジタル出力の[ロータリーエンコーダ](ja/feature_encoders.md)などではなく、アナログ計測が必要な可変抵抗器を使用したボリュームコントロールや Bluetooth キーボードのバッテリー残量表示などの実装に役立ちます。 - -このドライバは現在 AVR と一部の ARM デバイスをサポートしています。返される値は 0V と VCC (通常 AVR の場合は 5V または 3.3V、ARM の場合は 3.3V)の間でマッピングされた 10ビットの整数 (0-1023) ですが、ARM の場合、もしもより精度が必要であれば `#define` を使うと操作をより柔軟に制御できます。 - -## 使い方 - -このドライバを使うには、`rules.mk` に以下を追加します: - -```make -SRC += analog.c -``` - -そして、コードの先頭に以下の include を置きます: - -```c -#include "analog.h" -``` - -## チャンネル - -### AVR - -|Channel|AT90USB64/128|ATmega16/32U4|ATmega32A|ATmega328/P| -|-------|-------------|-------------|---------|-----------| -|0 |`F0` |`F0` |`A0` |`C0` | -|1 |`F1` |`F1` |`A1` |`C1` | -|2 |`F2` | |`A2` |`C2` | -|3 |`F3` | |`A3` |`C3` | -|4 |`F4` |`F4` |`A4` |`C4` | -|5 |`F5` |`F5` |`A5` |`C5` | -|6 |`F6` |`F6` |`A6` |* | -|7 |`F7` |`F7` |`A7` |* | -|8 | |`D4` | | | -|9 | |`D6` | | | -|10 | |`D7` | | | -|11 | |`B4` | | | -|12 | |`B5` | | | -|13 | |`B6` | | | - -\* ATmega328/P には余分な2つの ADC チャンネルがありますが、DIP ピンアウトには存在せず、GPIO ピンとは共有されません。これらに直接アクセスするために、`adc_read()` を使えます。 - -### ARM - -これらのピンの一部は同じチャンネルを使って ADC 上でダブルアップされることに注意してください。これは、これらのピンがどちらかの ADC に使われる可能性があるからです。 - -また、F0 と F3 は異なるナンバリングスキーマを使うことに注意してください。F0 には1つの ADC があり、チャンネルは0から始まるインデックスですが、F3 には4つの ADC があり、チャンネルは1から始まるインデックスです。これは、F0 が ADC の `ADCv1` 実装を使用するのに対し、F3 が `ADCv3` 実装を使用するためです。 - -|ADC|Channel|STM32F0xx|STM32F3xx| -|---|-------|---------|---------| -|1 |0 |`A0` | | -|1 |1 |`A1` |`A0` | -|1 |2 |`A2` |`A1` | -|1 |3 |`A3` |`A2` | -|1 |4 |`A4` |`A3` | -|1 |5 |`A5` |`F4` | -|1 |6 |`A6` |`C0` | -|1 |7 |`A7` |`C1` | -|1 |8 |`B0` |`C2` | -|1 |9 |`B1` |`C3` | -|1 |10 |`C0` |`F2` | -|1 |11 |`C1` | | -|1 |12 |`C2` | | -|1 |13 |`C3` | | -|1 |14 |`C4` | | -|1 |15 |`C5` | | -|1 |16 | | | -|2 |1 | |`A4` | -|2 |2 | |`A5` | -|2 |3 | |`A6` | -|2 |4 | |`A7` | -|2 |5 | |`C4` | -|2 |6 | |`C0` | -|2 |7 | |`C1` | -|2 |8 | |`C2` | -|2 |9 | |`C3` | -|2 |10 | |`F2` | -|2 |11 | |`C5` | -|2 |12 | |`B2` | -|2 |13 | | | -|2 |14 | | | -|2 |15 | | | -|2 |16 | | | -|3 |1 | |`B1` | -|3 |2 | |`E9` | -|3 |3 | |`E13` | -|3 |4 | | | -|3 |5 | | | -|3 |6 | |`E8` | -|3 |7 | |`D10` | -|3 |8 | |`D11` | -|3 |9 | |`D12` | -|3 |10 | |`D13` | -|3 |11 | |`D14` | -|3 |12 | |`B0` | -|3 |13 | |`E7` | -|3 |14 | |`E10` | -|3 |15 | |`E11` | -|3 |16 | |`E12` | -|4 |1 | |`E14` | -|4 |2 | |`B12` | -|4 |3 | |`B13` | -|4 |4 | |`B14` | -|4 |5 | |`B15` | -|4 |6 | |`E8` | -|4 |7 | |`D10` | -|4 |8 | |`D11` | -|4 |9 | |`D12` | -|4 |10 | |`D13` | -|4 |11 | |`D14` | -|4 |12 | |`D8` | -|4 |13 | |`D9` | -|4 |14 | | | -|4 |15 | | | -|4 |16 | | | - -## 関数 - -### AVR - -|関数 |説明 | -|----------------------------|------------------------------------------------------------------------------------------------------------------------------------| -|`analogReference(mode)` |アナログの電圧リファレンスソースを設定する。`ADC_REF_EXTERNAL`、`ADC_REF_POWER`、`ADC_REF_INTERNAL` のいずれかでなければなりません。| -|`analogReadPin(pin)` |指定されたピンから値を読み取ります。例えば、ATmega32U4 の ADC6 の場合 `F6`。 | -|`pinToMux(pin)` |指定されたピンを mux 値に変換します。サポートされていないピンが指定された場合、"0V (GND)" の mux 値を返します。 | -|`adc_read(mux)` |指定された mux に従って ADC から値を読み取ります。詳細は、MCU のデータシートを見てください。 | - -### ARM - -|関数 |説明 | -|----------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -|`analogReadPin(pin)` |指定されたピンから値を読み取ります。STM32F0 では チャンネル 0 の `A0`、STM32F3 ではチャンネル 1 の ADC1。ピンを複数の ADC に使える場合は、この関数のために番号の小さい ADC が選択されることに注意してください。例えば、`C0` は、ADC2 にも使える場合、ADC1 のチャンネル 6 になります。 | -|`analogReadPinAdc(pin, adc)`|指定されたピンと ADC から値を読み取ります。例えば、`C0, 1` は、ADC1 ではなく ADC2 のチャンネル 6 から読み取ります。この関数では、ADC はインデックス 0 から始まることに注意してください。 | -|`pinToMux(pin)` |指定されたピンをチャンネルと ADC の組み合わせに変換します。サポートされていないピンが指定された場合、"0V (GND)" の mux 値を返します。 | -|`adc_read(mux)` |指定されたピンと ADC の組み合わせに応じて ADC から値を読み取ります。詳細は、MCU のデータシートを見てください。 | - -## 設定 - -## ARM - -ADC の ARM 実装には、独自のキーボードとキーマップでオーバーライドして動作方法を変更できる幾つかの追加オプションがあります。利用可能なオプションの詳細については、特定のマイクロコントローラについて ChibiOS の対応する `hal_adc_lld.h` を調べてください。 - -|`#define` |型 |既定値 |説明 | -|---------------------|------|---------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -|`ADC_CIRCULAR_BUFFER`|`bool`|`false` |`true` の場合、この実装は循環バッファを使います。 | -|`ADC_NUM_CHANNELS` |`int` |`1` |ADC 動作の一部としてスキャンされるチャンネル数を設定します。現在の実装は `1` のみをサポートします。 | -|`ADC_BUFFER_DEPTH` |`int` |`2` |各結果の深さを設定します。デフォルトでは12ビットの結果しか取得できないため、これを2バイトに設定して1つの値を含めることができます。8ビット以下の結果を選択した場合は、これを 1 に設定できます。 | -|`ADC_SAMPLING_RATE` |`int` |`ADC_SMPR_SMP_1P5` |ADC のサンプリングレートを設定します。デフォルトでは、最も速い設定に設定されています。 | -|`ADC_RESOLUTION` |`int` |`ADC_CFGR1_RES_12BIT`|結果の分解能。デフォルトでは12ビットを選択しますが、12、10、8、6ビットを選択できます。 | diff --git a/docs/ja/api_development_environment.md b/docs/ja/api_development_environment.md deleted file mode 100644 index 8dce1ba2fd6..00000000000 --- a/docs/ja/api_development_environment.md +++ /dev/null @@ -1,8 +0,0 @@ -# 開発環境のセットアップ - - - -開発環境をセットアップするには、[qmk_web_stack](https://github.com/qmk/qmk_web_stack) に行ってください。 diff --git a/docs/ja/api_development_overview.md b/docs/ja/api_development_overview.md deleted file mode 100644 index 0612507b4d8..00000000000 --- a/docs/ja/api_development_overview.md +++ /dev/null @@ -1,49 +0,0 @@ -# QMK コンパイラ開発ガイド - - - -このページでは、開発者に QMK コンパイラを紹介しようと思います。コードを読まなければならないような核心となる詳細に立ち入って調べることはしません。ここで得られるものは、コードを読んで理解を深めるためのフレームワークです。 - -# 概要 - -QMK Compile API は、いくつかの可動部分からできています: - -![構造図](https://raw.githubusercontent.com/qmk/qmk_api/master/docs/architecture.svg) - -API クライアントは API サービスと排他的にやりとりをします。ここでジョブをサブミットし、状態を調べ、結果をダウンロードします。API サービスはコンパイルジョブを [Redis Queue](https://python-rq.org) に挿入し、それらのジョブの結果について RQ と S3 の両方を調べます。 - -ワーカーは RQ から新しいコンパイルジョブを取り出し、ソースとバイナリを S3 互換のストレージエンジンにアップロードします。 - -# ワーカー - -QMK コンパイラワーカーは実際のビルド作業に責任を持ちます。ワーカーは RQ からジョブを取り出し、ジョブを完了するためにいくつかの事を行います: - -* 新しい qmk_firmware のチェックアウトを作成する -* 指定されたレイヤーとキーボードメタデータを使って `keymap.c` をビルドする -* ファームウェアをビルドする -* ソースのコピーを zip 形式で圧縮する -* ファームウェア、ソースの zip ファイル、メタデータファイルを S3 にアップロードする -* ジョブの状態を RQ に送信する - -# API サービス - -API サービスは比較的単純な Flask アプリケーションです。理解しておくべきことが幾つかあります。 - -## @app.route('/v1/compile', methods=['POST']) - -これは API の主なエントリーポイントです。クライアントとのやりとりはここから開始されます。クライアントはキーボードを表す JSON ドキュメントを POST し、API はコンパイルジョブをサブミットする前にいくらかの(とても)基本的な検証を行います。 - -## @app.route('/v1/compile/<string:job_id>', methods=['GET']) - -これは最もよく呼ばれるエンドポイントです。ジョブの詳細が redis から利用可能であればそれを取り出し、そうでなければ S3 からキャッシュされたジョブの詳細を取り出します。 - -## @app.route('/v1/compile/<string:job_id>/download', methods=['GET']) - -このメソッドによりユーザはコンパイルされたファームウェアファイルをダウンロードすることができます。 - -## @app.route('/v1/compile/<string:job_id>/source', methods=['GET']) - -このメソッドによりユーザはファームウェアのソースをダウンロードすることができます。 diff --git a/docs/ja/api_docs.md b/docs/ja/api_docs.md deleted file mode 100644 index 19d52a724a1..00000000000 --- a/docs/ja/api_docs.md +++ /dev/null @@ -1,73 +0,0 @@ -# QMK API - - - -このページは QMK API の使い方を説明します。もしあなたがアプリケーション開発者であれば、全ての [QMK](https://qmk.fm) キーボードのファームウェアをコンパイルするために、この API を使うことができます。 - -## 概要 - -このサービスは、カスタムキーマップをコンパイルするための非同期 API です。API に 何らかの JSON を POST し、定期的に状態をチェックし、ファームウェアのコンパイルが完了していれば、結果のファームウェアと(もし希望すれば)そのファームウェアのソースコードをダウンロードすることができます。 - -#### JSON ペイロードの例: - -```json -{ - "keyboard": "clueboard/66/rev2", - "keymap": "my_awesome_keymap", - "layout": "LAYOUT_all", - "layers": [ - ["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_GRV","KC_BSPC","KC_PGUP","KC_TAB","KC_Q","KC_W","KC_E","KC_R","KC_T","KC_Y","KC_U","KC_I","KC_O","KC_P","KC_LBRC","KC_RBRC","KC_BSLS","KC_PGDN","KC_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_LSFT","KC_NUBS","KC_Z","KC_X","KC_C","KC_V","KC_B","KC_N","KC_M","KC_COMM","KC_DOT","KC_SLSH","KC_RO","KC_RSFT","KC_UP","KC_LCTL","KC_LGUI","KC_LALT","KC_MHEN","KC_SPC","KC_SPC","KC_HENK","KC_RALT","KC_RCTL","MO(1)","KC_LEFT","KC_DOWN","KC_RIGHT"], - ["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_TRNS","KC_DEL","BL_STEP","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","_______","KC_TRNS","KC_PSCR","KC_SCRL","KC_PAUS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(2)","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_PGUP","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(1)","KC_LEFT","KC_PGDN","KC_RGHT"], - ["KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","QK_BOOT","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(2)","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(1)","KC_TRNS","KC_TRNS","KC_TRNS"] - ] -} -``` - -ご覧のとおり、ペイロードにはファームウェアを作成および生成するために必要なキーボードの全ての側面を記述します。各レイヤーは QMK キーコードの1つのリストで、キーボードの `LAYOUT` マクロと同じ長さです。もしキーボードが複数の `LAYOUT` マクロをサポートする場合、どのマクロを使うかを指定することができます。 - -## コンパイルジョブのサブミット - -キーマップをファームウェアにコンパイルするには、単純に JSON を `/v1/compile` エンドポイントに POST します。以下の例では、JSON ペイロードを `json_data` という名前のファイルに配置しています。 - -``` -$ curl -H "Content-Type: application/json" -X POST -d "$(< json_data)" https://api.qmk.fm/v1/compile -{ - "enqueued": true, - "job_id": "ea1514b3-bdfc-4a7b-9b5c-08752684f7f6" -} -``` - -## 状態のチェック - -キーマップをサブミットした後で、簡単な HTTP GET 呼び出しを使って状態をチェックすることができます: - -``` -$ curl https://api.qmk.fm/v1/compile/ea1514b3-bdfc-4a7b-9b5c-08752684f7f6 -{ - "created_at": "Sat, 19 Aug 2017 21:39:12 GMT", - "enqueued_at": "Sat, 19 Aug 2017 21:39:12 GMT", - "id": "f5f9b992-73b4-479b-8236-df1deb37c163", - "status": "running", - "result": null -} -``` - -これは、ジョブをキューに入れることに成功し、現在実行中であることを示しています。5つの状態がありえます: - -* **failed**: なんらかの理由でコンパイルサービスが失敗しました。 -* **finished**: コンパイルが完了し、結果を見るには `result` をチェックする必要があります。 -* **queued**: キーマップはコンパイルサーバが利用可能になるのを待っています。 -* **running**: コンパイルが進行中で、まもなく完了するはずです。 -* **unknown**: 深刻なエラーが発生し、[バグを報告](https://github.com/qmk/qmk_compiler/issues)する必要があります。 - -## 完了した結果を検証 - -コンパイルジョブが完了したら、`result` キーをチェックします。このキーの値は幾つかの情報を含むハッシュです: - -* `firmware_binary_url`: 書き込み可能なファームウェアの URL のリスト -* `firmware_keymap_url`: `keymap.c` の URL のリスト -* `firmware_source_url`: ファームウェアの完全なソースコードの URL のリスト -* `output`: このコンパイルジョブの stdout と stderr。エラーはここで見つけることができます。 diff --git a/docs/ja/api_overview.md b/docs/ja/api_overview.md deleted file mode 100644 index e563bdd1035..00000000000 --- a/docs/ja/api_overview.md +++ /dev/null @@ -1,20 +0,0 @@ -# QMK API - - - -QMK API は、Web と GUI ツールが [QMK](https://qmk.fm/) によってサポートされるキーボード用の任意のキーマップをコンパイルするために使うことができる、非同期 API を提供します。標準のキーマップテンプレートは、C コードのサポートを必要としない全ての QMK キーコードをサポートします。キーボードのメンテナは独自のカスタムテンプレートを提供して、より多くの機能を実現することができます。 - -## アプリケーション開発者 - -もしあなたがアプリケーションでこの API を使うことに興味があるアプリケーション開発者であれば、[API の使用](ja/api_docs.md) に行くべきです。 - -## キーボードのメンテナ - -もし QMK Compiler API でのあなたのキーボードのサポートを強化したい場合は、[キーボードサポート](ja/reference_configurator_support.md) の節に行くべきです。 - -## バックエンド開発者 - -もし API 自体に取り組むことに興味がある場合は、[開発環境](ja/api_development_environment.md)のセットアップから始め、それから [API のハッキング](ja/api_development_overview.md) を調べるべきです。 diff --git a/docs/ja/arm_debugging.md b/docs/ja/arm_debugging.md deleted file mode 100644 index afb5c4e0e6a..00000000000 --- a/docs/ja/arm_debugging.md +++ /dev/null @@ -1,92 +0,0 @@ -# Eclipse を使った ARM デバッグ - - - -このページでは、SWD アダプタとオープンソース/フリーツールを使って ARM MCU をデバッグするためのセットアップ方法について説明します。このガイドでは、GNU MCU Eclipse IDE for C/C++ Developers および OpenOCD を必要な依存関係と一緒にインストールします。 - -このガイドは上級者向けであり、あなたのマシンで、MAKE フローを使って、ARM 互換キーボードをコンパイルできることを前提にしています。 - -## ソフトウェアのインストール - -ここでの主な目的は MCU Eclipse IDE を正しくマシンにインストールすることです。必要な手順は[この](https://gnu-mcu-eclipse.github.io/install/)インストールガイドから派生しています。 - -### xPack マネージャ - -このツールはソフトウェアパッケージマネージャであり、必要な依存関係を取得するために使われます。 - -XPM は Node.js を使って実行されるため、[ここ](https://nodejs.org/en/)から取得してください。インストール後に、ターミナルを開き `npm -v` と入力します。バージョン番号が返ってくるとインストールは成功です。 - -XPM のインストール手順は[ここ](https://www.npmjs.com/package/xpm)で見つけることができ、OS 固有のものです。ターミナルに `xpm --version` と入力すると、ソフトウェアのバージョンが返ってくるはずです。 - -### ARM ツールチェーン - -XPM を使うと、ARM ツールチェーンをとても簡単にインストールできます。`xpm install --global @xpack-dev-tools/arm-none-eabi-gcc` とコマンドを入力します。 - -### Windows ビルドツール - -Windows を使っている場合は、これをインストールする必要があります! - -`xpm install --global @gnu-mcu-eclipse/windows-build-tools` - -### プログラマ/デバッガドライバ - -プログラマのドライバをインストールします。このチュートリアルはほとんどどこでも入手できる ST-Link v2 を使って作成されました。 -ST-Link を持っている場合は、ドライバは[ここ](https://www.st.com/en/development-tools/stsw-link009.html)で見つけることができます。そうでない場合はツールの製造元にお問い合わせください。 - -### OpenOCD - -この依存関係により、SWD は GDB からアクセスでき、デバッグに不可欠です。`xpm install --global @xpack-dev-tools/openocd` を実行します。 - -### Java - -Java は Eclipse で必要とされるため、[ここ](https://www.oracle.com/technetwork/java/javase/downloads/index.html)からダウンロードしてください。 - -### GNU MCU Eclipse IDE - -最後に IDE をインストールする番です。[ここ](https://github.com/gnu-mcu-eclipse/org.eclipse.epp.packages/releases/)のリリースページから最新バージョンを取得します。 - -## Eclipse の設定 - -ダウンロードした Eclipse IDE を開きます。QMK ディレクトリをインポートするために、File -> Import -> C/C++ -> Existing Code as Makefile Project を選択します。Next を選択し、Browse を使用して QMK フォルダを選択します。tool-chain リストから ARM Cross GCC を選択し、Finish を選択します。 - -これで、左側に QMK フォルダが表示されます。右クリックして、Properties を選択します。左側で MCU を展開し、ARM Toolchains Paths を選択します。xPack を押して OK を押します。OpenOCD Path で同じことを繰り返し、Windows の場合は、Build Tools Path でも同じことを繰り返します。Apply and Close を選択します。 - -ここで、必要な MCU パッケージをインストールします。Window -> Perspective -> Open Perspective -> Other... -> Packs を選択して、Packs perspective に移動します。Packs タブの横にある黄色のリフレッシュ記号を選択します。これは様々な場所から MCU の定義を要求するため、時間が掛かります。一部のリンクが失敗した場合は、おそらく Ignore を選択できます。 - -これが終了すると、ビルドやデバッグする MCU を見つけることができるはずです。この例では、STM32F3 シリーズの MCU を使います。左側で、STMicroelectronics -> STM32F3 Series を選択します。中央のウィンドウに、pack が表示されます。右クリックし、Install を選択します。それが終了したら、Window -> Perspective -> Open Perspective -> Other... -> C/C++ を選択してデフォルトのパースペクティブに戻ることができます。 - -Eclipse に QMK をビルドしようとするデバイスを教える必要があります。QMK フォルダを右クリック -> Properties -> C/C++ Build -> Settings を選択します。Devices タブを選択し、Devices の下から MCU の適切な種類を選択します。私の例では、STM32F303CC です。 - -この間に、Build コマンドもセットアップしましょう。C/C++ Build を選択し、Behavior タブを選択します。Build コマンドのところで、`all` を必要な make コマンドに置き換えます。例えば、rev6 Planck の default キーマップの場合、これは `planck/rev6:default` になります。Apply and Close を選択します。 - -## ビルド - -全て正しくセットアップできていれば、ハンマーボタンを押すとファームウェアがビルドされ、.bin ファイルが出力されるはずです。 - -## デバッグ - -### デバッガの接続 - -ARM MCU は、クロック信号(SWCLK) とデータ信号(SWDIO) で構成される Single Wire Debug (SWD) プロトコルを使います。MCU を完全に操作するには、この2本のワイヤとグラウンドを接続するだけで十分です。ここでは、キーボードは USB を介して電力が供給されると想定しています。手動でリセットボタンを使えるため、RESET 信号は必要ありません。より高度なセットアップのために printf と scanf をホストに非同期にパイプする SWO 信号を使用できますが、私たちのセットアップでは無視します。 - -注意: SWCLK と SWDIO ピンがキーボードのマトリックスで使われていないことを確認してください。もし使われている場合は、一時的に他のピンに切り替えることができます。 - -### デバッガの設定 - -QMK フォルダを右クリックし、Debug As -> Debug Configurations... を選択します。ここで、GDB OpenOCD Debugging をダブルクリックします。Debugger タブを選択し、MCU に必要な設定を入力します。これを見つけるにはいじったりググったりする必要があるかもしれません。STM32F3 用のデフォルトスクリプトは `stm32f3discovery.cfg` と呼ばれます。OpenOCD に伝えるには、Config options で `-f board/stm32f3discovery.cfg` と入力します。 - -注意: 私の場合、この設定スクリプトはリセット操作を無効にするために編集が必要です。スクリプトの場所は、通常はパス `openocd/version/.content/scripts/board` の下の実際の実行可能フィールドの中で見つかります。ここで、私は `reset_config srst_only` を `reset_config none` に編集しました。 - -Apply and Close を選択します。 - -### デバッガの実行 - -キーボードをリセットしてください。 - -虫アイコンをクリックし、もし全てうまく行けば Debug パースペクティブに移動します。ここでは、main 関数の最初でプログラムカウンタが停止し、Play ボタンが押されるのを待ちます。全てのデバッガのほとんどの機能は Arm MCU で動作しますが、正確な詳細については Google があなたのお友達です! - - -ハッピーデバッギング! diff --git a/docs/ja/breaking_changes.md b/docs/ja/breaking_changes.md deleted file mode 100644 index 35f58378973..00000000000 --- a/docs/ja/breaking_changes.md +++ /dev/null @@ -1,120 +0,0 @@ -# Breaking changes/互換性を破る変更 - - - -このドキュメントは QMK の互換性を破る変更(Breaking change) のプロセスについて説明します。 -互換性を破る変更とは、互換性がなかったり潜在的な危険が生じるように QMK の動作を変える変更を指します。 -ユーザが QMK ツリーを更新しても自分のキーマップが壊れない事を確信できるように、これらの変更を制限します。(訳注:以後、原文のまま Breaking change を用語として使用します。) - -Breaking change ピリオドとは、危険な変更、または予想外の変更を QMK へ行なう PR をマージする時のことです。 -付随するテスト期間があるため、問題が起きることはまれか、有りえないと確信しています。 - -## 過去の Breaking change には何が含まれますか? - -* [2020年8月29日](ja/ChangeLog/20200829.md) -* [2020年5月30日](ja/ChangeLog/20200530.md) -* [2020年2月29日](ja/ChangeLog/20200229.md) -* [2019年8月30日](ja/ChangeLog/20190830.md) - -## 次の Breaking change はいつですか? - -次の Breaking change は2020年11月28日に予定されています。 - -### 重要な日付 - -* [x] 2020年 8月29日 - `develop` が作成されました。毎週リベースされます。 -* [ ] 2020年10月31日 - `develop` は新しいPRを取り込みません。 -* [ ] 2020年10月31日 - テスターの募集。 -* [ ] 2020年11月26日 - `master`がロックされ、PR はマージされません。 -* [ ] 2020年11月28日 - `develop` を `master` にマージします。 -* [ ] 2020年11月28日 - `master` のロックが解除されます。PR を再びマージすることができます。 - -## どのような変更が含まれますか? - -最新の Breaking change 候補を見るには、[`breaking_change` ラベル](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+label%3Abreaking_change+is%3Apr)を参照してください。 -現在から `develop` が閉じられるまでの間に新しい変更が追加される可能性があり、そのラベルが適用された PR はマージされることは保証されていません。 - -このラウンドに、あなたの Breaking change を含めたい場合は、`breaking_change` ラベルを持つ PR を作成し、`develop` が閉じる前に承認してもらう必要があります。 -`develop` が閉じた後は、新しい Breaking change は受け付けられません。 - -受け入れの基準: - -* PR が完了し、マージの準備ができている -* PR が ChangeLog を持つ - -# チェックリスト - -ここでは、Breaking change プロセスを実行する時に使用する様々なプロセスについて説明します。 - -## `master` から `develop` をリベースします - -これは `develop` が開いている間、毎週金曜日に実行されます。 - -プロセス: - -``` -cd qmk_firmware -git checkout master -git pull --ff-only -git checkout develop -git rebase master -git push --force -``` - -## `develop` ブランチの作成 - -以前の `develop` ブランチがマージされた直後に、これが発生します。 - -* `qmk_firmware` git commands - * [ ] `git checkout master` - * [ ] `git pull --ff-only` - * [ ] `git checkout -b develop` - * [ ] Edit `readme.md` - * [ ] これがテストブランチであることを上部に大きな通知で追加します。 - * [ ] このドキュメントへのリンクを含めます - * [ ] `git commit -m 'Branch point for Breaking Change'` - * [ ] `git tag breakpoint___
` - * [ ] `git tag ` # ブレーキング ポイント タグがバージョンの増分を混乱させないようにします - * [ ] `git push origin develop` - * [ ] `git push --tags` - -## マージの 4 週間前 - -* `develop` は新しい PR に対して閉じられ、現在の PR の修正のみがマージされる可能性があります。 -* テスターの呼び出しを投稿します - * [ ] Discord - * [ ] GitHub PR - * [ ] https://reddit.com/r/olkb - -## マージの 1 週間前 - -* master が < 2 日前> から <マージの日> まで閉じられることを発表します - * [ ] Discord - * [ ] GitHub PR - * [ ] https://reddit.com/r/olkb - -## マージの 2 日前 - -* master が 2 日間閉じられることを発表します - * [ ] Discord - * [ ] GitHub PR - * [ ] https://reddit.com/r/olkb - -## マージの日 - -* `qmk_firmware` git commands - * [ ] `git checkout develop` - * [ ] `git pull --ff-only` - * [ ] `git rebase origin/master` - * [ ] Edit `readme.md` - * [ ] `develop` についてのメモを削除 - * [ ] ChangeLog を 1 つのファイルにまとめます。 - * [ ] `git commit -m 'Merge point for Breaking Change'` - * [ ] `git push origin develop` -* GitHub Actions - * [ ] `develop`の PR を作成します - * [ ] `develop` PR をマージします diff --git a/docs/ja/breaking_changes_instructions.md b/docs/ja/breaking_changes_instructions.md deleted file mode 100644 index 69d17d73c5f..00000000000 --- a/docs/ja/breaking_changes_instructions.md +++ /dev/null @@ -1,51 +0,0 @@ -# breaking changes/互換性を破る変更: プルリクエストにフラグが付けられた - - - -QMK のメンバーがあなたのプルリクエストに返信し、あなたの提出したものは Breaking change (互換性を破る変更) であると述べている場合があります。メンバーの判断では、あなたが提案した変更は QMK やその利用者にとってより大きな影響を持つと考えられます。 - -プルリクエストにフラグが立てられる原因となるものには、以下のようなものがあります: - -- **ユーザーのキーマップに対する編集** - ユーザーが自分のキーマップを QMK に提出した後、しばらくしてさらに更新してプルリクエストを開いたところ、それが `qmk/qmk_firmware` リポジトリで編集されていたためにマージできなかったことに気づくことがあるかもしれません。すべてのユーザーが Git や GitHub を使いこなせるわけではないので、ユーザー自身で問題を修正できないことに気づくかもしれません。 -- **期待される動作の変更** - QMK の動作を変更すると、既存の QMK 機能への変更を組み込んだ新しいファームウェアをフラッシュした場合、ユーザはハードウェアまたは QMK が壊れていると考え、希望する動作を復元する手段がないことに気付くことがあります。 -- **ユーザーのアクションを必要とする変更** - 変更には、ツールチェインを更新したり、Git で何らかのアクションを取るなど、ユーザーがアクションを行う必要がある場合もあります。 -- **精査が必要な変更** - 時には、投稿がプロジェクトとしての QMK に影響を与えることもあります。これは、著作権やライセンスの問題、コーディング規約、大規模な機能のオーバーホール、コミュニティによるより広範なテストを必要とする「リスクの高い」変更、あるいは全く別のものである可能性があります。 -- **エンドユーザーとのコミュニケーションを必要とする変更** - これには、将来の非推奨化への警告、時代遅れの慣習、その他伝えなければならないが上記のカテゴリのどれかに当てはまらないものが含まれます。 - -## 何をすればいいのか? - -提出したものが Breaking change だと判断された場合、手続きをスムーズに進めるためにできることがいくつかあります。 - -### PR を分割することを検討する - -あなたがコアコードを投稿していて、それが Breaking change プロセスを経る必要がある唯一の理由が、あなたの変更に合わせてキーマップを更新していることである場合、古いキーマップが機能し続けるような方法であなたの機能を投稿できるかどうかを検討してください。 -そののち、Breaking change プロセスを経て古いコードを削除する別の PR を提出してください。 - -### ChangeLog エントリの提供 - -Breaking change プロセスを経て提出する際には、変更ログのエントリを含めることを我々は要請します。 -エントリーは、あなたのプルリクエストが行う変更の短い要約としてください – [ここの各セクションは changelog として開始されました](ja/ChangeLog/20190830.md "n.b. This should link to the 2019 Aug 30 Breaking Changes doc - @noroadsleft")。 - -変更ログは `docs/ChangeLog/YYYYMMDD/PR####.md` に置いてください。 -ここで、`YYYYMMDD` は QMK の breaking change ブランチ – 通常は `develop` という名称 – が `master` ブランチにマージされる日付、`####` はプルリクエストの番号です。 - -ユーザー側でのアクションを必要とする場合、あなたの変更ログは、どのようなアクションを取らなければならないかをユーザーに指示するか、そのようなアクションを指示する場所にリンクする必要があります。 - -### 変更点を文書化する - -提出物の目的を理解し、それが必要とする可能性のある意味合いやアクションを理解することで、レビュープロセスをより簡単にすることができます。この目的のためには変更履歴で十分かもしれませんが、より広範囲の変更を行う場合には、変更履歴には不向きな詳細レベルが必要になるかもしれません。 - -あなたのプルリクエストにコメントしたり、質問やコメント、変更要求に対応したりすることは、非常にありがたいことです。 - -### 助けを求める - -あなたの提出物にフラグが立ったことで、あなたはびっくりしてしまったかもしれません。もし、あなた自身が脅されたり、圧倒されたりしていると感じたら、私たちに知らせてください。プルリクエストにコメントするか、[Discord で QMK チームに連絡を取ってください](https://discord.gg/Uq7gcHh)。 diff --git a/docs/ja/cli.md b/docs/ja/cli.md deleted file mode 100644 index 9e8169a84e0..00000000000 --- a/docs/ja/cli.md +++ /dev/null @@ -1,43 +0,0 @@ -# QMK CLI :id=qmk-cli - - - -## 概要 :id=overview - -QMK CLI を使用すると QMK キーボードの構築と作業が簡単になります。QMK ファームウェアの取得とコンパイル、キーマップの作成などのようなタスクを簡素化し合理化するためのコマンドを多く提供します。 - -### 必要事項 :id=requirements - -QMK は Python 3.6 以上を必要とします。我々は必要事項の数を少なくしようとしていますが、[`requirements.txt`](https://github.com/qmk/qmk_firmware/blob/master/requirements.txt) に列挙されているパッケージもインストールする必要があります。これらは QMK CLI をインストールするときに自動的にインストールされます。 - -### Homebrew を使ったインストール (macOS、いくつかの Linux) :id=install-using-homebrew - -[Homebrew](https://brew.sh) をインストールしている場合は、タップして QMK をインストールすることができます: - -``` -brew install qmk/qmk/qmk -export QMK_HOME='~/qmk_firmware' # オプション、`qmk_firmware` の場所を設定します -qmk setup # これは `qmk/qmk_firmware` をクローンし、オプションでビルド環境をセットアップします -``` - -### pip を使ってインストール :id=install-using-easy_install-or-pip - -上で列挙した中にあなたのシステムがない場合は、QMK を手動でインストールすることができます。最初に、python 3.6 (以降)をインストールしていて、pip をインストールしていることを確認してください。次に以下のコマンドを使って QMK をインストールします: - -``` -python3 -m pip install qmk -export QMK_HOME='~/qmk_firmware' # オプション、`qmk_firmware` の場所を設定します -qmk setup # これは `qmk/qmk_firmware` をクローンし、オプションでビルド環境をセットアップします -``` - -### 他のオペレーティングシステムのためのパッケージ :id=packaging-for-other-operating-systems - -より多くのオペレーティングシステム用に `qmk` パッケージを作成および保守する人を探しています。OS 用のパッケージを作成する場合は、以下のガイドラインに従ってください: - -* これらのガイドラインと矛盾する場合は、OS のベストプラクティスに従ってください - * 逸脱する場合は、理由をコメントに文章化してください。 -* virtualenv を使ってインストールしてください -* 環境変数 `QMK_HOME` を設定して、ファームウェアソースを `~/qmk_firmware` 以外のどこかにチェックアウトするようにユーザに指示してください。 diff --git a/docs/ja/cli_commands.md b/docs/ja/cli_commands.md deleted file mode 100644 index b48de077cd3..00000000000 --- a/docs/ja/cli_commands.md +++ /dev/null @@ -1,296 +0,0 @@ -# QMK CLI コマンド - - - -# ユーザー用コマンド - -## `qmk compile` - -このコマンドにより、任意のディレクトリからファームウェアをコンパイルすることができます。 からエクスポートした JSON をコンパイルするか、リポジトリ内でキーマップをコンパイルするか、現在の作業ディレクトリでキーボードをコンパイルすることができます。 - -このコマンドはディレクトリを認識します。キーボードやキーマップのディレクトリにいる場合、自動的に KEYBOARD や KEYMAP を入力します。 - -**Configurator Exports での使い方**: - -``` -qmk compile -``` - -**キーマップでの使い方**: - -``` -qmk compile -kb -km -``` - -**キーボードディレクトリでの使い方**: - -default キーマップのあるキーボードディレクトリ、キーボードのキーマップディレクトリ、`--keymap ` で与えられるキーマップディレクトリにいなければなりません。 -``` -qmk compile -``` - -**指定したキーマップをサポートする全てのキーボードをビルドする場合の使い方**: - -``` -qmk compile -kb all -km -``` - -**例**: -``` -$ qmk config compile.keymap=default -$ cd ~/qmk_firmware/keyboards/planck/rev6 -$ qmk compile -Ψ Compiling keymap with make planck/rev6:default -... -``` -あるいはオプションのキーマップ引数を指定して - -``` -$ cd ~/qmk_firmware/keyboards/clueboard/66/rev4 -$ qmk compile -km 66_iso -Ψ Compiling keymap with make clueboard/66/rev4:66_iso -... -``` -あるいはキーマップディレクトリで - -``` -$ cd ~/qmk_firmware/keyboards/gh60/satan/keymaps/colemak -$ qmk compile -Ψ Compiling keymap with make gh60/satan:colemak -... -``` - -**レイアウトディレクトリでの使い方**: - -`qmk_firmware/layouts/` 以下のキーマップディレクトリにいなければなりません。 -``` -qmk compile -kb -``` - -**例**: -``` -$ cd ~/qmk_firmware/layouts/community/60_ansi/mechmerlin-ansi -$ qmk compile -kb dz60 -Ψ Compiling keymap with make dz60:mechmerlin-ansi -... -``` - -## `qmk flash` - -このコマンドは `qmk compile` に似ていますが、ブートローダを対象にすることもできます。ブートローダはオプションで、デフォルトでは `:flash` に設定されています。 -違うブートローダを指定するには、`-bl ` を使ってください。利用可能なブートローダの詳細については、[ファームウェアを書き込む](ja/flashing.md)を見てください。 - -このコマンドはディレクトリを認識します。キーボードやキーマップのディレクトリにいる場合、自動的に KEYBOARD や KEYMAP を入力します。 - -**Configurator Exports での使い方**: - -``` -qmk flash -bl -``` - -**キーマップでの使い方**: - -``` -qmk flash -kb -km -bl -``` - -**ブートローダの列挙** - -``` -qmk flash -b -``` - -## `qmk config` - -このコマンドにより QMK の挙動を設定することができます。完全な `qmk config` のドキュメントについては、[CLI 設定](ja/cli_configuration.md)を見てください。 - -**使用法**: - -``` -qmk config [-ro] [config_token1] [config_token2] [...] [config_tokenN] -``` - -## `qmk doctor` - -このコマンドは環境を調査し、潜在的なビルドあるいは書き込みの問題について警告します。必要に応じてそれらの多くを修正できます。 - -**使用法**: - -``` -qmk doctor [-y] [-n] -``` - -**例**: - -環境に問題がないか確認し、それらを修正するよう促します: - - qmk doctor - -環境を確認し、見つかった問題を自動的に修正します: - - qmk doctor -y - -環境を確認し、問題のみをレポートします: - - qmk doctor -n - -## `qmk info` - -QMK のキーボードやキーマップに関する情報を表示します。キーボードに関する情報を取得したり、レイアウトを表示したり、基礎となるキーマトリックスを表示したり、JSON キーマップをきれいに印刷したりするのに使用できます。 - -**使用法**: - -``` -qmk info [-f FORMAT] [-m] [-l] [-km KEYMAP] [-kb KEYBOARD] -``` - -このコマンドはディレクトリを認識します。キーボードやキーマップのディレクトリにいる場合、自動的に KEYBOARD や KEYMAP を入力します。 - -**例**: - -キーボードの基本情報を表示する: - - qmk info -kb planck/rev5 - -キーボードのマトリクスを表示する: - - qmk info -kb ergodox_ez -m - -キーボードの JSON キーマップを表示する: - - qmk info -kb clueboard/california -km default - -## `qmk json2c` - -QMK Configurator からエクスポートしたものから keymap.c を生成します。 - -**使用法**: - -``` -qmk json2c [-o OUTPUT] filename -``` - -## `qmk list-keyboards` - -このコマンドは現在 `qmk_firmware` で定義されている全てのキーボードを列挙します。 - -**使用法**: - -``` -qmk list-keyboards -``` - -## `qmk list-keymaps` - -このコマンドは指定されたキーボード(とリビジョン)の全てのキーマップを列挙します。 - -このコマンドはディレクトリを認識します。キーボードのディレクトリにいる場合、自動的に KEYBOARD を入力します。 - -**使用法**: - -``` -qmk list-keymaps -kb planck/ez -``` - -## `qmk new-keymap` - -このコマンドは、キーボードの既存のデフォルトのキーマップに基づいて新しいキーマップを作成します。 - -このコマンドはディレクトリを認識します。キーボードやキーマップのディレクトリにいる場合、自動的に KEYBOARD や KEYMAP を入力します。 - -**使用法**: - -``` -qmk new-keymap [-kb KEYBOARD] [-km KEYMAP] -``` - ---- - -# 開発者用コマンド - -## `qmk format-c` - -このコマンドは clang-format を使って C コードを整形します。 - -引数無しで実行すると、変更された全てのコアコードを整形します。デフォルトでは `git diff` で `origin/master` をチェックし、ブランチは `-b ` を使って変更できます。 - -`-a` で全てのコアコードを整形するか、コマンドラインでファイル名を渡して特定のファイルに対して実行します。 - -**指定したファイルに対する使い方**: - -``` -qmk format-c [file1] [file2] [...] [fileN] -``` - -**全てのコアファイルに対する使い方**: - -``` -qmk format-c -a -``` - -**origin/master で変更されたファイルのみに対する使い方**: - -``` -qmk format-c -``` - -**branch_name で変更されたファイルのみに対する使い方**: - -``` -qmk format-c -b branch_name -``` - -## `qmk docs` - -このコマンドは、ドキュメントを参照または改善するために使うことができるローカル HTTP サーバを起動します。デフォルトのポートは 8936 です。 - -**使用法**: - -``` -qmk docs [-p PORT] -``` - -## `qmk kle2json` - -このコマンドにより、生の KLE データから QMK Configurator の JSON へ変換することができます。絶対パスあるいは現在のディレクトリ内のファイル名のいずれかを受け取ります。デフォルトでは、`info.json` が既に存在している場合は上書きしません。上書きするには、`-f` あるいは `--force` フラグを使ってください。 - -**使用法**: - -``` -qmk kle2json [-f] -``` - -**例**: - -``` -$ qmk kle2json kle.txt -☒ File info.json already exists, use -f or --force to overwrite. -``` - -``` -$ qmk kle2json -f kle.txt -f -Ψ Wrote out to info.json -``` - -## `qmk format-python` - -このコマンドは `qmk_firmware` 内の python コードを整形します。 - -**使用法**: - -``` -qmk format-python -``` - -## `qmk pytest` - -このコマンドは python のテストスィートを実行します。python コードに変更を加えた場合、これの実行が成功することを確認する必要があります。 - -**使用法**: - -``` -qmk pytest -``` diff --git a/docs/ja/cli_configuration.md b/docs/ja/cli_configuration.md deleted file mode 100644 index 6ed791b4713..00000000000 --- a/docs/ja/cli_configuration.md +++ /dev/null @@ -1,126 +0,0 @@ -# QMK CLI 設定 - - - -このドキュメントは `qmk config` がどのように動作するかを説明します。 - -# はじめに - -QMK CLI の設定はキーバリューシステムです。各キーはピリオドで区切られたサブコマンドと引数名で構成されます。これにより、設定キーと設定された引数の間で簡単かつ直接的な変換が可能になります。 - -## 簡単な例 - -例として、`qmk compile --keyboard clueboard/66/rev4 --keymap default` コマンドを見てみましょう。 - -設定から読み取ることができる2つのコマンドライン引数があります: - -* `compile.keyboard` -* `compile.keymap` - -これらを設定してみましょう: - -``` -$ qmk config compile.keyboard=clueboard/66/rev4 compile.keymap=default -compile.keyboard: None -> clueboard/66/rev4 -compile.keymap: None -> default -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -これで、毎回キーボードとキーマップを設定することなく、`qmk compile` を実行することができます。 - -## ユーザデフォルトの設定 - -複数のコマンド間で設定を共有したい場合があります。例えば、いくつかのコマンドは引数 `--keyboard` を受け取ります。全てのコマンドでこの値を設定する代わりに、その引数を受け取る全てのコマンドで使われるユーザ値を設定することができます。 - -例: - -``` -$ qmk config user.keyboard=clueboard/66/rev4 user.keymap=default -user.keyboard: None -> clueboard/66/rev4 -user.keymap: None -> default -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -# CLI ドキュメント (`qmk config`) - -`qmk config` コマンドは基礎となる設定とやり取りするために使われます。引数無しで実行すると、現在の設定を表示します。引数が指定された場合、それらは設定トークンと見なされます。設定トークンは以下の形式の空白を含まない文字列です: - - [.][=] - -## 設定値の設定 - -設定キーに等号 (=) を入れることで、設定値を設定することができます。キーは常に完全な `
.` 形式である必要があります。 - -例: - -``` -$ qmk config default.keymap=default -default.keymap: None -> default -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -## 設定値の読み込み - -設定全体、単一のキー、あるいはセクション全体の設定値を読み取ることができます。1つ以上の値を表示するために複数のキーを指定することができます。 - -### 全体の構成例 - - qmk config - -### セクション全体の例 - - qmk config compile - -### 単一キーの例 :id=single-key-example - - qmk config compile.keyboard - -### 複数キーの例 - - qmk config user compile.keyboard compile.keymap - -## 設定値の削除 - -設定値を特別な文字列 `None` に設定することで、設定値を削除することができます。 - -例: - -``` -$ qmk config default.keymap=None -default.keymap: default -> None -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -## 複数の操作 - -複数の読み込みおよび書き込み操作を1つのコマンドに組み合わせることができます。それらは順番に実行および表示されます: - -``` -$ qmk config compile default.keymap=default compile.keymap=None -compile.keymap=skully -compile.keyboard=clueboard/66_hotswap/gen1 -default.keymap: None -> default -compile.keymap: skully -> None -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -# ユーザ設定オプション - -| キー | デフォルト値 | 説明 | -|-----|---------------|-------------| -| user.keyboard | None | キーボードのパス (例: `clueboard/66/rev4`) | -| user.keymap | None | キーマップ名 (例: `default`) | -| user.name | None | ユーザの GitHub のユーザ名。 | - -# 全ての設定オプション - -| キー | デフォルト値 | 説明 | -|-----|---------------|-------------| -| compile.keyboard | None | キーボードのパス (例: `clueboard/66/rev4`) | -| compile.keymap | None | キーマップ名 (例: `default`) | -| hello.name | None | 実行時の挨拶の名前 | -| new_keyboard.keyboard | None | キーボードのパス (例: `clueboard/66/rev4`) | -| new_keyboard.keymap | None | キーマップ名 (例: `default`) | diff --git a/docs/ja/cli_development.md b/docs/ja/cli_development.md deleted file mode 100644 index 082bc5dafa1..00000000000 --- a/docs/ja/cli_development.md +++ /dev/null @@ -1,223 +0,0 @@ -# QMK CLI 開発 - - - -このドキュメントは、新しい `qmk` サブコマンドを書きたい開発者に役立つ情報が含まれています。 - -# 概要 - -QMK CLI は git で有名になったサブコマンドパターンを使って動作します。メインの `qmk` スクリプトは単に環境をセットアップし、実行する正しいエントリポイントを選択するためにあります。各サブコマンドは、何らかのアクションを実行しシェルのリターンコード、または None を返すエントリーポイント (`@cli.subcommand()` で修飾されます)を備えた自己完結型のモジュールです。 - -## 開発者モード: - -キーボードを保守、あるいは QMK に貢献したい場合は、CLI の「開発者」モードを有効にすることができます: - -`qmk config user.developer=True` - -これにより利用可能な全てのサブコマンドが表示されます。 -**注意:** 追加で必要なものをインストールする必要があります: -```bash -python3 -m pip install -r requirements-dev.txt -``` - -# サブコマンド - -[MILC](https://github.com/clueboard/milc) は、`qmk` が引数の解析、設定、ログ、およびほかの多くの機能を処理するために使用する CLI フレームワークです。グルーコードを書くために時間を無駄にすることなく、ツールの作成に集中できます。 - -ローカル CLI 内のサブコマンドは、常に `qmk_firmware/lib/python/qmk/cli` で見つかります。 - -サブコマンドの例を見てみましょう。これは `lib/python/qmk/cli/hello.py` です: - -```python -"""QMK Python Hello World - -This is an example QMK CLI script. -""" -from milc import cli - - -@cli.argument('-n', '--name', default='World', help='Name to greet.') -@cli.subcommand('QMK Hello World.') -def hello(cli): - """Log a friendly greeting. - """ - cli.log.info('Hello, %s!', cli.config.hello.name) -``` - -最初に `milc` から `cli` をインポートします。これが、ユーザとやり取りをし、スクリプトの挙動を制御する方法です。`@cli.argument()` を使って、コマンドラインフラグ `--name` を定義します。これは、ユーザが設定できる `hello.name` (そして対応する `user.name`) という名前の設定変数も作成し、引数を指定する必要が無くなります。`cli.subcommand()` デコレータは、この関数をサブコマンドとして指定します。サブコマンドの名前は関数の名前から取られます。 - -関数の中に入ると、典型的な "Hello, World!" プログラムが見つかります。`cli.log` を使って、基礎となる [ロガーオブジェクト](https://docs.python.org/3.6/library/logging.html#logger-objects) にアクセスし、その挙動はユーザが制御できます。またユーザが指定した名前の値に `cli.config.hello.name` でアクセスします。`cli.config.hello.name` の値は、ユーザが指定した `--name` 引数を調べることで決定されます。指定されていない場合、`qmk.ini` 設定ファイルの中の値が使われ、どちらも指定されていない場合は `cli.argument()` デコレータで指定されたデフォルトが代用されます。 - -# ユーザとの対話処理 - -MILC と QMK CLI にはユーザとやり取りするための幾つかの便利なツールがあります。これらの標準ツールを使うと、テキストに色を付けて対話し易くし、ユーザはその情報をいつどのように表示および保存するかを制御することができます。 - -## テキストの表示 - -サブコマンド内でテキストを出力するための2つの主な方法があります- `cli.log` と `cli.echo()`。それらは似た方法で動作しますが、ほとんどの一般的な目的の出力には `cli.log.info()` を使うことをお勧めします。 - -特別なトークンを使用してテキストを色付けし、プログラムの出力を理解しやすくすることができます。以下の[テキストの色付け](#colorizing-text)を見てください。 - -これらの両方の方法は python の [printf 形式の文字列書式化](https://docs.python.org/3.6/library/stdtypes.html#old-string-formatting) を使った組み込みの文字列書式化をサポートします。テキスト文字列内で`%s` と `%d` のようなトークンを使い、引数で値を渡すことができます。例として、上記の Hello、World プログラムを見てください。 - -書式演算子 (`%`) を直接使わないでください、常に引数で値を渡します。 - -### ログ (`cli.log`) - -`cli.log` オブジェクトは[ロガーオブジェクト](https://docs.python.org/3.6/library/logging.html#logger-objects)へのアクセスを与えます。ログ出力を設定し、ユーザに各ログレベルの素敵な絵文字(またはターミナルが unicode をサポートしない場合はログレベル名)を表示します。このようにして、ユーザは何か問題が発生した時に最も重要なメッセージを一目で確認することができます。 - -デフォルトのログレベルは `INFO` です。ユーザが `qmk -v ` を実行すると、デフォルトのログレベルは `DEBUG` に設定されます。 - -| 関数 | 絵文字 | -|----------|-------| -| cli.log.critical | `{bg_red}{fg_white}¬_¬{style_reset_all}` | -| cli.log.error | `{fg_red}☒{style_reset_all}` | -| cli.log.warning | `{fg_yellow}⚠{style_reset_all}` | -| cli.log.info | `{fg_blue}Ψ{style_reset_all}` | -| cli.log.debug | `{fg_cyan}☐{style_reset_all}` | -| cli.log.notset | `{style_reset_all}¯\\_(o_o)_/¯` | - -### 出力 (`cli.echo`) - -場合によっては単にログシステムの外部でテキストを出力する必要があります。これは、固定データを出力したり、ログに記録してはいけない何かを書きだす場合に適しています。ほとんどの場合、`cli.echo` よりも `cli.log.info()` を選ぶべきです。 - -### テキストの色付け - -テキスト内に色トークンを含めることで、テキストの出力を色付けすることができます。情報を伝えるためではなく、強調するために色を使います。ユーザは色を無効にできることを覚えておいてください。色を無効にした場合でもサブコマンドは引き続き使えるようにしてください。 - -背景色を設定するのは、あなたがやっていることに不可欠ではない限り、通常は避けるべきです。ユーザは、ターミナルの色に関しては多くの好みを持つため、あなたは黒と白のどちらの背景に対してもうまく機能する色を選択する必要があることを覚えておいてください。 - -'fg' という接頭辞の付いた色は、前景(テキスト)色に影響します。'bg' という接頭辞の付いた色は、背景色に影響します。 - -| 色 | 背景 | 拡張背景 | 前景 | 拡張前景 | -|-------|------------|---------------------|------------|--------------------| -| 黒 | {bg_black} | {bg_lightblack_ex} | {fg_black} | {fg_lightblack_ex} | -| 青 | {bg_blue} | {bg_lightblue_ex} | {fg_blue} | {fg_lightblue_ex} | -| シアン | {bg_cyan} | {bg_lightcyan_ex} | {fg_cyan} | {fg_lightcyan_ex} | -| 緑 | {bg_green} | {bg_lightgreen_ex} | {fg_green} | {fg_lightgreen_ex} | -| マゼンタ | {bg_magenta} | {bg_lightmagenta_ex} | {fg_magenta} | {fg_lightmagenta_ex} | -| 赤 | {bg_red} | {bg_lightred_ex} | {fg_red} | {fg_lightred_ex} | -| 白 | {bg_white} | {bg_lightwhite_ex} | {fg_white} | {fg_lightwhite_ex} | -| 黄 | {bg_yellow} | {bg_lightyellow_ex} | {fg_yellow} | {fg_lightyellow_ex} | - -ANSI 出力の挙動を変更するために使うことができる制御シーケンスもあります。 - -| 制御シーケンス | 説明 | -|-------------------|-------------| -| {style_bright} | テキストを明るくする | -| {style_dim} | テキストを暗くする | -| {style_normal} | テキストを通常にする (`{style_bright}` または `{style_dim}` のどちらでもない) | -| {style_reset_all} | 全てのテキストの属性をデフォルトに再設定する(これは自動的に全ての文字列の最後に自動的に追加されます。) | -| {bg_reset} | 背景色をユーザのデフォルトに再設定します。 | -| {fg_reset} | 背景色をユーザのデフォルトに再設定します。 | - -# 引数と設定 - -QMK は引数の解析と設定の詳細をあなたの代わりに処理します。新しい引数を追加すると、サブコマンドの名前と引数の長い名前に基づいて設定ツリーに自動的に組み込まれます。属性形式のアクセス (`cli.config..`) あるいは辞書形式のアクセス (`cli.config['']['']`) を使って、`cli.config` 内のこの設定にアクセスすることができます。 - -内部では、QMK は [設定ファイルのパーサ](https://docs.python.org/3/library/configparser.html) を使って設定を格納します。これにより、人間が編集可能な方法で設定を表す簡単で分かり易い方法を提供します。この設定へのアクセスをラップして、設定ファイルのパーサーが通常持たない幾つかの機能を提供しています。 - -## 設定値の読み込み - -通常期待される全ての方法で `cli.config` とやり取りすることができます。例えば、`qmk compile` コマンドは `cli.config.compile.keyboard` からキーボード名を取得します。値がコマンドライン、環境変数あるいは設定ファイルからきたものであるかどうかを知る必要はありません。 - -繰り返しもサポートされます: - -``` -for section in cli.config: - for key in cli.config[section]: - cli.log.info('%s.%s: %s', section, key, cli.config[section][key]) -``` - -## 設定値の設定 - -通常の方法で設定値を設定することができます。 - -辞書形式: - -``` -cli.config['
'][''] = -``` - -属性形式: - -``` -cli.config.
. = -``` - -## 設定値の削除 - -通常の方法で設定値を削除することができます。 - -辞書形式: - -``` -del(cli.config['
']['']) -``` - -属性形式: - -``` -del(cli.config.
.) -``` - -## 設定ファイルの書き方 - -設定は変更しても書き出されません。ほとんどのコマンドでこれをする必要はありません。ユーザに `qmk config` を使って設定を慎重に変更させることをお勧めします。 - -設定を書き出すために `cli.save_config()` を使うことができます。 - -## 設定からの引数の除外 - -一部の引数は設定ファイルに反映すべきではありません。これらは引数を作成する時に `arg_only=True` を追加することで除外することができます。 - -例: - -``` -@cli.argument('-o', '--output', arg_only=True, help='File to write to') -@cli.argument('filename', arg_only=True, help='Configurator JSON file') -@cli.subcommand('Create a keymap.c from a QMK Configurator export.') -def json_keymap(cli): - pass -``` - -`cli.args` を使ってのみこれらの引数にアクセスすることができます。例えば: - -``` -cli.log.info('Reading from %s and writing to %s', cli.args.filename, cli.args.output) -``` - -# テスト、リントおよびフォーマット - -nose2、flake8 および yapf を使ってコードをテスト、リントおよびフォーマットします。これらのテストを実行するために `pytest` と `format-python` サブコマンドを使うことができます。 - -### テストとリント - - qmk pytest - -### フォーマット - - qmk format-python - -## フォーマットの詳細 - -[yapf](https://github.com/google/yapf) を使ってコードを自動的にフォーマットします。フォーマットの設定は `setup.cfg` の `[yapf]` セクションにあります。 - -?> ヒント- 多くのエディタは yapf をプラグインとして使って、入力したコードを自動的にフォーマットすることができます。 - -## テストの詳細 - -テストは `lib/python/qmk/tests/` にあります。このディレクトリに単体テストと統合テストの両方があります。コードの単体テストと統合テストの両方を書いてほしいですが、一方のみ書く場合は統合テストを優先してください。 - -PR にテストの包括的なセットが含まれない場合は、次のようなコメントをコードに追加して、他の人が手助けできるようにしてください: - - # TODO(unassigned/): Write tests - -[nose2](https://nose2.readthedocs.io/en/latest/getting_started.html) を使ってテストを実行します。テスト関数でできることの詳細については、nose2 のドキュメントを参照してください。 - -## リントの詳細 - -flake8 を使ってコードをリントします。PR を開く前に、コードは flake8 をパスしなければなりません。これは `qmk pytest` を実行するときにチェックされ、PR を登録したときに CI によってチェックされます。 diff --git a/docs/ja/coding_conventions_c.md b/docs/ja/coding_conventions_c.md deleted file mode 100644 index c3d2de734e1..00000000000 --- a/docs/ja/coding_conventions_c.md +++ /dev/null @@ -1,63 +0,0 @@ -# コーディング規約 (C) - - - -私たちのスタイルのほとんどはかなり理解しやすいですが、現時点では完全に一貫しているわけではありません。変更箇所周辺のコードのスタイルと一致させる必要がありますが、そのコードに一貫性が無い場合や不明瞭な場合は以下のガイドラインに従ってください: - -* 4つのスペース (ソフトタブ) を使ってインデントします。 -* 修正版 One True Brace Style を使います。 - * 開き括弧: ブロックを開始する文と同じ行の最後 - * 閉じ括弧: ブロックを開始した文と同じ字下げ - * Else If: 行の先頭に閉じ括弧を置き、次の開き括弧を同じ行の最後に置きます。 - * 省略可能な括弧: 常に括弧を付け加えます。 - * 良い: if (condition) { return false; } - * 悪い: if (condition) return false; -* C 形式のコメントの使用を推奨します: `/* */` - * コメントを機能を説明するストーリーと考えて下さい。 - * 特定の決定がなされた理由を充分なコメントで説明してください。 - * 分かり切ったコメントは書かないでください。 - * 分かり切ったコメントであるか確信できない場合は、コメントを含めてください。 -* 一般的に、行を折り返さないで、必要なだけ長くすることができます。行を折り返すことを選択した場合は、76列を超えて折り返さないでください。 -* 古い形式のインクルードガード (`#ifndef THIS_FILE_H`、`#define THIS_FILE_H`、...、`#endif`) ではなく、ヘッダファイルの先頭で `#pragma once` を使います。 -* プリプロセッサ if の両方の形式を受け付けます: `#ifdef DEFINED` と `#if defined(DEFINED)` - * どちらがいいかわからない場合は、`#if defined(DEFINED)` 形式を使ってください。 - * 複数の条件 `#if` に移行する場合を除き、既存のコードを別のスタイルに変更しないでください。 -* プリプロセッサディレクティブをインデントする方法(あるいはするかどうか)を決定する時は、以下の事に留意してください: - * 一貫性よりも読みやすさが重要です。 - * ファイルの既存のスタイルに従ってください。ファイルのスタイルが混在している場合は、修正しようとしているセクションに適したスタイルに従ってください。 - * インデントする時は、ハッシュを行の先頭に置き、`#` と `if` の間に空白を追加します。`#` の後ろに4つスペースを入れて開始します。 - * 周りの C コードのインデントレベルに従うか、プリプロセッサのディレクティブに独自のインデントレベルを設定することができます。コードの意図を最もよく伝えるスタイルを選択してください。 - -わかりやすいように例を示します: - -```c -/* Enums for foo */ -enum foo_state { - FOO_BAR, - FOO_BAZ, -}; - -/* Returns a value */ -int foo(void) { - if (some_condition) { - return FOO_BAR; - } else { - return -1; - } -} -``` - -# clang-format を使った自動整形 - -[Clang-format](https://clang.llvm.org/docs/ClangFormat.html) は LLVM の一部で、誰もが手動で整形するほど暇ではないため、コードを自動整形することができます。私たちは、上記のコーディング規約のほとんどを適用する設定ファイルを提供しています。空白と改行のみを変更するため、省略可能な括弧は自分で付け加えることを忘れないでください。 - -Windows で clang-format を入手するには [full LLVM インストーラ](https://llvm.org/builds/)を使い、Ubuntu では `sudo apt install clang-format` を使ってください。 - -コマンドラインから実行する場合、オプションとして `-style=file` を渡すと、QMK ルートディレクトリ内の .clang-format 設定ファイルを自動的に見つけます。 - -VSCode を使う場合は、標準の C/C++ プラグインが clang-format をサポートしますが、その他にも [独立した拡張機能](https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.ClangFormat) があります。 - -幾つかのコード (LAYOUT マクロのような)が clang-format によって破壊されるため、これらのファイルで clang-format を実行しないか、整形したくないコードを `// clang-format off` と `// clang-format on` で囲みます。 diff --git a/docs/ja/coding_conventions_python.md b/docs/ja/coding_conventions_python.md deleted file mode 100644 index d8d4a31503a..00000000000 --- a/docs/ja/coding_conventions_python.md +++ /dev/null @@ -1,331 +0,0 @@ -# コーディング規約 (Python) - - - -私たちのスタイルの大部分は PEP8 に従いますが、神経質にならないように幾つかのローカルな変更を加えています。 - -* サポートされる全てのプラットフォームとの互換性のために、Python 3.6 を対象にしています。 -* 4つのスペース (ソフトタブ) を使ってインデントします -* 充分なコメントを書くことを推奨します - * コメントを機能を説明するストーリーと考えて下さい - * 特定の決定がなされた理由を充分なコメントで説明してください。 - * 分かり切ったコメントは書かないでください - * 分かり切ったコメントであるか確信できない場合は、コメントを含めてください。 -* 全ての関数について、役に立つ docstring を必要とします。 -* 一般的に、行を折り返さないで、必要なだけ長くすることができます。行を折り返すことを選択した場合は、76列を超えて折り返さないでください。 -* 私たちの慣習の幾つかは、Python 使いでは無い人にコードベースをより身近にするために、python コミュニティに広まっているものとは競合しています。 - -# YAPF - -コードを整形するために [yapf](https://github.com/google/yapf) を使うことができます。[setup.cfg](setup.cfg) で設定を提供しています。 - -# インポート - -`import ...` や `from ... import ...` をいつ使うかについての厳密なルールはありません。理解しやすさと保守性が究極の目的です。 - -一般的に、コードを短く理解しやすくするためにモジュールから特定の関数とクラス名をインポートする方が望ましいです。これにより、名前が曖昧になることがあります。代わりにモジュールをインポートするようにします。互換性のあるモジュールをインポートする時を除いて、インポートする時は "as" キーワードを避けるべきです。 - -インポートは各モジュール1行にする必要があります。標準的な python ルールに従って、インポート文をシステム、サードパーティ、ローカルにグループ化します。 - -`from foo import *` を使わないでください。代わりにインポートしたいオブジェクトのリストを指定するか、モジュール全体をインポートします。 - -## インポートの例 - -良い: - -``` -from qmk import effects - -effects.echo() -``` - -悪い: - -``` -from qmk.effects import echo - -echo() # echoがどこから来たのかが不明瞭です -``` - -良い: - -``` -from qmk.keymap import compile_firmware - -compile_firmware() -``` - -良いですが、上の方がより良いです: - -``` -import qmk.keymap - -qmk.keymap.compile_firmware() -``` - -# 命令文 - -各行1文としてください。 - -可能な場合(例えば `if foo: bar`)でも、2つの文を1行にまとめないでください。 - -# 命名 - -`module_name`, `package_name`, `ClassName`, `method_name`, `ExceptionName`, `function_name`, `GLOBAL_CONSTANT_NAME`, `global_var_name`, `instance_var_name`, `function_parameter_name`, `local_var_name`. - -関数名、変数名 およびファイル名は説明的でなければなりません; 略語を避けます。特に、プロジェクト外の読み手に曖昧あるいは馴染みのない略語を使わず、単語内の文字を削除して略さないでください。 - -常に .py のファイル名の拡張子を使います。ダッシュを使わないでください。 - -## 避けるべき名前 - -* カウンタあるいはイテレータ以外の1文字の名前。try/except 文では例外の識別子として `e` を使うことができます。 -* パッケージ/モジュール名内のダッシュ (`-`) -* `__double_leading_and_trailing_underscore__` (2つのアンダースコアで始まる名前と終わる名前、Python で予約済み) - -# Docstring - -docstring の一貫性を維持するために、以下のガイドラインを設定しました。 - -* マークダウン(Markdown)形式の使用 -* 常に少なくとも1つの改行を含む3つのダブルクォートの docstring を使ってください: `"""\n"""` -* 最初の行は、関数が行うことの短い (70文字未満) 説明です。 -* docstring が更に必要な場合は、説明と残りの間に空白行を入れます。 -* 開始の3つのダブルクォートと同じインデントレベルでインデント行を始めます -* 以下で説明する形式を使って全ての関数の引数について記述します -* Args:、Returns: および Raises: が存在する場合、それらは docstring の最後の3つの要素で、それぞれ空白行で区切られなければなりません。 - -## 簡単な docstring の例 - -``` -def my_awesome_function(): - """1970 Jan 1 00:00 UTC からの秒数を返します。 - """ - return int(time.time()) -``` - -## 複雑な docstring の例 - -``` -def my_awesome_function(): - """1970 Jan 1 00:00 UTC からの秒数を返します。 - - この関数は常に整数の秒数を返します。 - """ - return int(time.time()) -``` - -## 関数の引数の docstring の例 - -``` -def my_awesome_function(start=None, offset=0): - """1970 Jan 1 00:00 UTC からの秒数を返します。 - - この関数は常に整数の秒数を返します。 - - - Args: - start - 1970 Jan 1 00:00 UTC の代わりの開始時間 - - offset - 最初の引数からこの秒数が引かれた答えを返します - - Returns: - 秒数を表す整数。 - - Raises: - ValueError - `start` あるいは `offset` が正の数ではない場合 - """ - if start < 0 or offset < 0: - raise ValueError('start and offset must be positive numbers.') - - if not start: - start = time.time() - - return int(start - offset) -``` - -# 例外 - -例外は例外的な状況を処理するために使われます。フローの制御のために使われるべきではありません。これは Python の「許しを請う」という規範からの逸脱です。例外をキャッチする場合、異常な状況を処理する必要があります。 - -何らかの理由で全ての例外のキャッチを使う場合は、cli.log を使って例外とスタックトレースを記録する必要があります。 - -try/except ブロックをできるだけ短くします。多数の try 文が必要な場合は、コードを再構成する必要があるかもしれません。 - -# タプル - -1項目のタプルを定義する場合、タプルを使用していることが明らかになるように、常に末尾のカンマを含めます。暗黙的な1項目のタプルのアンパックに頼らないでください。明確なリストを使う方が良いです。 - -これはよく使用される printf 形式の書式文字列を使う場合に、特に重要です。 - -# リストと辞書 - -シーケンス形式と末尾のカンマとを区別するように YAPF を設定しました。末尾のカンマが省略されると、YAPF はシーケンスを1つの行として整形します。末尾のカンマがある場合、YAPF はシーケンスを1行1項目で整形します。 - -一般的に1行が短い定義になるようにすべきです。読みやすさと保守性を向上させるために、後からではなく早めに複数の行を分割してください。 - -# 括弧 - -過度な括弧は避けますが、括弧を使ってコードを理解しやすくします。タプルを明示的に返すか、あるいは数式の一部である場合を除き、return 文で括弧を使わないでください。 - -# 書式文字列 - -一般的に printf 形式の書式文字列を用います。例: - -``` -name = 'World' -print('Hello, %s!' % (name,)) -``` - -このスタイルはログモジュールで使われており、私たちはそれを広範囲で利用しており、一貫性を保つために他の場所でも採用しています。これは、私たちの気まぐれな読者の大部分である C プログラマにもおなじみのスタイルです。 - -付属の CLI モジュールは、パーセント (%) 演算子を使わずにこれらを使うことをサポートしています。詳細は、`cli.echo()` と様々な `cli.log` 関数 (例えば、`cli.log.info()`) を見てください。 - -# 内包表記とジェネレータ表記 - -内包表記とジェネレータの自由な使用を推奨しますが、あまりに複雑にしないでください。複雑になる場合は、理解しやすい for ループで代替します。 - -# ラムダ - -使っても問題ありませんが、おそらく避けるべきです。内包表記とジェネレータを使えば、ラムダの必要性は以前ほど強くありません。 - -# 条件式 - -変数の割り当てでは問題ありませんが、そうでなければ避けるべきです。 - -条件式はコードに続く if 文です。例えば: - -``` -x = 1 if cond else 2 -``` - -一般にこれらを関数の引数、シーケンス項目などとして使用することはお勧めできません。見落としやすくなります。 - -# デフォルト引数 - -推奨されていますが、値は不変オブジェクトでなければなりません。 - -デフォルト値に引数リストを指定する場合は、その場で変更できないオブジェクトを指定するように常に注意してください。可変オブジェクトを使うと変更は呼び出しの間で持続しますが、これは通常あなたの望むものではありませんそれがあなたのやろうとしていることであっても、他の人にとっては混乱するもので理解を妨げます。 - -悪い: - -``` -def my_func(foo={}): - pass -``` - -良い: - -``` -def my_func(foo=None): - if not foo: - foo = {} -``` - -# プロパティ - -getter および setter 関数の代わりにプロパティを常に使います。 - -``` -class Foo(object): - def __init__(self): - self._bar = None - - @property - def bar(self): - return self._bar - - @bar.setter - def bar(self, bar): - self._bar = bar -``` - -# True/False の評価 - -一般的に、if 文で等価性を調べるのではなく、暗黙的な True/False 評価を行うべきです。 - -悪い: - -``` -if foo == True: - pass - -if bar == False: - pass -``` - -良い: - -``` -if foo: - pass - -if not bar: - pass -``` - -# デコレータ - -適切な時に使ってください。理解に役立つ時を除き、魔法の(ように見える技巧の)使いすぎは避けるようにしてください。 - -# スレッドとマルチプロセス - -避けるべきです。これが必要な場合は、私たちがコードをマージする前に十分な理由を述べる必要があります。 - -# 強力な機能 - -Python は非常に柔軟な言語で、独自のメタクラス、バイトコードへのアクセス、実行中コンパイル、動的な継承、オブジェクトの親の変更、インポートハック、リフレクション、システム内部の変更など、多くの素晴らしい機能を提供します。 - -これらを使わないでください。 - -パフォーマンスは私たちにとって重要な関心ごとではなく、コードのわかりやすさに関心があります。私たちは、コードベースを1日か2日しかいじっていない人が利用できるようにしたいです。これらの機能は一般的に理解のしやすさを犠牲にするため、より高速あるいはよりコンパクトなコードよりも、容易に理解できるコードの方が望ましいです。 - -一部の標準ライブラリモジュールはこれらの手法を使っており、これらのモジュールを利用しても問題ありません。ただし、それらを使う時には、読みやすさと理解のしやすさを忘れないでください。 - -# 型アノテーション付きコード - -今のところ型アノテーションシステムを使っていないため、コードにアノテーションをつけないようにしてください。将来的にはこれを再検討する可能性があります。 - -# 関数の長さ - -小さくて焦点のあった関数にしてください。 - -長い関数が時には適切であることを理解しているので、関数の長さには厳密な制限はありません。関数が約40行を超える場合は、プログラムの構造を損なわずに分割できるかどうかを検討してください。 - -今のところ長い関数が完全に機能するとしても、数か月でそれを変更する人が新しい挙動を追加するかもしれません。これにより見つけにくいバグが発生するかもしれません。関数を短くかつシンプルにすることで、他の人がコードを読んで修正しやすくします。 - -幾つかのコードで作業をすると、長く複雑な関数を見つけるかもしれません。既存コードを変更することを怖がらないでください: もし、難しいことが判明したり、エラーがデバッグしづらいとわかったり、いくつかの異なるコンテキストで一部を使いたいような関数を扱っている場合、関数を小さくてより扱いやすい単位に分割することを検討してください。 - -# FIXME - -FIXME をコードに残しても構いません。なぜでしょうか?このコードを文章化しないままにするよりも、少なくとも考え抜く必要がある(あるいは混乱している)コードの一部を文章化するように奨励する方が、このコードを文章化しないままにするよりも良いです。 - -全ての FIXME は以下のように書式化されるべきです: - -``` -FIXME(username): 何々機能が完了したらこのコードを再検討する。 -``` - -...username はあなたの GitHub のユーザ名です。 - -# テスト - -統合テストと単体テストの組み合わせを使ってコードが可能な限りバグが無いようにします。全てのテストは `lib/python/qmk/tests/` にあります。`qmk pytest` を使って全てのテストを実行することができます。 - -これを書いている時点では、テストは全く完全なものではありません。現在のテストを見て、テストされていない状況のための新しいテストケースを書くことは、コードベースに精通し、QMK に貢献するという両方の点で素晴らしい方法です。 - -## 統合テスト - -統合テストは `lib/python/qmk/tests/test_cli_commands.py` にあります。ここで実際に CLI コマンドが実行され、全体的な動作が検証されます。[`subprocess`](https://docs.python.org/3.6/library/subprocess.html#module-subprocess) を使って各 CLI コマンドを起動し、正しく動作するかを判断するために出力とリターンコードの組み合わせを使います。 - -## ユニットテスト - -`lib/python/qmk/tests/` 内の他の `test_*.py` ファイルはユニットテストを含みます。`lib/python/qmk/` 内の個々の関数のテストをここに書くことができます。一般的にこれらのファイルはモジュールに基づいて名前を付けられ、ドットはアンダースコアで置き換えられます。 - -これを書いている時点では、テストのためのモックを作っていません。これを変更する手伝いをしたい場合は、[issue を開く](https://github.com/qmk/qmk_firmware/issues/new?assignees=&labels=cli%2C+python&template=other_issues.md&title=) か [Discord の #cli に参加](https://discord.gg/heQPAgy)し、そこで会話を開始してください。 diff --git a/docs/ja/compatible_microcontrollers.md b/docs/ja/compatible_microcontrollers.md deleted file mode 100644 index 23f32bbb60e..00000000000 --- a/docs/ja/compatible_microcontrollers.md +++ /dev/null @@ -1,54 +0,0 @@ -# 互換性のあるマイクロコントローラ - - - -QMK は十分な容量のフラッシュメモリを備えた USB 対応 AVR または ARM マイクロコントローラで実行されます - 一般的に 32kB 以上ですが、ほとんどの機能を無効にすると*ほんの* 16kB に詰め込むことができます。 - -## Atmel AVR - -以下は、USB スタックとして [LUFA](https://www.fourwalledcubicle.com/LUFA.php) を使います: - -* [ATmega16U2](https://www.microchip.com/wwwproducts/en/ATmega16U2) / [ATmega32U2](https://www.microchip.com/wwwproducts/en/ATmega32U2) -* [ATmega16U4](https://www.microchip.com/wwwproducts/en/ATmega16U4) / [ATmega32U4](https://www.microchip.com/wwwproducts/en/ATmega32U4) -* [AT90USB64](https://www.microchip.com/wwwproducts/en/AT90USB646) / [AT90USB128](https://www.microchip.com/wwwproducts/en/AT90USB1286) -* [AT90USB162](https://www.microchip.com/wwwproducts/en/AT90USB162) - -組み込みの USB インターフェースを持たない、いくつかの MCU は代わりに [V-USB](https://www.obdev.at/products/vusb/index.html) を使います: - -* [ATmega32A](https://www.microchip.com/wwwproducts/en/ATmega32A) -* [ATmega328P](https://www.microchip.com/wwwproducts/en/ATmega328P) -* [ATmega328](https://www.microchip.com/wwwproducts/en/ATmega328) - -## ARM - -[ChibiOS](https://www.chibios.org) がサポートする USB 付きの ARM チップを使うこともできます。ほとんどのチップには十分な容量のフラッシュメモリがあります。動作するとわかっているのは: - -### STMicroelectronics (STM32) - -* [STM32F0x2](https://www.st.com/en/microcontrollers-microprocessors/stm32f0x2.html) -* [STM32F103](https://www.st.com/en/microcontrollers-microprocessors/stm32f103.html) -* [STM32F303](https://www.st.com/en/microcontrollers-microprocessors/stm32f303.html) -* [STM32F401](https://www.st.com/en/microcontrollers-microprocessors/stm32f401.html) -* [STM32F405](https://www.st.com/en/microcontrollers-microprocessors/stm32f405-415.html) -* [STM32F407](https://www.st.com/en/microcontrollers-microprocessors/stm32f407-417.html) -* [STM32F411](https://www.st.com/en/microcontrollers-microprocessors/stm32f411.html) -* [STM32F446](https://www.st.com/en/microcontrollers-microprocessors/stm32f446.html) -* [STM32G431](https://www.st.com/en/microcontrollers-microprocessors/stm32g4x1.html) -* [STM32G474](https://www.st.com/en/microcontrollers-microprocessors/stm32g4x4.html) -* [STM32L412](https://www.st.com/en/microcontrollers-microprocessors/stm32l4x2.html) -* [STM32L422](https://www.st.com/en/microcontrollers-microprocessors/stm32l4x2.html) -* [STM32L433](https://www.st.com/en/microcontrollers-microprocessors/stm32l4x3.html) -* [STM32L443](https://www.st.com/en/microcontrollers-microprocessors/stm32l4x3.html) - -### NXP (Kinetis) - -* [MKL26Z64](https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/kl-series-cortex-m0-plus/kinetis-kl2x-72-96-mhz-usb-ultra-low-power-microcontrollers-mcus-based-on-arm-cortex-m0-plus-core:KL2x) -* [MK20DX128](https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/k-series-cortex-m4/k2x-usb/kinetis-k20-50-mhz-full-speed-usb-mixed-signal-integration-microcontrollers-based-on-arm-cortex-m4-core:K20_50) -* [MK20DX256](https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/k-series-cortex-m4/k2x-usb/kinetis-k20-72-mhz-full-speed-usb-mixed-signal-integration-microcontrollers-mcus-based-on-arm-cortex-m4-core:K20_72) - -## Atmel ATSAM - -Atmel の ATSAM マイクロコントローラの一つである、[Massdrop keyboards](https://github.com/qmk/qmk_firmware/tree/master/keyboards/massdrop) で使用されている [ATSAMD51J18A](https://www.microchip.com/wwwproducts/en/ATSAMD51J18A) には限定的なサポートがあります。 diff --git a/docs/ja/config_options.md b/docs/ja/config_options.md deleted file mode 100644 index 6cc1b6bfcd7..00000000000 --- a/docs/ja/config_options.md +++ /dev/null @@ -1,410 +0,0 @@ -# QMK の設定 - - - -QMK はほぼ無制限に設定可能です。可能なところはいかなるところでも、やりすぎな程、ユーザーがコードサイズを犠牲にしてでも彼らのキーボードをカスタマイズをすることを許しています。ただし、このレベルの柔軟性により設定が困難になります。 - -QMK には主に2種類の設定ファイルがあります- `config.h` と `rules.mk`。これらのファイルは QMK の様々なレベルに存在し、同じ種類の全てのファイルは最終的な設定を構築するために組み合わされます。最低の優先度から最高の優先度までのレベルは以下の通りです: - -* QMK デフォルト -* キーボード -* フォルダ (最大5レべルの深さ) -* キーマップ - -## QMK デフォルト - -QMK での全ての利用可能な設定にはデフォルトがあります。その設定がキーボード、フォルダ、あるいはキーマップレべルで設定されない場合、これが使用される設定です。 - -## キーボード - -このレベルにはキーボード全体に適用される設定オプションが含まれています。一部の設定は、リビジョンあるいはほとんどのキーマップで変更されません。他の設定はこのキーボードのデフォルトに過ぎず、フォルダあるいはキーマップによって上書きされる可能性があります。 - -## フォルダ - -一部のキーボードには、異なるハードウェア構成のためのフォルダとサブフォルダがあります。ほとんどのキーボードは深さ1のフォルダのみですが、QMK は最大深さ5のフォルダの構造をサポートします。各フォルダは、最終的な設定に組み込まれる独自の `config.h` と `rules.mk` ファイルを持つことができます。 - -## キーマップ - -このレベルには特定のキーマップのための全てのオプションが含まれています。以前の定義を上書きしたい場合は、`#undef ` を使って定義を解除し、エラー無しで再定義することができます。 - -# `config.h` ファイル - -これは最初に include されるものの 1 つである C ヘッダファイルで、プロジェクト全体(もし含まれる場合)にわたって持続します。多くの変数をここで設定し、他の場所からアクセスすることができます。`config.h` ファイルでは、以下のもの以外の、他の `config.h` ファイルやその他のファイルの include をしないでください: - -```c -#include "config_common.h" -``` - - -## ハードウェアオプション -* `#define VENDOR_ID 0x1234` - * VID を定義します。ほとんどの DIY プロジェクトにおいて、任意のものを定義できます -* `#define PRODUCT_ID 0x5678` - * PID を定義します。ほとんどの DIY プロジェクトでは、任意のものを定義できます -* `#define DEVICE_VER 0` - * デバイスのバージョンを定義します (多くの場合リビジョンに使われます) -* `#define MANUFACTURER Me` - * 一般的に、誰もしくはどのブランドがボードを作成したか -* `#define PRODUCT Board` - * キーボードの名前 -* `#define MATRIX_ROWS 5` - * キーボードのマトリックスの行の数 -* `#define MATRIX_COLS 15` - * キーボードのマトリックスの列の数 -* `#define MATRIX_ROW_PINS { D0, D5, B5, B6 }` - * 行のピン、上から下へ -* `#define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 }` - * 列のピン、左から右へ -* `#define MATRIX_IO_DELAY 30` - * マトリックスピン状態の変更と値の読み取り間のマイクロ秒単位の遅延 -* `#define UNUSED_PINS { D1, D2, D3, B1, B2, B3 }` - * 参考として、キーボードで使われていないピン -* `#define MATRIX_HAS_GHOST` - * マトリックスにゴーストがあるか(ありそうにないか)定義します -* `#define DIODE_DIRECTION COL2ROW` - * COL2ROW あるいは ROW2COL - マトリックスがどのように設定されているか。COL2ROW は、スイッチとロウ(行)ラインの間にダイオードが黒い印をロウ(行)ラインに向けて置いてあることを意味します。 -* `#define DIRECT_PINS { { F1, F0, B0, C7 }, { F4, F5, F6, F7 } }` - * ロウ(行)ラインとカラム(列)ラインにマップされているピンを左から右に。各スイッチが個別のピンとグラウンドに接続されているマトリックスを定義します。 -* `#define AUDIO_VOICES` - * (循環させるために)代替音声を有効にします -* `#define C4_AUDIO` - * ピン C4 のオーディオを有効にします - * 非推奨。`#define AUDIO_PIN C4` を使ってください -* `#define C5_AUDIO` - * ピン C5 のオーディオを有効にします - * 非推奨。`#define AUDIO_PIN C5` を使ってください -* `#define C6_AUDIO` - * ピン C6 のオーディオを有効にします - * 非推奨。`#define AUDIO_PIN C6` を使ってください -* `#define B5_AUDIO` - * ピン B5 のオーディオを有効にします (C ピンの1つとともに B ピンの1つが有効にされている場合、疑似ステレオが有効にされます) - * 非推奨。もし `AUDIO_PIN` で `C` ピンを有効にしている場合は、`#define AUDIO_PIN_ALT B5` を使い、そうでなければ `#define AUDIO_PIN B5` を使います。 -* `#define B6_AUDIO` - * ピン B6 のオーディオを有効にします (C ピンの1つとともに B ピンの1つが有効にされている場合、疑似ステレオが有効にされます) - * 非推奨。もし `AUDIO_PIN` で `C` ピンを有効にしている場合は、`#define AUDIO_PIN_ALT B6` を使い、そうでなければ `#define AUDIO_PIN B6` を使います。 -* `#define B7_AUDIO` - * ピン B7 のオーディオを有効にします (C ピンの1つとともに B ピンの1つが有効にされている場合、疑似ステレオが有効にされます) - * 非推奨。もし `AUDIO_PIN` で `C` ピンを有効にしている場合は、`#define AUDIO_PIN_ALT B7` を使い、そうでなければ `#define AUDIO_PIN B7` を使います。 -* `#define BACKLIGHT_PIN B7` - * バックライトのピン -* `#define BACKLIGHT_LEVELS 3` - * バックライトのレベル数 (off を除いて最大31) -* `#define BACKLIGHT_BREATHING` - * バックライトのブレスを有効にします -* `#define BREATHING_PERIOD 6` - * 1つのバックライトの "ブレス" の長さの秒数 -* `#define DEBOUNCE 5` - * ピンの値を読み取る時の遅延 (5がデフォルト) -* `#define LOCKING_SUPPORT_ENABLE` - * メカニカルロックのサポート。キーマップで KC_LCAP、KC_LNUM そして KC_LSCR を使えるようにします -* `#define LOCKING_RESYNC_ENABLE` - * キーボードの LED の状態をスイッチの状態と一致させ続けようとします -* `#define IS_COMMAND() (get_mods() == MOD_MASK_SHIFT)` - * マジックコマンドの使用を可能にするキーの組み合わせ (デバッグに便利です) -* `#define USB_MAX_POWER_CONSUMPTION 500` - * デバイスの USB 経由の最大電力(mA) を設定します (デフォルト: 500) -* `#define USB_POLLING_INTERVAL_MS 10` - * キーボード、マウス および 共有 (NKRO/メディアキー) インタフェースのための USB ポーリングレートをミリ秒で設定します -* `#define USB_SUSPEND_WAKEUP_DELAY 0` - * ウェイクアップパケットを送信した後で一時停止するミリ秒を設定します -* `#define F_SCL 100000L` - * I2C を使用するキーボードのための I2C クロックレート速度を設定します。デフォルトは `400000L` ですが、`split_common` を使っているキーボードは別でデフォルトは `100000L` です。 - -## 無効にできる機能 - -これらのオプションを定義すると、関連する機能が無効になり、コードサイズを節約できます。 - -* `#define NO_DEBUG` - * デバッグを無効にします -* `#define NO_PRINT` - * hid_listen を使った出力やデバッグを無効にします -* `#define NO_ACTION_LAYER` - * レイヤーを無効にします -* `#define NO_ACTION_TAPPING` - * タップダンスと他のタップ機能を無効にします -* `#define NO_ACTION_ONESHOT` - * ワンショットモディファイアを無効にします -* `#define NO_ACTION_MACRO` - * `MACRO()`、`action_get_macro()` _(非推奨)_ を使う古い形式のマクロ処理を無効にします -* `#define NO_ACTION_FUNCTION` - * `fn_actions`、`action_function()` _(非推奨)_ を使う古い形式の関数処理を無効にします - -## 有効にできる機能 - -これらのオプションを定義すると、関連する機能が有効になり、コードサイズが大きくなるかもしれません。 - -* `#define FORCE_NKRO` - * NKRO をデフォルトでオンにする必要があります。これにより EEPROM の設定に関係なく、キーボードの起動時に NKRO が強制的にオンになります。NKRO は引き続きオフにできますが、キーボードを再起動すると再びオンになります。 -* `#define STRICT_LAYER_RELEASE` - * キーリリースがどのレイヤーから来たのかを覚えるのではなく、現在のレイヤースタックを使って強制的に評価されるようにします (高度なケースに使われます) - -## 設定可能な挙動 :id=behaviors-that-can-be-configured - -* `#define TAPPING_TERM 200` - * タップがホールドになるまでの時間。 -* `#define TAPPING_TERM_PER_KEY` - * キーごとの `TAPPING_TERM` 設定の処理を有効にします -* `#define RETRO_TAPPING` - * 押下とリリースの間に他のキーによる中断がなければ、TAPPING_TERM の後であってもとにかくタップします - * 詳細は [Retro Tapping](ja/tap_hold.md#retro-tapping) を見てください -* `#define RETRO_TAPPING_PER_KEY` - * キーごとの `RETRO_TAPPING` 設定の処理を有効にします -* `#define TAPPING_TOGGLE 2` - * トグルを引き起こす前のタップ数 -* `#define PERMISSIVE_HOLD` - * `TAPPING_TERM` にヒットしていなくても、リリースする前に別のキーが押されると、タップとホールドキーがホールドを引き起こします - * 詳細は [Permissive Hold](ja/tap_hold.md#permissive-hold) を見てください -* `#define PERMISSIVE_HOLD_PER_KEY` - * キーごとの `PERMISSIVE_HOLD` 設定の処理を有効にします -* `#define TAPPING_FORCE_HOLD` - * タップされた直後に、デュアルロールキーを修飾子として使用できるようにします - * [Tapping Force Hold](ja/tap_hold.md#tapping-force-hold)を見てください - * タップトグル機能を無効にします (`TT` あるいは One Shot Tap Toggle) -* `#define TAPPING_FORCE_HOLD_PER_KEY` - * キーごとの `TAPPING_FORCE_HOLD` 設定処理を有効にします。 -* `#define LEADER_TIMEOUT 300` - * リーダーキーがタイムアウトするまでの時間 - * タイムアウトする前にシーケンスを終了できない場合は、タイムアウトの設定を増やす必要があるかもしれません。あるいは、`LEADER_PER_KEY_TIMING` オプションを有効にすると良いでしょう。これは各キーがタップされた後でタイムアウトを再設定します。 -* `#define LEADER_PER_KEY_TIMING` - * 全体では無く各キーを押すたびに実行されるリーダーキーコードのタイマーを設定します -* `#define LEADER_KEY_STRICT_KEY_PROCESSING` - * Mod-Tap および Layer-Tap キーコードのためのキーコードフィルタリングを無効にします。例えば、これを有効にすると、`KC_A` を使いたい場合は `MT(MOD_CTL, KC_A)` を指定する必要があります。 -* `#define ONESHOT_TIMEOUT 300` - * ワンショットがタイムアウトするまでの時間 -* `#define ONESHOT_TAP_TOGGLE 2` - * ワンショットトグルが引き起こされるまでのタップ数 -* `#define COMBO_TERM 200` - * コンボキーが検出されるまでの時間。定義されていない場合は、デフォルトは `TAPPING_TERM` です。 -* `#define TAP_CODE_DELAY 100` - * 適切な登録に問題がある場合(VUSB ボードで珍しくない)、`register_code` と `unregister_code` の間の遅延を設定します。値はミリ秒です。 -* `#define TAP_HOLD_CAPS_DELAY 80` - * MacOS で特別な処理が行われるため、`KC_CAPSLOCK` を使う時にタップホールドキー (`LT`, `MT`) に遅延を設定します。この値はミリ秒で、定義されていない場合はデフォルトは80msです。macOS については、これを200以上に設定すると良いでしょう。 - -## RGB ライト設定 :id=rgb-light-configuration - -* `#define RGB_DI_PIN D7` - * WS2812 の DI 端子につなぐピン -* `#define RGBLIGHT_LAYERS` - * オンとオフを切り替えることができる [ライトレイヤー](ja/feature_rgblight.md?id=lighting-layers) を定義できます。現在のキーボードレイヤーまたは Caps Lock 状態を表示するのに最適です。 -* `#define RGBLIGHT_MAX_LAYERS` - * デフォルトは8です。もしさらに [ライトレイヤー](ja/feature_rgblight.md?id=lighting-layers) が必要であれば、32まで拡張できます。 - * メモ: 最大値を大きくするとファームウェアサイズが大きくなり、分割キーボードで同期が遅くなります。 -* `#define RGBLIGHT_LAYER_BLINK` - * 指定されたミリ秒の間、ライトレイヤーを [点滅](ja/feature_rgblight.md?id=lighting-layer-blink) する機能を追加します(例えば、アクションを確認するため)。 -* `#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF` - * 定義されている場合、RGB ライトがオフになっている場合でも [ライトレイヤー](ja/feature_rgblight?id=overriding-rgb-lighting-onoff-status) が表示されます。 -* `#define RGBLED_NUM 12` - * LED の数 -* `#define RGBLIGHT_SPLIT` - * 分割キーボードの左半分の RGB LED の出力を右半分の RGB LED の入力につなげるかわりに、それぞれの側で個別にコントローラの出力ピンが直接 RGB LED の入力に繋がっているときは、この定義が必要です。 -* `#define RGBLED_SPLIT { 6, 6 }` - * 分割キーボードの各半分の `RGB_DI_PIN` に直接配線されている接続されている LED の数 - * 最初の値は左半分の LED の数を示し、2番目の値は右半分です。 - * RGBLED_SPLIT が定義されている場合、RGBLIGHT_SPLIT は暗黙的に定義されます。 -* `#define RGBLIGHT_HUE_STEP 12` - * 色相の増減時のステップ単位 -* `#define RGBLIGHT_SAT_STEP 25` - * 彩度の増減時のステップ単位 -* `#define RGBLIGHT_VAL_STEP 12` - * 値(明度)の増減時のステップ単位 -* `#define RGBW` - * RGBW LED のサポートを有効にします - -## マウスキーオプション - -* `#define MOUSEKEY_INTERVAL 20` -* `#define MOUSEKEY_DELAY 0` -* `#define MOUSEKEY_TIME_TO_MAX 60` -* `#define MOUSEKEY_MAX_SPEED 7` -* `#define MOUSEKEY_WHEEL_DELAY 0` - -## 分割キーボードオプション - -分割キーボード固有のオプション。あなたの rules.mk に 'SPLIT_KEYBOARD = yes' が有ることを確認してください。 - -* `SPLIT_TRANSPORT = custom` - * 標準の分割通信ルーチンをカスタムのものに置き換えることができます。現在、ARM ベースの分割キーボードはこれを使わなければなりません。 - -### 左右の設定 - -1つ覚えておかなければならないことは、USB ポートが接続されている側が常にマスター側であるということです。USB に接続されていない側はスレーブです。 - -分割キーボードの左右を設定するには、幾つかの異なる方法があります (優先度の順にリストされています): - -1. `SPLIT_HAND_PIN` を設定します: 左右を決定するためにピンを読み込みます。ピンが high の場合、それが左側です。low であれば、その半分側が右側であると決定されます。 -2. `EE_HANDS` を設定し、各半分に `eeprom-lefthand.eep`/`eeprom-righthand.eep` を書き込みます - * DFU ブートローダを搭載したボードでは、これらの EEPROM ファイルを書き込むために `:dfu-split-left`/`:dfu-split-right` を使うことができます - * Caterina ブートローダを搭載したボード (標準的な Pro Micros など)では、`:avrdude-split-left`/`:avrdude-split-right` を使ってください - * ARM DFU ブートローダを搭載したボード (Proton C など)では、`:dfu-util-split-left`/`:dfu-util-split-right` を使ってください -3. `MASTER_RIGHT` を設定します: USB ポートに差し込まれた側はマスター側で右側であると決定されます(デフォルトの逆) -4. デフォルト: USB ポートに差し込まれている側がマスター側であり、左側であると見なされます。スレーブ側は右側です - -#### 左右を定義します - -* `#define SPLIT_HAND_PIN B7` - * high/low ピンを使って左右を決定します。low = 右手、high = 左手。`B7` を使っているピンに置き換えます。これはオプションで、`SPLIT_HAND_PIN` が未定義のままである場合、EE_HANDS メソッドまたは標準の Let's Splitが使っている MASTER_LEFT / MASTER_RIGHT 定義をまだ使うことができます。 - -* `#define SPLIT_HAND_MATRIX_GRID ,` - * 左右はキーマトリックスのキースイッチが存在しない交点を使って決定されます。通常、この交点が短絡している(ローレベル)のときに右側と見なされます。もし `#define SPLIT_HAND_MATRIX_GRID_LOW_IS_LEFT` が定義されている場合は、ローレベルの時に左側と決定されます。 - -* `#define EE_HANDS` (`SPLIT_HAND_PIN` と `SPLIT_HAND_MATRIX_GRID` が定義されていない場合のみ動作します) - * `eeprom-lefthand.eep`/`eeprom-righthand.eep` がそれぞれの半分に書き込まれた後で、EEPROM 内に格納されている左右の設定の値を読み込みます。 - -* `#define MASTER_RIGHT` - * マスター側が右側と定義されます。 - -### 他のオプション - -* `#define USE_I2C` - * Serial の代わりに I2C を使う場合 (デフォルトは serial) - -* `#define SOFT_SERIAL_PIN D0` - * serial を使う場合、これを定義します。`D0` あるいは `D1`,`D2`,`D3`,`E6`。 - -* `#define MATRIX_ROW_PINS_RIGHT { }` -* `#define MATRIX_COL_PINS_RIGHT { }` - * 右半分に左半分と異なるピン配置を指定したい場合は、`MATRIX_ROW_PINS_RIGHT`/`MATRIX_COL_PINS_RIGHT` を定義することができます。現在のところ、`MATRIX_ROW_PINS` のサイズは `MATRIX_ROW_PINS_RIGHT` と同じでなければならず、列の定義も同様です。 - -* `#define DIRECT_PINS_RIGHT { { F1, F0, B0, C7 }, { F4, F5, F6, F7 } }` - * 右半分に左半分と異なる直接ピン配置を指定したい場合は、`DIRECT_PINS_RIGHT` を定義することができます。現在のところ、`DIRECT_PINS` のサイズは `DIRECT_PINS_RIGHT` と同じでなければなりません。 - -* `#define RGBLED_SPLIT { 6, 6 }` - * [RGB ライト設定](#rgb-light-configuration)を見てください。 - -* `#define SELECT_SOFT_SERIAL_SPEED ` (デフォルトの速度は1です) - * serial 通信を使う時のプロトコルの速度を設定します。 - * 速度: - * 0: 約 189kbps (実験目的のみ) - * 1: 約 137kbps (デフォルト) - * 2: 約 75kbps - * 3: 約 39kbps - * 4: 約 26kbps - * 5: 約 20kbps - -* `#define SPLIT_USB_DETECT` - * マスタ/スレーブを委任する時に(タイムアウト付きで) USB 接続を検出します - * ARM についてはデフォルトの挙動 - * AVR Teensy については必須 - -* `#define SPLIT_USB_TIMEOUT 2000` - * `SPLIT_USB_DETECT` を使う時のマスタ/スレーブを検出する場合の最大タイムアウト - -* `#define SPLIT_USB_TIMEOUT_POLL 10` - * `SPLIT_USB_DETECT` を使う時のマスタ/スレーブを検出する場合のポーリング頻度 - -# `rules.mk` ファイル - -これは、トップレベルの `Makefile` から include される [make](https://www.gnu.org/software/make/manual/make.html) ファイルです。これは特定の機能を有効または無効にするだけでなく、コンパイルする MCU に関する情報を設定するために使われます。 - -## ビルドオプション - -* `DEFAULT_FOLDER` - * キーボードに1つ以上のサブフォルダがある場合にデフォルトのフォルダを指定するために使われます。 -* `FIRMWARE_FORMAT` - * ビルドの後でルート `qmk_firmware` フォルダにコピーされる形式 (bin, hex) を定義します。 -* `SRC` - * コンパイル・リンクリストにファイルを追加するために使われます。 -* `LIB_SRC` - * コンパイル・リンクリストにライブラリとしてファイルを追加するために使われます。 - `LIB_SRC` で指定されたファイルは、`SRC` で指定されたファイルの後にリンクされます。 - 例えば、次のように指定した場合: - ``` - SRC += a.c - LIB_SRC += lib_b.c - SRC += c.c - LIB_SRC += lib_d.c - ``` - リンク順は以下の通りです。 - ``` - ... a.o c.o ... lib_b.a lib_d.a ... - ``` -* `LAYOUTS` - * このキーボードがサポートする[レイアウト](ja/feature_layouts.md)のリスト -* `LTO_ENABLE` - * キーボードをコンパイルする時に、Link Time Optimization (LTO) を有効にします。これは処理に時間が掛かりますが、コンパイルされたサイズを大幅に減らします (そして、ファームウェアが小さいため、追加の時間は分からないくらいです)。 -ただし、LTO が有効な場合、古い TMK のマクロと関数の機能が壊れるため、自動的にこれらの機能を無効にします。これは `NO_ACTION_MACRO` と `NO_ACTION_FUNCTION` を自動的に定義することで行われます。(メモ: これは QMK の [マクロ](ja/feature_macros.md) と [レイヤー](ja/feature_layers.md) には影響を与えません。) - -## AVR MCU オプション -* `MCU = atmega32u4` -* `F_CPU = 16000000` -* `ARCH = AVR8` -* `F_USB = $(F_CPU)` -* `OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT` -* `BOOTLOADER = atmel-dfu` と以下のオプション: - * `atmel-dfu` - * `lufa-dfu` - * `qmk-dfu` - * `halfkay` - * `caterina` - * `bootloadHID` - * `USBasp` - -## 機能オプション :id=feature-options - -これらを使って特定の機能のビルドを有効または無効にします。有効にすればするほどファームウェアが大きくなり、MCU には大きすぎるファームウェアを構築するリスクがあります。 - -* `BOOTMAGIC_ENABLE` - * ブートマジックライトを有効にします -* `MOUSEKEY_ENABLE` - * マウスキー -* `EXTRAKEY_ENABLE` - * オーディオ制御とシステム制御 -* `CONSOLE_ENABLE` - * デバッグ用コンソール -* `COMMAND_ENABLE` - * デバッグ及び設定用のコマンド -* `COMBO_ENABLE` - * キーコンボ機能 -* `NKRO_ENABLE` - * USB N-キーロールオーバー - これが動作しない場合は、ここを見てください: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -* `AUDIO_ENABLE` - * オーディオサブシステムを有効にします。 -* `RGBLIGHT_ENABLE` - * キーボードアンダーライト機能を有効にします -* `LEADER_ENABLE` - * リーダーキーコードを有効にします -* `MIDI_ENABLE` - * MIDI 制御 -* `UNICODE_ENABLE` - * Unicode -* `BLUETOOTH` - * 現在のオプションは、AdafruitBLE、RN42 -* `SPLIT_KEYBOARD` - * 分割キーボード (let's split や bakingpy のキーボードのようなデュアル MCU) のサポートを有効にし、quantum/split_common にある全ての必要なファイルをインクルードします -* `CUSTOM_MATRIX` - * 標準マトリックス走査ルーチンを独自のものに置き換えることができます。 -* `DEBOUNCE_TYPE` - * 標準キーデバウンスルーチンを代替または独自のものに置き換えることができます。 -* `USB_WAIT_FOR_ENUMERATION` - * キーボードが起動する前に、USB 接続が確立されるのをキーボードに待機させます -* `NO_USB_STARTUP_CHECK` - * キーボードの起動後の usb サスペンドチェックを無効にします。通常、キーボードはタスクが実行される前にホストがウェイク アップするのを待ちます。分割キーボードは半分はウェイクアップコールを取得できませんが、マスタにコマンドを送信する必要があるため、役に立ちます。 - -## USB エンドポイントの制限 - -USB 経由でサービスを提供するために、QMK は USB エンドポイントを使う必要があります。 -これらは有限なリソースです: 各マイクロコントローラは特定の数しか持ちません。 -これは一緒に有効にできる機能を制限します。 -利用可能なエンドポイントを超えると、ビルドエラーをひきおこします。 - -以下の機能は個別のエンドポイントを必要とするかもしれません: - -* `MOUSEKEY_ENABLE` -* `EXTRAKEY_ENABLE` -* `CONSOLE_ENABLE` -* `NKRO_ENABLE` -* `MIDI_ENABLE` -* `RAW_ENABLE` -* `VIRTSER_ENABLE` - -エンドポイントの使用率を向上させるために、HID 機能を組み合わせて1つのエンドポイントを使うようにすることができます。 -デフォルトでは、`MOUSEKEY`、`EXTRAKEY` および `NKRO` が単一のエンドポイントに結合されます。 - -基本キーボード機能も、`KEYBOARD_SHARED_EP = yes` を設定することで同じエンドポイントに結合することができます。 -これによりもう1つのエンドポイントが解放されますが、一部の BIOS ではブートキーボードプロトコルの切り替えを実装しないため、キーボードが動作しなくなるかもしれません。 - -マウスの結合も、ブートマウス互換性を破壊します。 -この機能が必要な場合は、`MOUSE_SHARED_EP = no` を設定することで、マウスを結合しないようにすることができます。 diff --git a/docs/ja/configurator_step_by_step.md b/docs/ja/configurator_step_by_step.md deleted file mode 100644 index 92be0f16a95..00000000000 --- a/docs/ja/configurator_step_by_step.md +++ /dev/null @@ -1,67 +0,0 @@ -# QMK Configurator: ステップ・バイ・ステップ - - - -このページでは、QMK Configurator でファームウェアを構築する手順を説明します。 - -## ステップ 1: キーボードを選ぶ - -ドロップダウンボックスをクリックして、キーマップを作成するキーボードを選択します。 - -?> **キーボードに複数のバージョンがある場合は、正しいバージョンを選択してください。** - -大事なことなのでもう一度言います。 - -!> **正しいバージョンを選択してください!** - -キーボードが QMK を搭載していると宣伝されていてもリストにない場合は、開発者がまだ作業中か、私たちがまだマージするきっかけがなかった可能性があります。 -アクティブな [プルリクエスト](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+is%3Apr+label%3Akeyboard) がない場合、[qmk_firmware](https://github.com/qmk/qmk_firmware/issues)で報告して、その特定のキーボードのサポートをリクエストします。 -製作者自身の GitHub アカウントにある QMK 搭載キーボードもあります。 -それも再確認してください。 - -## ステップ2: キーボードのレイアウトを選択する - -作成したいと思うキーマップに最も近いレイアウトを選択します。一部のキーボードには、まだ十分なレイアウトや正しいレイアウトが定義されていません。これらは将来サポートされる予定です。 - -## ステップ3: キーマップの名前を決める - -お好みの名前をキーマップにつけます。 - -?> コンパイル時に問題が発生した場合は、もしかすると QMK ファームウェアリポジトリに既に同じ名前が存在しているのかもしれません。名前を変更してみてください。 - -## ステップ4: キーマップを定義する - -キーコードの入力は、3つの方法のいずれかで行います。 - -1. ドラッグ・アンド・ドロップ -2. レイアウト上の空の場所をクリックして、希望するキーコードをクリックします -3. レイアウト上の空の場所をクリックして、キーボードの物理キーを押します - -?> マウスをキーの上に置くと、そのキーコードの機能の短い説明文が出ます。より詳細な説明については以下を見てください: - -* [基本的なキーコードリファレンス](ja/keycodes_basic.md) -* [高度なキーコードリファレンス](ja/feature_advanced_keycodes.md) - -!> 選択したレイアウトが物理的なビルドと一致しない場合は、使用していないキーは空白のままにしておきます。どのキーが使用されているかわからない場合、例えば、バックスペースキーは1つだが `LAYOUT_all` には2つのキーがある場合は、同じキーコードを両方の場所に配置してください。 - -## ステップ5: 後日のためにキーマップを保存する - -キーマップに満足するか、または後で作業したい場合は、`Export Keymap' ボタンを押します。 -これでキーマップがあなたのコンピュータに保存されます。 -その後、`Import Keymap` ボタンを押すことで、この .json ファイルを後で読み込むことができます。 - -!> **注意:** このファイルは、kbfirmware.com またはその他のツールに使用される .json ファイルと同じ形式ではありません。これらのツールにこの .json を使用したり、QMK Configurator でこれらのツールの .json を使用しようとすると、問題が発生します。 - -## ステップ6: ファームウェアをコンパイルする - -緑色の `Compile` ボタンを押します。 - -コンパイルが完了すると、緑色の `Download Firmware` ボタンを押すことができます。 - -## 次のステップ: キーボードに書き込む(フラッシュする) - -[ファームウェアを書きこむ](ja/newbs_flashing.md) を参照してください。 diff --git a/docs/ja/configurator_troubleshooting.md b/docs/ja/configurator_troubleshooting.md deleted file mode 100644 index 5979341c6e8..00000000000 --- a/docs/ja/configurator_troubleshooting.md +++ /dev/null @@ -1,32 +0,0 @@ -# Configurator トラブルシューティング - - - -## 私の .json ファイルが動きません - -.json ファイルが QMK Configurator で作ったものの場合、おめでとうございます。バグに遭遇しました。 [qmk_configurator](https://github.com/qmk/qmk_configurator/issues) で報告してください。 - -そうでない場合は、... 他の .json ファイルを使用しないようにという、上に書いた注意書きを見逃してませんか? - -#### レイアウトに余分なスペースがありますか?どうすればいいですか? - -もしスペースバーが3つに分かれている場合は、全てスペースバーで埋めるのが最善の方法です。バックスペースや Shift キーについても同じことができます。 - -#### キーコードってなに? - -以下を見てください。 - -* [基本的なキーコードリファレンス](ja/keycodes_basic.md) -* [高度なキーコードリファレンス](ja/feature_advanced_keycodes.md) - -#### コンパイルできません - -キーマップの他のレイヤーを再確認して、おかしなキーが存在しないことを確認してください。 - -## 問題とバグ - -私たちは利用者の依頼やバグレポートを常に受け入れています。[qmk_configurator](https://github.com/qmk/qmk_configurator/issues) で報告してください。 diff --git a/docs/ja/contributing.md b/docs/ja/contributing.md deleted file mode 100644 index ef1271ad160..00000000000 --- a/docs/ja/contributing.md +++ /dev/null @@ -1,173 +0,0 @@ -# 貢献方法 - - - -👍🎉 まず、これを読み貢献する時間を作ってくれてありがとうございます!🎉👍 - -サードパーティの貢献は、QMK の成長と改善に役立ちます。プルリクエストと貢献プロセスを貢献者とメンテナの両方にとって便利で簡単なものにしたいです。この目的のために、大きな変更をせずにプルリクエストが受け入れられるように貢献者向けのガイドラインをまとめました。 - -* [プロジェクトの概要](#project-overview) -* [コーディング規約](#coding-conventions) -* [一般的なガイドライン](#general-guidelines) -* [行動規範は私にとって何を意味しますか?](#what-does-the-code-of-conduct-mean-for-me) - -## この全てを読みたくはありません!単純に質問があります! - -QMK について質問したい場合は、[OLKB Subreddit](https://reddit.com/r/olkb) あるいは [Discord](https://discord.gg/Uq7gcHh) ですることができます。 - -以下の事を覚えておいてください: - -* 誰かがあなたの質問に答えるのに数時間掛かるかもしれません。しばらくお待ちください! -* QMK に関わる全ての人が彼らの時間とエネルギーを提供しています。QMK に関する作業や質問への回答に対する報酬はありません。 -* できるだけ簡単に答えられるように質問してみてください。その方法が分からない場合は、以下に幾つかの良いガイドがあります: - * https://opensource.com/life/16/10/how-ask-technical-questions - * http://www.catb.org/esr/faqs/smart-questions.html - -# プロジェクトの概要 :id=project-overview - -QMK は主に C で書かれており、特定の機能と部品は C++ で書かれています。QMK は、キーボードの中の組み込みプロセッサ、特に AVR ([LUFA](https://www.fourwalledcubicle.com/LUFA.php)) と ARM ([ChibiOS](https://www.chibios.org)) を対象にしています。すでに Arduino プログラミングに精通している場合は、多くの概念と制限がおなじみのものです。QMK に貢献するには Arduino を使用した経験は必要ありません。 - - - -# どこで助けを得られますか? - -助けが必要であれば、[issue を開く](https://github.com/qmk/qmk_firmware/issues) か [Discord で会話する](https://discord.gg/Uq7gcHh)ことができます。 - -# どうやって貢献することができますか? - -以前にオープンソースに貢献したことはありませんか? QMK で貢献がどのように機能するかが疑問ですか? ここに簡単な説明があります! - -0. [GitHub](https://github.com) アカウントにサインアップします。 -1. 貢献するためのキーマップをまとめるか、解決に興味がある[問題を見つける](https://github.com/qmk/qmk_firmware/issues)、あるいは追加したい[機能](https://github.com/qmk/qmk_firmware/issues?q=is%3Aopen+is%3Aissue+label%3Afeature)を見つけます。 -2. 問題に関連付けられているリポジトリをあなたの GitHub アカウントにフォークします。これは、`GitHub上のあなたのユーザー名/qmk_firmware` の下にリポジトリのコピーを持つことを意味します。 -3. `git clone https://github.com/GitHub上のあなたのユーザー名/repository-name.git` を使ってローカルマシンにリポジトリをクローンします。 -4. 新しい機能に取り組んでいる場合は、issue を開きこれから行う作業について話し合うことを検討してください。 -5. `git checkout -b branch-name-here` を使って修正用の新しいブランチを作成します。 -6. 解決しようとしている問題、あるいは追加したい機能について適切な変更を加えます。 -7. `git add insert-paths-of-changed-files-here` を使って変更されたファイルの内容を git がプロジェクトの状態を管理するために使用する "snapshot"、インデックスとしても知られている、に追加します。 -8. `git commit -m "Insert a short message of the changes made here"` を使って、説明的なメッセージとともにインデックスの内容を保存します。 -9. `git push origin branch-name-here` を使って GitHub 上のリポジトリに変更をプッシュします。 -10. プルリクエストを [QMK Firmware](https://github.com/qmk/qmk_firmware/pull/new/master) にサブミットします。 -11. 行われた変更の簡単な説明と、変更に関する問題またはバグ番号を使って、プルリクエストにタイトルを付けます。例えば、issue に "Added more log outputting to resolve #4352" のようなタイトルをつけることができます。 -12. プルリクエストの説明では、行った変更、行ったプルリクエストに存在すると思われる問題、およびメンテナに対する質問を説明します。プルリクエストが完ぺきではない場合(プルリクエストが無い場合)でも問題ありません。レビュワーが問題の修正と改善を手伝います。 -13. プルリクエストがメンテナによってレビューされるのを待ちます。 -14. レビューをしているメンテナが変更を推奨する場合は、プルリクエストに変更を加えます。 -15. プルリクエストがマージされた後で成功を祝います! - -# コーディング規約 :id=coding-conventions - -私たちのスタイルのほとんどは簡単に理解できます。C あるいは Python のいずれかに精通している場合は、ローカルスタイルにそれほど問題はないはずです。 - -* [コーディング規約 - C](ja/coding_conventions_c.md) -* [コーディング規約 - Python](ja/coding_conventions_python.md) - -# 一般的なガイドライン :id=general-guidelines - -QMK には幾つかの異なるタイプの変更があり、それぞれ異なるレベルの厳密さが必要です。どのような種類の変更を行っても、次のガイドラインに留意してください。 - -* PR を論理単位に分割します。例えば、2つの個別の機能をカバーする1つの PR を送信するのではなく、代わりに機能ごとに個別の PR をサブミットします。 -* コミットする前に、`git diff --check` を使って不要な空白を確認します。 -* コードの変更が実際にコンパイルされることを確認してください。 - * キーマップ: `make keyboard:your_new_keymap` がエラーを返さないことを確認してください。 - * キーボード: `make keyboard:all` がエラーを返さないことを確認してください。 - * コア: `make all` がエラーを返さないことを確認してください。 -* コミットメッセージがそれ自体で理解できることを確認してください。最初の行に短い説明(70文字以内)を入れ、2行目は空にし、3行目以降では必要に応じてコミットを詳細に説明する必要があります。例: - -``` -kerpleplork の fronzlebop を調整します - -kerpleplork はエラーコード 23 で連続的に失敗していました。根本的な原因は fronzlebop 設定で、これにより kerpleplork は N 回の繰り返しごとにアクティブになります。 - -私が使用できるデバイスの限られた実験では、kerpleplork の混乱を避けるために 7 は十分高い値であることを示していますが、念のため ARM デバイスを持つ人たちからフィードバックを得たいです。 -``` - -!> **重要:** デフォルト以外のキーマップ、ユーザスペースおよびレイアウトのようなユーザコードへのバグ修正あるいは改善に貢献したい場合は、PR にコードの元の提出者にタグをつけてください。Git と GitHub のスキルレベルに関係なく、多くのユーザは知らないうちにコードが変更されることに混乱したりイライラしたりするかもしれません。 - -## ドキュメント - -ドキュメントは QMK への貢献を始める最も簡単な方法の1つです。ドキュメントが間違っているか不完全な場所を見つけ、これらを修正するのは簡単です!私たちもドキュメントを編集する人を非常に必要としています。編集するスキルがあるが、どこにどのように飛び乗ればいいのか分からない場合は、[助けをもとめて](#where-can-i-go-for-help)ください! - -全てのドキュメントは `qmk_firmware/docs` ディレクトリの中にあります。あるいは web ベースのワークフローを使いたい場合は、https://docs.qmk.fm/ の各ページの下部にある "Edit this page" リンクをクリックすることができます。 - -ドキュメントの中にコードの例を提供する場合は、ドキュメント内の他の場所で使用されている命名規則を順守してください。例えば、一貫性を保つために、`my_layers` あるいは `my_keycodes` として列挙型を標準化します: - -```c -enum my_layers { - _FIRST_LAYER, - _SECOND_LAYER -}; - -enum my_keycodes { - FIRST_LAYER = SAFE_RANGE, - SECOND_LAYER -}; -``` - -### ドキュメントのプレビュー :id=previewing-the-documentation - -開発環境をセットアップした場合は、プルリクエストを開く前に以下のコマンドを `qmk_firmware/` フォルダから実行することで、あなたの変更をプレビューすることができます: - - qmk docs - -または、Python 3 のみがインストールされている場合: - - python3 -m http.server 8936 --directory docs - -その後、ウェブブラウザで、`http://localhost:8936/` を表示します。 - -## キーマップ - -ほとんどの初めての QMK 貢献者は、個人のキーマップから始めます。キーマップの標準はかなりカジュアルなものにしようとしています(キーマップは結局のところ作成者の性格を反映しています)が、他の人があなたのキーマップを簡単に見つけて学ぶことができるように、これらのガイドラインに従うようにお願いします。 - -* [テンプレート](ja/documentation_templates.md) を使って `readme.md` を書きます。 -* 全てのキーマップの PR は squash されるため、コミットがどのように squash されるかを気にする場合は、自分で行う必要があります。 -* キーマップの PR に機能をまとめないでください。最初に機能をサブミットし、次にキーマップのための2つ目の PR をサブミットします。 -* `Makefile` をキーマップフォルダに含めないでください(もう使われていません)。 -* ファイルヘッダの著作権を更新します (`%YOUR_NAME%` を探します) - -## キーボード - -キーボードは QMK の存在理由です。一部のキーボードはコミュニティによって管理されていますが、他のキーボードはそれぞれのキーボードを作成する責任者によって管理されています。`readme.md` を見るとそのキーボードを管理しているのが誰かが分かります。特定のキーボードに関する質問がある場合、[Issue を開いて](https://github.com/qmk/qmk_firmware/issues)質問にメンテナをタグ付けしてください。(訳注: タグ付け は [メンションする](https://help.github.com/ja/github/writing-on-github/basic-writing-and-formatting-syntax#mentioning-people-and-teams) という意味です。) - -また以下のガイドラインに従うことをお願いします: - -* [テンプレート](ja/documentation_templates.md) を使って `readme.md` を書きます。 -* コミットの数を適切に保ってください。そうでなければあなたの PR を squash します。 -* コア機能を新しいキーボードにまとめないでください。最初に機能をサブミットし、次にキーボード用に別の PR をサブミットしてください。 -* `.c`/`.h` ファイルにすぐ上の親フォルダに従って名前を付けます。例えば、`/keyboards///.[ch]` -* `Makefile` をキーボードフォルダに含めないでください(もう使われていません) -* ファイルヘッダの著作権を更新します (`%YOUR_NAME%` を探します) - -## Quantum/TMK コア - -新しい機能をビルドするために多くの作業を行う前に、最適な方法で実装していることを確認する必要があります。[QMK の理解](ja/understanding_qmk.md)を読むことで、QMK の基本的な理解を得ることができます。これはあなたを QMK のプログラムフローのツアーに連れて行きます。ここから、あなたのアイデアを実装するための最良の方法の感覚をつかむために、私たちと話す必要があります。これを行うには主に2つの方法があります: - -* [Discord でのチャット](https://discord.gg/Uq7gcHh) -* [Issue を開く](https://github.com/qmk/qmk_firmware/issues/new) - -機能とバグ修正の PR は全てのキーボードに影響します。また、私たちは QMK の再編も進めています。このため、実装が行われる前に特に重要な変更について議論することが特に重要です。最初に私たちと話をせずに PR を開いた場合、あなたの選択が私たちの計画した方向とうまく合わない場合は幾つかの大きな再作業を行う覚悟をしてください。 - -機能やバグの修正に取り組む時に留意すべき幾つかの事があります。 - -* **デフォルトで無効** - QMK がサポートするほとんどのチップでメモリがかなり制限されており、現在のキーマップが壊れていないことが重要です。ですので、あなたの機能をオフにするのではなく**オン**にするようにしてください。デフォルトでオンにすべき場合、あるいはコードのサイズを小さくする必要がある場合は、相談してください。 -* **サブミットする前にローカルでコンパイル** - これが明白であることを願っていますが、コンパイルする必要があります。プルリクエストを作成する前に、変更した内容がコンパイルできるかどうかを常に確認する必要があります。 -* **リビジョンと異なるチップベースを考慮** - 僅かに異なる設定、さらには異なるチップベースを可能にするリビジョンを持つキーボードが幾つかあります。ARM および AVR でサポートされる機能を作成する、あるいは動作しないプラットフォームでは自動的に無効化するようにしてください。 -* **機能の説明** - 新しいファイルあるいは既存のファイルの一部として、`docs/` の中に文章化します。文章化しないと、他の人はあなたの苦労から利益を得ることができません。 - -また以下のガイドラインに従うことをお願いします: - -* コミットの数を適切に保ってください。そうでなければあなたの PR を squash します。 -* キーボードあるいはキーマップをコアの変更にまとめないでください。コアの変更を最初にサブミットしてください。 -* 機能のための[ユニット テスト](ja/unit_testing.md)を書いてください。 -* 編集しているファイルのスタイルに従ってください。スタイルが明確でないか、スタイルが混在している場合は、上記の[コーディング規約](#coding-conventions)に準拠する必要があります。 - -## リファクタリング - -QMK で物事がどのようにレイアウトされるかについて明確なビジョンを維持するために、私たちはリファクタリングを詳細に計画し、変更をする協力者がいます。リファクタリングのアイデアあるいは提案がある場合は、[issue を開いてください](https://github.com/qmk/qmk_firmware/issues)。QMK を改善する方法についてお話ししたいと思います。 - -# 行動規範は私にとって何を意味しますか? :id=what-does-the-code-of-conduct-mean-for-me - -私たちの[行動規範](https://github.com/qmk/qmk_firmware/blob/master/CODE_OF_CONDUCT.md)は、身元に関係なくあなたがプロジェクトの全員を敬意と礼儀を持って扱う責任があることを意味します。あなたが行動規範に記載されている不適切な行動やコメントの被害者である場合は、私たちはあなたのためにここにおり、私たちのコードに従って虐待者が適切に懲戒されるように最善を尽くします。 diff --git a/docs/ja/custom_matrix.md b/docs/ja/custom_matrix.md deleted file mode 100644 index 194960d77c9..00000000000 --- a/docs/ja/custom_matrix.md +++ /dev/null @@ -1,114 +0,0 @@ -# カスタムマトリックス - - - -QMKは、デフォルトのマトリックススキャンルーチンを独自のコードで部分的に入れ替えたり全部入れ替えたりしたりするメカニズムを提供します。 - -この機能を使用する理由は次のとおりです: - -* キーボードのスイッチと MCU ピンの間に追加のハードウェアがある場合 - * I/O マルチプレクサ - * ラインデコーダー -* 一般的ではないキースイッチマトリックス - * `COL2ROW` と `ROW2COL` の同時使用 - -## 前提条件 - -カスタムマトリックスの実装には、通常、追加のソースファイルのコンパイルが含まれます。 -一貫性を保つために、このソースファイルのファイル名は `matrix.c` とすることをお勧めします。 - -あなたのキーボードディレクトリに新しいファイルを追加します: -```text -keyboards//matrix.c -``` - -そして、新しいファイルのコンパイルを指定するため、以下を `rules.mk` に追加します -```make -SRC += matrix.c -``` - -## マトリックスコードの部分置き換え :id=lite - -カスタムマトリックスを実装する際、定型コードを書かなくてすむように、さまざまなスキャン関数のデフォルト実装を提供しています。 - -設定するには、以下を `rules.mk` に追加します: -```make -CUSTOM_MATRIX = lite -``` - -そして、キーボードディレクトリの `matrix.c` ファイルに次の関数を実装します。 - -```c -void matrix_init_custom(void) { - // TODO: ここでハードウェアの初期化をする -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - // TODO: ここで、マトリックススキャンを行なう - - return matrix_has_changed; -} -``` - -## マトリックスコードの全面置き換え - -スキャンルーチンをさらに変更する必要がある場合は、完全なスキャンルーチンを実装することを選択できます。 - -設定するには、以下を `rules.mk` に追加します: -```make -CUSTOM_MATRIX = yes -``` - -そして、キーボードディレクトリの `matrix.c` ファイルに次の関数を実装します。 - -```c -matrix_row_t matrix_get_row(uint8_t row) { - // TODO: 要求された行データを返します -} - -void matrix_print(void) { - // TODO: printf() を使って現在のマトリックスの状態をコンソールにダンプします -} - -void matrix_init(void) { - // TODO: ここでハードウェアとグローバルマトリックスの状態を初期化します - - // ハードウェアによるデバウンスがない場合 - 設定されているデバウンスルーチンを初期化します - debounce_init(MATRIX_ROWS); - - // 正しいキーボード動作のためにこれを呼び出す*必要があります* - matrix_init_kb(); -} - -uint8_t matrix_scan(void) { - bool changed = false; - - // TODO: ここにマトリックススキャンルーチンを追加します - - // ハードウェアによるデバウンスがない場合 - 設定されているデバウンスルーチンを使用します - changed = debounce(raw_matrix, matrix, MATRIX_ROWS, changed); - - // 正しいキーボード動作のためにこれを呼び出す*必要があります* - matrix_scan_kb(); - - return changed; -} -``` - -また、次のコールバックのデフォルトも提供します。 - -```c -__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); } - -__attribute__((weak)) void matrix_scan_kb(void) { matrix_scan_user(); } - -__attribute__((weak)) void matrix_init_user(void) {} - -__attribute__((weak)) void matrix_scan_user(void) {} -``` diff --git a/docs/ja/custom_quantum_functions.md b/docs/ja/custom_quantum_functions.md deleted file mode 100644 index bd3f15a5fd2..00000000000 --- a/docs/ja/custom_quantum_functions.md +++ /dev/null @@ -1,403 +0,0 @@ -# キーボードの挙動をカスタマイズする方法 - - - -多くの人にとって、カスタムキーボードはボタンの押下をコンピュータに送信するだけではありません。単純なボタンの押下やマクロよりも複雑なことを実行できるようにしたいでしょう。QMK にはコードを挿入したり、機能を上書きしたり、様々な状況でキーボードの挙動をカスタマイズできるフックがあります。 - -このページでは、QMK に関する特別な知識は想定していませんが、[QMK の理解](ja/understanding_qmk.md)を読むとより根本的なレベルで何が起きているかを理解するのに役立ちます。 - -## コア、キーボード、キーマップ階層 :id=a-word-on-core-vs-keyboards-vs-keymap - -私たちは QMK を階層として構造化しました: - -* コア (`_quantum`) - * キーボード/リビジョン (`_kb`) - * キーマップ (`_user`) - -以下で説明される各関数は `_kb()` サフィックスあるいは `_user()` サフィックスを使って定義することができます。`_kb()` サフィックスはキーボード/リビジョンレベルで使うことを意図しており、一方で `_user()` サフィックスはキーマップレベルで使われるべきです。 - -キーボード/リビジョンレベルで関数を定義する場合、`_kb()` は他の何かを実行する前に `_user()` を呼び出すよう実装することが重要です。そうでなければ、キーマップレベル関数は呼ばれないでしょう。 - -# カスタムキーコード - -最も一般的なタスクは、既存のキーコードの挙動を変更するか、新しいキーコードを作成することです。コードの観点からは、それぞれの仕組みは非常に似ています。 - -## 新しいキーコードの定義 - -独自のカスタムキーコードを作成する最初のステップは、それらを列挙することです。これは、カスタムキーコードに名前を付け、そのキーコードにユニークな番号を割り当てることの両方を意味します。QMK は、カスタムキーコードを固定範囲の番号に制限するのではなく、`SAFE_RANGE` マクロを提供します。カスタムキーコードを列挙する時に `SAFE_RANGE` を使うと、ユニークな番号を取得することが保証されます。 - - -これは2つのキーコードを列挙する例です。このブロックを `keymap.c` に追加した後で、キーマップの中で `FOO` と `BAR` を使うことができます。 - -```c -enum my_keycodes { - FOO = SAFE_RANGE, - BAR -}; -``` - -## 任意のキーコードの挙動のプログラミング :id=programming-the-behavior-of-any-keycode - -既存のキーの挙動を上書きしたい場合、あるいは新しいキーについて挙動を定義する場合、`process_record_kb()` および `process_record_user()` 関数を使うべきです。これらは実際のキーイベントが処理される前のキー処理中に QMK によって呼び出されます。これらの関数が `true` を返す場合、QMK はキーコードを通常通りに処理します。これは、キーを置き換えるのではなく、キーの機能を拡張するのに便利です。これらの関数が `false` を返す場合、QMK は通常のキー処理をスキップし、必要なキーのアップまたはダウンイベントを送信するのかはユーザ次第です。 - -これらの関数はキーが押されるか放されるたびに呼び出されます。 - -### `process_record_user()` の実装例 - -この例は2つの事を行います。`FOO` と呼ばれるカスタムキーコードの挙動を定義し、Enter キーが押されるたびに音を再生します。 - -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case FOO: - if (record->event.pressed) { - // 押された時に何かをします - } else { - // 放された時に何かをします - } - return false; // このキーの以降の処理をスキップします - case KC_ENTER: - // enter が押された時に音を再生します - if (record->event.pressed) { - PLAY_SONG(tone_qwerty); - } - return true; // QMK に enter のプレスまたはリリースイベントを送信させます - default: - return true; // 他の全てのキーコードを通常通りに処理します - } -} -``` - -### `process_record_*` 関数のドキュメント - -* キーボード/リビジョン: `bool process_record_kb(uint16_t keycode, keyrecord_t *record)` -* キーマップ: `bool process_record_user(uint16_t keycode, keyrecord_t *record)` - -`keycode` 引数はキーマップで定義されているものです。例えば `MO(1)`、`KC_L` など。これらのイベントを処理するには `switch...case` ブロックを使うべきです。 - -`record` 引数は実際のプレスに関する情報を含みます: - -```c -keyrecord_t record { - keyevent_t event { - keypos_t key { - uint8_t col - uint8_t row - } - bool pressed - uint16_t time - } -} -``` - -# キーボードの初期化コード - -キーボードの初期化プロセスには幾つかのステップがあります。何をしたいかによって、どの関数を使うべきかに影響します。 - -3つの主な初期化関数があり、呼び出される順番にリストされています。 - -* `keyboard_pre_init_*` - ほとんどのものが開始される前に起こります。非常に早くに実行したいハードウェアのセットアップに適しています。 -* `matrix_init_*` - ファームウェアのスタートアッププロセスの途中で起こります。ハードウェアは初期化されますが、機能はまだ初期化されていない場合があります。 -* `keyboard_post_init_*` - ファームウェアのスタートアッププロセスの最後に起こります。これはほとんどの場合、 "カスタマイズ"コードを配置する場所です。 - -!> ほとんどの人にとって、`keyboard_post_init_user` が呼び出したいものです。例えば、ここで RGB アンダーグローのセットアップを行います。 - -## キーボードの事前初期化コード - -これは USB さえ起動する前の、起動中の非常に早い段階で実行されます。 - -この直後にマトリックスが初期化されます。 - -これは主にハードウェア向きの初期化のためであるため、ほとんどのユーザは使うべきではありません。 - -ただし、初期化が必要なハードウェアがある場合には、これが最適な場所です (LED ピンの初期化など)。 - -### `keyboard_pre_init_user()` の実装例 - -この例は、キーボードレベルで、LED ピンとして B0、B1、B2、B3 および B4 をセットアップします。 - -```c -void keyboard_pre_init_user(void) { - // キーボードの事前初期コードを呼び出します。 - - // LED ピンを出力として設定します - setPinOutput(B0); - setPinOutput(B1); - setPinOutput(B2); - setPinOutput(B3); - setPinOutput(B4); -} -``` - -### `keyboard_pre_init_*` 関数のドキュメント :id=keyboard_pre_init_-function-documentation - -* キーボード/リビジョン: `void keyboard_pre_init_kb(void)` -* キーマップ: `void keyboard_pre_init_user(void)` - -## マトリックスの初期化コード - -これは、マトリックスが初期化され、ハードウェアの一部がセットアップされた後で、ただし機能の多くが初期化される前に、呼び出されます。 - -他の場所で必要になるかもしれないものをセットアップするのに役立ちますが、ハードウェアに関連するものではなく、開始場所に依存するものでもありません。 - - -### `matrix_init_*` 関数のドキュメント - -* キーボード/リビジョン: `void matrix_init_kb(void)` -* キーマップ: `void matrix_init_user(void)` - - -## キーボードの事後初期化コード - -キーボードの初期化プロセスの極めて最後のタスクとして実行されます。この時点で初期化される必要があるような、特定の機能を変更したい場合に便利です。 - - -### `keyboard_post_init_user()` の実装例 - -この例は、他の全てのものが初期化された後で実行され、rgb アンダーグローの設定をセットアップします。 - -```c -void keyboard_post_init_user(void) { - // post init コードを呼びます - rgblight_enable_noeeprom(); // 設定を保存せずに Rgb を有効にします - rgblight_sethsv_noeeprom(180, 255, 255); // 保存せずに色を青緑/シアンに設定します - rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3); // 保存せずにモードを高速なブリージングに設定します -} -``` - -### `keyboard_post_init_*` 関数のドキュメント - -* キーボード/リビジョン: `void keyboard_post_init_kb(void)` -* キーマップ: `void keyboard_post_init_user(void)` - -# マトリックススキャンコード :id=matrix-scanning-code - -可能であれば常に `process_record_*()` を使ってキーボードをカスタマイズし、その方法でイベントをフックし、コードがキーボードのパフォーマンスに悪影響を与えないようにします。ただし、まれにマトリックススキャンにフックする必要があります。これらの関数は1秒あたり少なくとも10回は呼び出されるため、これらの関数のコードのパフォーマンスに非常に注意してください。 - -### `matrix_scan_*` の実装例 - -この例は意図的に省略されています。このようなパフォーマンスに敏感な領域にフックする前に、例を使わずにこれを書くために、QMK 内部について十分理解する必要があります。助けが必要であれば、[issue を開く](https://github.com/qmk/qmk_firmware/issues/new) か [Discord で会話](https://discord.gg/Uq7gcHh)してください。 - -### `matrix_scan_*` 関数のドキュメント - -* キーボード/リビジョン: `void matrix_scan_kb(void)` -* キーマップ: `void matrix_scan_user(void)` - -この関数はマトリックススキャンのたびに呼び出されます。これは基本的に MCU が処理できる頻度です。大量に実行されるため、ここに何を置くかについては注意してください。 - -カスタムマトリックススキャンコードが必要な場合は、この関数を使う必要があります。また、カスタムステータス出力 (LED あるいはディスプレイなど)や、ユーザが入力していない場合でも定期的にトリガーするその他の機能のために使うことができます。 - -# キーボードハウスキーピング :id=keyboard-housekeeping - -* キーボード/リビジョン: `void housekeeping_task_kb(void)` -* キーマップ: `void housekeeping_task_user(void)` - -この関数は、全ての QMK 処理の最後に、次の繰り返しを開始する前に呼び出されます。`housekeeping_task_*` の関数が呼び出された時点で、QMK が最後のマトリックススキャンを処理したと、安全に見なすことができます -- レイヤーの状態が更新され、USB レポートが送信され、LED が更新され、表示が描画されています。 - -`matrix_scan_*` と同様に、これらは MCU が処理できる頻度で呼び出されます。キーボードの応答性を維持するために、これらの関数の呼び出し中にできるだけ何もしないことをお勧めします。実際に何か特別なものを実装する必要がある場合に動作を停止させる可能性があります。 - -# キーボードアイドリング/ウェイクコード - -キーボードがサポートしている場合、多くの機能を停止することで"アイドル"にすることができます。これの良い例は、RGB ライトあるいはバックライトです。これにより、電力消費を節約できるか、キーボードの動作が改善されるかもしれません。 - -これは2つの関数によって制御されます: `suspend_power_down_*` および `suspend_wakeup_init_*`。これらはシステムキーボードがアイドルになった時と、起動した時のそれぞれで呼ばれます。 - - -### suspend_power_down_user() と suspend_wakeup_init_user() の実装例 - - -```c -void suspend_power_down_user(void) { - // code will run multiple times while keyboard is suspended -} - -void suspend_wakeup_init_user(void) { - // code will run on keyboard wakeup -} -``` - -### キーボードサスペンド/ウェイク関数のドキュメント - -* キーボード/リビジョン : `void suspend_power_down_kb(void)` および `void suspend_wakeup_init_user(void)` -* キーマップ: `void suspend_power_down_kb(void)` および `void suspend_wakeup_init_user(void)` - -# レイヤー切り替えコード :id=layer-change-code - -これはレイヤーが切り替えられるたびにコードを実行します。レイヤー表示あるいはカスタムレイヤー処理に役立ちます。 - -### `layer_state_set_*` の実装例 - -この例は、レイヤーに基づいて [RGB アンダーグロー](ja/feature_rgblight.md)を設定する方法を示していて、Planck を例として使っています。 - -```c -layer_state_t layer_state_set_user(layer_state_t state) { - switch (get_highest_layer(state)) { - case _RAISE: - rgblight_setrgb (0x00, 0x00, 0xFF); - break; - case _LOWER: - rgblight_setrgb (0xFF, 0x00, 0x00); - break; - case _PLOVER: - rgblight_setrgb (0x00, 0xFF, 0x00); - break; - case _ADJUST: - rgblight_setrgb (0x7A, 0x00, 0xFF); - break; - default: // 他の全てのレイヤーあるいはデフォルトのレイヤー - rgblight_setrgb (0x00, 0xFF, 0xFF); - break; - } - return state; -} -``` - -特定のレイヤーの状態を確認するには、`IS_LAYER_ON_STATE(state, layer)` と `IS_LAYER_OFF_STATE(state, layer)` マクロを使います。 - -`layer_state_set_*` 関数の外では、グローバルなレイヤー状態を確認するために `IS_LAYER_ON(layer)` と `IS_LAYER_OFF(layer)` マクロを使えます。 - -### `layer_state_set_*` 関数のドキュメント - -* キーボード/リビジョン: `layer_state_t layer_state_set_kb(layer_state_t state)` -* キーマップ: `layer_state_t layer_state_set_user(layer_state_t state)` - - -[キーマップの概要](ja/keymap.md#keymap-layer-status)で説明されるように、`state` はアクティブなレイヤーのビットマスクです。 - - -# 永続的な設定 (EEPROM) - -これによりキーボードのための永続的な設定を設定することができます。これらの設定はコントローラの EEPROM に保存され、電源が落ちた後であっても保持されます。設定は `eeconfig_read_kb` および `eeconfig_read_user` を使って読み取ることができ、`eeconfig_update_kb` および `eeconfig_update_user` を使って書きこむことができます。これは切り替え可能な機能 (rgb レイヤーの表示の切り替えなど)に役立ちます。さらに、`eeconfig_init_kb` および `eeconfig_init_user` を使って EEPROM のデフォルト値を設定できます。 - -ここでの複雑な部分は、EEPROM を介してデータを保存およびアクセスできる方法がたくさんあり、これを行うための"正しい"方法が無いということです。ただし、各関数には DWORD (4 バイト)しかありません。 - -EEPROM の書き込み回数には制限があることに注意してください。これは非常に高い値ですが、EEPROM に書き込むのはこれだけではなく、もし頻繁に書き込むと、MCU の寿命を大幅に短くする可能性があります。 - -* この例を理解していない場合は、この機能はかなり複雑なため、この機能を使うことを避けても構いません。 - -### 実装例 - -これは、設定を追加し、読み書きする例です。この例では、ユーザキーマップを使っています。これは複雑な機能で、多くのことが行われています。実際、動作のために上記の多くの関数を使います! - - -keymap.c ファイルの中で、先頭にこれを追加します: -```c -typedef union { - uint32_t raw; - struct { - bool rgb_layer_change :1; - }; -} user_config_t; - -user_config_t user_config; -``` - -これは、設定をメモリ内に保存し、EEPROM に書き込むことができる32ビット構造体をセットアップします。これを使うと、この構造体に変数が定義されるため、変数を定義する必要が無くなります。`bool` (boolean) の値は1ビットを使い、`uint8_t` は8ビットを使い、`uint16_t` は16ビットを使うことに注意してください。組み合わせて使うことができますが、順番の変更は読み書きされる値が変更されるため、問題が発生するかもしれません。 - -`layer_state_set_*` 関数のために `rgb_layer_change` を使い、全てを設定するために `keyboard_post_init_user` および `process_record_user` を使います。 - -ここで、上の `keyboard_post_init_user` コードを使って、作成したばかりの構造体を設定するために `eeconfig_read_user()` を追加します。そして、この構造体をすぐに使ってキーマップの機能を制御することができます。それは以下のようになります: -```c -void keyboard_post_init_user(void) { - // キーマップレベルのマトリックスの初期化処理を呼びます - - // EEPROM からユーザ設定を読み込みます - user_config.raw = eeconfig_read_user(); - - // 有効な場合はデフォルトレイヤーを設定します - if (user_config.rgb_layer_change) { - rgblight_enable_noeeprom(); - rgblight_sethsv_noeeprom_cyan(); - rgblight_mode_noeeprom(1); - } -} -``` -上記の関数は読み取ったばかりの EEPROM 設定を使い、デフォルトのレイヤーの RGB 色を設定します。その「生の」値は、上で作成した「共用体」に基づいて使用可能な構造に変換されます。 - -```c -layer_state_t layer_state_set_user(layer_state_t state) { - switch (get_highest_layer(state)) { - case _RAISE: - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_magenta(); rgblight_mode_noeeprom(1); } - break; - case _LOWER: - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_red(); rgblight_mode_noeeprom(1); } - break; - case _PLOVER: - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_green(); rgblight_mode_noeeprom(1); } - break; - case _ADJUST: - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_white(); rgblight_mode_noeeprom(1); } - break; - default: // 他の全てのレイヤーあるいはデフォルトのレイヤー - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_cyan(); rgblight_mode_noeeprom(1); } - break; - } - return state; -} -``` -これにより、値が有効になっていた場合のみ、RGB アンダーグローが変更されます。この値を設定するために、`RGB_LYR` と呼ばれる `process_record_user` 用の新しいキーコードを作成します。さらに、通常の RGB コードを使う場合、上記の例を使ってオフになることを確認します。以下のようになります: -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case FOO: - if (record->event.pressed) { - // 押された時に何かをします - } else { - // 放された時に何かをします - } - return false; // このキーの以降の処理をスキップします - case KC_ENTER: - // enter が押された時に音を再生します - if (record->event.pressed) { - PLAY_SONG(tone_qwerty); - } - return true; // QMK に enter のプレスまたはリリースイベントを送信させます - case RGB_LYR: // これにより、アンダーグローをレイヤー表示として、あるいは通常通りに使うことができます。 - if (record->event.pressed) { - user_config.rgb_layer_change ^= 1; // 状態を切り替えます - eeconfig_update_user(user_config.raw); // 新しい状態を EEPROM に書き込みます - if (user_config.rgb_layer_change) { // レイヤーの状態表示が有効な場合 - layer_state_set(layer_state); // すぐにレイヤーの色を更新します - } - } - return false; - case RGB_MODE_FORWARD ... RGB_MODE_GRADIENT: // 任意の RGB コード に対して(quantum_keycodes.h を見てください。400行目参照) - if (record->event.pressed) { // これはレイヤー表示を無効にします。これを変更する場合は、無効にしたいだろうため。 - if (user_config.rgb_layer_change) { // 有効な場合のみ - user_config.rgb_layer_change = false; // 無効にします - eeconfig_update_user(user_config.raw); // 設定を EEPROM に書き込みます - } - } - return true; break; - default: - return true; // 他の全てのキーコードを通常通りに処理します - } -} -``` -最後に、`eeconfig_init_user` 関数を追加して、EEPROM がリセットされた時にデフォルト値、さらにはカスタムアクションを指定できるようにします。EEPROM を強制的にリセットするには、`EEP_RST` キーコードあるいは[ブートマジック](ja/feature_bootmagic.md)機能を使います。例えば、デフォルトで rgb レイヤー表示を設定し、デフォルト値を保存したい場合。 - -```c -void eeconfig_init_user(void) { // EEPROM がリセットされます! - user_config.raw = 0; - user_config.rgb_layer_change = true; // デフォルトでこれを有効にします - eeconfig_update_user(user_config.raw); // デフォルト値を EEPROM に書き込みます - - // これらの値も EEPROM に書き込むためには、noeeprom 以外のバージョンを使います - rgblight_enable(); // デフォルトで RGB を有効にします - rgblight_sethsv_cyan(); // デフォルトでシアンに設定します - rgblight_mode(1); // デフォルトでソリッドに設定します -} -``` - -これで完了です。RGB レイヤー表示は必要な場合にのみ機能します。キーボードを取り外した後でも保存されます。RGB コードのいずれかを使うと、レイヤー表示が無効になり、設定したモードと色がそのままになります。 - -### 'EECONFIG' 関数のドキュメント - -* キーボード/リビジョン: `void eeconfig_init_kb(void)`、`uint32_t eeconfig_read_kb(void)` および `void eeconfig_update_kb(uint32_t val)` -* キーマップ: `void eeconfig_init_user(void)`、`uint32_t eeconfig_read_user(void)` および `void eeconfig_update_user(uint32_t val)` - -`val` は EEPROM に書き込みたいデータの値です。`eeconfig_read_*` 関数は EEPROM から32ビット(DWORD) 値を返します。 diff --git a/docs/ja/data_driven_config.md b/docs/ja/data_driven_config.md deleted file mode 100644 index 6296173b66a..00000000000 --- a/docs/ja/data_driven_config.md +++ /dev/null @@ -1,123 +0,0 @@ -# データ駆動型コンフィギュレーション - - - -このページでは、QMK のデータ駆動型 JSON コンフィギュレーションシステムがどのように動作するかを説明します。これは、QMK 自体に取り組みたい開発者を対象としています。 - -## ヒストリー - -これまで、QMK は、`rules.mk` と `config.h` の2つのメカニズムを組み合わせてコンフィギュレーションされてきました。 -この方法は、QMK がほんの一握りのキーボードをサポートしていたときは上手く機能していましたが、今では、サポートするキーボードは1500近くまで成長しました。 -`keyboards` の下だけで6000個の設定ファイルがあることが推定されます。 -これらのファイルの自由形式の性質と、重複を避けるために人々が使用してきたユニークなパターンが継続的なメンテナンスを困難にしており、また、多くのキーボードが時代遅れで時には理解が難しいパターンに従っています。 - -また、CLI に慣れていない人に QMK のパワーを提供することにも取り組んでおり、VIA などの他のプロジェクトでは、プログラムをインストールするのと同じくらい簡単に QMK を使用できるように取り組んでいます。 -これらのツールには、ユーザーが QMK を最大限に活用できるように、キーボードのレイアウト方法や使用可能なピンと機能に関する情報が必要です。 -その第一歩として `info.json` を導入しました。 -QMK API は、これら3つの情報源(`config.h`、` rules.mk`、および `info.json`)を、エンドユーザーツールが使用できる信頼できる単一の情報源に結合するための取り組みです。 - -これで、`info.json`から `rules.mk` と `config.h` の値を生成することがサポートされ、信頼できる単一の情報源を持つことができます。 -これにより、自動化されたツールを使用してキーボードを保守できるため、時間と保守作業を大幅に節約できます。 - -## 概要 - -C 側では何も変わりません。 -新しいルールを作成したり、定義したりする必要がある場合は、同じプロセスに従います。 - -1. `docs/config_options.md` に追加します。 -1. 適切なコアファイルにデフォルトを設定します。 -1. 必要に応じて ifdef 文を追加します。 - -次に、新しい構成のサポートを `info.json` に追加する必要があります。 -基本的なプロセスは次のとおりです。 - -1. `data/schemas/keyboards.jsonschema` のスキーマに追加します -1. `data/maps` にマッピングを追加します -1. (オプションおよび非推奨)構成を抽出/生成するコードを追加します。 - * `lib/python/qmk/info.py` - * `lib/python/qmk/cli/generate/config_h.py` - * `lib/python/qmk/cli/generate/rules_mk.py` - -## info.json にオプションを追加する - -このセクションでは、info.json に `config.h`/`rules.mk` の値のサポートを追加することについて説明します。 - -### スキーマに追加する - -QMK では、[jsonschema](https:json-schema.org) のファイルを `data/schemas` に保持しています。 -キーボード固有の `info.json` ファイルに入る値は `keyboard.jsonschema` に保持されています。 -エンドユーザーが編集できるようにしたい値はすべてここに入れなければなりません。 - -場合によっては、新しいトップレベルキーを追加するだけで済みます。 -従うべきいくつかの例は、 `keyboard_name`、`maintainer`、 `processor`、および `url` です。 -これは、オプションが自己完結型で、他のオプションと直接関係がない場合に適しています。 - -その他の場合、1つの `object` の中に、似ているオプションを集める必要があります。 -これは、機能のサポートを追加する場合に特に当てはまります。 -このために従うべきいくつかの例は、`indicators`、`matrix_pins`、および `rgblight` です。 -新しいオプションを統合する方法がわからない場合は、[問題を開く](https://github.com/qmk/qmk_firmware/issues/new?assignees=&labels=cli%2C+python&template=other_issues.md&title=)か、[Discord で #cli に参加](https://discord.gg/heQPAgy)して、そこで会話を始めてください。 - -### マッピングを追加する - -ほとんどの場合、単純なマッピングを追加することができます。 -これらは `data/mappings/info_config.json` と `data/mappings/info_rules.json` に JSON ファイルとして保持され、それぞれ `config.h` と `rules.mk` のマッピングを制御します。 -各マッピングは `config.h` または `rules.mk` 変数名をキーとし、値は以下のキーを持つハッシュです。 - -* `info_key`: (必須)この値の `info.json` 内の場所。 下記参照。 -* `value_type`: (オプション)デフォルトは `str`。 この変数の値の形式。 下記参照。 -* `to_json`: (オプション)デフォルトは `true`。 このマッピングを info.json から除外するには、`false` に設定します -* `to_c`: (オプション)デフォルトは `true`。 このマッピングを config.h から除外するには、`false` に設定します -* `warn_duplicate`: (オプション)デフォルトは `true`。 値が両方の場所に存在する場合に警告をオフにするには、`false` に設定します - -#### Info Key - -info.json 内の変数をアドレス指定するために JSON ドット表記を使用します。 -たとえば、`info_json["rgblight"]["split_count"]` にアクセスするには、`rgblight.split_count` を指定します。 -これにより、深くネストされたキーを単純な文字列でアドレス指定できます。 - -内部では [Dotty Dict](https://dotty-dict.readthedocs.io/en/latest/) を使用しています。これらの文字列がオブジェクトアクセスに変換される方法についてはそのドキュメントを参照してください。 - -#### Value Types - -デフォルトでは、すべての値を単純な文字列として扱います。 -値がより複雑な場合は、次のいずれかのタイプを使用してデータをインテリジェントに解析できます。 - -* `array`: 文字列のコンマ区切りの配列 -* `array.int`: 整数のコンマ区切り配列 -* `int`: 整数 -* `hex`: 16進数としてフォーマットされた数値 -* `list`: 文字列のスペース区切りの配列 -* `mapping`: キーと値のペアのハッシュ - -### 抽出するコードを追加する - -ほとんどのユースケースは、上記のマッピングファイルによって解決できます。 -できない場合は、代わりに設定値を抽出するコードを書くことができます。 - -QMK が完全な `info.json` を生成するときはいつでも、`config.h` と `rules.mk` から情報を抽出します。 -あなたの新しい設定値のためのコードを `lib/python/qmk/info.py` に追加する必要があります。 -通常、これは、新しい `_extract_()` 関数を追加してから、 `_extract_config_h()` または `_extract_rules_mk()` のいずれかで関数を呼び出すことを意味します。 - -このファイルの編集方法がわからない場合、または Python に慣れていない場合は、[issue を開く](https://github.com/qmk/qmk_firmware/issues/new?assignees=&labels=cli%2C+python&template=other_issues.md&title=)か [Discord で #cli に参加](https://discord.gg/heQPAgy)すると、この部分を誰かが手伝ってくれるでしょう。 - -### 生成するコードを追加する - -パズルの最後のピースは、ビルドシステムに新しいオプションを提供することです。 -これは、2つのファイルを生成することによって行われます。 - -* `.build/obj__/src/info_config.h` -* `.build/obj__/src/rules.mk` - -この2つのファイルは、次のコードによって生成されます。 - -* `lib/python/qmk/cli/generate/config_h.py` -* `lib/python/qmk/cli/generate/rules_mk.py` - -`config.h`値の場合、ルール用の関数を記述し、その関数を `generate_config_h()` で呼び出す必要があります。 - -`rules.mk` の新しいトップレベルの `info.json` キーがある場合は、`lib/python/qmk/cli/generate/rules_mk.py` の上部にある `info_to_rules` にキーを追加するだけです。 -それ以外の場合は、`generate_rules_mk()` で機能の新しい if ブロックを作成する必要があります。 diff --git a/docs/ja/documentation_best_practices.md b/docs/ja/documentation_best_practices.md deleted file mode 100644 index c866d395993..00000000000 --- a/docs/ja/documentation_best_practices.md +++ /dev/null @@ -1,69 +0,0 @@ -# ドキュメントベストプラクティス - - - -このページは QMK のためのドキュメントを作成する時のベストプラクティスを文章化するためのものです。これらのガイドラインに従うことで、一貫したトーンとスタイルを維持することでき、他の人が QMK をより理解しやすくすることができます。 - -# ページの開始 - -ドキュメントページは通常 H1 ヘッダで始まり、最初の段落を使ってこのページの内容を説明します。この見出しと段落は目次の次にあるため、見出しは短くして空白の無い長い文字列を避けるように気を付けてください。 - -例: - -``` -# My Page Title - -This page covers my super cool feature. You can use this feature to make coffee, squeeze fresh oj, and have an egg mcmuffin and hashbrowns delivered from your local macca's by drone. -``` - -# 見出し - -通常、ページには複数の "H1" 見出しが有るべきです。H1 と H2 見出しのみが目次に含まれるので、適切に計画してください。目次が広くなりすぎないように、H1 と H2 の見出しでは幅を広げないようにしてください。 - -# スタイル付きのヒントブロック - -注意を引くためにテキストの周りにスタイル付きのヒントブロックを描くことができます。 - -### 重要なもの - -``` -!> This is important -``` - -以下のように表示されます: - -!> This is important - -### 一般的なヒント - -``` -?> This is a helpful tip. -``` - -以下のように表示されます: - -?> This is a helpful tip. - - -# 機能を文章化する - -QMK のために新しい機能を作成した場合、そのドキュメントページを作成してください。長い必要は無く、機能を説明する幾つかの文と、関連するキーコードを列挙した表で十分です。以下は基本的なテンプレートです: - -```markdown -# My Cool Feature - -This page describes my cool feature. You can use my cool feature to make coffee and order cream and sugar to be delivered via drone. - -## My Cool Feature Keycodes - -|Long Name|Short Name|Description| -|---------|----------|-----------| -|KC_COFFEE||Make Coffee| -|KC_CREAM||Order Cream| -|KC_SUGAR||Order Sugar| -``` - -ドキュメントを `docs/feature_.md` に配置し、そのファイルを `docs/_summary.md` の適切な場所に追加します。キーコードを追加した場合は、機能ページに戻るリンクとともに `docs/keycodes.md` に追加するようにしてください。 diff --git a/docs/ja/documentation_templates.md b/docs/ja/documentation_templates.md deleted file mode 100644 index 0ba3caf5ec1..00000000000 --- a/docs/ja/documentation_templates.md +++ /dev/null @@ -1,45 +0,0 @@ -# ドキュメントテンプレート - - - -このページでは、新しいキーマップやキーボードを QMK に提出する際に使うべきテンプレートをまとめています。 - -## キーマップ `readme.md` テンプレート :id=keyboard-readmemd-template - -ほとんどのキーマップには、レイアウトを表す画像があります。画像を作成するには、[Keyboard Layout Editor](https://keyboard-layout-editor.com) を使うことができます。画像は [Imgur](https://imgur.com) や別のホスティングサービスにアップロードし、プルリクエストに画像を含めないでください。 - -画像の下には、キーマップを理解してもらうための簡単な説明文を書いてください。 - -``` -![Clueboard Layout Image](https://i.imgur.com/7Capi8W.png) - -# Default Clueboard Layout - -This is the default layout that comes flashed on every Clueboard. For the most -part it's a straightforward and easy to follow layout. The only unusual key is -the key in the upper left, which sends Escape normally, but Grave when any of -the Ctrl, Alt, or GUI modifiers are held down. -``` - -## キーボード `readme.md` テンプレート - -``` -# Planck - -![Planck](https://i.imgur.com/q2M3uEU.jpg) - -A compact 40% (12x4) ortholinear keyboard kit made and sold by OLKB and Massdrop. [More info on qmk.fm](https://qmk.fm/planck/) - -* Keyboard Maintainer: [Jack Humbert](https://github.com/jackhumbert) -* Hardware Supported: Planck PCB rev1, rev2, rev3, rev4, Teensy 2.0 -* Hardware Availability: [OLKB.com](https://olkb.com), [Massdrop](https://www.massdrop.com/buy/planck-mechanical-keyboard?mode=guest_open) - -Make example for this keyboard (after setting up your build environment): - - make planck/rev4:default - -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/docs/ja/driver_installation_zadig.md b/docs/ja/driver_installation_zadig.md deleted file mode 100644 index bd794b40763..00000000000 --- a/docs/ja/driver_installation_zadig.md +++ /dev/null @@ -1,53 +0,0 @@ -# Zadig を使ったブートローダドライバのインストール - - - -QMK はホストにたいして通常の HID キーボードデバイスとして振る舞うため特別なドライバは必要ありません。しかし、Windows でのキーボードへの書き込みは、多くの場合、キーボードをリセットした時に現れるブートローダデバイスで*行います*。 - -2つの注目すべき例外があります: 通常 Pro Micro で見られる Caterina ブートローダや、PJRC Teensy に書き込まれている HalfKay ブートローダは、それぞれシリアルポートと汎用 HID デバイスとして振る舞うため、ドライバは必要ありません。 - -[Zadig](https://zadig.akeo.ie/) ユーティリティを使うことをお勧めします。MSYS2 あるいは WSL を使って開発環境をセットアップした場合、`qmk_install.sh` スクリプトはドライバをインストールするかどうかをたずねます。 - -## インストール - -`RESET` キーコード (別のレイヤにあるかもしれません)を押すか、通常はキーボードの下面にあるリセットスイッチを押して、キーボードをブートローダモードにします。どちらもキーボードに無い場合は、Escape または Space+`B` を押しながら接続してみてください (詳細は、[ブートマジック](ja/feature_bootmagic.md) ドキュメントを見てください)。一部のキーボードはブートマジックの代わりに[コマンド](ja/feature_command.md)を使います。この場合、キーボードが接続されている状態で「左Shift + 右Shift + `B`」あるいは「左Shift + 右Shift + Escape」を押すと、ブートローダモードに入ることができます。 -一部のキーボードはブートローダに入るために特定の操作をする必要があります。例えば、[ブートマジック Lite](ja/feature_bootmagic.md#bootmagic-lite) キー (デフォルト: Escape) は別のキー(例えば、左Control)かもしれません。また、コマンドを有効にするキーの組み合わせ (デフォルト: 左Shift + 右Shift) は何か他のキー(例えば 左Control + 右Control)を押し続ける必要がある場合があります。不明な場合は、キーボードの README ファイルを参照してください。 - -USBaspLoader を使ってデバイスをブートローダモードにするには、`BOOT` ボタンを押しながら `RESET` ボタンをタップしてください。 -あるいは `BOOT` を押し続けながら USB ケーブルを挿入します。 - -Zadig は自動的にブートローダデバイスを検知します。**Options → List All Devices** を確認する必要がある場合があります。 - -- Atmel AVR MCU を搭載したキーボードの場合、ブートローダは `ATm32U4DFU` に似た名前が付けられ、ベンダー ID は `03EB` です。 -- USBasp ブートローダは `USBasp` として表示され、VID/PID は`16C0:05DC` です。 -- QMK-DFU ブートローダを使って書き込まれた AVR キーボードは ` Bootloader` という名前が付けられ、VID は `03EB` です。 -- ほとんどの ARM キーボードでは、`STM32 BOOTLOADER` と呼ばれ、VID/PID は `0483:DF11` です。 - -!> Zadig が `HidUsb` ドライバを使用する1つ以上のデバイスを表示する場合、キーボードはおそらくブートローダモードではありません。矢印はオレンジ色になり、システムドライバの変更を確認するように求められます。この場合、続行**しないでください**! - -矢印が緑色で表示されたら、ドライバを選択し、**Install Driver** をクリックします。`libusb-win32` ドライバは通常 AVR で動作し、`WinUSB`は ARM で動作しますが、それでもキーボードに書き込みできない場合は、リストから異なるドライバをインストールしてみてください。USBAspLoader デバイスは `libusbK` ドライバを使わなければなりません。 - -![ブートローダドライバが正常にインストールされた Zadig](https://i.imgur.com/b8VgXzx.png) - -最後に、新しいドライバがロードされたことを確認するためにキーボードのプラグを抜いて再接続します。書き込みに QMK Toolbox を使う場合は、ドライバの変更を認識しない場合があるため、QMK Toolkit を終了して再起動します。 - -## 間違ったデバイスのインストールからの回復 - -キーボードが入力できなくなった場合は、ブートローダではなくキーボード自体のドライバを間違って入れ替えた可能性があります。これはキーボードがブートローダモードでない場合に起こりえます。これは Zadig で簡単に確認することができます - 健全なキーボードには、全てのインタフェースに `HidUsb` ドライバがインストールされています: - -![Zadig から見た健全なキーボード](https://i.imgur.com/Hx0E5kC.png) - -デバイスマネージャーを開き、キーボードと思われるデバイスを探します。 - -![デバイスマネージャーにおける、間違ったドライバがインストールされたキーボード](https://i.imgur.com/L3wvX8f.png) - -右クリックし、**デバイスのアンインストール** をクリックします。最初に **このデバイスのドライバーソフトウェアを削除します** にチェックが付いていることを確認してください。 - -!["ドライバの削除"にチェックボックスにチェックが付いた、デバイスのアンインストールダイアログ](https://i.imgur.com/aEs2RuA.png) - -**Action → Scan for hardware changes** をクリックします。この時点で、再び入力できるようになっているはずです。Zadig でキーボードデバイスが `HidUsb` ドライバを使っていることを再確認します。そうであれば完了です。キーボードは再び機能するはずです! - -?> Windows が新しいドライバを使えるようにするために、この時点でコンピュータを完全に再起動する必要があるかもしれません。 diff --git a/docs/ja/faq_build.md b/docs/ja/faq_build.md deleted file mode 100644 index a1c55407ee4..00000000000 --- a/docs/ja/faq_build.md +++ /dev/null @@ -1,73 +0,0 @@ -# よくあるビルドの質問 - - - -このページは QMK のビルドに関する質問を説明します。まだビルドをしていない場合は、[ビルド環境のセットアップ](ja/getting_started_build_tools.md) および [Make 手順](ja/getting_started_make_guide.md)ガイドを読むべきです。 - -## Linux でプログラムできません -デバイスを操作するには適切な権限が必要です。Linux ユーザの場合は、以下の `udev` ルールに関する指示を見てください。`udev` に問題がある場合は、回避策は `sudo` コマンドを使うことです。このコマンドに慣れていない場合は、`man sudo` コマンドでマニュアルを確認するか、[この web ページを見てください](https://linux.die.net/man/8/sudo)。 - -コントローラが ATMega32u4 の場合の `sudo` の使い方の例: - - $ sudo dfu-programmer atmega32u4 erase --force - $ sudo dfu-programmer atmega32u4 flash your.hex - $ sudo dfu-programmer atmega32u4 reset - -あるいは、単純に: - - $ sudo make ::flash - -`make` を `sudo` で実行することは一般的には良い考えでは***なく***、可能であれば前者の方法のいずれかを使うべきです。 - -### Linux の `udev` ルール :id=linux-udev-rules - -Linux では、ブートローダデバイスと通信するには適切な権限が必要です。ファームウェアを書き込む時に `sudo` を使うか(非推奨)、`/etc/udev/rules.d/` に[このファイル](https://github.com/qmk/qmk_firmware/tree/master/util/udev/50-qmk.rules)を配置することで、通信することができます。 - -追加が完了したら、以下を実行します: - -``` -sudo udevadm control --reload-rules -sudo udevadm trigger -``` - -**注意:** 古い(1.12以前の) ModemManager では、フィルタリングは厳密なモードではない場合にのみ動作し、以下のコマンドはその設定を更新することができます。 - -``` -printf '[Service]\nExecStart=\nExecStart=/usr/sbin/ModemManager --filter-policy=default' | sudo tee /etc/systemd/system/ModemManager.service.d/policy.conf -sudo systemctl daemon-reload -sudo systemctl restart ModemManager -``` - -### Linux のブートローダモードで Serial デバイスが検知されない -カーネルがデバイスを適切にサポートしていることを確認してください。デバイスが、Pro Micro (Atmega32u4) のように USB ACM を使う場合、`CONFIG_USB_ACM=y` を含めるようにしてください。他のデバイスは `USB_SERIAL` およびそのサブオプションを必要とするかもしれません。 - -## DFU ブートローダの不明なデバイス - -Windows 上でキーボードを書き込む時に発生する問題は、ブートローダ用に間違ったドライバがインストールされているか、全くインストールされていないかによるものがほとんどです。 - -QMK インストールスクリプト (MSYS2 あるいは WSL 内の `qmk_firmware` ディレクトリから `./util/qmk_install.sh`) を再実行するか、QMK Toolbox の再インストールでこの問題が解決するかもしれません。別のやり方として、手動で [`qmk_driver_installer`](https://github.com/qmk/qmk_driver_installer) パッケージをダウンロードして実行することができます。 - -それでもうまく行かない場合は、Zadig をダウンロードして実行する必要があります。詳細な情報は [Zadig を使ったブートローダドライバのインストール](ja/driver_installation_zadig.md)を見てください。 - -## USB VID と PID -`config.h` を編集することで任意の ID を使うことができます。おそらく未使用の ID を使っても、他の製品と衝突するとても低い可能性があることを除いて、実際には問題はありません。 - -QMK のほとんどのキーボードは、vendor ID として、`0xFEED` を使います。他のキーボードを調べて、ユニークな ID を選択してください。 - -またこれも見てください。 -https://github.com/tmk/tmk_keyboard/issues/150 - -ここで本当にユニークな VID:PID を買うことができます。個人的な使用にはこれは必要ないと思います。 -- https://www.obdev.at/products/vusb/license.html -- https://www.mcselec.com/index.php?page=shop.product_details&flypage=shop.flypage&product_id=92&option=com_phpshop&Itemid=1 - -### キーボードに書き込んだが何も起こらない、あるいはキーの押下が登録されない - ARM (rev6 planck、clueboard 60、hs60v2 など) でも同じ (Feb 2019) -ARM ベースのチップ上での EEPROM の動作によって、保存された設定が無効になる場合があります。これはデフォルトレイヤに影響し、まだ調査中の特定の環境下でキーボードが使えなくなるかも*しれません*。EEPROM のリセットでこれが修正されます。 - -[Planck rev6 reset EEPROM](https://cdn.discordapp.com/attachments/473506116718952450/539284620861243409/planck_rev6_default.bin) を使って eeprom のリセットを強制することができます。このイメージを書き込んだ後で、通常のファームウェアを書き込むと、キーボードが _通常_ の動作順序に復元されます。 -[Preonic rev3 reset EEPROM](https://cdn.discordapp.com/attachments/473506116718952450/537849497313738762/preonic_rev3_default.bin) - -いずれかの形式でブートマジックが有効になっている場合は、これも実行できるはずです (実行方法の詳細については、[ブートマジックドキュメント](ja/feature_bootmagic.md)とキーボード情報を見てください)。 diff --git a/docs/ja/faq_debug.md b/docs/ja/faq_debug.md deleted file mode 100644 index 236f43a6ef5..00000000000 --- a/docs/ja/faq_debug.md +++ /dev/null @@ -1,131 +0,0 @@ -# デバッグの FAQ - - - -このページは、キーボードのトラブルシューティングについての様々な一般的な質問を説明します。 - -## デバッグ :id=debugging - -`rules.mk` へ `CONSOLE_ENABLE = yes` の設定をするとキーボードはデバッグ情報を出力します。デフォルトの出力は非常に限られたものですが、デバッグモードをオンにすることでデバッグ情報の量を増やすことが出来ます。キーマップの `DEBUG` キーコードを使用するか、デバッグモードを有効にする[コマンド](ja/feature_command.md)機能を使用するか、以下のコードをキーマップに追加します。 - -```c -void keyboard_post_init_user(void) { - // 希望する動作に合わせて値をカスタマイズします - debug_enable=true; - debug_matrix=true; - //debug_keyboard=true; - //debug_mouse=true; -} -``` - -## デバッグツール - -キーボードのデバッグに使えるツールは2つあります。 - -### QMK Toolbox を使ったデバッグ - -互換性のある環境では、[QMK Toolbox](https://github.com/qmk/qmk_toolbox) を使うことでキーボードからのデバッグメッセージを表示できます。 - -### hid_listen を使ったデバッグ - -ターミナルベースの方法がお好みですか?PJRC が提供する [hid_listen](https://www.pjrc.com/teensy/hid_listen.html) もデバッグメッセージの表示に使用できます。ビルド済みの実行ファイルは Windows、Linux、MacOS 用が用意されています。 - -## 独自のデバッグメッセージを送信する - -[カスタムコード](ja/custom_quantum_functions.md)内からデバッグメッセージを出力すると便利な場合があります。それはとても簡単です。ファイルの先頭に `print.h` のインクルードを追加します: - -```c -#include "print.h" -``` - -その後は、いくつかの異なった print 関数を使用することが出来ます: - -* `print("string")`: シンプルな文字列を出力します -* `uprintf("%s string", var)`: フォーマットされた文字列を出力します -* `dprint("string")` デバッグモードが有効な場合のみ、シンプルな文字列を出力します -* `dprintf("%s string", var)`: デバッグモードが有効な場合のみ、フォーマットされた文字列を出力します - -## デバッグの例 - -以下は現実世界での実際のデバッグ手法の例を集めたものです。 - -### マトリックス上のどの場所でキー押下が起こったか? - -移植する場合や、PCB の問題を診断する場合、キー入力が正しくスキャンされているかどうかを確認することが役立つ場合があります。この手法でのロギングを有効化するには、`keymap.c` へ以下のコードを追加します。 - -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - // コンソールが有効化されている場合、マトリックス上の位置とキー押下状態を出力します -#ifdef CONSOLE_ENABLE - uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u, interrupt: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); -#endif - return true; -} -``` - -出力例 -```text -Waiting for device:....... -Listening: -KL: kc: 169, col: 0, row: 0, pressed: 1 -KL: kc: 169, col: 0, row: 0, pressed: 0 -KL: kc: 174, col: 1, row: 0, pressed: 1 -KL: kc: 174, col: 1, row: 0, pressed: 0 -KL: kc: 172, col: 2, row: 0, pressed: 1 -KL: kc: 172, col: 2, row: 0, pressed: 0 -``` - -### キースキャンにかかる時間の測定 - -パフォーマンスの問題をテストする場合、スイッチマトリックスをスキャンする頻度を知ることが役立ちます。この手法でのロギングを有効化するには `config.h` へ以下のコードを追加します。 - -```c -#define DEBUG_MATRIX_SCAN_RATE -``` - -出力例 -```text - > matrix scan frequency: 315 - > matrix scan frequency: 313 - > matrix scan frequency: 316 - > matrix scan frequency: 316 - > matrix scan frequency: 316 - > matrix scan frequency: 316 -``` - -## `hid_listen` がデバイスを認識できない -デバイスのデバッグコンソールの準備ができていない場合、以下のように表示されます: - -``` -Waiting for device:......... -``` - -デバイスが接続されると、*hid_listen* がデバイスを見つけ、以下のメッセージが表示されます: - -``` -Waiting for new device:......................... -Listening: -``` - -この 'Listening:' のメッセージが表示されない場合は、[Makefile] を `CONSOLE_ENABLE=yes` に設定してビルドしてみてください - -Linux のような OS でデバイスにアクセスするには、特権が必要かもしれません。`sudo hid_listen` を試してください。 - -多くの Linux ディストリビューションでは、次の内容で `/etc/udev/rules.d/70-hid-listen.rules` というファイルを作成することで、root として hid_listen を実行する必要がなくなります: - -``` -SUBSYSTEM=="hidraw", ATTRS{idVendor}=="abcd", ATTRS{idProduct}=="def1", TAG+="uaccess", RUN{builtin}+="uaccess" -``` - -abcd と def1 をキーボードのベンダーとプロダクト IDに置き換えてください。文字は小文字でなければなりません。`RUN{builtin}+="uaccess"` の部分は、古いディストリビューションでのみ必要です。 - -## コンソールにメッセージが表示されない -以下を調べてください: -- *hid_listen* がデバイスを検出する。上記を見てください。 -- **Magic**+d を使ってデバッグを有効にする。[マジックコマンド](https://github.com/tmk/tmk_keyboard#magic-commands)を見てください。 -- `debug_enable=true` を設定します。[デバッグ](#debugging)を見てください。 -- デバッグプリントの代わりに `print` 関数を使ってみてください。**common/print.h** を見てください。 -- コンソール機能を持つ他のデバイスを切断します。[Issue #97](https://github.com/tmk/tmk_keyboard/issues/97) を見てください。 diff --git a/docs/ja/faq_general.md b/docs/ja/faq_general.md deleted file mode 100644 index 407846b7883..00000000000 --- a/docs/ja/faq_general.md +++ /dev/null @@ -1,58 +0,0 @@ -# よくある質問 - - - -## QMK とは何か? - -Quantum Mechanical Keyboard の略である [QMK](https://github.com/qmk) は、カスタムキーボードのためのツールをビルドしている人々のグループです。[TMK](https://github.com/tmk/tmk_keyboard) の大幅に修正されたフォークである [QMK ファームウェア](https://github.com/qmk/qmk_firmware)から始まりました。 - -## どこから始めればいいかわかりません! - -この場合は、[初心者ガイド](ja/newbs.md) から始めるべきです。ここには多くの素晴らしい情報があり、それらはあなたが始めるのに必要な全てをカバーするはずです。 - -問題がある場合は、[QMK Configurator](https://config.qmk.fm)にアクセスしてください。あなたが必要なものの大部分が処理されます。 - -## ビルドしたファームウェアを書き込むにはどうすればいいですか? - -まず、[コンパイル/書き込み FAQ ページ](ja/faq-build.md) に進みます。そこにはたくさんの情報があり、そこには一般的な問題に対する多くの解決策があります。 - -## ここで取り上げていない問題がある場合はどうしますか? - -OK、問題ありません。[GitHub で issue を開く](https://github.com/qmk/qmk_firmware/issues) をチェックして、誰かが同じこと(似ているかだけでなく実際に同じであることを確認してください)を経験しているかどうかを確認してください。 - -もし何も見つからない場合は、[新しい issue](https://github.com/qmk/qmk_firmware/issues/new) を開いてください! - -## バグを見つけたらどうしますか? - -[issue](https://github.com/qmk/qmk_firmware/issues/new) を開いてください。そしてもし修正方法を知っている場合は、GitHub で修正のプルリクエストを開いてください。 - -## しかし、`git` と `GitHub` は怖いです! - -心配しないでください。開発を容易にするために `git` と GitHub を使い始めるための、かなり良い [ガイドライン](ja/newbs_git_best_practices.md) があります。 - -さらに、追加の `git` と GitHub の関連リンクを [ここ](ja/newbs_learn_more_resources.md) に見つけることができます。 - -## サポートを追加したいキーボードがあります - -素晴らしい!プルリクエストを開いてください。私たちはコードをレビューし、マージします! - -### `QMK` でブランドしたい場合はどうればいいですか? - -素晴らしい!私たちはあなたを支援したいと思います! - -実際、私たちにはあなたのページとキーボードに QMK ブランドを追加するための [完全なページ](https://qmk.fm/powered/) があります。これは QMK を公式にサポートするために必要なほぼ全て(知識と画像)をカバーしています。 - -これについて質問がある場合は、issue を開くか、[Discord](https://discord.gg/Uq7gcHh) に進んでください。 - -## QMK と TMK の違いは何か? - -TMK は [Jun Wako](https://github.com/tmk) によって設計され実装されました。QMK は [Jack Humbert](https://github.com/jackhumbert) の Planck 用 TMK のフォークとして始まりました。しばらくして、Jack のフォークは TMK からかなり分岐し、2015年に Jack はフォークを QMK に名前を変えることにしました。 - -技術的な観点から、QMK は幾つかの新しい機能を追加した TMK に基づいています。最も注目すべきことは、QMK は利用可能なキーコードの数を増やし、`S()`、`LCTL()` および `MO()` などの高度な機能を実装するためにこれらを使っています。[キーコード](ja/keycodes.md)でこれらのキーコードの完全なリストを見ることができます。 - -プロジェクトとコミュニティの管理の観点から、TMK は公式にサポートされている全てのキーボードを自分で管理しており、コミュニティのサポートも少し受けています。他のキーボード用に別個のコミュニティが維持するフォークが存在するか、作成できます。デフォルトでは少数のキーマップのみが提供されるため、ユーザは一般的にお互いにキーマップを共有しません。QMK は集中管理されたリポジトリを介して、キーボードとキーマップの両方を共有することを奨励しており、品質基準に準拠する全てのプルリクエストを受け付けます。これらはほとんどコミュニティで管理されますが、必要な場合は QMK チームも支援します。 - -どちらのアプローチもメリットとデメリットがあり、理に適う場合は TMK と QMK の間でコードは自由にやり取りされます。 diff --git a/docs/ja/faq_keymap.md b/docs/ja/faq_keymap.md deleted file mode 100644 index 9c6cf6232de..00000000000 --- a/docs/ja/faq_keymap.md +++ /dev/null @@ -1,160 +0,0 @@ -# キーマップの FAQ - - - -このページは人々がキーマップについてしばしば持つ疑問について説明します。まだ読んだことが無い場合には、[キーマップの概要](ja/keymap.md)を最初に読むべきです。 - -## どのキーコードを使えますか? -あなたが利用可能なキーコードのインデックスについては、[キーコード](ja/keycodes.md)を見てください。より広範なドキュメントがある場合は、そこからリンクしてあります。 - -キーコードは実際には [common/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/keycode.h) で定義されています。 - -## デフォルトのキーコードとは何か? - -世界中で使用されている ANSI、ISO および JIS の3つの標準キーボードがあります。北米では主に ANSI が使われ、ヨーロッパおよびアフリカでは主に ISO が使われ、日本では JIS が使われます。言及されていない地域では、ANSI あるいは ISO が使われています。これらのレイアウトに対応するキーコードは以下の通りです: - - -![キーボードのレイアウトイメージ](https://i.imgur.com/5wsh5wM.png) - -## 複雑なキーコードのカスタム名を作成する方法はありますか? - -時には、読みやすくするために、一部のキーコードにカスタム名を定義すると役に立ちます。人々は、しばしば `#define` を使ってカスタム名を定義します。例えば: - -```c -#define FN_CAPS LT(_FL, KC_CAPSLOCK) -#define ALT_TAB LALT(KC_TAB) -``` - -これにより、キーマップで `FN_CAPS` と `ALT_TAB` を使えるようになり、読みやすくなります。 - -## 一部のキーが入れ替わっているか、または動作しない - -QMK には2つの機能、ブートマジックとコマンドがあり、これによりその場でキーボードの動作を変更することができます。これには Ctrl/Caps の交換、Gui の無効化、Alt/Gui の交換、Backspace/Backslash の交換、全てのキーの無効化およびその他の動作の変更が含まれますが、これらに限定されません。 - -迅速な解決策として、キーボードを接続している時に `Space`+`Backspace` を押してみてください。これはキーボードに保存されている設定をリセットし、これらのキーを通常の操作に戻します。うまく行かない場合は、以下を見てください: - -* [ブートマジック](ja/feature_bootmagic.md) -* [コマンド](ja/feature_command.md) - -## メニューキーが動作しない - -ほとんどの最近のキーボードにある、`KC_RGUI` と `KC_RCTL` の間にあるキーは、実際には `KC_APP` と呼ばれます。これは、そのキーが発明された時に、関連する標準にすでに `MENU` という名前のキーが存在していたため、MS はそれを `APP` キーと呼ぶことを選択したためです。 - -## `KC_SYSREQ` が動作しません -`KC_SYSREQ` の代わりに、Print Screen(`KC_PSCREEN` あるいは `KC_PSCR`) のキーコードを使ってください。'Alt + Print Screen' のキーの組み合わせは、'システムリクエスト' と認識されます。 - -[issue #168](https://github.com/tmk/tmk_keyboard/issues/168) と以下を見てください -* https://en.wikipedia.org/wiki/Magic_SysRq_key -* https://en.wikipedia.org/wiki/System_request - -## 電源キーが動作しません - -やや紛らわしいことに、QMK には2つの "Power" キーコードがあります: キーボード/キーパッド HID usage page では `KC_POWER`、Consumer page では `KC_SYSTEM_POWER` (あるいは `KC_PWR`)。 - -前者は macOS でのみ認識されますが、後者 `KC_SLEP` および `KC_WAKE` は3つの主要なオペレーティングシステム全てでサポートされるため、これらを使うことをお勧めします。Windows ではこれらのキーはすぐに機能しますが、macOS ではそれらはダイアログが表示されるまで押し続ける必要があります。 - -## ワンショットモディファイア -私の個人的な 'the' の問題を解決します。'The' ではなく 'the' あるいは 'THe' を間違って入力することがありました。ワンショットシフトはこれを軽減します。 -https://github.com/tmk/tmk_keyboard/issues/67 - -## モディファイヤ/レイヤスタック -修飾キーあるいはレイヤは、レイヤの切り替えが適切に設定されていない場合、スタックするかもしれません。 -修飾キーおよびレイヤ切り替えの場合、リリースイベント時に修飾キーの登録を解除する、もしくは前のレイヤに戻るために、目的のレイヤの同じ位置に `KC_TRANS` を配置する必要があります。 - -* https://github.com/tmk/tmk_core/blob/master/doc/keymap.md#31-momentary-switching -* https://geekhack.org/index.php?topic=57008.msg1492604#msg1492604 -* https://github.com/tmk/tmk_keyboard/issues/248 - - -## メカニカルロックスイッチのサポート - -この機能は [Alps](https://deskthority.net/wiki/Alps_SKCL_Lock) のような*メカニカルロックスイッチ*用です。以下を `config.h` に追加することで有効にすることができます: - -``` -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE -``` - -この機能を有効にした後で、キーマップでキーコード `KC_LCAP`、`KC_LNUM` および `KC_LSCR` を使います。 - -古いビンテージメカニカルキーボードにはロックスイッチが付いている場合がありますが、最新のものにはありません。***ほとんどの場合この機能は必要なく、単にキーコード `KC_CAPS`、`KC_NUM` および `KC_SCRL`*** を使います。 - -## セディーユ 'Ç' のような ASCII 以外の特別文字の入力 - -[ユニコード](ja/feature_unicode.md) 機能を見てください。 - -## macOS での `Fn` キー - -ほとんどの Fn キーと異なり、Apple のキーボードの Fn キーには実際には独自のキーコードのようなものがあります。基本的な 6KRO HID レポートの6番目のキーコードの代わりになります -- つまり、Apple キーボードは実際には 5KRO のみです。 - -QMK にこのキーを送信させることは技術的に可能です。ただし、そうするには Fn キーの状態を追加するためにレポート形式の修正を必要とします。 -さらに悪いことに、キーボードの VID と PID が実際の Apple のキーボードのものと一致しない限り、認識されません。公式の QMK がこの機能をサポートすることで法的な問題が起きるため、サポートされることはないでしょう。 - -詳細については、[この issue](https://github.com/qmk/qmk_firmware/issues/2179) を見てください。 - -## Mac OSX でサポートされるキーは? -このソースコードから、どのキーコードが OSX でサポートされるかを知ることができます。 - -`usb_2_adb_keymap` 配列は、キーボード/キーパッドページの Page usages を ADB スキャンコード(OSX 内部キーコード)にマップします。 - -https://opensource.apple.com/source/IOHIDFamily/IOHIDFamily-606.1.7/IOHIDFamily/Cosmo_USB2ADB.c - -`IOHIDConsumer::dispatchConsumerEvent` は Consumer page usages を処理します。 - -https://opensource.apple.com/source/IOHIDFamily/IOHIDFamily-606.1.7/IOHIDFamily/IOHIDConsumer.cpp - - -## Mac OSX での JIS キー -`無変換(Muhenkan)`, `変換(Henkan)`, `ひらがな(hiragana)` のような日本語 JIS キーボード固有のキーは OSX では認識されません。**Seil** を使ってこれらのキーを使うことができます。以下のオプションを試してください。 - -* PC キーボードで NFER キーを有効にする -* PC キーボードで XFER キーを有効にする -* PC キーボードで KATAKANA キーを有効にする - -https://pqrs.org/osx/karabiner/seil.html - - -## RN-42 Bluetooth が Karabiner で動作しない -Karabiner - Mac OSX 上のキーマッピングツール - は、デフォルトでは RN-42 モジュールからの入力を無視します。Karabiner をキーボードで動作させるにはこのオプションを有効にする必要があります。 -https://github.com/tekezo/Karabiner/issues/403#issuecomment-102559237 - -この問題の詳細についてはこれらを見てください。 -https://github.com/tmk/tmk_keyboard/issues/213 -https://github.com/tekezo/Karabiner/issues/403 - - -## 単一のキーでの Esc と` - -[Grave Escape](ja/feature_grave_esc.md) 機能を見てください。 - -## Mac OSX での Eject -`KC_EJCT` キーコードは OSX で動作します。https://github.com/tmk/tmk_keyboard/issues/250 -Windows 10 はコードを無視し、Linux/Xorg は認識しますが、デフォルトではマッピングがありません。 - -実際の Apple キーボードにある Eject キーコードは実際には分かりません。HHKB は Mac モードでは Eject キー (`Fn+f`) に `F20` を使いますが、これはおそらく Apple の Eject キーコードと同じではありません。 - - -## `action_util.c` の `weak_mods` と `real_mods` は何か -___改善されるべきです___ - -real_mods は実際の物理的な修飾キーの状態を保持することを目的にしていますが、weak_mods は実際の修飾キーの状態に影響しない仮想あるいは一時的なモディファイアの状態を保持します。 - -物理的な左シフトキーを押しながら ACTION_MODS_KEY(LSHIFT, KC_A) を入力するとします - -weak_mods では、 -* (1) 左シフトキーを押し続ける: real_mods |= MOD_BIT(LSHIFT) -* (2) ACTION_MODS_KEY(LSHIFT, KC_A) を押す: weak_mods |= MOD_BIT(LSHIFT) -* (3) ACTION_MODS_KEY(LSHIFT, KC_A) を放す: weak_mods &= ~MOD_BIT(LSHIFT) -real_mods はモディファイアの状態を維持します。 - -weak mods 無しでは、 -* (1) 左シフトキーを押し続ける: real_mods |= MOD_BIT(LSHIFT) -* (2) ACTION_MODS_KEY(LSHIFT, KC_A) を押す: real_mods |= MOD_BIT(LSHIFT) -* (3) ACTION_MODS_KEY(LSHIFT, KC_A) を放す: real_mods &= ~MOD_BIT(LSHIFT) -ここで、real_mods は 'physical left shift' '物理的な左シフト' の状態を見失います。 - -キーボードレポートが送信される時、weak_mods は real_mods と論理和がとられます。 -https://github.com/tmk/tmk_core/blob/master/common/action_util.c#L57 diff --git a/docs/ja/faq_misc.md b/docs/ja/faq_misc.md deleted file mode 100644 index 24a0e18235d..00000000000 --- a/docs/ja/faq_misc.md +++ /dev/null @@ -1,103 +0,0 @@ -# その他の FAQ - - - -## どうやってキーボードをテストすればいいですか? :id=testing - -通常、キーボードのテストは非常に簡単です。全てのキーをひとつずつ押して、期待するキーが送信されることを確認します。例え QMK で動作していない場合でも、[QMK Configurator](https://config.qmk.fm/#/test/) のテストモードを使用すると、キーボードをチェックできます。 - -## 安全性の考慮 - -あなたはおそらくキーボードを「文鎮化」したくないでしょう。文鎮化するとファームウェアを書き換えられないようになります。リスクがあまりに高い(そしてそうでないかもしれない)ものの一部のリストを示します。 - -- キーボードマップに QK_BOOT が含まれない場合、DFU モードに入るには、PCB のリセットボタンを押す必要があります。底部のネジを外す必要があります。 -- tmk_core / common にあるファイルを触るとキーボードが操作不能になるかもしれません。 -- .hex ファイルが大きすぎると問題を引き起こします; `make dfu` コマンドはブロックを削除し、サイズを検査し(おっと、間違った順序です!)、エラーを出力し、 -キーボードへの書き込みに失敗し、DFU モードのままになります。 - - この目的のためには、Planck の最大の .hex ファイルサイズは 7000h (10進数で28672)であることに注意してください。 - -``` -Linking: .build/planck_rev4_cbbrowne.elf [OK] -Creating load file for Flash: .build/planck_rev4_cbbrowne.hex [OK] - -Size after: - text data bss dec hex filename - 0 22396 0 22396 577c planck_rev4_cbbrowne.hex -``` - - - 上のファイルのサイズは 22396/577ch で、28672/7000h より小さいです。 - - 適切な代わりの .hex ファイルがある限り、それをロードして再試行することができます。 - - あなたがキーボードの Makefile で指定したかもしれない一部のオプションは、余分なメモリを消費します; BOOTMAGIC_ENABLE、MOUSEKEY_ENABLE、EXTRAKEY_ENABLE、CONSOLE_ENABLE、API_SYSEX_ENABLE に注意してください。 -- DFU ツールは(オプションの余計なフルーツサラダを投げ込まない限り)ブートローダに書き込むことを許可しないので、ここにはリスクはほとんどありません。 -- EEPROM の書き込みサイクルは、約100000(10万)です。ファームウェアを繰り返し継続的に書き換えるべきではありません。それは最終的に EEPROM を焼き焦がします。 - -## NKRO が動作しません -最初に、**Makefile** 内でビルドオプション `NKRO_ENABLE` を使ってファームウェアをコンパイルする必要があります。 - -**NKRO** がまだ動作しない場合は、`Magic` **N** コマンド(デフォルトでは `LShift+RShift+N`)を試してみてください。**NKRO** モードと **6KRO** モード間を一時的に切り替えるためにこのコマンドを使うことができます。**NKRO** が機能しない状況、特に BIOS の場合は **6KRO** モードに切り替える必要があります。 - - -## トラックポイントははリセット回路が必要です (PS/2 マウスサポート) -リセット回路が無いとハードウェアの不適切な初期化のために一貫性の無い結果になります。TPM754 の回路図を見てください: - -- https://geekhack.org/index.php?topic=50176.msg1127447#msg1127447 -- https://www.mikrocontroller.net/attachment/52583/tpm754.pdf - - -## 16 を超えるマトリックの列を読み込めない -列が 16 を超える場合、[matrix.h] の `read_cols()` 内の `1<<16` の代わりに `1UL<<16` を使ってください。 - -C では、AVR の場合 `1` は [16 bit] である [int] 型の1を意味し、15を超えて左にシフトすることはできません。従って、`1<<16` を計算すると予期せずゼロになります。これを回避するには `1UL` として [unsigned long] 型を使う必要があります。 - -https://deskthority.net/workshop-f7/rebuilding-and-redesigning-a-classic-thinkpad-keyboard-t6181-60.html#p146279 - -## 特別なエクストラキーが動作しない(システム、オーディオコントロールキー) -QMK でそれらを使うには、`rules.mk` 内で `EXTRAKEY_ENABLE` を定義する必要があります。 - -``` -EXTRAKEY_ENABLE = yes # オーディオ制御とシステム制御 -``` - -## スリープから復帰しない - -**デバイスマネージャ**の**電源の管理**タブ内の `このデバイスで、コンピュータのスタンバイ状態を解除できるようにする` 設定を調べてください。また BIOS 設定も調べてください。スリープ中に任意のキーを押すとホストが起動するはずです。 - -## Arduino を使っていますか? - -**Arduino のピンの命名は実際のチップと異なることに注意してください。** 例えば、Arduino のピン `D0` は `PD0` ではありません。回路図を自身で確認してください。 - -- https://arduino.cc/en/uploads/Main/arduino-leonardo-schematic_3b.pdf -- https://arduino.cc/en/uploads/Main/arduino-micro-schematic.pdf - -Arduino の Leonardo と micro には **ATMega32U4** が載っていて、TMK 用に使うことができますが、Arduino のブートローダが問題になることがあります。 - -## JTAG を有効にする - -デフォルトでは、キーボードが起動するとすぐに JTAG デバッグインタフェースが無効になります。JTAG 対応 MCU は `JTAGEN` ヒューズが設定された状態で出荷されており、キーボードがスイッチマトリックス、LED などに使用している可能性のある MCU の特定のピンを乗っ取ります。 - -JTAG を有効にしたままにしたい場合は、単に以下のものを `config.h` に追加します: - -```c -#define NO_JTAG_DISABLE -``` - -## USB 3 の互換性 -一部の問題は、USB 3.x ポートから USB 2.0 ポートに切り替えることで修正できます。 - - -## Mac の互換性 -### OS X 10.11 と Hub -こちらを見てください: https://geekhack.org/index.php?topic=14290.msg1884034#msg1884034 - - -## BIOS (UEFI) 設定/リジューム (スリープとウェークアップ)/電源サイクルの問題 -一部の人がキーボードが BIOS で動作しなくなった、またはリジューム(電源サイクル)の後で動作しなくなったと報告しました。 - -今のところ、この問題の根本は明確ではないですが、幾つかのビルドオプションが関係しているようです。Makefile で、`CONSOLE_ENABLE`、`NKRO_ENABLE`、`SLEEP_LED_ENABLE` あるいは他のオプションを無効にしてみてください。 - -より詳しい情報: -- https://github.com/tmk/tmk_keyboard/issues/266 -- https://geekhack.org/index.php?topic=41989.msg1967778#msg1967778 diff --git a/docs/ja/feature_advanced_keycodes.md b/docs/ja/feature_advanced_keycodes.md deleted file mode 100644 index 2416c742a0e..00000000000 --- a/docs/ja/feature_advanced_keycodes.md +++ /dev/null @@ -1,185 +0,0 @@ -# 修飾キー :id=modifier-keys - - - -以下のようにキーコードとモディファイアを組み合わせることができます。押すと、モディファイアのキーダウンイベントが送信され、次に `kc` のキーダウンイベントが送信されます。放すと、`kc` のキーアップイベントが送信され、次にモディファイアのキーアップイベントが送信されます。 - -| キー | エイリアス | 説明 | -| ---------- | ---------------------------------- | ------------------------------------------------------------------- | -| `LCTL(kc)` | `C(kc)` | 左 Control を押しながら `kc` を押します。 | -| `LSFT(kc)` | `S(kc)` | 左 Shift を押しながら `kc` を押します。 | -| `LALT(kc)` | `A(kc)`, `LOPT(kc)` | 左 Alt を押しながら `kc`を押します。 | -| `LGUI(kc)` | `G(kc)`, `LCMD(kc)`, `LWIN(kc)` | 左 GUI を押しながら `kc` を押します。 | -| `RCTL(kc)` | | 右 Control を押しながら `kc` を押します。 | -| `RSFT(kc)` | | 右 Shift を押しながら `kc` を押します。 | -| `RALT(kc)` | `ROPT(kc)`, `ALGR(kc)` | 右 Alt を押しながら `kc` を押します。 | -| `RGUI(kc)` | `RCMD(kc)`, `LWIN(kc)` | 右 GUI を押しながら `kc` を押します。 | -| `LSG(kc)` | `SGUI(kc)`, `SCMD(kc)`, `SWIN(kc)` | 左 Shift と左 GUI を押しながら `kc` を押します。 | -| `LAG(kc)` | | 左 Alt と左 GUI を押しながら `kc` を押します。 | -| `RSG(kc)` | | 右 Shift と右 GUI を押しながら `kc` を押します。 | -| `RAG(kc)` | | 右 Alt と右 GUI を押しながら `kc` を押します。 | -| `LCA(kc)` | | 左 Control と左 Alt を押しながら `kc` を押します。 | -| `LSA(kc)` | | 左 Shift と左 Alt を押しながら `kc` を押します。 | -| `RSA(kc)` | `SAGR(kc)` | 右 Shift と右 Alt (AltGr) を押しながら `kc` を押します。 | -| `RCS(kc)` | | 右 Control と右 Shift を押しながら `kc` を押します。 | -| `LCAG(kc)` | | 左 Control、左 Alt、左 GUI を押しながら `kc` を押します。 | -| `MEH(kc)` | | 左 Control、左 Shift、左 Alt を押しながら `kc` を押します。 | -| `HYPR(kc)` | | 左 Control、左 Shift、左 Alt、左 GUI を押しながら `kc` を押します。 | - -また、それらを繋げることができます。例えば、`LCTL(LALT(KC_DEL))` または `C(A(KC_DEL))` は1回のキー押下で Control+Alt+Delete を送信するキーを作成します。 - -# モディファイアの状態を確認 :id=checking-modifier-state - - -現在のモディファイアの状態は、2つの関数によって主にアクセスされます。: `get_mods()` 関数は通常のモディファイアとモッドタップの状態を、`get_oneshot_mods()` 関数はワンショットモディファイアの状態を確認する関数です。(ワンショットモディファイアはキーが押されていない限り、通常のモディファイアキーのように動作します。) - -1つ以上の特定のモディファイアが現在のモディファイアの状態に含まれているかどうかは、モディファイアの状態と、照合したいモディファイアの組み合わせに相当するモッドマスクとを AND 演算することで検出できます。 -ビット演算が使われる理由は、モディファイアの状態が (GASC)R(GASC)L の形式で1バイトとして格納されるためです。 - -従って、例を挙げると、`01000010` は LShift+RALT の内部表現です。 -C 言語におけるビット演算のより詳しい情報は、[ここ](https://en.wikipedia.org/wiki/Bitwise_operations_in_C) をクリックして、Wikipedia のページのトピックを開いてください。 - -実際には、`get_mods() & MOD_BIT(KC_)`([モディファイアキーコードのリスト](ja/keycodes_basic.md#modifiers) 参照) で、あるモディファイアが有効かどうかをチェックできるということです、また左右のモディファイアの違いが重要ではなく、両方にマッチさせたい場合は、`get_mods() & MOD_MASK_`とします。ワンショットモディファイアについても、`get_mods()` を `get_oneshot_mods()` に置き換えれば同じことができます。 - -モディファイアの特定の組み合わせが同時にアクティブなのか確認する*だけ*なら、上で説明したモディファイアの状態とモッドマスクの論理積と、モッドマスク自身の結果を比較します。: `get_mods() & == ` - -例えば、左 Control キーと 左 Shift キーのワンショットモディファイアがオンで、その他のワンショットモディファイアがオフの場合にカスタムコードを起動したいとしましょう。そうするには、`(MOD_BIT(KC_LCTL) | MOD_BIT(KC_LSFT))` で左 Control キーと Shift キーのモッドビットを組み合わせて目的のモッドマスクを構成し、それらを差し込みます: `get_oneshot_mods & (MOD_BIT(KC_LCTL) | MOD_BIT(KC_LSFT)) == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_LSFT))`。モッドビットマスクの代わりに `MOD_MASK_CS` 使うと、条件を満たすために4つのモディファイアキー (左右両方の Control キーと Shift キー) を押す必要があります。 - -モッドマスクの完全なリストは、以下のとおりです。 - -| モッドマスク名 | マッチするモディファイア | -|--------------------|-------------------------------------------------------------| -| `MOD_MASK_CTRL` | 左 Control , 右 Control | -| `MOD_MASK_SHIFT` | 左 Shift , 右 Shift | -| `MOD_MASK_ALT` | 左 Alt , 右 Alt | -| `MOD_MASK_GUI` | 左 GUI , 右 GUI | -| `MOD_MASK_CS` | Control , Shift | -| `MOD_MASK_CA` | (左/右) Control , (左/右) Alt | -| `MOD_MASK_CG` | (左/右) Control , (左/右) GUI | -| `MOD_MASK_SA` | (左/右) Shift , (左/右) Alt | -| `MOD_MASK_SG` | (左/右) Shift , (左/右) GUI | -| `MOD_MASK_AG` | (左/右) Alt , (左/右) GUI | -| `MOD_MASK_CSA` | (左/右) Control , (左/右) Shift , (左/右) Alt | -| `MOD_MASK_CSG` | (左/右) Control , (左/右) Shift , (左/右) GUI | -| `MOD_MASK_CAG` | (左/右) Control , (左/右) Alt , (左/右) GUI | -| `MOD_MASK_SAG` | (左/右) Shift , (左/右) Alt , (左/右) GUI | -| `MOD_MASK_CSAG` | (左/右) Control , (左/右) Shift , (左/右) Alt , (左/右) GUI | - -`get_mods()` 関数を使って現在アクティブなモディファイアにアクセスする以外に、モディファイアの状態を変更するために使えるいくつかの関数があります。ここでは、`mods` 引数はモディファイアビットマスクを表します。 - -* `add_mods(mods)`: その他のモディファイアに影響を与えずに `mods` を有効にします。 -* `register_mods(mods)`: `add_mods` に似ていますが、キーボードにすぐにレポートを送信します。 -* `del_mods(mods)`: その他のモディファイアに影響を与えずに `mods` を無効にします。 -* `unregister_mods(mods)`: `del_mods` に似ていますが、キーボードにすぐにレポートを送信します。 -* `set_mods(mods)`: `mods` で現在のモディファイアの状態を上書きします -* `clear_mods()`: 全てのモディファイアを無効にすることによって、モディファイアの状態をリセットします。 - -同様に、`get_oneshot_mods()` 関数に加えて、ワンショットモディファイアのための関数もあります。 - -* `add_oneshot_mods(mods)`: その他のワンショットモディファイアに影響を与えずに `mods` を有効にします -* `del_oneshot_mods(mods)`: その他のワンショットモディファイアに影響を与えずに `mods` を無効にします -* `set_oneshot_mods(mods)`: `mods` で現在のワンショットモディファイアの状態を上書きします -* `clear_oneshot_mods()`: 全てのワンショットモディファイアを無効にすることによって、ワンショットモディファイアの状態をリセットします。 - -## 例 :id=examples - -次の例は、[マクロについてのページ](ja/feature_macros.md) で読める [高度なマクロ](ja/feature_macros.md?id=advanced-macro-functions) を使っています。 -### Alt + Tab の代わりの Alt + Escape :id=alt-escape-for-alt-tab - -左 Alt と `KC_ESC` が押されたときに、アプリ切り替えの(左 Alt と) `KC_TAB` のように振る舞うことを実現する単純な例です。この例は、左 Alt だけがアクティブになっているかを厳格に確認します。つまり、Alt+Shift+Esc によるアプリの逆順での切り替えはできません。また、この例は、実際の Alt+Escape キーボードショートカットを起動することはできなくなりますが、AltGr+Escape キーボードショートカットを起動することはできることに留意してください。 - -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - - case KC_ESC: - // 左 Alt だけがアクティブか検知します - if ((get_mods() & MOD_BIT(KC_LALT)) == MOD_BIT(KC_LALT)) { - if (record->event.pressed) { - // KC_LALT を登録する必要はありません。既にアクティブだからです。 - // Alt モディファイアはこの KC_TAB に適用されます。 - register_code(KC_TAB); - } else { - unregister_code(KC_TAB); - } - // QMK にこれ以上キーコードの処理をさせません。 - return false; - } - // それ以外の場合は、QMK に通常通り KC_ESC の処理をさせます。 - return true; - - } - return true; -}; -``` - -### Delete の代わりの Shift + Backspace :id=shift-backspace-for-delete - -`KC_BSPC` と組み合わせることで Shift の本来の動作が取り消され、そして、`KC_DEL` に完全に置き換えられる高度な例です。この例を適切に動作させるために2つのメイン変数が作られます。: `mod_state` と `delkey_registered` です。最初の1つ目の変数は、モディファイアの状態を記憶し、`KC_DEL` を登録した後に元に戻すために使われます。2つ目の変数はブール型変数 (true または false) で、`KC_DEL` の状態を追跡して Backspace/Delete キー全体のリリースを正確に管理します。 - -前の例と対照的に、この例は厳格なモディファイアの確認を行いません。このカスタムコードを起動するには、1つまたは2つの Shift キーがアクティブな間に `KC_BSPC` を押せば十分で、他のモディファイアの状態は関係ありません。この方法は、いくつかの特典を提供します。: Ctrl+Shift+Backspace は次の単語を削除 (Control+Delete) し、Ctrl+Alt+Shift+Backspace は Ctrl+Alt+Del キーボードショートカットを実行します。 - -```c -// アクティブなモディファイアを表すバイナリデータを保持する変数を初期化します -uint8_t mod_state; -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - // 後々の参照のために現在のモディファイアの状態を変数に格納します - mod_state = get_mods(); - switch (keycode) { - - case KC_BSPC: - { - // Delete キーの状態(登録されているかどうか)を追跡するブール型変数を初期化します。 - static bool delkey_registered; - if (record->event.pressed) { - // いずれかの Shift がアクティブか検知します - if (mod_state & MOD_MASK_SHIFT) { - // 最初に、 Shift キーを KC_DEL に適用しないため、 - // 一時的に左右両方の Shift キーをキャンセルします - del_mods(MOD_MASK_SHIFT); - register_code(KC_DEL); - // KC_DEL の状態を反映させるためにブール型変数を更新します - delkey_registered = true; - // Backspace/Delete キーをタップした後でも押し続けている Shift キーが機能するように、 - // モディファイアの状態を再適用します。 - set_mods(mod_state); - return false; - } - } else { // KC_BSPC キーを離した場合 - // KC_BSPC を離しても KC_DEL が送信されている場合 - if (delkey_registered) { - unregister_code(KC_DEL); - delkey_registered = false; - return false; - } - } - // QMK に Shift キーを除いて KC_BSPC を通常通り処理させます - return true; - } - - } - return true; -}; -``` -# 過去の内容 :id=legacy-content - -このページには多くの機能が含まれていました。このページを構成していた多くのセクションをそれぞれのページに移動しました。これより下は全て単なるリダイレクトであるため、web上で古いリンクをたどっている人は探しているものを見つけることができます。 - -## レイヤー :id=switching-and-toggling-layers - -* [レイヤー](ja/feature_layers.md) - -## モッドタップ :id=mod-tap - -* [モッドタップ](ja/mod_tap.md) - -## ワンショットキー :id=one-shot-keys - -* [ワンショットキー](ja/one_shot_keys.md) - -## タップホールド設定オプション :id=tap-hold-configuration-options - -* [タップホールド設定オプション](ja/tap_hold.md) diff --git a/docs/ja/feature_audio.md b/docs/ja/feature_audio.md deleted file mode 100644 index 2d1fd8f78a4..00000000000 --- a/docs/ja/feature_audio.md +++ /dev/null @@ -1,322 +0,0 @@ -# オーディオ - - - -キーボードは音を出すことができます!Planck、Preonic あるいは特定の PWM 対応ピンにアクセスできる AVR キーボードがある場合は、単純なスピーカーを接続してビープ音を鳴らすことができます。これらのビープ音を使ってレイヤーの変化、モディファイア、特殊キーを示したり、あるいは単にイカした8ビットの曲を鳴らすことができます。 - -最大2つの同時オーディオ音声がサポートされ、1つはタイマー1によってもう一つはタイマー3によって駆動されます。以下のピンは config.h の中でオーディオ出力として定義することができます: - -Timer 1: -`#define B5_AUDIO` -`#define B6_AUDIO` -`#define B7_AUDIO` - -Timer 3: -`#define C4_AUDIO` -`#define C5_AUDIO` -`#define C6_AUDIO` - -`rules.mk` に `AUDIO_ENABLE = yes` を追加すると、他の設定無しで自動的に有効になる幾つかの異なるサウンドがあります: - -``` -STARTUP_SONG // キーボードの起動時に再生 (audio.c) -GOODBYE_SONG // QK_BOOT キーを押すと再生 (quantum.c) -AG_NORM_SONG // AG_NORM キーを押すと再生 (quantum.c) -AG_SWAP_SONG // AG_SWAP キーを押すと再生 (quantum.c) -CG_NORM_SONG // CG_NORM キーを押すと再生 (quantum.c) -CG_SWAP_SONG // CG_SWAP キーを押すと再生 (quantum.c) -MUSIC_ON_SONG // 音楽モードがアクティブになると再生 (process_music.c) -MUSIC_OFF_SONG // 音楽モードが非アクティブになると再生 (process_music.c) -CHROMATIC_SONG // 半音階音楽モードが選択された時に再生 (process_music.c) -GUITAR_SONG // ギター音楽モードが選択された時に再生 (process_music.c) -VIOLIN_SONG // バイオリン音楽モードが選択された時に再生 (process_music.c) -MAJOR_SONG // メジャー音楽モードが選択された時に再生 (process_music.c) -``` - -`config.h` の中で以下のような操作を行うことで、デフォルトの曲を上書きすることができます: - -```c -#ifdef AUDIO_ENABLE - #define STARTUP_SONG SONG(STARTUP_SOUND) -#endif -``` - -サウンドの完全なリストは、[quantum/audio/song_list.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/audio/song_list.h) で見つかります - このリストに自由に追加してください!利用可能な音は [quantum/audio/musical_notes.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/audio/musical_notes.h) で見つかります。 - -特定の時にカスタムサウンドを再生するために、以下のように曲を定義することができます(ファイルの上部付近に): - -```c -float my_song[][2] = SONG(QWERTY_SOUND); -``` - -以下のように曲を再生します: - -```c -PLAY_SONG(my_song); -``` - -または、以下のようにループで再生することができます: - -```c -PLAY_LOOP(my_song); -``` - -オーディオがキーボードに組み込まれていない時に問題が起きる事を避けるために、`#ifdef AUDIO_ENABLE` / `#endif` で全てのオーディオ機能をくるむことをお勧めします。 - -オーディオで利用可能なキーコードは以下の通りです: - -* `AU_ON` - オーディオ機能をオン -* `AU_OFF` - オーディオ機能をオフ -* `AU_TOG` - オーディオ機能を切り替え - -!> これらのキーコードは全てのオーディオ機能をオンおよびオフにします。オフにするとオーディオフィードバック、オーディオクリック、音楽モードなどが完全に無効になります。 - -## ARM オーディオボリューム - -ARM デバイスの場合、DAC サンプル値を調整できます。キーボードがあなたやあなたの同僚にとって騒々しい場合、`config.h` 内の `DAC_SAMPLE_MAX` を使って最大量を設定することができます: - -```c -#define DAC_SAMPLE_MAX 65535U -``` - -## 音楽モード - -音楽モードは列を半音階に、行をオクターブにマップします。これは格子配列キーボードで最適に動作しますが、他のものでも動作させることができます。`0xFF` 未満の全てのキーコードはブロックされるため、音の演奏中は入力できません - 特別なキー/mod があればそれらは引き続き動作します。これを回避するには、音楽モードを有効にする前(あるいは後)で、KC_NO を使って別のレイヤーにジャンプします。 - -メモリの問題により、録音は実験的です - 奇妙な動作が発生した場合は、キーボードの取り外しと再接続で問題が解決するでしょう。 - -利用可能なキーコード: - -* `MU_ON` - 音楽モードをオン -* `MU_OFF` - 音楽モードをオフ -* `MU_TOG` - 音楽モードの切り替え -* `MU_MOD` - 音楽モードの循環 - * `CHROMATIC_MODE` - 半音階。行はオクターブを変更します - * `GUITAR_MODE` - 半音階、ただし行は弦を変更します (+5 階) - * `VIOLIN_MODE` - 半音階。ただし行は弦を変換します (+7 階) - * `MAJOR_MODE` - メージャースケール - -音楽モードでは、以下のキーコードは動作が異なり、通過しません: - -* `LCTL` - 録音を開始 -* `LALT` - 録音を停止/演奏を停止 -* `LGUI` - 録音を再生 -* `KC_UP` - 再生をスピードアップ -* `KC_DOWN` - 再生をスローダウン - -ピッチ標準 (`PITCH_STANDARD_A`) はデフォルトで 440.0f です - これを変更するには、`config.h` に以下のようなものを追加します: - - #define PITCH_STANDARD_A 432.0f - -音楽モードも完全に無効にすることができます。コントローラの容量が足りなくて困っている場合に役に立ちます。無効にするには、これを `config.h` に追加します: - - #define NO_MUSIC_MODE - -### 音楽マスク - -デフォルトで、`MUSIC_MASK` は `keycode < 0xFF` に設定されます。これは、`0xFF` 未満のキーコードが音に変換され、何も出力しないことを意味します。`config.h` の中で以下のものを定義することで、これを変更することができます: - - #define MUSIC_MASK keycode != KC_NO - -これは全てのキーコードを捕捉します - これは、キーボードを再起動するまで、音楽モードで動けなくなることに注意してください! - -どのキーコードを引き続き処理するかを制御する、より高度な方法については、`.c` の中の `music_mask_kb(keycode)` および `keymap.c` の中の `music_mask_user(keycode)` を使うことができます: - - bool music_mask_user(uint16_t keycode) { - switch (keycode) { - case RAISE: - case LOWER: - return false; - default: - return true; - } - } - -false を返すものはマスクの一部では無く、常に処理されます。 - -### 音楽マップ - -デフォルトでは、音楽モードはキーのスケールを決定するために列と行を使います。キーボードレイアウトに一致する長方形のマトリックスを使うキーボードの場合、これで十分です。しかし、(Planck Rev6 あるいは多くの分割キーボードなどのように)より複雑なマトリックスを使うキーボードの場合、非常に歪んだ感じを受けることになります。 - -しかしながら、音楽マップオプションにより、音楽モードのためにスケーリングを再マップすることができるため、レイアウトに一致し、より自然になります。 - -この機能を使うには、`#define MUSIC_MAP` を `config.h` ファイルに追加します。そして、`キーボードの名前.c` または `keymap.c` に `uint8_t music_map` を追加します。 - -```c -const uint8_t music_map[MATRIX_ROWS][MATRIX_COLS] = LAYOUT_ortho_4x12( - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 -); -``` - -キーボードが使用する `LAYOUT` マクロも使用したいでしょう。これは正しいキーの位置にマップします。キーボードレイアウトの左下から開始し、右に移動してさらに上に移動します。完全なマトリックスができるまで、全てのエントリを入力します。 - -これを実装する方法の例として、[Planck Keyboard](https://github.com/qmk/qmk_firmware/blob/e9ace1487887c1f8b4a7e8e6d87c322988bec9ce/keyboards/planck/planck.c#L24-L29) を見ることができます。 - -## オーディオクリック - -これは、ボタンを押すたびにクリック音を追加し、キーボードからのクリック音をシミュレートします。キーを押すたびにわずかに音が異なるため、すばやく入力しても長い単一の音のようには聞こえません。 - -* `CK_TOGG` - ステータスを切り替えます (有効にされた場合、音を再生します) -* `CK_ON` - オーディオクリックをオンにします (音を再生します) -* `CK_OFF` - オーディオクリックをオフにします (音を再生しません) -* `CK_RST` - 周波数をデフォルトの状態に再設定します (デフォルトの周波数で音を再生します) -* `CK_UP` - クリック音の周波数を増やします (新しい周波数で音を再生します) -* `CK_DOWN` - クリック音の周波数を減らします (新しい周波数で音を再生します) - - -容量を節約するためにデフォルトではこの機能は無効です。有効にするには、`config.h` に以下を追加します: - - #define AUDIO_CLICKY - - -これらの値を定義することで、デフォルト、最小および最大周波数、ステッピングおよび組み込みのランダム性を設定することができます: - -| オプション | デフォルト値 | 説明 | -|--------|---------------|-------------| -| `AUDIO_CLICKY_FREQ_DEFAULT` | 440.0f | クリック音のデフォルト/開始音の周波数を設定します。 | -| `AUDIO_CLICKY_FREQ_MIN` | 65.0f | 最小周波数を設定します (60f 未満は少しバグがあります)。 | -| `AUDIO_CLICKY_FREQ_MAX` | 1500.0f | 最大周波数を設定します。高すぎると同僚があなたを攻撃する可能性があります。 | -| `AUDIO_CLICKY_FREQ_FACTOR` | 1.18921f | UP/DOWN キーコードのステップを設定します。これは掛け算の係数です。デフォルトでは、音楽のマイナーの1/3ずつ、周波数を上げ/下げします。 | -| `AUDIO_CLICKY_FREQ_RANDOMNESS` | 0.05f | クリックのランダム性の係数を設定します。これを `0f` に設定すると各クリックが同一になり、`1.0f` に設定するとこの音は90年代のコンピュータ画面のスクロール/タイピングの効果があります。 | -| `AUDIO_CLICKY_DELAY_DURATION` | 1 | 1がテンポの 1/16、または64分音符である整数音符の長さ (実装の詳細については、`quantum/audio/musical_notes.h` を見てください)。メインのクリック効果は、この時間だけ遅れます。これらを6-12前後の値に調整すると、うるさいスイッチの補正に役立ちます。 | - - - - -## MIDI 機能 - -これはまだ WIP ですが、何が起きているかを見るために、`quantum/process_keycode/process_midi.c` を調べてください。Makefile から有効にします。 - - -## オーディオキーコード - -| キー | エイリアス | 説明 | -|----------------|---------|----------------------------------| -| `AU_ON` | | オーディオモードオン | -| `AU_OFF` | | オーディオモードオフ | -| `AU_TOG` | | オーディオモードを切り替えます | -| `CLICKY_TOGGLE` | `CK_TOGG` | オーディオクリックモードを切り替えます | -| `CLICKY_UP` | `CK_UP` | クリック音の周波数を増やします | -| `CLICKY_DOWN` | `CK_DOWN` | クリック音の周波数を減らします | -| `CLICKY_RESET` | `CK_RST` | 周波数をデフォルトに再設定します | -| `MU_ON` | | 音楽モードをオンにします | -| `MU_OFF` | | 音楽モードをオフにします | -| `MU_TOG` | | 音楽モードを切り替えます | -| `MU_MOD` | | 音楽モードを循環します | - - diff --git a/docs/ja/feature_auto_shift.md b/docs/ja/feature_auto_shift.md deleted file mode 100644 index cf67b339771..00000000000 --- a/docs/ja/feature_auto_shift.md +++ /dev/null @@ -1,135 +0,0 @@ -# 自動シフト: なぜシフトキーが必要ですか? - - - -キーをタップすると、その文字を取得します。キーをタップするが、*わずかに*長く押し続けると、シフト状態になります。ほら!シフトキーは必要ありません! - -## なぜ自動シフトなのですか? - -多くの人が腱鞘炎などの症状に苦しんでいます。一般的な原因は、指を繰り返し長い距離を伸ばすことです。私たちはキーボード上でシフトキーに手を伸ばすためにあまりにも頻繁に小指を伸ばします。自動シフトキーはそれを軽減しようとしています。 - -## どのように動作しますか? - -キーをタップする時に、キーを放す前にほんの短い間押したままにします。この押したままにする時間は全ての人にとって異なる長さです。自動シフトは、定数 `AUTO_SHIFT_TIMEOUT` を定義し、これは普段の押された状態の時間の2倍に通常は設定されます。タイマーは、キーを押す時に開始され、キーを放す時に止まります。押された時間が `AUTO_SHIFT_TIMEOUT` 以上の場合に、キーのシフトバージョンが発行されます。時間が `AUTO_SHIFT_TIMEOUT` 時間よりも短い場合は、通常の状態が発行されます。 - -## 自動シフトには制限がありますか? - -残念ながらあります。 - -1. キーリピートが動作しなくなります。例えば、20個の 'a' 文字が必要な場合、'a' キーを1、2秒押し続けるかもしれません。オペレーティングシステムに押されたキーの状態を発行する代わりに押された時間を計るので、自動シフトでは動作しません。 -2. シフトをするつもりがない時にシフトされた文字を取得し、シフトしたい時にそうではない他の文字を取得するでしょう。これは結局は練習になります。急いでいる時は、シフトされたバージョンのために十分長くキーを押したと思うかもしれませんが、そうではありませんでした。一方、キーをタップしていると思うかもしれませんが、実際には予想よりも少し長い間押していました。 - -## どうやって自動シフトを有効にしますか? - -キーマップフォルダの `rules.mk` に追加します: - - AUTO_SHIFT_ENABLE = yes - -`rules.mk` が存在しない場合、それを作成することができます。 - -そして自動シフトキーを有効にした新しいファームウェアをコンパイルしてインストールします!以上です! - -## モディファイア - -デフォルトで、1つ以上のモディファイアと一緒にキーが押されると自動シフトは無効になります。従って、本当に長い間 Ctrl+A を保持しても、Ctrl+Shift+A と同じではありません。 - -`config.h` に定義を追加することで、モディファイアの自動シフトを再度有効にすることができます - -```c -#define AUTO_SHIFT_MODIFIERS -``` - -この場合、`AUTO_SHIFT_TIMEOUT` を超えて押された Ctrl+A は Ctrl+Shift+A として送信されます - - -## 自動シフトの設定 - -必要に応じて、自動シフトの挙動を変更することができる幾つかの設定があります。キーマップフォルダにある `config.h` に様々な変数を設定することで行われます。`config.h` ファイルが存在しない場合、それを作成することができます。 - -例 - -```c -#pragma once - -#define AUTO_SHIFT_TIMEOUT 150 -#define NO_AUTO_SHIFT_SPECIAL -``` - -### AUTO_SHIFT_TIMEOUT (単位: ミリ秒) - -これは、シフトされた状態を取得するためにどれだけ長くキーを押し続けなければならないかを制御します。 -明らかにこれは人によって異なります。一般的な人にとって、135 から 150 の設定がうまく機能します。ただし、少なくとも 175 の値から開始する必要があります。これはデフォルト値です。その後、ここから下げていきます。間違って検出することなくシフトされた状態を取得するのに必要な、最も短い時間を得るという考え方です。 - -完璧に動作するまで、いろいろな値を試してみます。多くの人は、全てが所定の値で適切に動作するものの、時々、1つあるいは2つのキーがシフト状態を発行することが分かるでしょう。これは単に習慣と、幾つかのキーを他のキーよりも少し長く押し続けることによるものです。この値を見つけたら、問題のキーを通常よりも少し早くタップするとともに、その値を設定します。 - -?> 自動シフトには、この値を素早く取得するのに役立つ3つの特別なキーがあります。詳細は「自動シフトのセットアップ」を見てください! - -### NO_AUTO_SHIFT_SPECIAL (単純にこのように定義します) - --\_, =+, [{, ]}, ;:, '", ,<, .> および /? を含む特殊キーを自動シフトしません - -### NO_AUTO_SHIFT_NUMERIC (単純にこのように定義します) - -0から9までの数字キーを自動シフトしません。 - -### NO_AUTO_SHIFT_ALPHA (単純にこのように定義します) - -AからZを含むアルファベット文字を自動シフトしません。 - -## 自動シフトセットアップの使用 - -これにより、`AUTO_SHIFT_TIMEOUT` で設定している時間を一時的に増減させたり報告するために、3つのキーを定義することができます。 - -### セットアップ - -3つのキーを一時的にキーマップにマップします: - -| キー名 | 説明 | -|----------|-----------------------------------------------------| -| KC_ASDN | 自動シフトタイムアウト変数を下げる | -| KC_ASUP | 自動シフトタイムアウト変数を上げる | -| KC_ASRP | 現在の自動シフトタイムアウト値を報告する | -| KC_ASON | 自動シフト機能をオンにする | -| KC_ASOFF | 自動シフト機能をオフにする | -| KC_ASTG | 自動シフト機能の状態を切り替える | - -新しいファームウェアをコンパイルしてアップロードします。 - -### 使い方 - -これらのテスト中は、完全に普段通り入力する必要があり、意図的にシフトされたキーを使わずに入力するように注意する必要があります。 - -1. アルファベットの複数の文を入力します。 -2. 大文字に注意してください。 -3. 大文字が存在しない場合は、自動シフトタイムアウト値を減らすために `KC_ASDN` にマップしたキーを押し、ステップ1に戻ります。 -4. 大文字が幾つかある場合は、押す時間を短くしてこれらのキーをタップする必要があるか、あるいはタイムアウトを増やす必要があるかを決定します。 -5. タイムアウトを増やすことに決めた場合は、`KC_ASUP` にマップしたキーを押し、ステップ1に戻ります。 -6. 結果に満足したら、`KC_ASRP` にマップしたキーを押します。キーボードは `AUTO_SHIFT_TIMEOUT` の値を自動的に入力します。 -7. 報告された値で `config.h` の `AUTO_SHIFT_TIMEOUT` を更新します。 -8. `config.h` に `AUTO_SHIFT_NO_SETUP` を追加します。 -9. `KC_ASDN`、`KC_ASUP` および `KC_ASRP` のキーバインディングを削除します。 -10. 新しいファームウェアをコンパイルしてアップロードします。 - -#### 実行例 - - hello world. my name is john doe. i am a computer programmer playing with - keyboards right now. - - [KC_ASDN を何度か押します] - - heLLo woRLd. mY nAMe is JOHn dOE. i AM A compUTeR proGRaMMER PlAYiNG witH - KEYboArDS RiGHT NOw. - - [KC_ASUP を数回押します] - - hello world. my name is john Doe. i am a computer programmer playing with - keyboarDs right now. - - [KC_ASRPを押します] - - 115 - -キーボードは現在の `AUTO_SHIFT_TIMEOUT` 値を表す `115` を入力しました。これで設定が完了しました!テスト中に現れる *D* キーを少し練習してください。それで完璧です。 diff --git a/docs/ja/feature_backlight.md b/docs/ja/feature_backlight.md deleted file mode 100644 index 150069607c2..00000000000 --- a/docs/ja/feature_backlight.md +++ /dev/null @@ -1,225 +0,0 @@ -# バックライト :id=backlighting - - - -多くのキーボードは、キースイッチを貫通して配置されたり、キースイッチの下に配置された個々の LED によって、バックライトキーをサポートします。この機能は通常スイッチごとに単一の色しか使用できないため、[RGB アンダーグロー](ja/feature_rgblight.md)および [RGB マトリックス](ja/feature_rgb_matrix.md)機能のどちらとも異なりますが、キーボードに複数の異なる単一色の LED を取り付けることは当然可能です。 - -QMK は *パルス幅変調* (*Pulse Width Modulation*) すなわち PWM として知られている技術で、一定の比率で素早くオンおよびオフを切り替えることで、これらの LED の輝度を制御できます。PWM 信号のデューティサイクルを変えることで、調光の錯覚を起こすことができます。 - -MCU は、GPIO ピンにはそんなに電流を供給できません。MCU から直接バックライトに給電せずに、バックライトピンは LED への電力を切り替えるトランジスタあるいは MOSFET に接続されます。 - -ほとんどのキーボードではバックライトをサポートしている場合にデフォルトで有効になっていますが、もし機能しない場合は `rules.mk` が以下を含んでいることを確認してください: - -```makefile -BACKLIGHT_ENABLE = yes -``` - -## キーコード :id=keycodes - -有効にすると、以下のキーコードを使ってバックライトレベルを変更することができます。 - -| キー | 説明 | -| --------- | ------------------------------------ | -| `BL_TOGG` | バックライトをオンあるいはオフにする | -| `BL_STEP` | バックライトレベルを循環する | -| `BL_ON` | バックライトを最大輝度に設定する | -| `BL_OFF` | バックライトをオフにする | -| `BL_INC` | バックライトレベルを上げる | -| `BL_DEC` | バックライトレベルを下げる | -| `BL_BRTG` | バックライトの明滅動作を切り替える | - -## 関数群 :id=functions - -次の関数を使って、カスタムコードでバックライトを変更することができます: - -| 関数 | 説明 | -| ------------------------ | -------------------------------------------- | -| `backlight_toggle()` | バックライトをオンあるいはオフにする | -| `backlight_enable()` | バックライトをオンにする | -| `backlight_disable()` | バックライトをオフにする | -| `backlight_step()` | バックライトレベルを循環する | -| `backlight_increase()` | バックライトレベルを上げる | -| `backlight_decrease()` | バックライトレベルを下げる | -| `backlight_level(x)` | バックライトのレベルを特定のレベルに設定する | -| `get_backlight_level()` | 現在のバックライトレベルを返す | -| `is_backlight_enabled()` | バックライトが現在オンかどうかを返す | - -バックライトの明滅が有効の場合(以下を参照)、以下の関数も利用できます: - -| 関数 | 説明 | -|-----------------------|----------------------------------------------| -| `breathing_toggle()` | バックライトの明滅動作をオンまたはオフにする | -| `breathing_enable()` | バックライトの明滅動作をオンにする | -| `breathing_disable()` | バックライトの明滅動作をオフにする | - -## 設定 :id=configuration - -どのドライバを使うかを選択するには、以下を使って `rules.mk` を設定します: - -```makefile -BACKLIGHT_DRIVER = software -``` - -有効なドライバの値は `pwm`, `software`, `custom`, `no` です。各ドライバについてのヘルプは以下を見てください。 - -バックライトを設定するには、`config.h` の中で以下の `#define` をします: - -| 定義 | デフォルト | 説明 | -| ----------------------------- | ------------------ | --------------------------------------------------------------------------------------------- | -| `BACKLIGHT_PIN` | *定義なし* | LED を制御するピン | -| `BACKLIGHT_LEVELS` | `3` | 輝度のレベルの数 (オフを除いて最大 31) | -| `BACKLIGHT_CAPS_LOCK` | *定義なし* | バックライトを使って Caps Lock のインジケータを有効にする (専用 LED の無いキーボードのため) | -| `BACKLIGHT_BREATHING` | *定義なし* | サポートされる場合は、バックライトの明滅動作を有効にする | -| `BREATHING_PERIOD` | `6` | 各バックライトの "明滅" の長さ(秒) | -| `BACKLIGHT_ON_STATE` | `1` | バックライトが "オン" の時のバックライトピンの状態 - high の場合は `1`、low の場合は `0` | -| `BACKLIGHT_LIMIT_VAL` | `255` | バックライトの最大デューティサイクル -- `255` で最大輝度になり、それ未満では最大値が減少する | -| `BACKLIGHT_DEFAULT_LEVEL` | `BACKLIGHT_LEVELS` | EEPROM をクリアする時に使うデフォルトのバックライトレベル | -| `BACKLIGHT_DEFAULT_BREATHING` | *定義なし* | EEPROM をクリアする時に、バックライトのブリージングを有効にするかどうか | - -独自のキーボードを設計しているわけではない限り、通常は `BACKLIGHT_PIN` または `BACKLIGHT_ON_STATE` を変更する必要はありません。 - -### バックライトオン状態 :id=backlight-on-state - -ほとんどのバックライトの回路は N チャンネルの MOSFET あるいは NPN トランジスタによって駆動されます。これは、トランジスタを *オン* にして LED を点灯させるには、ゲートまたはベースに接続されているバックライトピンを *high* に駆動する必要があることを意味します。 -ただし、P チャンネルの MOSFET あるいは PNP トランジスタが使われる場合があります。この場合、トランジスタがオンの時、ピンは代わりに *low* で駆動されます。 - -この機能は `BACKLIGHT_ON_STATE` を定義することでキーボードレベルで設定されます。 - -### AVR ドライバ :id=avr-driver - -`pwm` ドライバはデフォルトで設定されますが、`rules.mk` 内での同等の設定は以下の通りです: - -```makefile -BACKLIGHT_DRIVER = pwm -``` - -#### 注意事項 :id=avr-caveats - -AVR ボードでは、QMK はどのドライバを使うかを以下の表に従って自動的に決定します: - -| バックライトピン | AT90USB64/128 | AT90USB162 | ATmega16/32U4 | ATmega16/32U2 | ATmega32A | ATmega328/P | -| ---------------- | ------------- | ---------- | ------------- | ------------- | --------- | ----------- | -| `B1` | | | | | | Timer 1 | -| `B2` | | | | | | Timer 1 | -| `B5` | Timer 1 | | Timer 1 | | | | -| `B6` | Timer 1 | | Timer 1 | | | | -| `B7` | Timer 1 | Timer 1 | Timer 1 | Timer 1 | | | -| `C4` | Timer 3 | | | | | | -| `C5` | Timer 3 | Timer 1 | | Timer 1 | | | -| `C6` | Timer 3 | Timer 1 | Timer 3 | Timer 1 | | | -| `D4` | | | | | Timer 1 | | -| `D5` | | | | | Timer 1 | | - -他の全てのピンはタイマー支援ソフトウェア PWM を使います。 - -| オーディオピン | オーディオタイマ | ソフトウェア PWM タイマ | -| -------------- | ---------------- | ----------------------- | -| `C4` | Timer 3 | Timer 1 | -| `C5` | Timer 3 | Timer 1 | -| `C6` | Timer 3 | Timer 1 | -| `B5` | Timer 1 | Timer 3 | -| `B6` | Timer 1 | Timer 3 | -| `B7` | Timer 1 | Timer 3 | - -両方のタイマーがオーディオのために使われている場合、バックライト PWM はハードウェアタイマを使うことができず、代わりにマトリックススキャンの間に引き起こされます。この場合、PWM の計算は十分なタイミングの精度で呼ばれない可能性があるため、バックライトの明滅はサポートされず、バックライトもちらつくかもしれません。 - -#### ハードウェア PWM 実装 :id=hardware-pwm-implementation - -バックライト用にサポートされているピンを使う場合、QMK は PWM 信号を出力するように設定されたハードウェアタイマを使います。タイマーは 0 にリセットする前に `ICRx` (デフォルトでは `0xFFFF`) までカウントします。 -希望の輝度が計算され、`OCRxx` レジスタに格納されます。カウンタがこの値まで達すると、バックライトピンは low になり、カウンタがリセットされると再び high になります。 -このように `OCRxx` は基本的に LED のデューティサイクル、従って輝度を制御します。`0x0000` は完全にオフで、 `0xFFFF` は完全にオンです。 - -明滅動作の効果はカウンタがリセットされる(秒間あたりおよそ244回)たびに呼び出される `TIMER1_OVF_vect` の割り込みハンドラを登録することで可能になります。 -このハンドラで、増分カウンタの値が事前に計算された輝度曲線にマップされます。明滅動作をオフにするには、割り込みを単純に禁止し、輝度を EEPROM に格納されているレベルに再設定します。 - -#### タイマー支援 PWM 実装 :id=timer-assisted-implementation - -`BACKLIGHT_PIN` がハードウェアバックライトピンに設定されていない場合、QMK はソフトウェア割り込みを引き起こすように設定されているハードウェアタイマを使います。タイマーは 0 にリセットする前に `ICRx` (デフォルトでは `0xFFFF`) までカウントします。 -0 に再設定すると、CPU は LED をオンにする OVF (オーバーフロー)割り込みを発火し、デューティサイクルを開始します。 -希望の輝度が計算され、`OCRxx` レジスタに格納されます。カウンタがこの値に達すると、CPU は比較出力一致割り込みを発火し、LED をオフにします。 -このように `OCRxx` は基本的に LED のデューティサイクル、従って輝度を制御します。 `0x0000` は完全にオフで、 `0xFFFF` は完全にオンです。 - -明滅の効果はハードウェア PWM 実装と同じです。 - -### ARM ドライバ :id=arm-configuration - -まだ初期段階ですが、ARM バックライトサポートは最終的に AVR と同等の機能を持つことを目指しています。`pwm` ドライバはデフォルトで設定されますが、`rules.mk` 内での同等の設定は以下の通りです: - -```makefile -BACKLIGHT_DRIVER = pwm -``` - -#### ChibiOS の設定 :id=arm-configuration - -以下の `#define` は ARM ベースのキーボードにのみ適用されます: - -| 定義 | デフォルト | 説明 | -| ----------------------- | ---------- | ----------------------- | -| `BACKLIGHT_PWM_DRIVER` | `PWMD4` | 使用する PWM ドライバ | -| `BACKLIGHT_PWM_CHANNEL` | `3` | 使用する PWM チャンネル | -| `BACKLIGHT_PAL_MODE` | `2` | 使用するピン代替関数 | - -これらの値を決定するには、特定の MCU の ST データシートを参照してください。独自のキーボードを設計しているわけではない場合、通常はこれらを変更する必要はありません。 - -#### 注意事項 :id=arm-caveats - -現在のところ、ハードウェア PWM のみがサポートされ、タイマー支援はなく、自動設定は提供されません。 - -### ソフトウェア PWM ドライバ :id=software-pwm-driver - -このモードでは、他のキーボードのタスクを実行中に PWM は「エミュレート」されます。追加のプラットフォーム設定なしで最大のハードウェア互換性を提供します。トレードオフは、キーボードが忙しい時にバックライトが揺れる可能性があることです。有効にするには、`rules.mk` に以下を追加します: - -```makefile -BACKLIGHT_DRIVER = software -``` - -#### 複数のバックライトピン :id=multiple-backlight-pins - -ほとんどのキーボードは、全てのバックライト LED を制御するたった1つのバックライトピンを持ちます (特にバックライトがハードウェア PWM ピンに接続されている場合)。 -ソフトウェア PWM では、複数のバックライトピンを定義することができます。これらのピンは PWM デューティサイクル時に同時にオンおよびオフになります。 - -この機能により、例えば Caps Lock LED (またはその他の制御可能な LED) の輝度を、バックライトの他の LED と同じレベルに設定することができます。Caps Lock LED は通常バックライトとは別のピンに配線されるため、Caps Lock の代わりに Control をマップしていて、Caps Lock がオンの時に Caps Lock LED ではなくバックライトの一部をアクティブにする必要がある場合に便利です。 - -複数のバックライトピンをアクティブにするには、`config.h` に `BACKLIGHT_PIN` の代わりに次のようなものを追加します: - -```c -#define BACKLIGHT_PINS { F5, B2 } -``` - -### カスタムドライバ :id=custom-driver - -上記ドライバのいずれもキーボードに適用されていない場合(例えば、バックライトを制御するのに別の IC を使用している場合)、QMK が提供しているこの簡単な API を使ってカスタムバックライトドライバを実装することができます。有効にするには、`rules.mk` に以下を追加します: - -```makefile -BACKLIGHT_DRIVER = custom -``` - -それから次のフックのいずれかを実装します: - -```c -void backlight_init_ports(void) { - // オプション - 起動時に実行されます - // 通常、ここでピンを設定します -} -void backlight_set(uint8_t level) { - // オプション - レベルの変更時に実行されます - // 通常、ここで新しい値に応答します -} - -void backlight_task(void) { - // オプション - 定期的に実行されます - // これはメインキーボードループで呼び出されることに注意してください - // そのため、ここで長時間実行されるアクションはパフォーマンスの問題を引き起こします -} -``` - -## 回路図の例 - -この一般的な例では、バックライト LED は全て N チャンネル MOSFET に向かって並列に接続されています。そのゲートピンは、リンギングを回避するため 470Ωの抵抗を介してマイクロコントローラの GPIO ピンの1つに接続されています。 -プルダウン抵抗もゲートピンとグランドの間に配置されており、MCU によって駆動されていない場合にプルダウン抵抗を定義された状態に保ちます。 -これらの抵抗値は重要ではありません。詳細については、[this Electronics StackExchange question](https://electronics.stackexchange.com/q/68748) を参照してください。 - -![バックライトの回路例](https://i.imgur.com/BmAvoUC.png) diff --git a/docs/ja/feature_bluetooth.md b/docs/ja/feature_bluetooth.md deleted file mode 100644 index 3c71a18ec1f..00000000000 --- a/docs/ja/feature_bluetooth.md +++ /dev/null @@ -1,49 +0,0 @@ -# Bluetooth - - - -## Bluetooth の既知のサポートハードウェア - -現在のところ Bluetooth のサポートは AVR ベースのチップに限られます。Bluetooth 2.1 については、QMK は RN-42 モジュールをサポートします。より最近の BLE プロトコルについては、現在のところ Adafruit Bluefruit SPI Friend のみが直接サポートされています。iOS デバイスに接続するには、BLE が必要です。iOS はマウス入力をサポートしないことに注意してください。 - -| ボード | Bluetooth プロトコル | 接続タイプ | rules.mk | Bluetooth チップ | -| ---------------------------------------------------------------- | -------------------- | ---------- | ------------------------- | ---------------- | -| Roving Networks RN-42 (Sparkfun Bluesmirf) | Bluetooth Classic | UART | `BLUETOOTH = RN42` | RN-42 | -| [Bluefruit LE SPI Friend](https://www.adafruit.com/product/2633) | Bluetooth Low Energy | SPI | `BLUETOOTH = AdafruitBLE` | nRF51822 | - -まだサポートされていませんが、可能性のあるもの: -* [Bluefruit LE UART Friend](https://www.adafruit.com/product/2479)。[tmk 実装がおそらく見つかります](https://github.com/tmk/tmk_keyboard/issues/514) -* RN-42 ファームウェアが書き込まれた HC-05 ボード。どちらも明らかに CSR BC417 チップを使っています。RN-42 ファームウェアを使って書き込むと、HID 機能が提供されます。 -* Sparkfun Bluetooth Mate -* HM-13 ベースのボード - -### Adafruit BLE SPI Friend -現在のところ QMK によってサポートされている唯一の bluetooth チップセットは、Adafruit Bluefruit SPI Friend です。Adafruit のカスタムファームウェアを実行する Nordic nRF5182 ベースのチップです。データは Hardware SPI を介した Adafruit の SDEP を使って転送されます。[Feather 32u4 Bluefruit LE](https://www.adafruit.com/product/2829) は Adafruit ファームウェアを搭載した Nordic BLE チップに SPI 経由で接続された AVR mcu であるため、サポートされます。SPI friend を使ってカスタムボードを構築する場合、32u4 feather が使用するピン選択を使うのが最も簡単ですが、以下の定義で config.h オプションでピンを変更することができます: -* #define AdafruitBleResetPin D4 -* #define AdafruitBleCSPin B4 -* #define AdafruitBleIRQPin E6 - -Bluefruit UART friend は SPI friend に変換することができますが、これにはMDBT40 チップへの直接の再書き込みとはんだ付けが[必要です](https://github.com/qmk/qmk_firmware/issues/2274)。 - - -## Bluetooth の Rules.mk オプション - -現在サポートされている Bluetooth チップセットは [N-キーロールオーバー (NKRO)](ja/reference_glossary.md#n-key-rollover-nkro) をサポートしていません。そのため、`rules.mk` に `NKRO_ENABLE = no` を含めなければなりません。 - -Bluetooth を有効にするには、以下のうちの1つだけを使ってください: -* BLUETOOTH_ENABLE = yes (レガシーオプション) -* BLUETOOTH = RN42 -* BLUETOOTH = AdafruitBLE - -## Bluetooth キーコード - -これは複数のキーボードの出力が選択できる場合に使われます。現在のところ、これは USB と Bluetooth の両方をサポートするキーボードで、それらの間の切り替えのみが可能です。 - -| 名前 | 説明 | -| ---------- | ------------------------------------- | -| `OUT_AUTO` | USB と Bluetooth を自動的に切り替える | -| `OUT_USB` | USB のみ | -| `OUT_BT` | Bluetooth のみ | diff --git a/docs/ja/feature_bootmagic.md b/docs/ja/feature_bootmagic.md deleted file mode 100644 index c146176a7ee..00000000000 --- a/docs/ja/feature_bootmagic.md +++ /dev/null @@ -1,182 +0,0 @@ -# ブートマジック - - - -再書き込みせずにキーボードの挙動を変更することができる、3つの独立した関連する機能があります。それぞれは似たような機能を持ちますが、キーボードがどのように設定されているかによって異なる方法でアクセスされます。 - -**ブートマジック**は初期化の間にキーボードを設定するためのシステムです。ブートマジックコマンドを起動するには、ブートマジックキーと1つ以上のコマンドキーを押し続けます。 - -**ブートマジックキーコード** は前に `MAGIC_` が付いており、キーボードが初期化された*後で*ブートマジックの機能にアクセスすることができます。キーコードを使うには、他のキーコードと同じようにそれらをキーマップに割り当てます。 - -以前は**マジック**として知られていた**コマンド**は、キーボードの異なる側面を制御することができる別の機能です。ブートマジックと一部の機能を共有しますが、コンソールにバージョン情報を出力するような、ブートマジックにはできないこともできます。詳細は、[コマンド](ja/feature_command.md)を見てください。 - -一部のキーボードでは、ブートマジックはデフォルトで無効になっています。その場合、`rules.mk` 内で以下のように明示的に有効にする必要があります: - -```make -BOOTMAGIC_ENABLE = yes -``` - -?> `full` の代わりに `yes` が使われていることがあるかもしれませんが、これは問題ありません。ただし、`yes` は非推奨で、理想的には `full` (あるいは`lite`) が使われるべきです。 - -さらに、以下を `rules.mk` ファイルに追加することで、[ブートマジックライト](#bootmagic-lite) (スケールダウンした、とても基本的なバージョンのブートマジック)を使うことができます: - -```make -BOOTMAGIC_ENABLE = lite -``` - -## ホットキー - -キーボードを接続しながら、ブートマジックキー(デフォルトはスペース)と目的のホットキーを押します。例えば、スペースと `B` を押したままにすると、ブートローダに入ります。 - -| ホットキー | 説明 | -|------------------|---------------------------------------------| -| エスケープ | EEPROM のブートマジック設定を無視する | -| `B` | ブートローダに入る | -| `D` | シリアルを介するデバッグ出力の切り替え | -| `X` | キーマトリックスのデバッグ出力の切り替え | -| `K` | キーボードのデバッグの切り替え | -| `M` | マウスのデバッグの切り替え | -| `L` | EE_HANDS 左右設定に、"左手"を設定 | -| `R` | EE_HANDS 左右設定に、"右手"を設定 | -| Backspace | EEPROM をクリア | -| Caps Lock | Caps Lock を左コントロールとして扱うかを切り替え | -| 左 Control | Caps Lock と左コントロールの入れ替えを切り替え | -| 左 Alt | 左 Alt と左 GUI の入れ替えを切り替え | -| 右 Alt | 右 Alt と右 GUI の入れ替えを切り替え | -| 左 GUI | GUI キーの有効・無効を切り替え (ゲームの時に便利です) | -| ` | ` とエスケープの入れ替えを切り替え | -| `\` | `\` とバックスペースの入れ替えを切り替え | -| `N` | N キーロールオーバー (NKRO) の有効・無効を切り替え | -| `0` | レイヤー 0 をデフォルトレイヤーにする | -| `1` | レイヤー 1 をデフォルトレイヤーにする | -| `2` | レイヤー 2 をデフォルトレイヤーにする | -| `3` | レイヤー 3 をデフォルトレイヤーにする | -| `4` | レイヤー 4 をデフォルトレイヤーにする | -| `5` | レイヤー 5 をデフォルトレイヤーにする | -| `6` | レイヤー 6 をデフォルトレイヤーにする | -| `7` | レイヤー 7 をデフォルトレイヤーにする | - -## キーコード :id=keycodes - -| キー | エイリアス | 説明 | -|----------------------------------|---------|--------------------------------------------------------------------------| -| `MAGIC_SWAP_CONTROL_CAPSLOCK` | `CL_SWAP` | Caps Lock と左コントロールの入れ替え | -| `MAGIC_UNSWAP_CONTROL_CAPSLOCK` | `CL_NORM` | Caps Lock と左コントロールの入れ替えの解除 | -| `MAGIC_CAPSLOCK_TO_CONTROL` | `CL_CTRL` | Caps Lock をコントロールとして扱う | -| `MAGIC_UNCAPSLOCK_TO_CONTROL` | `CL_CAPS` | Caps Lock をコントロールとして扱うことを止める | -| `MAGIC_SWAP_LCTL_LGUI` | `LCG_SWP` | 左コントロールと GUI の入れ替え | -| `MAGIC_UNSWAP_LCTL_LGUI` | `LCG_NRM` | 左コントロールと GUI の入れ替えを解除 | -| `MAGIC_SWAP_RCTL_RGUI` | `RCG_SWP` | 右コントロールと GUI の入れ替え | -| `MAGIC_UNSWAP_RCTL_RGUI` | `RCG_NRM` | 右コントロールと GUI の入れ替えを解除 | -| `MAGIC_SWAP_CTL_GUI` | `CG_SWAP` | 両側のコントロールと GUI の入れ替え | -| `MAGIC_UNSWAP_CTL_GUI` | `CG_NORM` | 両側のコントロールと GUI の入れ替えを解除 | -| `MAGIC_TOGGLE_CTL_GUI` | `CG_TOGG` | 両側のコントロールと GUI の入れ替えの切り替え | -| `MAGIC_SWAP_LALT_LGUI` | `LAG_SWP` | 左 Alt と GUI の入れ替え | -| `MAGIC_UNSWAP_LALT_LGUI` | `LAG_NRM` | 左 Alt と GUI の入れ替えを解除 | -| `MAGIC_SWAP_RALT_RGUI` | `RAG_SWP` | 右 Alt と GUI の入れ替え | -| `MAGIC_UNSWAP_RALT_RGUI` | `RAG_NRM` | 右 Alt と GUI の入れ替えを解除 | -| `MAGIC_SWAP_ALT_GUI` | `AG_SWAP` | 両側の Alt と GUI の入れ替え | -| `MAGIC_UNSWAP_ALT_GUI` | `AG_NORM` | 両側の Alt と GUI の入れ替えを解除 | -| `MAGIC_TOGGLE_ALT_GUI` | `AG_TOGG` | 両側の Alt と GUI の入れ替えの切り替え | -| `MAGIC_NO_GUI` | `GUI_OFF` | GUI キーを無効にする | -| `MAGIC_UNNO_GUI` | `GUI_ON` | GUI キーを有効にする | -| `MAGIC_SWAP_GRAVE_ESC` | `GE_SWAP` | ` とエスケープの入れ替え | -| `MAGIC_UNSWAP_GRAVE_ESC` | `GE_NORM` | ` とエスケープの入れ替えを解除 | -| `MAGIC_SWAP_BACKSLASH_BACKSPACE` | `BS_SWAP` | `\` とバックスペースを入れ替え | -| `MAGIC_UNSWAP_BACKSLASH_BACKSPACE` | `BS_NORM` | `\` とバックスペースの入れ替えを解除する | -| `MAGIC_HOST_NKRO` | `NK_ON` | N キーロールオーバーを有効にする | -| `MAGIC_UNHOST_NKRO` | `NK_OFF` | N キーロールオーバーを無効にする | -| `MAGIC_TOGGLE_NKRO` | `NK_TOGG` | N キーロールオーバーの有効・無効を切り替え | -| `MAGIC_EE_HANDS_LEFT` | `EH_LEFT` | 分割キーボードのマスター側を左手に設定(`EE_HANDS` 用) | -| `MAGIC_EE_HANDS_RIGHT` | `EH_RGHT` | 分割キーボードのマスター側を右手に設定(`EE_HANDS` 用) | - -## 設定 - -ブートマジックのためのホットキーの割り当てを変更したい場合は、キーボードあるいはキーマップレベルのどちらかで、`config.h` にこれらを `#define` します。 - -| 定義 | デフォルト | 説明 | -|----------------------------------------|-------------|---------------------------------------------------| -| `BOOTMAGIC_KEY_SALT` | `KC_SPACE` | ブートマジックキー | -| `BOOTMAGIC_KEY_SKIP` | `KC_ESC` | EEPROM のブートマジック設定を無視する | -| `BOOTMAGIC_KEY_EEPROM_CLEAR` | `KC_BSPACE` | EEPROM 設定をクリアする | -| `BOOTMAGIC_KEY_BOOTLOADER` | `KC_B` | ブートローダに入る | -| `BOOTMAGIC_KEY_DEBUG_ENABLE` | `KC_D` | シリアルを介するデバッグ出力の切り替え | -| `BOOTMAGIC_KEY_DEBUG_MATRIX` | `KC_X` | マトリックスのデバッグを切り替え | -| `BOOTMAGIC_KEY_DEBUG_KEYBOARD` | `KC_K` | キーボードのデバッグの切り替え | -| `BOOTMAGIC_KEY_DEBUG_MOUSE` | `KC_M` | マウスのデバッグの切り替え | -| `BOOTMAGIC_KEY_EE_HANDS_LEFT` | `KC_L` | EE_HANDS 左右設定に、"左手"を設定 | -| `BOOTMAGIC_KEY_EE_HANDS_RIGHT` | `KC_R` | EE_HANDS 左右設定に、"右手"を設定 | -| `BOOTMAGIC_KEY_SWAP_CONTROL_CAPSLOCK` | `KC_LCTRL` | 左コントロールと Caps Lock の入れ替え | -| `BOOTMAGIC_KEY_CAPSLOCK_TO_CONTROL` | `KC_CAPSLOCK` | Caps Lock を左コントロールとして扱うかを切り替え | -| `BOOTMAGIC_KEY_SWAP_LALT_LGUI` | `KC_LALT` | 左 Alt と左 GUI の入れ替えを切り替え (macOS 用) | -| `BOOTMAGIC_KEY_SWAP_RALT_RGUI` | `KC_RALT` | 右 Alt と右 GUI の入れ替えを切り替え (macOS 用) | -| `BOOTMAGIC_KEY_NO_GUI` | `KC_LGUI` | GUI キーの有効・無効を切り替え (ゲームの時に便利です) | -| `BOOTMAGIC_KEY_SWAP_GRAVE_ESC` | `KC_GRAVE` | ` とエスケープの入れ替えを切り替え | -| `BOOTMAGIC_KEY_SWAP_BACKSLASH_BACKSPACE` | `KC_BSLASH` | `\` とバックスペースの入れ替えを切り替え | -| `BOOTMAGIC_HOST_NKRO` | `KC_N` | N キーロールオーバー (NKRO) の有効・無効を切り替え | -| `BOOTMAGIC_KEY_DEFAULT_LAYER_0` | `KC_0` | レイヤー 0 をデフォルトレイヤーにする | -| `BOOTMAGIC_KEY_DEFAULT_LAYER_1` | `KC_1` | レイヤー 1 をデフォルトレイヤーにする | -| `BOOTMAGIC_KEY_DEFAULT_LAYER_2` | `KC_2` | レイヤー 2 をデフォルトレイヤーにする | -| `BOOTMAGIC_KEY_DEFAULT_LAYER_3` | `KC_3` | レイヤー 3 をデフォルトレイヤーにする | -| `BOOTMAGIC_KEY_DEFAULT_LAYER_4` | `KC_4` | レイヤー 4 をデフォルトレイヤーにする | -| `BOOTMAGIC_KEY_DEFAULT_LAYER_5` | `KC_5` | レイヤー 5 をデフォルトレイヤーにする | -| `BOOTMAGIC_KEY_DEFAULT_LAYER_6` | `KC_6` | レイヤー 6 をデフォルトレイヤーにする | -| `BOOTMAGIC_KEY_DEFAULT_LAYER_7` | `KC_7` | レイヤー 7 をデフォルトレイヤーにする | - -# ブートマジックライト :id=bootmagic-lite - -本格的なブートマジック機能の他に、ブートローダへのジャンプのみを処理するブートマジックライトがあります。これは、物理的なリセットボタンが無くブートローダにジャンプする方法が必要だが、ブートマジックが引き起こす問題を扱いたくないキーボードに適しています。 - -ブートマジックのこのバージョンを有効にするには、以下を使って `rules.mk` で有効にする必要があります: - -```make -BOOTMAGIC_ENABLE = lite -``` - -さらに、どのキーを使うかを指定したほうが良いかもしれません。これは普通ではないマトリックスを持つキーボードで特に便利です。そのためには、使いたいキーの行と列を指定する必要があります。`config.h` ファイルにこれらのエントリを追加します: - -```c -#define BOOTMAGIC_ROW 0 -#define BOOTMAGIC_COLUMN 1 -``` - -デフォルトでは、これらは 0 と 0 に設定されます。これは通常はほとんどのキーボードで "ESC" キーです。 - -ブートローダを起動するには、キーボードを接続する時にこのキーを押し続けます。たった1つのキーです。 - -!> ブートマジックライトを使用すると、EEPROM を**常にリセットします**。つまり保存された全ての設定は失われます。 - -## 分割キーボード - -`SPLIT_HAND_PIN` のようなオプションで、左右の設定があらかじめ決められている場合は、キーボードの左右で別のキーを設定する必要があるかもしれません。これを行うには、`config.h` ファイルに以下のエントリを追加します。 - -```c -#define BOOTMAGIC_ROW_RIGHT 4 -#define BOOTMAGIC_COLUMN_RIGHT 1 -``` - -デフォルトでは、これらの値は設定されていません。 - -## 高度なブートマジックライト - -`bootmagic_lite` 関数は必要に応じてコード内で置き換えることができるように、弱く定義されています。これの良い例は Zeal60 キーボードで、追加の処理が必要です。 - -関数を置き換えるには、以下のようなものをコードに追加するだけです: - -```c -void bootmagic_lite(void) { - matrix_scan(); - wait_ms(DEBOUNCE * 2); - matrix_scan(); - - if (matrix_get_row(BOOTMAGIC_ROW) & (1 << BOOTMAGIC_COLUMN)) { - // ブートローダにジャンプする。 - bootloader_jump(); - } -} -``` - -追加の機能をここに追加することができます。例えば、eeprom のリセットやブートマジックを起動するために押す必要がある追加のキーです。`bootmagic_lite` はファームウェア内で大部分の機能が初期化される前に呼ばれることに注意してください。 diff --git a/docs/ja/feature_combo.md b/docs/ja/feature_combo.md deleted file mode 100644 index 0c0591e5f76..00000000000 --- a/docs/ja/feature_combo.md +++ /dev/null @@ -1,108 +0,0 @@ -# コンボ - - - -コンボ機能は、同時押し方式でのカスタムアクション追加機能です。同時に複数のキーを押して、異なる効果を生み出すことができます。例えば、タッピング時間内で `A` と `S` を押すと、代わりに `ESC` が押されます。もっと複雑なタスクを実行させることもできます。 - -この機能を有効にするには、`rules.mk` に `COMBO_ENABLE = yes` を追加する必要があります。 - -さらに、使用するコンボの数を `config.h` の中で、`#define COMBO_COUNT 1` (1を使用するコンボの数で置き換えます)と書いて、指定する必要があります。 - - -また、デフォルトでは、コンボのタッピング時間は `TAPPING_TERM` と同じ値に設定されます (ほとんどのキーボードではデフォルトで 200)。ただし、`config.h` で定義することにより異なる値を指定することができます。例えば: `#define COMBO_TERM 300` はコンボのためのタイムアウト時間を 300ms に設定します。 - -次に、`keymap.c` ファイルに、`COMBO_END` で終了するキーのシーケンス、およびキーの組み合わせを列挙する構造体、その結果のアクションを定義する必要があります。 - -```c -const uint16_t PROGMEM test_combo[] = {KC_A, KC_B, COMBO_END}; -combo_t key_combos[] = {COMBO(test_combo, KC_ESC)}; -``` - -これは、A と B のキーを押した場合に、"Escape" を送信します。 - -!> このメソッドは[基本的なキーコード](ja/keycodes_basic.md)のみをサポートします。詳細な制御については例を見てください。 - -## 例 - -リストを追加したい場合は、以下のようなものを使います: - -```c -enum combos { - AB_ESC, - JK_TAB -}; - -const uint16_t PROGMEM ab_combo[] = {KC_A, KC_B, COMBO_END}; -const uint16_t PROGMEM jk_combo[] = {KC_J, KC_K, COMBO_END}; - -combo_t key_combos[] = { - [AB_ESC] = COMBO(ab_combo, KC_ESC), - [JK_TAB] = COMBO(jk_combo, KC_TAB) -}; -``` - -より複雑な実装として、カスタム処理を追加するために `process_combo_event` 関数を使うことができます。 - -```c -enum combo_events { - ZC_COPY, - XV_PASTE -}; - -const uint16_t PROGMEM copy_combo[] = {KC_Z, KC_C, COMBO_END}; -const uint16_t PROGMEM paste_combo[] = {KC_X, KC_V, COMBO_END}; - -combo_t key_combos[] = { - [ZC_COPY] = COMBO_ACTION(copy_combo), - [XV_PASTE] = COMBO_ACTION(paste_combo), -}; - -void process_combo_event(uint16_t combo_index, bool pressed) { - switch(combo_index) { - case ZC_COPY: - if (pressed) { - tap_code16(LCTL(KC_C)); - } - break; - case XV_PASTE: - if (pressed) { - tap_code16(LCTL(KC_V)); - } - break; - } -} -``` - -これは、Z と C を押すと Ctrl+C を送信し、X と V を押すと Ctrl+V を送信します。これを変更して、レイヤーの変更、サウンドの再生、設定の変更などを行うこともできます。 - -## 追加の設定 - -長いコンボあるいはさらに長いコンボを使っている場合、構造体があなたのしていることに対応するのに十分な大きさで無いかもしれないため、問題が発生するかもしれません。 - -この場合、`config.h` ファイルに `#define EXTRA_LONG_COMBOS` または `#define EXTRA_EXTRA_LONG_COMBOS` のどちらかを追加することができます。 - -`COMBO_ALLOW_ACTION_KEYS` を定義することでアクションキーを有効にすることもできます。 - -## キーコード - -その場でコンボ機能を有効、無効および切り替えすることができます。ゲームなどで、一時的にそれらを無効にする必要がある場合に便利です。 - -| キーコード | 説明 | -|----------|---------------------------------| -| `CMB_ON` | コンボ機能をオンにします | -| `CMB_OFF` | コンボ機能をオフにします | -| `CMB_TOG` | コンボ機能のオンとオフを切り替えます | - -## ユーザコールバック - -キーコードに加えて、状態を設定または状態をチェックするために使うことができる幾つかの関数があります: - -| 関数 | 説明 | -|-----------|--------------------------------------------------------------------| -| `combo_enable()` | コンボ機能を有効にします | -| `combo_disable()` | コンボ機能を無効にし、コンボバッファをクリアします | -| `combo_toggle()` | コンボ機能の状態を切り替えます | -| `is_combo_enabled()` | コンボ機能の状態(true か false)を返します | diff --git a/docs/ja/feature_command.md b/docs/ja/feature_command.md deleted file mode 100644 index f8b7e892941..00000000000 --- a/docs/ja/feature_command.md +++ /dev/null @@ -1,56 +0,0 @@ -# コマンド - - - -コマンド(旧称:マジック)は、ファームウェアを書き込んだり、[ブートマジック](ja/feature_bootmagic.md)を使うためにプラグを抜いたりすることなくキーボードの挙動を変更する方法です。この機能と[ブートマジックキーコード](feature_bootmagic.md#keycodes)には多くの重複があります。可能な限り、コマンドでは無くブートマジックキーコードの機能を使うことをお勧めします。 - -一部のキーボードではコマンドがデフォルトで無効になっています。その場合、`rules.mk` 内で明示的に有効にする必要があります: - -```make -COMMAND_ENABLE = yes -``` - -## 使用法 - -コマンドを使うには、`IS_COMMAND()` マクロで定義されたキーの組み合わせを押し続けます。デフォルトでは、これは「左Shift + 右Shift」です。次に、目的のコマンドに対応するキーを押します。例えば、現在の QMK バージョンを QMK Toolbox コンソールに出力するには、「左Shift + 右Shift + `V`」を押します。 - -## 設定 - -コマンドのためのキーの割り当てを変更したい場合は、キーボードあるいはキーマップレベルのどちらかで、`config.h` にこれらを `#define` します。ここで割り当てる全てのキーコードは `KC_` 接頭辞を省略する必要があります。 - -| 定義 | デフォルト | 説明 | -|------------------------------------|--------------------------------|------------------------------------------------| -| `IS_COMMAND()` | `(get_mods() == MOD_MASK_SHIFT)` | コマンドをアクティブにするキーの組み合わせ | -| `MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS` | `true` | ファンクション行を使ってデフォルトレイヤーを設定 | -| `MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS` | `true` | 数字キーでデフォルトレイヤーを設定 | -| `MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM` | `false` | `MAGIC_KEY_LAYER0..9` を使ってデフォルトレイヤーを設定 | -| `MAGIC_KEY_DEBUG` | `D` | シリアルを介するデバッグの切り替え | -| `MAGIC_KEY_DEBUG_MATRIX` | `X` | キーマトリックスのデバッグの切り替え | -| `MAGIC_KEY_DEBUG_KBD` | `K` | キーボードのデバッグの切り替え | -| `MAGIC_KEY_DEBUG_MOUSE` | `M` | マウスのデバッグの切り替え | -| `MAGIC_KEY_CONSOLE` | `C` | コマンドコンソールを有効にする | -| `MAGIC_KEY_VERSION` | `V` | コンソールに実行中の QMK バージョンを出力 | -| `MAGIC_KEY_STATUS` | `S` | コンソールに現在のキーボードの状態を出力 | -| `MAGIC_KEY_HELP` | `H` | コンソールにコマンドのヘルプを出力 | -| `MAGIC_KEY_HELP_ALT` | `SLASH` | コンソールにコマンドのヘルプを出力 (代替) | -| `MAGIC_KEY_LAYER0` | `0` | レイヤー 0 をデフォルトレイヤーにする | -| `MAGIC_KEY_LAYER0_ALT` | `GRAVE` | レイヤー 0 をデフォルトレイヤーにする (代替) | -| `MAGIC_KEY_LAYER1` | `1` | レイヤー 1 をデフォルトレイヤーにする | -| `MAGIC_KEY_LAYER2` | `2` | レイヤー 2 をデフォルトレイヤーにする | -| `MAGIC_KEY_LAYER3` | `3` | レイヤー 3 をデフォルトレイヤーにする | -| `MAGIC_KEY_LAYER4` | `4` | レイヤー 4 をデフォルトレイヤーにする | -| `MAGIC_KEY_LAYER5` | `5` | レイヤー 5 をデフォルトレイヤーにする | -| `MAGIC_KEY_LAYER6` | `6` | レイヤー 6 をデフォルトレイヤーにする | -| `MAGIC_KEY_LAYER7` | `7` | レイヤー 7 をデフォルトレイヤーにする | -| `MAGIC_KEY_LAYER8` | `8` | レイヤー 8 をデフォルトレイヤーにする | -| `MAGIC_KEY_LAYER9` | `9` | レイヤー 9 をデフォルトレイヤーにする | -| `MAGIC_KEY_BOOTLOADER` | `B` | ブートローダにジャンプする | -| `MAGIC_KEY_BOOTLOADER_ALT` | `ESC` | ブートローダにジャンプする (代替) | -| `MAGIC_KEY_LOCK` | `CAPS` | 何も入力できないようにキーボードをロック | -| `MAGIC_KEY_EEPROM` | `E` | 保存された EEPROM 設定をコンソールに出力 | -| `MAGIC_KEY_EEPROM_CLEAR` | `BSPACE` | EEPROM をクリア | -| `MAGIC_KEY_NKRO` | `N` | N キーロールオーバー (NKRO) の有効・無効を切り替え | -| `MAGIC_KEY_SLEEP_LED` | `Z` | コンピュータがスリープの時に LED を切り替え | diff --git a/docs/ja/feature_debounce_type.md b/docs/ja/feature_debounce_type.md deleted file mode 100644 index 258ca194da4..00000000000 --- a/docs/ja/feature_debounce_type.md +++ /dev/null @@ -1,128 +0,0 @@ -# 接点バウンス / 接点チャタリング - - - -メカニカルスイッチは押した状態と放した状態の間の移行が単純ではないことが良くあります。 - -理想的な世界では、スイッチを押すと、デジタルピンが次のようになることが期待されます: -(X 軸は時間を表します -``` -voltage +---------------------- - ^ | - | | - | ------------------+ - ----> time -``` - -しかし実際の世界では、値が最終的に落ち着くまでに 0 と 1 の間を行ったり来たりする接点バウンスを見ることになるでしょう。(訳注:日本語では、バウンスとチャタリングを区別せずにチャタリングと呼んでいることが多いようです。) -``` - +-+ +--+ +------------- - | | | | | - | | | | | -+-----------------+ +-+ +-+ -``` -スイッチが落ち着くまでにかかる時間は、スイッチの種類や経年、押す技術によって異なる場合があります。 - -デバイスが接点バウンスを緩和しないことを選択した場合、スイッチが押された時に起きるアクションが複数回繰り返されることがよくあります。 - -接点バウンス(「デバウンス」)を処理する方法はたくさんあります。RC フィルタのような追加のハードウェアを採用する方法もありますが、ソフトウェアでデバウンスを行う様々な方法もあり、よくデバウンスアルゴリズムと呼ばれます。このページでは、QMK で利用できるデバウンスメソッドについて説明します。 - -技術的には接点バウンス/接点チャタリングとは見なされませんが、一部のスイッチテクノロジーはノイズの影響を受けやすく、キーの状態が変化していない時に、時々短くランダムに 0 と 1 の間を行き来する様子がデジタル回路によって読み取られる場合があります。例えば: -``` - +-+ - | | - | | -+-----------------+ +-------------------- -``` - -多くのデバウンスメソッド(全てではないですが)は、デバイスにノイズ耐性を持たせます。 -ノイズの影響を受けやすい技術を使っている場合は、ノイズを緩和するデバウンスメソッドを選択しなければなりません。 - -## デバウンスアルゴリズムの種類 - -1) 時間の単位: タイムスタンプ (ミリ秒) vs 周期 (スキャン) - * デバウンスアルゴリズムは1つの「デバウンス時間」パラメータを持つことがよくあり、スイッチ接点の最大セトリング時間を指定します。 - この時間は様々な単位で測定される場合があります: - * 周期ベースデバウンスは n 周期(スキャン)待機し、matrix_scan ごとにカウントを1減らします。 - * タイムスタンプベースのデバウンスは、変更が発生したミリ秒のタイムスタンプを格納し、経過時間を計算するために減算を行います。 - * 通常、タイムスタンプベースのデバウンスは、特にノイズ耐性のあるデバイスで優れています。なぜなら、物理スイッチのセトリング時間は時間の単位で指定されており、キーボードのマトリックススキャンレートに依存しないからです。 - * 周期ベースのデバウンスは、補正できるセトリング時間がマトリックススキャンコードのパフォーマンスに依存するため、劣ると見なされる場合があります。 - 周期ベースのデバウンスを使う場合、スキャンコードのパフォーマンスを大幅に向上させると、デバウンスの効果が低下する場合があります。 - 周期ベースのデバウンスが望ましい状況は、ノイズが存在し、スキャンアルゴリズムが遅い、もしくは速度が可変である場合です。 - デバウンスアルゴリズムが基本的にノイズ耐性がある場合でも、スキャンが遅く、タイムスタンプベースのアルゴリズムを使っている場合は、 - 2つのサンプル値に基づいてデバウンスを決定するため、アルゴリズムのノイズ耐性は制限されます。 - * 現在、全ての組み込みデバウンスアルゴリズムは、タイムスタンプベースのデバウンスのみサポートしています。将来的には周期ベースのデバウンスを実装し、```config.h``` マクロを介して選択できるようになるでしょう。 - -2) 対称 vs 非対称 - * 対称 - キーアップとキーダウンイベントの両方に、同じデバウンスアルゴリズムを適用します。 - * 推奨される命名規則: ```sym_*``` - * 非対称 - キーダウンとキーアップイベントに異なるデバウンスアルゴリズムを適用します。例えば、キーダウンはイーガー、キーアップはデファー。 - * 推奨される命名規則: ```asym_*``` の後に、キーダウン、キーアップの順に使っているアルゴリズムタイプの詳細が続きます。 - -3) イーガー vs デファー - * イーガー - キーの変更はすぐに報告されます。DEBOUNCE ミリ秒以降の全ての入力は無視されます。 - * イーガーアルゴリズムはノイズ耐性はありません - * 推奨される命名規則: - * ```sym_eager_*``` - * ```asym_eager_*_*```: キーダウンはイーガーアルゴリズムを使います - * ```asym_*_eager_*```: キーアップはイーガーアルゴリズムを使います - * デファー - 変更を報告する前に DEBOUNCE ミリ秒の間変更がないことを待機します - * デファーアルゴリズムはノイズ耐性があります - * 推奨される命名規則: - * ```sym_defer_*``` - * ```asym_defer_*_*```: キーダウンはデファーアルゴリズムを使います - * ```asym_*_defer_*```: キーアップはデファーアルゴリズムを使います - -4) グローバル vs キーごと vs 行ごと - * グローバル - 全てのキーに対して1つのタイマー。キーの変更状態は、グローバルタイマーに影響を与えます。 - * 推奨される命名規則: ```*_g``` - * キーごと - キーごとに1つのタイマー。 - * 推奨される命名規則: ```*_pk``` - * 行ごと - 行ごとに1つのタイマー。 - * 推奨される命名規則: ```*_pr``` - * キーごとや行ごとのアルゴリズムはより多くのリソース(パフォーマンスと RAM 使用量の観点で)を消費しますが、高速なタイピストはグローバルよりもそれらを好む場合があります。 - -## QMK でサポートされるデバウンスアルゴリズム - -QMK はデバウンス API を介して複数のデバウンスアルゴリズムをサポートします。 - -### デバウンスの選択 - -| DEBOUNCE_TYPE | 説明 | 他に必要なもの | -| ------------- | ------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| 未定義 | デフォルトのアルゴリズム、現在のところ sym_defer_g を使います | 無し | -| custom | 独自のデバウンスコードを使います | ```SRC += debounce.c``` で独自の debounce.c を追加し、必要な関数を実装します | -| その他 | quantum/debounce/* から他のアルゴリズムを使います | 無し | - -**分割キーボードについて**: -デバウンスコードは分割キーボードと互換性があります。 - -### インクルードされているデバウンスメソッドの選択 -キーボードは、```rules.mk``` に次の行を追加することで、既に実装されているデバウンスメソッドの1つを選択できます: -``` -DEBOUNCE_TYPE = <アルゴリズムの名前> -``` -アルゴリズムの名前は次のいずれかです: -* ```sym_defer_g``` - キーボードごとにデバウンスします。状態が変化すると、グローバルタイマが設定されます。```DEBOUNCE``` ミリ秒の間何も変化がなければ、全ての入力の変更がプッシュされます。 - * これは現在のデフォルトアルゴリズムです。これはメモリ使用量が最も少ない最高のパフォーマンスのアルゴリズムで、ノイズ耐性もあります。 -* ```sym_eager_pr``` - 行ごとにデバウンスします。状態が変化すると、応答は即座に行われ、その後その行は ```DEBOUNCE``` ミリ秒の間入力されません。 -```NUM_KEYS``` の 8ビットカウンタの更新に高い計算コストがかかる、もしくは低スキャンレートのキーボード用で、各指は通常一度に1行しか叩かないようになっています。これは ErgoDox モデルに適しています; マトリックスは90度回転しているため、その「行」は実際には「列」であり、通常の使用では各指は一度に1つの「行」にしか当たりません。 -* ```sym_eager_pk``` - キーごとにデバウンスします。状態が変化すると、応答は即座に行われ、その後そのキーは ```DEBOUNCE``` ミリ秒の間入力されません。 -* ```sym_defer_pk``` - キーごとにデバウンスします。状態が変化すると、キーごとのタイマーが設定されます。```DEBOUNCE``` ミリ秒の間そのキーに変化がなければ、キーの状態の変更がプッシュされます。 - -### 将来実装される可能性のあるいくつかのアルゴリズム: -* ```sym_defer_pr``` -* ```sym_eager_g``` -* ```asym_eager_defer_pk``` - -### 独自のデバウンスコードの使用 -独自のデバウンスアルゴリズムを実装するためのオプションがあります。次のようにします: -* ```rules.mk``` に ```DEBOUNCE_TYPE = custom``` を設定します。 -* ```rules.mk``` に ```SRC += debounce.c``` を追加します。 -* 独自の ```debounce.c``` を追加します。例については、```quantum/debounce``` にある現在の実装を見てください。 -* デバウンスは、全てのマトリクススキャンの後で発生します。 -* MATRIX_ROWS ではなく num_rows を使って、分割キーボードが正しくサポートされるようにします。 -* アルゴリズムが他のキーボードにも適用できる可能性がある場合、```quantum/debounce``` に追加することを検討してください。 diff --git a/docs/ja/feature_dip_switch.md b/docs/ja/feature_dip_switch.md deleted file mode 100644 index 8d0eeafa5a8..00000000000 --- a/docs/ja/feature_dip_switch.md +++ /dev/null @@ -1,115 +0,0 @@ -# DIP スイッチ - - - -DIP スイッチは、以下を `rules.mk` に追加することでサポートされます: - - DIP_SWITCH_ENABLE = yes - -さらに、以下を `config.h` に追加します: - -```c -// Connects each switch in the dip switch to the GPIO pin of the MCU -#define DIP_SWITCH_PINS { B14, A15, A10, B9 } -// For split keyboards, you can separately define the right side pins -#define DIP_SWITCH_PINS_RIGHT { ... } -``` - -あるいは - -```c -// Connect each switch in the DIP switch to an unused intersections in the key matrix. -#define DIP_SWITCH_MATRIX_GRID { {0,6}, {1,6}, {2,6} } // List of row and col pairs -``` - -## コールバック - -コールバック関数を `.c` に記述することができます: - -```c -bool dip_switch_update_kb(uint8_t index, bool active) { - if !(dip_switch_update_user(index, active)) { return false; } - return true; -} -``` - - -あるいは `keymap.c` に記述することもできます: - -```c -bool dip_switch_update_user(uint8_t index, bool active) { - switch (index) { - case 0: - if(active) { audio_on(); } else { audio_off(); } - break; - case 1: - if(active) { clicky_on(); } else { clicky_off(); } - break; - case 2: - if(active) { music_on(); } else { music_off(); } - break; - case 3: - if (active) { - #ifdef AUDIO_ENABLE - PLAY_SONG(plover_song); - #endif - layer_on(_PLOVER); - } else { - #ifdef AUDIO_ENABLE - PLAY_SONG(plover_gb_song); - #endif - layer_off(_PLOVER); - } - break; - } - return true; -} -``` - -更に、より複雑な処理ができるビットマスク関数をサポートします。 - - -```c -bool dip_switch_update_mask_kb(uint32_t state) { - if (!dip_switch_update_mask_user(state)) { return false; } - return true; -} -``` - - -あるいは `keymap.c` に記述することもできます: - -```c -bool dip_switch_update_mask_user(uint32_t state) { - if (state & (1UL<<0) && state & (1UL<<1)) { - layer_on(_ADJUST); // C on esc - } else { - layer_off(_ADJUST); - } - if (state & (1UL<<0)) { - layer_on(_TEST_A); // A on ESC - } else { - layer_off(_TEST_A); - } - if (state & (1UL<<1)) { - layer_on(_TEST_B); // B on esc - } else { - layer_off(_TEST_B); - } - return true; -} -``` - - -## ハードウェア - -### DIP スイッチの各スイッチを MCU の GPIO ピンに接続する - -DIP スイッチの片側は MCU のピンへ直接配線し、もう一方の側はグラウンドに配線する必要があります。機能的に同じであるため、どちら側がどちらに接続されているかは問題にはならないはずです。 - -### DIP スイッチの各スイッチをキーマトリクスの未使用の交点に接続する - -キースイッチと同じように、ダイオードと DIP スイッチが ROW 線と COL 線に接続します。 diff --git a/docs/ja/feature_dynamic_macros.md b/docs/ja/feature_dynamic_macros.md deleted file mode 100644 index fa1a1df931e..00000000000 --- a/docs/ja/feature_dynamic_macros.md +++ /dev/null @@ -1,72 +0,0 @@ -# 動的マクロ: ランタイムでのマクロの記録および再生 - - - -QMK はその場で作られた一時的なマクロをサポートします。これらを動的マクロと呼びます。それらはユーザがキーボードから定義し、キーボードのプラグを抜くか再起動すると失われます。 - -1つまたは2つのマクロに合計128のキー押下を保存できます。RAM をより多く使用してサイズを増やすことができます。 - -有効にするには、最初に `rules.mk` に `DYNAMIC_MACRO_ENABLE = yes` を記述します。そして、以下のキーをキーマップに追加します: - -| キー | Alias | 説明 | -|------------------|----------|---------------------------------------------------| -| `DYN_REC_START1` | `DM_REC1` | マクロ 1 の記録を開始します | -| `DYN_REC_START2` | `DM_REC2` | マクロ 2 の記録を開始します | -| `DYN_MACRO_PLAY1` | `DM_PLY1` | マクロ 1 を再生します | -| `DYN_MACRO_PLAY2` | `DM_PLY2` | マクロ 2 を再生します | -| `DYN_REC_STOP` | `DM_RSTP` | 現在記録中のマクロの記録を終了します。 | - -これが必要な全てです。 - -マクロの記録を開始するには、`DYN_REC_START1` または `DYN_REC_START2` のどちらかを押します。 - -記録を終了するには、`DYN_REC_STOP` レイヤーボタンを押します。`DYN_REC_START1` または `DYN_REC_START2` をもう一度押すことでも記録を終了することができます。 - -マクロを再生するには、`DYN_MACRO_PLAY1` あるいは `DYN_MACRO_PLAY2` のどちらかを押します。 - -マクロの一部としてマクロを再生することができます。マクロ 1 を記録中にマクロ 2 を再生、またはその逆も問題ありません。ただし、再帰的なマクロ、つまりマクロ 1 を再生するマクロ 1 は作成しないでください。もしそうしてキーボードが反応しなくなった場合は、キーボードを取り外し再び接続します。これを完全に無効にするには、`config.h` ファイルで `DYNAMIC_MACRO_NO_NESTING` を定義します。 - -?> 動的マクロの内部の詳細については、`process_dynamic_macro.h` および `process_dynamic_macro.c` ファイルのコメントを読んでください。 - -## カスタマイズ - -ある程度のカスタマイズを可能にするオプションがいくつか追加されています。 - -| 定義 | デフォルト | 説明 | -|----------------------------|----------------|-----------------------------------------------------------------------------------------------------------------| -| `DYNAMIC_MACRO_SIZE` | 128 | 動的マクロが使用できるメモリ量を設定します。これは限られたリソースであり、コントローラに依存します。 | -| `DYNAMIC_MACRO_USER_CALL` | *定義なし* | これを定義すると、ユーザの `keymap.c` ファイルを使ってマクロが起動されます。 | -| `DYNAMIC_MACRO_NO_NESTING` | *定義なし* | これを定義すると、別のマクロからマクロを呼び出す(入れ子になったマクロ)機能を無効にします。 | -| `DYNAMIC_MACRO_DELAY` | *定義なし* | 各キーを送信する時の待ち時間(ms単位)を設定します。 | - - -記録中にキーを押すたびに LED が点滅し始めた場合は、マクロバッファにマクロを入れるスペースがもう無いことを意味します。マクロを入れるには、他のマクロ(それらは同じバッファを共有します)を短くするか、`config.h` に `DYNAMIC_MACRO_SIZE` 定義を追加することでバッファを増やします(デフォルト値: 128; ヘッダ内のコメントを読んでください)。 - - -### DYNAMIC_MACRO_USER_CALL - -以前のバージョンの動的マクロをお使いの方へ: 専用の `DYN_REC_STOP` キーを使わずに動的マクロキーへのアクセスに使われるレイヤーモディファイアのみを使って、マクロの記録を終了することもまだ可能です。この動作に戻したい場合は、`#define DYNAMIC_MACRO_USER_CALL` を `config.h` に追加し、以下のスニペットを `process_record_user()` 関数の先頭に記述します: - -```c - uint16_t macro_kc = (keycode == MO(_DYN) ? DYN_REC_STOP : keycode); - - if (!process_record_dynamic_macro(macro_kc, record)) { - return false; - } -``` - -### ユーザフック - -カスタム機能とフィードバックオプションを動的マクロ機能に追加するために使うことができるフックが幾つかあります。これによりある程度のカスタマイズが可能になります。 - -direction がどのマクロであるかを示すことに注意してください。`1` がマクロ 1、`-1` がマクロ 2、0 がマクロ無しです。 - -* `dynamic_macro_record_start_user(int8_t direction)` - マクロの記録を開始する時に起動されます。 -* `dynamic_macro_play_user(int8_t direction)` - マクロを再生する時に起動されます。 -* `dynamic_macro_record_key_user(int8_t direction, keyrecord_t *record)` - マクロの記録中に各キー押下で起動されます。 -* `dynamic_macro_record_end_user(int8_t direction)` - マクロの記録を停止した時に起動されます。 - -さらに、動的マクロ機能が有効な場合にバックライトを点滅させるために `dynamic_macro_led_blink()` を呼び出すことができます。 diff --git a/docs/ja/feature_encoders.md b/docs/ja/feature_encoders.md deleted file mode 100644 index b93d9a9a281..00000000000 --- a/docs/ja/feature_encoders.md +++ /dev/null @@ -1,85 +0,0 @@ -# エンコーダ - - - -以下を `rules.mk` に追加することで基本的なエンコーダがサポートされます: - -```make -ENCODER_ENABLE = yes -``` - -さらに、以下を `config.h` に追加します: - -```c -#define ENCODERS_PAD_A { B12 } -#define ENCODERS_PAD_B { B13 } -``` - -各 PAD_A/B 変数は配列を定義するため、複数のエンコーダを定義することができます。例えば: - -```c -#define ENCODERS_PAD_A { encoder1a, encoder2a } -#define ENCODERS_PAD_B { encoder1b, encoder2b } -``` - -エンコーダの時計回りの方向が間違っている場合は、A と B のパッド定義を交換することができます。define を使って逆にすることもできます: - -```c -#define ENCODER_DIRECTION_FLIP -``` - -さらに、エンコーダが各戻り止め(デテント)間に登録するパルス数を定義する解像度は、次のように定義できます: - -```c -#define ENCODER_RESOLUTION 4 -``` - -## 分割キーボード - -分割キーボードのそれぞれの側のエンコーダに異なるピン配列を使っている場合、右側のピン配列を以下のように定義することができます: - -```c -#define ENCODERS_PAD_A_RIGHT { encoder1a, encoder2a } -#define ENCODERS_PAD_B_RIGHT { encoder1b, encoder2b } -``` - -## コールバック - -コールバック関数を `.c` に記述することができます: - -```c -bool encoder_update_kb(uint8_t index, bool clockwise) { - if (!encoder_update_user(index, clockwise)) { - return false; - } - -} -``` - -あるいは `keymap.c` に記述することもできます: - -```c -bool encoder_update_user(uint8_t index, bool clockwise) { - if (index == 0) { /* First encoder */ - if (clockwise) { - tap_code(KC_PGDN); - } else { - tap_code(KC_PGUP); - } - } else if (index == 1) { /* Second encoder */ - if (clockwise) { - tap_code(KC_DOWN); - } else { - tap_code(KC_UP); - } - } - return false; -} -``` - -## ハードウェア - -エンコーダの A と B の線は MCU に直接配線し、C/common 線はグランドに配線する必要があります。 diff --git a/docs/ja/feature_grave_esc.md b/docs/ja/feature_grave_esc.md deleted file mode 100644 index 746e9e5d14e..00000000000 --- a/docs/ja/feature_grave_esc.md +++ /dev/null @@ -1,37 +0,0 @@ -# グレイブエスケープ - - - -60% キーボード、またはファンクションキー行の無い他のレイアウトを使っている場合、専用の Escape キーが無いことに気付くでしょう。グレイブエスケープは grave キー (` および `~`) を Escape と共有することができる機能です。 - -## 使用法 - -キーマップ内の `KC_GRAVE` キー (通常は`1` キーの左)を `QK_GESC` に置き換えます。ほとんどの場合、このキーは押された時に `KC_ESC` を出力します。ただし、Shift あるいは GUI を押したままにすると、代わりに `KC_GRV` を出力します。 - -## OS に見えるもの - -メアリーがキーボードで GESC を押すと、OS には KC_ESC 文字が見えます。メアリーが Shift を押しながら GESC を押すと、`~` または Shift された時はバッククォートを出力します。彼女が GUI/CMD/WIN を押したままにすると、1つの ` 文字を出力します。 - -## キーコード - -| キー | エイリアス | 説明 | -|---------|-----------|------------------------------------------------------------------| -| `QK_GESC` | `GRAVE_ESC` | 押された場合に Escape。Shift あるいは GUI が押されたままの場合は ` | - -### 注意事項 - -macOS では、Command+` はデフォルトで "次のウィンドウを操作対象にする" にマップされます。つまりバッククォートを出力しません。さらに、ショートカットがキーボード環境設定で変更された場合でも、ターミナルは常にこのショートカットを認識してウィンドウを切り替えます。 - -## 設定 - -グレイブエスケープが壊す可能性のあるキーの組み合わせが幾つかあります。その中には、Windows では Control+Shift+Escape、macOSでは Command+Option+Escape があります。これを回避するには、`config.h` で以下のオプションを `#define` することができます: - -| 定義 | 説明 | -|--------------------------|-----------------------------------------| -| `GRAVE_ESC_ALT_OVERRIDE` | Alt が押された場合、常に Escape を送信する | -| `GRAVE_ESC_CTRL_OVERRIDE` | Control が押された場合、常に Escape を送信する | -| `GRAVE_ESC_GUI_OVERRIDE` | GUI が押された場合、常に Escape を送信する | -| `GRAVE_ESC_SHIFT_OVERRIDE` | Shift が押された場合、常に Escape を送信する | diff --git a/docs/ja/feature_haptic_feedback.md b/docs/ja/feature_haptic_feedback.md deleted file mode 100644 index 687788014aa..00000000000 --- a/docs/ja/feature_haptic_feedback.md +++ /dev/null @@ -1,173 +0,0 @@ -# 触覚フィードバック - - - -## 触覚フィードバック の rules.mk オプション - -現在のところ、`rules.mk` で触覚フィードバック用に以下のオプションを利用可能です: - -``` -HAPTIC_ENABLE = yes - -HAPTIC_DRIVER += DRV2605L -HAPTIC_DRIVER += SOLENOID -``` - -## サポートされる既知のハードウェア - -| 名前 | 説明 | -|--------------------|-------------------------------------------------| -| [LV061228B-L65-A](https://www.digikey.com/product-detail/en/jinlong-machinery-electronics-inc/LV061228B-L65-A/1670-1050-ND/7732325) | z-axis 2v LRA | -| [Mini Motor Disc](https://www.adafruit.com/product/1201) | small 2-5v ERM | - -## 触覚キーコード - -以下のキーコードは、選択した触覚メカニズムに依存して動作するかどうか決まります。 - -| 名前 | 説明 | -|-----------|-------------------------------------------------------| -| `HPT_ON` | 触覚フィードバックをオン | -| `HPT_OFF` | 触覚フィードバックをオフ | -| `HPT_TOG` | 触覚フィードバックのオン/オフを切り替え | -| `HPT_RST` | 触覚フィードバック設定をデフォルトに戻す | -| `HPT_FBK` | キー押下またはリリースまたはその両方でフィードバックを切り替え | -| `HPT_BUZ` | ソレノイドのブザー音のオン/オフを切り替え | -| `HPT_MODI` | 次の DRV2605L 波形に移動 | -| `HPT_MODD` | 前の DRV2605L 波形に移動 | -| `HPT_CONT` | 連続触覚モードのオン/オフを切り替え | -| `HPT_CONI` | DRV2605L の連続触覚強度を増加 | -| `HPT_COND` | DRV2605L の連続触覚強度を減少 | -| `HPT_DWLI` | ソレノイドの滞留時間を増加 | -| `HPT_DWLD` | ソレノイドの滞留時間を減少 | - -### ソレノイド - -ほとんどの MCU はソレノイドのコイルを駆動するために必要な電流を供給できないため、最初に MOSFET を介してソレノイドを駆動する回路を構築する必要があります。 - -[Adafruit が提供する配線図](https://cdn-shop.adafruit.com/product-files/412/412_solenoid_driver.pdf) - - -| 設定 | デフォルト | 説明 | -|--------------------------|---------------|-------------------------------------------------------| -| `SOLENOID_PIN` | *定義なし* | ソレノイドが接続されているピンを設定する。 | -| `SOLENOID_DEFAULT_DWELL` | `12` ms | ソレノイドのデフォルトの滞留時間を設定する。 | -| `SOLENOID_MIN_DWELL` | `4` ms | 滞留時間の下限を設定する。 | -| `SOLENOID_MAX_DWELL` | `100` ms | 滞留時間の上限を設定する。 | -| `SOLENOID_DWELL_STEP_SIZE` | `1` ms | `HPT_DWL*` キーコードが送信される時に使われるステップサイズ | -| `SOLENOID_DEFAULT_BUZZ` | `0` (無効) | HPT_RST では、この値が "1" の場合、ブザー音が "on" に設定されます | -| `SOLENOID_BUZZ_ACTUATED` | `SOLENOID_MIN_DWELL` | ソレノイドがブザー音モードの場合の動作時間 | -| `SOLENOID_BUZZ_NONACTUATED` | `SOLENOID_MIN_DWELL` | ソレノイドがブザー音モードの場合の非動作時間 | - -* ソレノイドのブザー音がオフの場合、滞留時間は「プランジャー」が作動したままになる時間です。滞留時間により、ソレノイドの音が変わります。 -* ソレノイドのブザー音がオンの場合、滞留時間は振動の長さを設定しますが、`SOLENOID_BUZZ_ACTUATED` と `SOLENOID_BUZZ_NONACTUATED` はブザー音の間の(非)動作時間を設定します。 -* 現在の実装では、上記の時間設定のいずれについても、設定の精度はキーボードがマトリックスをスキャンできる速度によって影響を受ける可能性があります。 - したがって、キーボードのスキャンルーチンが遅い場合は、`SOLENOID_DWELL_STEP_SIZE` をキーボードのスキャンに掛かる時間よりもわずかに小さい値に設定することをお勧めします。 - -ブートローダ実行中に一部のピンが給電されているかもしれず (例えば、STM32F303 チップ上の A13)、そうすると書き込みプロセスの間ずっとソレノイドがオン状態になることに注意してください。これはソレノイドを加熱し損傷を与えるかもしれません。ソレノイドが接続されているピンがブートローダ/DFU 実行中にソレノイドをオンにしていることが分かった場合は、他のピンを選択してください。 - -### DRV2605L - -DRV2605Lは i2c プロトコルで制御され、SDA および SCL ピンに接続する必要があります。これらは使用する MCU によって異なります。 - -#### フィードバックモータのセットアップ - -このドライバは2つの異なるフィードバックモータをサポートします。選択したモータに基づいて、`config.h` で以下を設定します。 - -##### ERM - -偏心回転質量振動モータ (ERM) は偏りのある重りが取り付けられたモータで、駆動信号が取り付けられると偏りのある重りが回転し、正弦波が振動に変換されます。 - -``` -#define FB_ERM_LRA 0 -#define FB_BRAKEFACTOR 3 /* For 1x:0, 2x:1, 3x:2, 4x:3, 6x:4, 8x:5, 16x:6, Disable Braking:7 */ -#define FB_LOOPGAIN 1 /* For Low:0, Medium:1, High:2, Very High:3 */ - -/* 特定のモータに最適な設定については、データシートを参照してください。*/ -#define RATED_VOLTAGE 3 -#define V_PEAK 5 -``` -##### LRA - -線形共振アクチュエータ (LRA、線形バイブレータとしても知られています)は、ERM と異なります。LRA は重りと磁石をバネで吊るしたものとボイスコイルで構成されています。駆動信号が印加されるとされると、重りは単一の軸で振動します (左右または上下)。重りはバネに取り付けられているため、特定の周波数で共振効果があります。この周波数は LRA が最も効率的に動作する箇所です。この周波数の推奨範囲については、モータのデータシートを参照してください。 - -``` -#define FB_ERM_LRA 1 -#define FB_BRAKEFACTOR 3 /* For 1x:0, 2x:1, 3x:2, 4x:3, 6x:4, 8x:5, 16x:6, Disable Braking:7 */ -#define FB_LOOPGAIN 1 /* For Low:0, Medium:1, High:2, Very High:3 */ - -/* 特定のモータに最適な設定については、データシートを参照してください。*/ -#define RATED_VOLTAGE 2 -#define V_PEAK 2.8 -#define V_RMS 2.0 -#define V_PEAK 2.1 -#define F_LRA 205 /* 共振周波数 */ -``` - -#### DRV2605L 波形ライブラリ - -DRV2605L には呼び出して再生できる様々な波形シーケンスのプリロードライブラリが同梱されています。マクロを書く場合、これらの波形は `DRV_pulse(*sequence name or number*)` を使って再生することができます - -データシートの波形シーケンスのリスト - -| seq# | シーケンス名 | seq# | シーケンス名 | seq# | シーケンス名 | -|-----|---------------------|-----|-----------------------------------|-----|--------------------------------------| -| 1 | strong_click | 43 | lg_dblclick_med_60 | 85 | transition_rampup_med_smooth2 | -| 2 | strong_click_60 | 44 | lg_dblsharp_tick | 86 | transition_rampup_short_smooth1 | -| 3 | strong_click_30 | 45 | lg_dblsharp_tick_80 | 87 | transition_rampup_short_smooth2 | -| 4 | sharp_click | 46 | lg_dblsharp_tick_60 | 88 | transition_rampup_long_sharp1 | -| 5 | sharp_click_60 | 47 | buzz | 89 | transition_rampup_long_sharp2 | -| 6 | sharp_click_30 | 48 | buzz_80 | 90 | transition_rampup_med_sharp1 | -| 7 | soft_bump | 49 | buzz_60 | 91 | transition_rampup_med_sharp2 | -| 8 | soft_bump_60 | 50 | buzz_40 | 92 | transition_rampup_short_sharp1 | -| 9 | soft_bump_30 | 51 | buzz_20 | 93 | transition_rampup_short_sharp2 | -| 10 | dbl_click | 52 | pulsing_strong | 94 | transition_rampdown_long_smooth1_50 | -| 11 | dbl_click_60 | 53 | pulsing_strong_80 | 95 | transition_rampdown_long_smooth2_50 | -| 12 | trp_click | 54 | pulsing_medium | 96 | transition_rampdown_med_smooth1_50 | -| 13 | soft_fuzz | 55 | pulsing_medium_80 | 97 | transition_rampdown_med_smooth2_50 | -| 14 | strong_buzz | 56 | pulsing_sharp | 98 | transition_rampdown_short_smooth1_50 | -| 15 | alert_750ms | 57 | pulsing_sharp_80 | 99 | transition_rampdown_short_smooth2_50 | -| 16 | alert_1000ms | 58 | transition_click | 100 | transition_rampdown_long_sharp1_50 | -| 17 | strong_click1 | 59 | transition_click_80 | 101 | transition_rampdown_long_sharp2_50 | -| 18 | strong_click2_80 | 60 | transition_click_60 | 102 | transition_rampdown_med_sharp1_50 | -| 19 | strong_click3_60 | 61 | transition_click_40 | 103 | transition_rampdown_med_sharp2_50 | -| 20 | strong_click4_30 | 62 | transition_click_20 | 104 | transition_rampdown_short_sharp1_50 | -| 21 | medium_click1 | 63 | transition_click_10 | 105 | transition_rampdown_short_sharp2_50 | -| 22 | medium_click2_80 | 64 | transition_hum | 106 | transition_rampup_long_smooth1_50 | -| 23 | medium_click3_60 | 65 | transition_hum_80 | 107 | transition_rampup_long_smooth2_50 | -| 24 | sharp_tick1 | 66 | transition_hum_60 | 108 | transition_rampup_med_smooth1_50 | -| 25 | sharp_tick2_80 | 67 | transition_hum_40 | 109 | transition_rampup_med_smooth2_50 | -| 26 | sharp_tick3_60 | 68 | transition_hum_20 | 110 | transition_rampup_short_smooth1_50 | -| 27 | sh_dblclick_str | 69 | transition_hum_10 | 111 | transition_rampup_short_smooth2_50 | -| 28 | sh_dblclick_str_80 | 70 | transition_rampdown_long_smooth1 | 112 | transition_rampup_long_sharp1_50 | -| 29 | sh_dblclick_str_60 | 71 | transition_rampdown_long_smooth2 | 113 | transition_rampup_long_sharp2_50 | -| 30 | sh_dblclick_str_30 | 72 | transition_rampdown_med_smooth1 | 114 | transition_rampup_med_sharp1_50 | -| 31 | sh_dblclick_med | 73 | transition_rampdown_med_smooth2 | 115 | transition_rampup_med_sharp2_50 | -| 32 | sh_dblclick_med_80 | 74 | transition_rampdown_short_smooth1 | 116 | transition_rampup_short_sharp1_50 | -| 33 | sh_dblclick_med_60 | 75 | transition_rampdown_short_smooth2 | 117 | transition_rampup_short_sharp2_50 | -| 34 | sh_dblsharp_tick | 76 | transition_rampdown_long_sharp1 | 118 | long_buzz_for_programmatic_stopping | -| 35 | sh_dblsharp_tick_80 | 77 | transition_rampdown_long_sharp2 | 119 | smooth_hum1_50 | -| 36 | sh_dblsharp_tick_60 | 78 | transition_rampdown_med_sharp1 | 120 | smooth_hum2_40 | -| 37 | lg_dblclick_str | 79 | transition_rampdown_med_sharp2 | 121 | smooth_hum3_30 | -| 38 | lg_dblclick_str_80 | 80 | transition_rampdown_short_sharp1 | 122 | smooth_hum4_20 | -| 39 | lg_dblclick_str_60 | 81 | transition_rampdown_short_sharp2 | 123 | smooth_hum5_10 | -| 40 | lg_dblclick_str_30 | 82 | transition_rampup_long_smooth1 | | | -| 41 | lg_dblclick_med | 83 | transition_rampup_long_smooth2 | | | -| 42 | lg_dblclick_med_80 | 84 | transition_rampup_med_smooth1 | | | -### オプションの DRV2605L の定義 - -``` -#define DRV_GREETING *sequence name or number* -``` -触覚フィードバッグが有効な場合、キーボード起動時に特定のシーケンスに合わせて振動します。以下の定義を使って選択することができます: - -``` -#define DRV_MODE_DEFAULT *sequence name or number* -``` -これにより HPT_RST がアクティブモードとして設定するシーケンスを設定します。未定義の場合、HPT_RST が押された時にモードが 1 に設定されます。 - -### DRV2605L 連続触覚モード - -このモードは強さを増減するオプションを使って連続触覚フィードバッグを設定します。 diff --git a/docs/ja/feature_hd44780.md b/docs/ja/feature_hd44780.md deleted file mode 100644 index b4e1ef03ab3..00000000000 --- a/docs/ja/feature_hd44780.md +++ /dev/null @@ -1,62 +0,0 @@ -# HD44780 LCD ディスプレイ - - - -これは Peter Fleury の LCD ライブラリの統合です。このページは基本について説明します。[詳細なドキュメントについてはこのページをご覧ください](http://www.peterfleury.epizy.com/doxygen/avr-gcc-libraries/group__pfleury__lcd.html) - -HD44780 ディスプレイのサポートを有効にするには、キーボードの `rules.mk` の `HD44780_ENABLE` フラグを yes に設定します。 - -## 設定 - -ディスプレイで使用されるピンとディスプレイの行と列の数を、キーボードの `config.h` に設定する必要があります。 - - -HD44780 のラベルが付いたセクションのコメントを外し、必要に応じてパラメータを変更します。 -```` -/* - * HD44780 LCD ディスプレイ設定 - */ - -#define LCD_LINES 2 //< ディスプレイの表示行数 -#define LCD_DISP_LENGTH 16 //< ディスプレイの行ごとの表示文字数 -#define LCD_IO_MODE 1 //< 0: メモリマップモード 1: IO ポートモード -#if LCD_IO_MODE -#define LCD_PORT PORTB //< LCD 行のためのポート -#define LCD_DATA0_PORT LCD_PORT //< 4ビットデータビット 0 のポート -#define LCD_DATA1_PORT LCD_PORT //< 4ビットデータビット 1 のポート -#define LCD_DATA2_PORT LCD_PORT //< 4ビットデータビット 2 のポート -#define LCD_DATA3_PORT LCD_PORT //< 4ビットデータビット 3 のポート -#define LCD_DATA0_PIN 4 //< 4ビットデータビット 0 のピン -#define LCD_DATA1_PIN 5 //< 4ビットデータビット 1 のピン -#define LCD_DATA2_PIN 6 //< 4ビットデータビット 2 のピン -#define LCD_DATA3_PIN 7 //< 4ビットデータビット 3 のピン -#define LCD_RS_PORT LCD_PORT //< RS 線のためのポート -#define LCD_RS_PIN 3 //< RS 線のためのピン -#define LCD_RW_PORT LCD_PORT //< RW 線のためのポート -#define LCD_RW_PIN 2 //< RW 線のためのピン -#define LCD_E_PORT LCD_PORT //< Enable 線のためのポート -#define LCD_E_PIN 1 //< Enable 線のためのピン -#endif -```` - -他のプロパティを設定する必要がある場合は、それらを `quantum/hd44780.h` からコピーし、`config.h` に設定することができます。(訳注)`quantum/hd44780.h` は `drivers/avr/hd44780.h` の間違いではないかと思われます。 - -## 使用法 - -ディスプレイを初期化するには、以下のパラメータのうちの1つを使って `lcd_init()` を呼び出します: -```` -LCD_DISP_OFF : ディスプレイオフ -LCD_DISP_ON : ディスプレイオン、カーソルオフ -LCD_DISP_ON_CURSOR : ディスプレイオン、カーソルオン -LCD_DISP_ON_CURSOR_BLINK : ディスプレイオン、点滅カーソル -```` -これはキーボードの `matrix_init_kb` またはキーマップの `matrix_init_user` で行うのが最適です。 -使用前にディスプレイをクリアすることをお勧めします。 -そのためには、`lcd_clrscr()` を呼びます。 - -ディスプレイに何かを表示するには、最初に `lcd_gotoxy(column, line)` を呼びます。最初の行の先頭に移動するには、`lcd_gotoxy(0, 0)` を呼び出し、その後 `lcd_puts("example string")` を使って文字列を出力します。 - -ディスプレイを制御することができる、より多くのメソッドがあります。[詳細なドキュメントについてはリンクされたページをご覧ください](http://www.peterfleury.epizy.com/doxygen/avr-gcc-libraries/group__pfleury__lcd.html) diff --git a/docs/ja/feature_key_lock.md b/docs/ja/feature_key_lock.md deleted file mode 100644 index 22cd9fb8109..00000000000 --- a/docs/ja/feature_key_lock.md +++ /dev/null @@ -1,27 +0,0 @@ -# キーロック - - - -特定のキーを長時間押すことが必要になる場合があります。キーロックは次に押すキーを押したままにします。もう一度押すと、リリースされます。 - -いくつかの文を全て大文字で入力する必要があるとしましょう。`KC_LOCK` を押し、次にシフトを押します。これで、シフトは次にタップするまで押していると見なされます。キーロックを Caps Lock と考えることができますが、さらに強力です。 - -## 使用法 - -最初に `rules.mk` で `KEY_LOCK_ENABLE = yes` を設定することでキーロックを有効にします。次に、キーマップでキーを選択し、それをキーコード `KC_LOCK` に割り当てます。 - -## キーコード - -| キーコード | 説明 | -|---------|--------------------------------------------------------------| -| `KC_LOCK` | キーが再び押されるまで次のキーを押したままにします。 | - -## 注意事項 - -キーロックは、標準アクションキーと[ワンショットモディファイア](ja/one_shot_keys.md)キー (例えば、Shift を `OSM(MOD_LSFT)` と定義した場合)のみを押し続けることができます。 -これは、QMK の特殊機能(ワンショットモディファイアを除く)、または `KC_LPRN` のような shift を押されたキーのバージョンは含みません。[基本的なキーコード](ja/keycodes_basic.md)リストにある場合、押したままにすることができます。 - -レイヤーの切り替えは、キーロックを解除しません。 diff --git a/docs/ja/feature_layers.md b/docs/ja/feature_layers.md deleted file mode 100644 index ca3e0558357..00000000000 --- a/docs/ja/feature_layers.md +++ /dev/null @@ -1,97 +0,0 @@ -# レイヤー :id=layers - - - -QMK ファームウェアの最も強力で良く使われている機能の一つは、レイヤーを使う機能です。ほとんどの人にとって、これはラップトップやタブレットキーボードにあるのと同じように、様々なキーを可能にするファンクションキーに相当します。 - -レイヤースタックがどのように動作するかの詳細な説明については、[キーマップの概要](ja/keymap.md#keymap-and-layers)を調べてください。 - -## レイヤーの切り替えとトグル :id=switching-and-toggling-layers - -以下の関数により、様々な方法でレイヤーをアクティブにすることができます。レイヤーは通常、独立したレイアウトでは無いことに注意してください -- 複数のレイヤーを一度にアクティブにすることができ、レイヤーが `KC_TRNS` を使ってキーの押下を下のレイヤーへと透過させることが一般的です。MO()、LM()、TT() あるいは LT() を使って一時的なレイヤーの切り替えを使う場合、上のレイヤーのキーを透過にするようにしてください。さもないと意図したように動作しないかもしれません。 - -* `DF(layer)` - デフォルトレイヤーを切り替えます。デフォルトレイヤーは、他のレイヤーがその上に積み重なっている、常にアクティブな基本レイヤーです。デフォルトレイヤーの詳細については以下を見てください。これは QWERTY から Dvorak レイアウトに切り替えるために使うことができます。(これは一時的な切り替えであり、キーボードの電源が切れるまでしか持続しないことに注意してください。デフォルトレイヤーを永続的に変更するには、[process_record_user](ja/custom_quantum_functions.md#programming-the-behavior-of-any-keycode) 内で `set_single_persistent_default_layer` 関数を呼び出すなど、より深いカスタマイズが必要です。) -* `MO(layer)` - 一時的に*レイヤー*をアクティブにします。キーを放すとすぐに、レイヤーは非アクティブになります。 -* `LM(layer, mod)` - (`MO` のように)一時的に*レイヤー*をアクティブにしますが、モディファイア *mod* がアクティブな状態です。layer 0-15 と、左モディファイアのみをサポートします: `MOD_LCTL`、`MOD_LSFT`、`MOD_LALT`、`MOD_LGUI` (`KC_` 定数の代わりに `MOD_` 定数を使うことに注意してください)。これらのモディファイアは、例えば `LM(_RAISE, MOD_LCTL | MOD_LALT)` のように、ビット単位の OR を使って組み合わせることができます。 -* `LT(layer, kc)` - ホールドされた時に*レイヤー*を一時的にアクティブにし、タップされた時に *kc* を送信します。layer 0-15 のみをサポートします。 -* `OSL(layer)` - 次のキーが押されるまで、一時的に*レイヤー*をアクティブにします。詳細と追加機能については、[ワンショットキー](ja/one_shot_keys.md)を見てください。 -* `TG(layer)` - *レイヤー*を切り替えます。非アクティブな場合はアクティブにし、逆も同様です。 -* `TO(layer)` - *レイヤー*をアクティブにし、他の全てのレイヤー(デフォルトレイヤーを除く)を非アクティブにします。この関数は特別です。1つのレイヤーをアクティブなレイヤースタックに追加/削除する代わりに、現在のアクティブなレイヤーを完全に置き換え、唯一上位のレイヤーを下位のレイヤーで置き換えることができるからです。これはキーダウンで(キーが押されるとすぐに)アクティブになります。 -* `TT(layer)` - レイヤーのタップ切り替え。キーを押したままにすると*レイヤー*がアクティブにされ、放すと非アクティブになります (`MO` 風)。繰り返しタップすると、レイヤーはオンあるいはオフを切り替えます (`TG` 風)。デフォルトでは5回のタップが必要ですが、`TAPPING_TOGGLE` を定義することで変更することができます -- 例えば、2回のタップだけで切り替えるには、`#define TAPPING_TOGGLE 2` を定義します。 - -### 注意事項 :id=caveats - -現在のところ、`LT()` の `layer` 引数はレイヤー 0-15 に制限され、`kc` 引数は[基本的なキーコードセット](ja/keycodes_basic.md)に制限されています。つまり、`LCTL()`、`KC_TILD` あるいは `0xFF` より大きなキーコードを使うことができません。これは、QMK が16ビットのキーコードを使うためです。4ビットは機能の識別のために使われ、4ビットはレイヤーのために使われ、キーコードには8ビットしか残されていません。 - -これを拡張してもせいぜい複雑になるだけでしょう。32ビットキーコードに移行すると、これの多くが解決されますが、キーマップマトリックスが使用する領域が2倍になります。また、問題が起きる可能性もあります。タップしたキーコードにモディファイアを適用する必要がある場合は、[タップダンス](ja/feature_tap_dance.md#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys)を使うことができます。 - -## レイヤーとの連携 :id=working-with-layers - -レイヤーを切り替える時は注意してください。(キーボードを取り外さずに)そのレイヤーを非アクティブにすることができずレイヤーから移動できなくなる可能性があります。最も一般的な問題を避けるためのガイドラインを作成しました。 - -### 初心者 :id=beginners - -QMK を使い始めたばかりの場合は、全てを単純にしたいでしょう。レイヤーをセットアップする時は、これらのガイドラインに従ってください: - -* デフォルトの "base" レイヤーとして、layer 0 をセットアップします。これは通常の入力レイヤーであり、任意のレイアウト (qwerty、dvorak、colemak など)にすることができます。通常はキーボードのキーのほとんどまたは全てが定義されているため、これを最下位のレイヤーとして設定することが重要です。そうすることで、もしそれが他のレイヤーの上 (つまりレイヤー番号が大きい)にある場合の影響を防ぎます。 -* layer 0 をルートとして、レイヤーを "ツリー" レイアウトに配置します。他の複数のレイヤーから同じレイヤーに行こうとしないでください。 -* 各レイヤーのキーマップでは、より高い番号のレイヤーのみを参照します。レイヤーは最大の番号(最上位)のアクティブレイヤーから処理されるため、下位レイヤーの状態を変更するのは難しくエラーが発生しやすくなります。 - -### 中級ユーザ :id=intermediate-users - -複数の基本レイヤーが必要な場合があります。例えば、QWERTY と Dvorak を切り替える場合、国ごとに異なるレイアウトを切り替える場合、あるいは異なるビデオゲームごとにレイアウトを切り替える場合などです。基本レイヤーは常に最小の番号のレイヤーである必要があります。複数の基本レイヤーがある場合、常にそれらを相互排他的に扱う必要があります。1つの基本レイヤーがオンの場合、他をオフにします。 - -### 上級ユーザ :id=advanced-users - -レイヤーがどのように動作し、何ができるかを理解したら、より創造的になります。初心者のセクションで列挙されている規則は、幾つかの巧妙な詳細を回避するのに役立ちますが、特に超コンパクトなキーボードのユーザにとって制約になる場合があります。レイヤーの仕組みを理解することで、レイヤーをより高度な方法で使うことができます。 - -レイヤーは番号順に上に積み重なっています。キーの押下の動作を決定する時に、QMK は上から順にレイヤーを走査し、`KC_TRNS` に設定されていない最初のアクティブなレイヤーに到達すると停止します。結果として、現在のレイヤーよりも数値的に低いレイヤーをアクティブにし、現在のレイヤー(あるいはアクティブでターゲットレイヤーよりも高い別のレイヤー)に `KC_TRNS` 以外のものがある場合、それが送信されるキーであり、アクティブ化したばかりのレイヤー上のキーではありません。これが、ほとんどの人の "なぜレイヤーが切り替わらないのか" 問題の原因です。 - -場合によっては、マクロ内あるいはタップダンスルーチンの一部としてレイヤーを切り替えほうが良いかもしれません。`layer_on` はレイヤーをアクティブにし、`layer_off` はそれを非アクティブにします。もっと多くのレイヤーに関する関数は、[action_layer.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/action_layer.h) で見つけることができます。 - -## 関数 :id=functions - -レイヤーの使用あるいは操作に関係する多くの関数(と変数)があります。 - -| 関数 | 説明 | -| -------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `layer_state_set(layer_mask)` | 直接レイヤーの状態を設定する (推奨。何をしているのか分かっていない場合は使わないでください)。 | -| `layer_clear()` | 全てのレイヤーを消去する (全てをオフにします)。 | -| `layer_move(layer)` | 指定されたレイヤーをオンにし、それ以外をオフにする。 | -| `layer_on(layer)` | 指定されたレイヤーをオンにし、それ以外を既存の状態のままにする。 | -| `layer_off(layer)` | 指定されたレイヤーをオフにし、それ以外を既存の状態のままにする。 | -| `layer_invert(layer)` | 指定されたレイヤーの状態を反転/トグルする。 | -| `layer_or(layer_mask)` | 指定されたレイヤーと既存のレイヤー状態の間で一致するビットに基づいてレイヤーをオンにする。 | -| `layer_and(layer_mask)` | 指定されたレイヤーと既存のレイヤー状態の間で有効なビットに基づいてレイヤーをオンにする。 | -| `layer_xor(layer_mask)` | 指定されたレイヤーと既存のレイヤー状態の間で一致しないビットに基づいてレイヤーをオンにする。 | -| `layer_debug(layer_mask)` | デバッガのコンソールに現在のビットマスクと最も高いレイヤーを出力する。 | -| `default_layer_set(layer_mask)` | 直接デフォルトレイヤーの状態を設定する (推奨。何をしているのか分かっていない場合は使わないでください)。 | -| `default_layer_or(layer_mask)` | 指定されたレイヤーと既存のデフォルトレイヤー状態の間で一致するビットに基づいてレイヤーをオンにする。 | -| `default_layer_and(layer_mask)` | 指定されたレイヤーと既存のデフォルトレイヤー状態の間で一致する有効なビットに基づいてレイヤーをオンにする。 | -| `default_layer_xor(layer_mask)` | 指定されたレイヤーと既存のデフォルトレイヤー状態の間で一致しないビットに基づいてレイヤーをオンにする。 | -| `default_layer_debug(layer_mask)` | デバッガのコンソールに現在のビットマスクと最も高いアクティブなレイヤーを出力する。 | -| [`set_single_persistent_default_layer(layer)`](ja/ref_functions.md#setting-the-persistent-default-layer) | デフォルトレイヤーを設定し、それを永続化メモリ (EEPROM) に書き込む。 | -| [`update_tri_layer(x, y, z)`](ja/ref_functions.md#update_tri_layerx-y-z) | レイヤー `x` と `y` の両方がオンであるかを調べ、それに基づいて `z` を設定する(両方がオンの場合オン、そうでなければオフ)。 | -| [`update_tri_layer_state(state, x, y, z)`](ja/ref_functions.md#update_tri_layer_statestate-x-y-z) | `update_tri_layer(x, y, z)` と同じことをするが、`layer_state_set_*` 関数から呼ばれる。 | - - -呼び出すことができる関数に加えて、レイヤーが変更されるたびに呼び出されるコールバック関数が幾つかあります。これはレイヤー状態を関数に渡し、読み取りや変更することができます。 - -| コールバック | 説明 | -| --------------------------------------------------- | ------------------------------------------------------------------------------------------------ | -| `layer_state_set_kb(layer_state_t state)` | キーボードレベルのレイヤー関数のためのコールバック。 | -| `layer_state_set_user(layer_state_t state)` | ユーザレベルのレイヤー関数のためのコールバック。 | -| `default_layer_state_set_kb(layer_state_t state)` | キーボードレベルのデフォルトレイヤー関数のためのコールバック。キーボードの初期化時に呼ばれます。 | -| `default_layer_state_set_user(layer_state_t state)` | ユーザレベルのデフォルトレイヤー関数のためのコールバック。キーボードの初期化時に呼ばれます。 | - -?> これらのコールバックを使うための追加の情報については、[レイヤー変換コード](ja/custom_quantum_functions.md#layer-change-code)のドキュメントを調べてください。 - -次の関数やマクロを使って、特定のレイヤーの状態を確認することもできます。 - -| 関数 | 説明 | 別名 | -| ------------------------------- | ------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `layer_state_is(layer)` | 指定された `layer` がグローバルに有効かどうかを確認する。 | `IS_LAYER_ON(layer)`, `IS_LAYER_OFF(layer)` | -| `layer_state_cmp(state, layer)` | `state` を確認して指定された `layer` が有効かどうかを確認する。レイヤーのコールバックで使うことを目的とする。 | `IS_LAYER_ON_STATE(state, layer)`, `IS_LAYER_OFF_STATE(state, layer)` | diff --git a/docs/ja/feature_layouts.md b/docs/ja/feature_layouts.md deleted file mode 100644 index 9b36a1eda56..00000000000 --- a/docs/ja/feature_layouts.md +++ /dev/null @@ -1,114 +0,0 @@ -# レイアウト: 複数のキーボードで1つのキーマップを使用 - - - -`layouts/` フォルダは、様々なキーボードに適用できる色々な物理キーレイアウトを含みます。 - -``` -layouts/ -+ default/ -| + 60_ansi/ -| | + readme.md -| | + layout.json -| | + a_good_keymap/ -| | | + keymap.c -| | | + readme.md -| | | + config.h -| | | + rules.mk -| | + / -| | + ... -| + / -+ community/ -| + / -| + ... -``` - -`layouts/default/` と `layouts/community/` は、レイアウト「repositories」の2つの例です。現在のところ、`default` にはユーザの参考用に、レイアウトに関する全ての情報および、`default_` という名前の1つのデフォルトのキーマップが含まれています。`community` には全ての共有キーマップが含まれており、それらはユーザが `layouts/` にクローンするための別のリポジトリに分割することを最終的な目的としていますQMK は `layouts/` 内のすべてのフォルダを検索するため、ここに複数のリポジトリを持つことができます。 - -各レイアウトフォルダは、レイアウトの物理的な側面に基づいて、可能な限り一般的な名称で(`[a-z0-9_]`)という名前が付けられ、キーボードで定義されるレイアウトと一緒に `readme.md` を含みます。 - -```md -# 60_ansi - - LAYOUT_60_ansi -``` - -新しい名前は既存のレイアウトで設定された標準に準拠しようと努力する必要があり、必要に応じて PR/Issue で議論することができます。 - -## レイアウトのサポート - -キーボードがレイアウトをサポートするために、変数は `.h` で定義し、引数/キー (できれば物理レイアウト)の数に一致している必要があります。 - - #define LAYOUT_60_ansi KEYMAP_ANSI - -レイアウトの名前は次の正規表現に一致しなければなりません: `[a-z0-9_]+` - -フォルダ名はキーボードの `rules.mk` に追加する必要があります: - - LAYOUTS = 60_ansi - -`LAYOUTS` は任意のキーボードフォルダレべルの `rules.mk` に設定することができます: - - LAYOUTS = 60_iso - -ただし、`LAYOUT_` 変数は `.h` でも定義する必要があります。 - -## キーマップのビルド - -以下の形式でコマンドを使ってキーボードキーマップを作成できるはずです: - - make : - -### レイアウトの競合 -キーボードが複数のレイアウトオプションをサポートし、 - - LAYOUTS = ortho_4x4 ortho_4x12 - -なおかつ両方のオプションについてレイアウトが存在する場合、 -``` -layouts/ -+ community/ -| + ortho_4x4/ -| | + / -| | | + ... -| + ortho_4x12/ -| | + / -| | | + ... -| + ... -``` - -FORCE_LAYOUT 引数はどのレイアウトをビルドするかを指定するために使うことができます - - make : FORCE_LAYOUT=ortho_4x4 - make : FORCE_LAYOUT=ortho_4x12 - -## キーボードに依存しないレイアウトを作成するためのヒント - -### インクルード - -`#include "planck.h"` を使う代わりに、以下の行を使ってコンパイルされる `.h` (`.h` はここでインクルードすべきではありません)ファイルをインクルードすることができます: - - #include QMK_KEYBOARD_H - -キーボード固有のコードを保持したい場合は、これらの変数を使って `#ifdef` 文でエスケープすることができます: - -* `KEYBOARD__` - -例えば: - -```c -#ifdef KEYBOARD_planck - #ifdef KEYBOARD_planck_rev4 - planck_rev4_function(); - #endif -#endif -``` - -名前は小文字でキーボード/リビジョンのフォルダ/ファイル名と正確に一致することに注意してください。 - -### キーマップ - -同じレイアウトで分割および非分割キーボードをサポートするためには、キーマップでキーボード非依存の `LAYOUT_` マクロを使う必要があります。例えば、Let's Split および Planck が同じレイアウトを共有するには、`LAYOUT_planck_grid` や C 配列の場合の単なる `{}` の代わりに、`LAYOUT_ortho_4x12` を使う必要があります。 diff --git a/docs/ja/feature_leader_key.md b/docs/ja/feature_leader_key.md deleted file mode 100644 index b826b068eb2..00000000000 --- a/docs/ja/feature_leader_key.md +++ /dev/null @@ -1,164 +0,0 @@ -# リーダーキー: 新しい種類のモディファイア - - - -もしあなたが Vim を使ったことがある場合、リーダーキーは何であるかを知っています。そうでなければ、素晴らしい概念を発見しようとしています。:) 例えば、Alt+Shift+W を押す(3つのキーを同時に押す)代わりに、キーの_シーケンス_を押すことができたらどうでしょう?つまり、特別なモディファイア (リーダーキー)を押して、続けて W と C を押すと (単純にキーを高速に繋げます)、何かが起こります。 - -それが `KC_LEAD` の機能です。以下は例です: - -1. リーダーキーとして使いたいキーボードのキーを選択します。それにキーコード `KC_LEAD` を割り当てます。このキーはこのためだけの専用です -- 単一アクションのキーで、他の用途には使うことができません。 -2. `config.h` に `#define LEADER_TIMEOUT 300` という行を追加します。これによって `KC_LEAD` キーのタイムアウトを設定します。具体的には、`KC_LEAD` キーを押してからリーダーキーのシーケンスを完了するまで一定の時間しかありません。ここでの `300` はそれを300msに設定します。この値を増やして、シーケンスを入力する時間を増やすことができます。ただし、この時間中に押されたキーは全て途中で遮られ、送信されません。そのためこの値は小さくしておいたほうが良いかもしれません。 - * デフォルトでは、このタイムアウトは、`KC_LEAD` を押してからシーケンス全体が完了するまでに掛かる時間です。これは一部の人にとっては非常に短いかもしれません。そのため、このタイムアウトを増やしたほうが良い場合もあります。必要に応じて、`LEADER_PER_KEY_TIMING` オプションを有効にしたほうが良い場合もあります。これは各キーがタップされる度にタイムアウトまでの時間をリセットする機能です。これにより、タイムアウト時間を短くしつつも、比較的長いシーケンスを使うことができます。このオプションを有効にするには、`config.h` に `#define LEADER_PER_KEY_TIMING` を追加します。 -3. `matrix_scan_user` 関数の中で、以下のようなものを追加します: - -```c -LEADER_EXTERNS(); - -void matrix_scan_user(void) { - LEADER_DICTIONARY() { - leading = false; - leader_end(); - - SEQ_ONE_KEY(KC_F) { - // マクロ内でできること - SEND_STRING("QMK is awesome."); - } - SEQ_TWO_KEYS(KC_D, KC_D) { - SEND_STRING(SS_LCTL("a") SS_LCTL("c")); - } - SEQ_THREE_KEYS(KC_D, KC_D, KC_S) { - SEND_STRING("https://start.duckduckgo.com\n"); - } - SEQ_TWO_KEYS(KC_A, KC_S) { - register_code(KC_LGUI); - register_code(KC_S); - unregister_code(KC_S); - unregister_code(KC_LGUI); - } - } -} -``` - -ご覧のとおり、幾つかの関数があります。`SEQ_ONE_KEY` を単一キーシーケンス (リーダーの後に1つのキーのみ)に使い、より長いシーケンスについては `SEQ_TWO_KEYS`、`SEQ_THREE_KEYS` から `SEQ_FIVE_KEYS` を使うことができます。 - -これらはそれぞれ1つ以上のキーコードを引数として受け付けます。これは重要な点です: **キーボードの任意のレイヤー**のキーコードを使うことができます。当たり前ですが、リーダーマクロが発動するにはそのレイヤーがアクティブである必要があります - -## `rules.mk` にリーダーキーサポートを追加 - -リーダーキーのサポートを追加するには、単純にキーマップの `rules.mk` に1行を追加します: - -```make -LEADER_ENABLE = yes -``` - -## リーダーキーのキーごとのタイミング - -長いリーダーキー文字列のためや 200wpm のタイピングスキルが無い場合に、非常に長いタイムアウト時間に頼るのではなく、キーを押すごとに入力を完了するまでの時間を増やす機能を使用することができます。これは、リーダーキーを使ってタップダンスを再現する場合に非常に役立ちます (C, C, C のような同じキーを複数回タップする場合)。 - -これを有効にするには、以下を `config.h` に配置します: -```c -#define LEADER_PER_KEY_TIMING -``` - -この後、`LEADER_TIMEOUT` を 300ms 未満に下げることをお勧めします。 - -```c -#define LEADER_TIMEOUT 250 -``` - -これで、リーダーキーのタイムアウト時間を 1000ms に設定することなく以下のようなことが可能になると思われます。 - -```c -SEQ_THREE_KEYS(KC_C, KC_C, KC_C) { - SEND_STRING("Per key timing is great!!!"); -} -``` - -## リーダーキーの無限タイムアウト - -リーダーキーが、シーケンスの残りのキーのような快適な場所にない場合があります。リーダーキーが右上の外側のキーの1つである場合、リーダーキーに届くように手の位置を変えなければならないことがあります。 -これにより、シーケンスの大部分をすばやく入力できたとしても、シーケンス全体を時間通りに入力するのが難しい場合があります。例えば、シーケンスが `Leader + asd` の場合、手をホーム行に置けば `asd` を素早く打つのは非常に簡単です。しかし、リーダーキーに届くようにホーム行から手を移動し、戻った後、時間内にシーケンスを開始することはできません。 -この状況が手に与えるストレスを取り除くために、リーダーキーだけに無限のタイムアウトを有効にすることができます。つまり、リーダーキーを押した後、シーケンスの残りを開始するまでの時間が無限になり、シーケンスの残りを快適に入力するための最適な位置に手を置くことができます。 -この無限のタイムアウトはリーダーキーにのみ影響するため、前述の `Leader + asd` の例では、`Leader` と `a` の間に無限の時間があります。ただし、シーケンスを開始すると、(グローバルまたはキーごとに)設定したタイムアウトは正常に機能します。 -このようにして、非常に短い `LEADER_TIMEOUT` を設定できますが、それでも手を置く時間は十分にあります。 - -これを有効にするには、以下を `config.h` に配置します: -```c -#define LEADER_NO_TIMEOUT -``` - -## 厳密なキー処理 - -デフォルトでは、リーダーキー機能は、リーダーシーケンスの確認時に [`モッドタップ`](ja/mod_tap.md) および [`レイヤータップ`](ja/feature_layers.md#switching-and-toggling-layers) 機能からのキーコードをフィルターします。つまり、`LT(3, KC_A)` を使っている場合、`LT(3, KC_A)` ではなくシーケンスの `KC_A` として取り出され、新しいユーザにとってより期待される動作を提供します。 - -ほとんどの場合これで問題ありませんが、シーケンスでキーコード全体(例えば、上の例での `LT(3, KC_A)`) を指定したい場合は、`config.h` ファイルに `#define LEADER_KEY_STRICT_KEY_PROCESSING` を追加することこのような機能を有効にすることができます。これでフィルタリングが無効になり、キーコード全体を指定する必要があります。 - -## カスタマイズ - -リーダーキー機能には、リーダーキー機能の動作にいくらかのカスタマイズを追加する方法があります。リーダーキー機能のプロセスの特定の部分で呼び出すことができる2つの関数、`leader_start()` と `leader_end()` です。 - -`KC_LEAD` キーがタップされた時に `leader_start()` 関数が呼ばれ、リーダーシーケンスが完了するか、リーダータイムアウトの時間に達した時に `leader_end()` 関数が呼ばれます。 - -リーダーシーケンスにフィードバック(ビープまたは音楽を再生するなど)を追加するために、これらの関数をコード (通常 は`keymap.c`)に追加することができます。 - -```c -void leader_start(void) { - // シーケンスの開始 -} - -void leader_end(void) { - // シーケンスの終了 (成功しない/失敗を検知) -} -``` - -### 例 - -この例では、リーダーシーケンスを開始するために `KC_LEAD` を押すとマリオの "One Up" 音が再生され、正常に完了した場合は "All Star" が再生され、失敗した場合は "Rick Roll" を再生されます。 - -```c -bool did_leader_succeed; -#ifdef AUDIO_ENABLE -float leader_start[][2] = SONG(ONE_UP_SOUND ); -float leader_succeed[][2] = SONG(ALL_STAR); -float leader_fail[][2] = SONG(RICK_ROLL); -#endif -LEADER_EXTERNS(); - -void matrix_scan_user(void) { - LEADER_DICTIONARY() { - did_leader_succeed = leading = false; - - SEQ_ONE_KEY(KC_E) { - // マクロ内でできること - SEND_STRING(SS_LCTL(SS_LSFT("t"))); - did_leader_succeed = true; - } else - SEQ_TWO_KEYS(KC_E, KC_D) { - SEND_STRING(SS_LGUI("r") "cmd\n" SS_LCTL("c")); - did_leader_succeed = true; - } - leader_end(); - } -} - -void leader_start(void) { -#ifdef AUDIO_ENABLE - PLAY_SONG(leader_start); -#endif -} - -void leader_end(void) { - if (did_leader_succeed) { -#ifdef AUDIO_ENABLE - PLAY_SONG(leader_succeed); -#endif - } else { -#ifdef AUDIO_ENABLE - PLAY_SONG(leader_fail); -#endif - } -} -``` diff --git a/docs/ja/feature_led_indicators.md b/docs/ja/feature_led_indicators.md deleted file mode 100644 index 94ee0632348..00000000000 --- a/docs/ja/feature_led_indicators.md +++ /dev/null @@ -1,119 +0,0 @@ -# LED インジケータ - - - -QMK は HID 仕様で定義された5つの LED の読み取りメソッドを提供します: - -* Num Lock -* Caps Lock -* Scroll Lock -* Compose -* Kana - -ロック LED の状態を取得するには3つの方法があります: -* `config.h` で設定オプションを指定する -* `bool led_update_kb(led_t led_state)` あるいは `_user(led_t led_state)` を実装する、または -* `led_t host_keyboard_led_state()` を呼び出す - -!> `host_keyboard_led_state()` は `led_update_user()` が呼ばれる前に新しい値を既に反映している場合があります。 - -LED の状態を `uint8_t` として提供する2つの非推奨の関数があります: - -* `uint8_t led_set_user(uint8_t usb_led)` -* `uint8_t host_keyboard_leds()` - -## 設定オプション :id=configuration-options - -インジケータを設定するには、`config.h` で以下の `#define` をします: - -| 定義 | 既定値 | 説明 | -|-----------------------|------------|----------------------------------| -| `LED_NUM_LOCK_PIN` | *定義なし* | `Num Lock` LED を制御するピン | -| `LED_CAPS_LOCK_PIN` | *定義なし* | `Caps Lock` LED を制御するピン | -| `LED_SCROLL_LOCK_PIN` | *定義なし* | `Scroll Lock` LED を制御するピン | -| `LED_COMPOSE_PIN` | *定義なし* | `Compose` LED を制御するピン | -| `LED_KANA_PIN` | *定義なし* | `Kana` LED を制御するピン | -| `LED_PIN_ON_STATE` | `1` | LED が "オン" の時のインジケータピンの状態 - high の場合は`1`、low の場合は`0` | - -独自のキーボードを設計しているわけではない限り、通常は上記の設定オプションを変更する必要はありません。 - -## `led_update_*()` - -設定オプションが十分な柔軟性を提供しない場合は、提供される API フックにより LED の挙動の独自の制御ができます。これらの関数はこれら5つの LED のいずれかの状態が変化すると呼ばれます。LED の状態を構造体のパラメータとして受け取ります。 - -慣例により、`led_update_kb()` にそのコードを実行するようフックさせるために `led_update_user()` から `true` を返し、`led_update_kb()` でコードを実行したくない場合は `false` を返します。 - -以下はいくつかの例です: - -- レイヤー表示のような何かのために LED を使うために LED を上書きする - - `_kb()` 関数を実行したくないので、`false` を返します。これはレイヤーの挙動を上書きするためです。 -- LED がオンあるいはオフになった時に音楽を再生する。 - - `_kb` 関数を実行したいので、`true` を返します。これはデフォルトの LED の挙動に追加されます。 - -?> `led_set_*` 関数は `bool` の代わりに `void` を返すため、キーボードの LED 制御を上書きすることができません。従って、代わりに `led_update_*` を使うことをお勧めします。 - -### `led_update_kb()` の実装例 - -```c -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - // writePin は 1 でピンを high に、0 で low に設定します。 - // この例では、ピンは反転していて、 - // low/0 は LED がオンになり、high/1 は LED がオフになります。 - // この挙動は、LED がピンと VCC の間にあるか、ピンと GND の間にあるかどうかに依存します。 - writePin(B0, !led_state.num_lock); - writePin(B1, !led_state.caps_lock); - writePin(B2, !led_state.scroll_lock); - writePin(B3, !led_state.compose); - writePin(B4, !led_state.kana); - } - return res; -} -``` - -### `led_update_user()` の実装例 - -この不完全な例は Caps Lock がオンまたはオフになった場合に音を再生します。また LED の状態を保持する必要があるため、`true` を返します。 - -```c -#ifdef AUDIO_ENABLE - float caps_on[][2] = SONG(CAPS_LOCK_ON_SOUND); - float caps_off[][2] = SONG(CAPS_LOCK_OFF_SOUND); -#endif - -bool led_update_user(led_t led_state) { - #ifdef AUDIO_ENABLE - static uint8_t caps_state = 0; - if (caps_state != led_state.caps_lock) { - led_state.caps_lock ? PLAY_SONG(caps_on) : PLAY_SONG(caps_off); - caps_state = led_state.caps_lock; - } - #endif - return true; -} -``` - -### `led_update_*` 関数のドキュメント - -* キーボード/リビジョン: `bool led_update_kb(led_t led_state)` -* キーマップ: `bool led_update_user(led_t led_state)` - -## `host_keyboard_led_state()` - -最後に受信した LED の状態を `led_t` として取得するためにこの関数を呼びます。これは、`led_update_*` の外部から、例えば [`matrix_scan_user()`](#matrix-scanning-code) の中で LED の状態を読み取るのに便利です。 - -## 物理的な LED の状態の設定 - -一部のキーボードの実装は、物理的な LED の状態を設定するための便利なメソッドを提供しています。 - -### Ergodox キーボード - -Ergodox の実装は、個々の LED をオンあるいはオフにするために `ergodox_right_led_1`/`2`/`3_on`/`off()` と、インデックスによってそれらをオンあるいはオフにするために `ergodox_right_led_on`/`off(uint8_t led)` を提供します。 - -さらに、LED の明度を指定することができます。全ての LED に同じ明度を指定するなら `ergodox_led_all_set(uint8_t n)` を使い、個別の LED の明度を指定するなら `ergodox_right_led_1`/`2`/`3_set(uint8_t n)` を使い、LED のインデックスを指定して明度を指定するには `ergodox_right_led_set(uint8_t led, uint8_t n)` を使います。 - -Ergodox キーボードは、最低の明度として `LED_BRIGHTNESS_LO` を、最高の輝度(これはデフォルトです)として `LED_BRIGHTNESS_HI` も定義しています。 diff --git a/docs/ja/feature_led_matrix.md b/docs/ja/feature_led_matrix.md deleted file mode 100644 index 2b1979ec68b..00000000000 --- a/docs/ja/feature_led_matrix.md +++ /dev/null @@ -1,96 +0,0 @@ -# LED マトリックスライト - - - -この機能により、外部ドライバによって駆動される LED マトリックスを使うことができます。この機能は、バックライト制御と同じキーコードを使えるようにするため、バックライトシステムに接続します。 - -RGB LED を使いたい場合は、代わりに [RGB マトリックスサブシステム](ja/feature_rgb_matrix.md) を使うべきです。 - -## ドライバ設定 - -### IS31FL3731 - -I2C IS31FL3731 RGB コントローラを使ったアドレス指定可能な LED マトリックスライトのための基本的なサポートがあります:有効にするには、`rules.mk` に以下を追加します: - - LED_MATRIX_ENABLE = yes - LED_MATRIX_DRIVER = IS31FL3731 - -1から4個の IS31FL3731 IC を使うことができます。キーボード上に存在しない IC の `LED_DRIVER_ADDR_` 定義を指定しないでください。`config.h` に以下の項目を定義することができます: - -| 変数 | 説明 | デフォルト | -|----------|-------------|---------| -| `ISSI_TIMEOUT` | (オプション) i2c メッセージを待つ時間 | 100 | -| `ISSI_PERSISTENCE` | (オプション) 失敗したメッセージをこの回数再試行する | 0 | -| `LED_DRIVER_COUNT` | (必須) LED ドライバ IC の数 | | -| `DRIVER_LED_TOTAL` | (必須) 全てのドライバの LED ライトの数 | | -| `LED_DRIVER_ADDR_1` | (必須) 最初の LED ドライバのアドレス | | -| `LED_DRIVER_ADDR_2` | (オプション) 2番目の LED ドライバのアドレス | | -| `LED_DRIVER_ADDR_3` | (オプション) 3番目の LED ドライバのアドレス | | -| `LED_DRIVER_ADDR_4` | (オプション) 4番目の LED ドライバのアドレス | | - -2つのドライバを使う例です。 - - // これは7ビットのアドレスで、左シフトされます - // ビット0に0を設定すると書き込み、1を設定すると読み込みです (I2C プロトコルに従う) - // アドレスは配線によって変わります: - // 0b1110100 AD <-> GND - // 0b1110111 AD <-> VCC - // 0b1110101 AD <-> SCL - // 0b1110110 AD <-> SDA - #define LED_DRIVER_ADDR_1 0b1110100 - #define LED_DRIVER_ADDR_2 0b1110110 - - #define LED_DRIVER_COUNT 2 - #define LED_DRIVER_1_LED_COUNT 25 - #define LED_DRIVER_2_LED_COUNT 24 - #define DRIVER_LED_TOTAL LED_DRIVER_1_LED_TOTAL + LED_DRIVER_2_LED_TOTAL - -現在、2つのドライバのみがサポートされますが、4つの組み合わせ全てをサポートすることは簡単です。 - -`.c` に全ての LED を列挙する配列を定義します: - - const is31_led PROGMEM g_is31_leds[DRIVER_LED_TOTAL] = { - /* これらの位置については IS31 マニュアルを参照してください - * driver - * | LED address - * | | */ - {0, C3_3}, - .... - } - -ここで、`Cx_y` は[データシート](https://www.issi.com/WW/pdf/31FL3731.pdf)およびヘッダファイル `drivers/led/issi/is31fl3731-simple.h` で定義されるマトリックス内の LED の位置です。`driver` は `config.h` で定義したドライバのインデックス(`0`、`1`、`2`、`3`のいずれか)です。 - -## キーコード - -現在のところ、全ての LED マトリックスのキーコードは[バックライトシステム](ja/feature_backlight.md)と共有されます。 - -## LED マトリックス効果 - -現在のところ、LED マトリックス効果は作成されていません。 - -## カスタムレイヤー効果 - -カスタムレイヤー効果は `.c` 内で以下を定義することで行うことができます: - - void led_matrix_indicators_kb(void) { - led_matrix_set_value(index, value); - } - -同様の関数がキーマップ内で `led_matrix_indicators_user` として動作します。 - -## サスペンド状態 - -サスペンド機能を使うには、以下を `.c` に追加します: - - void suspend_power_down_kb(void) - { - led_matrix_set_suspend_state(true); - } - - void suspend_wakeup_init_kb(void) - { - led_matrix_set_suspend_state(false); - } diff --git a/docs/ja/feature_macros.md b/docs/ja/feature_macros.md deleted file mode 100644 index 6371f0c20a1..00000000000 --- a/docs/ja/feature_macros.md +++ /dev/null @@ -1,303 +0,0 @@ -# マクロ - - - -マクロにより、1つのキーを押すだけで複数のキーストロークを送信することができます。QMK にはマクロを定義し使う方法が幾つかあります。これらはなんでもすることができます: よく使うフレーズの入力、コピーペースト、反復的なゲームの動き、あるいはコードを書くことさえ手助けします。 - -!> **セキュリティの注意**: マクロを使って、パスワード、クレジットカード番号、その他の機密情報のいずれも送信することが可能ですが、それは非常に悪い考えです。あなたのキーボードを手に入れた人は誰でもテキストエディタを開いてその情報にアクセスすることができます。 - -## `SEND_STRING()` と `process_record_user` - -単語またはフレーズを入力するキーが欲しい時があります。最も一般的な状況のために `SEND_STRING()` を提供しています。これは文字列(つまり、文字のシーケンス)を入力します。簡単にキーコードに変換することができる全ての ASCII 文字がサポートされています (例えば、`qmk 123\n\t`)。 - -以下は2キーのキーボードのための `keymap.c` の例です: - -```c -enum custom_keycodes { - QMKBEST = SAFE_RANGE, -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // キーコード QMKBEST が押された時 - SEND_STRING("QMK is the best thing ever!"); - } else { - // キーコード QMKBEST が放された時 - } - break; - } - return true; -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = { - {QMKBEST, KC_ESC}, - // ... - }, -}; -``` - -ここで起きることは以下の通りです: -最初に他のキーコードで使用されていない範囲で新しいカスタムキーコードを定義します。 -次に、`process_record_user` 関数を使います。これはキーが押されるか放されるたびに呼び出され、カスタムキーコードがアクティブかどうかを確認します。 -アクティブな場合、`SEND_STRING` マクロ (これは C プロセッサのマクロで、QMK のマクロと混同しないでください)を介して文字列 `"QMK is the best thing ever!"` をコンピュータに送信します。 -呼び出し元に、処理したばかりのキー押下を通常通り(機能を置き換えたり変更したりしなかったので)処理し続けるよう指示するため、`true` を返します。 -最後に、最初のボタンがマクロをアクティブにし、2番目のボタンが単なるエスケープボタンになるようにキーマップを定義します。 - -複数のマクロを追加することもできます。 -以下のように、別のキーコードを追加し、switch 文に別の case ラベルを追加することで、それを行うことができます: - -```c -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL, - MY_OTHER_MACRO, -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // キーコード QMKBEST が押された時 - SEND_STRING("QMK is the best thing ever!"); - } else { - // キーコード QMKBEST が放された時 - } - break; - - case QMKURL: - if (record->event.pressed) { - // キーコード QMKURL が押された場合 - SEND_STRING("https://qmk.fm/\n"); - } else { - // キーコード QMKURL が放された場合 - } - break; - - case MY_OTHER_MACRO: - if (record->event.pressed) { - SEND_STRING(SS_LCTL("ac")); // 全てを選択しコピーします - } - break; - } - return true; -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = { - {MY_CUSTOM_MACRO, MY_OTHER_MACRO}, - // ... - }, -}; -``` - -### 高度なマクロ - -`process_record_user()` 関数のほかに、`post_process_record_user()` 関数があります。これは `process_record` の後に実行され、キーストロークが送信された後の処理に使用できます。これは例えば、通常のキーの前に押され、通常のキーの後で放されるキーがほしい場合に便利です。 - -この例では、通常のキー入力を変更して、キーストロークが通常送信される前に `F22` が押されるようにし、キーが放された__後にのみ__ `F22` キーを放します。 - -```c -static uint8_t f22_tracker; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case KC_A ... KC_F21: // F22 をスキップする方法に注意してください - case KC_F23 ... KC_EXSEL: //exsel は修飾キーの直前のキーです - if (record->event.pressed) { - register_code(KC_F22); //これは F22 を押したことを送信することを意味します - f22_tracker++; - register_code(keycode); - return false; - } - break; - } - return true; -} - -void post_process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case KC_A ... KC_F21: // F22 をスキップする方法に注意してください - case KC_F23 ... KC_EXSEL: //exsel は修飾キーの直前のキーです - if (!record->event.pressed) { - f22_tracker--; - if (!f22_tracker) { - unregister_code(KC_F22); //これは F22 を放したことを送信することを意味します - } - } - break; - } -} -``` - - -### タップ、ダウン、アップ - -`Ctrl` あるいは `Home` など、ソースコードに文字列として表記できないキーをマクロで使うこともできます。 -以下のようにラップすることで任意のコードを送信することができます: - -* `SS_TAP()` キーを押して放します。 -* `SS_DOWN()` キーを押します (ただし、放しません)。 -* `SS_UP()` キーを放します。 - -例えば: - - SEND_STRING(SS_TAP(X_HOME)); - -`KC_HOME` をタップします - プリフィックスが `X_` で `KC_` ではないことに注意してください。以下のように、他の文字列と組み合わせることもできます: - - SEND_STRING("VE"SS_TAP(X_HOME)"LO"); - -これは "VE" に続けて `KC_HOME` をタップ、そして "LO" (新しい行の場合は "LOVE" と綴る)を送信します。 - -文字列に遅延を追加することもできます: - -* `SS_DELAY(msecs)` は指定されたミリ秒だけ遅らせます。 - -例えば: - - SEND_STRING("VE" SS_DELAY(1000) SS_TAP(X_HOME) "LO"); - -これは "VE" 、1秒の遅延、`KC_HOME` をタップ、"LO" (新しい行の場合は "LOVE" と綴るが、中間に遅延がある) を送信します。 - -使用できるモッドショートカットもいくつかあります: - -* `SS_LCTL(文字列)` -* `SS_LSFT(文字列)` -* `SS_LALT(文字列)`、`SS_LOPT(文字列)` -* `SS_LGUI(文字列)`、`SS_LCMD(文字列)`、`SS_LWIN(文字列)` -* `SS_RCTL(文字列)` -* `SS_RSFT(文字列)` -* `SS_RALT(文字列)`、`SS_ROPT(文字列)`、`SS_ALGR(文字列)` -* `SS_RGUI(文字列)`、`SS_RCMD(文字列)`、`SS_RWIN(文字列)` - -これらはそれぞれの修飾キーを押し、指定された文字列を送信してから、修飾キーを解放します。 -それらは以下のように使うことができます: - - SEND_STRING(SS_LCTL("a")); - -これは、左 Control +`a` (左 Control をダウンし、`a`、左 Control をアップ)を送信します - それらは文字列(例えば `"k"`)であり、`X_K` キーコードでは無いことに注意してください。 - -### 代替キーマップ - -デフォルトでは、QWERTY レイアウトの US キーマップを想定しています; それを変更したい場合(例えば OS がソフトウェア Colemak を使う場合)、キーマップのどこかに以下を含めます: - -```c -#include "sendstring_colemak.h" -``` - -### メモリ内の文字列 - -何らかの理由で文字列を操作していて、(リテラル、文字列定数の代わりに)生成したばかりのものを出力する必要がある場合は、以下のように `send_string()` を使うことができます: - -```c -char my_str[4] = "ok."; -send_string(my_str); -``` - -上で定義したショートカットは `send_string()` では動作しないですが、必要に応じて別の行に分けることができます: - -```c -char my_str[4] = "ok."; -SEND_STRING("I said: "); -send_string(my_str); -SEND_STRING(".."SS_TAP(X_END)); -``` - - -## 高度なマクロ関数 :id=advanced-macro-functions - -マクロの生成に役立つ関数が幾つかあります。マクロの中にかなり高度なコードを書くことができますが、機能が複雑になりすぎる場合は、代わりにカスタムキーコードを定義することをお勧めします。マクロはシンプルにしなければなりません。 - -?> 追加の機能として、[便利な関数](ja/ref_functions.md) の中で説明される関数を使うこともできます。例えば `reset_keyboard()` によりマクロの一部としてキーボードをリセットすることができます。 - -### `record->event.pressed` - -これでスイッチが押されているか放されているかどうかをテストすることができます。以下が例です。 - -```c - if (record->event.pressed) { - // キーダウン時 - } else { - // キーアップ時 - } -``` - -### `register_code();` - -これはコンピュータに `` キーダウンイベントを送信します。例として `KC_ESC`、`KC_C`、`KC_4` や、`KC_LSFT` と `KC_LGUI` のような修飾キーなどもあります。 - -### `unregister_code();` - -`register_code` 関数と対応して、これは `` キーアップイベントをコンピュータに送信します。これを使わない場合、キーは送信されるまで押し続けられます。 - -### `tap_code();` - -これは `register_code()` を送信し、その後 `unregister_code()` を送信します。押下とリリースイベントの両方を送信する場合に便利です (押し続けるのではなく、キーを"タップ"する)。 - -タップの登録(解除)に問題がある場合、`config.h` ファイルで `#define TAP_CODE_DELAY 100` を設定することで、登録イベントと解除イベントの間に遅延を追加することができます。値はミリ秒です。 - -### `register_code16();`、`unregister_code16();`、`tap_code16();` - -これらの関数は対応する通常の関数と同様に機能しますが、修飾キーで修飾されたキーコードを使うことができます (Shift、Alt、Control、GUI を適用)。 - -例えば、修飾キーを押して(`register_code()`して)、キーコードを押す(`register_code()`する)代わりに、`register_code16(S(KC_5));` を使うことができます。 - -### `clear_keyboard();` - -これは現在押されている全ての修飾キーとキーをクリアします。 - -### `clear_mods();` - -これは現在押されている全ての修飾キーをクリアします。 - -### `clear_keyboard_but_mods();` - -これは現在押されている修飾キー以外の全てのキーをクリアします。 - -## 高度な例: - -### スーパー ALT↯TAB - -このマクロは `KC_LALT` を登録し、`KC_TAB` をタップして、1000ms 待ちます。キーが再度タップされると、別の `KC_TAB` が送信されます; タップが無い場合、`KC_LALT` が登録解除され、ウィンドウを切り替えることができます。 - -```c -bool is_alt_tab_active = false; // keymap.c の先頭付近にこれを追加します -uint16_t alt_tab_timer = 0; // すぐにそれらを使います - -enum custom_keycodes { // 素晴らしいキーコードを用意してください - ALT_TAB = SAFE_RANGE, -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { // これはキーコードを利用したつまらない作業のほとんどを行います。 - case ALT_TAB: - if (record->event.pressed) { - if (!is_alt_tab_active) { - is_alt_tab_active = true; - register_code(KC_LALT); - } - alt_tab_timer = timer_read(); - register_code(KC_TAB); - } else { - unregister_code(KC_TAB); - } - break; - } - return true; -} - -void matrix_scan_user(void) { // とても重要なタイマー - if (is_alt_tab_active) { - if (timer_elapsed(alt_tab_timer) > 1000) { - unregister_code(KC_LALT); - is_alt_tab_active = false; - } - } -} -``` diff --git a/docs/ja/feature_mouse_keys.md b/docs/ja/feature_mouse_keys.md deleted file mode 100644 index e4fa9dfb456..00000000000 --- a/docs/ja/feature_mouse_keys.md +++ /dev/null @@ -1,147 +0,0 @@ -# マウスキー - - - -マウスキーは、キーボードを使ってマウスをエミュレートできる機能です。様々な速度でポインタを移動し、5つのボタンを押し、8方向にスクロールすることができます。 - -## キーボードにマウスキーを追加 - -マウスキーを使うためには、少なくともマウスキーサポートを有効にし、マウスアクションをキーボードのキーにマップする必要があります。 - -### マウスキーを有効にする - -マウスキーを有効にするには、キーマップの `rules.mk` に以下の行を追加します: - -```c -MOUSEKEY_ENABLE = yes -``` - -### マウスアクションのマッピング - -キーマップでキー押下をマウスアクションにマップするために、以下のキーコードを使うことができます: - -| キー | エイリアス | 説明 | -|----------------|---------|-----------------| -| `KC_MS_UP` | `KC_MS_U` | カーソルを上に移動 | -| `KC_MS_DOWN` | `KC_MS_D` | カーソルを下に移動 | -| `KC_MS_LEFT` | `KC_MS_L` | カーソルを左に移動 | -| `KC_MS_RIGHT` | `KC_MS_R` | カーソルを右に移動 | -| `KC_MS_BTN1` | `KC_BTN1` | ボタン1を押す | -| `KC_MS_BTN2` | `KC_BTN2` | ボタン2を押す | -| `KC_MS_BTN3` | `KC_BTN3` | ボタン3を押す | -| `KC_MS_BTN4` | `KC_BTN4` | ボタン4を押す | -| `KC_MS_BTN5` | `KC_BTN5` | ボタン5を押す | -| `KC_MS_BTN6` | `KC_BTN6` | ボタン6を押す | -| `KC_MS_BTN7` | `KC_BTN7` | ボタン7を押す | -| `KC_MS_BTN8` | `KC_BTN8` | ボタン8を押す | -| `KC_MS_WH_UP` | `KC_WH_U` | ホイールを向こう側に回転 | -| `KC_MS_WH_DOWN` | `KC_WH_D` | ホイールを手前側に回転 | -| `KC_MS_WH_LEFT` | `KC_WH_L` | ホイールを左に倒す | -| `KC_MS_WH_RIGHT` | `KC_WH_R` | ホイールを右に倒す | -| `KC_MS_ACCEL0` | `KC_ACL0` | 速度を0に設定 | -| `KC_MS_ACCEL1` | `KC_ACL1` | 速度を1に設定 | -| `KC_MS_ACCEL2` | `KC_ACL2` | 速度を2に設定 | - -## マウスキーの設定 - -マウスキーはカーソルを移動するための3つの異なるモードをサポートします: - -* **加速 (デフォルト):** 移動キーを押したままにすると、カーソルが最大速度に達するまでカーソルを加速します。 -* **定速:** 移動キーを押したままにすると、カーソルを一定の速度で移動します。 -* **混合:** 移動キーを押したままにすると、カーソルが最大速度に達するまでカーソルを加速し、加速キーと移動キーを同時に押すとカーソルは一定の速度で移動します。 - -同じ原則がスクロールにも適用されます。 - -時間、間隔、遅延の設定オプションは、ミリ秒で指定されます。スクロール速度はデフォルトスクロールステップの倍数として渡されます。例えば、スクロール速度8は、各スクロールアクションがオペレーティングシステムまたはアプリケーションで定義されるデフォルトのスクロールステップの8倍の距離進むことを意味します。 - -### 加速モード - -これはデフォルトのモードです。キーマップの `config.h` ファイルの以下の設定を使ってカーソルとスクロールの加速を調整することができます: - -| 定義 | デフォルト | 説明 | -|----------------------------|-------|---------------------------------------------------------| -| `MOUSEKEY_DELAY` | 300 | 移動キーを押してからカーソルが移動するまでの遅延 | -| `MOUSEKEY_INTERVAL` | 50 | カーソル移動間の時間 | -| `MOUSEKEY_MAX_SPEED` | 10 | 加速が停止する最大のカーソル速度 | -| `MOUSEKEY_TIME_TO_MAX` | 20 | 最大カーソル速度に達するまでの時間 | -| `MOUSEKEY_WHEEL_DELAY` | 300 | ホイールキーを押してからホイールが動くまでの遅延 | -| `MOUSEKEY_WHEEL_INTERVAL` | 100 | ホイールの動きの間の時間 | -| `MOUSEKEY_WHEEL_MAX_SPEED` | 8 | スクロールアクションごとのスクロールステップの最大数 | -| `MOUSEKEY_WHEEL_TIME_TO_MAX` | 40 | 最大スクロール速度に達するまでの時間 | - -ヒント: - -* `MOUSEKEY_DELAY` の設定が低すぎるとカーソルが応答しなくなります。設定が高すぎると小さな動きが難しくなります。 -* カーソルの動きをスムーズにするには、`MOUSEKEY_INTERVAL` の値を低くします。ディスプレイのリフレッシュレートが60Hzの場合、`16` (1/60) に設定することができます。これによりカーソルの速度が大幅に向上するため、`MOUSEKEY_MAX_SPEED` を下げた方が良いかもしれません。 -* `MOUSEKEY_TIME_TO_MAX` または `MOUSEKEY_WHEEL_TIME_TO_MAX` を `0` に設定すると、それぞれカーソルの速度またはスクロールの加速が無効になります。この方法では、一方を加速しながら他方を一定にすることができますが、これは定速モードでは不可能です。 -* `MOUSEKEY_WHEEL_INTERVAL` の設定が低すぎるとスクロールがとても速くなります。設定が高すぎるとホイールキーを押したままにした時にスクロールがとても遅くなります - -カーソルの加速は、X Window System MouseKeysAccel 機能と同じアルゴリズムを使います。詳細については [Wikipedia](https://en.wikipedia.org/wiki/Mouse_keys) をご覧ください。 - -### 定速モード - -このモードでは、カーソルおよびマウスホイールの両方について複数の異なる速度を定義することができます。加速はありません。`KC_ACL0`、`KC_ACL1` および `KC_ACL2` は、カーソルとスクロールの速度をそれぞれの設定に変更します。 - -速度の選択は、一時的とタップ選択のどちらかを選べます: - -* **一時的:** 選択された速度は、それぞれのキーを押している間のみアクティブになります。キーを放すと、マウスキーは変更される前の速度に戻ります。 -* **タップ選択:** それぞれのキーを押すと選択された速度がアクティブになり、キーを放した後もアクティブのままになります。デフォルトの速度は `KC_ACL1` です。未変更の速度はありません。 - -最も遅い速度から最も速い速度までのデフォルトの速度は以下の通りです: - -* **一時的:** `KC_ACL0` < `KC_ACL1` < *変更無し* < `KC_ACL2` -* **タップ選択:** `KC_ACL0` < `KC_ACL1` < `KC_ACL2` - -定速モードを使うには、少なくともキーマップの keymaps ディレクトリの `config.h` ファイルに `MK_3_SPEED` を定義する必要があります。 - -```c -#define MK_3_SPEED -``` - -一時的モードを有効にするには、`MK_MOMENTARY_ACCEL` も定義します: - -```c -#define MK_MOMENTARY_ACCEL -``` - -カーソル移動あるいはスクロールを調整する場合は、以下の設定を使います: - -| 定義 | デフォルト | 説明 | -|---------------------|-------------|-------------------------------------------| -| `MK_3_SPEED` | *定義なし* | 定速カーソルを有効にする | -| `MK_MOMENTARY_ACCEL` | *定義なし* | 一時的モードを有効にする | -| `MK_C_OFFSET_UNMOD` | 16 | 移動ごとのカーソルオフセット (変更無し) | -| `MK_C_INTERVAL_UNMOD` | 16 | カーソルの移動間の時間 (変更無し) | -| `MK_C_OFFSET_0` | 1 | 移動ごとのカーソルオフセット (`KC_ACL0`) | -| `MK_C_INTERVAL_0` | 32 | カーソル移動間の時間 (`KC_ACL0`) | -| `MK_C_OFFSET_1` | 4 | 移動ごとのカーソルオフセット (`KC_ACL1`) | -| `MK_C_INTERVAL_1` | 16 | カーソル移動間の時間 (`KC_ACL1`) | -| `MK_C_OFFSET_2` | 32 | 移動ごとのカーソルオフセット (`KC_ACL2`) | -| `MK_C_INTERVAL_2` | 16 | カーソル移動間の時間 (`KC_ACL2`) | -| `MK_W_OFFSET_UNMOD` | 1 | スクロールアクションごとのスクロールステップ (変更無し) | -| `MK_W_INTERVAL_UNMOD` | 40 | スクロールステップ間の時間 (変更無し) | -| `MK_W_OFFSET_0` | 1 | スクロールアクションごとのスクロールステップ (`KC_ACL0`) | -| `MK_W_INTERVAL_0` | 360 | スクロールステップ間の時間 (`KC_ACL0`) | -| `MK_W_OFFSET_1` | 1 | スクロールアクションごとのスクロールステップ (`KC_ACL1`) | -| `MK_W_INTERVAL_1` | 120 | スクロールステップ間の時間 (`KC_ACL1`) | -| `MK_W_OFFSET_2` | 1 | スクロールアクションごとのスクロールステップ (`KC_ACL2`) | -| `MK_W_INTERVAL_2` | 20 | スクロールステップ間の時間 (`KC_ACL2`) | - -### 混合モード - -このモードは **加速** モードのように機能しますが、`KC_ACL0`、`KC_ACL1`、`KC_ACL2` を押したままにすることで -一時的(押している間)にカーソルとスクロール速度を定速に設定できます。 -加速キーが押されていない場合、このモードは **加速** モードと同じで、関連する全ての設定を使って変更できます。 - -* **KC_ACL0:** この加速はカーソルをできるだけ遅い速度に設定します。これはカーソルを非常に小さく詳細に移動する場合に便利です。 -* **KC_ACL1:** この加速はカーソルを最大(ユーザ定義)速度の半分に設定します。 -* **KC_ACL2:** この加速はカーソルを最大(コンピュータ定義)速度に設定します。これは、正確性を多少犠牲にしてカーソルを大きく移動する場合に便利です。 - -混合モードを使うには、キーマップの `config.h` ファイルに少なくとも `MK_COMBINED` を定義しなければなりません: - -```c -#define MK_COMBINED -``` diff --git a/docs/ja/feature_pointing_device.md b/docs/ja/feature_pointing_device.md deleted file mode 100644 index 0f472f0ffe7..00000000000 --- a/docs/ja/feature_pointing_device.md +++ /dev/null @@ -1,58 +0,0 @@ -# ポインティングデバイス :id=pointing-device - - - -ポインティングデバイスは汎用的な機能の総称です: システムポインタを移動します。マウスキーのような他のオプションも確かにありますが、これは簡単に変更可能で軽量であることを目指しています。機能を制御するためにカスタムキーを実装したり、他の周辺機器から情報を収集してここに直接挿入したりできます - QMK に処理を任せてください。 - -ポインティングデバイスを有効にするには、rules.mk の以下の行のコメントを解除します: - -```makefile -POINTING_DEVICE_ENABLE = yes -``` - -マウスレポートを操作するために、以下の関数を使うことができます: - -* `pointing_device_get_report()` - ホストコンピュータに送信された情報を表す現在の report_mouse_t を返します。 -* `pointing_device_set_report(report_mouse_t mouse_report)` - ホストコンピュータに送信される report_mouse_t を上書き保存します。 - -report_mouse_t (ここでは "mouseReport") が以下のプロパティを持つことを覚えておいてください: - -* `mouseReport.x` - これは、x軸の動き(+ 右へ、- 左へ)を表す -127 から 127 (128ではなく、USB HID 仕様で定義されています)の符号付き整数です。 -* `mouseReport.y` - これは、y軸の動き(+ 上へ、- 下へ)を表す -127 から 127 (128ではなく、USB HID 仕様で定義されています)の符号付き整数です。 -* `mouseReport.v` - これは、垂直スクロール(+ 上へ、- 下へ)を表す -127 から 127 (128ではなく、USB HID 仕様で定義されています)の符号付き整数です。 -* `mouseReport.h` - これは、水平スクロール(+ 右へ、- 左へ)を表す -127 から 127 (128ではなく、USB HID 仕様で定義されています)の符号付き整数です。 -* `mouseReport.buttons` - これは uint8_t で、8ビット全てを使っています。これらのビットはマウスボタンの状態を表します - ビット 0 はマウスボタン 1、ビット 7 はマウスボタン 8 です。 - -マウスレポートに必要な変更を行ったら、それを送信する必要があります: - -* `pointing_device_send()` - マウスレポートをホストに送信し、レポートをゼロにします。 - -マウスレポートが送信されると、x、y、v、h のいずれの値も 0 に設定されます (これは `pointing_device_send()` で行われます。この挙動を回避するためにオーバーライドすることができます)。このように、ボタンの状態は持続しますが、動きは1度だけ起こります。さらにカスタマイズするために、`pointing_device_init` と `pointing_device_task` のどちらもオーバーライドすることができます。 - -さらに、デフォルトでは、`pointing_device_send()` はレポートが実際に変更された場合のみレポートを送信します。これにより、マウスレポートが継続的に送信されてホストシステムが起動されたままになることを防ぎます。この動作は、独自の `pointing_device_send()` 関数を作成することで変更できます。 - -また、`has_mouse_report_changed(new_report, old_report)` 関数を使って、レポートが変更されたかどうかを確認できます。(訳注:独自の `pointing_device_send()` 関数を作成する場合でも、その中で `has_mouse_report_changed(new_report, old_report)` 関数でチェックして、デフォルトの `pointing_device_send()` と類似の無駄なレポートの抑制をして、ホストシステムがスリープ状態に入れる余地を残すようにしておくのが良いでしょう。) - -以下の例では、カスタムキーを使ってマウスをクリックし垂直および水平方向に127単位スクロールし、リリースされた時にそれを全て元に戻します - なぜならこれは完全に便利な機能だからです。いいですか、以下はひとつの例です: - -```c -case MS_SPECIAL: - report_mouse_t currentReport = pointing_device_get_report(); - if (record->event.pressed) { - currentReport.v = 127; - currentReport.h = 127; - currentReport.buttons |= MOUSE_BTN1; // this is defined in report.h - } else { - currentReport.v = -127; - currentReport.h = -127; - currentReport.buttons &= ~MOUSE_BTN1; - } - pointing_device_set_report(currentReport); - pointing_device_send(); - break; -``` - -マウスレポートは送信されるたびに 0 (ボタンを除く)に設定されることを思い出してください。そのため、スクロールはそれぞれの場合に1度だけ発生します。 diff --git a/docs/ja/feature_ps2_mouse.md b/docs/ja/feature_ps2_mouse.md deleted file mode 100644 index 2798f612830..00000000000 --- a/docs/ja/feature_ps2_mouse.md +++ /dev/null @@ -1,288 +0,0 @@ -# PS/2 マウスサポート :id=ps2-mouse-support - - - -PS/2 マウス (例えばタッチパッドあるいはトラックポイント)を複合デバイスとしてキーボードに接続することができます。 - -トラックポイントを接続するには、トラックポイントモジュールを入手し (つまり、Thinkpad キーボードから部品を取って)、モジュールの各ピンの機能を特定し、コントローラとトラックポイントモジュールの間に必要な回路を作成する必要があります。詳細については、Deskthority Wiki の[トラックポイントハードウェア](https://deskthority.net/wiki/TrackPoint_Hardware)ページを参照してください。 - -PS/2 デバイスの接続は、USART(最善)、割り込み(次善)、 または busywait(非推奨)の3つのやり方が有ります。 - -## トラックポイントとコントローラ間の回路 :id=the-circuitry-between-trackpoint-and-controller - -動作させるには、DATA と CLK のふたつのラインを 4.7k の抵抗で 5V にプルアップしてやる必要があります。 - -``` - DATA ----------+--------- PIN - | - 4.7K - | -MODULE 5+ --------+--+--------- PWR CONTROLLER - | - 4.7K - | - CLK ------+------------ PIN -``` - - -## Busywait バージョン :id=busywait-version - -注意: これは非推奨です。ギクシャクした動きや、未送信の入力が発生するかもしれません。可能であれば、割り込みまたは USART バージョンを使ってください。 - -rules.mk で: - -```makefile -PS2_MOUSE_ENABLE = yes -PS2_ENABLE = yes -PS2_DRIVER = busywait -``` - -キーボードの config.h で: - -```c -#ifdef PS2_DRIVER_BUSYWAIT -# define PS2_CLOCK_PIN D1 -# define PS2_DATA_PIN D2 -#endif -``` - -## 割り込みバージョン :id=interrupt-version - -以下の例はクロックのために D2 を、データのために D5 を使います。クロックには任意の INT あるいは PCINT ピンを、データには任意のピンを使うことができます。 - -rules.mk で: - -```makefile -PS2_MOUSE_ENABLE = yes -PS2_ENABLE = yes -PS2_DRIVER = interrupt -``` - -キーボードの config.h で: - -```c -#ifdef PS2_DRIVER_INTERRUPT -#define PS2_CLOCK_PIN D2 -#define PS2_DATA_PIN D5 - -#define PS2_INT_INIT() do { \ - EICRA |= ((1< - -Raw HID は、HID インタフェースを介して QMK とホストコンピュータ間の双方向通信を可能にします。これには、キーマップをその場で切り替えたり、RGB LED の色とモードを変更したりなど、多くの潜在的な使用方法があります。 - -キーボードで raw HID を機能させるには、2つの主要なコンポーネントがあります。 - -## キーボードファームウェア - -ファームウェアの実装はとても簡単です。 -`rules.mk` に以下を追加します: - -```make -RAW_ENABLE = yes -``` - -`keymap.c` に `"raw_hid.h"` を include し、以下を実装します: - -```C -void raw_hid_receive(uint8_t *data, uint8_t length) { - // ここにコードを書きます。data はホストから受信したパケットです。 -} -``` - -`"raw_hid.h"` ヘッダは、キーボードからホストにパケットを送信できる `void raw_hid_send(uint8_t *data, uint8_t length);` も宣言します。例として、全てのデータをホストに返すことで、ホストアプリケーションを構築する時のデバッグに使うこともできます。 - -```C -void raw_hid_receive(uint8_t *data, uint8_t length) { - raw_hid_send(data, length); -} -``` - -これら2つの関数は、ホストとの間で長さ `RAW_EPSIZE` バイトのパケットを送受信します (LUFA/ChibiOS/V-USB では 32、ATSAM では 64)。 - -ホスト側での作業を進める前に、raw 対応のファームウェアを書き込むようにしてください。 - -## ホスト (Windows/macOS/Linux) - -これは幾つかの掘り下げが必要になるため、より複雑な部分です。 - -ホストコンピュータを raw HID を使ってキーボードに接続するには、キーボードについての4つの情報が必要です。 - -1. Vendor ID -2. Product ID -3. Usage Page -4. Usage - -前半の2つは、キーボードのメインディレクトリにあるキーボードの `config.h` で、`VENDOR_ID` と `PRODUCT_ID` で簡単に見つかります。 - -後半の2つは、キーボードのメインディレクトリにあるキーボードの `config.h` で、値を再定義することで上書きすることができます: `#define RAW_USAGE_PAGE 0xFF60` と `#define RAW_USAGE_ID 0x61`。 - -デフォルトでは、**Usage Page** は `0xFF60` で、**Usage** は `0x61` です。 - -### ホストの構築 - -独自に作成したくない場合は、利用可能な HID 実装ライブラリがある任意の言語を使ってホストを構築することができます。人気のある言語でよく使われるライブラリは以下の通りです: - -* Node: [node-hid](https://github.com/node-hid/node-hid)。 -* C: [hidapi](https://github.com/libusb/hidapi)。 -* Java: [purejavahidapi](https://github.com/nyholku/purejavahidapi) と [hid4java](https://github.com/gary-rowe/hid4java)。 -* Python: [pyhidapi](https://pypi.org/project/hid/)。 - -これは完全なクロスプラットフォームのリストではありませんが、最初に始めるのに十分なはずです。raw HID を使うための特別な要件は無いため、どの HID ライブラリでも動作するはずです。 - -これで、キーボードへの HID インタフェースを開くために必要な4つの情報全てが揃いました。必要なのは、ライブラリの利用可能な関数を使って ID パラメータを使ってデバイスを開くことだけです。 - -Vendor ID と Product ID はデバイスを開くために実際には必要ないことに注意してください。それらは接続した多くの HID デバイスから特定のデバイスをフィルターするためだけに使われます。多くのライブラリでは、代わりに製品名と製造元名を使ってデバイスを開くオプションがあります。`node-hid` が代表的な例です。これは USB ハブが組み込まれているデバイスや、同じ製品名または同じ製造元の複数のインタフェースがある特別な HID インタフェースで問題になります。Product ID と Vendor ID を合わせると単一のインタフェースの固有名を作成できるため、この問題を防げます。したがって、ライブラリで必要が無い場合でも、この問題を防ぐためにそれらを使うことをお勧めします。 -ただし、Vendor ID や Product ID と異なり、Usage Page と Usage は通信を成功させるために必要です。 - -言うまでもなく、使っているライブラリに関係なく、終了したらインタフェースを必ず閉じる必要があります。オペレーティングシステムと特定の環境によっては、明示的に接続が閉じられていない場合、後で他のクライアントまたは同じクライアントの他のインスタンスに接続しなおした時に問題が発生する可能性があります。 diff --git a/docs/ja/feature_split_keyboard.md b/docs/ja/feature_split_keyboard.md deleted file mode 100644 index c84b782d876..00000000000 --- a/docs/ja/feature_split_keyboard.md +++ /dev/null @@ -1,251 +0,0 @@ -# 分割キーボード - - - -QMK ファームウェアリポジトリの多くのキーボードは、"分割"キーボードです。それらは2つのコントローラを使います — 1つは USB に接続し、もう1つは TRRS または同様のケーブルを介してシリアルまたは I2C 接続で接続します。 - -分割キーボードには多くの利点がありますが、有効にするには追加の作業が必要です。 - -QMK ファームウェアには、任意のキーボードで使用可能な一般的な実装と、多くのキーボード固有の実装があります。 - -このため、主に Let's Split とその他のキーボードで使われる一般的な実装について説明します。 - -!> ARM はまだ完全には分割キーボードをサポートしておらず、様々な制限があります。進捗はしていますが、機能の100%にはまだ達していません。 - - -## 互換性の概要 - -| Transport | AVR | ARM | -|------------------------------|--------------------|--------------------| -| ['serial'](ja/serial_driver.md) | :heavy_check_mark: | :white_check_mark: 1 | -| I2C | :heavy_check_mark: | | - -注意: - -1. ハードウェアとソフトウェアの両方の制限は、[ドライバーのドキュメント](ja/serial_driver.md)の中で説明されます。 - -## ハードウェア設定 - -2つの Pro Micro 互換のコントローラを使っており、キーボードの左右を接続するために TRRS ジャックを使っていることを前提とします。 - -### ハードウェア要件 - -左右それぞれのキーボードマトリックスのためのダイオードとスイッチとは別に、2個の TRRS ソケットと 1本の TRRS ケーブルが必要です。 - -あるいは、少なくとも3本のワイヤがあるケーブルとソケットを使うことができます。 - -キーボードの左右間で通信するために I2C を使いたい場合は、少なくとも4本のワイヤを備えたケーブルと 2個の 4.7kΩ プルアップ抵抗が必要です。 - -#### 考慮事項 - -最も一般的に使われる接続は、TRRS ケーブルとジャックです。これらは4本のワイヤを提供し、分割キーボードに非常に有用で、簡単に見つけることができます。 - -ただし、ワイヤのうちの1本が Vcc を供給するため、キーボードはホットプラグ不可能です。TRRS ケーブルを抜き差しする前に、必ずキーボードのUSB接続をはずす必要があります。そうしなければ、コントローラを短絡させたり、もっと悪いことが起こるかもしれません。 - -別のオプションは電話ケーブルを使うことです (例えば、旧式の RJ-11/RJ-14 ケーブル)。実際に4本のワイヤ/レーンをサポートするものを使うようにしてください。 - -ただし、USB ケーブル、SATA ケーブル、そして単に4本の電線でもコントローラ間の通信に使用できることがわかっています。 - -!> コントローラ間の通信に USB ケーブルを使っても問題ありませんが、コネクタは通常の USB 接続と間違えられるかもしれず、配線方法によってはキーボードが短絡する可能性があります。このため、分割キーボードの接続のためにはお勧めできません。 - -### シリアル配線 - -2つの Pro Micro 間で GND、Vcc、D0/D1/D2/D3 (別名 PD0/PD1/PD2/PD3) を TRS/TRRS ケーブルの3本のワイヤで接続します。 - -?> ここで使われるピンは実際には以下の `SOFT_SERIAL_PIN` によって設定されることに注意してください。 - -sk-pd0-connection-mono -sk-pd2-connection-mono - -### I2C 配線 - -2つの Pro Micro 間で GND、Vcc、さらに SCL と SDA (それぞれ 別名 PD0/ピン3 および PD1/ピン2) を TRRS ケーブルの4本のワイヤで接続します。 - -プルアップ抵抗はキーボードの左右どちら側にも配置することができます。もし各側を単独で使いたい場合は、4つの抵抗を使い、両側にプルアップ抵抗を配置することもできます。 - -sk-i2c-connection-mono - -## ファームウェア設定 - -分割キーボード機能を有効にするには、以下を `rules.mk` に追加してください: - -```make -SPLIT_KEYBOARD = yes -``` - -カスタムトランスポート (通信メソッド)を使っている場合は、以下を追加する必要もあります: - -```make -SPLIT_TRANSPORT = custom -``` - -### 左右の設定 - -デフォルトでは、ファームウェアはどちら側がどちらであるかを認識しません; 決定するには幾つかの助けが必要です。これを行うには幾つかの方法があり、以下に優先順に列挙します。 - -#### ピンによる左右の設定 - -左右を決定するためにコントローラ上のピンを読むようにファームウェアを設定することができます。これを行うには、以下を `config.h` ファイルに追加します: - -```c -#define SPLIT_HAND_PIN B7 -``` - -これは指定されたピンを読み込みます。high の場合、コントローラはそれを左側だと仮定し、low の場合、それは右側であると仮定します。 - -#### マトリックスピンによる左右の設定 - -左右を決定するためにコントローラのキーマトリックスピンを読むようにファームウェアを設定することができます。これを行うには、以下を `config.h` ファイルに追加します: - -```c -#define SPLIT_HAND_MATRIX_GRID D0, F1 -``` - -最初のピンは出力ピンで、2つ目は入力ピンです。 - -キーマトリックスに未使用の交点があるキーボードがあります。この設定は、左右の決定にこれらの未使用の交点の1つを使用します。 - -通常、ダイオードが交点に接続されている場合、右側と判断されます。次の定義を追加すると、左側と判断されます。 - -```c -#define SPLIT_HAND_MATRIX_GRID_LOW_IS_LEFT -``` - -#### EEPROM による左右の設定 - -このメソッドは永続ストレージ(`EEPROM`)のフラグを設定することで、キーボードの左右を設定します。これはコントローラが最初に起動する時にチェックされ、キーボードのどちら側であるかとキーボードのレイアウトの向きを決定します。 - - -このメソッドを有効にするには、以下を `config.h` ファイルに追加します: - -```c -#define EE_HANDS -``` - -ただし、各コントローラに正しい側の EEPROM ファイルを書き込む必要があります。これを手動で行うこともできますが、ファームウェアを書き込む時にこれを行う avrdude および dfu のターゲットが存在します。 - -* `:avrdude-split-left` -* `:avrdude-split-right` -* `:dfu-split-left` -* `:dfu-split-right` -* `:dfu-util-split-left` -* `:dfu-util-split-right` - -この設定は、`EEP_RST` キーや `eeconfig_init()` 関数を使って EEPROM を再初期化する時には変更されません。ただし、ファームウェアの組み込みオプション以外で EEPROM をリセット([QMK Toolbox]() の "Reset EEPROM" ボタンの動作のように、`EEPROM` を上書きするファイルを書きこむなど)した場合、`EEPROM` ファイルを再書き込みする必要があります。 - -`EEPROM` ファイルは、QMK ファームウェアのリポジトリ内の[ここ](https://github.com/qmk/qmk_firmware/tree/master/quantum/split_common)にあります。 - -#### `#define` による左右の設定 - -コンパイル時に左右を設定することができます。これは以下を `config.h` ファイルに追加することで行うことができます: - -```c -#define MASTER_RIGHT -``` - -あるいは - -```c -#define MASTER_LEFT -``` - -どちらも定義されていない場合、左右のデフォルトは `MASTER_LEFT` になります。 - - -### 通信オプション - -全ての分割キーボードが同一であるとは限らないため、`config.h` ファイル内で設定することができる多くの追加のオプションがあります。 - -```c -#define USE_I2C -``` - -これは分割キーボードの I2C サポートを有効にします。これは厳密には通信用ではありませんが、OLED あるいは I2C ベースのデバイスに使うことができます。 - -```c -#define SOFT_SERIAL_PIN D0 -``` - -これはシリアル通信用に使われるピンを設定します。シリアルを使っていない場合は、これを定義する必要はありません。 - -ただし、キーボード上でシリアルおよび I2C を使っている場合は、これを設定し、D0 および D1 以外の値に設定する必要があります (これらは I2C 通信のために使われます)。 - -```c -#define SELECT_SOFT_SERIAL_SPEED {#}` -``` - -シリアル通信に問題がある場合は、この値を変更して、シリアル用の通信速度を制御することができます。デフォルトは1で、可能な値は以下の通りです: - -* **`0`**: 約189kbps (実験用途専用) -* **`1`**: 約137kbps (デフォルト) -* **`2`**: 約75kbps -* **`3`**: 約39kbps -* **`4`**: 約26kbps -* **`5`**: 約20kbps - -### ハードウェア設定オプション - -ハードウェアのセットアップ方法に基づいて、設定する必要のある設定が幾つかあります。 - -```c -#define MATRIX_ROW_PINS_RIGHT { } -#define MATRIX_COL_PINS_RIGHT { } -``` - -これにより、右側のマトリックスに異なるピンのセットを指定することができます。これは、左右の形が違うキーボード (Keebio の Quefrency など)で、左右で別の構成が必要な場合に便利です。 - -```c -#define DIRECT_PINS_RIGHT { { F1, F0, B0, C7 }, { F4, F5, F6, F7 } } -``` - -これにより右側のための異なる直接ピンのセットを指定することができます。 - -```c -#define ENCODERS_PAD_A_RIGHT { encoder1a, encoder2a } -#define ENCODERS_PAD_B_RIGHT { encoder1b, encoder2b } -``` - -これにより右側のための異なるエンコーダピンのセットを指定することができます。 - -```c -#define RGBLIGHT_SPLIT -``` - -このオプションは、分割キーボードのコントローラ間で RGB ライトモードの同期を有効にします。これはコントローラに直接配線されている RGB LED を持つキーボード用です (つまり、それらは TRRS ケーブルで "追加データ"オプションを使っていません)。 - -```c -#define RGBLED_SPLIT { 6, 6 } -``` - -これは各コントローラに直接接続されている LED の数を設定します。最初の数は左側、2番目の数は右側です。 - -?> この設定は `RGBLIGHT_SPLIT` が有効になっていることを意味し、有効になっていない場合は強制的に有効にします。 - - -```c -#define SPLIT_USB_DETECT -``` -このオプションは、スタートアップの挙動を変更して、マスタ/スレーブの決定時にアクティブな USB 接続を検出します。このオプションがタイムアウトになった場合、その片側はスレーブと見なされます。これは ARM のデフォルトの挙動で、AVR Teensy ボードに必要です (ハードウェアの制限のため)。 - -?> この設定はバッテリパックを使ったデモの機能を停止します。 - -```c -#define SPLIT_USB_TIMEOUT 2000 -``` -これは、`SPLIT_USB_DETECT` を使う時のマスタ/スレーブを検出する場合の最大タイムアウトを設定します。 - -```c -#define SPLIT_USB_TIMEOUT_POLL 10 -``` -これは `SPLIT_USB_DETECT` を使う時のマスタ/スレーブを検出する場合のポーリング頻度を設定します - -## 追加のリソース(英語) - -Nicinabox には Let's Split キーボードのための[非常に優れた詳細なガイド](https://github.com/nicinabox/lets-split-guide)があり、トラブルシューティング情報を含む知っておくべきほとんど全てをカバーします。 - -ただし、RGB ライトセクションは、RGB Split コードが QMK ファームウェアに追加されるずっと前に書かれたため、古くなっています。ガイドに従う代わりに、各 LED テーブ(訳注: LED strip とも呼びます)を直接コントローラに配線します。 - - diff --git a/docs/ja/feature_stenography.md b/docs/ja/feature_stenography.md deleted file mode 100644 index 9551221696c..00000000000 --- a/docs/ja/feature_stenography.md +++ /dev/null @@ -1,135 +0,0 @@ -# QMK での速記 :id=stenography-in-qmk - - - -[速記](https://en.wikipedia.org/wiki/Stenotype)は裁判所のレポート、字幕および耳が不自由な人のためのリアルタイムの文字起こしで最もよく使われる記述方法です。速記では単語はスペル、音声およびショートカット(短い)ストロークが混在する音節ごとに音節化されます。プロの速記者は、標準的なタイピングで通常見られる負担を掛けずに、はるかに少ないエラー(99.9%より高い精度)で、200-300 WPM に到達できます。 - -[Open Steno Project](https://www.openstenoproject.org/)は、速記ストロークを単語とコマンドにリアルタイムに変換する Plover と呼ばれるオープンソースプログラムを構築しました。確立された辞書とサポートがあります。 - -## QWERTY キーボードを使った Plover :id=plover-with-qwerty-keyboard - -Plover は全ての標準的な QWERTY キーボードで動作しますが、キーボードが NKRO (n-キーロールオーバー)をサポートする場合は Plover は一度に押された全てのキーが分かるためより効率的です。Plover 用のキーマップの例は `planck/keymaps/default` で見つかります。`PLOVER` レイヤーに切り替えると、数字バーをサポートするためにキーボードの位置が調整されます。 - -QMK で Plover を使うには、NKRO を有効にし、標準レイアウト以外のレイアウトの場合はオプションでレイアウトを調整します。複数のキーを押しやすくするために、なんらかの速記フレンドリなキーキャップを購入することもできます。 - -## 速記プロトコルを使った Plover :id=plover-with-steno-protocol - -Plover は幾つかの速記マシンの言語も理解します。QMK はこれらの言語の内2つの言語、TX Bolt と GeminiPR を話すことができます。レイアウトの例は `planck/keymaps/steno` で見つけることができます。 - -QMKが steno プロトコルを使って Plover と話す場合は、Plover は入力としてキーボードを使いません。標準のキーボードと速記キーボードを行き来したり、あるいは Plover をアクティブ/非アクティブにする必要なく Plover と標準のレイヤーを行き来することができることを意味します。 - -このモードでは、Plover はシリアルポートを介して速記マシンと通信すると想定しているため、QMK はオペレーティングシステムに対してキーボードに加えて仮想シリアルポートとして存在しています。デフォルトでは、QMK は TX Bolt プロトコルを話しますが、GeminiPR に切り替えることができます; 最後に使われたプロトコルが不揮発性メモリに格納されるため QMK は再起動時に同じプロトコルを使います。 - -> 注意: ハードウェアの制限により、仮想シリアルポートとマウスエミュレーションの両方を同時に実行することができないかもしれません。 - -### TX Bolt :id=tx-bolt - -TX Bolt は可変サイズ(1-5バイト)のパケットで非常に単純なプロトコルを介して24個のキーのステータスを通信します。 - -### GeminiPR :id=geminipr - -GeminiPR は42個のキーを6バイトのパケットにエンコードします。TX Bolt は標準的な速記に必要な全てを含んでいますが、GeminiPR は英語以外の速記法のサポートを含む、より多くのオプションにも開け放たれています。 - -## 速記のための QMK の設定 :id=configuring-qmk-for-steno - -最初にキーマップの Makefile で速記を有効にします。競合を避けるために、マウスキー、追加キーあるいはその他の USB エンドポイントを無効にする必要もあります。幾つかのプロセッサの内蔵の USB スタックは一定数の USB エンドポイントと仮想シリアルポートのみをサポートし、速記はそれらのうちの3つを使います。 - -```makefile -STENO_ENABLE = yes -MOUSEKEY_ENABLE = no -``` - -キーマップで Plover 用の新しいレイヤーを作成します。`keymap_steno.h` をインクルードする必要があります。例については `planck/keymaps/steno/keymap.c` を見てください。レイヤーに切り替えるためのキーとレイヤーから抜けるためのキーを作成することを忘れないでください。その場でモードを切り替えたい場合は、キーコード `QK_STENO_BOLT` および `QK_STENO_GEMINI` を使うことができます。プロトコルのうちの1つのみを使う場合は、初期化関数の中でそれをセットアップすることができます: - -```c -void eeconfig_init_user() { - steno_set_mode(STENO_MODE_GEMINI); // あるいは STENO_MODE_BOLT -} -``` - -キーボードを書き込んだら、Plover を起動します。'Configure...' ボタンをクリックします。'Machine' タブの中で目的のプロトコルに対応する速記マシンを選択します。このタブの 'Configure...' ボタンをクリックし、シリアルポートを入力するか 'Scan' をクリックします。ボーレートは 9600 で問題ありません (ただし、115200まで問題無く設定することができるはずです)。それ以外はデフォルトの設定(データビット長: 8、ストップビット長: 1、パリティチェック: なし、フロー制御なし)を使います。 - -ディスプレイタブで 'Open stroke display' をクリックします。Plover を無効にすると、キーボードのキーを押すとストローク表示ウィンドウにそれらが表示されるはずです。これを使ってキーマップが正しくセットアップされたことを確認してください。これで速記をする準備ができました! - -## 速記の学習 :id=learning-stenography - -* [Learn Plover!](https://sites.google.com/site/learnplover/) -* [Steno Jig](https://joshuagrams.github.io/steno-jig/) -* Plover [Learning Stenography](https://github.com/openstenoproject/plover/wiki/Learning-Stenography) wiki のより多くのリソース - -## コードとのインターフェイス :id=interfacing-with-the-code - -速記コードには3つの捕捉可能なフックがあります。これらの関数を定義した場合、処理の特定のポイントでそれらが呼び出されます; それらが true を返す場合処理が継続され、そうでなければあなたが物事を処理すると想定します。 - -```c -bool send_steno_chord_user(steno_mode_t mode, uint8_t chord[6]); -``` - -この関数はコードが送信されようとしている時に呼ばれます。モードは `STENO_MODE_BOLT` あるいは `STENO_MODE_GEMINI` のいずれかです。これはいずれかのプロトコルを介して送信される実際のコードを表します。提供されるコードを修正して送信されるものを変更することができます。通常の送信プロセスにしたい場合は true を返すのを忘れないでください。 - -```c -bool process_steno_user(uint16_t keycode, keyrecord_t *record) { return true; } -``` - -この関数はキーが押されるとキーが処理される前に呼び出されます。キーコードは `QK_STENO_BOLT`、`QK_STENO_GEMINI` あるいは `STN_*` キー値のいずれかでなければなりません。 - -```c -bool post_process_steno_user(uint16_t keycode, keyrecord_t *record, steno_mode_t mode, uint8_t chord[6], int8_t pressed); -``` - -この関数はキーが処理された後、ただしコードを送信するかどうかを決める前に呼び出されます。`record->event.pressed` が false で、`pressed` が 0 または 1 の場合は、コードはまもなく送信されますが、まだ送信されてはいません。ここが速記コードあるいはキーのライブ表示などのフックを配置する場所です。 - - -## キーコードリファレンス :id=keycode-reference - -`keymap_steno.h` で定義されています。 - -> 注意: TX Bolt はキーの完全なセットをサポートしません。QMK での TX Bolt の実装は、GeminiPR キーを最も近い TX Bolt キーにマップします。そのため1つのキーマップが両方で動作します。 - -| GeminiPR | TX Bolt | Steno Key | -|--------|-------|-----------| -| `STN_N1` | `STN_NUM` | Number bar #1 | -| `STN_N2` | `STN_NUM` | Number bar #2 | -| `STN_N3` | `STN_NUM` | Number bar #3 | -| `STN_N4` | `STN_NUM` | Number bar #4 | -| `STN_N5` | `STN_NUM` | Number bar #5 | -| `STN_N6` | `STN_NUM` | Number bar #6 | -| `STN_N7` | `STN_NUM` | Number bar #7 | -| `STN_N8` | `STN_NUM` | Number bar #8 | -| `STN_N9` | `STN_NUM` | Number bar #9 | -| `STN_NA` | `STN_NUM` | Number bar #A | -| `STN_NB` | `STN_NUM` | Number bar #B | -| `STN_NC` | `STN_NUM` | Number bar #C | -| `STN_S1` | `STN_SL` | `S-` upper | -| `STN_S2` | `STN_SL` | `S-` lower | -| `STN_TL` | `STN_TL` | `T-` | -| `STN_KL` | `STN_KL` | `K-` | -| `STN_PL` | `STN_PL` | `P-` | -| `STN_WL` | `STN_WL` | `W-` | -| `STN_HL` | `STN_HL` | `H-` | -| `STN_RL` | `STN_RL` | `R-` | -| `STN_A` | `STN_A` | `A` vowel | -| `STN_O` | `STN_O` | `O` vowel | -| `STN_ST1` | `STN_STR` | `*` upper-left | -| `STN_ST2` | `STN_STR` | `*` lower-left | -| `STN_ST3` | `STN_STR` | `*` upper-right | -| `STN_ST4` | `STN_STR` | `*` lower-right | -| `STN_E` | `STN_E` | `E` vowel | -| `STN_U` | `STN_U` | `U` vowel | -| `STN_FR` | `STN_FR` | `-F` | -| `STN_PR` | `STN_PR` | `-P` | -| `STN_RR` | `STN_RR` | `-R` | -| `STN_BR` | `STN_BR` | `-B` | -| `STN_LR` | `STN_LR` | `-L` | -| `STN_GR` | `STN_GR` | `-G` | -| `STN_TR` | `STN_TR` | `-T` | -| `STN_SR` | `STN_SR` | `-S` | -| `STN_DR` | `STN_DR` | `-D` | -| `STN_ZR` | `STN_ZR` | `-Z` | -| `STN_FN` | (GeminiPR のみ) | -| `STN_RES1` | (GeminiPR のみ) | -| `STN_RES2` | (GeminiPR のみ) | -| `STN_PWR` | (GeminiPR のみ) | diff --git a/docs/ja/feature_swap_hands.md b/docs/ja/feature_swap_hands.md deleted file mode 100644 index cd0b150e500..00000000000 --- a/docs/ja/feature_swap_hands.md +++ /dev/null @@ -1,36 +0,0 @@ -# スワップハンドアクション - - - -スワップハンドアクションにより、別のレイヤーを必要とせずに片手入力をサポートします。Makefile に `SWAP_HANDS_ENABLE` を設定し、キーマップに `hand_swap_config` エントリを定義します。これで `ACTION_SWAP_HANDS` コマンドキーが押されるたびにキーボードがミラーされます。例えば、QWERTY で "Hello, World" を入力するには、`^Ge^s^s^w^c W^wr^sd` を入力します。 - -## 設定 - -設定テーブルは列/行から新しい列/行にマップするための単純な2次元配列です。Planck の `hand_swap_config` の例: - -```C -const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = { - {{11, 0}, {10, 0}, {9, 0}, {8, 0}, {7, 0}, {6, 0}, {5, 0}, {4, 0}, {3, 0}, {2, 0}, {1, 0}, {0, 0}}, - {{11, 1}, {10, 1}, {9, 1}, {8, 1}, {7, 1}, {6, 1}, {5, 1}, {4, 1}, {3, 1}, {2, 1}, {1, 1}, {0, 1}}, - {{11, 2}, {10, 2}, {9, 2}, {8, 2}, {7, 2}, {6, 2}, {5, 2}, {4, 2}, {3, 2}, {2, 2}, {1, 2}, {0, 2}}, - {{11, 3}, {10, 3}, {9, 3}, {8, 3}, {7, 3}, {6, 3}, {5, 3}, {4, 3}, {3, 3}, {2, 3}, {1, 3}, {0, 3}}, -}; -``` - -配列のインデックスはマトリックスと同様に逆になり、値の型は `{col, row}` である `keypos_t` で、全ての値はゼロベースであることに注意してください。上の例では、`hand_swap_config[2][4]` (第3行, 第5列)は `{7, 2}` (第3行, 第8列) を返します。はい。紛らわしいです。 - -## キーコードの入れ替え - -| キー | 説明 | -|-----------|-------------------------------------------------------------------------| -| `SH_T(key)` | タップで `key` を送信する。押している時の一時的な入れ替え。 | -| `SH_ON` | 入れ替えをオンにして、そのままにする。 | -| `SH_OFF` | 入れ替えをオフにして、そのままにする。既知の状態に戻るのに適しています。 | -| `SH_MON` | 押すとスワップハンドし、放すと通常に戻る (一時的)。 | -| `SH_MOFF` | 一時的に入れ替えをオフする。 | -| `SH_TG` | キーを押すたびに入れ替えのオンとオフを切り替える。 | -| `SH_TT` | タップで切り替える。押されている時の一時的なもの。 | -| `SH_OS` | ワンショットスワップハンド: 押されている時あるいは次のキーを押すまで切り替える。 | diff --git a/docs/ja/feature_tap_dance.md b/docs/ja/feature_tap_dance.md deleted file mode 100644 index b4e025d2821..00000000000 --- a/docs/ja/feature_tap_dance.md +++ /dev/null @@ -1,530 +0,0 @@ -# タップダンス: 1つのキーが3つ、5つまたは100の異なる動作をします - - - -## イントロダクション :id=introduction - -セミコロンキーを1回叩くと、セミコロンが送信されます。2回素早く叩くと、コロンが送信されます。3回叩くと、あなたのキーボードのLEDが激しく踊るように明滅します。これは、タップダンスでできることの一例です。それは、コミュニティが提案したとても素敵なファームウェアの機能の1つで、[algernon](https://github.com/algernon) がプルリクエスト [#451](https://github.com/qmk/qmk_firmware/pull/451) で考えて作ったものです。algernon が述べる機能は次の通りです: - -この機能を使うと、特定のキーが、タップした回数に基づいて異なる振る舞いをします。そして、割り込みがあった時は、割り込み前に上手く処理されます。 - -## タップダンスの使い方 :id=how-to-use -最初に、あなたの `rules.mk` ファイルで `TAP_DANCE_ENABLE = yes` と設定する必要があります。なぜならば、デフォルトでは無効になっているからです。これでファームウェアのサイズが1キロバイトほど増加します。 - -オプションで、あなたの `config.h` ファイルに次のような設定を追加して、`TAPPING_TERM` の時間をカスタマイズしたほうが良いです。 - -```c -#define TAPPING_TERM 175 -``` - -`TAPPING_TERM` の時間は、あなたのタップダンスのキーのタップとタップの間の時間として許可された最大の時間で、ミリ秒単位で計測されます。例えば、もし、あなたがこの上にある `#define` ステートメントを使い、1回タップすると `Space` が送信され、2回タップすると `Enter` が送信されるタップダンスキーをセットアップした場合、175ミリ秒以内に2回キーをタップすれば `ENT` だけが送信されるでしょう。もし、1回タップしてから175ミリ秒以上待ってからもう一度タップすると、`SPC SPC` が送信されます。 - -次に、いくつかのタップダンスのキーを定義するためには、`TD()` マクロを使うのが最も簡単です。これは数字を受け取り、この数字は後で `tap_dance_actions` 配列のインデックスとして使われます。 - -その後、`tap_dance_actions` 配列を使って、タップダンスキーを押した時のアクションを定義します。現在は、5つの可能なオプションがあります: - -* `ACTION_TAP_DANCE_DOUBLE(kc1, kc2)`: 1回タップすると `kc1` キーコードを送信し、2回タップすると `kc2` キーコードを送信します。キーを押し続けているときは、適切なキーコードが登録されます: キーを押し続けた場合は `kc1`、一度タップしてから続けてもう一度キーを押してそのまま押し続けたときは、 `kc2` が登録されます。 -* `ACTION_TAP_DANCE_LAYER_MOVE(kc, layer)`: 1回タップすると `kc` キーコードが送信され、2回タップすると `layer` レイヤーに移動します(これは `TO` レイヤーキーコードのように機能します)。 -* `ACTION_TAP_DANCE_LAYER_TOGGLE(kc, layer)`: 1回タップすると `kc` キーコードが送信され、2回タップすると `layer` の状態をトグルします(これは `TG` レイヤーキーコードのように機能します)。 -* `ACTION_TAP_DANCE_FN(fn)`: ユーザーキーマップに定義した指定の関数が呼び出されます。タップダンス実行の回数分タップすると、最後の時点で呼び出されます。 -* `ACTION_TAP_DANCE_FN_ADVANCED(on_each_tap_fn, on_dance_finished_fn, on_dance_reset_fn)`: タップする度にユーザーキーマップに定義した最初の関数が呼び出されます。タップダンスの実行が終わった時点で2番目の関数が呼び出され、タップダンスの実行をリセットするときに最後の関数が呼び出されます。 -* ~~`ACTION_TAP_DANCE_FN_ADVANCED_TIME(on_each_tap_fn, on_dance_finished_fn, on_dance_reset_fn, tap_specific_tapping_term)`~~: これは `ACTION_TAP_DANCE_FN_ADVANCED` 関数と同じように機能します。しかし、`TAPPING_TERM` で事前に定義した時間の代わりに、カスタマイズしたタップ時間を使います。 - * [ここ](ja/custom_quantum_functions.md#Custom_Tapping_Term)で概説するように、これはキーごとのタッピング時間機能を優先して非推奨になりました。この特定のタップダンス機能を使う代わりに、使いたい特定の `TD()` マクロ(`TD(TD_ESC_CAPS)` のような)を確認する必要があります。 - - -最初のオプションで、1つのキーに2つの役割を持たせる大抵のケースには十分です。例えば、`ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_ENT)` は、1回タップすると `Space` を送信し、2回タップすると `Enter` を送信します。 - -!> ここでは [基本的なキーコード](ja/keycodes_basic.md) だけがサポートされていることを覚えておいてください。カスタムキーコードはサポートされていません。 - -最初のオプションに似ていますが、2番目のオプションは単純なレイヤー切替のケースに適しています。 - -これ以上に複雑なケースの場合、3番目か4番目のオプションを使います。(以下でそれらの例を列挙します) - -最後に、5番目のオプションは、もし、タップダンスキーをコードに追加した後、非タップダンスキーが奇妙な振る舞いを始めた時に特に役に立ちます。ありうる問題は、あなたがタップダンスキーを使いやすくするために `TAPPING_TERM` の時間を変更した結果、その他のキーが割り込みを処理する方法が変わってしまったというものです。 - - -## 実装の詳細 :id=implementation - -さて、説明の大部分はここまでです! 以下に挙げているいくつかの例に取り組むことができるようになり、あなた自身のタップダンスの機能を開発できるようになります。しかし、もし、あなたが裏側で起きていることをより深く理解したいのであれば、続けてそれが全てどのように機能するかの説明を読みましょう! - -メインエントリーポイントは、`process_tap_dance()` で、`process_record_quantum()` から呼び出されます。これはキーを押すたびに実行され、ハンドラは早期に実行されます。この関数は、押されたキーがタップダンスキーがどうか確認します。 -もし、押されたキーがタップダンスキーではなく、かつ、タップダンスが実行されていたなら、最初にそれを処理し、新しく押されたキーをキューに格納します。 -もし、押されたキーがタップダンスキーであるなら、既にアクティブなタップダンスと同じキーか確認します(もしアクティブなものがある場合、それと)。 -異なる場合、まず、古いタップダンスを処理し、続いて新しいタップダンスを登録します。 -同じ場合、カウンタの値を増やし、タイマーをリセットします。 - -このことは、あなたは再びキーをタップするまでの時間として `TAPPING_TERM` の時間を持っていることを意味します。そのため、あなたは1つの `TAPPING_TERM` の時間内に全てのタップを行う必要はありません。これにより、キーの反応への影響を最小限に抑えながら、より長いタップ回数を可能にします。 - -次は `tap_dance_task()` です。この関数はタップダンスキーのタイムアウトを制御します。 - -柔軟性のために、タップダンスは、キーコードの組み合わせにも、ユーザー関数にもなることができます。後者は、より高度なタップ回数の制御や、LED を点滅させたり、バックライトをいじったり、等々の制御を可能にします。これは、1つの共用体と、いくつかの賢いマクロによって成し遂げられています。 - -## 実装例 :id=examples - -### シンプルな実装例 :id=simple-example - -ここに1つの定義のための簡単な例があります。 - -1. `rules.mk` に `TAP_DANCE_ENABLE = yes` を追加します。 -2. `config.h` ファイル(`qmk_firmware/keyboards/planck/config.h` からあなたのキーマップディレクトリにコピーできます)に `#define TAPPING_TERM 200` を追加します。 -3. `keymap.c` ファイルに変数とタップダンスの定義を定義し、それからキーマップに追加します。 - -```c -// タップダンスの宣言 -enum { - TD_ESC_CAPS, -}; - -// タップダンスの定義 -qk_tap_dance_action_t tap_dance_actions[] = { - // 1回タップすると Escape キー、2回タップすると Caps Lock。 - [TD_ESC_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, KC_CAPS), -}; - -// キーマップにキーコードの代わりにタップダンスの項目を追加します -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // ... - TD(TD_ESC_CAPS) - // ... -}; -``` - -### 複雑な実装例 :id=complex-examples - -このセクションでは、いくつかの複雑なタップダンスの例を詳しく説明します。 -例で使われている全ての列挙型はこのように宣言します。 - -```c -// 全ての例のための列挙型定義 -enum { - CT_SE, - CT_CLN, - CT_EGG, - CT_FLSH, - X_TAP_DANCE -}; -``` -#### 例1: 1回タップすると `:` を送信し、2回タップすると `;` を送信する :id=example-1 - -```c -void dance_cln_finished(qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - register_code16(KC_COLN); - } else { - register_code(KC_SCLN); - } -} - -void dance_cln_reset(qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - unregister_code16(KC_COLN); - } else { - unregister_code(KC_SCLN); - } -} - -// 全てのタップダンス関数はここに定義します。ここでは1つだけ示します。 -qk_tap_dance_action_t tap_dance_actions[] = { - [CT_CLN] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_cln_finished, dance_cln_reset), -}; -``` - -#### 例2: 100回タップした後に "Safety Dance!" を送信します :id=example-2 - -```c -void dance_egg(qk_tap_dance_state_t *state, void *user_data) { - if (state->count >= 100) { - SEND_STRING("Safety dance!"); - reset_tap_dance(state); - } -} - -qk_tap_dance_action_t tap_dance_actions[] = { - [CT_EGG] = ACTION_TAP_DANCE_FN(dance_egg), -}; -``` - -#### 例3: 1つずつ LED を点灯させてから消灯する :id=example-3 - -```c -// タップする毎に、LED を右から左に点灯します。 -// 4回目のタップで、右から左に消灯します。 -void dance_flsh_each(qk_tap_dance_state_t *state, void *user_data) { - switch (state->count) { - case 1: - ergodox_right_led_3_on(); - break; - case 2: - ergodox_right_led_2_on(); - break; - case 3: - ergodox_right_led_1_on(); - break; - case 4: - ergodox_right_led_3_off(); - wait_ms(50); - ergodox_right_led_2_off(); - wait_ms(50); - ergodox_right_led_1_off(); - } -} - -// 4回目のタップで、キーボードをフラッシュ状態にセットします。 -void dance_flsh_finished(qk_tap_dance_state_t *state, void *user_data) { - if (state->count >= 4) { - reset_keyboard(); - } -} - -// もしフラッシュ状態にならない場合、LED を左から右に消灯します。 -void dance_flsh_reset(qk_tap_dance_state_t *state, void *user_data) { - ergodox_right_led_1_off(); - wait_ms(50); - ergodox_right_led_2_off(); - wait_ms(50); - ergodox_right_led_3_off(); -} - -// 全てのタップダンス関数を一緒に表示しています。この例3は "CT_FLASH" です。 -qk_tap_dance_action_t tap_dance_actions[] = { - [CT_SE] = ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_ENT), - [CT_CLN] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_cln_finished, dance_cln_reset), - [CT_EGG] = ACTION_TAP_DANCE_FN(dance_egg), - [CT_FLSH] = ACTION_TAP_DANCE_FN_ADVANCED(dance_flsh_each, dance_flsh_finished, dance_flsh_reset) -}; -``` - -#### 例4: クアッドファンクションのタップダンス :id=example-4 - -[DanielGGordon](https://github.com/danielggordon) によるもの - -キーを押す回数と、キーを押し続けるかタップするかによって、1つのキーに4つ(またはそれ以上)の機能を持たせることができるようになります。 - -以下に例をあげます: -* 1回タップ = `x` を送信 -* 押し続ける = `Control` を送信 -* 2回タップ = `Escape` を送信 -* 2回タップして押し続ける = `Alt` を送信 - -'クアッドファンクションのタップダンス' を利用できるようにするには、いくつかのものが必要になります。 - -`keymap.c` ファイルの先頭、つまりキーマップの前に、以下のコードを追加します。 - -```c -typedef enum { - TD_NONE, - TD_UNKNOWN, - TD_SINGLE_TAP, - TD_SINGLE_HOLD, - TD_DOUBLE_TAP, - TD_DOUBLE_HOLD, - TD_DOUBLE_SINGLE_TAP, // Send two single taps - TD_TRIPLE_TAP, - TD_TRIPLE_HOLD -} td_state_t; - -typedef struct { - bool is_press_action; - td_state_t state; -} td_tap_t; - -// タップダンスの列挙型 -enum { - X_CTL, - SOME_OTHER_DANCE -}; - -td_state_t cur_dance(qk_tap_dance_state_t *state); - -// xタップダンスのための関数。キーマップで利用できるようにするため、ここに置きます。 -void x_finished(qk_tap_dance_state_t *state, void *user_data); -void x_reset(qk_tap_dance_state_t *state, void *user_data); -``` - -次に、`keymap.c` ファイルの末尾に、次のコードを追加する必要があります。 - -```c -/* 実行されるタップダンスの種類に対応する整数を返します。 - * - * タップダンスの状態を判別する方法: 割り込みと押下。 - * - * 割り込み: - * タップダンスの状態が「割り込み」の場合、他のキーがタップ時間中に押されたことを意味します。 - * これは通常、キーを「タップ」しようとしていることを示します。 - * - * 押下: - * キーがまだ押されているかどうか。この値が true の場合、タップ時間が終了したことを意味しますが、 - * キーはまだ押されたままです。これは通常、キーが「ホールド」されていることを意味します。 - * - * タップダンスに関して、qmk ソフトウェアで現在不可能なことの1つは、"permissive hold" 機能を - * 模倣することです。 - * 一般に、高度なタップダンスは一般的に入力される文字で使われた場合にうまく機能しません。 - * 例えば "A" の場合。タップダンスは文字の入力中に入力しない文字以外のキーで使うのが最適です。 - * - * 高度なタップダンスを配置するのに適した場所: - * z、q、x、j、k、v、b、ファンクションキー、home/end、コンマ、セミコロン - * - * タップダンスキーの「最適な配置場所」の基準: - * 文章中で頻繁に入力するキーでないこと - * ダブルタップに頻繁に使われるキーでないこと。例えば、'tab' はターミナルやウェブフォームで - * しばしばダブルタップされます。そのため、タップダンスでは 'tab' は良い選択ではありません。 - * 一般的な単語で2回続けて使われる文字でないこと。例えば 'pepper' 中の 'p'。もしタップダンス機能が - * 文字 'p' に存在する場合、'pepper' という単語は入力するのが非常にいらだたしいものになるでしょう。 - * - * 3つ目の点については、'TD_DOUBLE_SINGLE_TAP' が存在しますが、これは完全にはテストされていません - * - */ -td_state_t cur_dance(qk_tap_dance_state_t *state) { - if (state->count == 1) { - if (state->interrupted || !state->pressed) return TD_SINGLE_TAP; - // キーは割り込まれていませんが、まだ押し続けられています。'HOLD' を送信することを意味します。 - else return TD_SINGLE_HOLD; - } else if (state->count == 2) { - // TD_DOUBLE_SINGLE_TAP は "pepper" と入力することと、'pp' と入力したときに実際に - // ダブルタップしたい場合とを区別するためのものです。 - // この戻り値の推奨されるユースケースは、'ダブルタップ' 動作やマクロではなく、 - // そのキーの2つのキー入力を送信したい場合です。 - if (state->interrupted) return TD_DOUBLE_SINGLE_TAP; - else if (state->pressed) return TD_DOUBLE_HOLD; - else return TD_DOUBLE_TAP; - } - - // 誰も同じ文字を3回入力しようとしていないと仮定します(少なくとも高速には)。 - // タップダンスキーが 'KC_W' で、"www." と高速に入力したい場合、ここに例外を追加して - // 'TD_TRIPLE_SINGLE_TAP' を返し、'TD_DOUBLE_SINGLE_TAP' のようにその列挙型を定義する必要があります。 - if (state->count == 3) { - if (state->interrupted || !state->pressed) return TD_TRIPLE_TAP; - else return TD_TRIPLE_HOLD; - } else return TD_UNKNOWN; -} - -//'x' タップダンスの 'td_tap_t' のインスタンスを生成します。 -static td_tap_t xtap_state = { - .is_press_action = true, - .state = TD_NONE -}; - -void x_finished(qk_tap_dance_state_t *state, void *user_data) { - xtap_state.state = cur_dance(state); - switch (xtap_state.state) { - case TD_SINGLE_TAP: register_code(KC_X); break; - case TD_SINGLE_HOLD: register_code(KC_LCTRL); break; - case TD_DOUBLE_TAP: register_code(KC_ESC); break; - case TD_DOUBLE_HOLD: register_code(KC_LALT); break; - // 最後の case は高速入力用です。キーが `f` であると仮定します: - // 例えば、`buffer` という単語を入力するとき、`Esc` ではなく `ff` を送信するようにします。 - // 高速入力時に `ff` と入力するには、次の文字は `TAPPING_TERM` 以内に入力する必要があります。 - // `TAPPING_TERM` はデフォルトでは 200ms です。 - case TD_DOUBLE_SINGLE_TAP: tap_code(KC_X); register_code(KC_X); - } -} - -void x_reset(qk_tap_dance_state_t *state, void *user_data) { - switch (xtap_state.state) { - case TD_SINGLE_TAP: unregister_code(KC_X); break; - case TD_SINGLE_HOLD: unregister_code(KC_LCTRL); break; - case TD_DOUBLE_TAP: unregister_code(KC_ESC); break; - case TD_DOUBLE_HOLD: unregister_code(KC_LALT); - case TD_DOUBLE_SINGLE_TAP: unregister_code(KC_X); - } - xtap_state.state = TD_NONE; -} - -qk_tap_dance_action_t tap_dance_actions[] = { - [X_CTL] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, x_finished, x_reset) -}; -``` - -これで、キーマップのどこでも簡単に `TD(X_CTL)` マクロが使えます。 - -> この設定の "hold" は、タップダンスのタイムアウト(`ACTION_TAP_DANCE_FN_ADVANCED_TIME` 参照)の **後** に起こります。即座に "hold" を得るためには、条件から `state->interrupted` の確認を除きます。結果として、複数回のタップのための時間をより多く持つことで快適な長いタップの期限を使うことができ、そして、"hold" のために長く待たないようにすることができます(2倍の `TAPPING TERM` で開始してみてください)。 - -#### 例5: タップダンスを高度なモッドタップとレイヤータップキーに使う :id=example-5 - -タップダンスは、タップされたコードが基本的なキーコード以外の場合に、 `MT()` と `LT()` マクロをエミュレートするのに利用できます。これは、通常 `Shift` を必要とする '(' や '{' のようなキーや、`Control + X` のように他の修飾されたキーコードをタップされたキーコードとして送信することに役立ちます。 - -あなたのレイヤーとカスタムキーコードの下に、以下のコードを追加します。 - -```c -// タップダンスのキーコード -enum td_keycodes { - ALT_LP // 例: 押していると `LALT`、タップすると `(`。それぞれのタップダンスの追加のキーコードを追加します -}; - -// 必要な数のタップダンス状態を含むタイプを定義します -typedef enum { - TD_NONE, - TD_UNKNOWN, - TD_SINGLE_TAP, - TD_SINGLE_HOLD, - TD_DOUBLE_SINGLE_TAP -} td_state_t; - -// タップダンスの状態の型のグローバルインスタンスを作ります -static td_state_t td_state; - -// タップダンス関数を宣言します: - -// 現在のタップダンスの状態を特定するための関数 -td_state_t cur_dance(qk_tap_dance_state_t *state); - -// それぞれのタップダンスキーコードに適用する `finished` と `reset` 関数 -void altlp_finished(qk_tap_dance_state_t *state, void *user_data); -void altlp_reset(qk_tap_dance_state_t *state, void *user_data); -``` - -キーレイアウト(`LAYOUT`)の下に、タップダンスの関数を定義します。 - -```c -// 返却するタップダンス状態を特定します -td_state_t cur_dance(qk_tap_dance_state_t *state) { - if (state->count == 1) { - if (state->interrupted || !state->pressed) return TD_SINGLE_TAP; - else return TD_SINGLE_HOLD; - } - - if (state->count == 2) return TD_DOUBLE_SINGLE_TAP; - else return TD_UNKNOWN; // 上記で返却する最大の状態の値より大きい任意の数 -} - -// 定義する各タップダンスキーコードのとりうる状態を制御します: - -void altlp_finished(qk_tap_dance_state_t *state, void *user_data) { - td_state = cur_dance(state); - switch (td_state) { - case TD_SINGLE_TAP: - register_code16(KC_LPRN); - break; - case TD_SINGLE_HOLD: - register_mods(MOD_BIT(KC_LALT)); // レイヤータップキーの場合、ここでは `layer_on(_MY_LAYER)` を使います - break; - case TD_DOUBLE_SINGLE_TAP: // タップ時間内に2つの括弧 `((` の入れ子を可能にします - tap_code16(KC_LPRN); - register_code16(KC_LPRN); - } -} - -void altlp_reset(qk_tap_dance_state_t *state, void *user_data) { - switch (td_state) { - case TD_SINGLE_TAP: - unregister_code16(KC_LPRN); - break; - case TD_SINGLE_HOLD: - unregister_mods(MOD_BIT(KC_LALT)); // レイヤータップキーの場合、ここでは `layer_off(_MY_LAYER)` を使います - break; - case TD_DOUBLE_SINGLE_TAP: - unregister_code16(KC_LPRN); - } -} - -// 各タップダンスキーコードの `ACTION_TAP_DANCE_FN_ADVANCED()` を定義し、`finished` と `reset` 関数を渡します -qk_tap_dance_action_t tap_dance_actions[] = { - [ALT_LP] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, altlp_finished, altlp_reset) -}; -``` - -それぞれのタップダンスキーコードをキーマップに含めるときは、`TD()` マクロでキーコードをラップします。例: `TD(ALT_LP)` - -#### 例6: タップダンスを一時的なレイヤー切り替えとレイヤートグルキーに使う :id=example-6 - -タップダンスは、MO(layer) と TG(layer) 機能を模倣することにも使用できます。この例では、1回タップすると `KC_QUOT` 、1回押してそのまま押し続けたら `MO(_MY_LAYER)` 、2回タップしたときは `TG(_MY_LAYER)` として機能するキーを設定します。 - -最初のステップは、あなたの `keymap.c` ファイルの最初のあたりに以下のコードを追加することです。 - -```c -// 必要な数のタップダンス状態のタイプを定義します -typedef enum { - TD_NONE, - TD_UNKNOWN, - TD_SINGLE_TAP, - TD_SINGLE_HOLD, - TD_DOUBLE_TAP -} td_state_t; - -typedef struct { - bool is_press_action; - td_state_t state; -} td_tap_t; - -enum { - QUOT_LAYR, // カスタムタップダンスキー。他のタップダンスキーはこの列挙型に追加します -}; - -// タップダンスキーで使われる関数を宣言します - -// 全てのタップダンスに関連する関数 -td_state_t cur_dance(qk_tap_dance_state_t *state); - -// 個別のタップダンスに関連する関数 -void ql_finished(qk_tap_dance_state_t *state, void *user_data); -void ql_reset(qk_tap_dance_state_t *state, void *user_data); -``` - -あなたの `keymap.c` ファイルの最後の方に以下のコードを追加します。 - -```c -// 現在のタップダンスの状態を決定します -td_state_t cur_dance(qk_tap_dance_state_t *state) { - if (state->count == 1) { - if (!state->pressed) return TD_SINGLE_TAP; - else return TD_SINGLE_HOLD; - } else if (state->count == 2) return TD_DOUBLE_TAP; - else return TD_UNKNOWN; -} - -// この例のタップダンスキーに関連付けられた "tap" 構造体を初期化します -static td_tap_t ql_tap_state = { - .is_press_action = true, - .state = TD_NONE -}; - -// タップダンスキーの動作をコントロールする関数 -void ql_finished(qk_tap_dance_state_t *state, void *user_data) { - ql_tap_state.state = cur_dance(state); - switch (ql_tap_state.state) { - case TD_SINGLE_TAP: - tap_code(KC_QUOT); - break; - case TD_SINGLE_HOLD: - layer_on(_MY_LAYER); - break; - case TD_DOUBLE_TAP: - // レイヤーが既にセットされているか確認します - if (layer_state_is(_MY_LAYER)) { - // レイヤーが既にセットされていたら、オフにします。 - layer_off(_MY_LAYER); - } else { - // レイヤーがセットされていなかったら、オンにします。 - layer_on(_MY_LAYER); - } - break; - } -} - -void ql_reset(qk_tap_dance_state_t *state, void *user_data) { - // キーを押し続けていて今離したら、レイヤーをオフに切り替えます。 - if (ql_tap_state.state == TD_SINGLE_HOLD) { - layer_off(_MY_LAYER); - } - ql_tap_state.state = TD_NONE; -} - -// タップダンスキーを機能に関連付けます -qk_tap_dance_action_t tap_dance_actions[] = { - [QUOT_LAYR] = ACTION_TAP_DANCE_FN_ADVANCED_TIME(NULL, ql_finished, ql_reset, 275) -}; -``` - -上記のコードは、前の例で使われたコードに似ています。注意する1つのポイントは、必要に応じてレイヤーを切り替えられるように、どのレイヤーがアクティブになっているかいつでも確認できる必要があることです。これを実現するために、引数で与えられた `layer` がアクティブなら `true` を返す `layer_state_is(layer)` を使います。 - -`cur_dance()` と `ql_tap_state` の使い方は、上の例と似ています。 - -`ql_finished` 関数における `case: TD_SINGLE_TAP` は、上の例と似ています。`TD_SINGLE_HOLD` の case では、`ql_reset()` と連動してタップダンスキーを押している間 `_MY_LAYER` に切り替わり、キーを離した時に `_MY_LAYER` から離れます。これは、`MO(_MY_LAYER)` に似ています。`TD_DOUBLE_TAP` の case では、`_MY_LAYER` がアクティブレイヤーかどうかを確認することによって動きます。そして、その結果に基づいてレイヤーのオン・オフをトグルします。これは `TG(_MY_LAYER)` に似ています。 - -`tap_dance_actions[]` は、上の例に似ています。 `ACTION_TAP_DANCE_FN_ADVANCED()` の代わりに `ACTION_TAP_DANCE_FN_ADVANCED_TIME()` を使ったことに注意してください。 -この理由は、私は、非タップダンスキーを使うにあたり `TAPPING_TERM` が短い(175ミリ秒以内)方が好きなのですが、タップダンスのアクションを確実に完了させるには短すぎるとわかったからです——そのため、ここでは時間を275ミリ秒に増やしています。 - -最後に、このタップダンスキーを動かすため、忘れずに `TD(QUOT_LAYR)` を `keymaps[]` に加えてください。 diff --git a/docs/ja/feature_thermal_printer.md b/docs/ja/feature_thermal_printer.md deleted file mode 100644 index 508123bd64e..00000000000 --- a/docs/ja/feature_thermal_printer.md +++ /dev/null @@ -1,15 +0,0 @@ -# 感熱式プリンタ - - - - - -## 感熱式プリンタのキーコード - -| キー | 説明 | -|-----------|----------------------------------------| -| `PRINT_ON` | ユーザが入力した全ての印刷を開始 | -| `PRINT_OFF` | ユーザが入力した全ての印刷を停止 | diff --git a/docs/ja/feature_unicode.md b/docs/ja/feature_unicode.md deleted file mode 100644 index 2158678f3c4..00000000000 --- a/docs/ja/feature_unicode.md +++ /dev/null @@ -1,266 +0,0 @@ -# Unicode サポート - - - -Unicode 文字はキーボードから直接入力することができます!ただし幾つかの制限があります。 - -キーボードで Unicode サポートを有効にするには、以下の事をする必要があります: - -1. サポートされている Unicode 実装のいずれかを選択します: [Basic Unicode](#basic-unicode)、[Unicode Map](#unicode-map)、[UCIS](#ucis)。 -2. オペレーティングシステムとセットアップに最適な[入力モード](#input-modes)を見つけます。 -3. コンフィギュレーションに適切な入力モード(または複数のモード)を[設定](#setting-the-input-mode)します。 -4. キーマップに Unicode キーコードを追加します。 - - -## 1. メソッド :id=methods - -QMK は、Unicode 入力を有効にし、キーマップに Unicode 文字を追加するための3つの異なる方法をサポートします。それぞれに柔軟性と使いやすさの点で長所と短所があります。あなたの使い方に最適なものを選んでください。 - -ほとんどのユーザには Basic Unicode で十分です。ただし、サポートされる文字の範囲が広い(絵文字、珍しい記号など)ことが必要な場合には、Unicode Map を使う必要があります。 - -
- -### 1.1. Basic Unicode :id=basic-unicode - -多少制限はありますが、最も使いやすい方法です。Unicode 文字をキーコードとしてキーマップ自体に格納するため、`0x7FFF` までのコードポイントのみをサポートします。これは、ほとんどの現代言語(東アジアを含む)の文字と記号を対象としますが、絵文字は対象外です。 - -以下を `rules.mk` に追加します: - -```make -UNICODE_ENABLE = yes -``` - -次に、`UC(c)` キーコードをキーマップに追加します。ここで、_c_ は目的の文字のコードポイントです (できれば16進数で最大4桁の長さが望ましいです)。例えば、`UC(0x40B)` は [Ћ](https://unicode-table.com/en/040B/) を出力し、`UC(0x30C4)` は [ツ](https://unicode-table.com/en/30C4) を出力します。 - -
- -### 1.2. Unicode Map :id=unicode-map - -このメソッドは、標準の文字の範囲に加えて、絵文字、古代文字、珍しい記号なども対象にしています。実際、可能な全てのコードポイント(`0x10FFFF`まで)がサポートされています。Unicode 文字は独立のマッピングテーブルに格納されています。キーマップファイルに `unicode_map` 配列を維持する必要があります。これには最大 16384 エントリを含めることができます。 - -以下を `rules.mk` に追加します: - -```make -UNICODEMAP_ENABLE = yes -``` - -次に、`X(i)` キーコードをキーマップに追加します。ここで _i_ はマッピングテーブル内の目的の文字のインデックスです。これは数値にできますが、インデックスを列挙型に保持し、名前でアクセスすることをお勧めします。 - -```c -enum unicode_names { - BANG, - IRONY, - SNEK -}; - -const uint32_t PROGMEM unicode_map[] = { - [BANG] = 0x203D, // ‽ - [IRONY] = 0x2E2E, // ⸮ - [SNEK] = 0x1F40D, // 🐍 -}; -``` - -そして、キーマップで `X(BANG)`、`X(SNEK)` などを使うことができます。 - -#### 小文字と大文字 - -文字は å や Å のような小文字と大文字のペアで提供されることがあります。これらの文字を入力しやすくするために、キーマップで `XP(i, j)` を使うことができます。ここで、_i_ および _j_ はそれぞれ小文字と大文字のマッピングテーブルのインデックスです。キーを押した時に、シフトを押したままか Caps Lock をオンにしている場合は、2番目(大文字)の文字が挿入されます; そうでなければ最初(小文字)バージョンが出力されます。 - -これは特殊文字がある国際レイアウトのためのキーマップを作成している時に最も役立ちます。別々のキーに文字の小文字および大文字バージョンを置く代わりに、`XP()` を使ってそれら両方を同じキーに持つことができます。これは Unicode キーを通常のアルファベットと混ぜるのに役立ちます。 - -キーコードのサイズの制約により、_i_ と _j_ はそれぞれ `unicode_map` の最初の128文字のうち1つだけを参照できます。別の言い方をすると、0 ≤ _i_ ≤ 127 かつ 0 ≤ _j_ ≤ 127 です。これはほとんどのユースケースで十分ですが、インデックス計算をカスタマイズしたい場合は、[`unicodemap_index()`](https://github.com/qmk/qmk_firmware/blob/71f640d47ee12c862c798e1f56392853c7b1c1a8/quantum/process_keycode/process_unicodemap.c#L36) 関数をオーバーライドすることができます。これにより、例えば Shift/Caps の代わりに Ctrl をチェックすることもできます。 - -
- -### 1.3. UCIS :id=ucis - -この方法も全ての可能なコードポイントをサポートします。Unicode Map の方法と同様に、キーマップファイル内にマッピングテーブルを保持する必要があります。ただし、この機能のための組み込みのキーコードはありません — この機能を起動するカスタムキーコードあるいは関数を作成する必要があります。 - -以下を `rules.mk` に追加します: - -```make -UCIS_ENABLE = yes -``` - -次に、キーマップファイルでこのようにテーブルを定義します: - -```c -const qk_ucis_symbol_t ucis_symbol_table[] = UCIS_TABLE( - UCIS_SYM("poop", 0x1F4A9), // 💩 - UCIS_SYM("rofl", 0x1F923), // 🤣 - UCIS_SYM("cuba", 0x1F1E8, 0x1F1FA), // 🇨🇺 - UCIS_SYM("look", 0x0CA0, 0x005F, 0x0CA0), // ಠ_ಠ -); -``` - -デフォルトでは、各テーブルエントリの長さは、最大3コードポイントです。この番号は `#define UCIS_MAX_CODE_POINTS n` を `config.h` ファイルに追加することで変更できます。 - -UCIS 入力を使うには、`qk_ucis_start()` を呼び出します。次に、文字のニーモニック ("rofl" など) を入力し、Space か Enter か Esc を押します。QMK は "rofl" テキストを消去し、笑っている絵文字を挿入するはずです。 - -#### カスタマイズ - -この機能をカスタマイズするためにキーマップで定義できる幾つかの関数があります。 - -* `void qk_ucis_start_user(void)` – これは "start" 関数を呼び出す時に実行され、フィードバックを提供するために使うことができます。デフォルトでは、キーボードの絵文字を入力します。 -* `void qk_ucis_success(uint8_t symbol_index)` – これは入力が何かに一致して完了した時に実行されます。デフォルトでは何もしません。 -* `void qk_ucis_symbol_fallback (void)` – これは入力が何にも一致しない時に実行されます。デフォルトでは、入力を Unicode コードとして試そうとします。 - -[`process_ucis.c`](https://github.com/qmk/qmk_firmware/blob/master/quantum/process_keycode/process_ucis.c) でこれらの関数のデフォルトの実装を見つけることができます。 - - -## 2. Input モード :id=input-modes - -QMK での Unicode の入力は、マクロのように、OS への一連の文字列を入力することで動作します。残念ながら、これが行われる方法はプラットフォームによって異なります。特に各プラットフォームでは Unicode 入力を引き起こすために、異なるキーの組み合わせが必要です。従って、対応する入力モードが QMK で設定されなければなりません。 - -以下の入力モードが利用可能です: - -* **`UC_MAC`**: macOS の組み込み Unicode 16進数入力。`0x10FFFF` までのコードポイント(全ての利用可能なコードポイント)をサポートします。 - - 有効にするには、_システム環境設定 > キーボード > 入力ソース_ に移動し、(_その他_ の下の) _Unicode 16進数入力_ をリストに追加し、次にメニューバーの入力ドロップダウンからそれをアクティブにします。 - デフォルトでは、このモードは Unicode 入力のために左 Option キー (`KC_LALT`) を使いますが、これは他のキーで [`UNICODE_KEY_MAC`](#input-key-configuration) を定義することで変更できます。 - - !> _Unicode 16進数入力_ 入力ソースの使用は、Option + 左矢印および Option + 右矢印 のような、幾つかの Option ベースのショートカットを無効にするかもしれません。 - - !> `UC_OSX` は `UC_MAC` の非推奨のエイリアスで、QMK の将来のバージョンで削除されます。全ての新しいキーマップは、`UC_MAC` を使うべきです。 - -* **`UC_LNX`**: Linux の組み込み IBus Unicode 入力。`0x10FFFF` までのコードポイント(全ての利用可能なコードポイント)をサポートします。 - - デフォルトで有効になっていて、IBus が有効になったディストリビューションのほとんどどれでも動作します。IBus が無い場合、このモードは GTK アプリ下で動作しますが、他の場所ではほとんど動作しません。 - デフォルトでは、このモードは Unicode 入力を開始するために Ctrl+Shift+U (`LCTL(LSFT(KC_U))`) を使いますが、これは他のキーコードで [`UNICODE_KEY_LNX`](#input-key-configuration) を定義することで変更できます。これは、Ctrl+Shift+U の挙動が Ctrl+Shift+E に統合された IBus バージョン 1.5.15 以上を必要とするかもしれません。 - -* **`UC_WIN`**: _(非推奨)_ Windows の組み込み16進数テンキー Unicode 入力。`0xFFFF` までのコードポイントをサポートします。 - - 有効にするには、`HKEY_CURRENT_USER\Control Panel\Input Method` の下に、`EnableHexNumpad` という名前の `REG_SZ` 型のレジストリキーを作成し、その値を `1` に設定します。これは、管理者権限でコマンドラインプロンプトから `reg add "HKCU\Control Panel\Input Method" -v EnableHexNumpad -t REG_SZ -d 1` を実行することでできます。その後再起動します。 - 信頼性と互換性の問題から、このモードはお勧めできません; 代わりに `UC_WINC` モードを使ってください。 - -* **`UC_BSD`**: _(未実装)_ BSD での Unicode 入力。現時点では実装されていません。BSD ユーザでサポートを追加したい場合は、[GitHub で issue を開いて](https://github.com/qmk/qmk_firmware/issues)ください。 - -* **`UC_WINC`**: [WinCompose](https://github.com/samhocevar/wincompose) を使った Windows Unicode 入力。v0.9.0 の時点で、`0x10FFFF` までのコードポイント(全ての利用可能なコードポイント)をサポートします。 - - 有効にするには、[最新のリリース](https://github.com/samhocevar/wincompose/releases/latest)をインストールします。インストールすると、起動時に WinCompose が自動的に実行されます。このモードはアプリがサポートする全てのバージョンの Windows で確実に動作します。 - デフォルトでは、このモードは Compose キーとして右 Alt (`KC_RALT`) を使いますが、これは WinCompose 設定と他のキーで [`UNICODE_KEY_WINC`](#input-key-configuration) を定義することで変更できます。 - - -## 3. 入力モードの設定 :id=setting-the-input-mode - -目的の入力モードを設定するには、以下の定義を `config.h` に追加します: - -```c -#define UNICODE_SELECTED_MODES UC_LNX -``` - -この例では、キーボードのデフォルトの入力モードを `UC_LNX` に設定します。これは、`UC_MAC` か `UC_WINC` か[上記](#input-modes)に列挙されている他のモードのいずれかに置き換えることができます。手動で別のモード([下記](#keycodes)を見てください)に切り替えない限り、キーボードは起動時に選択したモードを自動的に使います。 - -複数の入力モードを選択することもできます。これにより、`UC_MOD`/`UC_RMOD` キーコードを使ってそれらを簡単に切り替えることができます。 - -```c -#define UNICODE_SELECTED_MODES UC_MAC, UC_LNX, UC_WINC -``` - -値はカンマで区切られていることに注意してください。キーボードは最後に使われた入力モードを記憶し、次の電源投入時にそれを使い続けます。`config.h` に `#define UNICODE_CYCLE_PERSIST false` を追加することで、これを無効にして常にリストの最初のモードで開始するように強制できます。 - -#### キーコード - -以下のキーコードを使って、いつでも入力モードを切り替えることができます。これらをキーマップに追加すると、`UNICODE_SELECTED_MODES` に列挙されていないモードを含む特定の入力モードに素早く切り替えることができます。 - -| キーコード |エイリアス | 入力モード | 説明 | -|------------------------|-----------|--------------|--------------------------------------------------------------------| -| `UNICODE_MODE_FORWARD` | `UC_MOD` | リストの次へ | 選択したモードを切り替えます。Shift が押された場合は逆方向 | -| `UNICODE_MODE_REVERSE` | `UC_RMOD` | リストの前へ | 逆方向に選択したモードを切り替えます。Shift が押された場合は順方向 | -| `UNICODE_MODE_MAC` | `UC_M_MA` | `UC_MAC` | macOS 入力に切り替え | -| `UNICODE_MODE_LNX` | `UC_M_LN` | `UC_LNX` | Linux 入力に切り替え | -| `UNICODE_MODE_WIN` | `UC_M_WI` | `UC_WIN` | Windows 入力に切り替え | -| `UNICODE_MODE_BSD` | `UC_M_BS` | `UC_BSD` | BSD 入力に切り替え _(未実装)_ | -| `UNICODE_MODE_WINC` | `UC_M_WC` | `UC_WINC` | WinCompose を使う Windows 入力に切り替え | - -コード内で `set_unicode_input_mode(x)` を呼び出すことで、入力モードを切り替えることもできます。ここで、_x_ は上記の入力モード定数のいずれか (例えば、`UC_LNX`) です。 - -?> `matrix_init_user()` または同様の関数の中で `set_unicode_input_mode()` を呼び出すよりも、`UNICODE_SELECTED_MODES` を使うほうが望ましいです。Unicode システムとの統合性が高く、EEPROM への不要な書き込みを回避できるという利点があるからです。 - -#### オーディオフィードバック - -キーボードで[オーディオ機能](ja/feature_audio.md)を有効にした場合、上記のキーを押したときにメロディーを再生するように設定できます。そのようにして、入力モードを切り替えた時になんらかのオーディオフィードバックを得ることができます。 - -例えば、`config.h` ファイルに下記の定義を追加することができます: - -```c -#define UNICODE_SONG_MAC AUDIO_ON_SOUND -#define UNICODE_SONG_LNX UNICODE_LINUX -#define UNICODE_SONG_BSD TERMINAL_SOUND -#define UNICODE_SONG_WIN UNICODE_WINDOWS -#define UNICODE_SONG_WINC UNICODE_WINDOWS -``` - - -## 追加のカスタマイズ - -Unicode は大規模で多目的な機能のため、システムでより適切に動作するようにカスタマイズできるオプションが幾つかあります。 - -### 入力関数の開始と終了 - -プラットフォームで Unicode 入力を開始および終了する機能は、ローカルで上書きできます。可能な用途には、デフォルトキーを使用しない場合の入力モードの挙動のカスタマイズ、あるいは Unicode 入力への視覚/音声フィードバックの追加があります。 - -* `void unicode_input_start(void)` – これはプラットフォームに Unicode 入力モードの入力を指示する初期シーケンスを送信します。例えば、Windows では左 Alt キーの後に Num+ を押したままにし、Linux では `UNICODE_KEY_LNX` の組み合わせ(デフォルト: Ctrl+Shift+U) を押します。 -* `void unicode_input_finish(void)` – これは、例えば Space を押すか Alt キーを放すなどして、Unicode 入力モードを終了するために呼ばれます。 - -[`process_unicode_common.c`](https://github.com/qmk/qmk_firmware/blob/master/quantum/process_keycode/process_unicode_common.c) でこれらの関数のデフォルトの実装を見つけることができます。 - -### 入力キーの設定 - -`config.h` に対応する定義を追加することで、macOS、Linux、WinCompose で Unicode 入力を引き起こすために使われるキーをカスタマイズできます。デフォルト値はプラットフォームのデフォルト設定に一致するため、Unicode 入力が動作しない、あるいは(例えば左あるいは右 Alt を解放するために)異なるキーを使いたい場合以外はこれを変更する必要はありません。 - -| 定義 | 型 | 既定値 | 例 | -|--------------------|------------|--------------------|---------------------------------------------| -| `UNICODE_KEY_MAC` | `uint8_t` | `KC_LALT` | `#define UNICODE_KEY_MAC KC_RALT` | -| `UNICODE_KEY_LNX` | `uint16_t` | `LCTL(LSFT(KC_U))` | `#define UNICODE_KEY_LNX LCTL(LSFT(KC_E))` | -| `UNICODE_KEY_WINC` | `uint8_t` | `KC_RALT` | `#define UNICODE_KEY_WINC KC_RGUI` | - - -## Unicode 文字列の送信 - -QMK は、Unicode 入力をプログラムでホストに送信できるようにする幾つかの関数を提供します: - -### `send_unicode_string()` - -この関数は、`send_string()` によく似ていますが、UTF-8 文字を直接入力できます。選択された入力モードでもサポートされている場合は、全てのコードポイントをサポートします。`keymap.c` ファイルが UTF-8 エンコーディングを使ってフォーマットされていることを確認してください。 - -```c -send_unicode_string("(ノಠ痊ಠ)ノ彡┻━┻"); -``` - -使用例には、[Macros](ja/feature_macros.md) で説明されているように、キーが押された時に Unicode 文字列を送信することが含まれます。 - -## 追加の言語サポート - -`quantum/keymap_extras` には、様々な言語ファイルがあります — これらは Colemak または BÉPO のような代替レイアウトのファイルと同じように動作します。これらの言語ヘッダのいずれかを `#include` すると、その言語/国のレイアウトに固有のキーコードにアクセスできます。このようなキーコードは、2文字の国/言語コードの後に、アンダースコアとキーが対応する4文字の略語が続くことで定義されます。例えば、キーマップに `keymap_french.h` を含め、`FR_UGRV` を使うと、ネイティブのフランス語 AZERTY レイアウトを使うシステムで入力すると、`ù` が出力されます。 - -マシンで使うプライマリシステムレイアウトが US ANSI と異なる場合、これらの言語固有のキーコードを使うと、QMK キーマップが実際に画面に出力されるものとより一致するようになります。ただし、これらのキーコードは、内部の対応するデフォルトの US キーコードのエイリアスに過ぎず、キーボードで使われる HID プロトコル自体は本質的に US ANSI に基づいていることに注意してください。 - - -## Windows での国際文字 - -### AutoHotkey - -この方法はキーボード自体で Unicode サポートを必要としませんが、代わりにバックグラウンドで [AutoHotkey](https://autohotkey.com) が実行されていることを当てにします。 - -最初にプログラムで使われていないモディファイアの組み合わせを選択する必要があります。 -Ctrl+Alt+Win はあまり広く使われていないため、これに最適なはずです。 -mod-tab コンボ `LCAG_T` 用に定義されたマクロがあります。 -この mod-tab マクロをキーボードのキーに追加します。例えば: `LCAG_T(KC_TAB)`。 -これにより、キーを押してすぐ放すとキーはタブキーのように振る舞いますが、他のキーと一緒に使うとモディファイアに変わります。 - -AutoHotkey のデフォルトのスクリプトで、カスタムホットキーを定義できます。 - - <^ - -似たキーマップを複数のキーボードで使う場合、それらの間でコードを共有できるという利点が得られることがあります。`users/`に以下の構造でキーマップ(理想的には GitHub のユーザ名、``)と同じ名前の独自のフォルダを作成します: - -* `/users//` (パスに自動的に追加されます) - * `readme.md` (オプション、推奨) - * `rules.mk` (自動的に含まれます) - * `config.h` (自動的に含まれます) - * `.h` (オプション) - * `.c` (オプション) - * `cool_rgb_stuff.c` (オプション) - * `cool_rgb_stuff.h` (オプション) - - -以下のように、`` という名前のキーマップをビルドする時のみ、これが全て起きます: - - make planck: - -例えば、 - - make planck:jack - -は、`/users/jack/rules.mk` に加えて、パスに `/users/jack/` フォルダを含めます。 - -!> この `name` は必要に応じて[上書き](#override-default-userspace)することができます。 - -## `Rules.mk` - -`rules.mk` は自動的に処理される2つファイルのうちの1つです。これにより、コンパイル時に追加のソースファイル( `.c` など)を追加できます。 - -追加されるデフォルトのソースファイルとして `.c` を使うことを強くお勧めします。それを追加するために、以下のように `rules.mk` に SRC を追加する必要があります: - - SRC += .c - -追加のファイルも同じ方法で追加できます - ただし、``.c/.h という名前のファイルを最初に用意することをお勧めします。 - -ビルド時に `/users//rules.mk` ファイルはキーマップの `rules.mk` の_後_でインクルードされます。これにより、キーボードによっては利用できないことのある個々の QMK 機能を利用する機能をユーザスペース `rules.mk` に持つことができます。 - -例えば、RGB ライトをサポートする全てのキーボード間で RGB 制御機能を共有する場合、RGBLIGHT 機能が有効であればサポートを追加することができます: -```make -ifeq ($(strip $(RGBLIGHT_ENABLE)), yes) - # ここにファンシーな rgb 関数のソースを含める - SRC += cool_rgb_stuff.c -endif -``` - -別のやり方として、キーマップの `rules.mk` で `define RGB_ENABLE` と定義し、以下のようにユーザスペースの `rules.mk` で変数をチェックすることができます: -```make -ifdef RGB_ENABLE - # ここにファンシーな rgb 関数のソースを含める - SRC += cool_rgb_stuff.c -endif -``` - -### デフォルトのユーザスペースの上書き :id=override-default-userspace - -デフォルトでは、使用されるユーザスペース名はキーマップ名と同じです。状況によってはこれは望ましくありません。例えば、[レイアウト](ja/feature_layouts.md)機能を使う場合、異なるキーマップに同じ名前 (例えば、ANSI および ISO) を使うことができません。レイアウトに `mylayout-ansi` や `mylayout-iso` という名前を付け、以下の行をレイアウトの `rules.mk` に追加します: - -``` -USER_NAME := mylayout -``` - -これは、基板上に物理的に異なる機能を備えた、複数の異なるキーボード(RGBライトを備えたキーボード、オーディオを備えたキーボード、LEDの数が異なる、コントローラ上の異なるPINに接続されているなど)がある場合にも役立ちます。 - -## 設定オプション (`config.h`) - -さらに、ここにある `config.h` はキーマップフォルダ内の同名のファイルと同じように処理されます。これは `.h` ファイルとは別個に処理されます。 - -この理由は、`.h` は (`#define TAPPING_TERM 100` などのような)設定を追加する時には追加されず、`config.h` ファイル内の `` ファイルを含めるとコンパイルの問題を引き起こすからです。 - -!>`config.h` は[設定オプション](ja/config_options.md)のために使い、`.h` ファイルはユーザあるいは(レイヤーあるいはキーコードのための enum のような)キーマップ固有の設定のために使うべきです - - -## Readme (`readme.md`) - -作者情報 (あなたの名前、GitHub ユーザ名、eメール)およびオプションで[GPL 互換のライセンス](https://www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses)を含めてください。 - -以下をテンプレートとして使うことができます: -``` -Copyright @ - -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 . -``` - -年、名前、eメールおよび GitHub ユーザ名をあなたの情報に置き換えます。 - -さらに、コードを他の人に共有したい場合、ここはコードを文章化するのに適した場所です。 - -## 特定のキーマップをサポートする全てのキーボードをビルドする - -1つのコマンドで全てのキーマップのビルドを確認したいですか?以下で実行することができます: - - make all: - -例えば、 - - make all:jack - -これは、[_プルリクエスト_](https://github.com/qmk/qmk_firmware/pulls) を準備する時に全てが正常にコンパイルされることを確認したい場合に最適です。 - -## 例 - -簡単な例については、[`/users/_example/`](https://github.com/qmk/qmk_firmware/tree/master/users/_example) を調べてください。 -より複雑な例については、[`/users/drashna/`](https://github.com/qmk/qmk_firmware/tree/master/users/drashna) のユーザスペースを調べてください。 - - -### カスタマイズされた関数 :id=customized-functions - -QMK には、[`_quantum`、`_kb` および `_user` バージョン](ja/custom_quantum_functions.md#a-word-on-core-vs-keyboards-vs-keymap)を持つ使用可能な[関数](custom_quantum_functions.md)が山ほどあります。 ほとんどの場合、これらの関数のユーザバージョンを使う必要があります。しかし問題はそれらをユーザスペースで使う場合、キーマップで使うことができるバージョンが無いことです。 - -しかし、実際にはキーマップバージョンのサポートを追加し、ユーザスペースとキーマップの両方で使うことができます。 - - -例えば、`layer_state_set_user()` 関数を見てみましょう。全てのキーボードで [Tri Layer State](ja/ref_functions.md#olkb-tri-layers) 機能を有効にしながら、`keymap.c` ファイルで Tri Layer 機能を保持することができます。 - -`` ファイル内で、以下を追加する必要があります: -```c -__attribute__ ((weak)) -layer_state_t layer_state_set_keymap (layer_state_t state) { - return state; -} - -layer_state_t layer_state_set_user (layer_state_t state) { - state = update_tri_layer_state(state, 2, 3, 5); - return layer_state_set_keymap (state); -} -``` -`__attribute__ ((weak))` 部分は、コンパイラにこれが `keymap.c` 内のバージョンに置き換えられるプレースホルダ関数であることを伝えます。そうすれば、`keymap.c` に追加する必要はありませんが、追加しても関数が同じ名前を持つため競合することはありません。 - -ここでの `_keymap` 部分は重要では無く、`_quantum`、`_kb` あるいは `_user` は既に使われているため、それら以外のものである必要があります。`layer_state_set_mine`、`layer_state_set_fn` などを使うことができます。 - -[`users/drashna`](https://github.com/qmk/qmk_firmware/tree/master/users/drashna) 内の [`template.c`](https://github.com/qmk/qmk_firmware/blob/master/users/drashna/template.c) でこのリストと他の一般的な関数を見つけることができます。 - -### カスタム機能 - -ユーザスペース機能は膨大な数のキーボードをサポートすることができるため、特定の機能は有効にしたいが、他のキーボードでは有効にしたくないかもしれません。そして実際に自分のユーザスペースで有効あるいは無効にすることができる「機能」を作成することができます。 - -例えば、(スペースを節約するために)特定のキーボードでのみたくさんのマクロを利用したい場合、それらを `#ifdef MACROS_ENABLED` して「見えないように」してから、キーボードごとに有効にすることができます。これを行うには、以下を rules.mk に追加します。 -```make -ifeq ($(strip $(MACROS_ENABLED)), yes) - OPT_DEFS += -DMACROS_ENABLED -endif -``` -`OPT_DEFS` 設定は `MACROS_ENABLED` がキーボード用に定義されるようにし(名前の前に `-D` があることに注意してください)、c/h ファイルで状態をチェックするために `#ifdef MACROS_ENABLED` を使うことができ、それに基づいてそのコードを処理します。 - -次にキーマップの `rules.mk` に `MACROS_ENABLED = yes` を追加し、ユーザスペースでこの機能とコードを有効にします。 - -そして `process_record_user` 関数の中で、以下のようなことを行います: -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { -#ifdef MACROS_ENABLED - case MACRO1: - if (!record->event.pressed) { - SEND_STRING("This is macro 1!"); - } - break; - case MACRO2: - if (!record->event.pressed) { - SEND_STRING("This is macro 2!"); - } - break; -#endif - } - return true; -} -``` - - -### 結合マクロ - -全てのキーマップについてユーザスペースにマクロやそのほかの関数を統合したい場合は、そうすることができます。これは上記の[カスタマイズ関数](#customized-functions)の例に基づいています。これは異なるキーボード間で共有される大量のマクロを維持し、キーボード固有のマクロも可能です。 - -最初に、全ての `keymap.c` ファイルを調べ、代わりに `process_record_user` を `process_record_keymap` に置き換えます。この方法では、これらのキーボードでキーボード固有のコードを使用でき、カスタムの "global" キーコードも使うことができます。また、`SAFE_RANGE` を `NEW_SAFE_RANGE` に置き換えて、キーコードが重複しないようにすることもできます。 - -次に、全ての keymap.c ファイルに `#include ".h"` を追加します。これにより、各キーマップでそれらを再定義することなく新しいキーコードを使うことができます。 - -それが完了したら、必要なキーコードの定義を `.h` ファイルに設定します。例えば: -```c -#pragma once - -#include "quantum.h" -#include "action.h" -#include "version.h" - -// 全てを定義 -enum custom_keycodes { - KC_MAKE = SAFE_RANGE, - NEW_SAFE_RANGE // キーマップ固有のコードについては "NEW_SAFE_RANGE" を使用 -}; -``` - -ここで、`.c` ファイルを作成し、この内容をそれに追加します: - -```c -#include ".h" - -__attribute__ ((weak)) -bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - return true; -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case KC_MAKE: // ファームウェアをコンパイルし、キーボードのブートローダに基づく書き込みコマンドを追加します - if (!record->event.pressed) { - uint8_t temp_mod = get_mods(); - uint8_t temp_osm = get_oneshot_mods(); - clear_mods(); clear_oneshot_mods(); - SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP); - #ifndef FLASH_BOOTLOADER - if ((temp_mod | temp_osm) & MOD_MASK_SHIFT) - #endif - { - SEND_STRING(":flash"); - } - if ((temp_mod | temp_osm) & MOD_MASK_CTRL) { - SEND_STRING(" -j8 --output-sync"); - } - tap_code(KC_ENT); - set_mods(temp_mod); - } - break; - - } - return process_record_keymap(keycode, record); -} -``` - -(マクロパッドのような) Shift ボタンを持たないキーボードについては、ブートローダオプションを常に含める方法が必要です。これを行うには、以下をユーザスペースフォルダ内の `rules.mk` に追加します: - -```make -ifeq ($(strip $(FLASH_BOOTLOADER)), yes) - OPT_DEFS += -DFLASH_BOOTLOADER -endif -``` - -これは任意のキーマップで使うことができる新しい `KC_MAKE` キーコードを追加します。そして、このキーコードは、`make :` を出力するため、頻繁なコンパイルを簡単にします。そして、これは現在のキーボードの情報を出力するため、全てのキーボードとキーマップで動作します。そのため毎回これを入力する必要はありません。 - -また、Shift を押したままにすると書き込みの対象 (`:flash`) をコマンドに追加します。Control を押したままにすると、複数のファイルを一度に処理することでコンパイル時間を短縮する幾つかのコマンドを追加します。 - -そして Shift キーが無いキーボード、あるいは常に書き込みを試したいキーボードについては、キーマップの `rules.mk` に `FLASH_BOOTLOADER = yes` を追加することができます。 - -?> これはブートローダの設定に基づいて正しいユーティリティを使って新しくコンパイルされたファームウェアを自動的に書き込むはずです (あるいはデフォルトで HEX ファイルを生成するだけ)。ただし、これは全てのシステムで動作するわけではないことに注意してください。はっきり言うと、AVRDUDE は WSL では動作しません。そして、これは BootloadHID あるいは mdloader をサポートしません。 diff --git a/docs/ja/feature_wpm.md b/docs/ja/feature_wpm.md deleted file mode 100644 index 3cb5e58fcb0..00000000000 --- a/docs/ja/feature_wpm.md +++ /dev/null @@ -1,24 +0,0 @@ -# Word Per Minute (WPM) の計算 - - - -WPM 機能は、キーストローク間の時間から1分あたりの平均(移動平均)単語数を計算し、様々な用途で利用できるようにします。 - -`rules.mk` に以下を追加することで WPM システムを有効にします: - - WPM_ENABLE = yes - -ソフトシリアルを使っている分割キーボードについては、計算された WPM スコアがマスター側とスレーブ側で利用可能です。 - -## 公開関数 - -`uint8_t get_current_wpm(void);` -この関数は符号なし整数で現在の WPM を返します。 - - -## WPM 計算のためのカスタマイズ化されたキー - -デフォルトでは、WPM スコアは文字、空白、およびいくつかの句読点のみを含みます。WPM の計算に含むとみなす文字セットを変更したい場合は、`wpm_keycode_user(uint16_t keycode)` を実装し、計算に含めたい文字について true を返し、計算しない特定のキーコードに false を返すようにします。 diff --git a/docs/ja/flashing.md b/docs/ja/flashing.md deleted file mode 100644 index ce6646d4fec..00000000000 --- a/docs/ja/flashing.md +++ /dev/null @@ -1,247 +0,0 @@ -# 書き込みの手順とブートローダ情報 - - - -キーボードが使用するブートローダにはかなり多くの種類があり、ほぼ全てが異なる書き込みの方法を使います。幸いなことに、[QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) のようなプロジェクトは、あまり深く考える必要無しに様々なタイプと互換性を持つことを目指していますが、この文章では様々なタイプのブートローダとそれらを書き込むために利用可能な方法について説明します。 - -`rules.mk` の `BOOTLOADER` 変数で選択されたブートローダがある場合、QMK は .hex ファイルがデバイスに書き込むのに適切なサイズかどうかを自動的に計算し、合計サイズをバイト単位で(最大値とともに)出力します。 - -## DFU - -Atmel の DFU ブートローダはデフォルトで全ての atmega32u4 チップに搭載されており、PCB (旧 OLKB キーボード、Clueboard) に独自の IC を持つ多くのキーボードで使われています。一部のキーボードは、LUFA の DFU ブートローダ(または QMK のフォーク) (新しい OLKB キーボード)を使う場合もあり、そのハードウェアに固有の追加機能が追加されます。 - -DFU ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください(オプションとして代わりに `lufa-dfu` や `qmk-dfu` が使えます): - -```make -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu -``` - -互換性のあるフラッシャ: - -* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI) -* QMK の [dfu-programmer](https://github.com/dfu-programmer/dfu-programmer) / `:dfu` (推奨のコマンドライン) - -書き込み手順: - -1. `QK_BOOT` キーコードを押すか、RESET ボタンをタップします(または RST を GND にショートします)。 -2. OS がデバイスを検知するのを待ちます。 -3. メモリを消去します(自動的に実行されるかもしれません) -4. .hex ファイルを書き込みます -5. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません) - -あるいは: - - make ::dfu - -### QMK DFU - -QMK には LUFA DFU ブートローダのフォークがあり、ブートローダを終了してアプリケーションに戻る時に単純なマトリックススキャンを行うことができます。また、何かが起きた時に、LED を点滅したり、スピーカーでカチカチ音をたてたりします。これらの機能を有効にするには、`config.h` で以下のブロックを有効にします (ブートローダを終了するキーは、ここで定義された INPUT と OUTPUT に接続する必要があります): - - #define QMK_ESC_OUTPUT F1 // 通常 COL - #define QMK_ESC_INPUT D5 // 通常 ROW - #define QMK_LED E6 - #define QMK_SPEAKER C6 - -製造元と製品名は `config.h` から自動的に取得され、製品に「Bootloader」が追加されます。 - -このブートローダを生成するには、`bootloader` ターゲット、例えば `make planck/rev4:default:bootloader` を使います。 - -実稼働対応の .hex ファイル(アプリケーションおよびブートローダを含む)を生成するには、`production` ターゲット、例えば `make planck/rev4:default:production` を使います。 - -### DFU コマンド - -ファームウェアを DFU デバイスに書き込むために使用できる DFU コマンドがいくつかあります。 - -* `:dfu` - これが通常のオプションで、DFU デバイスが使用可能になるまで待機したのちファームウェアを書き込みます。5秒ごとに、DFU デバイスが存在するかチェックしています。 -* `:dfu-ee` - 通常の hex ファイルの代わりに `eep` ファイルを書き込みます。これを使用するのはまれです。 -* `:dfu-split-left` - デフォルトオプション (`:dfu`) と同様に、通常のファームウェアが書き込まれます。ただし、分割キーボードの「左側の」 EEPROM ファイルも書き込まれます。_これは、Elite C ベースの分割キーボードに最適です。_ -* `:dfu-split-right` - デフォルトオプション (`:dfu`) と同様に、通常のファームウェアが書き込まれます。ただし、分割キーボードの「右側の」 EEPROM ファイルも書き込まれます。_これは、Elite C ベースの分割キーボードに最適です。_ - -## Caterina - -Arduino ボードとそのクローンは [Caterina ブートローダ](https://github.com/arduino/ArduinoCore-avr/tree/master/bootloaders/caterina) (Pro Micro またはそのクローンで構築されたキーボード)を使用し、avr109 プロトコルを使って仮想シリアルを介して通信します。[A-Star](https://www.pololu.com/docs/0J61/9) のようなブートローダは Caterina に基づいています。 - -Caterina ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください: - -```make -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = caterina -``` - -互換性のあるフラッシャ: - -* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI) -* avr109 を使った [avrdude](https://www.nongnu.org/avrdude/) / `:avrdude` (推奨のコマンドライン) -* [AVRDUDESS](https://github.com/zkemble/AVRDUDESS) - -書き込み手順: - -1. `QK_BOOT` キーコードを押すか、RST をすばやく GND にショートします (入力後7秒で書き込みます) -2. OS がデバイスを検知するのを待ちます。 -3. .hex ファイルを書き込みます -4. デバイスが自動的にリセットされるのを待ちます - -あるいは - - make ::avrdude - - -### Caterina コマンド - -ファームウェアを DFU デバイスに書き込むために使用できる DFU コマンドがいくつかあります。 - -* `:avrdude` - これが通常のオプションで、Caterina デバイスが(新しい COM ポートを検出して)使用可能になるまで待機し、ファームウェアを書き込みます。 -* `:avrdude-loop` - これは `:avrdude` と同じコマンドを実行します。ただし書き込みが終了すると再び Caterina デバイスの書き込み待ちに戻ります。これは何台ものデバイスへ書き込むのに便利です。_Ctrl+C を押して、手動でこの繰り返しを終了させる必要があります。_ -* `:avrdude-split-left` - デフォルトオプション (`:avrdude`) と同様に通常のファームウェアが書き込まれます。ただし、分割キーボードの「左側の」 EEPROM ファイルも書き込まれます。_これは、Pro Micro ベースの分割キーボードに最適です。_ -* `:avrdude-split-right` - デフォルトオプション (`:avrdude`) と同様に通常のファームウェアが書き込まれます。ただし、分割キーボードの「右側の」 EEPROM ファイルも書き込まれます。_これは、Pro Micro ベースの分割キーボードに最適です。_ - - - -## Halfkay - -Halfkay は PJRC によって開発された超スリムなプロトコルであり、HID を使用し、全ての Teensys (つまり 2.0)に搭載されています。 - -Halfkay ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください: - -```make -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = halfkay -``` - -互換性のあるフラッシャ: - -* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI) -* [Teensy ローダー](https://www.pjrc.com/teensy/loader.html) -* [Teensy ローダーコマンドライン](https://www.pjrc.com/teensy/loader_cli.html) (推奨のコマンドライン) - -書き込み手順: - -1. `QK_BOOT` キーコードを押すか、RST をすばやく GND にショートします (入力後7秒で書き込みます) -2. OS がデバイスを検知するのを待ちます。 -3. .hex ファイルを書き込みます -4. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません) - -## USBasploader - -USBasploader は matrixstorm によって開発されたブートローダです。V-USB を実行する ATmega328P のような非 USB AVR チップで使われます。 - -USBasploader ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください: - -```make -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = USBasp -``` - -互換性のあるフラッシャ: - -* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI) -* `usbasp` プログラマを使った [avrdude](https://www.nongnu.org/avrdude/) -* [AVRDUDESS](https://github.com/zkemble/AVRDUDESS) - -書き込み手順: - -1. `QK_BOOT` キーコードを押すか、RST を GND にすばやくショートしながら、ブートピンを GND にショートしたままにします。 -2. OS がデバイスを検知するのを待ちます。 -3. .hex ファイルを書き込みます -4. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません) - -## BootloadHID - -BootloadHID は AVR マイクロコントローラ用の USB ブートローダです。アップローダーツールは Windows でカーネルレベルのドライバを必要としないため、DLL をインストールせずに実行することができます。 - -bootloadHID ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください: - -```make -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = bootloadHID -``` - -互換性のあるフラッシャ: - -* [HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash) (推奨の Windows GUI) -* [bootloadhid コマンドライン](https://www.obdev.at/products/vusb/bootloadhid.html) / QMK の `:BootloadHID` (推奨のコマンドライン) - -書き込み手順: - -1. 以下のいずれかの方法を使ってブートローダに入ります: - * `QK_BOOT` キーコードをタップします (全てのデバイスでは動作しないかもしれません) - * キーボードを接続しながらソルトキーを押し続けます (通常はキーボードの readme に書かれています) -2. OS がデバイスを検知するのを待ちます。 -3. .hex ファイルを書き込みます -4. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません) - -あるいは: - - make ::bootloadHID - -## STM32 - -全ての STM32 チップには、変更も削除もできない工場出荷時のブートローダがプリロードされています。一部の STM32 チップには USB プログラミングが付属していないブートローダがありますが(例えば STM32F103)、プロセスは同じです。 - -現時点では、STM32 の `rules.mk` には、`BOOTLOADER` 変数は不要です。 - -互換性のあるフラッシャ: - -* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI) -* [dfu-util](https://github.com/Stefan-Schmidt/dfu-util) / `:dfu-util` (推奨のコマンドライン) - -書き込み手順: - -1. 以下のいずれかの方法を使ってブートローダに入ります: - * `QK_BOOT` キーコードをタップします (STM32F042 デバイスでは動作しないかもしれません) - * リセット回路が存在する場合、RESET ボタンをタップします - * それ以外の場合は、(BOOT0 ボタンあるいはブリッジ経由で)BOOT0 を VCC にブリッジし、(REEST ボタンあるいはブリッジ経由で)RESET を GND にショートし、BOOT0 ブリッジを放す必要があります。 -2. OS がデバイスを検知するのを待ちます。 -3. .bin ファイルを書き込みます - * DFU 署名に関する警告が表示されます; 無視してください -4. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません) - * コマンドラインからビルドする場合(例えば、`make planck/rev6:default:dfu-util`)、`rules.mk` の中で `:leave` が `DFU_ARGS` 変数に渡されるようにしてください (例えば、`DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave`)。そうすれば、書き込みの後でデバイスがリセットされます - -### STM32 コマンド - -ファームウェアを STM32 デバイスに書き込むために使用できる DFU コマンドがいくつかあります。 - -* `:dfu-util` - STM32 デバイスに書き込むためのデフォルトコマンドで、STM32 ブートローダデバイスが見つかるまで待機します。 -* `:dfu-util-split-left` - デフォルトのオプション (`:dfu-util`) と同様に、通常のファームウェアが書き込まれます。ただし、分割キーボードの「左側の」 EEPROM の設定も行われます。 -* `:dfu-util-split-right` - デフォルトのオプション (`:dfu-util`) と同様に、通常のファームウェアが書き込まれます。ただし、分割キーボードの「右側の」 EEPROM の設定も行われます。 -* `:st-link-cli` - dfu-util ではなく、ST-LINK の CLI ユーティリティを介してファームウェアを書き込めます。 -* `:st-flash` - dfu-util ではなく、[STLink Tools](https://github.com/stlink-org/stlink) の `st-flash` ユーティリティを介してファームウェアを書き込めます。 diff --git a/docs/ja/flashing_bootloadhid.md b/docs/ja/flashing_bootloadhid.md deleted file mode 100644 index 5c67bd5f293..00000000000 --- a/docs/ja/flashing_bootloadhid.md +++ /dev/null @@ -1,75 +0,0 @@ -# BootloadHID の書き込み手順とブートローダの情報 - - - -ps2avr(GB) キーボードは ATmega32A マイクロコントローラを使い、異なるブートローダを使います。それは通常の QMK の方法を使って書き込むことができません。 - -一般的な書き込みシーケンス: - -1. 以下のいずれかの方法を使ってブートローダに入ります: - * `QK_BOOT` キーコードをタップします (全てのデバイスでは動作しないかもしれません) - * ソルトキーを押し続けながらキーボードを接続します (通常はキーボードの readme に書かれています) -2. OS がデバイスを検知するのを待ちます。 -3. .hex ファイルを書き込みます -4. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません) - -## bootloadHID の書き込みターゲット - -?> [こちら](ja/newbs_getting_started.md)で詳しく説明されている QMK インストールスクリプトを使うと、必要な bootloadHID ツールが自動的にインストールされます。 - -コマンドライン経由で書き込むには、以下のコマンドを実行してターゲット `:bootloadHID` を使います: - - make ::bootloadHID - -## GUI 書き込み - -### Windows -1. [HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash) をダウンロードします。 -2. キーボードをリセットします。 -3. 設定された VendorID が `16c0` で、ProductID が `05df` であることを確認します -4. `Find Device` ボタンを押し、キーボードが見つかることを確認します。 -5. `Open .hex File` ボタンを押し、作成した `.hex` ファイルを見つけます。 -6. `Flash Device` ボタンを押し、処理が完了するまで待ちます。 - -## コマンドライン書き込み - -1. キーボードをリセットします。 -2. `bootloadHID -r` に続けて `.hex` ファイルへのパスを入力し、キーボードに書き込みます。 - -### Windows 手動インストール -MSYS2の場合: -1. https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz から BootloadHID ファームウェアパッケージをダウンロードします。 -2. 互換性のあるツール、例えば 7-Zip を使って内容を抽出します。 -3. 解凍された書庫から MSYS2 インストール先、通常 `C:\msys64\usr\bin` に `commandline/bootloadHID.exe` をコピーして、MSYS パスに追加します。 - -ネイティブの Windows 書き込みの場合、MSYS2 環境の外部で `bootloadHID.exe` を使うことができます。 - -### Linux 手動インストール -1. libusb development の依存関係をインストールします: - ```bash - # これは OS に依存します - Debian については以下で動作します -sudo apt-get install libusb-dev - ``` -2. BootloadHID ファームウェアパッケージをダウンロードします: - ``` - wget https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz -O - | tar -xz -C /tmp - ``` -3. bootloadHID 実行可能ファイルをビルドします: - ``` - cd /tmp/bootloadHID.2012-12-08/commandline/ -make -sudo cp bootloadHID /usr/local/bin - ``` - -### MacOS 手動インストール -1. 以下を入力して Homebrew をインストールします: - ``` - /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" - ``` -2. 以下のパッケージをインストールします: - ``` - brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb - ``` diff --git a/docs/ja/getting_started_docker.md b/docs/ja/getting_started_docker.md deleted file mode 100644 index ceaebb01792..00000000000 --- a/docs/ja/getting_started_docker.md +++ /dev/null @@ -1,60 +0,0 @@ -# Docker クイックスタート - - - -このプロジェクトは、プライマリオペレーティングシステムに大きな変更を加えることなくキーボードの新しいファームウェアを非常に簡単に構築することができる Docker ワークフローを含みます。これは、あなたがプロジェクトをクローンしビルドを実行した時に、他の人とまったく同じ環境と QMK ビルド基盤を持つことも保証します。これにより、人々はあなたが遭遇した問題の解決をより簡単に行えるようになります。 - -## 必要事項 - -主な前提条件は動作する `docker` または `podman` がインストールされていることです。 -* [Docker CE](https://docs.docker.com/install/#supported-platforms) -* [Podman](https://podman.io/getting-started/installation) - -## 使い方 - -(サブモジュールを含む) QMK のレポジトリのローカルコピーを取得する: - -```bash -git clone --recurse-submodules https://github.com/qmk/qmk_firmware.git -cd qmk_firmware -``` - -キーマップをビルドするために以下のコマンドを実行します: -```bash -util/docker_build.sh : -# 例えば: util/docker_build.sh planck/rev6:default -``` - -これは目的のキーボード/キーマップをコンパイルし、結果として書き込み用に `.hex` あるいは `.bin` ファイルを QMK ディレクトリの中に残します。`:keymap` が省略された場合は全てのキーマップが使われます。パラメータの形式は、`make` を使ってビルドする時と同じであることに注意してください。 - -`target` を指定して Docker から直接キーボードをビルドし、_かつ_ 書き込むためのサポートもあります。 - -```bash -util/docker_build.sh keyboard:keymap:target -# 例えば: util/docker_build.sh planck/rev6:default:flash -``` - -スクリプトをパラメータ無しで開始することもできます。この場合、1つずつビルドパラメータを入力するように求められます。これが使いやすいと思うかもしれません: - -```bash -util/docker_build.sh -# パラメータを入力として読み込みます (空白にすると全てのキーボード/キーマップ) -``` - -`RUNTIME` 環境変数にコンテナランタイム名やパスを設定することで、使用したいコンテナランタイムを手動で設定できます。 -デフォルトでは docker や podman は自動的に検出され、podman より docker が優先されます。 - -```bash -RUNTIME="podman" util/docker_build.sh keyboard:keymap:target -``` - -## FAQ - -### なぜ Windows/macOS 上で書き込めないのですか? - -Windows と macOS では、実行するために [Docker Machine](http://gw.tnode.com/docker/docker-machine-with-usb-support-on-windows-macos/) が必要です。これはセットアップが面倒なので、お勧めではありません: 代わりに [QMK Toolbox](https://github.com/qmk/qmk_toolbox) を使ってください。 - -!> Docker for Windows は [Hyper-V](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v) を有効にする必要があります。これは、Windows 7、Windows 8 および **Windows 10 Home** のような Hyper-V を搭載していない Windows のバージョンでは機能しないことを意味します。 diff --git a/docs/ja/getting_started_github.md b/docs/ja/getting_started_github.md deleted file mode 100644 index 64070114886..00000000000 --- a/docs/ja/getting_started_github.md +++ /dev/null @@ -1,69 +0,0 @@ -# QMK で GitHub を使う方法 - - - -GitHub は慣れていない人には少し注意が必要です - このガイドは、QMK におけるフォーク、クローン、プルリクエストのサブミットの各ステップについて説明します。 - -?> このガイドでは、あなたがコマンドラインでの実行にある程度慣れており、システムに git がインストールされていることを前提にしています。 - -[QMK GitHub ページ](https://github.com/qmk/qmk_firmware)を開くと、右上に "Fork" というボタンが見えます: - -![GitHub でのフォーク](https://i.imgur.com/8Toomz4.jpg) - -あなたが組織の一員である場合は、どのアカウントにフォークするかを選択する必要があります。ほとんどの場合、あなたの個人のアカウントにフォークしたいでしょう。フォークが完了したら(しばらく時間が掛かる場合があります)、"Clone or Download" ボタンをクリックします: - -![GitHub からダウンロード](https://i.imgur.com/N1NYcSz.jpg) - -必ず "HTTPS" を選択し、リンクを選択してコピーします: - -![HTTPS リンク](https://i.imgur.com/eGO0ohO.jpg) - -ここから、`git clone --recurse-submodules ` をコマンドラインに入力し、リンクを貼り付けます: - -``` -user@computer:~$ git clone --recurse-submodules https://github.com/whoeveryouare/qmk_firmware.git -Cloning into 'qmk_firmware'... -remote: Enumerating objects: 9, done. -remote: Counting objects: 100% (9/9), done. -remote: Compressing objects: 100% (5/5), done. -remote: Total 183883 (delta 5), reused 4 (delta 4), pack-reused 183874 -Receiving objects: 100% (183883/183883), 132.90 MiB | 9.57 MiB/s, done. -Resolving deltas: 100% (119972/119972), done. -... -Submodule path 'lib/chibios': checked out '587968d6cbc2b0e1c7147540872f2a67e59ca18b' -Submodule path 'lib/chibios-contrib': checked out 'ede48346eee4b8d6847c19bc01420bee76a5e486' -Submodule path 'lib/googletest': checked out 'ec44c6c1675c25b9827aacd08c02433cccde7780' -Submodule path 'lib/lufa': checked out 'ce10f7642b0459e409839b23cc91498945119b4d' -``` - -ローカルマシンに QMK のフォークができるので、キーマップの追加、コンパイル、キーボードへの書き込みができます。変更に満足したら、以下のようにそれらをフォークへ追加、コミットおよびプッシュすることができます: - -``` -user@computer:~$ git add . -user@computer:~$ git commit -m "adding my keymap" -[master cccb1608] adding my keymap - 1 file changed, 1 insertion(+) - create mode 100644 keyboards/planck/keymaps/mine/keymap.c -user@computer:~$ git push -Counting objects: 1, done. -Delta compression using up to 4 threads. -Compressing objects: 100% (1/1), done. -Writing objects: 100% (1/1), 1.64 KiB | 0 bytes/s, done. -Total 1 (delta 1), reused 0 (delta 0) -remote: Resolving deltas: 100% (1/1), completed with 1 local objects. -To https://github.com/whoeveryouare/qmk_firmware.git - + 20043e64...7da94ac5 master -> master -``` - -あなたの変更は今では GitHub 上のフォークにあります - フォーク (`https://github.com//qmk_firmware`)に戻ると、"New Pull Request" ボタンをクリックすることで新しいプルリクエストを作成することができます: - -![New Pull Request](https://i.imgur.com/DxMHpJ8.jpg) - -ここでは、コミットした内容を正確に確認することができます - 全て良いように見える場合は、"Create Pull Request" をクリックすることで最終的に承認することができます: - -![Create Pull Request](https://i.imgur.com/Ojydlaj.jpg) - -サブミットの後で、私たちはあなたの変更について話し、変更を依頼し、最終的にそれを受け入れるでしょう!QMK に貢献してくれてありがとう :) diff --git a/docs/ja/getting_started_introduction.md b/docs/ja/getting_started_introduction.md deleted file mode 100644 index a55391e0a1c..00000000000 --- a/docs/ja/getting_started_introduction.md +++ /dev/null @@ -1,65 +0,0 @@ -# はじめに - - - -このページでは、QMK プロジェクトで作業するために知っておくべき基本的な情報について説明しようと思います。Unix シェルの操作に精通していることを前提としていますが、C について、または make を使ったコンパイルについて精通しているとは想定していません。 - -## 基本的な QMK の構造 - -QMK は [Jun Wako](https://github.com/tmk) の [tmk_keyboard](https://github.com/tmk/tmk_keyboard) プロジェクトのフォークです。変更された元の TMK コードは、`tmk_core` フォルダで見つけることができます。プロジェクトへの QMK の追加は、`quantum` フォルダで見つけることができます。キーボードプロジェクトは `handwired` および `keyboard` フォルダで見つけることができます。 - -### ユーザスペースの構造 - -`users` フォルダ内は各ユーザのためのディレクトリです。これはユーザがキーボード間で使うかもしれないコードを置くためのフォルダです。詳細は[ユーザスペース機能](ja/feature_userspace.md) のドキュメントを見てください。 - -### キーボードプロジェクトの構造 - -`keyboards` フォルダ、そのサブフォルダ `handwired`、ベンダと製品のサブディレクトリ (例えば、`clueboard`) の中には、各キーボードプロジェクトのためのディレクトリ (例えば `qmk_firmware/keyboards/clueboard/2x1800`) があります。その中には、以下の構造があります: - -* `keymaps/`: ビルドできる様々なキーマップ -* `rules.mk`: デフォルトの "make" オプションを設定するファイル。このファイルを直接編集しないでください。代わりにキーマップ固有の `rules.mk` を使ってください。 -* `config.h`: デフォルトのコンパイル時のオプションを設定するファイル。このファイルを直接編集しないでください。代わりにキーマップ固有の `config.h` を使ってください。 -* `info.json`: QMK Configurator のためのレイアウトの設定に使われるファイル。詳細は [Configurator サポート](ja/reference_configurator_support.md)を見てください。 -* `readme.md`: キーボードの簡単な概要 -* `.h`: このファイルは、キーボードのスイッチマトリックスに対してキーボードレイアウトが定義されるファイルです。 -* `.c`: このファイルには、キーボードのためのカスタムコードがあります。 - -プロジェクトの構造についての詳細は、[QMK キーボードガイドライン](ja/hardware_keyboard_guidelines.md)を見てください。 - -### キーマップ構造 - -全てのキーマップフォルダには、以下のファイルがあります。`keymap.c` だけが必須で、残りのファイルが見つからない場合は、デフォルトのオプションが選択されます。 - -* `config.h`: キーマップを設定するためのオプション -* `keymap.c`: 全てのキーマップコード。必須 -* `rules.mk`: 有効になっている QMK の機能 -* `readme.md`: キーマップの説明。他の人が使う方法および機能の説明。imgur のようなサービスに画像をアップロードしてください。 - -# `config.h` ファイル - -3つの `config.h` の場所が考えられます: - -* キーボード (`/keyboards//config.h`) -* ユーザスペース (`/users//config.h`) -* キーマップ (`/keyboards//keymaps//config.h`) - -ビルドシステムは自動的に上の順に config ファイルを取得します。前の `config.h` で設定された設定を上書きしたい場合は、変更したい設定の準備のために最初に定型コードを置く必要があります。 - -``` -#pragma once -``` - -次に、前の `config.h` ファイルの設定を上書きするために、設定を `#undef` し再び `#define` する必要があります。 - -定型コードと設定は、以下のようになります: - -``` -#pragma once - -// ここに上書きします! -#undef MY_SETTING -#define MY_SETTING 4 -``` diff --git a/docs/ja/getting_started_make_guide.md b/docs/ja/getting_started_make_guide.md deleted file mode 100644 index 07d7f0597a4..00000000000 --- a/docs/ja/getting_started_make_guide.md +++ /dev/null @@ -1,161 +0,0 @@ -# より詳細な `make` 手順 - - - -`make` コマンドの完全な構文は `::` です: - -* `` はキーボードのパスです。例えば、`planck` - * 全てのキーボードをコンパイルするには `all` を使います。 - * リビジョンを選択してコンパイルするためのパスを指定します。例えば `planck/rev4` あるいは `planck/rev3` - * キーボードにフォルダが無い場合は、省略することができます - * デフォルトのフォルダをコンパイルする場合は、省略することができます -* `` はキーマップの名前です。例えば、`algernon` - * 全てのキーマップをコンパイルするには `all` を使います。 -* `` の詳細は以下で説明します。 - -`` は以下を意味します -* target が指定されない場合は、以下の `all` と同じです -* `all` は指定されたキーボード/リビジョン/キーマップの可能な全ての組み合わせのコンパイルを行います。例えば、`make planck/rev4:default` は1つの .hex を生成しますが、`make planck/rev4:all` は planck で利用可能な全てのキーマップについて hex を生成します。 -* `flash`、`dfu`、`teensy`、`avrdude`、`dfu-util`、`bootloadHID` はファームウェアをコンパイルし、キーボードにアップロードします。コンパイルが失敗すると、何もアップロードされません。使用するプログラマはキーボードに依存します。ほとんどのキーボードでは `dfu` ですが、ChibiOS キーボードについては `dfu-util` 、標準的な Teensy については `teensy` を使います。キーボードに使うコマンドを見つけるには、キーボード固有の readme をチェックしてください。 - 利用可能なブートローダの詳細は[ファームウェアの書き込み](ja/flashing.md)ガイドを参照してください。 - * **Note**: 一部のオペレーティングシステムでは、これらのコマンドが機能するためには特権アクセスが必要です。これは、root アクセスなしでこれらにアクセスするために [`udev ルール`](ja/faq_build.md#linux-udev-rules) を設定するか、あるいは root アクセスでコマンドを実行する (`sudo make planck/rev4:default:flash`) 必要があるかもしれないことを意味します。 -* `clean` は、全てをゼロからビルドするためにビルド出力フォルダを掃除します。説明できない問題がある場合は、通常のコンパイルの前にこれを実行してください。 -* `distclean` は、.hex ファイルと .bin ファイルを削除します。 - -次のターゲットは開発者向けです: - -* `show_path` ソースとオブジェクトファイルのパスを表示します。 -* `dump_vars` makefile 変数をダンプします。 -* `objs-size` 個々のオブジェクトファイルのサイズを表示します。 -* `show_build_options` 'rules.mk' のオプションセットを表示します。 -* `check-md5` 生成されたバイナリファイルの md5 チェックサムを表示します。 - -make コマンドの最後、つまり target の後に追加のオプションを追加することもできます - -* `make COLOR=false` - カラー出力をオフ -* `make SILENT=true` - エラー/警告以外の出力をオフ -* `make VERBOSE=true` - 全ての gcc のものを出力 (デバッグする必要が無い限り面白くありません) -* `make VERBOSE_LD_CMD=yes` - -v オプションを指定して ld コマンドを実行します。 -* `make VERBOSE_AS_CMD=yes` - -v オプションを指定して as コマンドを実行します。 -* `make VERBOSE_C_CMD=` - 指定された C ソースファイルをコンパイルするときに -v オプションを追加します。 -* `make DUMP_C_MACROS=` - 指定された C ソースファイルをコンパイルするときにプリプロセッサマクロをダンプします。 -* `make DUMP_C_MACROS= > ` - 指定された C ソースファイルをコンパイルするときにプリプロセッサマクロを `` にダンプします。 -* `make VERBOSE_C_INCLUDE=` - 指定された C ソースファイルをコンパイルするときにインクルードされるファイル名をダンプします。 -* `make VERBOSE_C_INCLUDE= 2> ` - 指定された C ソースファイルをコンパイルするときにインクルードされるファイル名を `` にダンプします。 - -make コマンド自体にもいくつかの追加オプションがあります。詳細は `make --help` を入力してください。最も有用なのはおそらく `-jx` です。これは複数の CPU を使ってコンパイルしたいことを指定し、`x` は使用したい CPU の数を表します。設定すると、特に多くのキーボード/キーマップをコンパイルしている場合は、コンパイル時間を大幅に短縮することができます。通常は、コンパイル中に他の作業を行うための余裕をもたせるために、持っている CPU の数より1つ少ない値に設定します。全てのオペレーティングシステムと make バージョンがオプションをサポートしているわけではないことに注意してください。 - -コマンドの例を幾つか示します - -* `make all:all` は、全てをビルドします (全てのキーボードフォルダ、全てのキーマップ)。`root` から単に `make` を実行すると、これを実行します。 -* `make ergodox_infinity:algernon:clean` は、Ergodox Infinity キーボードのビルド出力を掃除します。 -* `make planck/rev4:default:flash COLOR=false` カラー出力なしでキーマップをビルドしアップロードします。 - -## `rules.mk` オプション - -無効にするにはこれらの変数を `no` に設定します。有効にするには `yes` に設定します。 - -`BOOTMAGIC_ENABLE` - -これにより、1つのキーとソルトキー(デフォルトではスペース)を押し続けることで、電力が失われても持続する様々な EEPROM 設定へアクセスできます。誤って設定が変更されることが多く、デバッグするのが難しい混乱した結果を生成するため、これを無効にしておくことをお勧めします。ヘルプセッションで発生する、より一般的な問題の1つです。 - -`MOUSEKEY_ENABLE` - -これにより、キーコード/カスタム関数を介して、カーソルの動きとクリックを制御することができます。 - -`EXTRAKEY_ENABLE` - -これにより、システムとオーディオ制御キーコードを使うことができます。 - -`CONSOLE_ENABLE` - -これにより、[`hid_listen`](https://www.pjrc.com/teensy/hid_listen.html) を使って読むことができるメッセージを出力することができます。 - -デフォルトで、全てのデバッグ( *dprint* ) 出力 ( *print*、*xprintf* )、およびユーザ出力 ( *uprint* ) メッセージが有効になります。これにより、フラッシュメモリの大部分が消費され、キーボードの .hex ファイルが大きすぎてプログラムできなくなるかもしれません。 - -デバッグメッセージ( *dprint* ) を無効にし、.hex ファイルのサイズを小さくするには、`config.h` に `#define NO_DEBUG` を含めます。 - -出力メッセージ( *print*、*xprintf* )とユーザ出力( *uprint* ) を無効にし、.hex のファイルサイズを小さくするには、`config.h` に `#define NO_PRINT` を含めます。 - -出力メッセージ ( *print*、*xprintf* ) を無効にし、ユーザメッセージ ( *uprint* )を**そのままにする**には、`config.h` に `#define USER_PRINT` を含めます(この場合は、`#define NO_PRINT` も含めないでください)。 - -テキストを見るには、`hid_listen` を開き、出力メッセージを見るのを楽しんでください。 - -**注意:** キーマップコード以外の *uprint* メッセージを含めないでください。QMK システムフレームワーク内で使うべきではありません。さもないと、他の人の .hex ファイルが肥大化します。 - -`COMMAND_ENABLE` - -これはマジックコマンドを有効にし、通常はデフォルトのマジックキーの組み合わせ `LSHIFT+RSHIFT+KEY` で起動されます。マジックコマンドは、デバッグメッセージ (`MAGIC+D`) の有効化や NKRO の一時的な切り替え (`MAGIC+N`) を含みます。 - -`SLEEP_LED_ENABLE` - -コンピュータがスリープの間に LED がブレスできるようにします。ここでは Timer1 が使われます。この機能は大部分が未使用でテストされておらず、更新もしくは抽象化が必要です。 - -`NKRO_ENABLE` - -これにより、キーボードはホスト OS に最大 248 個のキーが同時に押されていることを伝えることができます (NKRO 無しのデフォルトは 6 です)。NKRO は、`NKRO_ENABLE` が設定されていたとしても、デフォルトではオフです。config.h に `#define FORCE_NKRO` を追加するか、`MAGIC_TOGGLE_NKRO` をキーにバインドしてキーを押すことで、NKRO を強制することができます。 - -`BACKLIGHT_ENABLE` - -これはスイッチ内の LED のバックライトを有効にします。`config.h` 内に以下を入れることでバックライトピンを指定することができます: - - #define BACKLIGHT_PIN B7 - -`MIDI_ENABLE` - -キーボードで MIDI の送受信を有効にします。MIDI 送信モードに入るためにキーコード `MI_ON` を使うことができ、オフにするために `MI_OFF` を使うことができます。これはほとんどテストされていない機能ですが、詳細については `quantum/quantum.c` ファイルで見つけることができます。 - -`UNICODE_ENABLE` - -これによりキーマップで `UC()` を使って Unicode 文字を送信することができます。`0x7FFF` までのコードポイントがサポートされます。これはほとんどの現代言語の文字と記号を対象にしますが、絵文字は対象外です。 - -`UNICODEMAP_ENABLE` - -これによりキーマップで `X()` を使って Unicode 文字を送信することができます。キーマップファイル内にマッピングテーブルを保持する必要があります。可能な全てのコードポイント( `0x10FFFF` まで)がサポートされます。 - -`UCIS_ENABLE` - -これにより、送信したい文字に対応するニーモニックを入力することで Unicode 文字を送信することができます。キーマップファイル内にマッピングテーブルを保持する必要があります。可能な全てのコードポイント( `0x10FFFF` まで)がサポートされます。 - -詳細と制限については、[Unicode ページ](ja/feature_unicode.md)を見てください。 - -`AUDIO_ENABLE` - -C6 ピン(抽象化が必要)でオーディオ出力できます。詳細は[オーディオページ](ja/feature_audio.md)を見てください。 - -`VARIABLE_TRACE` - -これを使って変数の値の変更をデバッグします。詳細についてはユニットテストのページの[変数のトレース](ja/unit_testing.md#tracing-variables)のセクションを見てください。 - -`API_SYSEX_ENABLE` - -これにより Quantum SYSEX API を使って文字列を(どこかに?)送信することができます - -`KEY_LOCK_ENABLE` - -これは[キーロック](ja/feature_key_lock.md)を有効にします。 - -`SPLIT_KEYBOARD` - -分割キーボード (let's split や bakingpy's boards のようなデュアル MCU) のサポートを有効にし、quantum/split_common にある全ての必要なファイルをインクルードします - -`SPLIT_TRANSPORT` - -ARM ベースの分割キーボード用の標準分割通信ドライバはまだ無いため、これらのために `SPLIT_TRANSPORT = custom` を使わなければなりません。カスタムの実装が使われるようにすることで、標準の分割キーボード通信コード(AVR 固有)が含まれないようにします。 - -`CUSTOM_MATRIX` - -デフォルトのマトリックス走査ルーチンを独自のコードで置き換えます。詳細については、[カスタムマトリックスページ](ja/custom_matrix.md)を見てください。 - -`DEBOUNCE_TYPE` - -デフォルトのキーデバウンスルーチンを別のものに置き換えます。`custom` の場合、独自の実装を提供する必要があります。 - -## キーマップごとに Makefile オプションをカスタマイズ - -あなたのキーマップディレクトリに `rules.mk` というファイルがある場合、そのファイルで設定した全てのオプションは、あなたのキーボードの他の `rules.mk` オプションよりも優先されます。 - -あなたのキーボードの `rules.mk` に `BACKLIGHT_ENABLE = yes` があるとします。あなたの特定のキーボードでバックライトが無いようにするには、`rules.mk` というファイルを作成し、`BACKLIGHT_ENABLE = no` を指定します。 diff --git a/docs/ja/gpio_control.md b/docs/ja/gpio_control.md deleted file mode 100644 index 7bece3e0c7c..00000000000 --- a/docs/ja/gpio_control.md +++ /dev/null @@ -1,47 +0,0 @@ -# GPIO 制御 :id=gpio-control - - - -QMK には、マイクロコントローラに依存しない GPIO 制御抽象レイヤーがあります。これは異なるプラットフォーム間でピン制御に簡単にアクセスできるようにするためのものです。 - -## 関数 :id=functions - -以下の関数は GPIO の基本的な制御を提供し、`quantum/quantum.h` にあります。 - -| 関数 | 説明 | 古い AVR の例 | 古い ChibiOS/ARM の例 | -|------------------------|--------------------------------------------------|-------------------------------------------------|-------------------------------------------------| -| `setPinInput(pin)` | ピンを高インピーダンス(High-Z)の入力として設定 | `DDRB &= ~(1<<2)` | `palSetLineMode(pin, PAL_MODE_INPUT)` | -| `setPinInputHigh(pin)` | ピンを組み込みのプルアップ抵抗付きの入力として設定 | `DDRB &= ~(1<<2); PORTB \|= (1<<2)` | `palSetLineMode(pin, PAL_MODE_INPUT_PULLUP)` | -| `setPinInputLow(pin)` | ピンを組み込みのプルダウン抵抗付きの入力として設定 | N/A (AVR ではサポートされません) | `palSetLineMode(pin, PAL_MODE_INPUT_PULLDOWN)` | -| `setPinOutput(pin)` | ピンを出力として設定 | `DDRB \|= (1<<2)` | `palSetLineMode(pin, PAL_MODE_OUTPUT_PUSHPULL)` | -| `writePinHigh(pin)` | ピンレベルを high に設定 (ピンを出力として設定してあると仮定) | `PORTB \|= (1<<2)` | `palSetLine(pin)` | -| `writePinLow(pin)` | ピンレベルを low に設定 (ピンを出力として設定してあると仮定) | `PORTB &= ~(1<<2)` | `palClearLine(pin)` | -| `writePin(pin, level)` | ピンレベルを設定 (ピンを出力として設定してあると仮定) | `(level) ? PORTB \|= (1<<2) : PORTB &= ~(1<<2)` | `(level) ? palSetLine(pin) : palClearLine(pin)` | -| `readPin(pin)` | ピンのレベルを返す | `_SFR_IO8(pin >> 4) & _BV(pin & 0xF)` | `palReadLine(pin)` | -| `togglePin(pin)` | ピンレベルを反転 (ピンを出力として設定してあると仮定) | `PORTB ^= (1<<2)` | `palToggleLine(pin)` | - -## 高度な設定 :id=advanced-settings - -各マイクロコントローラは GPIO に関して複数の高度な設定を持つことができます。この抽象レイヤーは、アーキテクチャー固有の機能の使用法を制限しません。上級ユーザは、目的のデバイスのデータシートを参照し、必要なライブラリを含めてください。AVR については、標準 avr/io.h ライブラリが使われます; STM32 については ChibiOS [PAL ライブラリ](https://chibios.sourceforge.net/docs3/hal/group___p_a_l.html)が使われます。 - -## アトミック操作 :id=atomic-operation - -上記の関数は、必ずしもアトミックに動作することが保証されているわけではありません。そのため、上記の関数を複数組み合わせて使用する際に、操作の途中での割り込みを防ぎたい場合は、以下の `ATOMIC_BLOCK_FORCEON` マクロを使用してください。 - -例: -```c -void some_function() { - // 通常の処理 - ATOMIC_BLOCK_FORCEON { - // アトミックであることが必要な処理 - } - // 通常の処理 -} -``` - -`ATOMIC_BLOCK_FORCEON` は、ブロックが実行される前に、割り込みが有効か無効かに関わらず、強制的に割り込みを無効にします。そして、ブロックが実行された後に、割り込みを有効にします。 - -したがって、`ATOMIC_BLOCK_FORCEON`は、ブロックの実行前に割り込みが有効になっていることがわかっている場合や、ブロックの完了時に割り込みを有効にしても問題ないことがわかっている場合のみ使用できることに注意してください。 diff --git a/docs/ja/hardware_avr.md b/docs/ja/hardware_avr.md deleted file mode 100644 index cdc5f8cb866..00000000000 --- a/docs/ja/hardware_avr.md +++ /dev/null @@ -1,190 +0,0 @@ -# AVR マイコンを使ったキーボード - - - -このページでは QMK における AVR マイコンのサポートについて説明します。AVR マイコンには、Atmel 社製の atmega32u4、atmega32u2、at90usb1286 やその他のマイコンを含みます。AVR マイコンは、簡単に動かせるよう設計された8ビットの MCU です。キーボードでよく使用される AVR マイコンには USB 機能や大きなキーボードマトリックスのためのたくさんの GPIO を搭載しています。これらは、現在、キーボードで使われる最も一般的な MCU です。 - -まだ読んでない場合は、[キーボードガイドライン](ja/hardware_keyboard_guidelines.md) を読んで、キーボードを QMK にどのように適合させるかを把握する必要があります。 - -## AVR を使用したキーボードを QMK に追加する - -QMK には AVR を使ったキーボードでの作業を簡略化するための機能が多数あります。大体のキーボードでは1行もコードを書く必要がありません。まずはじめに、`qmk new-keyboard` を実行します。 - -``` -$ qmk new-keyboard -Ψ Generating a new QMK keyboard directory - -Keyboard Name: mycoolkeeb -Keyboard Type: - 1. avr - 2. ps2avrgb -Please enter your choice: [1] -Your Name: [John Smith] -Ψ Copying base template files... -Ψ Copying avr template files... -Ψ Renaming keyboard.[ch] to mycoolkeeb.[ch]... -Ψ Replacing %YEAR% with 2021... -Ψ Replacing %KEYBOARD% with mycoolkeeb... -Ψ Replacing %YOUR_NAME% with John Smith... - -Ψ Created a new keyboard called mycoolkeeb. -Ψ To start working on things, `cd` into keyboards/mycoolkeeb, -Ψ or open the directory in your preferred text editor. -``` - -これにより、新しいキーボードをサポートするために必要なすべてのファイルが作成され、デフォルト値で設定が入力されます。あとはあなたのキーボード用にカスタマイズするだけです。 - -## `readme.md` - -このファイルではキーボードに関する説明を記述します。[キーボード Readme テンプレート](ja/documentation_templates.md#keyboard-readmemd-template)に従って `readme.md` を記入して下さい。`readme.md` の上部に画像を配置することをお勧めします。画像は [Imgur](https://imgur.com) のような外部サービスを利用してください。 - -## `.c` - -このファイルではキーボード上で実行される全てのカスタマイズされたロジックを記述します。多くのキーボードの場合、何も書く必要はありません。 -[機能のカスタマイズ](ja/custom_quantum_functions.md)で、カスタマイズされたロジックの記述方法を詳しく学ぶことが出来ます。 - -## `.h` - -このファイルでは、[レイアウト](ja/feature_layouts.md)を定義します。最低限、以下のような `#define LAYOUT` を記述する必要があります。 - -```c -#define LAYOUT( \ - k00, k01, k02, \ - k10, k11 \ -) { \ - { k00, k01, k02 }, \ - { k10, KC_NO, k11 }, \ -} -``` - -`LAYOUT` マクロの前半部ではキーの物理的な配置を定義します。後半部ではスイッチが接続されるマトリックスを定義します。これによってマトリックス配線の順とは異なるキーを物理的に配置できます。 - -それぞれの `k__` 変数はユニークでなければいけません。通常は `k` というフォーマットに従って記述されます。 - -物理マトリックス(後半部)では、`MATRIX_ROWS` に等しい行数が必要であり、各行には正確に `MATRIX_COLS` と等しい数の要素が含まれていなければいけません。物理キーが存在しない場合は、`KC_NO` を使用して空白を埋める事ができます。 - -## `config.h` - -`config.h` ファイルには、ハードウェアや機能の設定を記述します。このファイルで設定できるオプションは列挙しきれないほどたくさんあります。利用できるオプションの概要は[設定オプション](ja/config_options.md)を参照して下さい。 - -### ハードウェアの設定 - -`config.h` の先頭には USB に関する設定があります。これらはキーボードが OS からどのように見えるかを制御しています。変更する理由がない場合は、`VENDOR_ID` を `0xFEED` のままにしておく必要があります。`PRODUCT_ID` にはまだ使用されていない番号を選ばなければいけません。 - -`MANUFACTURER`、 `PRODUCT` をキーボードにあった設定に変更します。 - -```c -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER You -#define PRODUCT my_awesome_keyboard -``` - -?> Windows や macOS では、`MANUFACTURER` と `PRODUCT` が USBデバイスのリストに表示されます。Linux 上の `lsusb` では、代わりに [USB ID Repository](http://www.linux-usb.org/usb-ids.html) によって維持されているリストの値を優先します。デフォルトでは、リストに `VENDOR_ID` / `PRODUCT_ID` を含まない場合にのみ、`MANUFACTURER` と `PRODUCT` を使います。`sudo lsusb -v` を使用するとデバイスから示された値を表示します。また、接続したときのカーネルログにも表示されます。 - -### キーボードマトリックスの設定 - -`config.h` ファイルの次のセクションではキーボードのマトリックスを扱います。最初に設定するのはマトリックスのサイズです。これは通常、常にではありませんが、物理キー配置と同じ数の行・列になります。 - -```c -#define MATRIX_ROWS 2 -#define MATRIX_COLS 3 -``` - -マトリックスのサイズを定義したら、MCU のどのピンを行と列に接続するかを定義します。そのためにはピンの名前を指定するだけです。 - -```c -#define MATRIX_ROW_PINS { D0, D5 } -#define MATRIX_COL_PINS { F1, F0, B0 } -#define UNUSED_PINS -``` - - -`MATRIX_ROW_PINS` の要素の数は `MATRIX_ROWS` に定義した数と同じでなければいけません。同様に `MATRIX_COL_PINS` の要素の数も `MATRIX_COLS` と等しい必要があります。`UNUSED_PINS` は定義しなくても問題ありませんがどのピンが空いているのか記録しておきたい場合は定義できます。 - -最後にダイオードの方向を定義します。これには `COL2ROW` か `ROW2COL` を設定します。 - -```c -#define DIODE_DIRECTION COL2ROW -``` - -#### ダイレクトピンマトリックス - -各スイッチが、列と行のピンを共有する代わりに、それぞれ個別のピンとグランドに接続されているキーボードを定義するには、`DIRECT_PINS` を使用します。マッピング定義では、列と行の各スイッチのピンを左から右の順に定義します。`MATRIX_ROWS` と `MATRIX_COLS` 内のサイズに準拠する必要があり、空白を埋めるには `NO_PIN` を使用します。これによって `DIODE_DIRECTION`、`MATRIX_ROW_PINS`、`MATRIX_COL_PINS` の動作を上書きします。 - -```c -// #define MATRIX_ROW_PINS { D0, D5 } -// #define MATRIX_COL_PINS { F1, F0, B0 } -#define DIRECT_PINS { \ - { F1, E6, B0, B2, B3 }, \ - { F5, F0, B1, B7, D2 }, \ - { F6, F7, C7, D5, D3 }, \ - { B5, C6, B6, NO_PIN, NO_PIN } \ -} -#define UNUSED_PINS - -/* COL2ROW, ROW2COL */ -//#define DIODE_DIRECTION -``` - -### バックライトの設定 - -QMK では GPIO ピンでのバックライト制御をサポートしています。これらの設定を選択して MCU から制御できます。詳しくは[バックライト](ja/feature_backlight.md)を参照して下さい。 - -```c -#define BACKLIGHT_PIN B7 -#define BACKLIGHT_LEVELS 3 -#define BACKLIGHT_BREATHING -#define BREATHING_PERIOD 6 -``` - -### その他の設定オプション - -`config.h` で設定・調整できる機能はたくさんあります。詳しくは[設定オプション](ja/config_options.md)を参照して下さい。 - -## `rules.mk` - -`rules.mk` ファイルを使用して、ビルドするファイルや有効にする機能をQMKへ指示します。atmega32u4 を使っている場合、これらのオプションはデフォルトのままにしておくことが出来ます。他の MCU を使用している場合はいくつかのパラメータを調整する必要があります。 - -### MCU オプション - -このオプションではビルドする CPU をビルドシステムに指示します。これらの設定を変更する場合は非常に注意して下さい。キーボードを操作不能にしてしまう可能性があります。 - -```make -MCU = atmega32u4 -F_CPU = 16000000 -ARCH = AVR8 -F_USB = $(F_CPU) -OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT -``` - -### ブートローダー - -ブートローダーは MCU に保存されているプログラムをアップグレードするための特別なセクションです。キーボードのレスキューパーティションのようなものだと考えて下さい。 - -#### Teensy Bootloader の例 - -```make -BOOTLOADER = halfkay -``` - -#### Atmel DFU Loader の例 - -```make -BOOTLOADER = atmel-dfu -``` - -#### Pro Micro Bootloader の例 - -```make -BOOTLOADER = caterina -``` - -### ビルドオプション - -`rules.mk` にはオン・オフできるたくさんの機能があります。詳細なリストと説明は[設定オプション](ja/config_options.md#feature-options)を参照して下さい。 diff --git a/docs/ja/hardware_drivers.md b/docs/ja/hardware_drivers.md deleted file mode 100644 index e0061cb3280..00000000000 --- a/docs/ja/hardware_drivers.md +++ /dev/null @@ -1,41 +0,0 @@ -# QMK ハードウェアドライバー - - - -QMK はたくさんの異なるハードウェアで使われています。最も一般的な MCU とマトリックス構成をサポートしていますが、キーボードへ他のハードウェアを追加し制御するためのドライバーもいくつか用意されています。例えば、マウスやポインティングデバイス、分割キーボード用の IO エキスパンダ、Bluetooth モジュール、LCD、OLED、TFT 液晶などがあります。 - - - -# 使用できるドライバー - -## ProMicro (AVR のみ) - -ProMicro のピンを AVR の名前ではなく、Arduino の名前で指定できます。この部分はより詳しく文書化される必要があります。もしこれを使用したい場合にコードを読んでも分からない場合、[issue を開く](https://github.com/qmk/qmk_firmware/issues/new)を通して助けることができるかもしれません。 - -## SSD1306 OLED ドライバー - -SSD1306 ベースの OLED ディスプレイのサポート。詳しくは[OLED ドライバ](ja/feature_oled_driver.md)を参照して下さい。 - -## WS2812 - -WS2811/WS2812{a,b,c} LED のサポート。 詳しくは [RGB ライト](ja/feature_rgblight.md)を参照して下さい。 - -## IS31FL3731 - -最大2つの LED ドライバーのサポート。各ドライバーは、I2C を使って個別に LED を制御する2つのチャーリープレクスマトリックスを実装しています。最大144個の単色 LED か32個の RGB LED を使用できます。ドライバーの設定方法の詳細は[RGB マトリックス](ja/feature_rgb_matrix.md)を参照して下さい。 - -## IS31FL3733 - -拡張の余地がある最大1つの LED ドライバーのサポート。各ドライバーは192個の単色 LED か64個の RGB LED を制御できます。ドライバーの設定方法の詳細は [RGB マトリックス](ja/feature_rgb_matrix.md)を参照して下さい。 - -## 24xx シリーズ 外部 I2C EEPROM - -オンチップ EEPROM の代わりに使用する I2C ベースの外部 EEPROM のサポート。ドライバーの設定方法の詳細は [EEPROM ドライバー](ja/eeprom_driver.md)を参照して下さい。 diff --git a/docs/ja/hardware_keyboard_guidelines.md b/docs/ja/hardware_keyboard_guidelines.md deleted file mode 100644 index ef5f6df2b90..00000000000 --- a/docs/ja/hardware_keyboard_guidelines.md +++ /dev/null @@ -1,239 +0,0 @@ -# QMK キーボードガイドライン - - - -QMK は開始以来、コミュニティにおけるキーボードの作成や保守に貢献しているあなたのような人たちのおかげで飛躍的に成長しました。私たちが成長するにつれて、うまくやるためのいくつかのパターンを発見しました。他の人たちがあなたの苦労の恩恵を受けやすくするため、それにあわせてもらえるようお願いします。 - -## QMK Lint を使う - -キーボードの問題をチェックできるツール、`qmk lint` を提供しています。キーボードとキーマップで作業をしている間は、頻繁に使うことをお勧めします。 - -チェックに合格した例: - -``` -$ qmk lint -kb rominronin/katana60/rev2 -Ψ Lint check passed! -``` - -チェックに失敗した例: - -``` -$ qmk lint -kb clueboard/66/rev3 -☒ Missing keyboards/clueboard/66/rev3/readme.md -☒ Lint check failed! -``` - -## あなたのキーボード/プロジェクトの名前を決める - -キーボードの名前は全て小文字で、アルファベット、数字、アンダースコア(`_`)のみで構成されています。アンダースコア(`_`)で始めてはいけません。スラッシュ(`/`)はサブフォルダの区切り文字として使用されます。 - -`test`、`keyboard`、`all` はmakeコマンド用に予約されており、キーボードまたはサブフォルダ名として使用することは出来ません。 - -正しい例: - -* `412_64` -* `chimera_ortho` -* `clueboard/66/rev3` -* `planck` -* `v60_type_r` - -## サブフォルダ - -QMK では、まとめるためや同じキーボードのリビジョン間でコードを共有するためにサブフォルダを使用します。フォルダは最大4階層までネストできます。 - - qmk_firmware/keyboards/top_folder/sub_1/sub_2/sub_3/sub_4 - -サブフォルダ内に `rules.mk` ファイルが存在するとコンパイル可能なキーボードとして見なされます。QMK Configurator から使用できるようになり、`make all` でテストされます。同じメーカーのキーボードをまとめるためにフォルダを使用している場合は `rules.mk` ファイルを置いてはいけません。 - -例: - -Clueboard は、サブフォルダをまとめるためとキーボードのリビジョン管理の両方のために使用しています。 - -* [`qmk_firmware`](https://github.com/qmk/qmk_firmware/tree/master) - * [`keyboards`](https://github.com/qmk/qmk_firmware/tree/master/keyboards) - * [`clueboard`](https://github.com/qmk/qmk_firmware/tree/master/keyboards/clueboard) ← これはまとめるためのフォルダです。 `rules.mk` ファイルはありません。 - * [`60`](https://github.com/qmk/qmk_firmware/tree/master/keyboards/clueboard/60) ← これはコンパイルできるキーボードです。`rules.mk` が存在します。 - * [`66`](https://github.com/qmk/qmk_firmware/tree/master/keyboards/clueboard/66) ← これもコンパイルできるキーボードです。 デフォルトのリビジョンとして `DEFAULT_FOLDER` に `rev3` を指定しています。 - * [`rev1`](https://github.com/qmk/qmk_firmware/tree/master/keyboards/clueboard/66/rev1) ← コンパイル可能: `make clueboard/66/rev1` - * [`rev2`](https://github.com/qmk/qmk_firmware/tree/master/keyboards/clueboard/66/rev2) ← コンパイル可能: `make clueboard/66/rev2` - * [`rev3`](https://github.com/qmk/qmk_firmware/tree/master/keyboards/clueboard/66/rev3) ← コンパイル可能: `make clueboard/66/rev3` もしくは `make clueboard/66` - -## キーボードのフォルダ構成 - -キーボードは `qmk_firmware/keyboards/` 内にあり、前のセクションで説明したようにフォルダ名はキーボードの名前にする必要があります。このフォルダ内にはいくつかのファイルがあります。 - -* `readme.md` -* `info.json` -* `config.h` -* `rules.mk` -* `.c` -* `.h` - -### `readme.md` - -全てのプロジェクトにはどのようなキーボードなのか、誰が設計したか、どこで入手できるかを説明する `readme.md` ファイルが必要です。もしあれば、メーカーの Web サイトなどの詳しい情報へのリンクも含める必要があります。[キーボード readme テンプレート](ja/documentation_templates.md#keyboard-readmemd-template)を参考にして下さい。 - -### `info.json` - -このファイルは [QMK API](https://github.com/qmk/qmk_api) から使用されます。[QMK Configurator](https://config.qmk.fm/) が必要とするキーボードの情報が含まれています。ここでメタデータを設定することもできます。詳しくは [info.json 形式](ja/reference_info_json.md) を参照して下さい。 - -### `config.h` - -全てのプロジェクトには、マトリックスサイズ、製品名、USB VID/PID、説明、その他の設定などが含まれた `config.h` ファイルが必要です。一般に、このファイルを使用して常に機能するキーボードの重要な情報やデフォルトを設定します。 - -また、`config.h` ファイルはサブフォルダにも置くことができ、その読み込み順は以下の通りです。 - -* `keyboards/top_folder/config.h` - * `keyboards/top_folder/sub_1/config.h` - * `keyboards/top_folder/sub_1/sub_2/config.h` - * `keyboards/top_folder/sub_1/sub_2/sub_3/config.h` - * `keyboards/top_folder/sub_1/sub_2/sub_3/sub_4/config.h` - * `users/a_user_folder/config.h` - * `keyboards/top_folder/keymaps/a_keymap/config.h` - * `keyboards/top_folder/sub_1/sub_2/sub_3/sub_4/post_config.h` - * `keyboards/top_folder/sub_1/sub_2/sub_3/post_config.h` - * `keyboards/top_folder/sub_1/sub_2/post_config.h` - * `keyboards/top_folder/sub_1/post_config.h` -* `keyboards/top_folder/post_config.h` - -`post_config.h` ファイルは、`config.h` ファイルで指定された内容に応じて、追加の後処理を行うために使用することができます。 -例えば、キーマップレベルの `config.h` ファイルで `IOS_DEVICE_ENABLE` マクロを以下のように定義すると、`post_config.h` ファイルでより詳細な設定を行うことができます。 - -* `keyboards/top_folder/keymaps/a_keymap/config.h` - ```c - #define IOS_DEVICE_ENABLE - ``` -* `keyboards/top_folder/post_config.h` - ```c - #ifndef IOS_DEVICE_ENABLE - // USB_MAX_POWER_CONSUMPTION value for this keyboard - #define USB_MAX_POWER_CONSUMPTION 400 - #else - // fix iPhone and iPad power adapter issue - // iOS device need lessthan 100 - #define USB_MAX_POWER_CONSUMPTION 100 - #endif - - #ifdef RGBLIGHT_ENABLE - #ifndef IOS_DEVICE_ENABLE - #define RGBLIGHT_LIMIT_VAL 200 - #define RGBLIGHT_VAL_STEP 17 - #else - #define RGBLIGHT_LIMIT_VAL 35 - #define RGBLIGHT_VAL_STEP 4 - #endif - #ifndef RGBLIGHT_HUE_STEP - #define RGBLIGHT_HUE_STEP 10 - #endif - #ifndef RGBLIGHT_SAT_STEP - #define RGBLIGHT_SAT_STEP 17 - #endif - #endif - ``` - -?> 上記の例のように `post_config.h` でオプションを定義する場合、キーボードやユーザレベルの `config.h` で同じオプションを定義してはいけません。 - -### `rules.mk` - -このファイルが存在するということは、フォルダがキーボードであり、`make` コマンドで使用できることを意味します。ここでキーボードのビルド環境を構築し、デフォルトの機能を設定します。 - -`rules.mk` ファイルはサブフォルダにも置くことができ、その読み込み順は以下の通りです。 - -* `keyboards/top_folder/rules.mk` - * `keyboards/top_folder/sub_1/rules.mk` - * `keyboards/top_folder/sub_1/sub_2/rules.mk` - * `keyboards/top_folder/sub_1/sub_2/sub_3/rules.mk` - * `keyboards/top_folder/sub_1/sub_2/sub_3/sub_4/rules.mk` - * `keyboards/top_folder/keymaps/a_keymap/rules.mk` - * `users/a_user_folder/rules.mk` -* `common_features.mk` - -`rules.mk` ファイルに書かれた多くの設定は `common_features.mk` によって解釈され、必要なソースファイルやコンパイラのオプションが設定されます。 - -?> 詳しくは `build_keyboard.mk` と `common_features.mk` を見てください。 - -### `` - -ここではキーボードのカスタマイズされたコードを記述します。通常、初期化してキーボードのハードウェアを制御するコードを記述します。キーボードが LED やスピーカー、その他付属ハードウェアのないキーマトリックスのみで構成されている場合は空にできます。 - -通常、以下の関数がこのファイルで定義されます。 - -* `void matrix_init_kb(void)` -* `void matrix_scan_kb(void)` -* `bool process_record_kb(uint16_t keycode, keyrecord_t *record)` -* `bool led_update_kb(led_t led_state)` - -### `` - -このファイルはキーボードのマトリックスを定義するために使用されます。配列をキーボードの物理的なスイッチマトリックスに変換する C マクロを最低限1つ定義する必要があります。複数のレイアウトでキーボードを構築出来る場合は、追加のマクロを定義しなければいけません。 - -レイアウトが1つしかない場合は、このマクロは `LAYOUT` とします。 - -複数のレイアウトを定義する場合、物理的に構成することが出来なくとも、マトリックス上で全てのスイッチ位置をサポートする `LAYOUT_all` という名前の基本となるレイアウトが必要です。これは `default` キーマップで使用すべきマクロです。次に、他のレイアウトマクロを使用する `default_` といった追加のキーマップを用意します。これによって、他の人が定義されたレイアウトを使いやすくなります。 - -レイアウトマクロの名前は全て小文字で、先頭の `LAYOUT` だけ大文字です。 - -例として、ANSI と ISO をサポートする 60% PCB がある場合、以下のようにレイアウトとキーマップを定義出来ます。 - -| レイアウト名 | キーマップ名 | 説明 | -|-------------|-------------|-------------| -| LAYOUT_all | default | ISO と ANSI のどちらもサポートしたレイアウト | -| LAYOUT_ansi | default_ansi | ANSI レイアウト | -| LAYOUT_iso | default_iso | ISO レイアウト | - -## 画像/ハードウェアのファイル - -リポジトリのサイズを小さく保つために、いくつかの例外を除いて、どの形式のバイナリファイルも受け入れないようになりました。外部の場所(など)でホストして、`readme.md` でリンクすることをおすすめします。 - -ハードウェアのファイル(プレートやケース、PCB など)は [qmk.fm リポジトリ](https://github.com/qmk/qmk.fm)に提供でき、[qmk.fm](https://qmk.fm) で利用可能になります。ダウンロード出来るファイルは `//`(名前は上記と同じ形式)に保存され、`https://qmk.fm//` で提供されます。ページは `/_pages//` から生成されて、同じ場所で提供されます( .mdファイルはJekyllを通して .htmlファイル変換されます)。`lets_split` ファイルを参照して下さい。 - -## キーボードのデフォルト設定 - -QMK が提供する機能の量を考えれば、新しいユーザーが混乱するのは当たり前です。キーボードのデフォルトファームウェアをまとめるなら、有効にする機能とオプションをハードウェアのサポートに必要な最低限のセットにすることをおすすめします。特定の機能に関するおすすめは以下の通りです。 - -### ブートマジックとコマンド - -[ブートマジック](ja/feature_bootmagic.md) と[コマンド](ja/feature_command.md)は、ユーザーがキーボードを明白でない方法で制御出来るようにする2つの関連機能です。いずれかの機能を有効にする場合、この機能をどのように提供するかについて、よく考えることをおすすめします。この機能が必要なユーザーは、あなたのキーボードを最初のプログラムできるキーボードとして使用している初心者に影響を与えることなく、個人的なキーマップ内で有効に出来ることを覚えておきましょう。 - -新規ユーザーが遭遇する最も多い問題は、キーボードを接続している間に間違えてブートマジックをトリガーしてしまうことです。キーボードの下を持っているとき、知らない間に Alt とスペースバーを押して、これらのキーが交換されてしまったことに気づきます。デフォルトではこの機能を無効にすることをおすすめしますが、有効にする場合は、キーボードを接続している間に押し間違えないキーへ `BOOTMAGIC_KEY_SALT` を設定することを検討して下さい。 - -キーボードに2つの Shift キーがない場合は、`COMMAND_ENABLE = no` を指定していても `IS_COMMAND` が動作するデフォルトを設定しておくべきです。ユーザーがコマンドを有効化したときに使用するデフォルトが与えられます。 - -## カスタムキーボードプログラミング - -[機能のカスタマイズ](ja/custom_quantum_functions.md)にあるようにキーボードのカスタム関数を定義できます。ユーザーも同様にその動作をカスタマイズしたいかもしれないということと、ユーザーにそれを可能にすることを忘れないで下さい。 `process_record_kb()`のようなカスタム関数を提供している場合、関数がその関数の `_user()` 版を呼び出すことを確認して下さい。また、その関数の`_user()` 版の戻り値を確認して、user が `true` を返した場合のみカスタムコードを実行しなければいけません。 - -## 生産しない/手配線 プロジェクト - -プロトタイプや手配線によるものなど QMK を使用するどんなプロジェクトも受け入れますが、`/keyboards/` フォルダが乱雑になるのを防ぐために、`/keyboards/handwired/` を用意しています。いつかプロトタイプのプロジェクトが製品のプロジェクトになった時点でメインの `/keyboards/` フォルダへ移動します! - -## エラーとしての警告 - -キーボードを開発するときは、全ての警告がエラーとして扱われることに注意して下さい。小さな警告が蓄積されて、将来大きなエラーを引き起こす可能性があります。(そして、警告を放っておくのは良くない習慣です) - -## 著作権表示 - -別のプロジェクトを元にしてキーボードの設定をするものの同じコードを使用しない場合は、ファイル上部にある著作権表示を次の形式に従って自分の名前を表示するよう、更新して下さい。 - - Copyright 2017 Your Name - - -他の人のコードを修正し、その変更が些細な部分のみであれば、著作権表示の名前をそのままにしておかないといけません。ファイルに対して重要な作業を行った場合、以下のようにあなたの名前を追加します。 - - Copyright 2017 Their Name Your Name - -年はファイルが作成された最初の年にします。後年にそのファイルに対して作業が行われた場合、次のように2つ目の年を追加して反映することが出来ます。 - - Copyright 2015-2017 Your Name - -## ライセンス - -QMK のコア部分は [GNU General Public License](https://www.gnu.org/licenses/licenses.en.html) でライセンスされます。AVR マイコン用のバイナリを提供する場合は、[GPLv2](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html) か、[GPLv3](https://www.gnu.org/licenses/gpl.html) のどちらかから選択出来ます。ARM マイコン用のバイナリを提供する場合は、 [ChibiOS](https://www.chibios.org) の GPLv3 ライセンスに準拠するため、[GPL Version 3](https://www.gnu.org/licenses/gpl.html) を選択しなければいけません。 - -## 技術的な詳細 - -キーボードを QMK で動作させるための詳細は[ハードウェア](ja/hardware.md)を参照して下さい! diff --git a/docs/ja/how_a_matrix_works.md b/docs/ja/how_a_matrix_works.md deleted file mode 100644 index e5dfc9f07d8..00000000000 --- a/docs/ja/how_a_matrix_works.md +++ /dev/null @@ -1,104 +0,0 @@ -# キーボードマトリックスの仕組み - - - -キーボードスイッチのマトリックスは行と列に配置されます。マトリックス回路がなければ、各スイッチはコントローラに直接配線する必要があります。 - -回路が行と列に配置されている場合、キーが押されると、列ワイヤが行ワイヤと接触し、回路が完成します。キーボードコントローラはこの閉回路を検知し、キー押下として登録します。 - -マイクロコントローラはファームウェアを介してセットアップされ、論理1を一度に1つずつ列に送信し、行から一度に全てを読み取ります - このプロセスはマトリックススキャンと呼ばれます。マトリックスはデフォルトでは電流の通過を許可しないたくさんの開いたスイッチです - ファームウェアはキーが押されていないものとしてこれを読み取ります。1つのキーを押すとすぐに、キースイッチが接続されている列から来ていた論理1がスイッチを通過して対応する行に渡されます - 以下の 2x2 の例を確認してください: - - Column 0 being scanned Column 1 being scanned - x x - col0 col1 col0 col1 - | | | | - row0 ---(key0)---(key1) row0 ---(key0)---(key1) - | | | | - row1 ---(key2)---(key3) row1 ---(key2)---(key3) - -`x` は関連付けられた列と行の値が1であるか、HIGH であることを表します。ここでは、キーが押されていないことが分かります。そのため `x` を取得する行はありません。1つのキースイッチの二つの接点はそのスイッチのある行と列にそれぞれ接続されていることに注意してください。 - -`key0` を押すと、`col0` は `row0` に接続されるため、ファームウェアがその行に対して受け取る値は `0b01` です (ここで `0b` はこれがビット値であることを意味します。つまり次の数字は全てビット(0または1)であり、その列のキーを表します)。この表記を使用して、キースイッチが押されたことを示し、列と行が接続されていることを示します: - - Column 0 being scanned Column 1 being scanned - x x - col0 col1 col0 col1 - | | | | - x row0 ---(-+-0)---(key1) row0 ---(-+-0)---(key1) - | | | | - row1 ---(key2)---(key3) row1 ---(key2)---(key3) - -`row0` には `x` があるため、値が1であることがわかります。全体として、`key0` が押された時にファームウェアが受信するデータは、 - - col0: 0b01 - col1: 0b00 - │└row0 - └row1 - -一度に複数のキーを押し始めると問題が発生します。マトリックスをもう一度見ると、かなり明白になっているはずです: - - Column 0 being scanned Column 1 being scanned - x x - col0 col1 col0 col1 - | | | | - x row0 ---(-+-0)---(-+-1) x row0 ---(-+-0)---(-+-1) - | | | | - x row1 ---(key2)---(-+-3) x row1 ---(key2)---(-+-3) - - Remember that this ^ is still connected to row1 - -これから取得されるデータは以下の通りです: - - col0: 0b11 - col1: 0b11 - │└row0 - └row1 - -4つ全てではなく、3つのキーしか押されていないため、これは正確ではありません。この挙動はゴーストと呼ばれ、このような奇妙なシナリオでのみ発生しますが、より大きなキーボードではより一般的です。これを回避する方法は、キースイッチの後に、行に接続する前にダイオードを配置することです。ダイオードは、電流が一方向にのみ流れるようにします。これにより、前の例で他の列と行がアクティブにならないようにします。ダイオードマトリックスをこのように表します; - - Column 0 being scanned Column 1 being scanned - x x - col0 col1 col0 col1 - │ │ | │ - (key0) (key1) (key0) (key1) - ! │ ! │ ! | ! │ - row0 ─────┴────────┘ │ row0 ─────┴────────┘ │ - │ │ | │ - (key2) (key3) (key2) (key3) - ! ! ! ! - row1 ─────┴────────┘ row1 ─────┴────────┘ - -実際の用途では、ダイオードの黒い線が行に面するように、キースイッチから離れるように配置されます - この場合の `!` はダイオードで、隙間は黒い線を表します。これを覚える良い方法は、以下のシンボルを考えることです: `>|` - -次に、3つのキーを押して、ゴーストシナリオとなるものを実施します: - - Column 0 being scanned Column 1 being scanned - x x - col0 col1 col0 col1 - │ │ │ │ - (┌─┤0) (┌─┤1) (┌─┤0) (┌─┤1) - ! │ ! │ ! │ ! │ - x row0 ─────┴────────┘ │ x row0 ─────┴────────┘ │ - │ │ │ │ - (key2) (┌─┘3) (key2) (┌─┘3) - ! ! ! ! - row1 ─────┴────────┘ x row1 ─────┴────────┘ - -全てが期待通りに動きます!これにより、以下のデータが取得されます: - - col0: 0b01 - col1: 0b11 - │└row0 - └row1 - -ファームウェアはこの正しいデータを使って、何をすべきかを、最終的には OS に送信する必要のある信号を検出できます。 - -参考文献: -- [Wikipedia の記事](https://en.wikipedia.org/wiki/Keyboard_matrix_circuit) -- [Deskthority の記事](https://deskthority.net/wiki/Keyboard_matrix) -- [Dave Dribin による Keyboard Matrix Help (2000)](https://www.dribin.org/dave/keyboard/one_html/) -- [PCBheaven による How Key Matrices Works](https://pcbheaven.com/wikipages/How_Key_Matrices_Works/) (アニメーションの例) -- [キーボードの仕組み - QMK ドキュメント](ja/how_keyboards_work.md) diff --git a/docs/ja/how_keyboards_work.md b/docs/ja/how_keyboards_work.md deleted file mode 100644 index 5c54e5ff73c..00000000000 --- a/docs/ja/how_keyboards_work.md +++ /dev/null @@ -1,74 +0,0 @@ -# キーが登録され、コンピュータで解釈される仕組み - - - -このファイルでは、USB を介してキーボードがどのように動作するかの概念を学習できます。ファームウェアを直接変更することで何が期待できるかをより良く理解することができます。 - -## 概略図 - -特定のキーを1つ入力するたびに、このような一連のアクションが発生します: - -```text -+------+ +-----+ +----------+ +----------+ +----+ -| User |-------->| Key |------>| Firmware |----->| USB wire |---->| OS | -+------+ +-----+ +----------+ +----------+ +----+ -``` - -この図は何が起こっているかを非常に単純に示したものです。詳細については次のセクションで説明します。 - -## 1. キーを押す - -キーを押すたびに、キーボードのファームウェアはこのイベントを登録することができます。 -キーが押され、保持され、放された時に登録することができます。 - -これは通常キー押下の定期的な走査で発生します。多くの場合、キーの機械的な応答時間、キー押下情報を転送するプロトコル(ここでは USB HID)、あるいは使用されるソフトウェアによって、この速度は制限されます。 - -## 2. ファームウェアが送信するもの - -[HID 仕様](https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf)では、適切に認識されるためにキーボードが USB 経由で実際に送信できるものを規定しています。これには、`0x00` から `0xE7` までの単純な数字であるスキャンコードの定義済リストが含まれます。ファームウェアはスキャンコードをキーボードのそれぞれのキーに割り当てます。 - -ファームウェアは実際の文字を送信せず、スキャンコードだけを送信します。 -従って、ファームウェアを変更することで、特定のキーにたいして USB を介してどのスキャンコードが送信されるかだけを変更することができます。 - -## 3. イベント入力やカーネルが行うこと - -*スキャンコード*は、[マスターブランチの 60-keyboard.hwdb](https://github.com/systemd/systemd/blob/master/hwdb.d/60-keyboard.hwdb) キーボードに依存する*キーコード*にマップされます。このマッピングが無いと、オペレーティングシステムは有効なキーコードを受信せず、キー押下で何も有用なことができません。 - -## 4. オペレーティングシステムがすること - -キーコードがオペレーティングシステムに到達すると、ソフトウェアの一部はキーボードのレイアウトによって、実際の文字と照合しなければなりません。例えば、レイアウトが QWERTY に設定されている場合、照合テーブルの例は以下の通りです: - -| キーコード | 文字 | -|---------|-----------| -| 0x04 | a/A | -| 0x05 | b/B | -| 0x06 | c/C | -| ... | ... | -| 0x1C | y/Y | -| 0x1D | z/Z | -| ... | ... | - -## 説明をファームウェアに戻して - -(独自のものを作成していない限り)レイアウトは一般的に固定されているため、ファームウェアは実際には作業を簡単するためレイアウト名で直接キーコードを記述できます。これが、`KC_A` が実際に QWERTY で `0x04` を表す場合に行われることです。完全なリストは[キーコード](ja/keycodes.md)にあります。 - -## 送信できる文字のリスト - -ショートカットを別として、限られたキーコードのセットが限られたレイアウトにマップされていることは、**指定されたキーに割り当てることができる文字のリストは、レイアウト内に存在するものだけである**ことを意味します。 - -例えば、QWERTY US レイアウトがあり、1つのキーを `€` (ユーロ通貨記号)を生成するように割り当てたい場合、そうすることができないことを意味します。なぜなら、QWERTY US レイアウトはそのようなマッピングを持たないためです。QWERTY UK レイアウト、あるいは QWERTY US International を使うことでそれを修正することができます。 - -全ての Unicode を含むキーボードレイアウトがなぜ考案されていないのか疑問に思うかもしれません。USB を介して利用可能なキーコードの数の制限により、このようなことは許可されません。 - -## (おそらく) Unicode 文字を入力する方法 - -ファームウェアに *一連のキー* を送信させて、目的のオペレーティングシステムの[ソフトウェア Unicode インプットメソッド](https://en.wikipedia.org/wiki/Unicode_input#Hexadecimal_input)を使うことができます。このようにして、OS で定義されたレイアウトとは無関係に文字を効率的に入力することができます。 - -ただし、以下のような複数の欠点があります: - -- 一度に、一つの特定の OS に縛られます (OS を変更する時に再コンパイルする必要があります); -- 特定の OS では、全てのソフトウェアが動作するわけではありません; -- 一部のシステムでは Unicode のサブセットに制限されます。 diff --git a/docs/ja/i2c_driver.md b/docs/ja/i2c_driver.md deleted file mode 100644 index 92c41853702..00000000000 --- a/docs/ja/i2c_driver.md +++ /dev/null @@ -1,134 +0,0 @@ -# I2C マスタドライバ :id=i2c-master-driver - - - -QMK で使われる I2C マスタドライバには、MCU 間のポータビリティを提供するための一連の関数が用意されています。 - -## I2C アドレスについての重要なメモ :id=note-on-i2c-addresses - -このドライバが期待する全てのアドレスは、アドレスバイトの上位7ビットにプッシュする必要があります。最下位ビットの設定(読み込み/書き込みを示す)は、それぞれの関数によって行われます。データシートやインターネットで列挙されているほとんど全ての I2C アドレスは、下位7ビットを占める7ビットとして表され、1ビット左(より上位)にシフトする必要があります。これは、ビット単位のシフト演算子 `<< 1` を使用して簡単に実行できます。 - -これは、呼び出しごとに以下の関数を実行するか、アドレスの定義で1度だけ実行するかどちらかで行うことができます。例えば、デバイスのアドレスが `0x18` の場合: - -`#define MY_I2C_ADDRESS (0x18 << 1)` - -I2C アドレスと他の技術詳細について、さらなる情報を得るためには https://www.robot-electronics.co.uk/i2c-tutorial を見てください。 - -## 使用できる関数 :id=available-functions - -| 関数 | 説明 | -|-------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `void i2c_init(void);` | I2C ドライバを初期化します。他のあらゆるトランザクションを開始する前に、この関数を一度だけ呼ぶ必要があります。 | -| `i2c_status_t i2c_transmit(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout);` | I2C 経由でデータを送信します。アドレスは方向ビットのない7ビットスレーブアドレスです。トランザクションのステータスを返します。 | -| `i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout);` | I2C 経由でデータを受信します。アドレスは方向ビットのない7ビットスレーブアドレスです。 `length` で指定した長さのバイト列を `data` に保存し、トランザクションのステータスを返します。 | -| `i2c_status_t i2c_writeReg(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout);` | `i2c_transmit` と同様ですが、 `regaddr` でスレーブのデータ書き込み先のレジスタを指定します。 | -| `i2c_status_t i2c_readReg(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout);` | `i2c_receive` と同様ですが、 `regaddr` でスレーブのデータ読み込み先のレジスタを指定します。 | -| `i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout);` | I2C アドレスをテストします。アドレスは方向ビットのない7ビットスレーブアドレスです。 | - -### 関数の戻り値 :id=function-return - -`void i2c_init(void)` を除く上にあるすべての関数は、次の真理値表にある値を返します。 - -|戻り値の定数 |値 |説明 | -|--------------------|---|----------------------------| -|`I2C_STATUS_SUCCESS`|0 |処理が正常に実行されました。| -|`I2C_STATUS_ERROR` |-1 |処理に失敗しました。 | -|`I2C_STATUS_TIMEOUT`|-2 |処理がタイムアウトしました。| - -## AVR :id=avr - -### 設定 :id=avr-configuration - -I2Cマスタドライバを設定するために、次の定義が使えます。 - -| 変数 | 説明 | 既定値 | -|---------|---------------------|--------| -| `F_SCL` | クロック周波数 (Hz) | 400KHz | - - -AVR は通常 I2C ピンとして使う GPIO が設定されているので、これ以上の設定は必要ありません。 - -## ARM :id=arm - -ARM の場合は、内部に ChibiOS I2C HAL ドライバがあります。この節では STM32 MCU を使用していると仮定します。 - -### 設定 :id=arm-configuration - -ARM MCU 用の設定はしばしば非常に複雑です。これは、多くの場合複数の I2C ドライバをさまざまなポートに対して割り当てられるためです。 - -最初に、必要なハードウェアドライバを有効にするために `mcuconf.h` ファイルをセットアップします。 - -| 変数 | 説明 | 既定値 | -|-------------------------------|------------------------------------------------------------------------------------------------|--------| -| `#STM32_I2C_USE_XXX` | ハードウェアドライバ XXX の有効化/無効化(すべてのドライバを明示的にリストアップする必要あり) | FALSE | -| `#STM32_I2C_BUSY_TIMEOUT` | レスポンスの受信がない場合に I2C コマンドを中断するまでの時間 (ms) | 50 | -| `#STM32_I2C_XXX_IRQ_PRIORITY` | ハードウェアドライバ XXX の割り込み優先度(上級者向けの設定) | 10 | -| `#STM32_I2C_USE_DMA` | MCU がデータ送信を DMA ユニットにオフロードする機能の有効化/無効化 | TRUE | -| `#STM32_I2C_XXX_DMA_PRIORITY` | ハードウェアドライバ XXX に使用する DMA ユニットの優先度(上級者向けの設定) | 1 | - -次に `halconf.h` ファイル内で `#define HAL_USE_I2C` を `TRUE` にします。これにより ChibiOS が I2C ドライバを読み込みます。 - -最後に、使用したい I2C ハードウェアドライバに応じて正しい GPIO ピンを割り当てます。 - -標準では I2C1 ハードウェアドライバが使われます。もし他のハードウェアドライバを使う場合、 `config.h` ファイルに `#define I2C_DRIVER I2CDX` を追加します( X は使用するハードウェアドライバの番号です)。例えば I2C3 を有効化する場合、`config.h` ファイルに `#define I2C_DRIVER I2CD3` と定義します。これにより QMK I2C ドライバと ChibiOS I2C driver が同期されます。 - -STM32 MCU では、使用するハードウェアドライバにより、さまざまなピンを I2C ピンとして設定できます。標準では `B6`, `B7` ピンが I2C 用のピンです。 I2C 用のピンを設定するために次の定義が使えます: - -| 変数 | 説明 | 既定値 | -|-----------------------|-------------------------------------------------------------------------------------------|---------| -| `I2C1_SCL_PIN` | SCL のピン番号 | `B6` | -| `I2C1_SDA_PIN` | SDA のピン番号 | `B7` | - -ChibiOS I2C ドライバの設定項目は STM32 MCU の種類に依存します。 - - STM32F1xx, STM32F2xx, STM32F4xx, STM32L0xx, STM32L1xx では I2Cv1 が使われます。 - STM32F0xx, STM32F3xx, STM32F7xx, STM32L4xx では I2Cv2 が使われます。 - -#### I2Cv1 :id=i2cv1 - -STM32 MCU の I2Cv1 では、クロック周波数とデューティ比を次の変数で変更できます。詳しくは を参照してください。 - -| 変数 | 既定値 | -|--------------------|------------------| -| `I2C1_OPMODE` | `OPMODE_I2C` | -| `I2C1_CLOCK_SPEED` | `100000` | -| `I2C1_DUTY_CYCLE` | `STD_DUTY_CYCLE` | - -#### I2Cv2 :id=i2cv2 - -STM32 MCU の I2Cv2 では、信号のタイミングパラメータを次の変数で変更できます。詳しくは を参照してください。 - -| 変数 | 既定値 | -|-----------------------|--------| -| `I2C1_TIMINGR_PRESC` | `15U` | -| `I2C1_TIMINGR_SCLDEL` | `4U` | -| `I2C1_TIMINGR_SDADEL` | `2U` | -| `I2C1_TIMINGR_SCLH` | `15U` | -| `I2C1_TIMINGR_SCLL` | `21U` | - -STM32 MCU では GPIO ピンを設定するとき、別の「代替機能」モードを使うことができます。これは I2Cv2 モードで使われるピンを変更するために必要です。適切な設定値は、使用している MCU のデータシートを参照してください。 - -| 変数 | 既定値 | -|---------------------|--------| -| `I2C1_SCL_PAL_MODE` | `4` | -| `I2C1_SDA_PAL_MODE` | `4` | - -#### その他 :id=other - -`void i2c_init(void)` 関数は `weak` 属性が付いており、オーバーロードすることができます。この場合、上記で設定した変数は使用されません。可能な GPIO の設定については、 MCU のデータシートを参照してください。次に示すのは初期化関数の例です: - -```c -void i2c_init(void) -{ - setPinInput(B6); // Try releasing special pins for a short time - setPinInput(B7); - wait_ms(10); // Wait for the release to happen - - palSetPadMode(GPIOB, 6, PAL_MODE_ALTERNATE(4) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_PUPDR_PULLUP); // Set B6 to I2C function - palSetPadMode(GPIOB, 7, PAL_MODE_ALTERNATE(4) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_PUPDR_PULLUP); // Set B7 to I2C function -} -``` diff --git a/docs/ja/isp_flashing_guide.md b/docs/ja/isp_flashing_guide.md deleted file mode 100644 index d629b964b2d..00000000000 --- a/docs/ja/isp_flashing_guide.md +++ /dev/null @@ -1,294 +0,0 @@ -# ISP 書き込みガイド - - - -ISP 書き込み(ICSP 書き込みと呼ぶ場合もあります)とは、マイクロコントローラーを直接プログラミングするプロセスです。 -これにより、ブートローダを交換したり、コントローラの「ヒューズ」を変更することができ、コントローラの速度や起動方法、その他のオプションなど、多くのハードウェアおよびソフトウェア関連の機能を制御します。 - -QMK の ISP 書き込みの主な用途は、AVRベースのコントローラ(Pro Micro、または V-USB チップ)のブートローダの書き込みまたは交換です。 - -?> これは Pro Micro や他の ATmega コントローラなどの AVR ベースのボードをプログラミングするためだけのものです。 Proton C などの Arm コントローラには使用できません。 - -## 破損したブートローダーの取り扱い - -ボードの書き込み/消去で問題が発生し、DFU ベースのコントローラで次のような不可解なエラーメッセージが表示される場合: - - libusb: warning [darwin_transfer_status] transfer error: timed out - dfu.c:844: -ETIMEDOUT: Transfer timed out, NAK 0xffffffc4 (-60) - atmel.c:1627: atmel_flash: flash data dfu_download failed. - atmel.c:1629: Expected message length of 1072, got -60. - atmel.c:1434: Error flashing the block: err -2. - ERROR - Memory write error, use debug for more info. - commands.c:360: Error writing memory data. (err -4) - - dfu.c:844: -EPIPE: a) Babble detect or b) Endpoint stalled 0xffffffe0 (-32) - Device is write protected. - dfu.c:252: dfu_clear_status( 0x7fff4fc2ea80 ) - atmel.c:1434: Error flashing the block: err -2. - ERROR - Memory write error, use debug for more info. - commands.c:360: Error writing memory data. (err -4) - -または、Pro Micro ベースのコントローラに対して次のようなメッセージが表示された場合: - - avrdude: butterfly_recv(): programmer is not responding - avrdude: butterfly_recv(): programmer is not responding - avrdude: verification error, first mismatch at byte 0x002a - 0x2b != 0x75 - avrdude: verification error; content mismatch - avrdude: verification error; content mismatch - - -あなたのボード/デバイスを再び動作させるには、ISP 書き込みが必要になるかもしれません。 - -## 必要なハードウェア - -実際に ISP の書き込みを行うには、以下のいずれか(その後に使用するプロトコルが続きます)が必要になります。 - -* [SparkFun PocketAVR](https://www.sparkfun.com/products/9825) - (USB Tiny) -* [USBtinyISP AVR Programmer Kit](https://www.adafruit.com/product/46) - (USB Tiny) -* [USBasp](https://www.fischl.de/usbasp/) - (usbasp) -* [Teensy 2.0](https://www.pjrc.com/store/teensy.html) - (avrisp) -* [Pro Micro](https://www.sparkfun.com/products/12640) - (avrisp) -* [Bus Pirate](https://www.adafruit.com/product/237) - (buspirate) - -ISP 書き込みに使用できるデバイスは他にもありますが、これらが主なものです。 -また、すべての製品リンクは公式バージョンへのものです。他の場所で入手することもできます。 - -また、「ISP プログラマ」をプログラミングするデバイスに配線するためのものも必要になります。 -PCB の中には直接使用できる ISP ヘッダがあるものもありますが、そうではない場合が多いので、コントローラ自体にハンダ付けするか、別のスイッチや他のコンポーネントにハンダ付けする必要があるでしょう。 - -### ISP ファームウェア - -Teensy と Pro Micro のコントローラを ISP プログラマとして使用するには、コントローラに ISP ファームウェアを書き込む必要があります。 -それ以外のハードウェアは、あらかじめプログラムされているはずです。 -そのため、これらのコントローラの場合は、正しい hex ファイルをダウンロードしてから書き込んでください。 - -* Teensy 2.0: [`util/teensy_2.0_ISP_B0.hex`](https://github.com/qmk/qmk_firmware/blob/master/util/teensy_2.0_ISP_B0.hex) (`B0`) -* Pro Micro: [`util/pro_micro_ISP_B6_10.hex`](https://github.com/qmk/qmk_firmware/blob/master/util/pro_micro_ISP_B6_10.hex) (`10/B6`) - -コントローラに書き込んだら、この hex ファイルはもう必要ありません。 - -## 必要なソフトウェア - -QMK ツールボックスは、このほとんど(すべて)に使用することができます。 - -ただし、Teensy 2.0 ボードを使っている場合は、[Teensy Loader](https://www.pjrc.com/teensy/loader.html) を使えば、Teensy 2.0 ボードに書き込むことができます。 -あるいは、`avrdude` (`qmk_install.sh` の一部としてインストールされています) や、[AVRDUDESS](https://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/) (Windows 用) を使って、Pro Micro に書き込んだり、ISP を書き込んだりすることができます。 - -## 配線 - -これは非常に簡単です。次のようにして、相互に対応するものを接続します。 - -### SparkFun Pocket AVR - - PocketAVR RST <-> Keyboard RESET - PocketAVR SCLK <-> Keyboard B1 (SCLK) - PocketAVR MOSI <-> Keyboard B2 (MOSI) - PocketAVR MISO <-> Keyboard B3 (MISO) - PocketAVR VCC <-> Keyboard VCC - PocketAVR GND <-> Keyboard GND - -### USBasp - - USBasp RST <-> Keyboard RESET - USBasp SCLK <-> Keyboard B1 (SCLK) - USBasp MOSI <-> Keyboard B2 (MOSI) - USBasp MISO <-> Keyboard B3 (MISO) - USBasp VCC <-> Keyboard VCC - USBasp GND <-> Keyboard GND - -### Teensy 2.0 - - Teensy B0 <-> Keyboard RESET - Teensy B1 <-> Keyboard B1 (SCLK) - Teensy B2 <-> Keyboard B2 (MOSI) - Teensy B3 <-> Keyboard B3 (MISO) - Teensy VCC <-> Keyboard VCC - Teensy GND <-> Keyboard GND - -!> Teensy の B0 ピンはキーボードのコントローラの RESET/RST ピンと配線されています。 Teensy の RESET ピンをキーボードの RESET に配線しないでください。 - -### Pro Micro - - Pro Micro 10 (B6) <-> Keyboard RESET - Pro Micro 15 (B1) <-> Keyboard B1 (SCLK) - Pro Micro 16 (B2) <-> Keyboard B2 (MOSI) - Pro Micro 14 (B3) <-> Keyboard B3 (MISO) - Pro Micro VCC <-> Keyboard VCC - Pro Micro GND <-> Keyboard GND - -!> Pro Micro の 10/B6 ピンはキーボードのコントローラの RESET/RST ピンに配線されています。 Pro Micro の RESET ピンをキーボードの RESET に配線 ***しないでください***。 - -## キーボードへの書き込み - -ISP プログラマをセットアップして、キーボードに接続したら、キーボードに書き込みをします。 - -### ブートローダファイル - -普通の状態に戻す一番簡単で手っ取り早い方法は、キーボードにブートローダだけ書き込むことです。 -これが終れば、普通にキーボードを接続して、普通にキーボードに書き込みできるようになります。 - -標準のブートローダは[`util/` フォルダー](https://github.com/qmk/qmk_firmware/tree/master/util) にあります。 -チップの正しいブートローダを書き込んでください: - -* **Atmel DFU** - * [ATmega16U4](https://github.com/qmk/qmk_firmware/blob/master/util/bootloader_atmega16u4_1.0.1.hex) - * [ATmega32U4](https://github.com/qmk/qmk_firmware/blob/master/util/bootloader_atmega32u4_1.0.0.hex) - * [AT90USB64](https://github.com/qmk/qmk_firmware/blob/master/util/bootloader_at90usb64_1.0.0.hex) - * [AT90USB128](https://github.com/qmk/qmk_firmware/blob/master/util/bootloader_at90usb128_1.0.1.hex) -* **Caterina** - * [Pro Micro (5V/16MHz)](https://github.com/sparkfun/Arduino_Boards/blob/master/sparkfun/avr/bootloaders/caterina/Caterina-promicro16.hex) - * [Pro Micro (3.3V/8MHz)](https://github.com/sparkfun/Arduino_Boards/blob/master/sparkfun/avr/bootloaders/caterina/Caterina-promicro8.hex) -* **BootloadHID (PS2AVRGB)** - * [ATmega32A](https://github.com/qmk/qmk_firmware/blob/master/util/bootloader_ps2avrgb_bootloadhid_1.0.1.hex) - -お使いのボードが何を使っているかわからない場合は、QMK のキーボード用の `rules.mk` ファイルを見てください。 -`MCU` と `BOOTLOADER` の行には必要な値が書かれています。これはボードのバージョンによって異なるかもしれません。 - -### 製造手法 - -ブートローダと通常のファームウェアを同時に書き込みたい場合、2つの方法があります。 -手動で行うか、コンパイル時に `:production` ターゲットを使って行うかです。 - -手動で行うには: - -1. オリジナルのファームウェアの .hex ファイルをテキストエディタで開きます -2. 最後の行を削除してください。(`:00000001FF`になっているはずです - これは EOF メッセージです) -3. ブートローダの内容全体を新しい行にコピーして(行間に空行を入れないように)、元のファイルの最後に貼り付けてください。 -4. これを新しいファイルとして `__production.hex` という名前で保存します。 - -?> ここでは他のブートローダも同じように使うことができますが、__ブートローダが必要で__、そうしないとまた ISP を使ってキーボードに新しいファームウェアを書き込まなければならなくなります。 - -#### QMK DFU ブートローダとプロダクションイメージの作成 - -コンパイル時に `:production` ターゲットを使用して、ボード用のファームウェア、QMK DFU ブートローダ、プロダクションファームウェアイメージを作成することができます。 -これが完了すると、3つのファイルが表示されます: - -* `_.hex` -* `__bootloader.hex` -* `__production.hex` - -QMK DFU ブートローダは `atmega32u4` コントローラ (AVR ベースの Planck ボードや Pro Micro など) でしかテストされておらず、他のコントローラではテストされていません。 -しかし、`atmega32a` や `atmega328p` のような V-USB コントローラでは間違いなく動作しません。 - -ブートローダかプロダクションファームウェアファイルのどちらかを書き込むことができます。 -プロダクションファームウェアファイルの方が、より多くのデータを書き込むので、書き込みに時間がかかります。 - -?> 注意:同じブートローダを使用しつづけるべきです。すでに DFU を使用している場合は、QMK DFU に切り替えても問題ありません。しかし、例えば Pro Micro に QMK DFU を書き込むには、追加の手順が必要になります。 - -## ブートローダ/プロダクションファイルの書き込み - -キーボードがどのデバイスにも接続されていないことを確認し、ISP プログラマを接続してください。 - -ブートローダの種類を変更したい場合は、コマンドラインを使用する必要があります。 - -### QMK Toolbox - -1. `AVRISP device connected` または `USB Tiny device connected` が黄色で表示されます。 -2. `Open` ダイアログで正しいブートローダー/プロダクションの .hex ファイルを選択します(パスにスペースを含めることはできません) -3. 書きこもうとしているキーボード(ISP プログラマではなく)のための正しい `Microcontroller` オプションが選択されていることを確認してください。 -4. `Flash` を押します -5. 特にプロダクションファイルの場合、しばらくは何も出力されませんが、待ちましょう。 - -検証とヒューズのチェックに問題がなければ、完了です。 -ボードが自動的に再起動する場合があります。 -それ以外の場合は、Teensy のプラグを抜いて、キーボードを接続します。 -テスト中は、Teensy をキーボードに接続したままにすることができますが、すべてが正常に機能することを確認したら、はんだを外すか、配線を外すことをお勧めします。 - -### コマンドライン - -ターミナル(Windows の場合は `cmd`)を開いて、修正した .hex ファイルがある場所に移動します。 -ここでは、このファイルを `main.hex` と呼び、Teensy 2.0 が `COM3` ポートに接続されていると仮定します。 -よくわからない場合は、デバイスマネージャを開いて、`Ports > USB Serial Device` を探してください。ここにある COM ポートを使ってください。 -あなたはそれが正しいポートであることを確認することができます: - - avrdude -c avrisp -P COM3 -p atmega32u4 - -次のような出力が得られるはずです: - - avrdude: AVR device initialized and ready to accept instructions - - Reading | ################################################## | 100% 0.02s - - avrdude: Device signature = 0x1e9587 - - avrdude: safemode: Fuses OK - - avrdude done. Thank you. - -私たちのキーボードは `atmega32u4`(共通)を使用しているので、これが指定するチップです。 -以下が完全なコマンドです: - - avrdude -c avrisp -P COM3 -p atmega32u4 -U flash:w:main.hex:i - -ボードが `atmega32a`(jj40 など)を使用している場合、コマンドは次のとおりです(最後の追加コードによりヒューズが正しく設定されます)。 - - avrdude -c avrisp -P COM3 -p atmega32 -U flash:w:main.hex:i -U hfuse:w:0xD0:m -U lfuse:w:0x0F:m - -プログレスバーが表示されてから、以下が表示されるはずです。 - - avrdude: verifying ... - avrdude: 32768 bytes of flash verified - - avrdude: safemode: Fuses OK - - avrdude done. Thank you. - -これは全てうまく動作したことを示しています。 -ボードが自動的に再起動する場合もありますが、そうでない場合は、Teensy のプラグを抜いてキーボードを接続してください。 -テスト中は、Teensy をキーボードに接続したままにすることができますが、すべてが正常に機能することを確認したら、はんだを外すか、配線を外すことをお勧めします。 - -SparkFun PocketAVR Programmer や、他の USB Tiny ベースの ISP プログラマを使用している場合は、次のようなものを使用すると良いでしょう。 - - avrdude -c usbtiny -P usb -p atmega32u4 - -#### 上級者向け: ヒューズの変更 - -Pro Micro に QMK DFU を書き込むなど、ブートローダを切り替える場合は、ブートローダの hex ファイルの書き込みに加えて、ヒューズを変更する必要があります。 -これは、`caterina` (Pro Micro ブートローダ) と `dfu` では起動ルーチンの扱いが異なり、その動作はヒューズによって制御されるからです。 - -!> これは、ヒューズを変更することは、永久にあなたのコントローラをレンガ化(訳注:日本では文鎮化と呼ぶことが多い、コントローラがまったく無反応になる状態)することができる方法の1つであるため、それは非常に注意が必要な1つの領域です。 - -以下は、`atmega32u4`の 5V 16MHz 版(5V Pro Micro など)を想定しています。 - -`atmega32u4`の DFU の場合、必要なヒューズ設定は次のとおりです: - -| ヒューズ | 設定 | -|----------|------------------| -| Low | `0x5E` | -| High | `0xD9` or `0x99` | -| Extended | `0xC3` | - -High ヒューズは 0xD9 か 0x99 のどちらかになります。 -違いは、0xD9 は QMK Firmware がソフトウェアでも無効化している JTAG を無効化しているのに対し、0x99 は JTAG を無効化していないことです。 - -これを設定するには、`-U lfuse:w:0x5E:m -U hfuse:w:0xD9:m -U efuse:w:0xC3:m` をコマンドに追加します。 -そうすると、最終的なコマンドは次のようになります。 - - avrdude -c avrisp -P COM3 -p atmega32u4 -U flash:w:main.hex:i -U lfuse:w:0x5E:m -U hfuse:w:0xD9:m -U efuse:w:0xC3:m - -`atmega32u4`の Caterina では、以下があなたに必要なヒューズの設定です。 - -| ヒューズ | 設定 | -|----------|--------| -| Low | `0xFF` | -| High | `0xD8` | -| Extended | `0xCB` | - -これを設定するには、コマンドに `-U lfuse:w:0xFF:m -U hfuse:w:0xD8:m -U efuse:w:0xCB:m` を追加します。 -これで、最終的なコマンドは次のようになるはずです。 - - avrdude -c avrisp -P COM3 -p atmega32u4 -U flash:w:main.hex:i -U lfuse:w:0xFF:m -U hfuse:w:0xD8:m -U efuse:w:0xCB:m - - -別のコントローラーを使用している場合や、別の設定を希望する場合は、この[AVR ヒューズ計算機](https://www.engbedded.com/fusecalc/)を使用して、より適切な値を見つけることができます。 - -## ヘルプ - -ご質問・ご不明な点がありましたら、お気軽に[issue を開いてください](https://github.com/qmk/qmk_firmware/issues/new)! diff --git a/docs/ja/ja_doc_status.sh b/docs/ja/ja_doc_status.sh deleted file mode 100644 index 3dfbbd2bc6f..00000000000 --- a/docs/ja/ja_doc_status.sh +++ /dev/null @@ -1,34 +0,0 @@ -#! /bin/sh -# -# Script to display the Japanese translation status of documents -# -if [ ! -d docs/ja ]; then - echo "'docs/ja' not found." - echo "do:" - echo " cd \$(QMK_TOP)" - echo " ./docs/ja/ja_doc_status.sh" - exit 1 -fi - -en_docs=`cd docs;ls -1 [a-z]*.md` -ja_docs=`cd docs/ja;ls -1 [a-z]*.md` -en_count=`echo $en_docs | wc -w` -ja_count=`echo $ja_docs | wc -w` -echo "English documents $en_count files." -echo "Japanese documents $ja_count files." - -echo "Files that have not been translated yet:" -for docfile in $en_docs -do - if [ ! -f docs/ja/$docfile ]; then - wc docs/$docfile - fi -done | sort -echo "Files that have not been updated yet:" -grep --no-filename "^[ ]*git diff" docs/ja/*.md | while read cmd -do - cline=`echo $cmd | sh | wc -l` - if [ $cline -gt 0 ]; then - echo "$cline $cmd" - fi -done | sort diff --git a/docs/ja/keycodes.md b/docs/ja/keycodes.md deleted file mode 100644 index 2e339af35bf..00000000000 --- a/docs/ja/keycodes.md +++ /dev/null @@ -1,574 +0,0 @@ -# キーコードの概要 - - - -[キーマップ](ja/keymap.md) を定義するときは、それぞれのキーに有効な定義が必要です。このページは、QMK で使えるキーコードに相当するシンボルについて記述しています。 - -このページは参照のみです。それぞれのキーの種類毎のリンク先のページに、それぞれのキーの機能についてもっと詳細に記載しています。 - -## 基本的なキーコード :id=basic-keycodes - -[基本的なキーコード](ja/keycodes_basic.md) も見てください。 - -?> 訳注: 以下の説明は、OS のキーボード配列の設定が「US」の場合のものです。OS のキーボード配列の設定が「JIS」の場合、一部のキーは下の表と異なる文字が入力されます。例えば、`KC_LBRC` は、OS のキーボード配列の設定が US であれば「`[` または `{`」が入力されますが、JIS の場合「`@` または `」が入力されます。 -?> これは、OS がキーボードから送信されたキーコードを解釈する際に、キーボード配列の設定によって対応する文字を変えるためです。もし、OS のキーボード配列の設定を JIS にする場合、`#include "keymap_jp.h"` を `keymap.c` に追加すると`JP_AT` のような JIS キーボードのキーキャップに対応したキーを指定できます。 - -|キー |エイリアス |説明 |Windows |macOS |Linux1| -|-----------------------|------------------------------|-----------------------------------------|-------------|-------------|-----------------| -|`KC_NO` |`XXXXXXX` |このキーを無視します (何もしません) 。 |*N/A* |*N/A* |*N/A* | -|`KC_TRANSPARENT` |`KC_TRNS`, `_______` | 次に低いレイヤーの非透過キーを使う |*N/A* |*N/A* |*N/A* | -|`KC_A` | |`a` と `A` |✔ |✔ |✔ | -|`KC_B` | |`b` と `B` |✔ |✔ |✔ | -|`KC_C` | |`c` と `C` |✔ |✔ |✔ | -|`KC_D` | |`d` と `D` |✔ |✔ |✔ | -|`KC_E` | |`e` と `E` |✔ |✔ |✔ | -|`KC_F` | |`f` と `F` |✔ |✔ |✔ | -|`KC_G` | |`g` と `G` |✔ |✔ |✔ | -|`KC_H` | |`h` と `H` |✔ |✔ |✔ | -|`KC_I` | |`i` と `I` |✔ |✔ |✔ | -|`KC_J` | |`j` と `J` |✔ |✔ |✔ | -|`KC_K` | |`k` と `K` |✔ |✔ |✔ | -|`KC_L` | |`l` と `L` |✔ |✔ |✔ | -|`KC_M` | |`m` と `M` |✔ |✔ |✔ | -|`KC_N` | |`n` と `N` |✔ |✔ |✔ | -|`KC_O` | |`o` と `O` |✔ |✔ |✔ | -|`KC_P` | |`p` と `P` |✔ |✔ |✔ | -|`KC_Q` | |`q` と `Q` |✔ |✔ |✔ | -|`KC_R` | |`r` と `R` |✔ |✔ |✔ | -|`KC_S` | |`s` と `S` |✔ |✔ |✔ | -|`KC_T` | |`t` と `T` |✔ |✔ |✔ | -|`KC_U` | |`u` と `U` |✔ |✔ |✔ | -|`KC_V` | |`v` と `V` |✔ |✔ |✔ | -|`KC_W` | |`w` と `W` |✔ |✔ |✔ | -|`KC_X` | |`x` と `X` |✔ |✔ |✔ | -|`KC_Y` | |`y` と `Y` |✔ |✔ |✔ | -|`KC_Z` | |`z` と `Z` |✔ |✔ |✔ | -|`KC_1` | |`1` と `!` |✔ |✔ |✔ | -|`KC_2` | |`2` と `@` |✔ |✔ |✔ | -|`KC_3` | |`3` と `#` |✔ |✔ |✔ | -|`KC_4` | |`4` と `$` |✔ |✔ |✔ | -|`KC_5` | |`5` と `%` |✔ |✔ |✔ | -|`KC_6` | |`6` と `^` |✔ |✔ |✔ | -|`KC_7` | |`7` と `&` |✔ |✔ |✔ | -|`KC_8` | |`8` と `*` |✔ |✔ |✔ | -|`KC_9` | |`9` と `(` |✔ |✔ |✔ | -|`KC_0` | |`0` と `)` |✔ |✔ |✔ | -|`KC_ENTER` |`KC_ENT` |Return (Enter) |✔ |✔ |✔ | -|`KC_ESCAPE` |`KC_ESC` |Escape |✔ |✔ |✔ | -|`KC_BSPACE` |`KC_BSPC` |Delete (Backspace) |✔ |✔ |✔ | -|`KC_TAB` | |Tab |✔ |✔ |✔ | -|`KC_SPACE` |`KC_SPC` |Spacebar |✔ |✔ |✔ | -|`KC_MINUS` |`KC_MINS` |`-` と `_` |✔ |✔ |✔ | -|`KC_EQUAL` |`KC_EQL` |`=` と `+` |✔ |✔ |✔ | -|`KC_LBRACKET` |`KC_LBRC` |`[` と `{` |✔ |✔ |✔ | -|`KC_RBRACKET` |`KC_RBRC` |`]` と `}` |✔ |✔ |✔ | -|`KC_BSLASH` |`KC_BSLS` |`\` と `\|` |✔ |✔ |✔ | -|`KC_NONUS_HASH` |`KC_NUHS` |Non-US `#` と `~` |✔ |✔ |✔ | -|`KC_SCOLON` |`KC_SCLN` |`;` と `:` |✔ |✔ |✔ | -|`KC_QUOTE` |`KC_QUOT` |`'` と `"` |✔ |✔ |✔ | -|`KC_GRAVE` |`KC_GRV`, `KC_ZKHK` |` と `~`, JIS 全角/半角 |✔ |✔ |✔ | -|`KC_COMMA` |`KC_COMM` |`,` と `<` |✔ |✔ |✔ | -|`KC_DOT` | |`.` と `>` |✔ |✔ |✔ | -|`KC_SLASH` |`KC_SLSH` |`/` と `?` |✔ |✔ |✔ | -|`KC_CAPSLOCK` |`KC_CLCK`, `KC_CAPS` |Caps Lock |✔ |✔ |✔ | -|`KC_F1` | |F1 |✔ |✔ |✔ | -|`KC_F2` | |F2 |✔ |✔ |✔ | -|`KC_F3` | |F3 |✔ |✔ |✔ | -|`KC_F4` | |F4 |✔ |✔ |✔ | -|`KC_F5` | |F5 |✔ |✔ |✔ | -|`KC_F6` | |F6 |✔ |✔ |✔ | -|`KC_F7` | |F7 |✔ |✔ |✔ | -|`KC_F8` | |F8 |✔ |✔ |✔ | -|`KC_F9` | |F9 |✔ |✔ |✔ | -|`KC_F10` | |F10 |✔ |✔ |✔ | -|`KC_F11` | |F11 |✔ |✔ |✔ | -|`KC_F12` | |F12 |✔ |✔ |✔ | -|`KC_PSCREEN` |`KC_PSCR` |Print Screen |✔ |✔2|✔ | -|`KC_SCROLLLOCK` |`KC_SCRL`, `KC_BRMD` |Scroll Lock, 画面の明るさダウン (macOS) |✔ |✔2|✔ | -|`KC_PAUSE` |`KC_PAUS`, `KC_BRK`, `KC_BRMU`|Pause, 画面の明るさアップ (macOS) |✔ |✔2|✔ | -|`KC_INSERT` |`KC_INS` |Insert |✔ | |✔ | -|`KC_HOME` | |Home |✔ |✔ |✔ | -|`KC_PGUP` | |Page Up |✔ |✔ |✔ | -|`KC_DELETE` |`KC_DEL` |Forward Delete |✔ |✔ |✔ | -|`KC_END` | |End |✔ |✔ |✔ | -|`KC_PGDOWN` |`KC_PGDN` |Page Down |✔ |✔ |✔ | -|`KC_RIGHT` |`KC_RGHT` |右矢印 |✔ |✔ |✔ | -|`KC_LEFT` | |左矢印 |✔ |✔ |✔ | -|`KC_DOWN` | |下矢印 |✔ |✔ |✔ | -|`KC_UP` | |上矢印 |✔ |✔ |✔ | -|`KC_NUMLOCK` |`KC_NUM` |テンキー Num Lock と Clear |✔ |✔ |✔ | -|`KC_KP_SLASH` |`KC_PSLS` |テンキー `/` |✔ |✔ |✔ | -|`KC_KP_ASTERISK` |`KC_PAST` |テンキー `*` |✔ |✔ |✔ | -|`KC_KP_MINUS` |`KC_PMNS` |テンキー `-` |✔ |✔ |✔ | -|`KC_KP_PLUS` |`KC_PPLS` |テンキー `+` |✔ |✔ |✔ | -|`KC_KP_ENTER` |`KC_PENT` |テンキー Enter |✔ |✔ |✔ | -|`KC_KP_1` |`KC_P1` |テンキー `1` と End |✔ |✔ |✔ | -|`KC_KP_2` |`KC_P2` |テンキー `2` と下矢印 |✔ |✔ |✔ | -|`KC_KP_3` |`KC_P3` |テンキー `3` と Page Down |✔ |✔ |✔ | -|`KC_KP_4` |`KC_P4` |テンキー `4` と左矢印 |✔ |✔ |✔ | -|`KC_KP_5` |`KC_P5` |テンキー `5` |✔ |✔ |✔ | -|`KC_KP_6` |`KC_P6` |テンキー `6` と右矢印 |✔ |✔ |✔ | -|`KC_KP_7` |`KC_P7` |テンキー `7` と Home |✔ |✔ |✔ | -|`KC_KP_8` |`KC_P8` |テンキー `8` と上矢印 |✔ |✔ |✔ | -|`KC_KP_9` |`KC_P9` |テンキー `9` と Page Up |✔ |✔ |✔ | -|`KC_KP_0` |`KC_P0` |テンキー `0` と Insert |✔ |✔ |✔ | -|`KC_KP_DOT` |`KC_PDOT` |テンキー `.` と Delete |✔ |✔ |✔ | -|`KC_NONUS_BSLASH` |`KC_NUBS` |Non-US `\` と `\|` |✔ |✔ |✔ | -|`KC_APPLICATION` |`KC_APP` |アプリケーションキー (Windows コンテキストメニューキー) |✔ | |✔ | -|`KC_POWER` | |システム電源 | |✔3|✔ | -|`KC_KP_EQUAL` |`KC_PEQL` |テンキー `=` |✔ |✔ |✔ | -|`KC_F13` | |F13 |✔ |✔ |✔ | -|`KC_F14` | |F14 |✔ |✔ |✔ | -|`KC_F15` | |F15 |✔ |✔ |✔ | -|`KC_F16` | |F16 |✔ |✔ |✔ | -|`KC_F17` | |F17 |✔ |✔ |✔ | -|`KC_F18` | |F18 |✔ |✔ |✔ | -|`KC_F19` | |F19 |✔ |✔ |✔ | -|`KC_F20` | |F20 |✔ | |✔ | -|`KC_F21` | |F21 |✔ | |✔ | -|`KC_F22` | |F22 |✔ | |✔ | -|`KC_F23` | |F23 |✔ | |✔ | -|`KC_F24` | |F24 |✔ | |✔ | -|`KC_EXECUTE` |`KC_EXEC` |Execute | | |✔ | -|`KC_HELP` | |Help | | |✔ | -|`KC_MENU` | |Menu | | |✔ | -|`KC_SELECT` |`KC_SLCT` |Select | | |✔ | -|`KC_STOP` | |Stop | | |✔ | -|`KC_AGAIN` |`KC_AGIN` |Again | | |✔ | -|`KC_UNDO` | |アンドゥ | | |✔ | -|`KC_CUT` | |カット | | |✔ | -|`KC_COPY` | |コピー | | |✔ | -|`KC_PASTE` |`KC_PSTE` |ペースト | | |✔ | -|`KC_FIND` | |検索 | | |✔ | -|`KC__MUTE` | |ミュート | |✔ |✔ | -|`KC__VOLUP` | |音量アップ | |✔ |✔ | -|`KC__VOLDOWN` | |音量ダウン | |✔ |✔ | -|`KC_LOCKING_CAPS` |`KC_LCAP` |Caps Lock のロック |✔ |✔ | | -|`KC_LOCKING_NUM` |`KC_LNUM` |Num Lock のロック |✔ |✔ | | -|`KC_LOCKING_SCROLL` |`KC_LSCR` |Scroll Lock のロック |✔ |✔ | | -|`KC_KP_COMMA` |`KC_PCMM` |テンキー `,` | | |✔ | -|`KC_KP_EQUAL_AS400` | |AS/400 キーボードのテンキー `=` | | | | -|`KC_INT1` |`KC_RO` |JIS `\` と `_` |✔ | |✔ | -|`KC_INT2` |`KC_KANA` |JIS カタカナ/ひらがな |✔ | |✔ | -|`KC_INT3` |`KC_JYEN` |JIS `¥` と `\|` |✔ | |✔ | -|`KC_INT4` |`KC_HENK` |JIS 変換 |✔ | |✔ | -|`KC_INT5` |`KC_MHEN` |JIS 無変換 |✔ | |✔ | -|`KC_INT6` | |JIS テンキー `,` | | |✔ | -|`KC_INT7` | |International 7 | | | | -|`KC_INT8` | |International 8 | | | | -|`KC_INT9` | |International 9 | | | | -|`KC_LANG1` |`KC_HAEN` |ハングル/英語 | | |✔ | -|`KC_LANG2` |`KC_HANJ` |韓文漢字 | | |✔ | -|`KC_LANG3` | |JIS カタカナ | | |✔ | -|`KC_LANG4` | |JIS ひらがな | | |✔ | -|`KC_LANG5` | |JIS 全角/半角 | | |✔ | -|`KC_LANG6` | |Language 6 | | | | -|`KC_LANG7` | |Language 7 | | | | -|`KC_LANG8` | |Language 8 | | | | -|`KC_LANG9` | |Language 9 | | | | -|`KC_ALT_ERASE` |`KC_ERAS` |Alternate Erase | | | | -|`KC_SYSREQ` | |SysReq/Attention | | | | -|`KC_CANCEL` | |Cancel | | | | -|`KC_CLEAR` |`KC_CLR` |Clear | | |✔ | -|`KC_PRIOR` | |Prior | | | | -|`KC_RETURN` | |Return | | | | -|`KC_SEPARATOR` | |Separator | | | | -|`KC_OUT` | |Out | | | | -|`KC_OPER` | |Oper | | | | -|`KC_CLEAR_AGAIN` | |Clear/Again | | | | -|`KC_CRSEL` | |CrSel/Props | | | | -|`KC_EXSEL` | |ExSel | | | | -|`KC_LCTRL` |`KC_LCTL` |左 Control |✔ |✔ |✔ | -|`KC_LSHIFT` |`KC_LSFT` |左 Shift |✔ |✔ |✔ | -|`KC_LALT` |`KC_LOPT` |左 Alt (Option) |✔ |✔ |✔ | -|`KC_LGUI` |`KC_LCMD`, `KC_LWIN` |左 GUI (Windows/Command/Meta key) |✔ |✔ |✔ | -|`KC_RCTRL` |`KC_RCTL` |右 Control |✔ |✔ |✔ | -|`KC_RSHIFT` |`KC_RSFT` |右 Shift |✔ |✔ |✔ | -|`KC_RALT` |`KC_ROPT`, `KC_ALGR` |右 Alt (Option/AltGr) |✔ |✔ |✔ | -|`KC_RGUI` |`KC_RCMD`, `KC_RWIN` |右 GUI (Windows/Command/Meta key) |✔ |✔ |✔ | -|`KC_SYSTEM_POWER` |`KC_PWR` |システム電源オフ |✔ |✔3|✔ | -|`KC_SYSTEM_SLEEP` |`KC_SLEP` |システムスリープ |✔ |✔3|✔ | -|`KC_SYSTEM_WAKE` |`KC_WAKE` |システムスリープ解除 | |✔3|✔ | -|`KC_AUDIO_MUTE` |`KC_MUTE` |ミュート |✔ |✔ |✔ | -|`KC_AUDIO_VOL_UP` |`KC_VOLU` |音量アップ |✔ |✔4|✔ | -|`KC_AUDIO_VOL_DOWN` |`KC_VOLD` |音量ダウン |✔ |✔4|✔ | -|`KC_MEDIA_NEXT_TRACK` |`KC_MNXT` |次の曲へ |✔ |✔5|✔ | -|`KC_MEDIA_PREV_TRACK` |`KC_MPRV` |前の曲へ |✔ |✔5|✔ | -|`KC_MEDIA_STOP` |`KC_MSTP` |再生停止 |✔ | |✔ | -|`KC_MEDIA_PLAY_PAUSE` |`KC_MPLY` |再生/一時停止 |✔ |✔ |✔ | -|`KC_MEDIA_SELECT` |`KC_MSEL` |Media Player 起動 |✔ | |✔ | -|`KC_MEDIA_EJECT` |`KC_EJCT` |イジェクト | |✔ |✔ | -|`KC_MAIL` | |メール起動 |✔ | |✔ | -|`KC_CALCULATOR` |`KC_CALC` |電卓起動 |✔ | |✔ | -|`KC_MY_COMPUTER` |`KC_MYCM` |マイコンピュータを開く |✔ | |✔ | -|`KC_WWW_SEARCH` |`KC_WSCH` |ブラウザ検索 |✔ | |✔ | -|`KC_WWW_HOME` |`KC_WHOM` |ブラウザホーム画面 |✔ | |✔ | -|`KC_WWW_BACK` |`KC_WBAK` |ブラウザ戻る |✔ | |✔ | -|`KC_WWW_FORWARD` |`KC_WFWD` |ブラウザ進む |✔ | |✔ | -|`KC_WWW_STOP` |`KC_WSTP` |ブラウザ読み込み中止 |✔ | |✔ | -|`KC_WWW_REFRESH` |`KC_WREF` |ブラウザ再読み込み |✔ | |✔ | -|`KC_WWW_FAVORITES` |`KC_WFAV` |ブラウザお気に入り |✔ | |✔ | -|`KC_MEDIA_FAST_FORWARD`|`KC_MFFD` |次の曲へ |✔ |✔5|✔ | -|`KC_MEDIA_REWIND` |`KC_MRWD` |前の曲へ |✔6|✔5|✔ | -|`KC_BRIGHTNESS_UP` |`KC_BRIU` |画面の明るさアップ |✔ |✔ |✔ | -|`KC_BRIGHTNESS_DOWN` |`KC_BRID` |画面の明るさダウン |✔ |✔ |✔ | - -1. Linux カーネル HID ドライバは [ほぼ全てのキーコード](https://github.com/torvalds/linux/blob/master/drivers/hid/hid-input.c) を識別しますが、デフォルトの関連付けは デスクトップ環境/ウィンドウマネージャによって決まります。
-2. F13-F15 として取り扱われます。
-3. 約3秒間押していると、プロンプトが表示されます。
-4. Shift と Option を押していると、ボリュームレベルの細かいコントロールが可能になります。
-5. iTunes では、タップすると1曲全体がスキップされます。押していると曲の中で早送り/巻き戻しになります。
-6. Windows Media Player は巻き戻しキーを識別しませんが、VLC では早送り/巻き戻しキーで再生速度が変更されます。 - -## Quantum キーコード :id=quantum-keycodes - -[Quantum キーコード](ja/quantum_keycodes.md#qmk-keycodes) も見てください。 - -|キー |エイリアス |説明 | -|-----------------|---------|---------------------------------------------------------| -|`QK_BOOTLOADER` |`QK_BOOT`|ファームウエア書き込みのためにキーボードをブートローダーモードにします | -|`QK_DEBUG_TOGGLE`|`DB_TOGG`|デバッグモードを切り替えます | -|`QK_CLEAR_EEPROM`|`EE_CLR` |キーボードの EEPROM (不揮発メモリ) を再初期化します | - -## オーディオキー :id=audio-keys - -[オーディオ](ja/feature_audio.md) も見てください。 - -|キー |エイリアス |説明 | -|----------------|------------|---------------------------------------| -|`AU_ON` | |オーディオモードオン | -|`AU_OFF` | |オーディオモードオフ | -|`AU_TOG` | |オーディオモードを切り替えます | -|`CLICKY_TOGGLE` |`CK_TOGG` |オーディオクリックモードを切り替えます | -|`CLICKY_UP` |`CK_UP` |クリック音の周波数を増やします | -|`CLICKY_DOWN` |`CK_DOWN` |クリック音の周波数を減らします | -|`CLICKY_RESET` |`CK_RST` |周波数をデフォルトに再設定します | -|`MU_ON` | |音楽モードをオンにします | -|`MU_OFF` | |音楽モードをオフにします | -|`MU_TOG` | |音楽モードを切り替えます | -|`MU_MOD` | |音楽モードを循環します | - -## バックライト :id=backlighting - -[バックライト](ja/feature_backlight.md) も見てください。 - -|キー |説明 | -|---------|-------------------------------------| -|`BL_TOGG`|バックライトをオンあるいはオフにする | -|`BL_STEP`|バックライトレベルを循環する | -|`BL_ON` |バックライトを最大輝度にセットする | -|`BL_OFF` |バックライトをオフにする | -|`BL_INC` |バックライトのレベルを上げる | -|`BL_DEC` |バックライトのレベルを下げる | -|`BL_BRTG`|バックライトの明滅動作を切り替える | - -## ブートマジック :id=bootmagic - -[ブートマジック](ja/feature_bootmagic.md) も見てください。 - -| キー | エイリアス| 説明 | -|------------------------------------|-----------|-------------------------------------------------------| -| `MAGIC_SWAP_CONTROL_CAPSLOCK` | `CL_SWAP` | Caps Lock と左 Control の入れ替え | -| `MAGIC_UNSWAP_CONTROL_CAPSLOCK` | `CL_NORM` | Caps Lock と左 Control の入れ替えの解除 | -| `MAGIC_CAPSLOCK_TO_CONTROL` | `CL_CTRL` | Caps Lock を Control として扱う | -| `MAGIC_UNCAPSLOCK_TO_CONTROL` | `CL_CAPS` | Caps Lock を Control として扱うことを止める | -| `MAGIC_SWAP_LCTL_LGUI` | `LCG_SWP` | 左 Control と GUI の入れ替え | -| `MAGIC_UNSWAP_LCTL_LGUI` | `LCG_NRM` | 左 Control と GUI の入れ替えを解除 | -| `MAGIC_SWAP_RCTL_RGUI` | `RCG_SWP` | 右 Control と GUI の入れ替え | -| `MAGIC_UNSWAP_RCTL_RGUI` | `RCG_NRM` | 右 Control と GUI の入れ替えを解除 | -| `MAGIC_SWAP_CTL_GUI` | `CG_SWAP` | 両側の Control と GUI の入れ替え | -| `MAGIC_UNSWAP_CTL_GUI` | `CG_NORM` | 両側の Control と GUI の入れ替えを解除 | -| `MAGIC_TOGGLE_CTL_GUI` | `CG_TOGG` | 両側の Control と GUI の入れ替えの切り替え | -| `MAGIC_SWAP_LALT_LGUI` | `LAG_SWP` | 左 Alt と GUI の入れ替え | -| `MAGIC_UNSWAP_LALT_LGUI` | `LAG_NRM` | 左 Alt と GUI の入れ替えを解除 | -| `MAGIC_SWAP_RALT_RGUI` | `RAG_SWP` | 右 Alt と GUI の入れ替え | -| `MAGIC_UNSWAP_RALT_RGUI` | `RAG_NRM` | 右 Alt と GUI の入れ替えを解除 | -| `MAGIC_SWAP_ALT_GUI` | `AG_SWAP` | 両側の Alt と GUI の入れ替え | -| `MAGIC_UNSWAP_ALT_GUI` | `AG_NORM` | 両側の Alt と GUI の入れ替えを解除 | -| `MAGIC_TOGGLE_ALT_GUI` | `AG_TOGG` | 両側の Alt と GUI の入れ替えの切り替え | -| `MAGIC_NO_GUI` | `GUI_OFF` | GUI キーを無効にする | -| `MAGIC_UNNO_GUI` | `GUI_ON` | GUI キーを有効にする | -| `MAGIC_SWAP_GRAVE_ESC` | `GE_SWAP` | ` とエスケープの入れ替え | -| `MAGIC_UNSWAP_GRAVE_ESC` | `GE_NORM` | ` とエスケープの入れ替えを解除 | -| `MAGIC_SWAP_BACKSLASH_BACKSPACE` | `BS_SWAP` | `\` と Backspace を入れ替え | -| `MAGIC_UNSWAP_BACKSLASH_BACKSPACE` | `BS_NORM` | `\` と Backspace の入れ替えを解除する | -| `MAGIC_HOST_NKRO` | `NK_ON` | N キーロールオーバーを有効にする | -| `MAGIC_UNHOST_NKRO` | `NK_OFF` | N キーロールオーバーを無効にする | -| `MAGIC_TOGGLE_NKRO` | `NK_TOGG` | N キーロールオーバーの有効・無効を切り替え | -| `MAGIC_EE_HANDS_LEFT` | `EH_LEFT` | 分割キーボードのマスター側を左手に設定(`EE_HANDS` 用) | -| `MAGIC_EE_HANDS_RIGHT` | `EH_RGHT` | 分割キーボードのマスター側を右手に設定(`EE_HANDS` 用) | - -## Bluetooth :id=bluetooth - -[Bluetooth](ja/feature_bluetooth.md) も見てください。 - - -|キー |説明 | -|----------|--------------------------------------| -|`OUT_AUTO`|USB と Bluetooth を自動的に切り替える | -|`OUT_USB` |USB のみ | -|`OUT_BT` |Bluetooth のみ | - -## 動的マクロ :id=dynamic-macros - -[動的マクロ](ja/feature_dynamic_macros.md) も見てください。 - -|キー |エイリアス |説明 | -|-----------------|---------|-------------------------------------| -|`DYN_REC_START1` |`DM_REC1`|マクロ 1 の記録を開始します | -|`DYN_REC_START2` |`DM_REC2`|マクロ 2 の記録を開始します | -|`DYN_MACRO_PLAY1`|`DM_PLY1`|マクロ 1 を再生します | -|`DYN_MACRO_PLAY2`|`DM_PLY2`|マクロ 2 を再生します | -|`DYN_REC_STOP` |`DM_RSTP`|現在記録中のマクロの記録を終了します | - -## グレイブエスケープ :id=grave-escape - -[グレイブエスケープ](ja/feature_grave_esc.md) も見てください。 - -|キー |エイリアス |説明 | -|-----------|---------|------------------------------------------------------------------| -|`GRAVE_ESC`|`KC_GESC`|押された場合に Escape。Shift あるいは GUI が押されたままの場合は `| - -## キーロック :id=key-lock - -[キーロック](ja/feature_key_lock.md) も見てください。 - -|キー |説明 | -|---------|--------------------------------------------------| -|`KC_LOCK`|キーが再び押されるまで次のキーを押したままにします | - -## レイヤー切り替え :id=layer-switching - -[レイヤー切り替え](ja/feature_layers.md#switching-and-toggling-layers) も見てください。 - -|キー |説明 | -|----------------|--------------------------------------------------------------------------------------------------------------------------------------| -|`DF(layer)` |指定されたレイヤーを基本 (デフォルト) レイヤーに設定する | -|`MO(layer)` |キーを押したら一時的に `layer` を切り替える。(切り替え先のレイヤーには `KC_TRNS` が必要です) | -|`OSL(layer)` |次のキーが押されるまで、一時的にレイヤーをアクティブにします。詳細は [ワンショットキー](ja/one_shot_keys.md) のとおり。 | -|`LM(layer, mod)`|`mod` がアクティブな状態で (MO のように) 一時的にレイヤーをアクティブにします。ここでは、`mod` は mods_bit のことです。Mod については [こちら](ja/mod_tap.md) で見ることができます。実装例: `LM(LAYER_1, MOD_LALT)` | -|`LT(layer, kc)` |押していると `layer` をオンにし、タップすると `kc` になります。 | -|`TG(layer)` |`layer` のオン・オフを切り替え | -|`TO(layer)` |`layer` をオンにして、デフォルトレイヤーを除く他のレイヤーをオフにします。 | -|`TT(layer)` |複数回タップしない限り `MO` のように動作し、複数回タップすると `layer` をオンにトグルします。 | - -## リーダーキー :id=leader-key - -[リーダーキー](ja/feature_leader_key.md) も見てください。 - -|キー |説明 | -|---------|-------------------------------| -|`KC_LEAD`|リーダーキーのシーケンスを開始 | - -## マウスキー :id=mouse-keys - -[マウスキー](ja/feature_mouse_keys.md) も見てください。 - -|キー |エイリアス |説明 | -|----------------|---------|-------------------------| -|`KC_MS_UP` |`KC_MS_U`|マウスカーソルを上に移動 | -|`KC_MS_DOWN` |`KC_MS_D`|マウスカーソルを下に移動 | -|`KC_MS_LEFT` |`KC_MS_L`|マウスカーソルを左に移動 | -|`KC_MS_RIGHT` |`KC_MS_R`|マウスカーソルを右に移動 | -|`KC_MS_BTN1` |`KC_BTN1`|ボタン1を押す | -|`KC_MS_BTN2` |`KC_BTN2`|ボタン2を押す | -|`KC_MS_BTN3` |`KC_BTN3`|ボタン3を押す | -|`KC_MS_BTN4` |`KC_BTN4`|ボタン4を押す | -|`KC_MS_BTN5` |`KC_BTN5`|ボタン5を押す | -|`KC_MS_WH_UP` |`KC_WH_U`|ホイールを向こう側に回転 | -|`KC_MS_WH_DOWN` |`KC_WH_D`|ホイールを手前側に回転 | -|`KC_MS_WH_LEFT` |`KC_WH_L`|ホイールを左に倒す | -|`KC_MS_WH_RIGHT`|`KC_WH_R`|ホイールを右に倒す | -|`KC_MS_ACCEL0` |`KC_ACL0`|速度を0に設定 | -|`KC_MS_ACCEL1` |`KC_ACL1`|速度を1に設定 | -|`KC_MS_ACCEL2` |`KC_ACL2`|速度を2に設定 | - -## 修飾キー :id=modifiers - -[修飾キー](ja/feature_advanced_keycodes.md#modifier-keys) も見てください。 - -| キー | エイリアス | 説明 | -|------------|---------------------------------|---------------------------------------------------------------| -| `LCTL(kc)` | `C(kc)` | 左 Control を押しながら `kc` を押します。 | -| `LSFT(kc)` | `S(kc)` | 左 Shift を押しながら `kc` を押します。 | -| `LALT(kc)` | `A(kc)`, `LOPT(kc)` | 左 Alt を押しながら `kc`を押します。 | -| `LGUI(kc)` | `G(kc)`, `LCMD(kc)`, `LWIN(kc)` | 左 GUI を押しながら `kc` を押します。 | -| `RCTL(kc)` | | 右 Control を押しながら `kc` を押します。 | -| `RSFT(kc)` | | 右 Shift を押しながら `kc` を押します。 | -| `RALT(kc)` | `ROPT(kc)`, `ALGR(kc)` | 右 Alt (AltGr) を押しながら `kc` を押します。 | -| `RGUI(kc)` | `RCMD(kc)`, `LWIN(kc)` | 右 GUI を押しながら `kc` を押します。 | -| `SGUI(kc)` | `SCMD(kc)`, `SWIN(kc)` | 左 Shift と GUI を押しながら `kc` を押します。 | -| `LCA(kc)` | | 左 Control と Alt を押しながら `kc` を押します。 | -| `LSA(kc)` | | 左 Shift と Alt を押しながら `kc` を押します。 | -| `RSA(kc)` |`SAGR(kc)` | 右 Shift と Alt (AltGr) を押しながら `kc` を押します。 | -| `RCS(kc)` | | 右 Control と Shift を押しながら `kc` を押します。 | -| `LCAG(kc)` | | 左 Control、Alt、GUI を押しながら `kc` を押します。 | -| `MEH(kc)` | | 左 Control、Shift、Alt を押しながら `kc` を押します。 | -| `HYPR(kc)` | | 左 Control、Shift、Alt、GUI を押しながら `kc` を押します。 | -| `KC_MEH` | | 左 Control、Shift、Alt | -| `KC_HYPR` | | 左 Control、Shift、Alt、GUI | - - -## モッドタップキー :id=mod-tap-keys - -[モッドタップキー](ja/mod_tap.md) も見てください。 - -|キー |エイリアス | 説明 | -|--------------|-------------------------------------------------------------------|------------------------------------------------------------------------| -| `MT(mod, kc)`| |押したままの場合は `mod` 、タップした場合は `kc` | -| `LCTL_T(kc)` | `CTL_T(kc)` | 押したままの場合は左 Control、タップした場合は `kc` | -| `LSFT_T(kc)` | `SFT_T(kc)` | 押したままの場合は左 Shift、タップした場合は `kc` | -| `LALT_T(kc)` | `LOPT_T(kc)`, `ALT_T(kc)`, `OPT_T(kc)` | 押したままの場合は左 Alt、タップした場合は `kc` | -| `LGUI_T(kc)` | `LCMD_T(kc)`, `LWIN_T(kc)`, `GUI_T(kc)`, `CMD_T(kc)`, `WIN_T(kc)` | 押したままの場合は左 GUI、タップした場合は `kc` | -| `RCTL_T(kc)` | | 押したままの場合は右 Control、タップした場合は `kc` | -| `RSFT_T(kc)` | | 押したままの場合は右 Shift、タップした場合は `kc` | -| `RALT_T(kc)` | `ROPT_T(kc)`, `ALGR_T(kc)` | 押したままの場合は右 Alt (AltGr) 、タップした場合は `kc` | -| `RGUI_T(kc)` | `RCMD_T(kc)`, `RWIN_T(kc)` | 押したままの場合は右 GUI、タップした場合は `kc` | -| `SGUI_T(kc)` | `SCMD_T(kc)`, `SWIN_T(kc)` | 押したままの場合は左 Shift と GUI、タップした場合は `kc` | -| `LCA_T(kc)` | | 押したままの場合は左 Control と Alt、タップした場合は `kc` | -| `LSA_T(kc)` | | 押したままの場合は左 Shift と Alt、タップした場合は `kc` | -| `RSA_T(kc)` |`SAGR_T(kc)` | 押したままの場合は右 Shift と Alt (AltGr) 、タップした場合は `kc` | -| `RCS_T(kc)` | | 押したままの場合は右 Control と Shift、タップした場合は `kc` | -| `LCAG_T(kc)` | | 押したままの場合は左 Control、Alt、GUI、タップした場合は `kc` | -| `RCAG_T(kc)` | | 押したままの場合は右 Control、Alt、GUI、タップした場合は `kc` | -| `C_S_T(kc)` | | 押したままの場合は左 Control と Shift、タップした場合は `kc` | -| `MEH_T(kc)` | | 押したままの場合は左 Control、Shift、Alt、タップした場合は `kc` | -| `HYPR_T(kc)` | `ALL_T(kc)` | 押したままの場合は左 Control、Shift、Alt、GUI、タップした場合は `kc` - より詳しくは[ここ](https://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)を見てください | - -## RGB ライト :id=rgb-lighting - -[RGB ライト](ja/feature_rgblight.md) も見てください。 - -|キー |エイリアス|説明 | -|-------------------|----------|---------------------------------------------------------------------| -|`RGB_TOG` | |RGB ライトのオン・オフを切り替え | -|`RGB_MODE_FORWARD` |`RGB_MOD` |RGB モードを順送りで変更し、Shift を押していると逆順で変更します。 | -|`RGB_MODE_REVERSE` |`RGB_RMOD`|RGB モードを逆順で変更し、Shift を押していると順送りで変更します。 | -|`RGB_HUI` | |色相 (HUE) を増加させ、Shift を押していると減少させます。 | -|`RGB_HUD` | |色相 (HUE) を減少させ、Shift を押していると増加させます。 | -|`RGB_SAI` | |彩度 (SAT) を増加させ、Shift を押していると減少させます。 | -|`RGB_SAD` | |彩度 (SAT) を減少させ、Shift を押していると増加させます。 | -|`RGB_VAI` | |明度 (VAL/brightness) を増加させ、Shift を押していると減少させます。 | -|`RGB_VAD` | |明度 (VAL/brightness) を減少させ、Shift を押していると増加させます。 | -|`RGB_MODE_PLAIN` |`RGB_M_P `|静止(動き無し) モードに固定します | -|`RGB_MODE_BREATHE` |`RGB_M_B` |明滅アニメーションモード | -|`RGB_MODE_RAINBOW` |`RGB_M_R` |レインボーアニメーションモード | -|`RGB_MODE_SWIRL` |`RGB_M_SW`|渦巻アニメーションモード | -|`RGB_MODE_SNAKE` |`RGB_M_SN`|スネークアニメーションモード | -|`RGB_MODE_KNIGHT` |`RGB_M_K` |「ナイトライダー」アニメーションモード | -|`RGB_MODE_XMAS` |`RGB_M_X` |クリスマスアニメーションモード | -|`RGB_MODE_GRADIENT`|`RGB_M_G` |固定階調アニメーションモード | -|`RGB_MODE_RGBTEST` |`RGB_M_T` |赤、緑、青のテストアニメーションモード | - -## RGB マトリックスライト :id=rgb-matrix-lighting - -[RGB マトリックスライト](ja/feature_rgb_matrix.md) も見てください。 - -|キー |エイリアス|説明 | -|-------------------|----------|--------------------------------------------------------------------------------------------------------| -|`RGB_TOG` | |RGB ライトのオン・オフを切り替え | -|`RGB_MODE_FORWARD` |`RGB_MOD` |RGB モードを順送りで変更し、Shift を押していると逆順で変更します。 | -|`RGB_MODE_REVERSE` |`RGB_RMOD`|RGB モードを逆順で変更し、Shift を押していると順送りで変更します。 | -|`RGB_HUI` | |色相 (HUE) を増加させ、Shift を押していると減少させます。 | -|`RGB_HUD` | |色相 (HUE) を減少させ、Shift を押していると増加させます。 | -|`RGB_SAI` | |彩度 (SAT) を増加させ、Shift を押していると減少させます。 | -|`RGB_SAD` | |彩度 (SAT) を減少させ、Shift を押していると増加させます。 | -|`RGB_VAI` | |明度 (VAL/brightness) を増加させ、Shift を押していると減少させます。 | -|`RGB_VAD` | |明度 (VAL/brightness) を減少させ、Shift を押していると増加させます。 | -|`RGB_SPI` | |エフェクトのスピード (EEPROM はまだサポートしていません) を増加させ、Shift を押していると減少させます。 | -|`RGB_SPD` | |エフェクトのスピード (EEPROM はまだサポートしていません) を減少させ、Shift を押していると増加させます。 | - -## 感熱式プリンタ :id=thermal-printer - -[感熱式プリンタ](ja/feature_thermal_printer.md) も見てください。 - -|キー |説明 | -|-----------|---------------------------------| -|`PRINT_ON` |ユーザが入力した全ての印刷を開始 | -|`PRINT_OFF`|ユーザが入力した全ての印刷を停止 | - -## US ANSI シフト済シンボル :id=us-ansi-shifted-symbols - -[US ANSI シフト済シンボル](ja/keycodes_us_ansi_shifted.md) も見てください。 - -|キー |エイリアス |説明| -|------------------------|-------------------|-----------| -|`KC_TILDE` |`KC_TILD` |`~` | -|`KC_EXCLAIM` |`KC_EXLM` |`!` | -|`KC_AT` | |`@` | -|`KC_HASH` | |`#` | -|`KC_DOLLAR` |`KC_DLR` |`$` | -|`KC_PERCENT` |`KC_PERC` |`%` | -|`KC_CIRCUMFLEX` |`KC_CIRC` |`^` | -|`KC_AMPERSAND` |`KC_AMPR` |`&` | -|`KC_ASTERISK` |`KC_ASTR` |`*` | -|`KC_LEFT_PAREN` |`KC_LPRN` |`(` | -|`KC_RIGHT_PAREN` |`KC_RPRN` |`)` | -|`KC_UNDERSCORE` |`KC_UNDS` |`_` | -|`KC_PLUS` | |`+` | -|`KC_LEFT_CURLY_BRACE` |`KC_LCBR` |`{` | -|`KC_RIGHT_CURLY_BRACE` |`KC_RCBR` |`}` | -|`KC_PIPE` | |`\|` | -|`KC_COLON` |`KC_COLN` |`:` | -|`KC_DOUBLE_QUOTE` |`KC_DQUO`, `KC_DQT`|`"` | -|`KC_LEFT_ANGLE_BRACKET` |`KC_LABK`, `KC_LT` |`<` | -|`KC_RIGHT_ANGLE_BRACKET`|`KC_RABK`, `KC_GT` |`>` | -|`KC_QUESTION` |`KC_QUES` |`?` | - -## ワンショットキー :id=one-shot-keys - -[ワンショットキー](ja/one_shot_keys.md) も見てください。 - -|キー |説明 | -|------------|--------------------------------| -|`OSM(mod)` | 次のキーが押されるまで、`mod` を押したままにします | -|`OSL(layer)`| 次のキーが押されるまで、一時的にレイヤーをアクティブにします | - -## Space Cadet :id=space-cadet - -[Space Cadet](ja/feature_space_cadet.md) も見てください。 - -|キー |説明 | -|-----------|-------------------------------------------| -|`KC_LCPO` |押したままの場合は左 Control、タップした場合は `(` | -|`KC_RCPC` |押したままの場合は右 Control、タップした場合は `)` | -|`KC_LSPO` |押したままの場合は左 Shift、タップした場合は `(`、 | -|`KC_RSPC` |押したままの場合は右 Shift、タップした場合は `)`、 | -|`KC_LAPO` |押したままの場合は左 Alt、タップした場合は `(`、 | -|`KC_RAPC` |押したままの場合は右 Alt、タップした場合は `)`、 | -|`KC_SFTENT`|押したままの場合は右 Shift、タップした場合は Enter | - -## スワップハンド :id=swap-hands - -[スワップハンド](ja/feature_swap_hands.md) も見てください。 - -|キー |説明 | -|-------------|----------------------------------------------------------------------------------| -| `SH_T(key)` | タップで `key` を送信する。押している時に一時的に入れ替え。 | -| `SH_ON` | 入れ替えをオンにして、そのままにする。 | -| `SH_OFF` | 入れ替えをオフにして、そのままにする。既知の状態に戻るのに適しています。 | -| `SH_MON` | 押すとスワップハンドし、放すと通常に戻る (一時的)。 | -| `SH_MOFF` | 一時的に入れ替えをオフする。 | -| `SH_TG` | キーを押すたびにオンとオフを切り替える。 | -| `SH_TT` | タップで切り替える。押している時に一時的に切り替える。 | -| `SH_OS` | ワンショットスワップハンド: 押している時あるいは次のキーを押すまで切り替える。 | - -## ユニコードサポート :id=unicode-support - -[ユニコードサポート](ja/feature_unicode.md) も見てください。 - -|キー |エイリアス |説明 | -|----------------------|-----------|----------------------------------------------------------------------| -|`UC(c)` | |コードポイント `c` のユニコードを送信 | -|`X(i)` | |`unicode_map` のインデックス `i` のユニコードを送信 | -|`XP(i, j)` | |Shift/Capsが有効なら、インデックス `i` または `j` のユニコードを送信 | -|`UNICODE_MODE_FORWARD`|`UC_MOD` |ユニコード入力方式を順送りで選択 | -|`UNICODE_MODE_REVERSE`|`UC_RMOD` |ユニコード入力方式を逆順で選択 | -|`UNICODE_MODE_OSX` |`UC_M_OS` |ユニコード入力方式を macOS 方式に切り替え | -|`UNICODE_MODE_LNX` |`UC_M_LN` |ユニコード入力方式を Linux 方式に切り替え | -|`UNICODE_MODE_WIN` |`UC_M_WI` |ユニコード入力方式を Windows 方式に切り替え | -|`UNICODE_MODE_BSD` |`UC_M_BS` |ユニコード入力方式を BSD 方式に切り替え (実装されていません) | -|`UNICODE_MODE_WINC` |`UC_M_WC` |ユニコード入力方式を WinCompose を使う Windows 方式に切り替え | diff --git a/docs/ja/keycodes_basic.md b/docs/ja/keycodes_basic.md deleted file mode 100644 index 2ef8e4955d7..00000000000 --- a/docs/ja/keycodes_basic.md +++ /dev/null @@ -1,261 +0,0 @@ -# 基本的なキーコード - - - -基本的なキーコードのセットは、`KC_NO`、`KC_TRNS` と `0xA5-DF` の範囲のキーコードを除いて、[HID Keyboard/Keypad Usage Page (0x07)](https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf) に基づいています。 - -## 文字と数字 - -|キー |説明 | -|------|----------| -|`KC_A`|`a` と `A`| -|`KC_B`|`b` と `B`| -|`KC_C`|`c` と `C`| -|`KC_D`|`d` と `D`| -|`KC_E`|`e` と `E`| -|`KC_F`|`f` と `F`| -|`KC_G`|`g` と `G`| -|`KC_H`|`h` と `H`| -|`KC_I`|`i` と `I`| -|`KC_J`|`j` と `J`| -|`KC_K`|`k` と `K`| -|`KC_L`|`l` と `L`| -|`KC_M`|`m` と `M`| -|`KC_N`|`n` と `N`| -|`KC_O`|`o` と `O`| -|`KC_P`|`p` と `P`| -|`KC_Q`|`q` と `Q`| -|`KC_R`|`r` と `R`| -|`KC_S`|`s` と `S`| -|`KC_T`|`t` と `T`| -|`KC_U`|`u` と `U`| -|`KC_V`|`v` と `V`| -|`KC_W`|`w` と `W`| -|`KC_X`|`x` と `X`| -|`KC_Y`|`y` と `Y`| -|`KC_Z`|`z` と `Z`| -|`KC_1`|`1` と `!`| -|`KC_2`|`2` と `@`| -|`KC_3`|`3` と `#`| -|`KC_4`|`4` と `$`| -|`KC_5`|`5` と `%`| -|`KC_6`|`6` と `^`| -|`KC_7`|`7` と `&`| -|`KC_8`|`8` と `*`| -|`KC_9`|`9` と `(`| -|`KC_0`|`0` と `)`| - -## ファンクションキー - -|キー |説明 | -|--------|-----| -|`KC_F1` |F1 | -|`KC_F2` |F2 | -|`KC_F3` |F3 | -|`KC_F4` |F4 | -|`KC_F5` |F5 | -|`KC_F6` |F6 | -|`KC_F7` |F7 | -|`KC_F8` |F8 | -|`KC_F9` |F9 | -|`KC_F10`|F10 | -|`KC_F11`|F11 | -|`KC_F12`|F12 | -|`KC_F13`|F13 | -|`KC_F14`|F14 | -|`KC_F15`|F15 | -|`KC_F16`|F16 | -|`KC_F17`|F17 | -|`KC_F18`|F18 | -|`KC_F19`|F19 | -|`KC_F20`|F20 | -|`KC_F21`|F21 | -|`KC_F22`|F22 | -|`KC_F23`|F23 | -|`KC_F24`|F24 | - -## パンクチュエーション - -|キー |エイリアス |説明 | -|-----------------|-------------------|----------------------------------------------| -|`KC_ENTER` |`KC_ENT` |Return (Enter) | -|`KC_ESCAPE` |`KC_ESC` |Escape | -|`KC_BSPACE` |`KC_BSPC` |Delete (Backspace) | -|`KC_TAB` | |Tab | -|`KC_SPACE` |`KC_SPC` |Spacebar | -|`KC_MINUS` |`KC_MINS` |`-` と `_` | -|`KC_EQUAL` |`KC_EQL` |`=` と `+` | -|`KC_LBRACKET` |`KC_LBRC` |`[` と `{` | -|`KC_RBRACKET` |`KC_RBRC` |`]` と `}` | -|`KC_BSLASH` |`KC_BSLS` |`\` と `\|` | -|`KC_NONUS_HASH` |`KC_NUHS` |Non-US `#` と `~` | -|`KC_SCOLON` |`KC_SCLN` |`;` と `:` | -|`KC_QUOTE` |`KC_QUOT` |`'` と `"` | -|`KC_GRAVE` |`KC_GRV`, `KC_ZKHK`|` と `~`, JIS 全角/半角 | -|`KC_COMMA` |`KC_COMM` |`,` と `<` | -|`KC_DOT` | |`.` と `>` | -|`KC_SLASH` |`KC_SLSH` |`/` と `?` | -|`KC_NONUS_BSLASH`|`KC_NUBS` |Non-US `\` と `\|` | - -## ロックキー - -|キー |エイリアス |説明 | -|-------------------|--------------------|---------------------------------------| -|`KC_CAPSLOCK` |`KC_CLCK`, `KC_CAPS`|Caps Lock | -|`KC_SCROLLLOCK` |`KC_SCRL`, `KC_BRMD`|Scroll Lock, 画面の明るさダウン (macOS)| -|`KC_NUMLOCK` |`KC_NUM` |テンキー Num Lock と Clear | -|`KC_LOCKING_CAPS` |`KC_LCAP` |Caps Lock のロック | -|`KC_LOCKING_NUM` |`KC_LNUM` |Num Lock のロック | -|`KC_LOCKING_SCROLL`|`KC_LSCR` |Scroll Lock のロック | - -## 修飾キー - -|キー |エイリアス |説明 | -|-----------|--------------------|---------------------------------| -|`KC_LCTRL` |`KC_LCTL` |左 Control | -|`KC_LSHIFT`|`KC_LSFT` |左 Shift | -|`KC_LALT` |`KC_LOPT` |左 Alt (Option) | -|`KC_LGUI` |`KC_LCMD`, `KC_LWIN`|左 GUI (Windows/Command/Meta キー)| -|`KC_RCTRL` |`KC_RCTL` |右 Control | -|`KC_RSHIFT`|`KC_RSFT` |右 Shift | -|`KC_RALT` |`KC_ROPT`, `KC_ALGR`|右 Alt (Option/AltGr) | -|`KC_RGUI` |`KC_RCMD`, `KC_RWIN`|右 GUI (Windows/Command/Meta キー)| - -## 国際化対応キー - -|キー |エイリアス|説明 | -|----------|----------|---------------------| -|`KC_INT1` |`KC_RO` |JIS `\` と ` _` | -|`KC_INT2` |`KC_KANA` |JIS カタカナ/ひらがな| -|`KC_INT3` |`KC_JYEN` |JIS `¥` と `\ |` | -|`KC_INT4` |`KC_HENK` |JIS 変換 | -|`KC_INT5` |`KC_MHEN` |JIS 無変換 | -|`KC_INT6` | |JIS テンキー `,` | -|`KC_INT7` | |International 7 | -|`KC_INT8` | |International 8 | -|`KC_INT9` | |International 9 | -|`KC_LANG1`|`KC_HAEN` |ハングル/英語 | -|`KC_LANG2`|`KC_HANJ` |韓文漢字 | -|`KC_LANG3`| |JIS カタカナ | -|`KC_LANG4`| |JIS ひらがな | -|`KC_LANG5`| |JIS 全角/半角 | -|`KC_LANG6`| |Language 6 | -|`KC_LANG7`| |Language 7 | -|`KC_LANG8`| |Language 8 | -|`KC_LANG9`| |Language 9 | - -## コマンドキー - -|キー |エイリアス |説明 | -|------------------|------------------------------|-------------------------------------------------------| -|`KC_PSCREEN` |`KC_PSCR` |Print Screen | -|`KC_PAUSE` |`KC_PAUS`, `KC_BRK`, `KC_BRMU`|Pause, 画面の明るさアップ (macOS) | -|`KC_INSERT` |`KC_INS` |Insert | -|`KC_HOME` | |Home | -|`KC_PGUP` | |Page Up | -|`KC_DELETE` |`KC_DEL` |Forward Delete | -|`KC_END` | |End | -|`KC_PGDOWN` |`KC_PGDN` |Page Down | -|`KC_RIGHT` |`KC_RGHT` |右矢印 | -|`KC_LEFT` | |左矢印 | -|`KC_DOWN` | |下矢印 | -|`KC_UP` | |上矢印 | -|`KC_APPLICATION` |`KC_APP` |アプリケーションキー (Windows コンテキストメニューキー)| -|`KC_POWER` | |システム電源 | -|`KC_EXECUTE` |`KC_EXEC` |Execute | -|`KC_HELP` | |Help | -|`KC_MENU` | |Menu | -|`KC_SELECT` |`KC_SLCT` |Select | -|`KC_STOP` | |Stop | -|`KC_AGAIN` |`KC_AGIN` |Again | -|`KC_UNDO` | |アンドゥ | -|`KC_CUT` | |カット | -|`KC_COPY` | |コピー | -|`KC_PASTE` |`KC_PSTE` |ペースト | -|`KC_FIND` | |検索 | -|`KC__MUTE` | |ミュート | -|`KC__VOLUP` | |音量アップ | -|`KC__VOLDOWN` | |音量ダウン | -|`KC_ALT_ERASE` |`KC_ERAS` |Alternate Erase | -|`KC_SYSREQ` | |SysReq/Attention | -|`KC_CANCEL` | |Cancel | -|`KC_CLEAR` |`KC_CLR` |Clear | -|`KC_PRIOR` | |Prior | -|`KC_RETURN` | |Return | -|`KC_SEPARATOR` | |Separator | -|`KC_OUT` | |Out | -|`KC_OPER` | |Oper | -|`KC_CLEAR_AGAIN` | |Clear/Again | -|`KC_CRSEL` | |CrSel/Props | -|`KC_EXSEL` | |ExSel | - -## メディアキー - -これらのキーコードは、HID Keyboard/Keypad usage ページにはありません。`SYSTEM_` キーコードは、Generic Desktop ページで見つかります。また、その他は Consumer ページにあります。 - -?> これらのキーコードのいくつかは、OS によって異なる動作をする可能性があります。例として、macOS では `KC_MEDIA_FAST_FORWARD`、`KC_MEDIA_REWIND`、`KC_MEDIA_NEXT_TRACK`、`KC_MEDIA_PREV_TRACK` は、押している間は現在の曲の中でスキップしますが、タップした時は曲全体をスキップします。 - -|キー |エイリアス |説明 | -|-----------------------|-----------|----------------------| -|`KC_SYSTEM_POWER` |`KC_PWR` |システム電源オフ | -|`KC_SYSTEM_SLEEP` |`KC_SLEP` |システムスリープ | -|`KC_SYSTEM_WAKE` |`KC_WAKE` |システムスリープ解除 | -|`KC_AUDIO_MUTE` |`KC_MUTE` |ミュート | -|`KC_AUDIO_VOL_UP` |`KC_VOLU` |音量アップ | -|`KC_AUDIO_VOL_DOWN` |`KC_VOLD` |音量ダウン | -|`KC_MEDIA_NEXT_TRACK` |`KC_MNXT` |次の曲へ | -|`KC_MEDIA_PREV_TRACK` |`KC_MPRV` |前の曲へ | -|`KC_MEDIA_STOP` |`KC_MSTP` |再生停止 | -|`KC_MEDIA_PLAY_PAUSE` |`KC_MPLY` |再生/一時停止 | -|`KC_MEDIA_SELECT` |`KC_MSEL` |Media Player 起動 | -|`KC_MEDIA_EJECT` |`KC_EJCT` |イジェクト | -|`KC_MAIL` | |メール起動 | -|`KC_CALCULATOR` |`KC_CALC` |電卓起動 | -|`KC_MY_COMPUTER` |`KC_MYCM` |マイコンピュータを開く| -|`KC_WWW_SEARCH` |`KC_WSCH` |ブラウザ検索 | -|`KC_WWW_HOME` |`KC_WHOM` |ブラウザホーム画面 | -|`KC_WWW_BACK` |`KC_WBAK` |ブラウザ戻る | -|`KC_WWW_FORWARD` |`KC_WFWD` |ブラウザ進む | -|`KC_WWW_STOP` |`KC_WSTP` |ブラウザ読み込み中止 | -|`KC_WWW_REFRESH` |`KC_WREF` |ブラウザ再読み込み | -|`KC_WWW_FAVORITES` |`KC_WFAV` |ブラウザお気に入り | -|`KC_MEDIA_FAST_FORWARD`|`KC_MFFD` |次の曲へ | -|`KC_MEDIA_REWIND` |`KC_MRWD` |前の曲へ | -|`KC_BRIGHTNESS_UP` |`KC_BRIU` |画面の明るさアップ | -|`KC_BRIGHTNESS_DOWN` |`KC_BRID` |画面の明るさダウン | - -## テンキー - -|キー |エイリアス |説明 | -|-------------------|-----------|-------------------------------| -|`KC_KP_SLASH` |`KC_PSLS` |テンキー `/` | -|`KC_KP_ASTERISK` |`KC_PAST` |テンキー `*` | -|`KC_KP_MINUS` |`KC_PMNS` |テンキー `-` | -|`KC_KP_PLUS` |`KC_PPLS` |テンキー `+` | -|`KC_KP_ENTER` |`KC_PENT` |テンキー Enter | -|`KC_KP_1` |`KC_P1` |テンキー `1` と End | -|`KC_KP_2` |`KC_P2` |テンキー `2` と 下矢印 | -|`KC_KP_3` |`KC_P3` |テンキー `3` と Page Down | -|`KC_KP_4` |`KC_P4` |テンキー `4` と 左矢印 | -|`KC_KP_5` |`KC_P5` |テンキー `5` | -|`KC_KP_6` |`KC_P6` |テンキー `6` と 右矢印 | -|`KC_KP_7` |`KC_P7` |テンキー `7` と Home | -|`KC_KP_8` |`KC_P8` |テンキー `8` と 上矢印 | -|`KC_KP_9` |`KC_P9` |テンキー `9` と Page Up | -|`KC_KP_0` |`KC_P0` |テンキー `0` と Insert | -|`KC_KP_DOT` |`KC_PDOT` |テンキー `.` と Delete | -|`KC_KP_EQUAL` |`KC_PEQL` |テンキー `=` | -|`KC_KP_COMMA` |`KC_PCMM` |テンキー `,` | -|`KC_KP_EQUAL_AS400`| |AS/400 キーボードのテンキー `=`| - -## 特別なキー - -これらのキーコードに加えて、`0xA5-DF` の範囲のキーコードは、内部処理のために予約されています。 - -|キー |エイリアス |説明 | -|----------------|--------------------|-----------------------------------| -|`KC_NO` |`XXXXXXX` |このキーを無視します (NOOP) | -|`KC_TRANSPARENT`|`KC_TRNS`, `_______`|次に低いレイヤーの非透過キーを使う | diff --git a/docs/ja/keycodes_us_ansi_shifted.md b/docs/ja/keycodes_us_ansi_shifted.md deleted file mode 100644 index 3a574d0bed5..00000000000 --- a/docs/ja/keycodes_us_ansi_shifted.md +++ /dev/null @@ -1,41 +0,0 @@ -# US ANSI シフト記号 - - -これらのキーコードは、標準の US ANSI 配列のキーボードで「シフトされる」文字に対応します。これらのキーコードは自身のキーコードを持たず、`LSFT(kc)` の単なるショートカットであり、記号自体ではなく Shift キー抜きのキーコードと左 Shift キーを送信します。 - -## 注意書き - -残念ながら、これらのキーコードは、モッドタップやレイヤータップの中で使えません。キーコードで指定されたモディファイアは無視されるからです。 - -さらに、Windows でリモートデスクトップ接続を使う場合に、問題が発生する場合があります。なぜならば、これらのコードは Shift キーを非常に速く送信するため、リモートデスクトップがコードを見落とすかもしれないからです。 - -この問題を解決するには、リモートデスクトップ接続を開いて「オプションの表示」をクリックし、「ローカル リソース」タブを開きます。キーボードセクションでドロップダウンを「このコンピュータ」に変更します。これで問題が解決され、文字が正しく機能するようになります。 - -## キーコード - -|キー |エイリアス |説明 | -|------------------------|-------------------|-----------| -|`KC_TILDE` |`KC_TILD` |`~` | -|`KC_EXCLAIM` |`KC_EXLM` |`!` | -|`KC_AT` | |`@` | -|`KC_HASH` | |`#` | -|`KC_DOLLAR` |`KC_DLR` |`$` | -|`KC_PERCENT` |`KC_PERC` |`%` | -|`KC_CIRCUMFLEX` |`KC_CIRC` |`^` | -|`KC_AMPERSAND` |`KC_AMPR` |`&` | -|`KC_ASTERISK` |`KC_ASTR` |`*` | -|`KC_LEFT_PAREN` |`KC_LPRN` |`(` | -|`KC_RIGHT_PAREN` |`KC_RPRN` |`)` | -|`KC_UNDERSCORE` |`KC_UNDS` |`_` | -|`KC_PLUS` | |`+` | -|`KC_LEFT_CURLY_BRACE` |`KC_LCBR` |`{` | -|`KC_RIGHT_CURLY_BRACE` |`KC_RCBR` |`}` | -|`KC_PIPE` | |`\|` | -|`KC_COLON` |`KC_COLN` |`:` | -|`KC_DOUBLE_QUOTE` |`KC_DQUO`, `KC_DQT`|`"` | -|`KC_LEFT_ANGLE_BRACKET` |`KC_LABK`, `KC_LT` |`<` | -|`KC_RIGHT_ANGLE_BRACKET`|`KC_RABK`, `KC_GT` |`>` | -|`KC_QUESTION` |`KC_QUES` |`?` | diff --git a/docs/ja/keymap.md b/docs/ja/keymap.md deleted file mode 100644 index 2863bd49b54..00000000000 --- a/docs/ja/keymap.md +++ /dev/null @@ -1,189 +0,0 @@ -# キーマップの概要 - - - -QMK のキーマップは C のソースファイルの中で定義されます。そのデータ構造は配列の配列です。外側はレイヤーを要素とする配列で、レイヤーはキーを要素とする配列。ほとんどのキーボードは `LAYOUT()` マクロを定義して、この配列の配列を作成しやすくしています。 - - -## キーマップとレイヤー :id=keymap-and-layers -QMKでは、**`const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS]`**は、**アクションコード**を保持している **16 bit** データの中でキーマップ情報の複数の**レイヤー**を保持します。最大で**32個のレイヤー**を定義することができます。 - -普通のキー定義の場合、**アクションコード**の上位8ビットは全て0で、下位8ビットは**キーコード**としてキーによって生成された USB HID usage コードを保持します。 - -各レイヤーは同時に有効にできます。レイヤーには 0 から 31 までのインデックスが付けられ、上位のレイヤーが優先されます。 - - Keymap: 32 Layers Layer: action code matrix - ----------------- --------------------- - stack of layers array_of_action_code[row][column] - ____________ precedence _______________________ - / / | high / ESC / F1 / F2 / F3 .... - 31 /___________// | /-----/-----/-----/----- - 30 /___________// | / TAB / Q / W / E .... - 29 /___________/ | /-----/-----/-----/----- - : _:_:_:_:_:__ | : /LCtrl/ A / S / D .... - : / : : : : : / | : / : : : : - 2 /___________// | 2 `-------------------------- - 1 /___________// | 1 `-------------------------- - 0 /___________/ V low 0 `-------------------------- - - -TMK の歴史的経緯から、キーマップに保存されたアクションコードは、一部のドキュメントではキーコードと呼ばれる場合があります。 - -### キーマップレイヤーステータス :id=keymap-layer-status - -キーマップレイヤーの状態は、2つの32ビットパラメータによって決定されます。 - -* **`default_layer_state`** は、常に有効で参照される基本キーマップレイヤー (0-31) を示します (デフォルトレイヤー)。 -* **`layer_state`** は現在の各レイヤーのオン/オフの状態をビットで持ちます。 - -キーマップレイヤー '0' は通常 `default_layer` で、他のレイヤーはファームウェアの起動後に最初はオフになっていますが、これは `config.h` で異なる設定にすることが可能です。例えば Qwerty ではなく Colemak に切り替えるなど、キーレイアウトを完全に切り替える場合、`default_layer` を変更すると便利です。 - - Initial state of Keymap Change base layout - ----------------------- ------------------ - - 31 31 - 30 30 - 29 29 - : : - : : ____________ - 2 ____________ 2 / / - 1 / / ,->1 /___________/ - ,->0 /___________/ | 0 - | | - `--- default_layer = 0 `--- default_layer = 1 - layer_state = 0x00000001 layer_state = 0x00000002 - -一方、`layer_state` を変更して、基本レイヤーをナビゲーションキー、ファンクションキー (F1-F12)、メディアキー、特別なアクションなどの機能を持つ他のレイヤーでオーバーレイすることができます。 - - Overlay feature layer - --------------------- bit|status - ____________ ---+------ - 31 / / 31 | 0 - 30 /___________// -----> 30 | 1 - 29 /___________/ -----> 29 | 1 - : : | : - : ____________ : | : - 2 / / 2 | 0 - ,->1 /___________/ -----> 1 | 1 - | 0 0 | 0 - | + - `--- default_layer = 1 | - layer_state = 0x60000002 <-' - - - -### レイヤーの優先順位と透過性 -***上位のレイヤーはレイヤーのスタックでより高い優先順位を持つ***ことに注意してください。ファームウェアは最上位のアクティブレイヤーから下に向かってキーコードを検索します。ファームウェアがアクティブなレイヤーで `KC_TRNS` (透過)以外のキーコードを見つけると、検索を停止し、下位レイヤーは参照されません。 - - ____________ - / / <--- Higher layer - / KC_TRNS // - /___________// <--- Lower layer (KC_A) - /___________/ - - 上記シナリオでは、上位レイヤーに非透過のキーが定義されているとそのキーが使われますが、`KC_TRNS` (または同等のキーコード)が定義されている場合は常に下位レベルのキーコード(`KC_A`)が使われます。 - -**メモ:** 特定のレイヤーの透過性を示す有効な方法: -* `KC_TRANSPARENT` -* `KC_TRNS` (別名) -* `_______` (別名) - -これらのキーコードは、処理する非透過のキーコードを探すときに、下位レイヤーを検索させることができます。 - -## `keymap.c` の分析 - -この例では、[デフォルトの Clueboard 66% キーマップの古いバージョン](https://github.com/qmk/qmk_firmware/blob/ca01d94005f67ec4fa9528353481faa622d949ae/keyboards/clueboard/keymaps/default/keymap.c)を見ていきます。そのファイルを別のブラウザウィンドウで開くとコンテキスト内のすべてを見ることができるので便利です。 - -`keymap.c` ファイルには、あなたが関心があるであろう以下の2つの主要なセクションがあります: - -* [定義](#definitions) -* [レイヤー/キーマップデータ構造](#layers-and-keymaps) - -### 定義 :id=definitions - -ファイルの上部に以下のものがあります: - - #include QMK_KEYBOARD_H - - // 便利な定義 - #define GRAVE_MODS (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT)) - - /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * KC_TRNS (透過) の代わりに _______ を使うことができます * - * あるいは、KC_NO (NOOP) として XXXXXXX を使うことができます * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - - // 各レイヤーは読みやすいように名前を持ちます。 - // アンダースコアは何も意味を持ちません - // STUFF あるいは他の名前のレイヤーを持つことができます。 - // レイヤー名は全て同じ長さである必要はなく、 - // また名前を完全に省略して単に数字を使うことができます。 - enum layer_names { - _BL, - _FL, - _CL, - }; - -これらはキーマップとカスタム関数を作成するときに使うことができる便利な定義です。`GRAVE_MODS` 定義は後でカスタム関数で使われ、その下の `_BL`、`_FL`、`_CL` 定義は各レイヤーを参照しやすくします。 - -注意: 古いキーマップファイルに `_______` および `XXXXXXX` の定義が含まれているかもしれません。これらはそれぞれ `KC_TRNS` および `KC_NO` の代わりに使うことができ、レイヤーがどのキーを上書きしているかを簡単に確認することができます。これらの定義はデフォルトで含まれるため、今では不要になりました。 - -### レイヤーとキーマップ :id=layers-and-keymaps - -このファイルの主要部分は `keymaps[]` 定義です。ここで、レイヤーとそれらの内容を列挙します。ファイルのこの部分は、以下の定義から始まります: - - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -この後で、LAYOUT() マクロのリストがあります。LAYOUT() は単一のレイヤーを定義するためのキーのリストです。通常、1つ以上の"基本レイヤー" (QWERTY、Dvorak、Colemak など)があり、その上に1つ以上の"機能"レイヤーを重ねます。レイヤーの処理方法により、"より上位"のレイヤーの上に"より下位"のレイヤーを重ねることはできません。 - -QMK の `keymaps[][MATRIX_ROWS][MATRIX_COLS]` は、16ビットのアクションコード( quantum キーコードとも呼ばれる)を保持します。一般的なキーを表すキーコードの場合、その上位バイトは0で、その下位バイトはキーボードの USB HID usage ID です。 - -> QMK のフォーク元の TMK は、代わりに `const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS]` を使い、8ビットキーコードを保持します。一部のキーコード値は、`fn_actions[]` 配列を介して特定のアクションコードの実行を引き起こすために予約されています。 - -#### 基本レイヤー - -Clueboard の基本レイヤーの例です: - - /* Keymap _BL: Base Layer (Default Layer) - */ - [_BL] = LAYOUT( - F(0), 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_GRV, KC_BSPC, KC_PGUP, \ - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, \ - KC_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_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_RSFT, KC_UP, \ - KC_LCTL, KC_LGUI, KC_LALT, KC_MHEN, KC_SPC,KC_SPC, KC_HENK, KC_RALT, KC_RCTL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT), - -これについて注意すべきいくつかの興味深いこと: - -* C ソースの観点からは、これは単一の配列に過ぎませんが、物理デバイス上の各キーがどこにあるかをより簡単に可視化するために、空白が埋め込まれています。 -* 単純なキーボードスキャンコードの先頭には KC_ が付いていますが、"特別な"キーには付いていません。 -* 左上のキーはカスタム機能 0 (`F(0)`) をアクティブにします。 -* "Fn" キーは `MO(_FL)` で定義され、そのキーが押されている間は `_FL` レイヤーに移動します。 - -#### 機能オーバーレイレイヤー - -機能レイヤーはコードの観点から基本レイヤーと違いはありません。ただし概念的には、置き換えの代わりにオーバーレイとしてそのレイヤーを構築します。多くの人にとってはこの区別は重要ではありませんが、より複雑なレイヤー設定を構築するにつれて、ますます重要になります。 - - [_FL] = LAYOUT( - KC_GRV, 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_DEL, BL_STEP, \ - _______, _______, _______,_______,_______,_______,_______,_______,KC_PSCR,KC_SCRL, KC_PAUS, _______, _______, _______, _______, \ - _______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \ - _______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, KC_PGUP, \ - _______, _______, _______, _______, _______,_______, _______, _______, _______, MO(_FL), KC_HOME, KC_PGDN, KC_END), - -注意すべきいくつかの興味深いこと: - -* `_______` 定義を使って、`KC_TRNS` を `_______` に変換しました。これによりこのレイヤーで変更されたキーを簡単に見つけることができます。 -* このレイヤーで `_______` キーのいずれかを押すと、次の下位のアクティブなレイヤーのキーがアクティブになります。 - -# 核心となる詳細 - -これで独自のキーマップを作成するための基本的な概要が得られました。詳細は以下のリソースを見てください: - -* [キーコード](ja/keycodes.md) -* [キーマップ FAQ](ja/faq_keymap.md) - -これらのドキュメントの改善に積極的に取り組んでいます。それらを改善する方法について提案がある場合は、[issue を報告](https://github.com/qmk/qmk_firmware/issues/new)してください! diff --git a/docs/ja/mod_tap.md b/docs/ja/mod_tap.md deleted file mode 100644 index 1d96ed1ee86..00000000000 --- a/docs/ja/mod_tap.md +++ /dev/null @@ -1,71 +0,0 @@ -# モッドタップ - - - -モッドタップキー `MT(mod, kc)` は、押したままの時にモディファイアのように機能し、タップされた時に通常のキーのように振舞います。別の言い方をすると、タップした時に Escape を送信しますが、押したままの時に Control あるいは Shift キーとして機能するキーを持つことができます。 - -このキーコードと `OSM()` が受け付けるモディファイアは、`KC_` ではなく、`MOD_` の接頭辞が付いています: - -| モディファイア | 説明 | -|----------------|----------------------------------------------| -| `MOD_LCTL` | 左 Control | -| `MOD_LSFT` | 左 Shift | -| `MOD_LALT` | 左 Alt | -| `MOD_LGUI` | 左 GUI (Windows/Command/Meta キー) | -| `MOD_RCTL` | 右 Control | -| `MOD_RSFT` | 右 Shift | -| `MOD_RALT` | 右 Alt (AltGr) | -| `MOD_RGUI` | 右 GUI (Windows/Command/Meta キー) | -| `MOD_HYPR` | Hyper (左 Control、左 Shift、左 Alt、左 GUI) | -| `MOD_MEH` | Meh (左 Control、左 Shift、左 Alt) | - -以下のようにそれらを OR することで、これらを組み合わせることができます: - -```c -MT(MOD_LCTL | MOD_LSFT, KC_ESC) -``` - -押したままの時にこのキーは左 Control および左 Shift をアクティブにし、タップされた時に Escape を送信します。 - -便利なように、QMK はキーマップで一般的な組み合わせをよりコンパクトにするためのモッドタップショートカットを含んでいます: - -| キー | エイリアス | 説明 | -| ------------ | ----------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `LCTL_T(kc)` | `CTL_T(kc)` | 押したままの場合は左 Control、タップした場合は `kc` | -| `LSFT_T(kc)` | `SFT_T(kc)` | 押したままの場合は左 Shift、タップした場合は `kc` | -| `LALT_T(kc)` | `LOPT_T(kc)`, `ALT_T(kc)`, `OPT_T(kc)` | 押したままの場合は左 Alt、タップした場合は `kc` | -| `LGUI_T(kc)` | `LCMD_T(kc)`, `LWIN_T(kc)`, `GUI_T(kc)`, `CMD_T(kc)`, `WIN_T(kc)` | 押したままの場合は左 GUI、タップした場合は `kc` | -| `RCTL_T(kc)` | | 押したままの場合は右 Control、タップした場合は `kc` | -| `RSFT_T(kc)` | | 押したままの場合は右 Shift、タップした場合は `kc` | -| `RALT_T(kc)` | `ROPT_T(kc)`, `ALGR_T(kc)` | 押したままの場合は右 Alt、タップした場合は `kc` | -| `RGUI_T(kc)` | `RCMD_T(kc)`, `RWIN_T(kc)` | 押したままの場合は右 GUI、タップした場合は `kc` | -| `LSG_T(kc)` | `SGUI_T(kc)`, `SCMD_T(kc)`, `SWIN_T(kc)` | 押したままの場合は左 Shift と左 GUI、タップした場合は `kc` | -| `LAG_T(kc)` | | 押したままの場合は左 Alt と左 GUI、タップした場合は `kc` | -| `RSG_T(kc)` | | 押したままの場合は右 Shift と右 GUI、タップした場合は `kc` | -| `RAG_T(kc)` | | 押したままの場合は右 Alt と右 GUI、タップした場合は `kc` | -| `LCA_T(kc)` | | 押したままの場合は左 Control と左 Alt、タップした場合は `kc` | -| `LSA_T(kc)` | | 押したままの場合は左 Shift と Alt、タップした場合は `kc` | -| `RSA_T(kc)` | `SAGR_T(kc)` | 押したままの場合は右 Shift と Alt (AltGr)、タップした場合は `kc` | -| `RCS_T(kc)` | | 押したままの場合は右 Control と Shift、タップした場合は `kc` | -| `LCAG_T(kc)` | | 押したままの場合は左 Control、左 Alt と左 GUI、タップした場合は `kc` | -| `RCAG_T(kc)` | | 押したままの場合は右 Control、右 Alt と右 GUI、タップした場合は `kc` | -| `C_S_T(kc)` | | 押したままの場合は左 Control と左 Shift、タップした場合は `kc` | -| `MEH_T(kc)` | | 押したままの場合は左 Control、左 Shift と左 Alt、タップした場合は `kc` | -| `HYPR_T(kc)` | `ALL_T(kc)` | 押したままの場合は左 Control、左 Shift、左 Alt と左 GUI、タップした場合は `kc` - より詳しくは[ここ](https://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)を見てください | - -## 注意事項 - -現在のところ、`MT()` の引数 `kc` は[基本的なキーコードセット](ja/keycodes_basic.md)に制限されています。つまり、`LCTL()`、`KC_TILD`、あるいは `0xFF` より大きなキーコードを使うことができません。これは、QMK が16ビットのキーコードを使うためです。3ビットは機能の識別のために使われ、1ビットは右または左の mod を選択するために使われ、4ビットはどの mod かを区別するために使われ、キーコードには8ビットしか残されていません。さらに、モッドタップで少なくとも1つの右手用のモディファイアが指定された場合、指定された全てのモディファイアが右手用になるため、2つをうまく組み合わせて一致させることはできません。例えば、左 Control と右 Shift は、右 Control と右 Shift になります。 - -これを拡張してもせいぜい複雑になるだけでしょう。32ビットキーコードに移行すると、これの多くが解決されますが、キーマップマトリックスが使用する領域が2倍になります。また、問題が起きる可能性もあります。タップしたキーコードにモディファイアを適用する必要がある場合は、[タップダンス](ja/feature_tap_dance.md#example-5)を使うことができます。 - -さらに、Windows でリモートデスクトップ接続を使う場合に、問題が発生する場合があります。なぜならば、これらのキーコードは人よりも速くキーイベントを送信するため、リモートデスクトップがキーコードを見落とすかもしれないからです。 -この問題を解決するには、リモートデスクトップ接続を開いて「オプションの表示」をクリックし、「ローカル リソース」タブを開きます。キーボードセクションで、ドロップダウンを「このコンピューター」に変更します。これで問題が解決され、文字が正しく機能するようになります。 -[`TAP_CODE_DELAY`](ja/config_options.md#behaviors-that-can-be-configured) を増やすことで緩和することもできます。 - -## 他のリソース - -モッドタップの動作を調整する追加フラグについては、[タップホールド設定オプション](ja/tap_hold.md)を参照してください。 diff --git a/docs/ja/newbs.md b/docs/ja/newbs.md deleted file mode 100644 index 5fdf40425a7..00000000000 --- a/docs/ja/newbs.md +++ /dev/null @@ -1,40 +0,0 @@ -# QMK チュートリアル - - - -キーボードには、コンピュータ入っているものと似たようなプロセッサが入っています。 -このプロセッサでは、キーボードのボタンの押し下げの検出を担当し、キーが押されたときにコンピュータに通知するソフトウェアが動作しています。 -QMK Firmware は、そのソフトウェアの役割を果たし、ボタンの押下を検出しその情報をホストコンピュータに渡します。 -カスタムキーマップを作るということは、キーボード上で動くプログラムを作るということなのです。 - -QMK は、簡単なことは簡単に、そして、難しいことを可能なことにすることで、あなたの手にたくさんのパワーをもたらします。 -パワフルなキーマップを作るためにプログラムを作成する方法を知る必要はありません。いくつかのシンプルな文法に従うだけで OK です。 - -お使いのキーボードで QMK を実行できるかどうか不明ですか? -もし作成したキーボードがメカニカルキーボードの場合、実行できる可能性が高いです。 -QMK は[多くの趣味のキーボード](https://qmk.fm/keyboards/)をサポートしています。 -現在使用しているキーボードが QMK を実行できない場合、QMK を実行できるキーボードの選択肢はたくさんあります。 - -?> **このガイドは私のためにあるのでしょうか?**
-もし、プログラミングの考え方に抵抗があるのであれば、代わりに[私たちのオンライン GUI](ja/newbs_building_firmware_configurator.md) を見てみてください。 - -## 概要 - -このガイドは、ソースコードを使ってキーボードのファームウェアを構築したいと考えている人に適しています。 もしあなたがすでにプログラマーであれば、このプロセスはとても身近で簡単に理解できるでしょう。このガイドには3つの主要なセクションがあります: - -1. [環境設定](ja/newbs_getting_started.md) -2. [コマンドラインを使用して初めてのファームウェアを構築する](ja/newbs_building_firmware.md) -3. [ファームウェアを書きこむ](ja/newbs_flashing.md) - -このガイドは、これまでソフトウェアをコンパイルしたことがない人を支援することに特化しています。 -その観点から選択と推奨を行います。 -これらの手順の多くには代替方法があり、これらの代替方法のほとんどをサポートしています。 -タスクを達成する方法について疑問がある場合は、[案内を求めることができます](ja/getting_started_getting_help.md)。 - -## 追加のリソース - -このガイドの他にも、QMK の学習に役立つリソースがいくつかあります。[シラバス](ja/syllabus.md)と[学習リソース](ja/newbs_learn_more_resources.md)のページにまとめました。 diff --git a/docs/ja/newbs_building_firmware.md b/docs/ja/newbs_building_firmware.md deleted file mode 100644 index 563efa71633..00000000000 --- a/docs/ja/newbs_building_firmware.md +++ /dev/null @@ -1,81 +0,0 @@ -# 初めてのファームウェアを構築する(コマンドライン版) - - - -ビルド環境をセットアップしたので、カスタムファームウェアのビルドを開始する準備ができました。 -ガイドのこのセクションでは、ファイルマネージャ、テキストエディタ、ターミナルウィンドウの3つのプログラム間を行き来します。 -キーボードファームウェアが完成して満足するまで、この3つすべてを開いたままにします。 - -## 新しいキーマップを作成する - -独自のキーマップを作成するには、`default` キーマップのコピーを作成する必要があります。最後のステップでビルド環境を設定した場合は、QMK CLI を使って簡単に行うことができます: - - qmk new-keymap - -もし環境が設定されていない場合や、複数のキーボードを所持している場合は、キーボード名を指定することができます: - - qmk new-keymap -kb - -そのコマンドの出力を見ると、次のようになっているはずです: - - Ψ keymap directory created in: /home/me/qmk_firmware/keyboards/clueboard/66/rev3/keymaps/ - -これがあなたの新しい `keymap.c` ファイルの場所です。 - -## あなたの好みのテキストエディタで `keymap.c` を開く - -テキストエディタで `keymap.c` ファイルを開きます。 -このファイル内には、キーボードの動作を制御する構造があります。 -`keymap.c`の上部には、キーマップを読みやすくする定義と列挙型があります。 -さらに下には、次のような行があります: - - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -この行はレイヤーのリストの開始を表わしています。 -その下には、`LAYOUT` を含む行があり、これらの行はレイヤーの開始を表わしています。 -その行の下には、そのレイヤーを構成するキーのリストがあります。 - -!> キーマップファイルを編集するときは、カンマを追加したり削除したりしないように注意してください。そうするとファームウェアのコンパイルができなくなり、余分であったり欠落していたりするカンマがどこにあるのかを容易に把握できない場合があります。 - -## 好みに合わせてレイアウトをカスタマイズ - -納得のいくまでこのステップを繰り返します。 -気になる点をひとつづつ変更して試すのもよし、全部作りなおすのもよし。 -あるレイヤー全体が必要ない場合はレイヤーを削除することもでき、必要があれば、合計 32 個までレイヤーを追加することもできます。 -QMK にはたくさんの機能があり、完全なリストは左側のサイドバーの「QMK を使う」の下を調べてください。ここから始めるために、簡単に使える機能をいくつか紹介します: - -* [基本的なキーコード](ja/keycodes_basic.md) -* [Quantum キーコード](ja/quantum_keycodes.md) -* [グレイブ エスケープ](ja/feature_grave_esc.md) -* [マウスキー](ja/feature_mouse_keys.md) - -?> キーマップがどのように機能するかを感じながら、各変更を小さくしてください。大きな変更は、発生する問題のデバッグを困難にします。 - -## ファームウェアをビルドする :id=build-your-firmware - -キーマップの変更が完了したら、ファームウェアをビルドする必要があります。これを行うには、ターミナルウィンドウに戻り、コンパイルコマンドを実行します: - - qmk compile - -もし環境が設定されていない場合や、複数のキーボードを所持している場合は、キーボードやキーマップを指定することができます: - - qmk compile -kb -km - -これがコンパイルされる間、どのファイルがコンパイルされているかを知らせる多くの出力が画面に表示されます。 -次のような出力で終わるはずです: - -``` -Linking: .build/planck_rev5_default.elf [OK] -Creating load file for flashing: .build/planck_rev5_default.hex [OK] -Copying planck_rev5_default.hex to qmk_firmware folder [OK] -Checking file size of planck_rev5_default.hex [OK] - * The firmware size is fine - 27312/28672 (95%, 1360 bytes free) -``` - -## ファームウェアを書きこむ - -[「ファームウェアを書きこむ」](ja/newbs_flashing.md) に移動して、キーボードに新しいファームウェアを書き込む方法を学習します。 diff --git a/docs/ja/newbs_building_firmware_configurator.md b/docs/ja/newbs_building_firmware_configurator.md deleted file mode 100644 index 6b48e79de86..00000000000 --- a/docs/ja/newbs_building_firmware_configurator.md +++ /dev/null @@ -1,20 +0,0 @@ -# QMK Configurator - - - -[![QMK Configurator Screenshot](https://i.imgur.com/anw9cOL.png)](https://config.qmk.fm/) - -[QMK Configurator](https://config.qmk.fm) は、QMKファームウェアの `.hex` や `.bin` ファイルを生成するオンライングラフィカルユーザーインターフェイスです。 - -[ビデオチュートリアル](https://www.youtube.com/watch?v=-imgglzDMdY) を見てください。 -多くの人は、それが自分のキーボードのプログラミングを始めるのに十分な情報であることに気づくでしょう。 - -QMK Configurator は Chrome/Firefox で最適に動作します。 - -!> **注意: Keyboard Layout Editor (KLE) や kbfirmware などの他のツールのファイルは、QMK Configurator と互換性がありません。それらをロードしたり、インポートしたりしないでください。QMK Configurator は異なるツールです。** - -[QMK Configurator: ステップ・バイ・ステップ](ja/configurator_step_by_step.md)を参照してください。 diff --git a/docs/ja/newbs_flashing.md b/docs/ja/newbs_flashing.md deleted file mode 100644 index 39f5da88a85..00000000000 --- a/docs/ja/newbs_flashing.md +++ /dev/null @@ -1,133 +0,0 @@ -# ファームウェアを書き込む - - - -カスタムファームウェアは出来たので、いよいよキーボードへの書き込み(フラッシュ)です。 - -## キーボードを DFU (Bootloader) モードにする - -カスタムファームウェアを書き込むには、最初にキーボードを普段とは違う特別な状態、フラッシュモードにする必要があります。 -このモードでは、キーボードはキーボードとしての機能を果たしません。 -ファームウェアの書き込み中にキーボードのケーブルを抜いたり、書き込みプロセスを中断したりしないことが非常に重要です。 - -キーボードによって、この特別なモードに入る方法は異なります。 -PCB が現在 QMK、TMK、PS2AVRGB (Bootmapper Client) を実行しており、キーボードメーカーから具体的な指示が与えられていない場合は、次を順番に試してください。 - -* 両方のシフトキーを押しながら、`Pause` キーを押す -* 両方のシフトキーを押しながら、`B` キーを押す -* キーボードのケーブルを抜いて、スペースバーと `B` を同時に押しながら、キーボードを再び接続し、1秒待ってからキーを放す -* キーボードのケーブルを抜いて、左上か左下のキー(通常は Escape か左 Control)を押しながらキーボードを接続する -* 通常、PCB の裏側に付けられている物理的な `RESET` ボタンを押す -* PCB 上の `RESET` か `GND` のラベルの付いたヘッダピンを探し、PCB 接続中にそれらを互いにショートする - -上記を全て試してもうまくいかず、基板のメインチップに `STM32` と表示されている場合、これは少し複雑になる可能性があります。通常、最善の方法は [Discord](https://discord.gg/Uq7gcHh) で助けを求めることです。おそらく基板の写真をいくつか求められるでしょう。あらかじめそれらを準備することができれば物事を進めるのに役立ちます! - -それ以外の場合は、QMK Toolbox で次のような黄色のメッセージが表示されます: - -``` -*** DFU device connected: Atmel Corp. ATmega32U4 (03EB:2FF4:0000) -``` - -そして、このブートローダデバイスはデバイスマネージャーやシステム情報.app、`lsusb` にも表示されます。 - -## QMK Toolbox を使ってキーボードに書き込む - -キーボードに書き込む最も簡単な方法は [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) を使うことです。 - -ただし、QMK Toolbox は、現在は Windows と macOS でしか使えません。 -Linux を使用している場合(および、コマンドラインでファームウェアを書き込みたい場合)は、[コマンドラインからキーボードを書き込む](#flash-your-keyboard-from-the-command-line)節まで進んでください。 - -### QMK Toolbox にファイルをロードする - -まず QMK Toolbox アプリケーションを起動します。 -Finder またはエクスプローラーでファームウェアのファイルを探します。 -キーボードのファームウェアは `.hex` または `.bin` のどちらかの形式です。 -ビルド時に QMK は、キーボードに適した形式のものを `qmk_firmware` のトップフォルダにコピーしているはずです。 - -Windows か macOS を使用している場合、現在のフォルダをエクスプローラーか Finder で簡単に開くためのコマンドがあります。 - - - -#### ** Windows ** - -``` -start . -``` - -#### ** macOS ** - -``` -open . -``` - - - -ファームウェアファイルは常に以下の命名形式に従っています: - -``` -_.{bin,hex} -``` - -例えば、`plank/rev5` の `default` キーマップのファイル名は以下のようになります: - -``` -planck_rev5_default.hex -``` - -ファームウェアファイルを見つけたら、QMK Toolbox の "Local file" ボックスにドラッグするか、"Open" をクリックしてファームウェアファイルが格納されている場所を指定します。 - -### キーボードへの書き込み - -QMK Toolbox の `Flash` ボタンをクリックします。次のような出力が表示されます。 - -``` -*** DFU device connected: Atmel Corp. ATmega32U4 (03EB:2FF4:0000) -*** Attempting to flash, please don't remove device ->>> dfu-programmer.exe atmega32u4 erase --force - Erasing flash... Success - Checking memory from 0x0 to 0x6FFF... Empty. ->>> dfu-programmer.exe atmega32u4 flash "D:\Git\qmk_firmware\gh60_satan_default.hex" - Checking memory from 0x0 to 0x3F7F... Empty. - 0% 100% Programming 0x3F80 bytes... - [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success - 0% 100% Reading 0x7000 bytes... - [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success - Validating... Success - 0x3F80 bytes written into 0x7000 bytes memory (56.70%). ->>> dfu-programmer.exe atmega32u4 reset - -*** DFU device disconnected: Atmel Corp: ATmega32U4 (03EB:2FF4:0000) -``` - -## コマンドラインでファームウェアを書き込む :id=flash-your-keyboard-from-the-command-line - -これは、以前のものと比較して非常に単純になりました。 -ファームウェアをコンパイルして書き込む準備ができたら、ターミナルウィンドウを開いて書き込みコマンドを実行します: - - qmk flash - -もし CLI でキーボードやキーマップ名を設定していない場合や、複数のキーボードを持っている場合、キーボードとキーマップを指定することができます: - - qmk flash -kb -km - -これはキーボードの設定を確認し、指定されたブートローダに基づいて書き込もうとします。これはどのブートローダをキーボードが使っているか知る必要がないことを意味します。単にコマンドを実行し、コマンドに重い仕事をさせましょう。 - -ただし、これはキーボードごとに設定されているブートローダに依存します。 -もし、この情報が設定されていない場合、または、使用しているキーボードが、ファームウェア書き込みでサポートされているターゲットを持っていない場合、次のエラーが表示されます: - - WARNING: This board's bootloader is not specified or is not supported by the ":flash" target at this time. - -この場合、あなたは明示的にブートローダを指定する方法を使わなければなりません。詳細は、[ファームウェアのフラッシュ](ja/flashing.md)ガイドを参照してください。 - -## テストしましょう! - -おめでとうございます!カスタムファームウェアがキーボードにプログラムされ、テストする準備ができました! - -少し運が良ければ全てが完璧に機能しますが、そうでない場合は何が問題なのかを理解するのに役立つ手順があります。 -通常、キーボードのテストは非常に簡単です。全てのキーをひとつずつ押して、期待するキーが送信されることを確認します。例え QMK で動作していない場合でも、[QMK Configurator](https://config.qmk.fm/#/test/) のテストモードを使用すると、キーボードをチェックできます。 - -まだ動作しませんか?詳細については FAQ トピックを参照するか、[Discord でチャット](https://discord.gg/Uq7gcHh)してください。 diff --git a/docs/ja/newbs_getting_started.md b/docs/ja/newbs_getting_started.md deleted file mode 100644 index ece64e8d8b2..00000000000 --- a/docs/ja/newbs_getting_started.md +++ /dev/null @@ -1,210 +0,0 @@ -# QMK 環境の構築 - - - -キーマップをビルドする前に、いくつかのソフトウェアをインストールしてビルド環境を構築する必要があります。 -ファームウェアをコンパイルするキーボードの数に関わらず、この作業を一度だけ実行する必要があります。 - -## 1. 前提条件 - -始めるために必要なソフトウェアがいくつかあります。 - -* [テキストエディタ](ja/newbs_learn_more_resources.md#text-editor-resources) - * プレーンテキストファイルを編集して保存できるプログラムが必要です。多くの OS に付属するデフォルトのエディタはプレーンテキストファイルを保存しないため、選択したエディタがプレーンテキストファイルを保存することを確認する必要があります。 -* [Toolbox (オプション)](https://github.com/qmk/qmk_toolbox) - * Windows と macOS で使える GUI を備えたプログラムで、カスタムキーボードのプログラミングとデバッグの両方ができます。 - -?> もし、Linux か Unix のコマンドを使ったことがない場合、こちらで基本的な概念や各種コマンドを学んでください。[これらの教材](ja/newbs_learn_more_resources.md#command-line-resources)で QMK を使うのに必要なことを学ぶことができます。 - -## 2. ビルド環境を準備する :id=set-up-your-environment - -私たちは、QMK を可能な限り簡単に構築できるように努力しています。Linux か Unix 環境を用意するだけで、QMK に残りをインストールさせることができます。 - - - -### ** Windows ** - -QMK は、MSYS2、CLI、および必要な全ての依存関係のバンドルを保守しています。また、正しい環境で直接起動するための便利な `QMK MSYS` ターミナルショートカットも提供しています。 - -#### 前提条件 - -[QMK MSYS](https://msys.qmk.fm/) をインストールする必要があります。最新リリースは[ここ](https://github.com/qmk/qmk_distro_msys/releases/latest)から入手できます。 - -または、MSYS2 を手動でインストールしたい場合、次のセクションでプロセスを説明します。 - -
- 手動インストール - -?> `QMK MSYS` を使う場合、次のステップは無視してください。 - -#### 前提条件 - -MSYS2 と Git と Python をインストールする必要があります。https://www.msys2.org のインストール手順に従ってください。 - -MSYS2 をインストールしたら、開いている MSYS の全ターミナル画面を閉じて、新しい MinGW 64-bit ターミナル画面を開きます。 - -!> **注意:** MinGW 64-bit ターミナルは、インストールが完了した時に開く MSYS ターミナルと*同じではありません*。プロンプトには、「MSYS」ではなく、紫色のテキストで「MINGW64」と表示されます。違いについての詳細は[このページ](https://www.msys2.org/wiki/MSYS2-introduction/#subsystems)を参照してください。 - -それから、次のように実行します: - - pacman --needed --noconfirm --disable-download-timeout -S git mingw-w64-x86_64-toolchain mingw-w64-x86_64-python3-pip - -#### インストール - -次のコマンドを実行して、QMK CLI をインストールします: - - python3 -m pip install qmk - -
- -### ** macOS ** - -QMK は CLI と全ての必要な依存関係を自動的にインストールする Homebrew tap と formula を保守しています。 - -#### 前提条件 - -Homebrew のインストールが必要です。https://brew.sh の手順に従ってください。 - -#### インストール - -次のコマンドを実行して、QMK CLI をインストールします: - - brew install qmk/qmk/qmk - -### ** Linux/WSL ** - -?> **WSL ユーザーへの注意**: デフォルトでは、インストールプロセスは QMK リポジトリを WSL ホームディレクトリに clone しますが、手動で clone した場合、Windows ファイルシステムではなく、WSL インスタンス内にある(つまり `/mnt` 内にない)ことを確認してください。これは、現在アクセスが[非常に遅い](https://github.com/microsoft/WSL/issues/4197)ためです。 - -#### 前提条件 - -Git と Python をインストールする必要があります。両方とも既にインストールされている可能性は高いですが、そうでない場合、次のコマンドのいずれかでそれらをインストールできます: - -* Debian / Ubuntu / Devuan: `sudo apt install -y git python3-pip` -* Fedora / Red Hat / CentOS: `sudo yum -y install git python3-pip` -* Arch / Manjaro: `sudo pacman --needed --noconfirm -S git python-pip libffi` -* Void: `sudo xbps-install -y git python3-pip` -* Solus: `sudo eopkg -y install git python3` -* Sabayon: `sudo equo install dev-vcs/git dev-python/pip` -* Gentoo: `sudo emerge dev-vcs/git dev-python/pip` - -#### インストール - -次のコマンドを実行して、QMK CLI をインストールします: - - python3 -m pip install --user qmk - -#### コミュニティパッケージ - -これらのパッケージはコミュニティメンバーによって保守されているため、最新ではないか、完全には機能しない可能性があります。問題が発生した場合は、それぞれのメンテナに報告してください。 - -Arch ベースのディストリビューションでは、公式リポジトリから CLI をインストールできます(注意: 執筆時点では、このパッケージは一部の依存関係をオプションとしてマークしていますが、そうではありません): - - sudo pacman -S qmk - -AUR から `qmk-git` パッケージを試すこともできます: - - yay -S qmk-git - -### ** FreeBSD ** - -#### インストール - -次のコマンドを実行して、QMK CLI の FreeBSD パッケージをインストールします: - - pkg install -g "py*-qmk" - -注意: インストールの最後に表示された指示に従うことを忘れないでください(再度表示するには、`pkg info -Dg "py*-qmk"` を使ってください)。 - - - -## 3. QMK の設定を行う :id=set-up-qmk - - - -### ** Windows ** - -QMK のインストール後に、このコマンドで設定できます: - - qmk setup - -ほとんどの場合、全てのプロンプトに `y` と答えます。 - -### ** macOS ** - -QMK のインストール後に、このコマンドで設定できます: - - qmk setup - -ほとんどの場合、全てのプロンプトに `y` と答えます。 - -### ** Linux/WSL ** - -QMK のインストール後に、このコマンドで設定できます: - - qmk setup - -ほとんどの場合、全てのプロンプトに `y` と答えます。 - -?>**Debian、Ubuntu、それらの派生に関する注意**: -次のようなエラーが表示される可能性があります: `bash: qmk: command not found`. -これは Debian の Bash 4.4 リリースで導入された[バグ](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=839155)で、`$HOME/.local/bin` が PATH から削除されました。このバグは後に Debian や Ubuntu で修正されました。 -残念なことに、Ubuntu はこのバグを再導入し、[まだ修正していません](https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1588562)。 -幸い、修正は簡単です。これをあなたのユーザで実行します: `echo 'PATH="$HOME/.local/bin:$PATH"' >> $HOME/.bashrc && source $HOME/.bashrc` - -### ** FreeBSD ** - -QMK のインストール後に、このコマンドで設定できます: - - qmk setup - -ほとんどの場合、全てのプロンプトに `y` と答えます。 - - - -?> qmk ホームフォルダは、セットアップ時に `qmk setup -H ` を使って指定し、[cli 構成](ja/cli_configuration.md?id=single-key-example)と変数 `user.qmk_home` を使って変更できます。利用可能な全てのオプションについては、`qmk setup --help` を実行します。 - -?> 既に GitHub の使い方を知っている場合、[これらの手順に従うことをお勧めします](ja/getting_started_github.md)。そして `qmk setup /qmk_firmware` を使って個人用の fork から clone します。この一文の意味が分からない場合、このメッセージは無視してかまいません。 - -## 4. ビルド環境の確認 - -これで QMK のビルド環境が用意できたので、キーボードのファームウェアをビルドできます。キーボードのデフォルトキーマップをビルドすることから始めます。次の形式のコマンドでビルドできるはずです: - - qmk compile -kb -km default - -例えば、Clueboard 66% のファームウェアをビルドする場合、次のようにします: - - qmk compile -kb clueboard/66/rev3 -km default - -大量の出力の最後に次のように出力されると完了です: - -``` -Linking: .build/clueboard_66_rev3_default.elf [OK] -Creating load file for flashing: .build/clueboard_66_rev3_default.hex [OK] -Copying clueboard_66_rev3_default.hex to qmk_firmware folder [OK] -Checking file size of clueboard_66_rev3_default.hex [OK] - * The firmware size is fine - 26356/28672 (2316 bytes free) -``` - -## 5. ビルド環境の設定(オプション) - -ビルド環境を設定してデフォルトを設定することで、QMK での作業をあまり面倒くさくないようにすることができます。今からやりましょう! - -QMK を初めて使うほとんどの人は、キーボードを1つしか持っていません。`qmk config` コマンドでこのキーボードをデフォルトとして設定できます。例えば、デフォルトのキーボードを `clueboard/66/rev4` に設定するには: - - qmk config user.keyboard=clueboard/66/rev4 - -デフォルトキーマップ名を設定することもできます。ほとんどの人はここで GitHub ユーザ名を使いますが、そうすることをお勧めします。 - - qmk config user.keymap= - -この後、これらの引数をオフにして、次のようにキーボードをコンパイルできます: - - qmk compile - -# キーマップの作成 - -これであなた専用のキーマップを作成する準備ができました!次は[初めてのファームウェアの構築](ja/newbs_building_firmware.md)で専用のキーマップを作成します。 diff --git a/docs/ja/newbs_git_best_practices.md b/docs/ja/newbs_git_best_practices.md deleted file mode 100644 index 7ba16fce751..00000000000 --- a/docs/ja/newbs_git_best_practices.md +++ /dev/null @@ -1,24 +0,0 @@ -# QMK における Git 運用作法 :id=best-git-practices-for-working-with-qmk - - - -## または、"如何にして私は心配することをやめて Git を愛することを学んだか。" - -このセクションは、QMK への貢献をスムーズに行なう最もよい方法を初心者に教えることを目的としています。 -QMK に貢献するプロセスを順を追って説明し、この作業を簡単にするいくつかの方法を詳しく説明します。 -その後、意図的に一部を壊してみせて、それらを修正する方法を説明します。 - -このセクションは以下のことを前提としています: - -1. あなたは GitHub アカウントがあり、アカウントに [qmk_firmware リポジトリをフォーク](ja/getting_started_github.md) している。 -2. あなたは、[環境構築](ja/newbs_getting_started.md#set-up-your-environment) と [QMK の設定](ja/newbs_getting_started.md#set-up-qmk) を両方とも完了している。 - ---- - -- パート 1: [あなたのフォークの master ブランチ: 更新は頻繁に、コミットはしないこと](ja/newbs_git_using_your_master_branch.md) -- パート 2: [マージの競合の解決](ja/newbs_git_resolving_merge_conflicts.md) -- パート 3: [同期のとれていない git ブランチの再同期](ja/newbs_git_resynchronize_a_branch.md) diff --git a/docs/ja/newbs_git_resolving_merge_conflicts.md b/docs/ja/newbs_git_resolving_merge_conflicts.md deleted file mode 100644 index 532b1e30019..00000000000 --- a/docs/ja/newbs_git_resolving_merge_conflicts.md +++ /dev/null @@ -1,94 +0,0 @@ -# マージの競合の解決 - - - -ブランチでの作業の完了に時間がかかる場合、他の人が行った変更が、プルリクエストを開いたときにブランチに加えた変更と競合することがあります。 -これは *マージの競合* と呼ばれ、複数の人が同じファイルの同じ部分を編集すると発生します。 - -?> このドキュメントは [あなたのフォークの master ブランチ: 更新は頻繁に、コミットはしないこと](ja/newbs_git_using_your_master_branch.md) で詳述されている概念に基づいています。 -その概念に慣れていない場合は、まずそれを読んでから、ここに戻ってください。 - -## 変更のリベース - -*リベース* は、コミット履歴のある時点で適用された変更を取得し、それらを元に戻し、次に同じ変更を別のポイントに適用する Git の方法です。 -マージの競合が発生した場合、ブランチをリベースして、ブランチを作成してから現在までに行われた変更を取得できます。 - -開始するには、次を実行します: - -``` -git fetch upstream -git rev-list --left-right --count HEAD...upstream/master -``` - -ここに入力された `git rev-list` コマンドは、現在のブランチと QMK の master ブランチで異なるコミットの数を返します。 -最初に `git fetch` を実行して、upstream リポジトリの現在の状態を表す refs があることを確認します。 -入力された `git rev-list` コマンドの出力は2つの数値を返します: - -``` -$ git rev-list --left-right --count HEAD...upstream/master -7 35 -``` - -最初の数字は、現在のブランチが作成されてからのコミット数を表し、2番目の数字は、現在のブランチが作成されてから `upstream/master` に対して行われたコミットの数であり、したがって、現在のブランチに記録されていない変更です。 - -現在のブランチと upstream リポジトリの両方の現在の状態がわかったので、リベース操作を開始できます: - -``` -git rebase upstream/master -``` - -これにより、Git は現在のブランチのコミットを取り消してから、QMK の master ブランチに対してコミットを再適用します。 - -``` -$ git rebase upstream/master -First, rewinding head to replay your work on top of it... -Applying: Commit #1 -Using index info to reconstruct a base tree... -M conflicting_file_1.txt -Falling back to patching base and 3-way merge... -Auto-merging conflicting_file_1.txt -CONFLICT (content): Merge conflict in conflicting_file_1.txt -error: Failed to merge in the changes. -hint: Use 'git am --show-current-patch' to see the failed patch -Patch failed at 0001 Commit #1 - -Resolve all conflicts manually, mark them as resolved with -"git add/rm ", then run "git rebase --continue". -You can instead skip this commit: run "git rebase --skip". -To abort and get back to the state before "git rebase", run "git rebase --abort". -``` - -これにより、マージの競合があることがわかり、競合のあるファイルの名前が示されます。 -テキストエディタで競合するファイルを開くと、ファイルのどこかに次のような行があります: - -``` -<<<<<<< HEAD -

For help with any issues, email us at support@webhost.us.

-======= -

Need help? Email support@webhost.us.

->>>>>>> Commit #1 -``` - -行 `<<<<<<< HEAD` はマージ競合の始まりを示し、行 `>>>>>>> commit #1` は終了を示し、競合するセクションは `=======` で区切られます。 -`HEAD` 側の部分はファイルの QMK master バージョンからのものであり、コミットメッセージでマークされた部分は現在のブランチとコミットからのものです。 - -Git はファイルの内容ではなく *ファイルへの変更* を直接追跡するため、Git がコミットの前にファイル内にあったテキストを見つけられない場合、ファイルの編集方法がわかりません。 -ファイルを再編集して、競合を解決します。 -変更を加えてから、ファイルを保存します。 - -``` -

Need help? Email support@webhost.us.

-``` - -そしてコマンド実行: - -``` -git add conflicting_file_1.txt -git rebase --continue -``` - -Git は、競合するファイルへの変更をログに記録し、ブランチのコミットが最後に達するまで適用し続けます。 diff --git a/docs/ja/newbs_git_resynchronize_a_branch.md b/docs/ja/newbs_git_resynchronize_a_branch.md deleted file mode 100644 index 567ec38bfec..00000000000 --- a/docs/ja/newbs_git_resynchronize_a_branch.md +++ /dev/null @@ -1,88 +0,0 @@ -# 同期のとれていない git ブランチの再同期 - - - -仮にあなたの `master` ブランチにあなたのコミットを行い、そしてあなたの QMK リポジトリの更新が必要になったとします。 -(フォーク元の) QMK の `master` ブランチをあなたの `master` ブランチに `git pull` することもできますが、GitHub は、あなたのブランチが `qmk:master` より何コミットか先行していると通知します、この状態で QMK にプルリクエストを行う場合、問題が発生する可能性があります。 -(訳注:この通知は、GitHub のあなたのリポジトリの code ペインのブランチ選択メニューの下のあたりで `This branch is 3 commit ahead of qmk:master` という様な文面で表示されています。) - -?> このドキュメントは [あなたのフォークの master ブランチ: 更新は頻繁に、コミットはしないこと](ja/newbs_git_using_your_master_branch.md) で詳述されている概念に基づいています。その概念に慣れていない場合は、まずそれを読んでから、ここに戻ってください。 -(訳注:この文書で言う、「同期のとれていない git ブランチ」とは、master ブランチに関する、この「コミットしない」方針を逸脱して、QMK の master リポジトリに存在しないコミットがあなたのフォークの master ブランチに入っている状態を指します。) - -## あなた自身の `master` ブランチでの変更のバックアップ(オプション) - -救えるものなら自分の行った変更を失いたくはないでしょう。 -あなたの `master` ブランチに既に加えた変更を保存したい場合、最も簡単な方法は、単に「ダーティな」`master` ブランチの複製を作成することです: - -```sh -git branch old_master master -``` - -これで、 `master` ブランチの複製である `old_master` という名前のブランチができました。 - -## あなたのブランチの再同期 - -さあ、`master` ブランチを再同期します。 -この手順では、QMK のリポジトリを git のリモートリポジトリとして設定する必要があります。 -設定済みのリモートリポジトリを確認するには、`git remote -v` を実行し、次のような結果が返されなければなりません。 - -```sh -QMKuser ~/qmk_firmware (master) -$ git remote -v -origin https://github.com//qmk_firmware.git (fetch) -origin https://github.com//qmk_firmware.git (push) -upstream https://github.com/qmk/qmk_firmware.git (fetch) -upstream https://github.com/qmk/qmk_firmware.git (push) -``` - -もし、上記のようにならずに以下のように参照されるフォークが、1つだけ表示される場合: - -```sh -QMKuser ~/qmk_firmware (master) -$ git remote -v -origin https://github.com/qmk/qmk_firmware.git (fetch) -origin https://github.com/qmk/qmk_firmware.git (push) -``` - -新しいリモートリポジトリを追加します: - -```sh -git remote add upstream https://github.com/qmk/qmk_firmware.git -``` - -次に、`origin` リモートリポジトリを、あなた自身のフォークにリダイレクトします: - -```sh -git remote set-url origin https://github.com/<あなたのユーザ名>/qmk_firmware.git -``` - -両方のリモートリポジトリが設定されたので、次を実行して、QMK である `upstream` リポジトリの参照を更新する必要があります。 - -```sh -git fetch upstream -``` - -この時点で、次を実行してあなたの(訳注:master)ブランチを QMK のブランチに再同期します。 -(訳注: 今現在 `master` ブランチがチェックアウトされていなければなりません。 - そうなってなければ、`git checkout master` を先に実行しておく必要があります。) - -```sh -git reset --hard upstream/master -``` - -これらの手順により、あなたのコンピュータ上のリポジトリが更新されますが、あなたの GitHub 上のフォークはまだ同期されていません。 -GitHub 上のフォークを再同期するには、あなたのフォークにプッシュして、ローカルリポジトリに反映されていないリモート変更をオーバーライドするように Git に指示する必要があります。 -これを行うには、次を実行します: - -```sh -git push --force-with-lease -``` - -!> 他のユーザーがコミットを投稿するフォークで `git push --force-with-lease` を**実行しないでください**。これをすると、かれらのコミットが消去されてしまいます。 - -これで、あなたの GitHub フォーク、あなたのローカルファイル、および QMK のリポジトリはすべて同じになりました。 -ここから、[ブランチを使って](ja/newbs_git_using_your_master_branch.md#making-changes)さらに必要な変更を加え、通常どおりそれらを投稿できます。 diff --git a/docs/ja/newbs_git_using_your_master_branch.md b/docs/ja/newbs_git_using_your_master_branch.md deleted file mode 100644 index 308a61eded1..00000000000 --- a/docs/ja/newbs_git_using_your_master_branch.md +++ /dev/null @@ -1,101 +0,0 @@ -# あなたのフォークの master ブランチ: 更新は頻繁に、コミットはしないこと - - - -QMK の開発では、何がどこで行われているかにかかわらず、`master` ブランチを最新の状態に保つことを強くお勧めします、しかし `master` ブランチには***絶対に直接コミットしないでください***。 -代わりに、あなたのすべての変更は開発ブランチで行い、あなたが開発する時にはそのブランチからプルリクエストを発行します。 - -マージの競合 — これは 2人以上のユーザーがファイルの同じ部分をそれぞれ異なる編集をして統合できなくなった状態 — の可能性を減らすため `master` ブランチをなるべく最新の状態に保ち、新しいブランチを作成して新しい開発を開始します。 - -## あなたの master ブランチを更新する - -`master` ブランチを最新の状態に保つには、git のリモートリポジトリとして QMK ファームウェアのリポジトリ(以降、QMK リポジトリ)を追加することをお勧めします。 -これを行うには、Git コマンドラインインターフェイスを開き、次のように入力します。 - -``` -git remote add upstream https://github.com/qmk/qmk_firmware.git -``` - -?> `upstream`(訳注: `upstream` は`上流`という意味です)という名前は任意ですが、一般的な慣習です。 -QMK のリモートリポジトリには、あなたにとって分かりやすい名前を付けることができます。 -Git の `remote` コマンドは、構文 `git remote add ` を使用します。 -`` はリモートリポジトリの省略形としてあなたが指定するものです。 -この名前は、`fetch`、`pull`、`push` やそれ以外の多くの Git コマンドで、対象のリモートリポジトリを指定するために使用されます。 - -リポジトリが追加されたことを確認するには、`git remote -v` を実行します。 -次のように表示されます。 - -``` -$ git remote -v -origin https://github.com//qmk_firmware.git (fetch) -origin https://github.com//qmk_firmware.git (push) -upstream https://github.com/qmk/qmk_firmware.git (fetch) -upstream https://github.com/qmk/qmk_firmware.git (push) -``` - -これが完了すると、`git fetch upstream` を実行してリポジトリの更新を確認できます。 -このコマンドは `upstream` というニックネームを持つ QMK リポジトリから、ブランチとタグ — "refs" と総称されます — を取得します。 -これで、あなたのフォーク `origin` のデータを QMK が保持するデータと比較できます。 - -あなたのフォークの `master` を更新するには、次を実行します、各行の後に Enter キーを押してください: - -``` -git checkout master -git fetch upstream -git pull upstream master -git push origin master -``` - -これにより、あなたの `master` ブランチに切り替わり、QMK リポジトリから 'refs' を取得し、現在の QMK の `master` ブランチをコンピュータにダウンロードしてから、あなたのフォークにアップロードします。 - -## 変更を行なう :id=making-changes - -変更するには、以下を入力して新しいブランチを作成します: - -``` -git checkout -b dev_branch -git push --set-upstream origin dev_branch -``` - -これにより、`dev_branch` という名前の新しいブランチが作成され、チェックアウトされ、新しいブランチがあなたのフォークに保存されます。 -`--set-upstream` 引数は、このブランチから `git push` または `git pull` を使用するたびに、あなたのフォークと `dev_branch` ブランチを使用するように git に指示します。 -この引数は最初のプッシュでのみ使用する必要があります。 -その後、残りの引数なしで `git push` または `git pull` を安全に使用できます。 - -?> `git push` では、`-set-upstream` の代わりに `-u` を使用できます、 `-u` は `--set-upstream` のエイリアスです。 - -ブランチにはほぼ任意の名前を付けることができますが、あなたが行なう変更を表す名前を付けることをお勧めします。 - -デフォルトでは、`git checkout -b`は、今チェックアウトされているブランチに基づいて新しいブランチを作成します。 -コマンド末尾に既存のブランチの名前を追加指定することにより、チェックアウトされていない既存のブランチを基にして新しいブランチを作成できます: - -``` -git checkout -b dev_branch master -``` - -これで開発ブランチができたのでテキストエディタを開き必要な変更を加えます。 -ブランチに対して多くの小さなコミットを行うことをお勧めします。 -そうすることで、問題を引き起こす変更をより簡単に特定し必要に応じて元に戻すことができます。 -変更を加えるには、更新が必要なファイルを編集して保存し、Git の *ステージングエリア* に追加してから、ブランチにコミットします: - -``` -git add path/to/updated_file -git commit -m "My commit message." -``` - -`git add`は、変更されたファイルを Git の *ステージングエリア* に追加します。 -これは、Git の「ロードゾーン」です。 -これには、`git commit` によって *コミット* される変更が含まれており、リポジトリへの変更が保存されます。 -変更内容が一目でわかるように、説明的なコミットメッセージを使用します。 - -?> 複数のファイルを変更した場合、`git add -- path/to/file1 path/to/file2 ...` を実行すれば、あなたの望むファイルを追加できます。 - -## 変更を公開する - -最後のステップは、変更をフォークにプッシュすることです。 -これを行うには、`git push`と入力します。 -Git は、 `dev_branch`の現在の状態をフォークに公開します。 diff --git a/docs/ja/newbs_learn_more_resources.md b/docs/ja/newbs_learn_more_resources.md deleted file mode 100644 index 686b9244651..00000000000 --- a/docs/ja/newbs_learn_more_resources.md +++ /dev/null @@ -1,63 +0,0 @@ -# 学習リソース - - - -これらのリソースは、QMK コミュニティの新しいメンバーに、初心者向けドキュメントで提供されている情報に対する理解を深めることを目的としています。 - -## QMK に関するリソース - -### 英語 :id=english-resources-qmk - -* [Thomas Baart's QMK Basics Blog](https://thomasbaart.nl/category/mechanical-keyboards/firmware/qmk/qmk-basics/) – 新規ユーザーの視点から見た QMK ファームウェアの使い方の基本を網羅した、ユーザー作成のブログ。 - -### 日本語 :id=japanese-resources-qmk - -_日本語のリソース情報を募集中です。_ - -## コマンドラインに関するリソース :id=command-line-resources - -### 英語 :id=english-resources-cli - -* [Good General Tutorial on Command Line](https://www.codecademy.com/learn/learn-the-command-line) -* [Must Know Linux Commands](https://www.guru99.com/must-know-linux-commands.html)
-* [Some Basic Unix Commands](https://www.tjhsst.edu/~dhyatt/superap/unixcmd.html) - -### 日本語 :id=japanese-resources-cli - -_日本語のリソース情報を募集中です。_ - -## テキストエディタに関するリソース :id=text-editor-resources - -どのテキストエディタを使えば良いか分かりませんか? - -### 英語 :id=english-resources-text-editor - -* [a great introduction to the subject](https://learntocodewith.me/programming/basics/text-editors/) - -### 日本語 :id=japanese-resources-text-editor - -_日本語のリソース情報を募集中です。_ - -コーディング用に特別に作成されたエディタ: -* [Sublime Text](https://www.sublimetext.com/) -* [VS Code](https://code.visualstudio.com/) - -## Git に関するリソース - -### 英語 :id=english-resources-git - -* [Great General Tutorial](https://www.codecademy.com/learn/learn-git) -* [Flight Rules For Git](https://github.com/k88hudson/git-flight-rules) -* [Git Game To Learn From Examples](https://learngitbranching.js.org/) - -### 日本語 :id=japanese-resources-git - -_日本語のリソース情報を募集中です。_ - -* [Git Game To Learn From Examples(日本語対応有り)](https://learngitbranching.js.org/) - git のブランチの作り方、マージの仕方などがビジュアルに学べます。 -* [QMK で GitHub を使う方法](ja/getting_started_github.md) diff --git a/docs/ja/newbs_testing_debugging.md b/docs/ja/newbs_testing_debugging.md deleted file mode 100644 index d64f0f6dff8..00000000000 --- a/docs/ja/newbs_testing_debugging.md +++ /dev/null @@ -1,15 +0,0 @@ -# テストとデバッグ - - - -## テスト - -[ここに移動しました](ja/faq_misc.md#testing) - -## デバッグ :id=debugging - -[ここに移動しました](ja/faq_debug.md#debugging) diff --git a/docs/ja/one_shot_keys.md b/docs/ja/one_shot_keys.md deleted file mode 100644 index f049c2d6f70..00000000000 --- a/docs/ja/one_shot_keys.md +++ /dev/null @@ -1,110 +0,0 @@ -# ワンショットキー - - - -ワンショットキーは次のキーが押されるまでアクティブのままになり、そのあと放されるキーです。これにより一度に1つ以上のキーを押すことなく、キーボードの組み合わせを入力することができます。これらのキーは通常「スティッキーキー」あるいは「デッドキー」と呼ばれます。 - -例えば、キーを `OSM(MOD_LSFT)` と定義する場合、最初にシフトを押して放し、続いて A を押して放すことで、大文字の A キャラクタを入力することができます。コンピュータには、シフトが押された瞬間にシフトが押し続けられ、A が放された後ですぐにシフトキーが放されるように見えます。 - -ワンショットキーは通常のモディファイアのようにも動作します。ワンショットキーを押しながら他のキーを入力すると、キーを放した直後にワンショットキーが解除されます。 - -さらに、短時間でキーを5回押すと、そのキーをロックします。これはワンショットモディファイアとワンショットレイヤーに適用され、`ONESHOT_TAP_TOGGLE` 定義によって制御されます。 - -`config.h` でこれらを定義することでワンショットキーの挙動を制御することができます: - -```c -#define ONESHOT_TAP_TOGGLE 5 /* この回数をタップすると、もう一度タップするまでキーが押されたままになります。*/ -#define ONESHOT_TIMEOUT 5000 /* ワンショットキーが解除されるまでの時間 (ms) */ -``` - -* `OSM(mod)` - *mod*を一時的に押し続けます。[モッドタップ](ja/mod_tap.md)で示したように、`KC_*` コードでは無く、`MOD_*` キーコードを使わなければなりません。 -* `OSL(layer)` - 一時的に*レイヤー*に切り替えます。 -* `OS_ON` - ワンショットキーをオンにします。 -* `OS_OFF` - ワンショットキーをオフにします。OSM は通常の mod キーのように機能し、OSL は `MO` キーのように機能します。 -* `OS_TOGG` - ワンショットキーの状態を切り替えます。 - -ワンショットキーをマクロあるいはタップダンスルーチンの一部として有効にしたい場合があります。 - -ワンショットレイヤーについては、キーを押した時に `set_oneshot_layer(LAYER, ONESHOT_START)` を呼び出し、キーを放した時に `clear_oneshot_layer_state(ONESHOT_PRESSED)` を呼び出す必要があります。ワンショットをキャンセルする場合は、`reset_oneshot_layer()` を呼び出してください。 - -ワンショットモッドについては、設定するためには `set_oneshot_mods(MOD_BIT(KC_*))` を呼び出し、キャンセルするためには `clear_oneshot_mods()` を呼び出す必要があります。 - -!> リモートデスクトップ接続で OSM 変換に問題がある場合は、設定を開いて「ローカル リソース」タブに移動し、キーボードセクションでドロップダウンを「このコンピューター」に変更することで修正することができます。これにより問題が修正され、OSM がリモートデスクトップ上で適切に動作するようになります。 - -## コールバック - -ワンショットキーを押す時にカスタムロジックを実行したい場合、実装を選択できる幾つかのコールバックがあります。例えば、LED を点滅させたり、音を鳴らしたりして、ワンショットキーの変化を示すことができます。 - -`OSM(mod)` のためのコールバックがあります。ワンショット修飾キーの状態が変更されるたびに呼び出されます: オンに切り替わる時だけでなく、オフに切り替わる時にも呼び出されます。以下のように使うことができます: - -```c -void oneshot_mods_changed_user(uint8_t mods) { - if (mods & MOD_MASK_SHIFT) { - println("Oneshot mods SHIFT"); - } - if (mods & MOD_MASK_CTRL) { - println("Oneshot mods CTRL"); - } - if (mods & MOD_MASK_ALT) { - println("Oneshot mods ALT"); - } - if (mods & MOD_MASK_GUI) { - println("Oneshot mods GUI"); - } - if (!mods) { - println("Oneshot mods off"); - } -} -``` - -`mods` 引数は変更後のアクティブな mod が含まれるため、現在の状態が反映されます。 - -(`config.h` に `#define ONESHOT_TAP_TOGGLE 2` を追加して) ワンショットタップトグルを使う場合、指定された回数だけ修飾キーを押してロックすることができます。そのためのコールバックもあります: - -```c -void oneshot_locked_mods_changed_user(uint8_t mods) { - if (mods & MOD_MASK_SHIFT) { - println("Oneshot locked mods SHIFT"); - } - if (mods & MOD_MASK_CTRL) { - println("Oneshot locked mods CTRL"); - } - if (mods & MOD_MASK_ALT) { - println("Oneshot locked mods ALT"); - } - if (mods & MOD_MASK_GUI) { - println("Oneshot locked mods GUI"); - } - if (!mods) { - println("Oneshot locked mods off"); - } -} -``` - -最後に、`OSL(layer)` ワンショットキーのためのコールバックもあります: - -```c -void oneshot_layer_changed_user(uint8_t layer) { - if (layer == 1) { - println("Oneshot layer 1 on"); - } - if (!layer) { - println("Oneshot layer off"); - } -} -``` - -いずれかのワンショットレイヤーがオフの場合、`layer` は 0 になります。ワンショットレイヤーの変更では無く、レイヤーの変更で何かを実行したい場合は、`layer_state_set_user` は使用するのに良いコールバックです。 - -独自のキーボードを作成している場合、`_kb` と同等の機能もあります: - -```c -void oneshot_locked_mods_changed_kb(uint8_t mods); -void oneshot_mods_changed_kb(uint8_t mods); -void oneshot_layer_changed_kb(uint8_t layer); -``` - -他のコールバックと同様に、更にカスタマイズを可能にするために `_user` バージョンを呼ぶようにしてください。 diff --git a/docs/ja/other_eclipse.md b/docs/ja/other_eclipse.md deleted file mode 100644 index 92901661986..00000000000 --- a/docs/ja/other_eclipse.md +++ /dev/null @@ -1,89 +0,0 @@ -# QMK 開発のための Eclipse セットアップ - - - -[Eclipse][1]は Java 開発のために広く使われているオープンソースの [統合開発環境](https://en.wikipedia.org/wiki/Integrated_development_environment) (IDE) ですが、他の言語および用途のためにカスタマイズできる拡張可能なプラグインシステムがあります。 - -Eclipse のような IDE の使用は、プレーンテキストエディタの使用よりも多くの利点をもたらします。例えば、次のような利点です。 -* インテリジェントなコード補完 -* コード内の便利なナビゲーション -* リファクタリングツール -* 自動ビルド (コマンドラインは不要) -* Git 用の GUI -* 静的なコード解析 -* デバッグ、コードフォーマット、呼び出し階層の表示などの多くのツール。 - -このページの目的は、AVR ソフトウェアの開発および QMK コードベースで作業するために、Eclipse をセットアップする方法を文章化することです。 - -このセットアップは現時点では Ubuntu 16.04 でのみテストされていることに注意してください。 - -# 前提条件 -## ビルド環境 -始める前に、チュートリアルの[セットアップ](ja/newbs_getting_started.md)のセクションに従う必要があります。特に、[`qmk compile` コマンド](ja/newbs_building_firmware.md#build-your-firmware)でファームウェアをビルドできなければなりません。 - -## Java -Eclipse は Java アプリケーションであるため、実行するには Java 8 以降をインストールする必要があります。JRE または JDK を選択できますが、Java 開発を行う場合は後者が役に立ちます。 - -# Eclipse とプラグインのインストール -Eclipse は用途に応じて[いくつかのフレーバー](https://www.eclipse.org/downloads/eclipse-packages/)で提供されます。AVR スタックを構成するパッケージは無いため、Eclipse CDT (C/C++ 開発ツール)から始め、必要なプラグインをインストールする必要があります。 - -## Eclipse CDT のダウンロードとインストール -システムに既に Eclipse CDT がある場合は、この手順をスキップできます。ただし、より良いサポートのために最新の状態に保つことをお勧めします。 - -別の Eclipse パッケージをインストールしている場合は、通常は[その上に CDT プラグインをインストール](https://eclipse.org/cdt/downloads.php)することができます。しかし、軽くして、作業中のプロジェクトに必要のないツールが乱雑にならないように、ゼロから再インストールすることをお勧めします。 - -インストールは非常に簡単です: [5 Steps to install Eclipse](https://eclipse.org/downloads/eclipse-packages/?show_instructions=TRUE) に従い、ステップ3で **Eclipse IDE for C/C++ Developers** を選択します。 - -あるいは、直接 [Eclipse IDE for C/C++ Developers をダウンロード](https://www.eclipse.org/downloads/eclipse-packages/)([現在のバージョンへの直接リンク](https://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/neonr))し、選択した場所にパッケージを解凍することもできます (これにより `eclipse` フォルダが作成されます)。 - -## 最初の起動 -インストールが完了したら、Launch ボタンをクリックします。(パッケージを手動で解凍した場合は、Eclipse をインストールしたフォルダを開き、`eclipse` 実行可能ファイルをダブルクリックします) - -Workspace 選択で入力を促された場合は、Eclipse メタデータと通常のプロジェクトを保持するディレクトリを選択します。**`qmk_firmware` ディレクトリを選択しないでください**。これはプロジェクトディレクトリになります。代わりに親フォルダを選択するか、(できれば空の)他のフォルダを選択します(まだ使用していない場合は、デフォルトで問題ありません)。 - -開始したら、右上の Workbench ボタンをクリックし、workbench ビューに切り替えます (下部に開始時のようこそ画面をスキップするためのチェックボックスもあります)。 - -## 必要なプラグインをインストール -注意: プラグインをインストールするごとに、Eclipse を再起動する必要はありません。全てのプラグインがインストールされたら単に1回再起動します。 - -### [The AVR Plugin](https://avr-eclipse.sourceforge.net/) -これは最も重要なプラグインで、Eclipse が AVR C コードを_理解_できるようになります。[更新サイトを使うための指示](https://avr-eclipse.sourceforge.net/wiki/index.php/Plugin_Download#Update_Site)に従い、未署名コンテンツのセキュリティ警告に同意します。 - -### [ANSI Escape in Console](https://marketplace.eclipse.org/content/ansi-escape-console) -このプラグインは QMK makefile によって生成された色付きビルド出力を適切に表示するために必要です。 - -1. Help > Eclipse Marketplace… を開きます -2. _ANSI Escape in Console_ を検索します -3. プラグインの Install ボタンをクリックします -4. 指示に従い、未署名コンテンツのセキュリティ警告に再度同意します。 - -両方のプラグインがインストールされたら、プロンプトに従って Eclipse を再起動します。 - -# QMK 用の Eclipse の設定 -## プロジェクトのインポート -1. File > New > Makefile Project with Existing Code をクリックします -2. 次の画面で: -* _Existing Code Location_ としてリポジトリをクローンしたディレクトリを選択します。 -* (オプション) プロジェクトに別の名前を付けます¹ 例えば _QMK_ あるいは _Quantum_; -* _AVR-GCC Toolchain_ を選択します; -* 残りをそのままにして、Finish をクリックします - -![Eclipse での QMK のインポート](https://i.imgur.com/oHYR1yW.png) - -3. これでプロジェクトがロードされインデックスされます。左側の _Project Explorer_ から、簡単にファイルを参照できます。 - -¹ カスタム名でプロジェクトをインポートすると問題が発生するかもしれません。正しく動作しない場合は、デフォルトのプロジェクト名 (つまり、ディレクトリの名前、おそらく `qmk_firmware`) のままにしてみてください。 - -## キーボードのビルド - -プロジェクトのデフォルトの make 対象を `all` から私たちが取り組んでいる特定のキーボードとキーマップの組み合わせ、例えば `kinesis/kint36:stapelberg` に変更します。このようにすると、プロジェクトのクリーニングやビルドのようなプロジェクト全体のアクションは迅速に完了し、長い時間がかかったり Eclipse が完全にロックしたりすることがなくなります。 - -1. プロジェクト内の editor タブへフォーカスします -2. `Project` > `Properties` ウィンドウを開き、`C/C++ Build` リストエントリを選択して、`Behavior` タブに切り替えます。 -3. 有効な全てのビルドのデフォルトの `Make build target` テキストフィールドを、`all` から例えば `kinesis/kint41:stapelberg` に変更します。 -4. `Project` > `Clean...` を選択して、セットアップが動作することを確認します。 - -[1]: https://en.wikipedia.org/wiki/Eclipse_(software) diff --git a/docs/ja/other_vscode.md b/docs/ja/other_vscode.md deleted file mode 100644 index 2b6e27bb0af..00000000000 --- a/docs/ja/other_vscode.md +++ /dev/null @@ -1,119 +0,0 @@ -# QMK 開発用の Visual Studio Code のセットアップ - - - -[Visual Studio Code](https://code.visualstudio.com/) (VS Code) は多くの異なるプログラミング言語をサポートするオープンソースのコードエディタです。 - -VS Code のようなフル機能のエディタの使用は、プレーンテキストエディタの使用よりも多くの利点をもたらします。例えば、次のような利点です。: -* インテリジェントなコード補完 -* コード内の便利なナビゲーション -* リファクタリングツール -* 自動ビルド (コマンドラインは不要) -* Git 用のグラフィカルなフロントエンド -* デバッグ、コードフォーマット、呼び出し階層の表示などの多くのツール - -このページの目的は、QMK ファームウェアを開発するために VS Code をセットアップする方法を文章化することです。 - -このガイドは Windows および Ubuntu 18.04 で必要な全てを構成する方法を説明します。 - -# VS Code のセットアップ -はじめに、全てのビルドツールをセットアップし、QMK ファームウェアをクローンする必要があります。まだ設定していない場合は、[セットアップ](ja/newbs_getting_started.md)に進んでください。 - -## Windows - -### 前提条件 - -* [Git for Windows](https://git-scm.com/download/win) (このリンクはインストーラを保存あるいは実行するように促します) - - 1. `Git LFS (Large File Support)` および `Check daily for Git for Windows updates` 以外の全てのオプションを無効にします。 - 2. デフォルトのエディタを `Use Visual Studio Code as Git's default editor` に設定します。 - 3. ここで使用すべきオプションなので、`Use Git from Git Bash only` オプションを選択します。 - 4. `Choosing HTTPS transport backend` については、どちらのオプションでも問題ありません。 - 5. `Checkout as-is, commit Unix-style line endings` オプションを選択します。QMK ファームウェアは Unix スタイルのコミットを使います。 - 6. 追加のオプションについては、デフォルトのオプションをそのままにします。 - - このソフトウェアは、VS Code での Git サポートに必要です。これを含めないことも可能ですが、これを使う方が簡単です。 - -* [Git Credential Manager for Windows](https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases) (オプション) - - このソフトウェアは、git 証明書、MFA、パーソナルアクセストークン生成のためのセキュアストレージを提供することで、Git のより良いサポートを提供します。 - - これは厳密には必要ありませんが、お勧めします。 - - -### VS Code のインストール - -1. [VS Code](https://code.visualstudio.com/) に進み、インストーラをダウンロードします -2. インストーラを実行します - -この項は非常に簡単です。ただし、正しく構成されていることを確認するために、しなければならない幾つかの設定があります。 - -### VS Code の設定 - -最初に、IntelliSense をセットアップする必要があります。これは厳密には必要ではありませんが、あなたの人生をずっと楽にします。これを行うには、QMK ファームウェアフォルダに `.vscode/c_cpp_properties.json` ファイルを作成する必要があります。これは全て手動で行うことができますが、ほとんどの作業は既に完了しています。 - -[このファイル](https://gist.github.com/drashna/48e2c49ce877be592a1650f91f8473e8) を取得して保存します。MSYS2 をデフォルトの場所にインストールしなかった、または WSL か LxSS を使っている場合、このファイルを編集する必要があります。 - -このファイルを保存したら、VS Code が既に実行中の場合はリロードする必要があります。 - -?> また、`.vscode` フォルダ に `extensions.json` および `settings.json` ファイルがあるはずです。 - - -次に、VSCode に統合ターミナルとして表示されるように、MSYS2 ウィンドウを設定します。これには多くの利点があります。ほとんどの場合で、エラー上で Ctrl + クリックするとこれらのファイルにジャンプできます。これによりデバッグがはるかに簡単になります。また、他のウィンドウへジャンプする必要が無いという点でも優れています。 - -1. ファイル > ユーザー設定 > > 設定 をクリックします。 -2. 右上の {} ボタンをクリックし、`settings.json` ファイルを開きます。 -3. ファイルの内容を以下のように設定します: - - ```json - { - "terminal.integrated.shell.windows": "C:\\msys64\\usr\\bin\\bash.exe", - "terminal.integrated.env.windows": { - "MSYSTEM": "MINGW64", - "CHERE_INVOKING": "1" - }, - "terminal.integrated.shellArgs.windows": [ - "--login" - ], - "terminal.integrated.cursorStyle": "line" - } - ``` - - ここに既に設定がある場合は、最初と最後の波括弧の間に全てを追加し、既存の設定を新しく追加された設定とカンマで区切ります。 - -?> MSYS2 を別のフォルダにインストールした場合は、`terminal.integrated.shell.windows` のパスをシステムの正しいパスに変更する必要があります。 - -4. Ctrl-` (Grave) を押して、ターミナルを起動するか、表示 > ターミナル (コマンド `workbench.action.terminal.toggleTerminal`)に進みます。まだターミナルが開いていない場合は、新しいターミナルが開きます。 - - これにより、ワークスペースフォルダ(つまり `qmk_firmware` フォルダ)でターミナルが起動し、キーボードをコンパイルすることができます。 - - -## 他の全てのオペレーティングシステム - -1. [VS Code](https://code.visualstudio.com/) に進み、インストーラをダウンロードします -2. インストーラを実行します -3. 以上です - -いいえ、本当に以上です。必要なパスはパッケージのインストール時に既に含まれています。現在のワークスペースのファイルを検出し、IntelliSense 用に解析する方がより良いです。 - -## プラグイン - -インストールした方が良い拡張が幾つかあります。 - -* [Git Extension Pack](https://marketplace.visualstudio.com/items?itemName=donjayamanne.git-extension-pack) - -これは QMK ファームウェアで Git を簡単に使用できる Git 関連ツールを多数インスールします。 -* [EditorConfig for VS Code](https://marketplace.visualstudio.com/items?itemName=EditorConfig.EditorConfig) - _[オプション]_ - QMK コーディング規約にコードを準拠させるのに役立ちます。 -* [GitHub Markdown Preview](https://marketplace.visualstudio.com/items?itemName=bierner.github-markdown-preview) - _[オプション]_ - VS Code の markdown プレビューを GithHub のようにします。 -* [VS Live Share Extension Pack](https://marketplace.visualstudio.com/items?itemName=MS-vsliveshare.vsliveshare-pack) - _[オプション]_ - この拡張により、他の誰かがあなたのワークスペースにアクセスし(あるいは、あなたが他の誰かのワークスペースにアクセスし)、手伝うことができます。あなたが問題を抱えており、他の誰かの助けが必要な場合に便利です。 - -いずれかの拡張機能をインストールしたら、再起動します。 - -# QMK 用の VS Code の設定 -1. ファイル > フォルダーを開く をクリックします -2. GitHub からクローンした QMK ファームウェアフォルダを開きます。 -3. ファイル > 名前を付けてワークスペースを保存... をクリックします - -これで、VS Code で QMK ファームウェアをコーディングする準備ができました。 diff --git a/docs/ja/pr_checklist.md b/docs/ja/pr_checklist.md deleted file mode 100644 index caab2b4d504..00000000000 --- a/docs/ja/pr_checklist.md +++ /dev/null @@ -1,145 +0,0 @@ -# PR チェックリスト - - - -これは、提出された PR を QMK の協力者がレビューする際に何をチェックするのかの非網羅的なチェックリストです。 - -これらの推奨事項に矛盾がある場合は、このドキュメントに対して [issue を開く](https://github.com/qmk/qmk_firmware/issues/new)か、[Discord](https://discord.gg/Uq7gcHh) の QMK コラボレータに連絡することをお勧めします。 - -## 一般的な PR - -- PRは、ソースリポジトリ上の `master` ではないブランチを使って提出する必要があります - - これは、あなたの PR にとって別のブランチをターゲットにするという意味ではなく、むしろ自分の master ブランチで作業をしていないという意味です - - もし PR の提出者が自分の `master` ブランチを使っている場合は、マージ後に ["git の使い方"](https://docs.qmk.fm/#/ja/newbs_git_using_your_master_branch) ページへのリンクが表示されます - (このドキュメントの最後にはメッセージの内容が含まれます) -- 新しく追加されたディレクトリとファイル名は小文字でなければなりません - - 上流のソースが元々大文字を使っていた場合 (ChibiOS や他のリポジトリからインポートしたファイルなど)、このルールは緩和されるかもしれません - - 十分な正当性がある場合 (既存のコアファイルとの整合性など) は、このルールを緩和することができます。 - - ボードデザイナーがキーボードの名前を大文字にした場合は、十分な正当性とはみとめられません -- すべての `*.c` および `*.h` ソースファイルの有効なライセンスヘッダ - - 一貫性のために GPL2/GPL3 が推奨されています - - 他のライセンスも許可されていますが、GPL と互換性があり、再配布が許可されていなければなりません。異なるライセンスを使うと、PR がマージされるのをほぼ確実に遅らせることになります -- QMK コードベースの「ベストプラクティス」に従う - - これは網羅的なリストではありませんし、時間が経つにつれて修正される可能性が高いです - - ヘッダファイルでは、`#ifndef` インクルードガードの代わりに `#pragma once` を使います - - 「旧式の」 GPIO/I2C/SPI 関数を使用しない - 正当な理由がない限り、QMK の抽象化を使用しなければなりません (怠惰は正当な理由にはなりません) - - タイミングの抽象化にも従う必要があります: - - `_delay_ms()` のかわりに `wait_ms()` を。(`#include ` も消します) - - `timer_read()` と `timer_read32()` など。 -- タイミング API は [timer.h](https://github.com/qmk/qmk_firmware/blob/master/platforms/timer.h) を参照してください - - 新しい抽象化が有用だと思う場合は、次のことをお勧めします: - - 機能が完成するまで自分のキーボードでプロトタイプを作成する - - Discord の QMK コラボレータと話し合う - - 個別のコア変更としてそれをリファクタリングする - - あなたのキーボードからそのコピーを削除する -- PR を開く前にリベースしてマージの競合をすべて修正します (ヘルプやアドバイスが必要な場合は、Discord で QMK コラボレータに連絡してください)。 - -## キーマップの PR - -- 特定のボードファイルをインクルードするよりも `#include QMK_KEYBOARD_H` を推奨します -- レイヤーは `#define` よりも `enum` が好まれます -- カスタムキーコードは `#define` ではなく `enum` が必要です。最初のエントリには `= SAFE_RANGE` が必要です -- LAYOUT マクロ呼び出しのパラメータの途中の改行ではバックスラッシュ(`\`)は不要です -- スペーシング(コンマまたはキーコードの最初の文字の配置など)に注意を払うと、見栄えの良いキーマップになります - -## キーボードの PR - -終了した PR(インスピレーションを得るために、以前のレビューコメントセットは、自分のレビューのピンポンをなくすのに役立ちます): -https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard - -- `info.json` - - 有効な URL - - 有効なメンテナ - - Configurator で正しく表示されること(Ctrl + Shift + I を押してローカルファイルをプレビューし、高速入力をオンにして順序を確認する) -- `readme.md` - - 標準テンプレートがあること - - 書き込みコマンドが `:flash` で終わっていること - - 有効なハードウェアの入手方法へのリンク (手配線の場合を除く) -- プライベートな共同購入は問題ありませんが、一回限りのプロトタイプは疑問視されます。オープンソースの場合は、ファイルへのリンクを提供してください - - ボードをブートローダーモードにリセットする方法を明確に説明してください - - キーボードの写真、できれば PCB の写真も添付してください -- `rules.mk` - - `MIDI_ENABLE`、`FAUXCLICKY_ENABLE`、`HD44780_ENABLE` は削除されました - - `# Enable Bluetooth with the Adafruit EZ-Key HID` は `# Enable Bluetooth` に変更されました - - 機能の有効化に関する `(-/+サイズ)` コメントはなくなりました - - ブートローダが指定されている場合は、代替ブートローダのリストを削除します - - [mcu_selection.mk](https://github.com/qmk/qmk_firmware/blob/master/quantum/mcu_selection.mk)の同等の MCU と比較した場合、同じ値の場合、デフォルトの MCU パラメータの再定義がないこと -- キーボードの `config.h` - - `PRODUCT` 値に `MANUFACTURER` を繰り返さないでください - - `#define DESCRIPTION` は要りません - - マジックキーオプション、 MIDI オプション、HD44780 コンフィギュレーションは要りません - - ユーザー設定の設定可能な `#define` はキーマップ `config.h` に移動する必要があります - - "`DEBOUNCING_DELAY`" の代りに "`DEBOUNCE`" を使います - - キーボードが QMK で起動するために最低限必要なコードが存在する必要があります - - マトリックスと重要なデバイスの初期化コード - - (カスタムキーコードや特別なアニメーションなど)商用キーボードの既存の機能をミラーリングする場合は、`default` ではないキーマップを使って処理する必要があります - - Vial 関連のファイルまたは変更は QMK ファームウェアで使用されないため受け入れられません (Vial 固有のコアコードは提出またはマージされていません) -- `keyboard.c` - - 空の `xxxx_xxxx_kb()` または他の weak-define のデフォルト実装関数が削除されていること - - コメントアウトされた関数も削除されていること - - `matrix_init_board()` などが `keyboard_pre_init_kb()` に移行されました。[keyboard_pre_init*](https://docs.qmk.fm/#/ja/custom_quantum_functions?id=keyboard_pre_init_-function-documentation) を参照してください - - カスタムマトリックスを使用する場合は、`CUSTOM_MATRIX = lite` を選択し、標準のデバウンスを許可します。[マトリックスコードの部分置き換え](https://docs.qmk.fm/#/ja/custom_matrix?id=lite) を参照してください - - 可能な場合は、独自の `led_update_*()` 実装よりも LED インジケータの[設定オプション](https://docs.qmk.fm/#/ja/feature_led_indicators?id=configuration-options)を優先してください。 -- `keyboard.h` - - 先頭に `#include "quantum.h"` を置きます - - `LAYOUT` マクロは、該当する場合は標準の定義を使用してください - - 該当する場合はコミュニティレイアウトマクロ名を使用します (`LAYOUT`/`LAYOUT_all`よりも優先されます) -- キーマップの `config.h` - - キーボードから `rules.mk` や `config.h` が重複していないこと -- `keymaps/default/keymap.c` - - `QMKBEST`/`QMKURL` が削除されていること - - `MO(_LOWER)`および `MO(_RAISE)`キーコードまたは同等のものを使用していて、キーマップに両方のキーを押したときに adjust レイヤーがある場合 - キーマップに直接 adjust レイヤーに入るキーコードがない場合(`MO(_ADJUST)`のように)次のように記述します... - ``` - layer_state_t layer_state_set_user(layer_state_t state) { - return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); - } - ``` - ...キーマップの `process_record_user()` 内で `layer_on()`、 `update_tri_layer()` を手動で処理する代わりに。 -- default (および via) のキーマップは「素朴」でなければなりません。 - - 他のユーザーが独自のユーザー固有のキーマップを開発するための「クリーンな状態」として使用するための最低限のもの。 - - これらのキーマップでは標準のレイアウトが推奨されます(可能な場合) - - デフォルトのキーマップは VIA を有効にするべきではありません -- VIA の統合ドキュメント類には `via` という名前のキーマップが必要です。 -- PR の提出者は、同じ PR に機能を紹介する個人的な(または豪華な)キーマップを持たせることができますが、「デフォルト」のキーマップに埋め込むべきではありません -- PR の提出者はまた、既存の商用キーボードへ QMK を移植する場合、その商用製品の既存の機能を反映する「製造業者に一致する」キーマップを持つことができます -- PR に VIA の json ファイルを含めないでください。これらは QMK ファームウェアで使われないため QMK リポジトリに属しません -- それらは [VIA のキーボードリポジトリ](https://github.com/the-via/keyboards)に属します。 - - -さらに、ChibiOS に固有で: -- 既存の ChibiOS ボード定義を使用することを**強く**推奨します。 - - 多くの場合、同等の Nucleo ボードは、同じファミリの異なるフラッシュサイズまたはわずかに異なるモデルで使用できます。 - - 例:STM32L082KZ の場合、STM32L073RZ に類似しているため、rules.mkで `BOARD = ST_NUCLEO64_L073RZ` を使用できます。 - - QMK は ChibiOS のアップグレード時のメンテナンス負担が継続的に発生するため、可能な限りカスタムボード定義を持たないように移行しています。 -- ボードの定義が避けられない場合、`board.c` には標準の `__early_init()` (通常の ChibiOS ボードの定義と同じ) と空の `boardInit()` を実装しなければなりません。 - - Arm/ChibiOS [早期初期化](https:/docs.qmk.fm/#/ja/platformdev_chibios_earlyinit?id=board-init)を参照してください - - `__early_init()`は、`early_hardware_init_pre()` または `early_hardware_init_post()` で適切に置き換える必要があります - - `boardInit()` は `board_init()` に移行する必要があります - -## コアの PR - -- `develop` ブランチをターゲットにする必要があります。これは、その後、breaking change のタイムラインで `master` にマージされます。 -- その他の注意事項 TBD - - 投稿された変更の幅を考えると、コアはもっと主観的です - ---- - -## 注意事項 - -人々が自分の `master` ブランチを使用する場合、マージ後に以下を投稿します: - -``` -For future reference, we recommend against committing to your `master` branch as you've done here, because pull requests from modified `master` branches can make it more difficult to keep your QMK fork updated. It is highly recommended for QMK development – regardless of what is being done or where – to keep your master updated, but **NEVER** commit to it. Instead, do all your changes in a branch (branches are basically free in Git) and issue PRs from your branches when you're developing. - -There are instructions on how to keep your fork updated here: - -[**Best Practices: Your Fork's Master: Update Often, Commit Never**](https://docs.qmk.fm/#/newbs_git_using_your_master_branch) - -[Fixing Your Branch](https://docs.qmk.fm/#/newbs_git_resynchronize_a_branch) will walk you through fixing up your `master` branch moving forward. If you need any help with this just ask. - -Thanks for contributing! -``` - -## レビュープロセス - -一般的に、PR がマージの対象となる前に、意味のある(例えば、コードを検査した)2つ(またはそれ以上)の承認を確認したいと考えています。これらのレビューはコラボレータに限られません -- 時間を割いてくれるコミュニティメンバーは誰でも歓迎(奨励)されます。唯一の違いは、チェックマークが緑にならないことですが、それは問題ありません。 - -また、PR レビューは自由な時間に行われるものです。それは好意で行われるものなので、私たちはレビューに費やす時間に対して、報酬はうけとっていませんし埋め合わせもありません。そのため、私たちがあなたのプルリクエストに取り掛かるのには時間がかかります。家族や生活のことで PR に手が回らなくなることもあり、そして燃え尽き症候群は深刻な懸念です。QMK ファームウェアリポジトリは、毎月平均200件の PR が開かれ、200件の PR がマージされますので、しばらくお待ちください。 diff --git a/docs/ja/proton_c_conversion.md b/docs/ja/proton_c_conversion.md deleted file mode 100644 index 8f0c857cbac..00000000000 --- a/docs/ja/proton_c_conversion.md +++ /dev/null @@ -1,98 +0,0 @@ -# キーボードを Proton C を使うように変更 - - - -Proton C は Pro Micro の差し替え可能品であるため、簡単に使用することができます。 -このページでは、キーボードを変換するための便利な自動化されたプロセスと、Pro Micro では利用できない Proton C の機能を利用したい場合の手動プロセスについて説明しています。 - -## 自動で変換 - -QMK で現在サポートされているキーボードが Pro Micro(または互換ボード)を使用しており、Proton C を使用したい場合は、以下のように make 引数に `CONVERT_TO_PROTON_C=yes` (または `CTPC=yes`) を追加することでファームウェアを生成することができます。 - - make 40percentclub/mf68:default CTPC=yes - -同じ引数をキーマップの `rules.mk` に追加しても同じことができます。 - -これは、次のように、`#ifdef` を使用してコード内で使用できる `CONVERT_TO_PROTON_C` フラグを公開します。 - -```c -#ifdef CONVERT_TO_PROTON_C - // Proton C code -#else - // Pro Micro code -#endif -``` - -`PORTB/DDRB` などが定義されていないというエラーが発生した場合は、ARM と AVR の両方で機能する [GPIO 制御](ja/gpio_control.md) を使用するようにキーボードのコードを変換する必要があります。これは AVR ビルドにまったく影響を与えません。 - -Proton C には1つのオンボード LED(C13)しかなく、デフォルトでは TXLED(D5) がそれにマップされています。代わりに RXLED(B0) をそれにマッピングしたい場合は、`config.h` に次のように追加してください。 - - #define CONVERT_TO_PROTON_C_RXLED - -## 機能の変換 - -下記は ARM ボードに実装されているものに基づいたデフォルトです。 - -| 機能 | 説明 | -|--------------------------------------|------------------------------------------------------------------------------------| -| [オーディオ](ja/feature_audio.md) | 有効 | -| [RGB ライト](ja/feature_rgblight.md) | 無効 | -| [バックライト](feature_backlight.md) | ARM が自動コンフィギュレーションを提供できるようになるまで、[タスク駆動 PWM](ja/(feature_backlight.md#software-pwm-driver))が強制されます | -| USB ホスト (例えば USB-USB コンバータ) | 未サポート (USB ホストコードは AVR 固有のもので、現在 ARM ではサポートされていません。 | -| [分割キーボード](ja/feature_split_keyboard.md) | 部分的 - 有効にする機能に大きく依存します | - -## 手動で変換 - -`CTPC = yes` を指定せずに Proton C をネイティブで使用するには、`rules.mk` の `MCU`行を変更する必要があります: - -``` -MCU = STM32F303 -BOARD = QMK_PROTON_C -``` - -次の変数が存在する場合は削除します。 - -* `BOOTLOADER` -* `EXTRA_FLAGS` - -最後に、`config.h`のすべてのピン割り当てを STM32 上の同等のものに変換します。 - -| Pro Micro 左側| Proton C 左側 | | Proton C 右側 | Pro Micro 右側 | -|--------------|--------------|-|--------------|---------------| -| `D3` | `A9` | | 5v | RAW (5v) | -| `D2` | `A10` | | GND | GND | -| GND | GND | | FLASH | RESET | -| GND | GND | | 3.3v | Vcc 1 | -| `D1` | `B7` | | `A2` | `F4` | -| `D0` | `B6` | | `A1` | `F5` | -| `D4` | `B5` | | `A0` | `F6` | -| `C6` | `B4` | | `B8` | `F7` | -| `D7` | `B3` | | `B13` | `B1` | -| `E6` | `B2` | | `B14` | `B3` | -| `B4` | `B1` | | `B15` | `B2` | -| `B5` | `B0` | | `B9` | `B6` | -| `B0` (RX LED) | `C13` 2 | | `C13` 2 | `D5` (TX LED) | - -また、Proton C の拡張部分にあるいくつかの新しいピンを利用することもできます。 - -| 左側 | | 右側 | -|------|-|-------| -| `A4`3 | | `B10` | -| `A5`4 | | `B11` | -| `A6` | | `B12` | -| `A7` | | `A14`5 (SWCLK) | -| `A8` | | `A13`5 (SWDIO) | -| `A15` | | RESET6 | - -注釈: - -1. Pro Micro の Vcc は 3.3V または 5V にすることができます。 -2. Proton C のオンボード LED は、Pro Micro のように2つはありません、1つだけです。Pro Micro には、RX LED(`D5`) と TX LED(`B0`)があります。 -3. `A4` ピンは、スピーカーと共有されています。 -4. `A5` ピンは、スピーカーと共有されています。 -5. `A13` と `A14` ピンはハードウェアデバッグ (SWD) に使用されます。GPIO にも使えますが、最後に使ってください。 -6. RESET を 3.3V とショート(プルアップ)して MCU をリブートします。これは Pro Micro のようにブートローダモードにはならず、MCU をリセットするだけです。 diff --git a/docs/ja/quantum_keycodes.md b/docs/ja/quantum_keycodes.md deleted file mode 100644 index 0795520c6e3..00000000000 --- a/docs/ja/quantum_keycodes.md +++ /dev/null @@ -1,20 +0,0 @@ -# Quantum キーコード - - - -Quantum キーコードにより、カスタムアクションを定義することなく、基本的なものが提供するものより簡単にキーマップをカスタマイズすることができます。 - -quantum 内の全てのキーコードは `0x0000` と `0xFFFF` の間の数値です。`keymap.c` の中では、関数やその他の特別な場合があるように見えますが、最終的には C プリプロセッサによってそれらは単一の4バイト整数に変換されます。QMK は標準的なキーコードのために `0x0000` から `0x00FF` を予約しています。これらは、`KC_A`、`KC_1` および `KC_LCTL` のようなキーコードで、USB HID 仕様で定義された基本的なキーです。 - -このページでは、高度な quantum 機能を実装するために使われる `0x00FF` と `0xFFFF` の間のキーコードを説明します。独自のカスタムキーコードを定義する場合は、それらもこの範囲に配置されます。 - -## QMK キーコード :id=qmk-keycodes - -| キー | エイリアス | 説明 | -|-----------------|---------|--------------------------------------------------------| -|`QK_BOOTLOADER` |`QK_BOOT`| 書き込みのために、キーボードを bootloader モードにする | -|`QK_DEBUG_TOGGLE`|`DB_TOGG`| デバッグモードの切り替え | -|`QK_CLEAR_EEPROM`|`EE_CLR` | キーボードの EEPROM (永続化メモリ) を再初期化する | diff --git a/docs/ja/ref_functions.md b/docs/ja/ref_functions.md deleted file mode 100644 index 61e3943edd2..00000000000 --- a/docs/ja/ref_functions.md +++ /dev/null @@ -1,124 +0,0 @@ -# キーボードをより良くするための便利なコア関数のリスト - - - -QMK には、信じられないほど便利な、またはあなたが望んでいた機能を少し追加する、隠された関数がたくさんあります。特定の機能に固有の関数はそれぞれの機能のページにあるため、ここには含まれていません。 - -## (OLKB) トライレイヤー :id=olkb-tri-layers - -目的に応じて、実際に使うことができる別個の関数があります。 - -### `update_tri_layer(x, y, z)` - -最初は `update_tri_layer(x, y, z)` 関数です。この関数はレイヤー `x` と `y` の両方がオンになっているかどうかを調べます。両方ともオンの場合は、レイヤー `z` がオンになります。それ以外の場合、`x` と `y` の両方がオンではない(一方のみがオン、またはどちらもオンでない)場合は、レイヤー `z` をオフにします。 - -この関数は、この機能を持つ特定のキーを作成したいが、他のレイヤーのキーコードではそうしたくない場合に便利です。 - -#### 例 - -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case 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 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; - } - return true; -} -``` - -### `update_tri_layer_state(state, x, y, z)` -もう1つの関数は `update_tri_layer_state(state, x, y, z)` です。この関数は [`layer_state_set_*` 関数](ja/custom_quantum_functions.md#layer-change-code)から呼び出されることを意図しています。これは、キーコードを使ってレイヤーを変更するたびに、これがチェックされることを意味します。したがって、`LT(layer, kc)` を使ってレイヤーを変更すると、同じレイヤーチェックが引き起こされます。 - -このメソッドの注意点は2つあります: -1. `x` および `y` レイヤーをオンにしないと、`z` レイヤーにアクセスできません。これは、レイヤー `z` のみをアクティブにしようとすると、このコードが実行され、使用前にレイヤー `z` がオフになるからです。 -2. レイヤーは最上位の番号から処理されるので、`z` は `x` や `y` よりも上位のレイヤーでなければなりません。そうでなければアクセスできない場合があります。 - -#### 例 - -```c -layer_state_t layer_state_set_user(layer_state_t state) { - return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); -} -``` - -あるいは、すぐに値を「返す」必要はありません。複数のトライレイヤーを追加、あるいは追加の効果を追加する場合に便利です。 - -```c -layer_state_t layer_state_set_user(layer_state_t state) { - state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); - state = update_tri_layer_state(state, _RAISE, _SYMB, _SPECIAL); - return state; -} -``` - -## 永続的なデフォルトレイヤーの設定 - -デフォルトレイヤーを設定して、キーボードを取り外しても保持されるようにしたいですか?そうであれば、これがそのための関数です。 - -これを使うには、`set_single_persistent_default_layer(layer)` を使います。レイヤーに名前が定義されている場合は、代わりにそれを使うことができます (_QWERTY、_DVORAK、_COLEMAK など)。 - -これは、デフォルトレイヤーを設定し、永続設定が更新され、もし [オーディオ](ja/feature_audio.md) がキーボードで有効でデフォルトレイヤーの音が設定されている場合は、曲を再生します。 - -デフォルトレイヤーの音を設定するには、以下のように `config.h` ファイルに定義する必要があります。 - -```c -#define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ - SONG(COLEMAK_SOUND), \ - SONG(DVORAK_SOUND) \ - } -``` - - -?> [quantum/audio/song_list.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/audio/song_list.h) に使用できる多くの定義済みの曲があります。 - -## キーボードのリセット - -使用できる `RESET` quantum キーコードがあります。ただし、キーを個別に押すのではなくマクロの一部としてリセットしたい場合は、そうすることができます。 - -そのためには、`reset_keyboard()` を関数またはマクロに追加すると、ブートローダがリセットされます。 - -## EEPROM (永続ストレージ)の消去 - -オーディオ、RGB アンダーグロー、バックライト、キーの動作に問題がある場合は、EEPROM (永続的な設定のストレージ)をリセットすることができます。EEPROM を強制的にリセットするには、[`EEP_RST` キーコード](ja/quantum_keycodes.md)あるいは[ブートマジック](ja/feature_bootmagic.md)機能を使います。それらのいずれも選択肢にない場合は、カスタムマクロを使って行うことができます。 - -EEPROM を消去するには、関数またはマクロから `eeconfig_init()` を実行し、ほとんどの設定をデフォルトにリセットします。 - -## タップランダムキー - -ランダムな文字をホストコンピュータに送信する場合は、`tap_random_base64()` 関数を使うことができます。これは[疑似乱数的に](https://en.wikipedia.org/wiki/Pseudorandom_number_generator)0から63の数字を選択し、その選択に基づいてキー押下を送信します。(0–25 は `A`–`Z`、26–51 は `a`–`z`、52–61 は `0`–`9`、62 は `+`、63 は `/`)。 - -?> 言うまでもないですが、これはランダムに Base64 キーあるいはパスワードを生成する暗号的に安全な方法では _ありません_。 - -## ソフトウェアタイマー - -タイマーを開始し、時間固有のイベントの値を読み取ることができます。以下は例です: - -```c -static uint16_t key_timer; -key_timer = timer_read(); - -if (timer_elapsed(key_timer) < 100) { - // 経過時間が 100ms 未満の場合に何かを行う -} else { - // 経過時間が 100ms 以上の場合に何かを行う -} -``` diff --git a/docs/ja/reference_configurator_support.md b/docs/ja/reference_configurator_support.md deleted file mode 100644 index aefd04dd8a9..00000000000 --- a/docs/ja/reference_configurator_support.md +++ /dev/null @@ -1,200 +0,0 @@ -# QMK Configurator でのキーボードのサポート - - - -このページは [QMK Configurator](https://config.qmk.fm/) でキーボードを適切にサポートする方法について説明します。 - - -## Configurator がキーボードを理解する方法 - -Configurator がキーボードをどのように理解するかを理解するには、最初にレイアウトマクロを理解する必要があります。この演習では、17キーのテンキー PCB を想定します。これを `numpad` と呼びます。 - -``` -|---------------| -|NLk| / | * | - | -|---+---+---+---| -|7 |8 |9 | + | -|---+---+---| | -|4 |5 |6 | | -|---+---+---+---| -|1 |2 |3 |Ent| -|-------+---| | -|0 | . | | -|---------------| -``` - -?> レイアウトマクロの詳細については、[QMK の理解: マトリックススキャン](ja/understanding_qmk.md?id=matrix-scanning) と [QMK の理解: マトリックスから物理レイアウトへのマップ](ja/understanding_qmk.md?id=matrix-to-physical-layout-map) を見てください。 - -Configurator の API はキーボードの `.h` ファイルを `qmk_firmware/keyboards//.h` から読み取ります。numpad の場合、このファイルは `qmk_firmware/keyboards/numpad/numpad.h` です: - -```c -#pragma once - -#define LAYOUT( \ - k00, k01, k02, k03, \ - k10, k11, k12, k13, \ - k20, k21, k22, \ - k30, k31, k32, k33, \ - k40, k42 \ - ) { \ - { k00, k01, k02, k03 }, \ - { k10, k11, k12, k13 }, \ - { k20, k21, k22, KC_NO }, \ - { k30, k31, k32, k33 }, \ - { k40, KC_NO, k42, KC_NO } \ -} -``` - -QMK は `KC_NO` を使って、スイッチマトリックス内のスイッチがない場所を指定します。デバッグが必要な場合に、このセクションを読みやすくするために、`XXX`、`___`、`____` を略記として使うこともあります。通常は `.h` ファイルの先頭近くで定義されます: - -```c -#pragma once - -#define XXX KC_NO - -#define LAYOUT( \ - k00, k01, k02, k03, \ - k10, k11, k12, k13, \ - k20, k21, k22, \ - k30, k31, k32, k33, \ - k40, k42 \ - ) { \ - { k00, k01, k02, k03 }, \ - { k10, k11, k12, k13 }, \ - { k20, k21, k22, XXX }, \ - { k30, k31, k32, k33 }, \ - { k40, XXX, k42, XXX } \ -} -``` - -!> この使用方法はキーマップマクロと異なります。キーマップマクロはほとんど常に`KC_NO`については`XXXXXXX` (7つの大文字の X) を、`KC_TRNS` については `_______` (7つのアンダースコア)を使います。 - -!> ユーザの混乱を防ぐために、`KC_NO` を使うことをお勧めします。 - -レイアウトマクロは、キーボードに17個のキーがあり、4列それぞれが5行に配置されていることを Configurator に伝えます。スイッチの位置は、0から始まる `k` という名前が付けられています。キーマップからキーコードを受け取る上部セクションと、マトリックス内の各キーの位置を指定する下部セクションとが一致する限り、名前自体は実際には問題ではありません。 - -物理的なキーボードに似た形でキーボードを表示するには、それぞれのキーの物理的な位置とサイズをスイッチマトリックスに結びつけることを Configurator に伝える JSON ファイルを作成する必要があります。 - -## JSON ファイルのビルド - -JSON ファイルをビルドする最も簡単な方法は、[Keyboard Layout Editor](https://www.keyboard-layout-editor.com/) ("KLE") でレイアウトを作成することです。この Raw Data を QMK tool に入れて、Configurator が読み出して使用する JSON ファイルに変換します。KLE は numpad レイアウトをデフォルトで開くため、Getting Started の説明を削除し、残りを使います。 - -レイアウトが望み通りのものになったら、KLE の Raw Data タブに移動し、内容をコピーします: - -``` -["Num Lock","/","*","-"], -["7\nHome","8\n↑","9\nPgUp",{h:2},"+"], -["4\n←","5","6\n→"], -["1\nEnd","2\n↓","3\nPgDn",{h:2},"Enter"], -[{w:2},"0\nIns",".\nDel"] -``` - -このデータを JSON に変換するには、[QMK KLE-JSON Converter](https://qmk.fm/converter/) に移動し、Raw Data を Input フィールド に貼り付け、Convert ボタンをクリックします。しばらくすると、JSON データが Output フィールドに表示されます。内容を新しいテキストドキュメントにコピーし、ドキュメントに `info.json` という名前を付け、`numpad.h` を含む同じフォルダに保存します。 - -`keyboard_name` オブジェクトを使ってキーボードの名前を設定します。説明のために、各キーのオブジェクトを各行に配置します。これはファイルを人間が読みやすいものにするためのもので、Configurator の機能には影響しません。 - -```json -{ - "keyboard_name": "Numpad", - "url": "", - "maintainer": "qmk", - "tags": { - "form_factor": "numpad" - }, - "layouts": { - "LAYOUT": { - "layout": [ - {"label":"Num Lock", "x":0, "y":0}, - {"label":"/", "x":1, "y":0}, - {"label":"*", "x":2, "y":0}, - {"label":"-", "x":3, "y":0}, - {"label":"7", "x":0, "y":1}, - {"label":"8", "x":1, "y":1}, - {"label":"9", "x":2, "y":1}, - {"label":"+", "x":3, "y":1, "h":2}, - {"label":"4", "x":0, "y":2}, - {"label":"5", "x":1, "y":2}, - {"label":"6", "x":2, "y":2}, - {"label":"1", "x":0, "y":3}, - {"label":"2", "x":1, "y":3}, - {"label":"3", "x":2, "y":3}, - {"label":"Enter", "x":3, "y":3, "h":2}, - {"label":"0", "x":0, "y":4, "w":2}, - {"label":".", "x":2, "y":4} - ] - } - } -} -``` - -`layouts` オブジェクトにはキーボードの物理レイアウトを表すデータが含まれます。このオブジェクトには `LAYOUT` という名前のオブジェクトがあり、このオブジェクト名は `numpad.h` のレイアウトマクロの名前と一致する必要があります。`LAYOUT` オブジェクト自体には `layout` という名前のオブジェクトがあります。このオブジェクトにはキーボードの物理キーごとに 1つの JSON オブジェクトが以下の形式で含まれています: - -``` - キーの名前。Configurator では表示されません。 - | - | キーボードの左端からのキー単位での - | | キーの X 軸の位置。 - | | - | | キーボードの上端(奥側)からのキー単位での - | | | キーの Y 軸位置。 - ↓ ↓ ↓ -{"label":"Num Lock", "x":0, "y":0}, -``` - -一部のオブジェクトには、それぞれキーの幅と高さを表す `"w"` 属性キーと `"h"` 属性キーがあります。 - -?> `info.json` ファイルの詳細については、[`info.json` 形式](ja/reference_info_json.md) を参照してください。 - - -## Configurator がキーをプログラムする方法 - -Configurator の API は、指定されたレイアウトマクロと JSON ファイルを使って、特定のキーに関連付けられた各ビジュアルオブジェクトを順番に持つキーボードのビジュアル表現を作成します: - -| レイアウトマクロのキー | 使用される JSON オブジェクト | -:---: | :---- -| k00 | {"label":"Num Lock", "x":0, "y":0} | -| k01 | {"label":"/", "x":1, "y":0} | -| k02 | {"label":"*", "x":2, "y":0} | -| k03 | {"label":"-", "x":3, "y":0} | -| k10 | {"label":"7", "x":0, "y":1} | -| k11 | {"label":"8", "x":1, "y":1} | -| k12 | {"label":"9", "x":2, "y":1} | -| k13 | {"label":"+", "x":3, "y":1, "h":2} | -| k20 | {"label":"4", "x":0, "y":2} | -| k21 | {"label":"5", "x":1, "y":2} | -| k22 | {"label":"6", "x":2, "y":2} | -| k30 | {"label":"1", "x":0, "y":3} | -| k31 | {"label":"2", "x":1, "y":3} | -| k32 | {"label":"3", "x":2, "y":3} | -| k33 | {"label":"Enter", "x":3, "y":3, "h":2} | -| k40 | {"label":"0", "x":0, "y":4, "w":2} | -| k42 | {"label":".", "x":2, "y":4} | - -ユーザが Configurator で左上のキーを選択し、Num Lock を割り当てると、Configurator は最初のキーとして `KC_NUM` を持つキーマップを作成し、同様にキーマップが作成されます。`label` キーは使われません; それらは `info.json` ファイルをデバッグする時に特定のキーを識別するためのユーザの参照のためだけのものです。 - - -## 問題と危険 - -現在のところ、Configurator はキーの回転または ISO Enter などの長方形ではないキーをサポートしません。さらに、"行"から垂直方向にずれているキー、— 顕著な例として [TKC1800](https://github.com/qmk/qmk_firmware/tree/4ac48a61a66206beaf2fdd5f2939d8bbedd0004c/keyboards/tkc1800/) のような1800レイアウト上の矢印キー — は、 `info.json` ファイルの提供者によって調整されていない場合は、KLE-to-JSON コンバータを混乱させます。 - -### 回避策 - -#### 長方形ではないキー - -ISO Enter キーについては、QMK custom は幅 1.25u、高さ 2u の長方形のキーとして表示し、右端が英数字キーブロックの右端に揃うように配置されます。 - -![](https://i.imgur.com/JKngtTw.png) -*QMK Configurator によって描画される標準 ISO レイアウトの60%キーボード。* - -#### 垂直方向にずれたキー - -垂直方向にずれたキーについては、ずれていないかのように KLE で配置し、変換された JSON ファイルで必要に応じて Y 値を編集します。 - -![](https://i.imgur.com/fmDvDzR.png) -*矢印キーに適用される垂直方向のずれのない、Keyboard Layout Editor で描画された1800レイアウトのキーボード。* - -![](https://i.imgur.com/8beYMBR.png) -*キーボードの JSON ファイルで矢印キーを垂直方向にずらすために必要な変更を示す、Unix の diff ファイル。* diff --git a/docs/ja/reference_glossary.md b/docs/ja/reference_glossary.md deleted file mode 100644 index 06c71961238..00000000000 --- a/docs/ja/reference_glossary.md +++ /dev/null @@ -1,173 +0,0 @@ -# QMK 用語集 - - - -## ARM -Atmel、Cypress、Kinetis、NXP、ST、TI など多くの企業が生産する 32 ビット MCU のライン。 - -## AVR -[Atmel](https://www.microchip.com/) が生産する 8 ビット MCU のライン。AVR は TMK がサポートしていた元のプラットフォームでした。 - -## AZERTY -標準的な Français (フランス) キーボードレイアウト。キーボードの最初の6つのキーから命名されました。 - -## バックライト -キーボードのライトの総称。バックライトが一般的ですが、それだけではなく、キーキャップあるいはスイッチを通して光る LED の配列。 - -## Bluetooth -短距離のピアツーピア無線プロトコル。キーボード用のもっとも一般的なワイヤレスプロトコル。 - -## ブートローダ -MCU の保護領域に書き込まれる特別なプログラムで、MCU が独自のファームウェアを通常は USB 経由でアップグレードできるようにします。 - -## ブートマジック -よくあるキーの交換あるいは無効化など、様々なキーボードの挙動の変更をその場で実行できる機能。 - -## C -システムコードに適した低レベルプログラミング言語。QMK のほとんどのコードは C で書かれています。 - -## Colemak -人気が出始めている代替キーボードレイアウト。 - -## コンパイル -人間が読めるコードを MCU が実行できるマシンコードに変換するプロセス。 - -## Dvorak -1930年代に Dr. August Dvorak によって開発された代替キーボードレイアウト。Dvorak Simplified Keyboard の短縮形。 - -## 動的マクロ -キーボードに記録されたマクロで、キーボードのプラグを抜くか、コンピュータを再起動すると失われます。 - -* [動的マクロドキュメント](ja/feature_dynamic_macros.md) - -## Eclipse -多くの C 開発者に人気のある IDE。 - -* [Eclipse セットアップ手順](ja/other_eclipse.md) - -## ファームウェア -MCU を制御するソフトウェア - -## git -コマンドラインで使用されるバージョン管理ソフトウェア - -## GitHub -QMK プロジェクトのほとんどをホストする Web サイト。git、課題管理、および QMK の実行に役立つその他の機能を統合して提供します。 - -## ISP -インシステムプログラミング。外部ハードウェアと JTAG ピンを使って AVR チップをプログラミングする方法。 - -## hid_listen -キーボードからデバッグメッセージを受信するためのインタフェース。[QMK Flasher](https://github.com/qmk/qmk_flasher) あるいは [PJRC の hid_listen](https://www.pjrc.com/teensy/hid_listen.html) を使ってこれらのメッセージを見ることができます。 - -## キーコード -特定のキーを表す2バイトの数値。`0x00`-`0xFF` は[基本キーコード](ja/keycodes_basic.md)に使われ、`0x100`-`0xFFFF` は [Quantum キーコード](ja/quantum_keycodes.md) に使われます。 - -## キーダウン -キーが押された時に発生し、キーが放される前に完了するイベント。 - -## キーアップ -キーが放された時に発生するイベント。 - -## キーマップ -物理的なキーボードレイアウトにマップされたキーコードの配列。キーの押下およびリリース時に処理されます。 - -## レイヤー -1つのキーが複数の目的を果たすために使われる抽象化。最上位のアクティブなレイヤーが優先されます。 - -## リーダーキー -リーダーキーに続けて1, 2 あるいは3つのキーをタップすることで、キーの押下あるいは他の quantum 機能をアクティブにする機能。 - -* [リーダーキードキュメント](ja/feature_leader_key.md) - -## LED -発光ダイオード。キーボードの表示に使われる最も一般的なデバイス。 - -## Make -全てのソースファイルをコンパイルするために使われるソフトウェアパッケージ。キーボードファームウェアをコンパイルするために、様々なオプションを指定して `make` を実行します。 - -## マトリックス -MCU がより少ないピン数でキー押下を検出できるようにする列と行の配線パターン。マトリックスには多くの場合、NKRO を可能にするためのダイオードが組み込まれています。 - -## マクロ -単一のキーのみを押した後で、複数のキー押下イベント (HID レポート) を送信できる機能。 - -* [マクロドキュメント](ja/feature_macros.md) - -## MCU -マイクロコントロールユニット。キーボードを動かすプロセッサ。 - -## モディファイア -別のキーを入力する間押したままにして、そのキーのアクションを変更するキー。例として、Ctrl、Alt および Shift があります。 -(訳注:モディファイヤ、モディファイヤキー、修飾キーなど、訳語が統一されていませんが同じものです) - -## マウスキー -キーボードからマウスカーソルを制御し、クリックできる機能。 - -* [マウスキードキュメント](ja/feature_mouse_keys.md) - -## N キーロールオーバー (NKRO) -一度に任意の数のキーの押下を送信できるキーボードに当てはまる用語。 - -## ワンショットモディファイア -別のキーが放されるまで押されているかのように機能するモディファイア。キーを押している間に mod を押し続けるのではなく、mod を押してからキーを押すことができます。スティッキーキーまたはデッドキーとも呼びます。 - -## ProMicro -低コストの AVR 開発ボード。このデバイスのクローンは ebay で非常に安価(5ドル未満)に見つかることがありますが、多くの場合 pro micro の書き込みに苦労します。 - -## プルリクエスト -QMK にコードを送信するリクエスト。全てのユーザが個人のキーマップのプルリクエストを送信することを推奨します。 - -## QWERTY -標準の英語キーボードレイアウト。多くの場合、他の言語の標準レイアウトへのショートカット。キーボードの最初の6文字から命名されました。 - -## QWERTZ -標準的な Deutsche (ドイツ語) キーボードレイアウト。キーボードの最初の6文字から命名されました。 - -## ロールオーバー -キーが既に押されている間にキーを押すことを指す用語。似たものに 2KRO、6KRO、NKRO が含まれます。 - -## スキャンコード -単一のキーを表す USB 経由の HID レポートの一部として送信される1バイトの数値。これらの値は、[USB-IF](https://www.usb.org/) が発行する [HID Usage Tables](https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf) に記載されています。 - -## スペースカデットシフト -左または右 shift を1回以上タップすることで、様々なタイプの括弧を入力できる特別な shift キーのセット。 - -* [スペースカデットシフトドキュメント](ja/feature_space_cadet_shift.md) - -## タップ -キーを押して放す。状況によってはキーダウンイベントとキーアップイベントを区別する必要がありますが、タップは常に両方を一度に指します。 - -## タップダンス -押す回数に基づいて、同じキーに複数のキーコードを割り当てることができる機能。 - -* [タップダンスドキュメント](ja/feature_tap_dance.md) - -## Teensy -手配線での組み立てによく用いられる低コストの AVR 開発ボード。halfkay ブートローダによって書き込みが非常に簡単になるために、数ドル高いにもかかわらず teensy がしばしば選択されます。 - -## アンダーライト -キーボードの下側を照らす LED の総称。これらの LED は通常 PCB の底面からキーボードが置かれている表面に向けて照らします。 - -## ユニコード -大規模なコンピュータの世界では、ユニコードは任意の言語で文字を表現するためのエンコード方式のセットです。QMK に関しては、様々な OS スキームを使ってスキャンコードの代わりにユニコードコードポイントを送信することを意味します。 - -* [ユニコードドキュメント](ja/feature_unicode.md) - -## 単体テスト -QMK に対して自動テストを実行するためのフレームワーク。単体テストは、変更が何も壊さないことを確信するのに役立ちます。 - -* [単体テストドキュメント](ja/unit_testing.md) - -## USB -ユニバーサルシリアルバス。キーボード用の最も一般的な有線インタフェース。 - -## USB ホスト (あるいは単にホスト) -USB ホストは、あなたのコンピュータ、またはキーボードが差し込まれているデバイスのことです。 - -# 探している用語が見つかりませんでしたか? - -質問についての [issue を開いて](https://github.com/qmk/qmk_firmware/issues) 、質問した用語についてここに追加することができます。さらに良いのは、定義についてのプルリクエストを開くことです。:) diff --git a/docs/ja/reference_info_json.md b/docs/ja/reference_info_json.md deleted file mode 100644 index e6a71adc9df..00000000000 --- a/docs/ja/reference_info_json.md +++ /dev/null @@ -1,68 +0,0 @@ -# `info.json` - - - -このファイルは [QMK API](https://github.com/qmk/qmk_api) によって使われます。このファイルは [QMK Configurator](https://config.qmk.fm/) がキーボードの画像を表示するために必要な情報を含んでいます。ここにメタデータを設定することもできます。 - -このメタデータを指定するために、`qmk_firmware/keyboards/` の下の全てのレベルで `info.json` を作成することができます。これらのファイルは結合され、より具体的なファイルがそうではないファイルのキーを上書きします。つまり、メタデータ情報を複製する必要はありません。例えば、`qmk_firmware/keyboards/clueboard/info.json` は `manufacturer` および `maintainer` を指定し、`qmk_firmware/keyboards/clueboard/66/info.json` は Clueboard 66% についてのより具体的な情報を指定します。 - -## `info.json` の形式 - -`info.json` ファイルは設定可能な以下のキーを持つ JSON 形式の辞書です。全てを設定する必要はなく、キーボードに適用するキーだけを設定します。 - -* `keyboard_name` - * キーボードを説明する自由形式のテキスト文字列。 - * 例: `Clueboard 66%` -* `url` - * キーボードの製品ページ、[QMK.fm/keyboards](https://qmk.fm/keyboards) のページ、あるいはキーボードに関する情報を説明する他のページの URL。 -* `maintainer` - * メンテナの GitHub のユーザ名、あるいはコミュニティが管理するキーボードの場合は `qmk` -* `layouts` - * 物理的なレイアウト表現。詳細は以下のセクションを見てください。 - -### レイアウトの形式 - -`info.json` ファイル内の辞書の `layouts` 部分は、幾つかの入れ子になった辞書を含みます。外側のレイヤーは QMK レイアウトマクロで構成されます。例えば、`LAYOUT_ansi` あるいは `LAYOUT_iso`。 - -* `layout` - * 物理レイアウトを説明するキー辞書のリスト。詳細は次のセクションを見てください。 - -### キー辞書形式 - -レイアウトの各キー辞書は、キーの物理プロパティを記述します。 の Raw Code に精通している場合、多くの概念が同じであることが分かります。可能な限り同じキー名とレイアウトの選択を再利用しますが、keyboard-layout-editor とは異なって各キーはステートレスで、前のキーからプロパティを継承しません。 - -全てのキーの位置と回転は、キーボードの左上と、各キーの左上を基準にして指定されます。 - -* `x` - * **必須**: 水平軸でのキーの絶対位置(キー単位)。 -* `y` - * **必須**: 垂直軸でのキーの絶対位置(キー単位)。 -* `w` - * キー単位でのキーの幅。`ks` が指定された場合は無視されます。デフォルト: `1` -* `h` - * キー単位でのキーの高さ。`ks` が指定された場合は無視されます。デフォルト: `1` -* `r` - * キーを回転させる時計回りの角度。 -* `rx` - * キーを回転させる点の水平軸における絶対位置。デフォルト: `x` -* `ry` - * キーを回転させる点の垂直軸における絶対位置。デフォルト: `y` -* `ks` - * キー形状: キー単位で頂点を列挙することでポリゴンを定義します。 - * **重要**: これらはキーの左上からの相対位置で、絶対位置ではありません。 - * ISO Enter の例: `[ [0,0], [1.5,0], [1.5,2], [0.25,2], [0.25,1], [0,1], [0,0] ]` -* `label` - * マトリックス内のこの位置につける名前。 - * これは通常 PCB 上でこの位置にシルクスクリーン印刷されるものと同じ名前でなければなりません。 - -## メタデータはどのように公開されますか? - -このメタデータは主に2つの方法で使われます: - -* Web ベースの configurator が動的に UI を生成できるようにする。 -* 新しい `make keyboard:keymap:qmk` ターゲットをサポートする。これは、このメタデータをファームウェアにバンドルして QMK Toolbox をよりスマートにします。 - -Configurator の作成者は、JSON API の使用に関する詳細について、[QMK Compiler](https://docs.api.qmk.fm/using-the-api) ドキュメントを参照することができます。 diff --git a/docs/ja/reference_keymap_extras.md b/docs/ja/reference_keymap_extras.md deleted file mode 100644 index fb9d167ae03..00000000000 --- a/docs/ja/reference_keymap_extras.md +++ /dev/null @@ -1,89 +0,0 @@ -# 言語固有のキーコード - - - -キーボードは多くの言語をサポートすることができます。ただし、それらはキーを押したことで生成される実際の文字を送信しません - 代わりに数字のコードを送信します。USB HID の仕様ではそれらは "usages" と呼ばれますが、キーボードの文脈では「スキャンコード」あるいは「キーコード」と呼ばれることが多いです。 -HID Keyboard/Keypad usage ページでは 256 未満の usage が定義されており、それらの一部は現在のオペレーティングシステムでは機能しません。では、この言語のサポートはどのようにして実現されるのでしょうか? - -簡単に言うと、オペレーティングシステムはユーザが設定したキーボードレイアウトに基づいて受け取った usage を適切な文字にマップします。例えば、スウェーデン人がキーボードの `å` という文字が刻印されたキーを押すと、キーボードは *実際には* `[` のキーコードを送信します。 - -明らかにこれは混乱する可能性があるため、QMK は多くのキーボードレイアウトのために言語固有のキーコードのエイリアスを提供します。これらはそれだけでは何もしません - さらに OS の設定で対応するキーボードレイアウトを設定する必要があります。それらをキーマップのキーキャップラベルと考えてください。 - -これらを使うには、`keymap.c` で対応する [ヘッダファイル](https://github.com/qmk/qmk_firmware/tree/master/quantum/keymap_extras) を `#include` し、それらで定義されているキーコードを `KC_` プリフィクスの代わりに追加します: - -| レイアウト | ヘッダファイル | -|-----------------------------|----------------------------------| -| Canadian Multilingual (CSA) | `keymap_canadian_multilingual.h` | -| Croatian | `keymap_croatian.h` | -| Czech | `keymap_czech.h` | -| Danish | `keymap_danish.h` | -| Dutch (Belgium) | `keymap_belgian.h` | -| English (Ireland) | `keymap_irish.h` | -| English (UK) | `keymap_uk.h` | -| English (US International) | `keymap_us_international.h` | -| Estonian | `keymap_estonian.h` | -| Finnish | `keymap_finnish.h` | -| French | `keymap_french.h` | -| French (AFNOR) | `keymap_french_afnor.h` | -| French (BÉPO) | `keymap_bepo.h` | -| French (Belgium) | `keymap_belgian.h` | -| French (Switzerland) | `keymap_fr_ch.h` | -| French (macOS, ISO) | `keymap_french_osx.h` | -| German | `keymap_german.h` | -| German (Switzerland) | `keymap_german_ch.h` | -| German (macOS) | `keymap_german_osx.h` | -| German (Neo2)* | `keymap_neo2.h` | -| Greek* | `keymap_greek.h` | -| Hebrew* | `keymap_hebrew.h` | -| Hungarian | `keymap_hungarian.h` | -| Icelandic | `keymap_icelandic.h` | -| Italian | `keymap_italian.h` | -| Italian (macOS, ANSI) | `keymap_italian_osx_ansi.h` | -| Italian (macOS, ISO) | `keymap_italian_osx_iso.h` | -| Japanese | `keymap_jp.h` | -| Korean | `keymap_korean.h` | -| Latvian | `keymap_latvian.h` | -| Lithuanian (ĄŽERTY) | `keymap_lithuanian_azerty.h` | -| Lithuanian (QWERTY) | `keymap_lithuanian_qwerty.h` | -| Norwegian | `keymap_norwegian.h` | -| Polish | `keymap_polish.h` | -| Portuguese | `keymap_portuguese.h` | -| Portuguese (macOS, ISO) | `keymap_portuguese_osx_iso.h` | -| Portuguese (Brazil) | `keymap_br_abnt2.h` | -| Romanian | `keymap_romanian.h` | -| Russian* | `keymap_russian.h` | -| Serbian* | `keymap_serbian.h` | -| Serbian (Latin) | `keymap_serbian_latin.h` | -| Slovak | `keymap_slovak.h` | -| Slovenian | `keymap_slovenian.h` | -| Spanish | `keymap_spanish.h` | -| Spanish (Dvorak) | `keymap_spanish_dvorak.h` | -| Swedish | `keymap_swedish.h` | -| Turkish (F) | `keymap_turkish_f.h` | -| Turkish (Q) | `keymap_turkish_q.h` | - -言語固有でないものもありますが、QWERTY レイアウトを使っていない場合に役立ちます: - -| レイアウト | ヘッダファイル | -|---------------------|--------------------------| -| Colemak | `keymap_colemak.h` | -| Dvorak | `keymap_dvorak.h` | -| Dvorak (French) | `keymap_dvorak_fr.h` | -| Dvorak (Programmer) | `keymap_dvp.h` | -| Norman | `keymap_norman.h` | -| Plover* | `keymap_plover.h` | -| Plover (Dvorak)* | `keymap_plover_dvorak.h` | -| Steno* | `keymap_steno.h` | -| Workman | `keymap_workman.h` | -| Workman (ZXCVM) | `keymap_workman_zxcvm.h` | - -## Sendstring サポート - -デフォルトでは、`SEND_STRING()` は US ANSI キーボードレイアウトが設定されたと見なします。別のレイアウトを使っている場合は、キーマップで(上記のように)`#include "sendstring_*.h"` して、ASCII 文字をキーコードにマッピングするために使われるルックアップテーブルを上書きすることができます。 - -ここで注意すべき重要な点は、`SEND_STRING()` は [ASCII 文字](https://en.wikipedia.org/wiki/ASCII#Character_set) でのみ機能するということです。これは、ユニコード文字を含む文字列を渡すことができないことを意味します - 残念ながら、これには希望のレイアウトに存在する可能性のあるアクセント付き文字が含まれています。 -多くのレイアウトでは、Grave または Tilde などの特定の文字を[デッドキー](https://en.wikipedia.org/wiki/Dead_key)としてのみ使えるようにしています。そのため、デッドキーが次の文字と潜在的に結合されることを防ぐためには、送信したい文字列の中のデッドキーのすぐ後にスペースを追加する必要があります。 -ラテン語由来のアルファベットを使わない(例えば、ギリシャ語やロシア語のような)他のレイアウトには、Sendstring ヘッダーがありません。従って ASCII 文字セットのほとんどを入力する方法がありません。これらは上記で `*` でマークされています。 diff --git a/docs/ja/serial_driver.md b/docs/ja/serial_driver.md deleted file mode 100644 index 72071f4f7ed..00000000000 --- a/docs/ja/serial_driver.md +++ /dev/null @@ -1,75 +0,0 @@ -# 'シリアル' ドライバ - - - -このドライバは[分割キーボード](ja/feature_split_keyboard.md) 機能に使います。 - -?> この文章でのシリアルは、UART/USART/RS485/RS232 規格の実装ではなく、**一度に1ビットの情報を送信するもの**として読まれるべきです。 - -このカテゴリの全てのドライバには以下の特徴があります: -* 1本の線上でデータと信号を提供 -* シングルマスタ、シングルスレーブに限定 - -## サポートされるドライバの種類 - -| | AVR | ARM | -|-------------------|--------------------|--------------------| -| bit bang | :heavy_check_mark: | :heavy_check_mark: | -| USART Half-duplex | | :heavy_check_mark: | - -## ドライバ設定 - -### Bitbang -デフォルトのドライバ。設定がない場合はこのドライバが想定されます。設定するには、以下を rules.mk に追加します: - -```make -SERIAL_DRIVER = bitbang -``` - -config.h を介してドライバを設定します: -```c -#define SOFT_SERIAL_PIN D0 // または D1, D2, D3, E6 -#define SELECT_SOFT_SERIAL_SPEED 1 // または 0, 2, 3, 4, 5 - // 0: 約 189kbps (実験目的のみ) - // 1: 約 137kbps (デフォルト) - // 2: 約 75kbps - // 3: 約 39kbps - // 4: 約 26kbps - // 5: 約 20kbps -``` - -#### ARM - -!> bitbang ドライバは bitbang WS2812 ドライバと接続の問題があります - -上記の一般的なオプションに加えて、halconf.h で `PAL_USE_CALLBACKS` 機能もオンにする必要があります。 - -### USART Half-duplex -通信が USART ハードウェアデバイスに送信される STM32 ボードが対象です。これにより高速で正確なタイミングを提供できることが利点です。このドライバの `SOFT_SERIAL_PIN` は、設定された USART TX ピンです。**TX ピンに適切なプルアップ抵抗が必要です**。設定するには、以下を rules.mk に追加します: - -```make -SERIAL_DRIVER = usart -``` - -config.h を介してハードウェアを設定します: -```c -#define SOFT_SERIAL_PIN B6 // USART TX ピン -#define SELECT_SOFT_SERIAL_SPEED 1 // または 0, 2, 3, 4, 5 - // 0: 約 460800 ボー - // 1: 約 230400 ボー (デフォルト) - // 2: 約 115200 ボー - // 3: 約 57600 ボー - // 4: 約 38400 ボー - // 5: 約 19200 ボー -#define SERIAL_USART_DRIVER SD1 // TX ピンの USART ドライバ。デフォルトは SD1 -#define SERIAL_USART_TX_PAL_MODE 7 // 「代替機能」 ピン。MCU の適切な値については、それぞれのデータシートを見てください。デフォルトは 7 -``` - -また、ChibiOS `SERIAL` 機能を有効にする必要があります: -* キーボードの halconf.h: `#define HAL_USE_SERIAL TRUE` -* キーボードの mcuconf.h: `#define STM32_SERIAL_USE_USARTn TRUE` (ここで、'n' は MCU で選択した USART のペリフェラル番号と一致) - -必要な構成は、`UART` 周辺機器ではなく、`SERIAL` 周辺機器であることに注意してください。 diff --git a/docs/ja/support.md b/docs/ja/support.md deleted file mode 100644 index 01c2d41d19c..00000000000 --- a/docs/ja/support.md +++ /dev/null @@ -1,22 +0,0 @@ -# 助けを得る - - - -QMK に関して助けを得るための多くのリソースがあります。 - -コミュニティスペースに参加する前に[行動規範](https://qmk.fm/coc/)を読んでください。 - -## リアルタイムチャット - -何かについて助けが必要な場合は、迅速なサポートを受けるための最良の場所は、[Discord Server](https://discord.gg/Uq7gcHh) です。通常は誰かがオンラインで、非常に助けになる多くの人がいます。 - -## OLKB Subreddit - -公式の QMK フォーラムは [reddit.com](https://reddit.com) の [/r/olkb](https://reddit.com/r/olkb) です。 - -## GitHub Issues - -[GitHub で issue](https://github.com/qmk/qmk_firmware/issues) を開くことができます。issue は長期的な議論あるいはデバッグを必要とする場合は、特に便利です。 diff --git a/docs/ja/syllabus.md b/docs/ja/syllabus.md deleted file mode 100644 index 9209cb49e08..00000000000 --- a/docs/ja/syllabus.md +++ /dev/null @@ -1,76 +0,0 @@ -# QMK シラバス - - - -このページは最初に基本を紹介し、そして、QMK に習熟するために必要な全ての概念を理解するように導くことで、QMK の知識を構築するのに役立ちます。 - -# 初級トピック - -他に何も読んでいない場合は、このセクションのドキュメントを読んでください。[QMK 初心者ガイド](ja/newbs.md)を読み終わると、基本的なキーマップを作成し、それをコンパイルし、キーボードに書き込みできるようになっているはずです。残りのドキュメントはこれらの基本的な知識を具体的に肉付けします。 - -* **QMK Tools の使い方を学ぶ** - * [QMK 初心者ガイド](ja/newbs.md) - * [CLI](ja/cli.md) - * [Git](ja/newbs_git_best_practices.md) -* **キーマップについて学ぶ** - * [レイヤー](ja/feature_layers.md) - * [キーコード](ja/keycodes.md) - * 使用できるキーコードの完全なリスト。中級または上級トピックにある知識が必要な場合もあることに注意してください。 -* **IDE の設定** - オプション - * [Eclipse](ja/other_eclipse.md) - * [VS Code](ja/other_vscode.md) - -# 中級トピック - -これらのトピックでは、QMK がサポートする幾つかの機能について掘り下げます。これらのドキュメントを全て読む必要はありませんが、これらの一部をスキップすると、上級トピックのセクションの一部のドキュメントが意味をなさなくなるかもしれません。 - -* **機能の設定方法を学ぶ** - - * [オーディオ](ja/feature_audio.md) - * 電飾 - * [バックライト](ja/feature_backlight.md) - * [LED マトリックス](ja/feature_led_matrix.md) - * [RGB ライト](ja/feature_rgblight.md) - * [RGB マトリックス](ja/feature_rgb_matrix.md) - * [タップホールド設定](ja/tap_hold.md) -* **キーマップについてさらに学ぶ** - * [キーマップ](ja/keymap.md) - * [カスタム関数とキーコード](ja/custom_quantum_functions.md) - * マクロ - * [動的マクロ](ja/feature_dynamic_macros.md) - * [コンパイル済みのマクロ](ja/feature_macros.md) - * [タップダンス](ja/feature_tap_dance.md) - * [コンボ](ja/feature_combo.md) - * [ユーザスペース](ja/feature_userspace.md) - * [キーオーバーライド](ja/feature_key_overrides.md) - -# 上級トピック - -以下の全ては多くの基礎知識を必要とします。高度な機能を使ってキーマップを作成できることに加えて、`config.h` と `rules.mk` の両方を使ってキーボードのオプションを設定することに慣れている必要があります。 - -* **QMK 内のキーボードの保守** - * [キーボードの手配線](ja/hand_wire.md) - * [キーボードガイドライン](ja/hardware_keyboard_guidelines.md) - * [info.json リファレンス](ja/reference_info_json.md) - * [デバウンス API](ja/feature_debounce_type.md) -* **高度な機能** - * [ユニコード](ja/feature_unicode.md) - * [API](ja/api_overview.md) - * [ブートマジックライト](ja/feature_bootmagic.md) -* **ハードウェア** - * [キーボードがどのように動作するか](ja/how_keyboards_work.md) - * [キーボードマトリックスの仕組み](ja/how_a_matrix_works.md) - * [分割キーボード](ja/feature_split_keyboard.md) - * [速記](ja/feature_stenography.md) - * [ポインティングデバイス](ja/feature_pointing_device.md) -* **コア開発** - * [コーディング規約](ja/coding_conventions_c.md) - * [互換性のあるマイクロコントローラ](ja/compatible_microcontrollers.md) - * [カスタムマトリックス](ja/custom_matrix.md) - * [QMK を理解する](ja/understanding_qmk.md) -* **CLI 開発** - * [コーディング規約](ja/coding_conventions_python.md) - * [CLI 開発の概要](ja/cli_development.md) diff --git a/docs/ja/tap_hold.md b/docs/ja/tap_hold.md deleted file mode 100644 index c9d94d07ce2..00000000000 --- a/docs/ja/tap_hold.md +++ /dev/null @@ -1,167 +0,0 @@ -# タップホールド設定オプション - - - -タップホールドオプションは素晴らしいものですが、問題が無いわけではありません。デフォルト設定を適切なものにしようとしましたが、一部の人にとってまだ問題を引き起こすかもしれません。 - -次のオプションによりタップホールドキーの挙動を変更することができます。 - -## タッピング時間 - -以下の機能の全ての核心は、タッピング時間の設定です。これにより、何をタップとし、何をホールドとするかが決まります。これが自然に感じられるぴったりのタイミングは、キーボードごと、スイッチごと、あるいはキーごとに異ることもありえます。 - -`config.h` に以下の設定を追加することで、この時間を全体的に設定することができます: - -```c -#define TAPPING_TERM 200 -``` - -この設定はミリ秒で定義され、デフォルトは 200ms です。これは大多数の人にとっての適切な平均値です。 - -この機能をより細かく制御するために、以下を `config.h` に追加することができます: -```c -#define TAPPING_TERM_PER_KEY -``` - -そして、以下の関数をキーマップに追加します: - -```c -uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case SFT_T(KC_SPC): - return TAPPING_TERM + 1250; - case LT(1, KC_GRV): - return 130; - default: - return TAPPING_TERM; - } -} -``` - - -## 許容ホールド - -[PR#1359](https://github.com/qmk/qmk_firmware/pull/1359/) 以降、新しい `config.h` オプションがあります: - -```c -#define PERMISSIVE_HOLD -``` - -これは高速なタイピストや高い `TAPPING_TERM` 設定に対して、タップとホールドキー(モッドタップのような)の動作を向上させます。 - -モッドタップキーを押し、他のキーをタップ(押して放す)して、モッドタップキーを放すという動作の全てをタッピング時間内に行うと、両方のキーのタッピング機能が出力されます。 - -例えば: - -- `SFT_T(KC_A)` を押す -- `KC_X` を押す -- `KC_X` を放す -- `SFT_T(KC_A)` を放す - -通常、これら全てを `TAPPING_TERM` (デフォルト: 200ms) 内で行うと、ファームウェアとホストシステムによって `ax` として登録されます。許容ホールドを有効にすると、別のキーがタップされた場合にモッドタップキーを修飾キーと見なすように処理を変更し、 `X` (`SHIFT`+`x`) と登録されます。 - -この機能をより細かく制御するために、以下を `config.h` に追加することができます: - -```c -#define PERMISSIVE_HOLD_PER_KEY -``` - -そして、以下の関数をキーマップに追加します: - -```c -bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case LT(1, KC_BSPC): - return true; - default: - return false; - } -} -``` - -## タッピング強制ホールド - -`タッピング強制ホールド` を有効にするには、以下を `config.h` に追加します: - -```c -#define TAPPING_FORCE_HOLD -``` - -タップの後でユーザがキーをホールドすると、ホールド機能がアクティブになるのではなく、デフォルトでタッピング機能が繰り返されます。これにより、デュアルロールキーのタッピング機能を自動繰り返しする機能を維持することができます。`TAPPING_FORCE_HOLD` は、デュアルロールキーをタップした後ホールドした場合、ユーザがホールド機能をアクティブにする機能を削除します。 - -例: - -- `SFT_T(KC_A)` を押す -- `SFT_T(KC_A)` を放す -- `SFT_T(KC_A)` を押す -- タッピング時間が終了するまで待ちます... -- `SFT_T(KC_A)` を放す - -デフォルトの設定では、最初に放したときに `a` が送信され、2回目の押下で `a` が送信され、コンピュータに自動リピート機能を作動させることができます。 - -`TAPPING_FORCE_HOLD` を使うと、2回目の押下は Shift として解釈され、それをタップして使った後ですぐに修飾キーとして使うことができます。 - -!> `TAPPING_FORCE_HOLD` はタッピングトグル(`TT` レイヤーキーコード、ワンショットタップトグルなど)を使うものをすべて破壊します。 - -この機能をより細かく制御するために、以下を `config.h` に追加することができます: - -```c -#define TAPPING_FORCE_HOLD_PER_KEY -``` - -そして、以下の関数をキーマップに追加します: - -```c -bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case LT(1, KC_BSPC): - return true; - default: - return false; - } -} -``` - -## レトロタッピング - -`レトロタッピング`を有効にするには、以下を `config.h` に追加してください: - -```c -#define RETRO_TAPPING -``` - -他のキーを押さずにデュアルファンクションキーを押して放しても何も起こりません。レトロタッピングを有効にすると、他のキーを押さずにキーを放すと、元のキーコードがタッピング時間外であっても送信されます。 - -例えば、他のキーを押すことなく `LT(2, KC_SPACE)` を押したり放したりしても何も起こりません。これを有効にすると、代わりに `KC_SPACE` を送信します。 - -この機能をより細かく制御するために、以下を `config.h` に追加することができます: - -```c -#define RETRO_TAPPING_PER_KEY -``` - -そして、以下の関数をキーマップに追加します: - -```c -bool get_retro_tapping(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case LT(2, KC_SPACE): - return true; - default: - return false; - } -} -``` - -## キー別の関数にキーレコードを含めるのはなぜですか? - -「キー別」の関数全てにキーレコードを含んでいることに気付いたかもしれません。そしてなぜそうしたのか不思議に思っているかもしれません。 - -まぁ、それは単純に本当にカスタマイズのためです。ただし、具体的には、それはキーボードの配線方法によって異なります。例えば、各行が実際にキーボードのマトリックスの1行を使っている場合、キーコード全体をチェックする代わりに、`if (record->event.key.row == 3)` を使うほうが簡単かもしれません。これは、ホームキー行でタップホールドタイプのキーを使っている人にとって特に便利です。そのため、通常のタイピングを妨げないように微調整することができるのではないでしょうか。 - -## `*_kb` や `*_user` 関数が無いのはなぜですか? - -QMK にある他の多くの関数とは異なり、quantum あるいはキーボードレベルの関数を持つ必要はありません (または理由さえありません)。ここではユーザレベルの関数だけが有用なため、そのようにマークする必要はありません。 diff --git a/docs/ja/translating.md b/docs/ja/translating.md deleted file mode 100644 index f7a273308a6..00000000000 --- a/docs/ja/translating.md +++ /dev/null @@ -1,60 +0,0 @@ -# QMK ドキュメントを翻訳する - - - -ルートフォルダ (`docs/`) にある全てのファイルは英語でなければなりません - 他の全ての言語は、ISO 639-1 言語コードと、それに続く`-`と関連する国コードのサブフォルダにある必要があります。[一般的なもののリストはここで見つかります](https://www.andiamo.co.uk/resources/iso-language-codes/)。このフォルダが存在しない場合、作成することができます。翻訳された各ファイルは英語バージョンと同じ名前でなければなりません。そうすることで、正常にフォールバックできます。 - -`_summary.md` ファイルはこのフォルダの中に存在し、各ファイルへのリンクのリスト、翻訳された名前、言語フォルダに続くリンクが含まれている必要があります。 - -```markdown - * [QMK简介](zh-cn/getting_started_introduction.md) -``` - -他の docs ページへの全てのリンクにも、言語のフォルダが前に付いている必要があります。もしリンクがページの特定の部分(例えば、特定の見出し)への場合、以下のように見出しに英語の ID を使う必要があります: - -```markdown -[建立你的环境](zh-cn/newbs-getting-started.md#set-up-your-environment) - -## 建立你的环境 :id=set-up-your-environment -``` - -新しい言語の翻訳が完了したら、以下のファイルも修正する必要があります: - -* [`docs/_langs.md`](https://github.com/qmk/qmk_firmware/blob/master/docs/_langs.md) -各行は、[GitHub emoji shortcode](https://github.com/ikatyang/emoji-cheat-sheet/blob/master/README.md#country-flag) の形式で国フラグと、それに続く言語で表される名前を含む必要があります。 - - ```markdown - - [:cn: 中文](/zh-cn/) - ``` - -* [`docs/index.html`](https://github.com/qmk/qmk_firmware/blob/master/docs/index.html) -`placeholder` と `noData` の両方のオブジェクトは、文字列で言語フォルダの辞書エントリが必要です: - - ```js - '/zh-cn/': '没有结果!', - ``` - - サイドバーの「QMK ファームウェア」の見出しリンクを設定するために、`nameLink` オブジェクトも以下のように追加される必要があります: - - ```js - '/zh-cn/': '/#/zh-cn/', - ``` - - また、`fallbackLanguages` リストに言語フォルダを追加して、404 ではなく英語に適切にフォールバックするようにしてください: - - ```js - fallbackLanguages: [ - // ... - 'zh-cn', - // ... - ], - ``` - -## 翻訳のプレビュー - -ドキュメントのローカルインスタンスをセットアップする方法については、[ドキュメントのプレビュー](ja/contributing.md#previewing-the-documentation)を見てください - 右上の "Translations" メニューから新しい言語を選択することができるはずです。 - -作業に満足したら、遠慮なくプルリクエストを開いてください! diff --git a/docs/ja/understanding_qmk.md b/docs/ja/understanding_qmk.md deleted file mode 100644 index 0e8c99e6929..00000000000 --- a/docs/ja/understanding_qmk.md +++ /dev/null @@ -1,190 +0,0 @@ -# QMK のコードの理解 - - - -このドキュメントでは、QMK ファームウェアがどのように機能するかを非常に高いレベルから説明しようとしています。基本的なプログラミングの概念を理解していることを前提としていますが、(実例を示す必要がある場合を除き) C に精通していることを前提にはしていません。以下のドキュメントの基本的な知識があることを前提としています。 - -* [入門](ja/getting_started_introduction.md) -* [キーボードがどのように動作するか](ja/how_keyboards_work.md) -* [FAQ](ja/faq_general.md) - -## スタートアップ - -QMK は他のコンピュータプログラムと何ら変わりないと考えることができます。開始され、タスクを実行し、そして終了します。プログラムのエントリーポイントは、他の C プログラムと同様に、`main()` 関数です。ただし、QMK を初めて触る人は、`main()` 関数が複数の場所に現れるため、混乱するかもしれません。また、どれを見ればよいか分かりにくいかもしれません。 - -複数ある理由は、QMK は様々なプラットフォームをサポートするからです。最も一般的なプラットフォームは `lufa` です。これは atmega32u4 のような AVR プロセッサ上で実行されます。また、`chibios` および `vusb` もサポートします。 - -ここでは AVR プロセッサに焦点を当てます。これは `lufa` プラットフォームを使います。`main()` 関数は [tmk_core/protocol/lufa/lufa.c](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/tmk_core/protocol/lufa/lufa.c#L1028) にあります。関数にざっと目を通すと、(ホストへの USB も含めて)設定された全てのハードウェアが初期化され、プログラムのコア部分が [`while(1)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/tmk_core/protocol/lufa/lufa.c#L1069) で開始されることが分かります。これが[メインループ](#the-main-loop)です。 - -## メインループ - -コードのこの部分は、同じ命令セットを永久にループ処理するため、「メインループ」と呼ばれます。ここはキーボードに必要なことを実行させる関数を QMK が呼び出す場所です。一見、多くの機能を持つように見えるかもしれませんが、大抵の場合、コードは `#define` によって無効にされます。 - -``` - keyboard_task(); -``` - -ここで、全てのキーボードの固有の機能が実行されます。`keyboard_task()` のソースコードは [tmk_core/common/keyboard.c](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/tmk_core/common/keyboard.c#L216) にあり、マトリックスの変化を検知し、LED の状態をオンオフする責任があります。 - -`keyboard_task()` に以下を処理するコードがあります: - -* [マトリックスのスキャン](#matrix-scanning) -* マウスの処理 -* シリアルリンク -* ビジュアライザ -* キーボードの状態の LED (Caps Lock, Num Lock, Scroll Lock) - -#### マトリックスのスキャン - -マトリックスのスキャンはキーボードファームウェアのコアの機能です。これは今どのキーが押されているかを検知するプロセスであり、キーボードはこの機能を1秒間に何度も何度も実行します。ファームウェアの CPU 時間の 99% はマトリックスのスキャンに費やされていると言っても過言ではありません。 - -実際のマトリックスの検知には様々な方法がありますが、それはこのドキュメントの対象外です。マトリックスのスキャンをブラックボックスとして扱っても問題ありません。マトリックスの現在の状態を求めると、以下のようなデータ構造を取得します: - - -``` -{ - {0,0,0,0}, - {0,0,0,0}, - {0,0,0,0}, - {0,0,0,0}, - {0,0,0,0} -} -``` - -これは 4行x5列のテンキー(訳注: 5行x4列の間違いと思われます)のマトリックスを表す直接的な表現のデータ構造です。キーが押されると、マトリックス内のそのキーの位置が、 `0` ではなく `1` として返されます。 - -マトリックスのスキャンは1秒間に何度も実行されます。正確なレートは様々ですが、知覚できるような遅延を避けるために、秒間に少なくとも10回実行します。 - -##### マトリックスから物理的なレイアウトへのマップ - -キーボード上の各スイッチの状態が分かると、それをキーコードへマップする必要があります。QMK ではキーコードへのマップは C マクロを使うことで行われ、C マクロにより物理的なレイアウトの定義はキーコードの定義から分離されています。(訳注:「キーコードの定義」は「キーコードのマトリクス配列による定義」と思われる) - -キーボードレベルで、キーボードのマトリックスを物理キーにマップする C マクロ (一般的には、`LAYOUT()` という名前)を定義します。マトリックスにスイッチがない場所がある場合、このマクロを使って KC_NO を事前に埋め込むことができ、キーマップの定義を扱いやすくすることができます。以下は、テンキー用の `LAYOUT()` マクロです: - -```c -#define LAYOUT( \ - k00, k01, k02, k03, \ - k10, k11, k12, k13, \ - k20, k21, k22, \ - k30, k31, k32, k33, \ - k40, k42 \ -) { \ - { k00, k01, k02, k03, }, \ - { k10, k11, k12, k13, }, \ - { k20, k21, k22, KC_NO, }, \ - { k30, k31, k32, k33, }, \ - { k40, KC_NO, k42, KC_NO } \ -} -``` - -`LAYOUT()` マクロの2つ目のブロックが、上記のマトリックススキャン配列とどのように一致しているかに注目してください。このマクロはマトリックスのスキャン配列をキーコードにマップするものです。ただし、17キーのテンキーを見ると、マトリックスにはスイッチが置けるが、キーが大きいために実際にはスイッチが無い箇所が3つあることが分かります。これらのスペースに `KC_NO` を設定したので、キーマップ定義には必要ありません。 - -このマクロを使って、少し変わったマトリックスのレイアウト、例えば [Clueboard rev 2](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/keyboards/clueboard/66/rev2/rev2.h) を扱うこともできます。その説明はこのドキュメントの範囲外です。 - -##### キーコードの割り当て - -キーマップレべルでは、上記の `LAYOUT()` マクロを使って、物理的な場所からマトリックスの場所にマッピングします。以下のようになります: - -``` -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = LAYOUT( - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, \ - KC_P7, KC_P8, KC_P9, KC_PPLS, \ - KC_P4, KC_P5, KC_P6, \ - KC_P1, KC_P2, KC_P3, KC_PENT, \ - KC_P0, KC_PDOT) -} -``` - -これら全ての引数が、前のセクションの `LAYOUT()` マクロの前半とどのように一致しているかについて注目してください。このようにして、キーコードを取得して、それを前述のマトリックススキャンにマップします。 - -##### 状態変更の検知 - -上記のマトリックススキャンはある時点のマトリックスの状態を伝えますが、コンピュータは変更のみを知りたいだけで、現在の状態を気にしません。QMK は最後のマトリックススキャンの結果を格納し、このマトリックスから結果を比較して、いつキーが押されたか放されたかを決定します。 - -例を見てみましょう。キーボードスキャンループの途中に移動して、前のスキャンが以下のようになっていることがわかったとします: - -``` -{ - {0,0,0,0}, - {0,0,0,0}, - {0,0,0,0}, - {0,0,0,0}, - {0,0,0,0} -} -``` - -現在のスキャンが完了すると、以下のように見えるとします: - -``` -{ - {1,0,0,0}, - {0,0,0,0}, - {0,0,0,0}, - {0,0,0,0}, - {0,0,0,0} -} -``` - -キーマップと比較すると、押されたキーが KC_NUM であることが分かります。ここから、`process_record` 関数群を呼び出します。 - - - -##### Process Record - -`process_record()` 関数自体は一見簡単に見えますが、その内部は QMK の様々なレベルで機能を上書きするためのゲートウェイが隠されています。キーボード/キーマップレベルの機能について調べる必要があるときは、以下に列挙した一連のイベントを手引帳として使います。`rules.mk` またはほかの場所で設定されたオプションに応じて、最終的なファームウェアに以下の関数のサブセットのみが含まれます。 - -* [`void process_record(keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/tmk_core/common/action.c#L172) - * [`bool process_record_quantum(keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/quantum.c#L206) - * [このレコードをキーコードにマップする](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/quantum.c#L226) - * [`void velocikey_accelerate(void)`](https://github.com/qmk/qmk_firmware/blob/c1c5922aae7b60b7c7d13d3769350eed9dda17ab/quantum/velocikey.c#L27) - * [`void preprocess_tap_dance(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_tap_dance.c#L119) - * [`bool process_key_lock(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_key_lock.c#L62) - * [`bool process_clicky(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_clicky.c#L79) - * [`bool process_haptic(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/2cee371bf125a6ec541dd7c5a809573facc7c456/drivers/haptic/haptic.c#L216) - * [`bool process_record_kb(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/keyboards/clueboard/card/card.c#L20) - * [`bool process_record_user(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/keyboards/clueboard/card/keymaps/default/keymap.c#L58) - * [`bool process_midi(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_midi.c#L81) - * [`bool process_audio(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_audio.c#L19) - * [`bool process_steno(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_steno.c#L160) - * [`bool process_music(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_music.c#L114) - * [`bool process_key_override(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/5a1b857dea45a17698f6baa7dd1b7a7ea907fb0a/quantum/process_keycode/process_key_override.c#L397) - * [`bool process_tap_dance(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_tap_dance.c#L141) - * [`bool process_unicode_common(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_unicode_common.c#L169) は、以下のいずれかを呼び出します: - * [`bool process_unicode(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_unicode.c#L20) - * [`bool process_unicodemap(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_unicodemap.c#L46) - * [`bool process_ucis(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_ucis.c#L95) - * [`bool process_leader(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_leader.c#L51) - * [`bool process_combo(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_combo.c#L115) - * [`bool process_printer(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_printer.c#L77) - * [`bool process_auto_shift(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/process_keycode/process_auto_shift.c#L94) - * [Quantum 固有のキーコードを識別して処理する](https://github.com/qmk/qmk_firmware/blob/e1203a222bb12ab9733916164a000ef3ac48da93/quantum/quantum.c#L291) - -この一連のイベントの中の任意のステップで (`process_record_kb()` のような)関数は `false` を返して、以降の処理を停止することができます。 - -この呼び出しの後で、`post_process_record()` が呼ばれます。これはキーコードが通常処理された後に実行する必要がある追加のクリーンアップを処理するために使うことができます。 - -* [`void post_process_record(keyrecord_t *record)`]() - * [`void post_process_record_quantum(keyrecord_t *record)`]() - * [このレコードをキーコードにマップする]() - * [`void post_process_clicky(uint16_t keycode, keyrecord_t *record)`]() - * [`void post_process_record_kb(uint16_t keycode, keyrecord_t *record)`]() - * [`void post_process_record_user(uint16_t keycode, keyrecord_t *record)`]() - - diff --git a/docs/keycodes.md b/docs/keycodes.md index 9d722216a93..38ed5ab18d4 100644 --- a/docs/keycodes.md +++ b/docs/keycodes.md @@ -1,12 +1,12 @@ # Keycodes Overview -When defining a [keymap](keymap.md) each key needs a valid key definition. This page documents the symbols that correspond to keycodes that are available to you in QMK. +When defining a [keymap](keymap) each key needs a valid key definition. This page documents the symbols that correspond to keycodes that are available to you in QMK. This is a reference only. Each group of keys links to the page documenting their functionality in more detail. -## Basic Keycodes :id=basic-keycodes +## Basic Keycodes {#basic-keycodes} -See also: [Basic Keycodes](keycodes_basic.md) +See also: [Basic Keycodes](keycodes_basic) |Key |Aliases |Description |Windows |macOS |Linux1| |------------------------|-------------------------------|---------------------------------------|-------------|-------------|-----------------| @@ -219,9 +219,9 @@ See also: [Basic Keycodes](keycodes_basic.md) 5. Skips the entire track in iTunes when tapped, seeks within the current track when held.
6. WMP does not recognize the Rewind key, but both alter playback speed in VLC. -## Quantum Keycodes :id=quantum-keycodes +## Quantum Keycodes {#quantum-keycodes} -See also: [Quantum Keycodes](quantum_keycodes.md#qmk-keycodes) +See also: [Quantum Keycodes](quantum_keycodes#qmk-keycodes) |Key |Aliases |Description | |-----------------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------| @@ -231,9 +231,9 @@ See also: [Quantum Keycodes](quantum_keycodes.md#qmk-keycodes) |`QK_MAKE` | |Sends `qmk compile -kb (keyboard) -km (keymap)`, or `qmk flash` if shift is held. Puts keyboard into bootloader mode if shift & control are held | |`QK_REBOOT` |`QK_RBT` |Resets the keyboard. Does not load the bootloader | -## Audio Keys :id=audio-keys +## Audio Keys {#audio-keys} -See also: [Audio](feature_audio.md) +See also: [Audio](feature_audio) |Key |Aliases |Description | |-------------------------|---------|-------------------------------------------| @@ -253,9 +253,9 @@ See also: [Audio](feature_audio.md) |`QK_AUDIO_VOICE_NEXT` |`AU_NEXT`|Cycles through the audio voices | |`QK_AUDIO_VOICE_PREVIOUS`|`AU_PREV`|Cycles through the audio voices in reverse | -## Auto Shift :id=auto-shift +## Auto Shift {#auto-shift} -See also: [Auto Shift](feature_auto_shift.md) +See also: [Auto Shift](feature_auto_shift) |Key |Aliases |Description | |----------------------|---------|--------------------------------------------| @@ -266,9 +266,9 @@ See also: [Auto Shift](feature_auto_shift.md) |`QK_AUTO_SHIFT_OFF` |`AS_OFF` |Turns off the Auto Shift Function | |`QK_AUTO_SHIFT_TOGGLE`|`AS_TOGG`|Toggles the state of the Auto Shift feature | -## Autocorrect :id=autocorrect +## Autocorrect {#autocorrect} -See also: [Autocorrect](feature_autocorrect.md) +See also: [Autocorrect](feature_autocorrect) |Key |Aliases |Description | |-----------------------|---------|----------------------------------------------| @@ -276,9 +276,9 @@ See also: [Autocorrect](feature_autocorrect.md) |`QK_AUTOCORRECT_OFF` |`AC_OFF` |Turns off the Autocorrect feature. | |`QK_AUTOCORRECT_TOGGLE`|`AC_TOGG`|Toggles the status of the Autocorrect feature.| -## Backlighting :id=backlighting +## Backlighting {#backlighting} -See also: [Backlighting](feature_backlight.md) +See also: [Backlighting](feature_backlight) | Key | Aliases | Description | |---------------------------------|-----------|-------------------------------------| @@ -290,9 +290,9 @@ See also: [Backlighting](feature_backlight.md) | `QK_BACKLIGHT_DOWN` | `BL_DOWN` | Decrease the backlight level | | `QK_BACKLIGHT_TOGGLE_BREATHING` | `BL_BRTG` | Toggle backlight breathing | -## Bluetooth :id=bluetooth +## Bluetooth {#bluetooth} -See also: [Bluetooth](feature_bluetooth.md) +See also: [Bluetooth](feature_bluetooth) |Key |Aliases |Description | |---------------------|---------|----------------------------------------------| @@ -300,17 +300,17 @@ See also: [Bluetooth](feature_bluetooth.md) |`QK_OUTPUT_USB` |`OU_USB` |USB only | |`QK_OUTPUT_BLUETOOTH`|`OU_BT` |Bluetooth only | -## Caps Word :id=caps-word +## Caps Word {#caps-word} -See also: [Caps Word](feature_caps_word.md) +See also: [Caps Word](feature_caps_word) |Key |Aliases |Description | |---------------------|---------|------------------------------| |`QK_CAPS_WORD_TOGGLE`|`CW_TOGG`|Toggles Caps Word | -## Dynamic Macros :id=dynamic-macros +## Dynamic Macros {#dynamic-macros} -See also: [Dynamic Macros](feature_dynamic_macros.md) +See also: [Dynamic Macros](feature_dynamic_macros) |Key |Aliases |Description | |---------------------------------|---------|--------------------------------------------------| @@ -320,17 +320,17 @@ See also: [Dynamic Macros](feature_dynamic_macros.md) |`QK_DYNAMIC_MACRO_PLAY_2` |`DM_PLY2`|Replay Macro 2 | |`QK_DYNAMIC_MACRO_RECORD_STOP` |`DM_RSTP`|Finish the macro that is currently being recorded.| -## Grave Escape :id=grave-escape +## Grave Escape {#grave-escape} -See also: [Grave Escape](feature_grave_esc.md) +See also: [Grave Escape](feature_grave_esc) |Key |Aliases |Description | |-----------------|---------|------------------------------------------------------------------| |`QK_GRAVE_ESCAPE`|`QK_GESC`|Escape when pressed, ` when Shift or GUI are held| -## Joystick :id=joystick +## Joystick {#joystick} -See also: [Joystick](feature_joystick.md) +See also: [Joystick](feature_joystick) |Key |Aliases|Description| |-----------------------|-------|-----------| @@ -367,40 +367,40 @@ See also: [Joystick](feature_joystick.md) |`QK_JOYSTICK_BUTTON_30`|`JS_30`|Button 30 | |`QK_JOYSTICK_BUTTON_31`|`JS_31`|Button 31 | -## Key Lock :id=key-lock +## Key Lock {#key-lock} -See also: [Key Lock](feature_key_lock.md) +See also: [Key Lock](feature_key_lock) |Key |Description | |---------|--------------------------------------------------------------| |`QK_LOCK`|Hold down the next key pressed, until the key is pressed again| -## Layer Switching :id=layer-switching +## Layer Switching {#layer-switching} -See also: [Layer Switching](feature_layers.md#switching-and-toggling-layers) +See also: [Layer Switching](feature_layers#switching-and-toggling-layers) |Key |Description | |----------------|----------------------------------------------------------------------------------| |`DF(layer)` |Set the base (default) layer | |`MO(layer)` |Momentarily turn on `layer` when pressed (requires `KC_TRNS` on destination layer)| -|`OSL(layer)` |Momentarily activates `layer` until a key is pressed. See [One Shot Keys](one_shot_keys.md) for details. | -|`LM(layer, mod)`|Momentarily turn on `layer` (like MO) with `mod` active as well. Where `mod` is a mods_bit. Mods can be viewed [here](mod_tap.md). Example Implementation: `LM(LAYER_1, MOD_LALT)`| +|`OSL(layer)` |Momentarily activates `layer` until a key is pressed. See [One Shot Keys](one_shot_keys) for details. | +|`LM(layer, mod)`|Momentarily turn on `layer` (like MO) with `mod` active as well. Where `mod` is a mods_bit. Mods can be viewed [here](mod_tap). Example Implementation: `LM(LAYER_1, MOD_LALT)`| |`LT(layer, kc)` |Turn on `layer` when held, `kc` when tapped | |`TG(layer)` |Toggle `layer` on or off | |`TO(layer)` |Turns on `layer` and turns off all other layers, except the default layer | |`TT(layer)` |Normally acts like MO unless it's tapped multiple times, which toggles `layer` on | -## Leader Key :id=leader-key +## Leader Key {#leader-key} -See also: [Leader Key](feature_leader_key.md) +See also: [Leader Key](feature_leader_key) |Key |Description | |---------|------------------------| |`QK_LEAD`|Begins a leader sequence| -## LED Matrix :id=led-matrix +## LED Matrix {#led-matrix} -See also: [LED Matrix](feature_led_matrix.md) +See also: [LED Matrix](feature_led_matrix) |Key |Aliases |Description | |-------------------------------|---------|-----------------------------------| @@ -414,9 +414,9 @@ See also: [LED Matrix](feature_led_matrix.md) |`QK_LED_MATRIX_SPEED_UP` |`LM_SPDU`|Increase the animation speed | |`QK_LED_MATRIX_SPEED_DOWN` |`LM_SPDD`|Decrease the animation speed | -## Magic Keycodes :id=magic-keycodes +## Magic Keycodes {#magic-keycodes} -See also: [Magic Keycodes](keycodes_magic.md) +See also: [Magic Keycodes](keycodes_magic) |Key |Aliases |Description | |-------------------------------------|---------|--------------------------------------------------------------------------| @@ -456,9 +456,9 @@ See also: [Magic Keycodes](keycodes_magic.md) |`QK_MAGIC_EE_HANDS_LEFT` |`EH_LEFT`|Set the master half of a split keyboard as the left hand (for `EE_HANDS`) | |`QK_MAGIC_EE_HANDS_RIGHT` |`EH_RGHT`|Set the master half of a split keyboard as the right hand (for `EE_HANDS`)| -## MIDI :id=midi +## MIDI {#midi} -See also: [MIDI](feature_midi.md) +See also: [MIDI](feature_midi) |Key |Aliases |Description | |-------------------------------|------------------|---------------------------------| @@ -607,9 +607,9 @@ See also: [MIDI](feature_midi.md) |`QK_MIDI_PITCH_BEND_DOWN` |`MI_BNDD` |Bend pitch down | |`QK_MIDI_PITCH_BEND_UP` |`MI_BNDU` |Bend pitch up | -## Mouse Keys :id=mouse-keys +## Mouse Keys {#mouse-keys} -See also: [Mouse Keys](feature_mouse_keys.md) +See also: [Mouse Keys](feature_mouse_keys) |Key |Aliases |Description | |----------------|---------|---------------------------| @@ -630,9 +630,9 @@ See also: [Mouse Keys](feature_mouse_keys.md) |`KC_MS_ACCEL1` |`KC_ACL1`|Set mouse acceleration to 1| |`KC_MS_ACCEL2` |`KC_ACL2`|Set mouse acceleration to 2| -## Modifiers :id=modifiers +## Modifiers {#modifiers} -See also: [Modifier Keys](feature_advanced_keycodes.md#modifier-keys) +See also: [Modifier Keys](feature_advanced_keycodes#modifier-keys) |Key |Aliases |Description | |----------|----------------------------------|------------------------------------------------------| @@ -658,9 +658,9 @@ See also: [Modifier Keys](feature_advanced_keycodes.md#modifier-keys) |`KC_MEH` | |Left Control, Shift and Alt | |`KC_HYPR` | |Left Control, Shift, Alt and GUI | -## Mod-Tap Keys :id=mod-tap-keys +## Mod-Tap Keys {#mod-tap-keys} -See also: [Mod-Tap](mod_tap.md) +See also: [Mod-Tap](mod_tap) |Key |Aliases |Description | |-------------|-----------------------------------------------------------------|--------------------------------------------------------------| @@ -687,7 +687,7 @@ See also: [Mod-Tap](mod_tap.md) |`MEH_T(kc)` | |Left Control, Shift and Alt when held, `kc` when tapped | |`HYPR_T(kc)` |`ALL_T(kc)` |Left Control, Shift, Alt and GUI when held, `kc` when tapped - more info [here](https://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)| -## Tapping Term Keys :id=tapping-term-keys +## Tapping Term Keys {#tapping-term-keys} See also: [Dynamic Tapping Term](tap_hold#dynamic-tapping-term) @@ -697,9 +697,9 @@ See also: [Dynamic Tapping Term](tap_hold#dynamic-tapping-term) |`QK_DYNAMIC_TAPPING_TERM_UP` |`DT_UP` | Increases the current tapping term by `DYNAMIC_TAPPING_TERM_INCREMENT`ms (5ms by default) | |`QK_DYNAMIC_TAPPING_TERM_DOWN` |`DT_DOWN`| Decreases the current tapping term by `DYNAMIC_TAPPING_TERM_INCREMENT`ms (5ms by default) | -## RGB Lighting :id=rgb-lighting +## RGB Lighting {#rgb-lighting} -See also: [RGB Lighting](feature_rgblight.md) +See also: [RGB Lighting](feature_rgblight) |Key |Aliases |Description | |-------------------|----------|--------------------------------------------------------------------| @@ -722,9 +722,9 @@ See also: [RGB Lighting](feature_rgblight.md) |`RGB_MODE_GRADIENT`|`RGB_M_G` |Static gradient animation mode | |`RGB_MODE_RGBTEST` |`RGB_M_T` |Red,Green,Blue test animation mode | -## RGB Matrix Lighting :id=rgb-matrix-lighting +## RGB Matrix Lighting {#rgb-matrix-lighting} -See also: [RGB Matrix Lighting](feature_rgb_matrix.md) +See also: [RGB Matrix Lighting](feature_rgb_matrix) |Key |Aliases |Description | |-------------------|----------|--------------------------------------------------------------------------------------| @@ -740,9 +740,9 @@ See also: [RGB Matrix Lighting](feature_rgb_matrix.md) |`RGB_SPI` | |Increase effect speed (does not support eeprom yet), decrease speed when Shift is held| |`RGB_SPD` | |Decrease effect speed (does not support eeprom yet), increase speed when Shift is held| -## US ANSI Shifted Symbols :id=us-ansi-shifted-symbols +## US ANSI Shifted Symbols {#us-ansi-shifted-symbols} -See also: [US ANSI Shifted Symbols](keycodes_us_ansi_shifted.md) +See also: [US ANSI Shifted Symbols](keycodes_us_ansi_shifted) |Key |Aliases |Description| |------------------------|-------------------|-----------| @@ -768,9 +768,9 @@ See also: [US ANSI Shifted Symbols](keycodes_us_ansi_shifted.md) |`KC_RIGHT_ANGLE_BRACKET`|`KC_RABK`, `KC_GT` |`>` | |`KC_QUESTION` |`KC_QUES` |`?` | -## One Shot Keys :id=one-shot-keys +## One Shot Keys {#one-shot-keys} -See also: [One Shot Keys](one_shot_keys.md) +See also: [One Shot Keys](one_shot_keys) |Key |Aliases |Description | |--------------------|---------|----------------------------------| @@ -780,9 +780,9 @@ See also: [One Shot Keys](one_shot_keys.md) |`QK_ONE_SHOT_ON` |`OS_ON` |Turns One Shot keys on | |`QK_ONE_SHOT_OFF` |`OS_OFF` |Turns One Shot keys off | -## Programmable Button Support :id=programmable-button +## Programmable Button Support {#programmable-button} -See also: [Programmable Button](feature_programmable_button.md) +See also: [Programmable Button](feature_programmable_button) |Key |Aliases|Description | |---------------------------|-------|----------------------| @@ -819,18 +819,18 @@ See also: [Programmable Button](feature_programmable_button.md) |`QK_PROGRAMMABLE_BUTTON_31`|`PB_31`|Programmable button 31| |`QK_PROGRAMMABLE_BUTTON_32`|`PB_32`|Programmable button 32| -## Repeat Key :id=repeat-key +## Repeat Key {#repeat-key} -See also: [Repeat Key](feature_repeat_key.md) +See also: [Repeat Key](feature_repeat_key) |Keycode |Aliases |Description | |-----------------------|---------|-------------------------------------| |`QK_REPEAT_KEY` |`QK_REP` |Repeat the last pressed key | |`QK_ALT_REPEAT_KEY` |`QK_AREP`|Perform alternate of the last key | -## Space Cadet :id=space-cadet +## Space Cadet {#space-cadet} -See also: [Space Cadet](feature_space_cadet.md) +See also: [Space Cadet](feature_space_cadet) |Key |Aliases |Description | |----------------------------------------------|---------|----------------------------------------| @@ -842,9 +842,9 @@ See also: [Space Cadet](feature_space_cadet.md) |`QK_SPACE_CADET_RIGHT_ALT_PARENTHESIS_CLOSE` |`SC_RAPC`|Right Alt when held, `)` when tapped | |`QK_SPACE_CADET_RIGHT_SHIFT_ENTER` |`SC_SENT`|Right Shift when held, Enter when tapped| -## Swap Hands :id=swap-hands +## Swap Hands {#swap-hands} -See also: [Swap Hands](feature_swap_hands.md) +See also: [Swap Hands](feature_swap_hands) |Key |Aliases |Description | |-----------------------------|---------|----------------------------------------------------| @@ -857,9 +857,9 @@ See also: [Swap Hands](feature_swap_hands.md) |`QK_SWAP_HANDS_TAP_TOGGLE` |`SH_TT` |Momentary swap when held, toggle when tapped | |`QK_SWAP_HANDS_ONE_SHOT` |`SH_OS` |Turn on hand swap while held or until next key press| -## Unicode Support :id=unicode-support +## Unicode Support {#unicode-support} -See also: [Unicode Support](feature_unicode.md) +See also: [Unicode Support](feature_unicode) |Key |Aliases |Description | |----------------------------|---------|----------------------------------------------------------------| diff --git a/docs/keycodes_basic.md b/docs/keycodes_basic.md index c95accd79ed..6ff422f89b1 100644 --- a/docs/keycodes_basic.md +++ b/docs/keycodes_basic.md @@ -191,7 +191,9 @@ The basic set of keycodes are based on the [HID Keyboard/Keypad Usage Page (0x07 These keycodes are not part of the Keyboard/Keypad usage page. The `SYSTEM_` keycodes are found in the Generic Desktop page, and the rest are located in the Consumer page. -?> Some of these keycodes may behave differently depending on the OS. For example, on macOS, the keycodes `KC_MEDIA_FAST_FORWARD`, `KC_MEDIA_REWIND`, `KC_MEDIA_NEXT_TRACK` and `KC_MEDIA_PREV_TRACK` skip within the current track when held, but skip the entire track when tapped. +::: tip +Some of these keycodes may behave differently depending on the OS. For example, on macOS, the keycodes `KC_MEDIA_FAST_FORWARD`, `KC_MEDIA_REWIND`, `KC_MEDIA_NEXT_TRACK` and `KC_MEDIA_PREV_TRACK` skip within the current track when held, but skip the entire track when tapped. +::: |Key |Aliases |Description | |-----------------------|---------|--------------------| diff --git a/docs/keycodes_magic.md b/docs/keycodes_magic.md index 84706123456..746af5b5e45 100644 --- a/docs/keycodes_magic.md +++ b/docs/keycodes_magic.md @@ -1,4 +1,4 @@ -# Magic Keycodes :id=magic-keycodes +# Magic Keycodes {#magic-keycodes} **Magic Keycodes** are prefixed with `MAGIC_`, and allow you to access the functionality of the deprecated Bootmagic feature *after* your keyboard has initialized. To use the keycodes, assign them to your keymap as you would any other keycode. diff --git a/docs/keymap.md b/docs/keymap.md index b9c5da6be70..e371fd9ba5e 100644 --- a/docs/keymap.md +++ b/docs/keymap.md @@ -3,7 +3,7 @@ QMK keymaps are defined inside a C source file. The data structure is an array of arrays. The outer array is a list of layer arrays while the inner layer array is a list of keys. Most keyboards define a `LAYOUT()` macro to help you create this array of arrays. -## Keymap and Layers :id=keymap-and-layers +## Keymap and Layers {#keymap-and-layers} In QMK, **`const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS]`** holds multiple **layers** of keymap information in **16 bit** data holding the **action code**. You can define **32 layers** at most. For trivial key definitions, the higher 8 bits of the **action code** are all 0 and the lower 8 bits holds the USB HID usage code generated by the key as **keycode**. @@ -27,7 +27,7 @@ Respective layers can be validated simultaneously. Layers are indexed with 0 to Sometimes, the action code stored in keymap may be referred as keycode in some documents due to the TMK history. -### Keymap Layer Status :id=keymap-layer-status +### Keymap Layer Status {#keymap-layer-status} The state of the Keymap layer is determined by two 32 bit parameters: @@ -137,7 +137,9 @@ After this you'll find the layer definitions. Typically you'll have one or more `keymaps[][MATRIX_ROWS][MATRIX_COLS]` in QMK holds the 16 bit action code (sometimes referred as the quantum keycode) in it. For the keycode representing typical keys, its high byte is 0 and its low byte is the USB HID usage ID for keyboard. -> TMK from which QMK was forked uses `const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS]` instead and holds the 8 bit keycode. +::: info +TMK from which QMK was forked uses `const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS]` instead and holds the 8 bit keycode. +::: #### Base Layer @@ -185,7 +187,7 @@ Some interesting things to note: This should have given you a basic overview for creating your own keymap. For more details see the following resources: -* [Keycodes](keycodes.md) -* [Keymap FAQ](faq_keymap.md) +* [Keycodes](keycodes) +* [Keymap FAQ](faq_keymap) We are actively working to improve these docs. If you have suggestions for how they could be made better please [file an issue](https://github.com/qmk/qmk_firmware/issues/new)! diff --git a/docs/mod_tap.md b/docs/mod_tap.md index 8b953d76b48..0008967c524 100644 --- a/docs/mod_tap.md +++ b/docs/mod_tap.md @@ -53,13 +53,13 @@ For convenience, QMK includes some Mod-Tap shortcuts to make common combinations ## Caveats -Currently, the `kc` argument of `MT()` is limited to the [Basic Keycode set](keycodes_basic.md), meaning you can't use keycodes like `LCTL()`, `KC_TILD`, or anything greater than `0xFF`. This is because QMK uses 16-bit keycodes, of which 3 bits are used for the function identifier, 1 bit for selecting right or left mods, and 4 bits to tell which mods are used, leaving only 8 bits for the keycode. Additionally, if at least one right-handed modifier is specified in a Mod-Tap, it will cause all modifiers specified to become right-handed, so it is not possible to mix and match the two - for example, Left Control and Right Shift would become Right Control and Right Shift. +Currently, the `kc` argument of `MT()` is limited to the [Basic Keycode set](keycodes_basic), meaning you can't use keycodes like `LCTL()`, `KC_TILD`, or anything greater than `0xFF`. This is because QMK uses 16-bit keycodes, of which 3 bits are used for the function identifier, 1 bit for selecting right or left mods, and 4 bits to tell which mods are used, leaving only 8 bits for the keycode. Additionally, if at least one right-handed modifier is specified in a Mod-Tap, it will cause all modifiers specified to become right-handed, so it is not possible to mix and match the two - for example, Left Control and Right Shift would become Right Control and Right Shift. -Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, [Tap Dance](feature_tap_dance.md#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) can be used to accomplish this. +Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, [Tap Dance](feature_tap_dance#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) can be used to accomplish this. You may also run into issues when using Remote Desktop Connection on Windows. Because these keycodes send key events faster than a human, Remote Desktop could miss them. To fix this, open Remote Desktop Connection, click on "Show Options", open the "Local Resources" tab, and in the keyboard section, change the drop down to "On this Computer". This will fix the issue, and allow the characters to work correctly. -It can also be mitigated by increasing [`TAP_CODE_DELAY`](config_options.md#behaviors-that-can-be-configured). +It can also be mitigated by increasing [`TAP_CODE_DELAY`](config_options#behaviors-that-can-be-configured). ## Intercepting Mod-Taps @@ -132,4 +132,4 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { ## Other Resources -See the [Tap-Hold Configuration Options](tap_hold.md) for additional flags that tweak Mod-Tap behavior. +See the [Tap-Hold Configuration Options](tap_hold) for additional flags that tweak Mod-Tap behavior. diff --git a/docs/newbs.md b/docs/newbs.md index b4d14947946..10d043c3eda 100644 --- a/docs/newbs.md +++ b/docs/newbs.md @@ -6,19 +6,21 @@ QMK tries to put a lot of power into your hands by making easy things easy, and Not sure if your keyboard can run QMK? If it's a mechanical keyboard you built yourself chances are good it can. We support a [large number of hobbyist boards](https://qmk.fm/keyboards/). If your current keyboard can't run QMK there are a lot of choices out there for boards that do. -?> **Is This Guide For Me?**
-If the thought of programming intimidates you, please [take a look at our online GUI](newbs_building_firmware_configurator.md) instead. +::: tip +**Is This Guide For Me?**
+::: +If the thought of programming intimidates you, please [take a look at our online GUI](newbs_building_firmware_configurator) instead. ## Overview This guide is suitable for everyone who wants to build a keyboard firmware using the source code. If you are already a programmer you will find the process very familiar and easier to follow. There are 3 main sections to this guide: -1. [Setup Your Environment](newbs_getting_started.md) -2. [Building Your First Firmware](newbs_building_firmware.md) -3. [Flashing Firmware](newbs_flashing.md) +1. [Setup Your Environment](newbs_getting_started) +2. [Building Your First Firmware](newbs_building_firmware) +3. [Flashing Firmware](newbs_flashing) -This guide is focused on helping someone who has never compiled software before. It makes choices and recommendations based on that viewpoint. There are alternative methods for many of these procedures, and we support most of those alternatives. If you have any doubt about how to accomplish a task you can [ask us for guidance](getting_started_getting_help.md). +This guide is focused on helping someone who has never compiled software before. It makes choices and recommendations based on that viewpoint. There are alternative methods for many of these procedures, and we support most of those alternatives. If you have any doubt about how to accomplish a task you can [ask us for guidance](support). ## Additional Resources -Beyond this guide there are several resources you may find helpful while you learn QMK. We've collected them on the [Syllabus](syllabus.md) and [Learning Resources](newbs_learn_more_resources.md) pages. +Beyond this guide there are several resources you may find helpful while you learn QMK. We've collected them on the [Syllabus](syllabus) and [Learning Resources](newbs_learn_more_resources) pages. diff --git a/docs/newbs_building_firmware.md b/docs/newbs_building_firmware.md index de9217e9f0b..5e6a4452df4 100644 --- a/docs/newbs_building_firmware.md +++ b/docs/newbs_building_firmware.md @@ -10,7 +10,9 @@ Most people new to QMK only have 1 keyboard. You can set this keyboard as your d qmk config user.keyboard=clueboard/66/rev4 -?> The keyboard option is the path relative to the keyboard directory, the above example would be found in `qmk_firmware/keyboards/clueboard/66/rev4`. If you're unsure you can view a full list of supported keyboards with `qmk list-keyboards`. +::: tip +The keyboard option is the path relative to the keyboard directory, the above example would be found in `qmk_firmware/keyboards/clueboard/66/rev4`. If you're unsure you can view a full list of supported keyboards with `qmk list-keyboards`. +::: You can also set your default keymap name. Most people use their GitHub username like the keymap name from the previous steps: @@ -40,20 +42,24 @@ Open your `keymap.c` file in your text editor. Inside this file you'll find the This line indicates where the list of Layers begins. Below that you'll find lines containing `LAYOUT`, and these lines indicate the start of a layer. Below that line is the list of keys that comprise a particular layer. -!> When editing your keymap file be careful not to add or remove any commas. If you do, you will prevent your firmware from compiling and it may not be easy to figure out where the extra, or missing, comma is. +::: warning +When editing your keymap file be careful not to add or remove any commas. If you do, you will prevent your firmware from compiling and it may not be easy to figure out where the extra, or missing, comma is. +::: ## Customize The Layout To Your Liking How to complete this step is entirely up to you. Make the one change that's been bugging you, or completely rework everything. You can remove layers if you don't need all of them, or add layers up to a total of 32. There are a lot of features in QMK, explore the sidebar to the left under "Using QMK" to see the full list. To get you started here are a few of the easier to use features: -* [Basic Keycodes](keycodes_basic.md) -* [Quantum Keycodes](quantum_keycodes.md) -* [Grave/Escape](feature_grave_esc.md) -* [Mouse keys](feature_mouse_keys.md) +* [Basic Keycodes](keycodes_basic) +* [Quantum Keycodes](quantum_keycodes) +* [Grave/Escape](feature_grave_esc) +* [Mouse keys](feature_mouse_keys) -?> While you get a feel for how keymaps work, keep each change small. Bigger changes make it harder to debug any problems that arise. +::: tip +While you get a feel for how keymaps work, keep each change small. Bigger changes make it harder to debug any problems that arise. +::: -## Build Your Firmware :id=build-your-firmware +## Build Your Firmware {#build-your-firmware} When your changes to the keymap are complete you will need to build the firmware. To do so go back to your terminal window and run the compile command: @@ -75,4 +81,4 @@ Checking file size of planck_rev5_default.hex ## Flash Your Firmware -Move on to [Flashing Firmware](newbs_flashing.md) to learn how to write your new firmware to your keyboard. +Move on to [Flashing Firmware](newbs_flashing) to learn how to write your new firmware to your keyboard. diff --git a/docs/newbs_building_firmware_configurator.md b/docs/newbs_building_firmware_configurator.md index 20256e5f28f..85522e405c7 100644 --- a/docs/newbs_building_firmware_configurator.md +++ b/docs/newbs_building_firmware_configurator.md @@ -4,12 +4,14 @@ The [QMK Configurator](https://config.qmk.fm) is an online graphical user interface that generates QMK Firmware `.hex` or `.bin` files. -It should be noted that Configurator cannot produce firmwares for keyboards using a different controller than they were designed for, i.e. an RP2040 controller on a board designed for pro micro. You will have to use the command line [converters](https://docs.qmk.fm/#/feature_converters?id=supported-converters) for this. +It should be noted that Configurator cannot produce firmwares for keyboards using a different controller than they were designed for, i.e. an RP2040 controller on a board designed for pro micro. You will have to use the command line [converters](feature_converters#supported-converters) for this. Watch the [Video Tutorial](https://www.youtube.com/watch?v=-imgglzDMdY). Many people find that is enough information to start programming their own keyboard. The QMK Configurator works best with Chrome or Firefox. -!> **Note: Files from other tools such as Keyboard Layout Editor (KLE), or kbfirmware will not be compatible with QMK Configurator. Do not load them, do not import them. QMK Configurator is a DIFFERENT tool.** +::: warning +**Note: Files from other tools such as Keyboard Layout Editor (KLE), or kbfirmware will not be compatible with QMK Configurator. Do not load them, do not import them. QMK Configurator is a DIFFERENT tool.** +::: -Please refer to [QMK Configurator: Step by Step](configurator_step_by_step.md). +Please refer to [QMK Configurator: Step by Step](configurator_step_by_step). diff --git a/docs/newbs_building_firmware_workflow.md b/docs/newbs_building_firmware_workflow.md index a3cc53ad865..01c2e69032b 100644 --- a/docs/newbs_building_firmware_workflow.md +++ b/docs/newbs_building_firmware_workflow.md @@ -1,8 +1,10 @@ # Building QMK with GitHub Userspace -This is an intermediate QMK tutorial to setup an out-of-tree build environment with a personal GitHub repository. It avoids using a fork of the QMK firmware to store and build your keymap within its source tree. Keymap files will instead be stored in your own personal GitHub repository, in [Userspace](https://docs.qmk.fm/#/feature_userspace) format, and built with an action workflow. Unlike the [default tutorial](https://docs.qmk.fm/#/newbs), this guide requires some familiarity with using Git. +This is an intermediate QMK tutorial to setup an out-of-tree build environment with a personal GitHub repository. It avoids using a fork of the QMK firmware to store and build your keymap within its source tree. Keymap files will instead be stored in your own personal GitHub repository, in [Userspace](feature_userspace) format, and built with an action workflow. Unlike the [default tutorial](newbs), this guide requires some familiarity with using Git. -?> **Is This Guide For Me?**
+::: tip +**Is This Guide For Me?**
+::: This is a lean setup to avoid space-consuming local build environment in your computer. Troubleshooting compile-time errors will be slower with commit uploads to GitHub for the compiler workflow. @@ -12,7 +14,7 @@ The following are required to get started: * [GitHub Account](https://github.com/new) * A working account is required to setup and host your repository for GitHub Actions to build QMK firmware. -* [Text editor](newbs_learn_more_resources.md#text-editor-resources) +* [Text editor](newbs_learn_more_resources#text-editor-resources) * You’ll need a program that can edit and save plain text files. The default editor that comes with many OS's does not save plain text files, so you'll need to make sure that whatever editor you chose does. * [Toolbox](https://github.com/qmk/qmk_toolbox) * A graphical program for Windows and macOS that allows you to both program and debug your custom keyboard. @@ -20,23 +22,25 @@ The following are required to get started: ## Environment Setup -?> If you are familiar with using [github.dev](https://docs.github.com/en/codespaces/the-githubdev-web-based-editor), you can skip to [step 2](#_2-create-github-repository) and commit the code files that follows directly on GitHub using the web-based VSCode editor. +::: tip +If you are familiar with using [github.dev](https://docs.github.com/en/codespaces/the-githubdev-web-based-editor), you can skip to [step 2](#_2-create-github-repository) and commit the code files that follows directly on GitHub using the web-based VSCode editor. +::: ### 1. Install Git A working Git client is required for your local operating system to commit and push changes to GitHub. - +::::tabs -### ** Windows ** +=== Windows QMK maintains a bundle of MSYS2, the CLI and all necessary dependencies including Git. Install [QMK MSYS](https://msys.qmk.fm/) with the latest release [here](https://github.com/qmk/qmk_distro_msys/releases/latest). Git will be part of the bundle. -### ** macOS ** +=== macOS Install Homebrew following the instructions on https://brew.sh. Git will be part of the bundle. -### ** Linux/WSL ** +=== Linux/WSL It's very likely that you already have Git installed. If not, use one of the following commands: @@ -48,7 +52,7 @@ It's very likely that you already have Git installed. If not, use one of the fol * Sabayon: `sudo equo install dev-vcs/git` * Gentoo: `sudo emerge dev-vcs/git` - +:::: ### 2. GitHub authentication @@ -74,7 +78,9 @@ echo "SRC += source.c" > ~/qmk_keymap/rules.mk echo "#include QMK_KEYBOARD_H" > ~/qmk_keymap/source.c ``` -?> For Windows user running MSYS, those commands will create the folder `qmk_keymap/` and its content in the `C:\Users\\qmk_keymap\` path location. +::: tip +For Windows user running MSYS, those commands will create the folder `qmk_keymap/` and its content in the `C:\Users\\qmk_keymap\` path location. +::: ### Add a JSON keymap @@ -85,11 +91,13 @@ Visit the [QMK Configurator](https://config.qmk.fm/#/) to create a keymap file: 3. Customise the key layout according to your preference. 4. Select download next to **KEYMAP.JSON** and save the JSON file into the `~/qmk_keymap/` folder. -!> **Important:** Make sure that the GitHub username you use in step 2 is correct. If it is not, the build process will fail to locate your files in the right folder. +::: warning +**Important:** Make sure that the GitHub username you use in step 2 is correct. If it is not, the build process will fail to locate your files in the right folder. +::: ### Add a GitHub Action workflow -Open the file `~/qmk_keymap/.github/workflows/build.yml` with your favorite [text editor](newbs_learn_more_resources.md#text-editor-resources), paste the following workflow content, and save it: +Open the file `~/qmk_keymap/.github/workflows/build.yml` with your favorite [text editor](newbs_learn_more_resources#text-editor-resources), paste the following workflow content, and save it: ```yml name: Build QMK firmware on: [push, workflow_dispatch] @@ -137,7 +145,9 @@ jobs: ``` Replace `username.json` with the JSON file name that was downloaded from [QMK Configurator](https://config.qmk.fm/#/) in the previous step. -!> Do note that the `build.yml` file requires ***proper indentation*** for every line. Incorrect spacing will trigger workflow syntax errors. +::: warning +Do note that the `build.yml` file requires ***proper indentation*** for every line. Incorrect spacing will trigger workflow syntax errors. +::: ### Commit files to GitHub @@ -162,7 +172,9 @@ git branch -M main git remote add origin https://github.com/gh-username/qmk_keymap.git git push -u origin main ``` -?> Use your GitHub personal access token at the password prompt. If you have setup SSH access, replace `https://github.com/gh-username/qmk_keymap.git` with `git@github.com:gh-username/qmk_keymap.git` in the remote origin command above. +::: tip +Use your GitHub personal access token at the password prompt. If you have setup SSH access, replace `https://github.com/gh-username/qmk_keymap.git` with `git@github.com:gh-username/qmk_keymap.git` in the remote origin command above. +::: ### Review workflow output @@ -173,12 +185,12 @@ Files committed to GitHub in the previous step will automatically trigger the wo 4. Successfully compiled firmware will be under the "**Artifacts**" section. 5. If there are build errors, review the job log for details. -Download and flash the firmware file into your keyboard using [QMK Toolbox](https://docs.qmk.fm/#/newbs_flashing?id=flashing-your-keyboard-with-qmk-toolbox). +Download and flash the firmware file into your keyboard using [QMK Toolbox](newbs_flashing#flashing-your-keyboard-with-qmk-toolbox). ## Customising your keymap -This setup and workflow relies on the QMK [Userspace](https://docs.qmk.fm/#/feature_userspace) feature. The build process will copy the QMK source codes and clone your repository into its `users/` folder in a container. You must adhere to the following guidelines when customising your keymaps: +This setup and workflow relies on the QMK [Userspace](feature_userspace) feature. The build process will copy the QMK source codes and clone your repository into its `users/` folder in a container. You must adhere to the following guidelines when customising your keymaps: * Keymap layout files must be retained in JSON format and cannot be converted to `keymap.c`. * User callback and functions (e.g. `process_record_user()`) can be placed in the `source.c` file. @@ -191,4 +203,6 @@ This setup and workflow relies on the QMK [Userspace](https://docs.qmk.fm/#/feat * Code changes will require Git commit into GitHub to trigger the build workflow. -?> See [GitHub Actions guide](https://docs.github.com/en/actions/learn-github-actions) to learn more about development workflow. +::: tip +See [GitHub Actions guide](https://docs.github.com/en/actions/learn-github-actions) to learn more about development workflow. +::: diff --git a/docs/newbs_external_userspace.md b/docs/newbs_external_userspace.md index 9bdf4b0b185..fdc998c37a3 100644 --- a/docs/newbs_external_userspace.md +++ b/docs/newbs_external_userspace.md @@ -4,21 +4,29 @@ QMK Firmware now officially supports storing user keymaps outside of the normal External Userspace mirrors the structure of the main QMK Firmware repository, but only contains the keymaps that you wish to build. You can still use `keyboards//keymaps/` to store your keymaps, or you can use the `layouts//` system as before -- they're just stored external to QMK Firmware. -The build system will still honor the use of `users/` if you rely on the traditional QMK Firmware [userspace feature](feature_userspace.md) -- it's now supported externally too, using the same location inside the External Userspace directory. +The build system will still honor the use of `users/` if you rely on the traditional QMK Firmware [userspace feature](feature_userspace) -- it's now supported externally too, using the same location inside the External Userspace directory. Additionally, there is first-class support for using GitHub Actions to build your keymaps, allowing you to automatically compile your keymaps whenever you push changes to your External Userspace repository. -!> External Userspace is new functionality and may have issues. Tighter integration with the `qmk` command will occur over time. +::: warning +External Userspace is new functionality and may have issues. Tighter integration with the `qmk` command will occur over time. +::: -?> Historical keymap.json and GitHub-based firmware build instructions can be found [here](newbs_building_firmware_workflow.md). This document supersedes those instructions, but they should still function correctly. +::: tip +Historical keymap.json and GitHub-based firmware build instructions can be found [here](newbs_building_firmware_workflow). This document supersedes those instructions, but they should still function correctly. +::: ## Setting up QMK Locally -If you wish to build on your local machine, you will need to set up QMK locally. This is a one-time process, and is documented in the [newbs setup guide](https://docs.qmk.fm/#/newbs). +If you wish to build on your local machine, you will need to set up QMK locally. This is a one-time process, and is documented in the [newbs setup guide](newbs). -!> If you wish to use any QMK CLI commands related to manipulating External Userspace definitions, you will currently need a copy of QMK Firmware as well. +::: warning +If you wish to use any QMK CLI commands related to manipulating External Userspace definitions, you will currently need a copy of QMK Firmware as well. +::: -!> Building locally has a much shorter turnaround time than waiting for GitHub Actions to complete. +::: warning +Building locally has a much shorter turnaround time than waiting for GitHub Actions to complete. +::: ## External Userspace Repository Setup (forked on GitHub) @@ -60,7 +68,9 @@ After creating your new keymap, building the keymap matches normal QMK usage: qmk compile -kb -km ``` -!> The `qmk config user.overlay_dir=...` command must have been run when cloning the External Userspace repository for this to work correctly. +::: warning +The `qmk config user.overlay_dir=...` command must have been run when cloning the External Userspace repository for this to work correctly. +::: ## Adding the keymap to External Userspace build targets diff --git a/docs/newbs_flashing.md b/docs/newbs_flashing.md index c5ba897e17a..eaa8032961a 100644 --- a/docs/newbs_flashing.md +++ b/docs/newbs_flashing.md @@ -31,7 +31,9 @@ The simplest way to flash your keyboard will be with the [QMK Toolbox](https://g However, the Toolbox is currently only available for Windows and macOS. If you're using Linux (or just wish to flash the firmware from the command line), skip to the [Flash your Keyboard from the Command Line](#flash-your-keyboard-from-the-command-line) section. -?> QMK Toolbox is not necessary for flashing [RP2040 devices](https://docs.qmk.fm/#/flashing?id=raspberry-pi-rp2040-uf2). +::: tip +QMK Toolbox is not necessary for flashing [RP2040 devices](flashing#raspberry-pi-rp2040-uf2). +::: ### Load the File into QMK Toolbox @@ -39,21 +41,21 @@ Begin by opening the QMK Toolbox application. You'll want to locate the firmware If you are on Windows or macOS, there are commands you can use to easily open the current folder in Explorer or Finder. - +::::tabs -#### ** Windows ** +=== Windows ``` start . ``` -#### ** macOS ** +=== macOS ``` open . ``` - +:::: The firmware file always follows this naming format: @@ -98,7 +100,7 @@ This has been made pretty simple compared to what it used to be. When you are re qmk flash -If you did not configure your keyboard/keymap name in the CLI according to the [Configure your build environment](newbs_getting_started.md) section, or you have multiple keyboards, you can specify the keyboard and keymap: +If you did not configure your keyboard/keymap name in the CLI according to the [Configure your build environment](newbs_getting_started) section, or you have multiple keyboards, you can specify the keyboard and keymap: qmk flash -kb -km @@ -108,9 +110,11 @@ However, this does rely on the bootloader being set by the keyboard. If this inf WARNING: This board's bootloader is not specified or is not supported by the ":flash" target at this time. -In this case, you'll have to fall back on specifying the bootloader. See the [Flashing Firmware](flashing.md) Guide for more details. +In this case, you'll have to fall back on specifying the bootloader. See the [Flashing Firmware](flashing) Guide for more details. -!> If your bootloader is not detected by `qmk flash`, try running `qmk doctor` for suggestions on how to fix common problems. +::: warning +If your bootloader is not detected by `qmk flash`, try running `qmk doctor` for suggestions on how to fix common problems. +::: ## Test It Out! diff --git a/docs/newbs_getting_started.md b/docs/newbs_getting_started.md index 68e37679b80..3a901ad7ad7 100644 --- a/docs/newbs_getting_started.md +++ b/docs/newbs_getting_started.md @@ -6,20 +6,22 @@ Before you can build keymaps, you need to install some software and set up your There are a few pieces of software you'll need to get started. -* [Text editor](newbs_learn_more_resources.md#text-editor-resources) +* [Text editor](newbs_learn_more_resources#text-editor-resources) * You’ll need a program that can edit and save plain text files. The default editor that comes with many OS's does not save plain text files, so you'll need to make sure that whatever editor you chose does. * [Toolbox (optional)](https://github.com/qmk/qmk_toolbox) * A graphical program for Windows and macOS that allows you to both program and debug your custom keyboard -?> If you haven't worked with the Linux/Unix command line before, there are a few basic concepts and commands you should learn. [These resources](newbs_learn_more_resources.md#command-line-resources) will teach you enough to be able to work with QMK. +::: tip +If you haven't worked with the Linux/Unix command line before, there are a few basic concepts and commands you should learn. [These resources](newbs_learn_more_resources#command-line-resources) will teach you enough to be able to work with QMK. +::: -## 2. Prepare Your Build Environment :id=set-up-your-environment +## 2. Prepare Your Build Environment {#set-up-your-environment} We've tried to make QMK as easy to set up as possible. You only have to prepare your Linux or Unix environment, then let QMK install the rest. - +:::::tabs -### ** Windows ** +==== Windows QMK maintains a Bundle of MSYS2, the CLI and all necessary dependencies. It also provides a handy `QMK MSYS` terminal shortcut to boot you directly into the correct environment. @@ -27,10 +29,11 @@ QMK maintains a Bundle of MSYS2, the CLI and all necessary dependencies. It also You will need to install [QMK MSYS](https://msys.qmk.fm/). The latest release is available [here](https://github.com/qmk/qmk_distro_msys/releases/latest). -
- Advanced Users +:::: details Advanced Users -!> This process is not recommended for new users. +::: danger +This process is not recommended for new users. +::: If you'd like to manually install MSYS2, the following sections will walk you through the process. @@ -38,17 +41,21 @@ If you'd like to manually install MSYS2, the following sections will walk you th You will need to install [MSYS2](https://www.msys2.org). Once installed, close any open MSYS terminals (purple icon) and open a new MinGW 64-bit terminal (blue icon) from the Start Menu. -!> **NOTE:** The MinGW 64-bit terminal is *not* the same as the MSYS terminal that opens when installation is completed. Your prompt should say "MINGW64" in purple text, rather than "MSYS". See [this page](https://www.msys2.org/wiki/MSYS2-introduction/#subsystems) for more information on the differences. +::: warning +**NOTE:** The MinGW 64-bit terminal is *not* the same as the MSYS terminal that opens when installation is completed. Your prompt should say "MINGW64" in purple text, rather than "MSYS". See [this page](https://www.msys2.org/wiki/MSYS2-introduction/#subsystems) for more information on the differences. +::: #### Installation Install the QMK CLI by running: - pacman --needed --noconfirm --disable-download-timeout -S git mingw-w64-x86_64-python-qmk +```sh +pacman --needed --noconfirm --disable-download-timeout -S git mingw-w64-x86_64-python-qmk +``` -
+:::: -### ** macOS ** +==== macOS QMK maintains a Homebrew tap and formula which will automatically install the CLI and all necessary dependencies. @@ -56,17 +63,23 @@ QMK maintains a Homebrew tap and formula which will automatically install the CL You will need to install Homebrew. Follow the instructions on https://brew.sh. -?> If you are using an Apple Silicon machine, the installation process will take significantly longer because GitHub actions do not have native runners to build binary packages for the ARM and AVR toolchains. +::: tip +If you are using an Apple Silicon machine, the installation process will take significantly longer because GitHub actions do not have native runners to build binary packages for the ARM and AVR toolchains. +::: #### Installation Install the QMK CLI by running: - brew install qmk/qmk/qmk - -### ** Linux/WSL ** +```sh +brew install qmk/qmk/qmk +``` -?> **Note for WSL users**: By default, the installation process will clone the QMK repository into your WSL home directory, but if you have cloned manually, ensure that it is located inside the WSL instance instead of the Windows filesystem (ie. not in `/mnt`), as accessing it is currently [extremely slow](https://github.com/microsoft/WSL/issues/4197). +==== Linux/WSL + +::: tip +**Note for WSL users**: By default, the installation process will clone the QMK repository into your WSL home directory, but if you have cloned manually, ensure that it is located inside the WSL instance instead of the Windows filesystem (ie. not in `/mnt`), as accessing it is currently [extremely slow](https://github.com/microsoft/WSL/issues/4197). +::: #### Prerequisites @@ -84,7 +97,9 @@ You will need to install Git and Python. It's very likely that you already have Install the QMK CLI by running: - python3 -m pip install --user qmk +```sh +python3 -m pip install --user qmk +``` #### Community Packages @@ -92,71 +107,90 @@ These packages are maintained by community members, so may not be up to date or On Arch-based distros you can install the CLI from the official repositories (NOTE: at the time of writing this package marks some dependencies as optional that should not be): - sudo pacman -S qmk +```sh +sudo pacman -S qmk +``` You can also try the `qmk-git` package from AUR: - yay -S qmk-git +```sh +yay -S qmk-git +``` -### ** FreeBSD ** +==== FreeBSD #### Installation Install the FreeBSD package for QMK CLI by running: - pkg install -g "py*-qmk" +```sh +pkg install -g "py*-qmk" +``` NOTE: remember to follow the instructions printed at the end of installation (use `pkg info -Dg "py*-qmk"` to show them again). - +::::: -## 3. Run QMK Setup :id=set-up-qmk +## 3. Run QMK Setup {#set-up-qmk} - +::::tabs -### ** Windows ** +=== Windows Open QMK MSYS and run the following command: - qmk setup +```sh +qmk setup +``` In most situations you will want to answer `y` to all of the prompts. -### ** macOS ** +=== macOS Open Terminal and run the following command: - qmk setup +```sh +qmk setup +``` In most situations you will want to answer `y` to all of the prompts. -### ** Linux/WSL ** +=== Linux/WSL Open your preferred terminal app and run the following command: - qmk setup +```sh +qmk setup +``` In most situations you will want to answer `y` to all of the prompts. -?>**Note on Debian, Ubuntu and their derivatives**: +::: info Note on Debian, Ubuntu and their derivatives: It's possible, that you will get an error saying something like: `bash: qmk: command not found`. This is due to a [bug](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=839155) Debian introduced with their Bash 4.4 release, which removed `$HOME/.local/bin` from the PATH. This bug was later fixed on Debian and Ubuntu. Sadly, Ubuntu reintroduced this bug and is [yet to fix it](https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1588562). Luckily, the fix is easy. Run this as your user: `echo 'PATH="$HOME/.local/bin:$PATH"' >> $HOME/.bashrc && source $HOME/.bashrc` +::: -### ** FreeBSD ** +=== FreeBSD Open your preferred terminal app and run the following command: - qmk setup +```sh +qmk setup +``` In most situations you will want to answer `y` to all of the prompts. - +:::: -?> The qmk home folder can be specified at setup with `qmk setup -H `, and modified afterwards using the [cli configuration](cli_configuration.md?id=single-key-example) and the variable `user.qmk_home`. For all available options run `qmk setup --help`. +::: tip +The qmk home folder can be specified at setup with `qmk setup -H `, and modified afterwards using the [cli configuration](cli_configuration#single-key-example) and the variable `user.qmk_home`. For all available options run `qmk setup --help`. +::: -?> If you already know how to use GitHub, [we recommend that you follow these instructions](getting_started_github.md) and use `qmk setup /qmk_firmware` to clone your personal fork. If you don't know what that means you can safely ignore this message. +::: tip +If you already know how to use GitHub, [we recommend that you follow these instructions](getting_started_github) and use `qmk setup /qmk_firmware` to clone your personal fork. If you don't know what that means you can safely ignore this message. +::: ## 4. Test Your Build Environment @@ -168,7 +202,9 @@ For example, to build a firmware for a Clueboard 66% you would use: qmk compile -kb clueboard/66/rev3 -km default -?> The keyboard option is the path relative to the keyboard directory, the above example would be found in `qmk_firmware/keyboards/clueboard/66/rev3`. If you're unsure you can view a full list of supported keyboards with `qmk list-keyboards`. +::: tip +The keyboard option is the path relative to the keyboard directory, the above example would be found in `qmk_firmware/keyboards/clueboard/66/rev3`. If you're unsure you can view a full list of supported keyboards with `qmk list-keyboards`. +::: When it is done you should have a lot of output that ends similar to this: @@ -182,4 +218,4 @@ Checking file size of clueboard_66_rev3_default.hex # Creating Your Keymap -You are now ready to create your own personal keymap! Move on to [Building Your First Firmware](newbs_building_firmware.md) for that. +You are now ready to create your own personal keymap! Move on to [Building Your First Firmware](newbs_building_firmware) for that. diff --git a/docs/newbs_git_best_practices.md b/docs/newbs_git_best_practices.md index c0cb3a29449..31ccfc8d67a 100644 --- a/docs/newbs_git_best_practices.md +++ b/docs/newbs_git_best_practices.md @@ -6,11 +6,11 @@ This section aims to instruct novices in the best ways to have a smooth experien This section assumes a few things: -1. You have a GitHub account, and have [forked the qmk_firmware repository](getting_started_github.md) to your account. -2. You've set up both [your build environment](newbs_getting_started.md#set-up-your-environment) and [QMK](newbs_getting_started.md#set-up-qmk). +1. You have a GitHub account, and have [forked the qmk_firmware repository](getting_started_github) to your account. +2. You've set up both [your build environment](newbs_getting_started#set-up-your-environment) and [QMK](newbs_getting_started#set-up-qmk). --- -- Part 1: [Your Fork's Master: Update Often, Commit Never](newbs_git_using_your_master_branch.md) -- Part 2: [Resolving Merge Conflicts](newbs_git_resolving_merge_conflicts.md) -- Part 3: [Resynchronizing an Out-of-Sync Git Branch](newbs_git_resynchronize_a_branch.md) +- Part 1: [Your Fork's Master: Update Often, Commit Never](newbs_git_using_your_master_branch) +- Part 2: [Resolving Merge Conflicts](newbs_git_resolving_merge_conflicts) +- Part 3: [Resynchronizing an Out-of-Sync Git Branch](newbs_git_resynchronize_a_branch) diff --git a/docs/newbs_git_resolving_merge_conflicts.md b/docs/newbs_git_resolving_merge_conflicts.md index 467c13abba9..b94bc07942c 100644 --- a/docs/newbs_git_resolving_merge_conflicts.md +++ b/docs/newbs_git_resolving_merge_conflicts.md @@ -2,7 +2,9 @@ Sometimes when your work in a branch takes a long time to complete, changes that have been made by others conflict with changes you have made to your branch when you open a pull request. This is called a *merge conflict*, and is what happens when multiple people edit the same parts of the same files. -?> This document builds upon the concepts detailed in [Your Fork's Master: Update Often, Commit Never](newbs_git_using_your_master_branch.md). If you are not familiar with that document, please read it first, then return here. +::: tip +This document builds upon the concepts detailed in [Your Fork's Master: Update Often, Commit Never](newbs_git_using_your_master_branch). If you are not familiar with that document, please read it first, then return here. +::: ## Rebasing Your Changes diff --git a/docs/newbs_git_resynchronize_a_branch.md b/docs/newbs_git_resynchronize_a_branch.md index b15c6cf7a85..4182cf60562 100644 --- a/docs/newbs_git_resynchronize_a_branch.md +++ b/docs/newbs_git_resynchronize_a_branch.md @@ -2,7 +2,9 @@ Suppose you have committed to your `master` branch, and now need to update your QMK repository. You could `git pull` QMK's `master` branch into your own, but GitHub will tell you that your branch is a number of commits ahead of `qmk:master`, which can create issues if you want to make a pull request to QMK. -?> This document builds upon the concepts detailed in [Your Fork's Master: Update Often, Commit Never](newbs_git_using_your_master_branch.md). If you are not familiar with that document, please read it first, then return here. +::: tip +This document builds upon the concepts detailed in [Your Fork's Master: Update Often, Commit Never](newbs_git_using_your_master_branch). If you are not familiar with that document, please read it first, then return here. +::: ## Backing Up the Changes on Your Own Master Branch (Optional) @@ -66,6 +68,8 @@ These steps will update the repository on your computer, but your GitHub fork wi git push --recurse-submodules=on-demand --force-with-lease ``` -!> **DO NOT** run `git push --recurse-submodules=on-demand --force-with-lease` on a fork to which other users post commits. This will erase their commits. +::: warning +**DO NOT** run `git push --recurse-submodules=on-demand --force-with-lease` on a fork to which other users post commits. This will erase their commits. +::: -Now your GitHub fork, your local files, and QMK's repository are all the same. From here you can make further needed changes ([use a branch!](newbs_git_using_your_master_branch.md#making-changes)) and post them as normal. +Now your GitHub fork, your local files, and QMK's repository are all the same. From here you can make further needed changes ([use a branch!](newbs_git_using_your_master_branch#making-changes)) and post them as normal. diff --git a/docs/newbs_git_using_your_master_branch.md b/docs/newbs_git_using_your_master_branch.md index c27323f5515..da9aeed03c2 100644 --- a/docs/newbs_git_using_your_master_branch.md +++ b/docs/newbs_git_using_your_master_branch.md @@ -12,7 +12,9 @@ To keep your `master` branch updated, it is recommended to add the QMK Firmware git remote add upstream https://github.com/qmk/qmk_firmware.git ``` -?> The name `upstream` is arbitrary, but a common convention; you can give the QMK remote any name that suits you. Git's `remote` command uses the syntax `git remote add `, `` being shorthand for the remote repo. This name can be used with many Git commands, including but not limited to `fetch`, `pull` and `push`, to specify the remote repo on which to act. +::: tip +The name `upstream` is arbitrary, but a common convention; you can give the QMK remote any name that suits you. Git's `remote` command uses the syntax `git remote add `, `` being shorthand for the remote repo. This name can be used with many Git commands, including but not limited to `fetch`, `pull` and `push`, to specify the remote repo on which to act. +::: To verify that the repository has been added, run `git remote -v`, which should return the following: @@ -37,7 +39,7 @@ git push origin master This switches you to your `master` branch, retrieves the refs from the QMK repo, downloads the current QMK `master` branch to your computer, and then uploads it to your fork. -## Making Changes :id=making-changes +## Making Changes {#making-changes} To make changes, create a new branch by entering: @@ -48,7 +50,9 @@ git push --set-upstream origin dev_branch This creates a new branch named `dev_branch`, checks it out, and then saves the new branch to your fork. The `--set-upstream` argument tells git to use your fork and the `dev_branch` branch every time you use `git push` or `git pull` from this branch. It only needs to be used on the first push; after that, you can safely use `git push` or `git pull`, without the rest of the arguments. -?> With `git push`, you can use `-u` in place of `--set-upstream` — `-u` is an alias for `--set-upstream`. +::: tip +With `git push`, you can use `-u` in place of `--set-upstream` — `-u` is an alias for `--set-upstream`. +::: You can name your branch nearly anything you want, though it is recommended to name it something related to the changes you are going to make. @@ -67,7 +71,9 @@ git commit -m "My commit message." `git add` adds files that have been changed to Git's *staging area*, which is Git's "loading zone." This contains the changes that are going to be *committed* by `git commit`, which saves the changes to the repo. Use descriptive commit messages so you can know what was changed at a glance. -?> If you've changed multiple files, you can use `git add -- path/to/file1 path/to/file2 ...` to add all your desired files. +::: tip +If you've changed multiple files, you can use `git add -- path/to/file1 path/to/file2 ...` to add all your desired files. +::: ## Publishing Your Changes diff --git a/docs/newbs_testing_debugging.md b/docs/newbs_testing_debugging.md index c3550489e5c..aa81bdd5688 100644 --- a/docs/newbs_testing_debugging.md +++ b/docs/newbs_testing_debugging.md @@ -2,8 +2,8 @@ ## Testing -[Moved here](faq_misc.md#testing) +[Moved here](faq_misc#testing) -## Debugging :id=debugging +## Debugging {#debugging} -[Moved here](faq_debug.md#debugging) +[Moved here](faq_debug#debugging) diff --git a/docs/one_shot_keys.md b/docs/one_shot_keys.md index 515830ea324..140c8de4754 100644 --- a/docs/one_shot_keys.md +++ b/docs/one_shot_keys.md @@ -15,7 +15,7 @@ You can control the behavior of one shot keys by defining these in `config.h`: #define ONESHOT_TIMEOUT 5000 /* Time (in ms) before the one shot key is released */ ``` -* `OSM(mod)` - Momentarily hold down *mod*. You must use the `MOD_*` keycodes as shown in [Mod Tap](mod_tap.md), not the `KC_*` codes. +* `OSM(mod)` - Momentarily hold down *mod*. You must use the `MOD_*` keycodes as shown in [Mod Tap](mod_tap), not the `KC_*` codes. * `OSL(layer)` - momentary switch to *layer*. * `OS_ON` - Turns on One Shot keys. * `OS_OFF` - Turns off One Shot keys. OSM act as regular mod keys, OSL act like `MO`. @@ -27,7 +27,9 @@ For one shot layers, you need to call `set_oneshot_layer(LAYER, ONESHOT_START)` For one shot mods, you need to call `set_oneshot_mods(MOD_BIT(KC_*))` to set it, or `clear_oneshot_mods()` to cancel it. -!> If you're having issues with OSM translating over Remote Desktop Connection, this can be fixed by opening the settings, going to the "Local Resources" tab, and in the keyboard section, change the drop down to "On this Computer". This will fix the issue and allow OSM to function properly over Remote Desktop. +::: warning +If you're having issues with OSM translating over Remote Desktop Connection, this can be fixed by opening the settings, going to the "Local Resources" tab, and in the keyboard section, change the drop down to "On this Computer". This will fix the issue and allow OSM to function properly over Remote Desktop. +::: ## Callbacks diff --git a/docs/other_eclipse.md b/docs/other_eclipse.md index de8cdf9b8c9..5a0228efce4 100644 --- a/docs/other_eclipse.md +++ b/docs/other_eclipse.md @@ -17,7 +17,7 @@ Note that this set-up has been tested on Ubuntu 16.04 only for the moment. # Prerequisites ## Build Environment -Before starting, you must have followed the [Getting Started](newbs_getting_started.md) section of the Tutorial. In particular, you must have been able to build the firmware with [the `qmk compile` command](newbs_building_firmware.md#build-your-firmware). +Before starting, you must have followed the [Getting Started](newbs_getting_started) section of the Tutorial. In particular, you must have been able to build the firmware with [the `qmk compile` command](newbs_building_firmware#build-your-firmware). ## Java Eclipse is a Java application, so you will need to install Java 8 or more recent to be able to run it. You may choose between the JRE or the JDK, the latter being useful if you intend to do Java development. diff --git a/docs/other_vscode.md b/docs/other_vscode.md index 4c71a0eb1c6..31208d8f3bf 100644 --- a/docs/other_vscode.md +++ b/docs/other_vscode.md @@ -15,7 +15,7 @@ The purpose of this page is to document how to set up VS Code for developing QMK This guide covers how to configure everything needed on Windows and Ubuntu 18.04 # Set up VS Code -Before starting, you will want to make sure that you have all of the build tools set up, and QMK Firmware cloned. Head to the [Newbs Getting Started Guide](newbs_getting_started.md) to get things set up, if you haven't already. +Before starting, you will want to make sure that you have all of the build tools set up, and QMK Firmware cloned. Head to the [Newbs Getting Started Guide](newbs_getting_started) to get things set up, if you haven't already. ## Windows @@ -73,7 +73,9 @@ Now, we will set up the MSYS2 window to show up in VSCode as the integrated term If there are settings here already, then just add everything between the first and last curly brackets and separate the existing settings with a comma from the newly added ones. -?> If you installed MSYS2 to a different folder, then you'll need to change the path for `terminal.integrated.shell.windows` to the correct path for your system. +::: tip +If you installed MSYS2 to a different folder, then you'll need to change the path for `terminal.integrated.shell.windows` to the correct path for your system. +::: 4. Hit Ctrl-` (Grave) to bring up the terminal or go to View > Terminal (command `workbench.action.terminal.toggleTerminal`). A new terminal will be opened if there isn‘t one already. @@ -171,7 +173,9 @@ You'll need to perform some modifications to the file above in order to target y * `"device"`: The name of the MCU, which matches the `` tag at the top of the downloaded `svd` file. * `"armToolchainPath"`: _[Optional]_ The path to the ARM toolchain installation location on Windows -- under normal circumstances Linux/macOS will auto-detect this correctly and will not need to be specified. -!> Windows builds of QMK Firmware are generally compiled using QMK MSYS, and the path to gdb's location (`C:\\QMK_MSYS\\mingw64\\bin`) needs to be specified under `armToolchainPath` for it to be detected. You may also need to change the GDB path to point at `C:\\QMK_MSYS\\mingw64\\bin\\gdb-multiarch.exe` in the VSCode Cortex-Debug user settings: ![VSCode Settings](https://i.imgur.com/EGrPM1L.png) +::: warning +Windows builds of QMK Firmware are generally compiled using QMK MSYS, and the path to gdb's location (`C:\\QMK_MSYS\\mingw64\\bin`) needs to be specified under `armToolchainPath` for it to be detected. You may also need to change the GDB path to point at `C:\\QMK_MSYS\\mingw64\\bin\\gdb-multiarch.exe` in the VSCode Cortex-Debug user settings: ![VSCode Settings](https://i.imgur.com/EGrPM1L.png) +::: Optionally, the following modifications should also be made to the keyboard's `rules.mk` file to disable optimisations -- not strictly required but will ensure breakpoints and variable viewing works correctly: ```makefile diff --git a/docs/platformdev_chibios_earlyinit.md b/docs/platformdev_chibios_earlyinit.md index bc492472227..66b8ee4655d 100644 --- a/docs/platformdev_chibios_earlyinit.md +++ b/docs/platformdev_chibios_earlyinit.md @@ -1,4 +1,4 @@ -# Arm/ChibiOS Early Initialization :id=chibios-early-init +# Arm/ChibiOS Early Initialization {#chibios-early-init} This page describes a part of QMK that is a somewhat advanced concept, and is only relevant to keyboard designers. @@ -6,7 +6,7 @@ QMK uses ChibiOS as the underlying layer to support a multitude of Arm-based dev Older QMK revisions required duplication of these board definitions inside your keyboard's directory in order to override such early initialization points; this is now abstracted into the following APIs, and allows usage of the board definitions supplied with ChibiOS itself. Check `/lib/chibios/os/hal/boards` for the list of official definitions. If your keyboard needs extra initialization at a very early stage, consider providing keyboard-level overrides of the following APIs instead of duplicating the board definitions: -## `early_hardware_init_pre()` :id=early-hardware-init-pre +## `early_hardware_init_pre()` {#early-hardware-init-pre} The function `early_hardware_init_pre` is the earliest possible code that can be executed by a keyboard firmware. This is intended as a replacement for the ChibiOS board definition's `__early_init` function, and is the equivalent of executing at the start of the function. @@ -32,7 +32,7 @@ void early_hardware_init_pre(void) { } ``` -## `early_hardware_init_post()` :id=early-hardware-init-post +## `early_hardware_init_post()` {#early-hardware-init-post} The function `early_hardware_init_post` is the next earliest possible code that can be executed by a keyboard firmware. This is executed after RAM has been cleared, and clocks and GPIOs are configured. This is intended as a replacement for the ChibiOS board definition's `__early_init` function, and is the equivalent of executing at the end of the function. @@ -48,7 +48,7 @@ void early_hardware_init_post(void) { } ``` -## `board_init()` :id=board-init +## `board_init()` {#board-init} The function `board_init` is executed directly after the ChibiOS initialization routines have completed. At this stage, all normal low-level functionality should be available for use (including timers and delays), with the restriction that USB is not yet connected. This is intended as a replacement for the ChibiOS board definition's `boardInit` function. diff --git a/docs/platformdev_rp2040.md b/docs/platformdev_rp2040.md index 593a8198eb1..f0b006cf6ee 100644 --- a/docs/platformdev_rp2040.md +++ b/docs/platformdev_rp2040.md @@ -4,23 +4,25 @@ The following table shows the current driver status for peripherals on RP2040 MC | System | Support | | ---------------------------------------------------------------- | ---------------------------------------------- | -| [ADC driver](adc_driver.md) | :heavy_check_mark: | -| [Audio](audio_driver.md#pwm-hardware) | :heavy_check_mark: | -| [Backlight](feature_backlight.md) | :heavy_check_mark: | -| [I2C driver](i2c_driver.md) | :heavy_check_mark: | -| [SPI driver](spi_driver.md) | :heavy_check_mark: | -| [WS2812 driver](ws2812_driver.md) | :heavy_check_mark: using `PIO` driver | -| [External EEPROMs](eeprom_driver.md) | :heavy_check_mark: using `I2C` or `SPI` driver | -| [EEPROM emulation](eeprom_driver.md#wear_leveling-configuration) | :heavy_check_mark: | -| [serial driver](serial_driver.md) | :heavy_check_mark: using `SIO` or `PIO` driver | -| [UART driver](uart_driver.md) | :heavy_check_mark: using `SIO` driver | +| [ADC driver](adc_driver) | :heavy_check_mark: | +| [Audio](audio_driver#pwm-hardware) | :heavy_check_mark: | +| [Backlight](feature_backlight) | :heavy_check_mark: | +| [I2C driver](i2c_driver) | :heavy_check_mark: | +| [SPI driver](spi_driver) | :heavy_check_mark: | +| [WS2812 driver](ws2812_driver) | :heavy_check_mark: using `PIO` driver | +| [External EEPROMs](eeprom_driver) | :heavy_check_mark: using `I2C` or `SPI` driver | +| [EEPROM emulation](eeprom_driver#wear_leveling-configuration) | :heavy_check_mark: | +| [serial driver](serial_driver) | :heavy_check_mark: using `SIO` or `PIO` driver | +| [UART driver](uart_driver) | :heavy_check_mark: using `SIO` driver | ## GPIO Raspberry Pi Pico pinout Sparkfun RP2040 Pro Micro pinout -!> The GPIO pins of the RP2040 are not 5V tolerant! +::: warning +The GPIO pins of the RP2040 are not 5V tolerant! +::: ### Pin nomenclature @@ -41,7 +43,7 @@ QMK RP2040 support builds upon ChibiOS and thus follows their convention for act | `I2C0` | `RP_I2C_USE_I2C0` | `I2CD0` | | `I2C1` | `RP_I2C_USE_I2C1` | `I2CD1` | -To configure the I2C driver please read the [ChibiOS/ARM](i2c_driver.md#arm-configuration) section. +To configure the I2C driver please read the [ChibiOS/ARM](i2c_driver#arm-configuration) section. ### SPI Driver @@ -50,7 +52,7 @@ To configure the I2C driver please read the [ChibiOS/ARM](i2c_driver.md#arm-conf | `SPI0` | `RP_SPI_USE_SPI0` | `SPID0` | | `SPI1` | `RP_SPI_USE_SPI1` | `SPID1` | -To configure the SPI driver please read the [ChibiOS/ARM](spi_driver.md#chibiosarm-configuration) section. +To configure the SPI driver please read the [ChibiOS/ARM](spi_driver#chibiosarm-configuration) section. ### UART Driver @@ -59,7 +61,7 @@ To configure the SPI driver please read the [ChibiOS/ARM](spi_driver.md#chibiosa | `UART0` | `RP_SIO_USE_UART0` | `SIOD0` | | `UART1` | `RP_SIO_USE_UART1` | `SIOD1` | -## Double-tap reset boot-loader entry :id=double-tap +## Double-tap reset boot-loader entry {#double-tap} The double-tap reset mechanism is an alternate way in QMK to enter the embedded mass storage UF2 boot-loader of the RP2040. It enables bootloader entry by a fast double-tap of the reset pin on start up, which is similar to the behavior of AVR Pro Micros. This feature activated by default for the Pro Micro RP2040 board, but has to be configured for other boards. To activate it, add the following options to your keyboards `config.h` file: @@ -90,7 +92,7 @@ This is the default board that is chosen, unless any other RP2040 board is selec | `SPI_MISO_PIN` | `GP20` | | `SPI_MOSI_PIN` | `GP19` | | **Serial driver** | | -| `SERIAL_USART_DRIVER` ([SIO Driver](serial_driver.md#the-sio-driver) only) | `SIOD0` | +| `SERIAL_USART_DRIVER` ([SIO Driver](serial_driver#the-sio-driver) only) | `SIOD0` | | `SOFT_SERIAL_PIN` | undefined, use `SERIAL_USART_TX_PIN` | | `SERIAL_USART_TX_PIN` | `GP0` | | `SERIAL_USART_RX_PIN` | `GP1` | @@ -99,7 +101,9 @@ This is the default board that is chosen, unless any other RP2040 board is selec | `UART_TX_PIN` | `GP0` | | `UART_RX_PIN` | `GP1` | -?> The pin-outs of Adafruit's KB2040 and Boardsource's Blok both deviate from the Sparkfun Pro Micro RP2040. Lookup the pin-out of these boards and adjust your keyboards pin definition accordingly if you want to use these boards. +::: tip +The pin-outs of Adafruit's KB2040 and Boardsource's Blok both deviate from the Sparkfun Pro Micro RP2040. Lookup the pin-out of these boards and adjust your keyboards pin definition accordingly if you want to use these boards. +::: ### Generic RP2040 board @@ -111,9 +115,9 @@ BOARD = GENERIC_RP_RP2040 ## Split keyboard support -Split keyboards are fully supported using the [serial driver](serial_driver.md) in both full-duplex and half-duplex configurations. Two driver subsystems are supported by the RP2040, the hardware UART based `SIO` and the Programmable IO based `PIO` driver. +Split keyboards are fully supported using the [serial driver](serial_driver) in both full-duplex and half-duplex configurations. Two driver subsystems are supported by the RP2040, the hardware UART based `SIO` and the Programmable IO based `PIO` driver. -| Feature | [SIO Driver](serial_driver.md#the-sio-driver) | [PIO Driver](serial_driver.md#the-pio-driver) | +| Feature | [SIO Driver](serial_driver#the-sio-driver) | [PIO Driver](serial_driver#the-pio-driver) | | ----------------------------- | --------------------------------------------- | --------------------------------------------- | | Half-Duplex operation | | :heavy_check_mark: | | Full-Duplex operation | :heavy_check_mark: | :heavy_check_mark: | @@ -136,7 +140,7 @@ As the RP2040 does not have any internal flash memory it depends on an external | IS25LP080 | `#define RP2040_FLASH_IS25LP080` | | Generic 03H flash | `#define RP2040_FLASH_GENERIC_03H` | -## RP2040 Community Edition :id=rp2040_ce +## RP2040 Community Edition {#rp2040_ce} The "RP2040 Community Edition" standard is a pinout that was defined by a committee of designers on the BastardKB Discord server. diff --git a/docs/platformdev_selecting_arm_mcu.md b/docs/platformdev_selecting_arm_mcu.md index c115aa6e0fd..95a88536ec3 100644 --- a/docs/platformdev_selecting_arm_mcu.md +++ b/docs/platformdev_selecting_arm_mcu.md @@ -1,4 +1,4 @@ -# Choosing an Arm MCU :id=choose-arm-mcu +# Choosing an Arm MCU {#choose-arm-mcu} This page outlines the selection criteria to ensure compatibility with Arm/ChibiOS. @@ -8,7 +8,7 @@ Adding support for new MCU families must go through ChibiOS or ChibiOS-Contrib - To be clear: this also includes commercial boards -- unless agreed upon by all parties, QMK will not take over maintenance of a bespoke MCU support package. Even if MCU support is upstreamed into ChibiOS/ChibiOS-Contrib, QMK reserves the right to deprecate and/or remove keyboards utilising support packages that aren't kept up to date with upstream ChibiOS itself. -## Selecting an already-supported MCU :id=selecting-already-supported-mcu +## Selecting an already-supported MCU {#selecting-already-supported-mcu} ### STM32 families @@ -43,16 +43,16 @@ ChibiOS does have support for a handful of non-STM32 devices, and the list can b Do note that there are sometimes licensing restrictions with respect to redistribution. As an example, binaries built for nRF5 are not able to be redistributed via QMK Configurator, due to the licensing of their board support package. -## Adding support for a new STM32 MCU (for an existing family) :id=add-new-stm32-mcu +## Adding support for a new STM32 MCU (for an existing family) {#add-new-stm32-mcu} Usually, one can "masquerade" as an existing MCU of the same family, especially if the only difference is RAM or Flash size. As an example, some MCUs within the same family are virtually identical, with the exception of adding a cryptographic peripheral -- STM32L072 vs. STM32L082 for instance. Given the unlikely use of the cryptographic peripheral, L082 chips can actually run as if they're an L072, and can be targeted accordingly. Adding proper support for new MCUs within an existing STM32 family should ideally be upstreamed to ChibiOS. In general, this will require modifications of the `stm32_registry.h` file, providing correct responses for the same `#define`s provided for the other MCUs in that family. -## Adding support for a new STM32 Family :id=add-new-stm32-family +## Adding support for a new STM32 Family {#add-new-stm32-family} If this is a requirement, this needs to go through upstream ChibiOS before QMK would consider accepting boards targeting the new family. More information for porting should be sought by approaching ChibiOS directly, rather than through QMK. -## Adding support for a new MCU Family :id=add-new-mcu-family +## Adding support for a new MCU Family {#add-new-mcu-family} As stated earlier, in order for a new MCU family to be supported by QMK, it needs to be upstreamed into ChibiOS-Contrib before QMK will consider accepting boards using it. The same principle applies for development -- you're best approaching the ChibiOS-Contrib maintainers to get a bit more of an idea on what's involved with upstreaming your contribution. diff --git a/docs/porting_your_keyboard_to_qmk.md b/docs/porting_your_keyboard_to_qmk.md index b0213a6d700..c91e5ca31df 100644 --- a/docs/porting_your_keyboard_to_qmk.md +++ b/docs/porting_your_keyboard_to_qmk.md @@ -1,8 +1,8 @@ # Adding Your Keyboard to QMK -This page describes the support for [Compatible Microcontrollers](compatible_microcontrollers.md) in QMK. +This page describes the support for [Compatible Microcontrollers](compatible_microcontrollers) in QMK. -If you have not yet you should read the [Keyboard Guidelines](hardware_keyboard_guidelines.md) to get a sense of how keyboards fit into QMK. +If you have not yet you should read the [Keyboard Guidelines](hardware_keyboard_guidelines) to get a sense of how keyboards fit into QMK. QMK has a number of features to simplify working with keyboards. For most, you don't have to write a single line of code. To get started, run `qmk new-keyboard`: @@ -13,7 +13,7 @@ $ qmk new-keyboard Name Your Keyboard Project For more infomation, see: -https://docs.qmk.fm/#/hardware_keyboard_guidelines?id=naming-your-keyboardproject +https://docs.qmk.fm/hardware_keyboard_guidelines#naming-your-keyboardproject keyboard Name? mycoolkeeb @@ -56,11 +56,11 @@ This will create all the files needed to support your new keyboard, and populate ## `readme.md` -This is where you'll describe your keyboard. Please follow the [Keyboard Readme Template](documentation_templates.md#keyboard-readmemd-template) when writing your `readme.md`. You're encouraged to place an image at the top of your `readme.md`, please use an external service such as [Imgur](https://imgur.com) to host the images. +This is where you'll describe your keyboard. Please follow the [Keyboard Readme Template](documentation_templates#keyboard-readmemd-template) when writing your `readme.md`. You're encouraged to place an image at the top of your `readme.md`, please use an external service such as [Imgur](https://imgur.com) to host the images. ## `info.json` -The `info.json` file is where you configure the hardware and feature set for your keyboard. There are a lot of options that can be placed in that file, too many to list here. For a complete overview of available options see the [Data Driven Configuration Options](reference_info_json.md) page. +The `info.json` file is where you configure the hardware and feature set for your keyboard. There are a lot of options that can be placed in that file, too many to list here. For a complete overview of available options see the [Data Driven Configuration Options](reference_info_json) page. ### Hardware Configuration @@ -78,7 +78,9 @@ Do change the `manufacturer` and `keyboard_name` lines to accurately reflect you }, ``` -?> Windows and macOS will display the `manufacturer` and `keyboard_name` in the list of USB devices. `lsusb` on Linux instead prefers the values in the list maintained by the [USB ID Repository](http://www.linux-usb.org/usb-ids.html). By default, it will only use `manufacturer` and `keyboard_name` if the list does not contain that `usb.vid` / `usb.pid`. `sudo lsusb -v` will show the values reported by the device, and they are also present in kernel logs after plugging it in. +::: tip +Windows and macOS will display the `manufacturer` and `keyboard_name` in the list of USB devices. `lsusb` on Linux instead prefers the values in the list maintained by the [USB ID Repository](http://www.linux-usb.org/usb-ids.html). By default, it will only use `manufacturer` and `keyboard_name` if the list does not contain that `usb.vid` / `usb.pid`. `sudo lsusb -v` will show the values reported by the device, and they are also present in kernel logs after plugging it in. +::: ### Matrix Configuration @@ -147,18 +149,20 @@ Next is configuring Layout Macro(s). These define the physical arrangement of ke In the above example, * `LAYOUT_ortho_4x4` defines the name of the layout macro - * It must conform to the [layout guidelines](hardware_keyboard_guidelines.md#ltkeyboard_namehgt) + * It must conform to the [layout guidelines](hardware_keyboard_guidelines#ltkeyboard_namehgt) * `"matrix": [0, 0]` defines the electrical position -?> See also: [Split Keyboard Layout Macro](https://docs.qmk.fm/#/feature_split_keyboard?id=layout-macro) and [Matrix to Physical Layout](https://docs.qmk.fm/#/understanding_qmk?id=matrix-to-physical-layout-map). +::: tip +See also: [Split Keyboard Layout Macro](feature_split_keyboard#layout-macro) and [Matrix to Physical Layout](understanding_qmk#matrix-to-physical-layout-map). +::: ## Additional Configuration -There are a lot of features that can be turned on or off, configured or tuned. Some of these have yet to be migrated over to [Data Driven Configuration](data_driven_config.md). The following sections cover the process for when an `info.json` option is unavailable. +There are a lot of features that can be turned on or off, configured or tuned. Some of these have yet to be migrated over to [Data Driven Configuration](data_driven_config). The following sections cover the process for when an `info.json` option is unavailable. ### Configuration Options -For available options for `config.h`, you should see the [Config Options](config_options.md#the-configh-file) page for more details. +For available options for `config.h`, you should see the [Config Options](config_options#the-configh-file) page for more details. ### Build Options -For available options for `rules.mk`, see the [Config Options](config_options.md#feature-options) page for a detailed list and description. +For available options for `rules.mk`, see the [Config Options](config_options#feature-options) page for a detailed list and description. diff --git a/docs/pr_checklist.md b/docs/pr_checklist.md index 94ff7eed665..e5ed1d67b66 100644 --- a/docs/pr_checklist.md +++ b/docs/pr_checklist.md @@ -8,7 +8,7 @@ If there are any inconsistencies with these recommendations, you're best off [cr - PR should be submitted using a non-`master` branch on the source repository - this does not mean you target a different branch for your PR, rather that you're not working out of your own master branch - - if submitter _does_ use their own `master` branch, they'll be given a link to the ["how to git"](newbs_git_using_your_master_branch.md) page after merging -- (end of this document will contain the contents of the message) + - if submitter _does_ use their own `master` branch, they'll be given a link to the ["how to git"](newbs_git_using_your_master_branch) page after merging -- (end of this document will contain the contents of the message) - Note, frequently merging upstream with your branch is not needed and is discouraged. Valid reason for updating your branch may be resolving merge conflicts and pulling in new changes relevant to your PR. - PRs should contain the smallest amount of modifications required for a single change to the codebase - multiple keyboards at the same time is not acceptable @@ -40,7 +40,9 @@ If there are any inconsistencies with these recommendations, you're best off [cr ## Keymap PRs -!> Note that personal keymap submissions will no longer be accepted. This section applies to manufacturer-supported keymaps. Please see this [issue](https://github.com/qmk/qmk_firmware/issues/22724) for more information. +::: warning +Note that personal keymap submissions will no longer be accepted. This section applies to manufacturer-supported keymaps. Please see this [issue](https://github.com/qmk/qmk_firmware/issues/22724) for more information. +::: - PRs for vendor specific keymaps will be permitted. The naming convention for these should be `default_${vendor}`, `via_${vendor}` i.e. `via_clueboard`. - vendor specific keymaps do not necessarily need to be "vanilla" and can be more richly featured than `default` or `via` stock keymaps. @@ -59,7 +61,7 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard - keyboard updates and refactors (eg. to data driven) *must* go through `develop` to reduce `master` -> `develop` merge conflicts - PR submissions from a `kbfirmware` export (or equivalent) will not be accepted unless converted to new QMK standards -- try `qmk import-kbfirmware` first - `info.json` - - With the move to [data driven](https://docs.qmk.fm/#/data_driven_config) keyboard configuration, we encourage contributors to utilise as many features as possible of the info.json [schema](https://github.com/qmk/qmk_firmware/blob/master/data/schemas/keyboard.jsonschema). + - With the move to [data driven](data_driven_config) keyboard configuration, we encourage contributors to utilise as many features as possible of the info.json [schema](https://github.com/qmk/qmk_firmware/blob/master/data/schemas/keyboard.jsonschema). - the mandatory elements for a minimally complete `info.json` at present are: - valid URL - valid maintainer @@ -86,7 +88,7 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard - RGB Matrix Configuration - Run `qmk format-json` on this file before submitting your PR. Be sure to append the `-i` flag to directly modify the file, or paste the outputted code into the file. - `readme.md` - - must follow the [template](https://github.com/qmk/qmk_firmware/blob/master/data/templates/keyboard/readme.md) + - must follow the [template](https://github.com/qmk/qmk_firmware/blob/master/data/templates/keyboard/readme) - flash command is present, and has `:flash` at end - valid hardware availability link (unless handwired) -- private groupbuys are okay, but one-off prototypes will be questioned. If open-source, a link to files should be provided. - clear instructions on how to reset the board into bootloader mode @@ -122,9 +124,9 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard - `.c` - empty `xxxx_xxxx_kb()`, `xxxx_xxxx_user()`, or other weak-defined default implemented functions removed - commented-out functions removed too - - `matrix_init_board()` etc. migrated to `keyboard_pre_init_kb()`, see: [keyboard_pre_init*](custom_quantum_functions.md?id=keyboard_pre_init_-function-documentation) - - prefer `CUSTOM_MATRIX = lite` if custom matrix used, allows for standard debounce, see [custom matrix 'lite'](custom_matrix.md?id=lite) - - prefer LED indicator [Configuration Options](feature_led_indicators.md?id=configuration-options) to custom `led_update_*()` implementations where possible + - `matrix_init_board()` etc. migrated to `keyboard_pre_init_kb()`, see: [keyboard_pre_init*](custom_quantum_functions#keyboard_pre_init_-function-documentation) + - prefer `CUSTOM_MATRIX = lite` if custom matrix used, allows for standard debounce, see [custom matrix 'lite'](custom_matrix#lite) + - prefer LED indicator [Configuration Options](feature_led_indicators#configuration-options) to custom `led_update_*()` implementations where possible - hardware that's enabled at the keyboard level and requires configuration such as OLED displays or encoders should have basic functionality implemented here - `.h` - `#include "quantum.h"` appears at the top @@ -133,12 +135,12 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard - no duplication of `rules.mk` or `config.h` from keyboard - `keymaps/default/keymap.c` - `QMKBEST`/`QMKURL` example macros removed - - if using `MO(1)` and `MO(2)` keycodes together to access a third layer, the [Tri Layer](https://docs.qmk.fm/#/feature_tri_layer) feature should be used, rather than manually implementing this using `layer_on/off()` and `update_tri_layer()` functions in the keymap's `process_record_user()`. + - if using `MO(1)` and `MO(2)` keycodes together to access a third layer, the [Tri Layer](feature_tri_layer) feature should be used, rather than manually implementing this using `layer_on/off()` and `update_tri_layer()` functions in the keymap's `process_record_user()`. - default (and via) keymaps should be "pristine" - bare minimum to be used as a "clean slate" for another user to develop their own user-specific keymap - what does pristine mean? no custom keycodes. no advanced features like tap dance or macros. basic mod taps and home row mods would be acceptable where their use is necessary - standard layouts preferred in these keymaps, if possible - - should use [encoder map feature](https://docs.qmk.fm/#/feature_encoders?id=encoder-map), rather than `encoder_update_user()` + - should use [encoder map feature](feature_encoders#encoder-map), rather than `encoder_update_user()` - default keymap should not enable VIA -- the VIA integration documentation requires a keymap called `via` - submitters can add an example (or bells-and-whistles) keymap showcasing capabilities in the same PR but it shouldn't be embedded in the 'default' keymap - submitters can also have a "manufacturer-matching" keymap that mirrors existing functionality of the commercial product, if porting an existing board @@ -163,11 +165,11 @@ Also, specific to ChibiOS: - New board definitions must not be embedded in a keyboard PR - See [Core PRs](#core-pr) below for the procedure for adding a new board to QMK - if a board definition is unavoidable, `board.c` must have a standard `__early_init()` (as per normal ChibiOS board defs) and an empty `boardInit()`: - - see Arm/ChibiOS [early initialization](platformdev_chibios_earlyinit.md?id=board-init) + - see Arm/ChibiOS [early initialization](platformdev_chibios_earlyinit#board-init) - `__early_init()` should be replaced by either `early_hardware_init_pre()` or `early_hardware_init_post()` as appropriate - `boardInit()` should be migrated to `board_init()` -## Core PRs :id=core-pr +## Core PRs {#core-pr} - all core PRs must now target `develop` branch, which will subsequently be merged back to `master` on the breaking changes timeline - as indicated above, the smallest set of changes to core components should be included in each PR @@ -197,9 +199,9 @@ For future reference, we recommend against committing to your `master` branch as There are instructions on how to keep your fork updated here: -[**Best Practices: Your Fork's Master: Update Often, Commit Never**](https://docs.qmk.fm/#/newbs_git_using_your_master_branch) +[**Best Practices: Your Fork's Master: Update Often, Commit Never**](newbs_git_using_your_master_branch) -[Fixing Your Branch](https://docs.qmk.fm/#/newbs_git_resynchronize_a_branch) will walk you through fixing up your `master` branch moving forward. If you need any help with this just ask. +[Fixing Your Branch](newbs_git_resynchronize_a_branch) will walk you through fixing up your `master` branch moving forward. If you need any help with this just ask. Thanks for contributing! ``` diff --git a/docs/public/badge-community-dark.svg b/docs/public/badge-community-dark.svg new file mode 100644 index 00000000000..dba561dda11 --- /dev/null +++ b/docs/public/badge-community-dark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/public/badge-community-light.svg b/docs/public/badge-community-light.svg new file mode 100644 index 00000000000..de4e0cf149d --- /dev/null +++ b/docs/public/badge-community-light.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/qmk.css b/docs/qmk.css deleted file mode 100644 index 543cd7f28d4..00000000000 --- a/docs/qmk.css +++ /dev/null @@ -1,862 +0,0 @@ -* { - -webkit-font-smoothing: antialiased; - -webkit-overflow-scrolling: touch; - -webkit-tap-highlight-color: rgba(0,0,0,0); - -webkit-text-size-adjust: none; - -webkit-touch-callout: none; - -webkit-box-sizing: border-box; - box-sizing: border-box; -} -body:not(.ready) { - overflow: hidden; -} -body:not(.ready) [data-cloak], -body:not(.ready) .app-nav, -body:not(.ready) > nav { - display: none; -} -div#app { - font-size: 30px; - font-weight: lighter; - margin: 40vh auto; - text-align: center; -} -div#app:empty::before { - content: 'Loading...'; -} -.emoji { - height: 1.2rem; - vertical-align: middle; -} -.progress { - background-color: var(--theme-color, #ea6f5a); - height: 2px; - left: 0px; - position: fixed; - right: 0px; - top: 0px; - -webkit-transition: width 0.2s, opacity 0.4s; - transition: width 0.2s, opacity 0.4s; - width: 0%; - z-index: 999999; -} -.search a:hover { - color: var(--theme-color, #ea6f5a); -} -.search .search-keyword { - color: var(--theme-color, #ea6f5a); - font-style: normal; - font-weight: bold; -} -html, -body { - height: 100%; -} -body { - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - color: #efefef; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, sans-serif; - font-size: 15px; - letter-spacing: 0; - margin: 0; - overflow-x: hidden; -} -img { - max-width: 100%; -} -a[disabled] { - cursor: not-allowed; - opacity: 0.6; -} -kbd { - border: solid 1px #ccc; - border-radius: 3px; - display: inline-block; - font-size: 12px !important; - line-height: 12px; - margin-bottom: 3px; - padding: 3px 5px; - vertical-align: middle; -} -.task-list-item { - list-style-type: none; -} -li input[type='checkbox'] { - margin: 0 0.2em 0.25em -1.6em; - vertical-align: middle; -} -.app-nav { - margin: 25px 60px 0 0; - position: absolute; - right: 0; - text-align: right; - z-index: 10; -/* navbar dropdown */ -} -.app-nav.no-badge { - margin-right: 25px; -} -.app-nav p { - margin: 0; -} -.app-nav > a { - margin: 0 1rem; - padding: 5px 0; -} -.app-nav ul, -.app-nav li { - display: inline-block; - list-style: none; - margin: 0; -} -.app-nav a { - color: inherit; - font-size: 16px; - text-decoration: none; - -webkit-transition: color 0.3s; - transition: color 0.3s; -} -.app-nav a:hover { - color: var(--theme-color, #ea6f5a); -} -.app-nav a.active { - border-bottom: 2px solid var(--theme-color, #ea6f5a); - color: var(--theme-color, #ea6f5a); -} -.app-nav li { - display: inline-block; - margin: 0 1rem; - padding: 5px 0; - position: relative; -} -.app-nav li ul { - background-color: #fff; - border: 1px solid #ddd; - border-bottom-color: #ccc; - border-radius: 4px; - -webkit-box-sizing: border-box; - box-sizing: border-box; - display: none; - max-height: calc(100vh - 61px); - overflow-y: auto; - padding: 10px 0; - position: absolute; - right: -15px; - text-align: left; - top: 100%; - white-space: nowrap; -} -.app-nav li ul li { - display: block; - font-size: 14px; - line-height: 1rem; - margin: 0; - margin: 8px 14px; - white-space: nowrap; -} -.app-nav li ul a { - display: block; - font-size: inherit; - margin: 0; - padding: 0; -} -.app-nav li ul a.active { - border-bottom: 0; -} -.app-nav li:hover ul { - display: block; -} -.github-corner { - border-bottom: 0; - position: fixed; - right: 0; - text-decoration: none; - top: 0; - z-index: 1; -} -.github-corner:hover .octo-arm { - -webkit-animation: octocat-wave 560ms ease-in-out; - animation: octocat-wave 560ms ease-in-out; -} -.github-corner svg { - color: #3f3f3f; - fill: var(--theme-color, #ea6f5a); - height: 80px; - width: 80px; -} -main { - display: block; - position: relative; - width: 100vw; - height: 100%; - z-index: 0; -} -main.hidden { - display: none; -} -.anchor { - display: inline-block; - text-decoration: none; - -webkit-transition: all 0.3s; - transition: all 0.3s; -} -.anchor span { - color: #c8c8c8; -} -.anchor:hover { - text-decoration: underline; -} -.sidebar { - border-right: 1px solid rgba(0,0,0,0.07); - overflow-y: auto; - padding: 40px 0 0; - position: absolute; - top: 0; - bottom: 0; - left: 0; - -webkit-transition: -webkit-transform 250ms ease-out; - transition: -webkit-transform 250ms ease-out; - transition: transform 250ms ease-out; - transition: transform 250ms ease-out, -webkit-transform 250ms ease-out; - width: 300px; - z-index: 20; -} -.sidebar > h1 { - margin: 0 auto 1rem; - font-size: 1.5rem; - font-weight: 300; - text-align: center; -} -.sidebar > h1 a { - color: inherit; - text-decoration: none; -} -.sidebar > h1 .app-nav { - display: block; - position: static; -} -.sidebar .sidebar-nav { - line-height: 2em; - padding-bottom: 40px; -} -.sidebar li.collapse .app-sub-sidebar { - display: none; -} -.sidebar ul { - margin: 0; - padding: 0; -} -.sidebar li > p { - font-weight: 700; - margin: 0; -} -.sidebar ul, -.sidebar ul li { - list-style: none; -} -.sidebar ul li a { - border-bottom: none; - display: block; -} -.sidebar ul li ul { - padding-left: 20px; -} -.sidebar::-webkit-scrollbar { - width: 4px; -} -.sidebar::-webkit-scrollbar-thumb { - background: transparent; - border-radius: 4px; -} -.sidebar:hover::-webkit-scrollbar-thumb { - background: rgba(136,136,136,0.4); -} -.sidebar:hover::-webkit-scrollbar-track { - background: rgba(136,136,136,0.1); -} -.sidebar-toggle { - background-color: transparent; - background-color: rgba(63,63,63,0.8); - border: 0; - outline: none; - padding: 10px; - position: absolute; - bottom: 0; - left: 0; - text-align: center; - -webkit-transition: opacity 0.3s; - transition: opacity 0.3s; - width: 284px; - z-index: 30; -} -.sidebar-toggle .sidebar-toggle-button:hover { - opacity: 0.4; -} -.sidebar-toggle span { - background-color: var(--theme-color, #ea6f5a); - display: block; - margin-bottom: 4px; - width: 16px; - height: 2px; -} -body.sticky .sidebar, -body.sticky .sidebar-toggle { - position: fixed; -} -.content { - padding-top: 60px; - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 300px; - -webkit-transition: left 250ms ease; - transition: left 250ms ease; -} -.markdown-section { - margin: 0 auto; - max-width: 800px; - padding: 30px 15px 40px 15px; - position: relative; -} -.markdown-section > * { - -webkit-box-sizing: border-box; - box-sizing: border-box; - font-size: inherit; -} -.markdown-section > :first-child { - margin-top: 0 !important; -} -.markdown-section hr { - border: none; - border-bottom: 1px solid #eee; - margin: 2em 0; -} -.markdown-section iframe { - border: 1px solid #eee; -} -.markdown-section table { - border-collapse: collapse; - border-spacing: 0; - display: block; - margin-bottom: 1rem; - overflow: auto; - width: 100%; -} -.markdown-section th { - border: 1px solid #ddd; - font-weight: bold; - padding: 6px 13px; -} -.markdown-section td { - border: 1px solid #ddd; - padding: 6px 13px; -} -.markdown-section tr { - border-top: 1px solid #ccc; -} -.markdown-section tr:nth-child(2n) { - background-color: #555555; -} -.markdown-section p.tip { - background-color: #555555; - border-bottom-right-radius: 2px; - border-left: 4px solid #f66; - border-top-right-radius: 2px; - margin: 2em 0; - padding: 12px 24px 12px 30px; - position: relative; -} -.markdown-section p.tip:before { - background-color: #f66; - border-radius: 100%; - color: #3f3f3f; - content: '!'; - font-family: 'Dosis', 'Source Sans Pro', 'Helvetica Neue', Arial, sans-serif; - font-size: 14px; - font-weight: bold; - left: -12px; - line-height: 20px; - position: absolute; - height: 20px; - width: 20px; - text-align: center; - top: 14px; -} -.markdown-section p.tip code { - background-color: #efefef; -} -.markdown-section p.tip em { - color: #c8c8c8; -} -.markdown-section p.warn { - background: rgba(234,111,90,0.1); - border-radius: 2px; - padding: 1rem; -} -body.close .sidebar { - -webkit-transform: translateX(-300px); - transform: translateX(-300px); -} -body.close .sidebar-toggle { - width: auto; -} -body.close .content { - left: 0; -} -@media print { - .github-corner, - .sidebar-toggle, - .sidebar, - .app-nav { - display: none; - } -} -@media screen and (max-width: 768px) { - .github-corner, - .sidebar-toggle, - .sidebar { - position: fixed; - } - .app-nav { - margin-top: 16px; - } - .app-nav li ul { - top: 30px; - } - main { - height: auto; - overflow-x: hidden; - } - .sidebar { - left: -300px; - -webkit-transition: -webkit-transform 250ms ease-out; - transition: -webkit-transform 250ms ease-out; - transition: transform 250ms ease-out; - transition: transform 250ms ease-out, -webkit-transform 250ms ease-out; - } - .content { - left: 0; - max-width: 100vw; - position: static; - padding-top: 20px; - -webkit-transition: -webkit-transform 250ms ease; - transition: -webkit-transform 250ms ease; - transition: transform 250ms ease; - transition: transform 250ms ease, -webkit-transform 250ms ease; - } - .app-nav, - .github-corner { - -webkit-transition: -webkit-transform 250ms ease-out; - transition: -webkit-transform 250ms ease-out; - transition: transform 250ms ease-out; - transition: transform 250ms ease-out, -webkit-transform 250ms ease-out; - } - .sidebar-toggle { - background-color: transparent; - width: auto; - padding: 30px 30px 10px 10px; - } - body.close .sidebar { - -webkit-transform: translateX(300px); - transform: translateX(300px); - } - body.close .sidebar-toggle { - background-color: rgba(63,63,63,0.8); - -webkit-transition: 1s background-color; - transition: 1s background-color; - width: 284px; - padding: 10px; - } - body.close .content { - -webkit-transform: translateX(300px); - transform: translateX(300px); - } - body.close .app-nav, - body.close .github-corner { - display: none; - } - .github-corner:hover .octo-arm { - -webkit-animation: none; - animation: none; - } - .github-corner .octo-arm { - -webkit-animation: octocat-wave 560ms ease-in-out; - animation: octocat-wave 560ms ease-in-out; - } -} -@-webkit-keyframes octocat-wave { - 0%, 100% { - -webkit-transform: rotate(0); - transform: rotate(0); - } - 20%, 60% { - -webkit-transform: rotate(-25deg); - transform: rotate(-25deg); - } - 40%, 80% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); - } -} -@keyframes octocat-wave { - 0%, 100% { - -webkit-transform: rotate(0); - transform: rotate(0); - } - 20%, 60% { - -webkit-transform: rotate(-25deg); - transform: rotate(-25deg); - } - 40%, 80% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); - } -} -section.cover { - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-position: center center; - background-repeat: no-repeat; - background-size: cover; - height: 100vh; - display: none; -} -section.cover.show { - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -section.cover.has-mask .mask { - background-color: #3f3f3f; - opacity: 0.8; - position: absolute; - top: 0; - height: 100%; - width: 100%; -} -section.cover .cover-main { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - margin: -20px 16px 0; - text-align: center; - z-index: 1; -} -section.cover a { - color: inherit; - text-decoration: none; -} -section.cover a:hover { - text-decoration: none; -} -section.cover p { - line-height: 1.5rem; - margin: 1em 0; -} -section.cover h1 { - color: inherit; - font-size: 2.5rem; - font-weight: 300; - margin: 0.625rem 0 2.5rem; - position: relative; - text-align: center; -} -section.cover h1 a { - display: block; -} -section.cover h1 small { - bottom: -0.4375rem; - font-size: 1rem; - position: absolute; -} -section.cover blockquote { - font-size: 1.5rem; - text-align: center; -} -section.cover ul { - line-height: 1.8; - list-style-type: none; - margin: 1em auto; - max-width: 500px; - padding: 0; -} -section.cover .cover-main > p:last-child a { - border-color: var(--theme-color, #ea6f5a); - border-radius: 2rem; - border-style: solid; - border-width: 1px; - -webkit-box-sizing: border-box; - box-sizing: border-box; - color: var(--theme-color, #ea6f5a); - display: inline-block; - font-size: 1.05rem; - letter-spacing: 0.1rem; - margin: 0.5rem 1rem; - padding: 0.75em 2rem; - text-decoration: none; - -webkit-transition: all 0.15s ease; - transition: all 0.15s ease; -} -section.cover .cover-main > p:last-child a:last-child { - background-color: var(--theme-color, #ea6f5a); - color: #fff; -} -section.cover .cover-main > p:last-child a:last-child:hover { - color: inherit; - opacity: 0.8; -} -section.cover .cover-main > p:last-child a:hover { - color: inherit; -} -section.cover blockquote > p > a { - border-bottom: 2px solid var(--theme-color, #ea6f5a); - -webkit-transition: color 0.3s; - transition: color 0.3s; -} -section.cover blockquote > p > a:hover { - color: var(--theme-color, #ea6f5a); -} -body { - background-color: #3f3f3f; -} -/* sidebar */ -.sidebar { - background-color: #3f3f3f; - color: #c8c8c8; -} -.sidebar li { - margin: 6px 15px; -} -.sidebar ul li a { - color: #c8c8c8; - font-size: 14px; - overflow: hidden; - text-decoration: none; - text-overflow: ellipsis; - white-space: nowrap; -} -.sidebar ul li a:hover { - text-decoration: underline; -} -.sidebar ul li ul { - padding: 0; -} -.sidebar ul li.active > a { - color: var(--theme-color, #ea6f5a); - font-weight: 600; -} -/* markdown content found on pages */ -.markdown-section h1, -.markdown-section h2, -.markdown-section h3, -.markdown-section h4, -.markdown-section strong { - color: #657b83; - font-weight: 600; -} -.markdown-section a { - color: var(--theme-color, #ea6f5a); - font-weight: 600; -} -.markdown-section h1 { - font-size: 2rem; - margin: 0 0 1rem; -} -.markdown-section h2 { - font-size: 1.75rem; - margin: 45px 0 0.8rem; -} -.markdown-section h3 { - font-size: 1.5rem; - margin: 40px 0 0.6rem; -} -.markdown-section h4 { - font-size: 1.25rem; -} -.markdown-section h5 { - font-size: 1rem; -} -.markdown-section h6 { - color: #777; - font-size: 1rem; -} -.markdown-section figure, -.markdown-section p, -.markdown-section ul, -.markdown-section ol { - margin: 1.2em 0; -} -.markdown-section p, -.markdown-section ul, -.markdown-section ol { - line-height: 1.6rem; - word-spacing: 0.05rem; -} -.markdown-section ul, -.markdown-section ol { - padding-left: 1.5rem; -} -.markdown-section blockquote { - border-left: 4px solid var(--theme-color, #ea6f5a); - color: #858585; - margin: 2em 0; - padding-left: 20px; -} -.markdown-section blockquote p { - font-weight: 600; - margin-left: 0; -} -.markdown-section iframe { - margin: 1em 0; -} -.markdown-section em { - color: #7f8c8d; -} -.markdown-section code { - background-color: #282828; - border-radius: 2px; - color: #aaaaaa; - font-family: 'Roboto Mono', Monaco, courier, monospace; - font-size: 0.8rem; - margin: 0 2px; - padding: 3px 5px; - white-space: pre-wrap; -} -.markdown-section pre { - -moz-osx-font-smoothing: initial; - -webkit-font-smoothing: initial; - background-color: #282828; - font-family: 'Roboto Mono', Monaco, courier, monospace; - line-height: 1.5rem; - margin: 1.2em 0; - overflow: auto; - padding: 0 1.4rem; - position: relative; - word-wrap: normal; -} -/* code highlight */ -.token.comment, -.token.prolog, -.token.doctype, -.token.cdata { - color: #8e908c; -} -.token.namespace { - opacity: 0.7; -} -.token.boolean, -.token.number { - color: #c76b29; -} -.token.punctuation { - color: #525252; -} -.token.property { - color: #c08b30; -} -.token.tag { - color: #2973b7; -} -.token.string { - color: var(--theme-color, #ea6f5a); -} -.token.selector { - color: #6679cc; -} -.token.attr-name { - color: #2973b7; -} -.token.entity, -.token.url, -.language-css .token.string, -.style .token.string { - color: #22a2c9; -} -.token.attr-value, -.token.control, -.token.directive, -.token.unit { - color: var(--theme-color, #ea6f5a); -} -.token.keyword { - color: #e96900; -} -.token.statement, -.token.regex, -.token.atrule { - color: #22a2c9; -} -.token.placeholder, -.token.variable { - color: #3d8fd1; -} -.token.deleted { - text-decoration: line-through; -} -.token.inserted { - border-bottom: 1px dotted #202746; - text-decoration: none; -} -.token.italic { - font-style: italic; -} -.token.important, -.token.bold { - font-weight: bold; -} -.token.important { - color: #c94922; -} -.token.entity { - cursor: help; -} -.markdown-section pre > code { - -moz-osx-font-smoothing: initial; - -webkit-font-smoothing: initial; - background-color: #282828; - border-radius: 2px; - color: #657b83; - display: block; - font-family: 'Roboto Mono', Monaco, courier, monospace; - font-size: 0.8rem; - line-height: inherit; - margin: 0 2px; - max-width: inherit; - overflow: inherit; - padding: 2.2em 5px; - white-space: inherit; -} -.markdown-section code::after, -.markdown-section code::before { - letter-spacing: 0.05rem; -} -code .token { - -moz-osx-font-smoothing: initial; - -webkit-font-smoothing: initial; - min-height: 1.5rem; -} -pre::after { - color: #ccc; - content: attr(data-lang); - font-size: 0.6rem; - font-weight: 600; - height: 15px; - line-height: 15px; - padding: 5px 10px 0; - position: absolute; - right: 0; - text-align: right; - top: 0; -} -.markdown-section p.tip { - background-color: #282828; - color: #657b83; -} -input[type='search'] { - background: #4f4f4f; - border-color: #4f4f4f; - color: #c8c8c8; -} diff --git a/docs/qmk_custom_dark.css b/docs/qmk_custom_dark.css deleted file mode 100644 index ffa5539922a..00000000000 --- a/docs/qmk_custom_dark.css +++ /dev/null @@ -1,45 +0,0 @@ -.sidebar li.active { - background-color: #555; -} - -.markdown-section tr:nth-child(2n) { - background-color:#444; -} - -.markdown-section p.tip { - background-color:#555; - color:#FFF; -} - -.markdown-section tr { - border-top: 1px solid #555; -} - -.markdown-section td, .markdown-section th { - border: 1px solid #555; -} - -.markdown-section p.tip code { - background-color: #333; - color: #fff; -} - -.page_toc code { - background-color: #555; -} - -.markdown-section hr, .search { - border-bottom: 1px solid #777 !important; -} - -.markdown-section p.warn > strong { - color: #c8c8c8; -} - -:root { - --docsifytabs-border-color: #555; - --docsifytabs-tab-highlight-color: var(--theme-color,#ea6f5a); - - --docsifytabs-tab-background: #444; - --docsifytabs-tab-background-active: #3f3f3f; -} diff --git a/docs/qmk_custom_light.css b/docs/qmk_custom_light.css deleted file mode 100644 index c65e54396d4..00000000000 --- a/docs/qmk_custom_light.css +++ /dev/null @@ -1,58 +0,0 @@ -.sidebar-toggle { - position: absolute; - top: 0; - bottom: auto; - left: 0; -} - -.search { - margin-top: 40px; -} - -.markdown-section h2 { - padding-top: 0.25rem; -} - -.markdown-section h3 { - margin-top: 0.25rem; -} - -.sidebar, .sidebar-nav { - line-height: 1.5em !important; -} - -.markdown-section ul ul { - margin: 0; -} - -.markdown-section pre { - padding: 0; -} - -@media only screen and (min-width: 768px) { - .flex-container { - display:flex; - flex-flow:row; - } - .flex-container > p { - flex-basis: 100%; - flex: 1; - margin: 1em 2em 1em 2em; - } -} - -.docsify-tabs__tab:focus { - outline: none !important; -} - -.docsify-tabs__content .anchor { - transition: none; -} - -:root { - --docsifytabs-border-color: #ddd; - --docsifytabs-tab-highlight-color: var(--theme-color, #0074d9); - - --docsifytabs-tab-background: #f8f8f8; - --docsifytabs-tab-background-active: transparent; -} diff --git a/docs/quantum_keycodes.md b/docs/quantum_keycodes.md index a41681ac85f..faad159fcb3 100644 --- a/docs/quantum_keycodes.md +++ b/docs/quantum_keycodes.md @@ -6,7 +6,7 @@ All keycodes within quantum are numbers between `0x0000` and `0xFFFF`. Within yo On this page we have documented keycodes between `0x00FF` and `0xFFFF` which are used to implement advanced quantum features. If you define your own custom keycodes they will be put into this range as well. -## QMK Keycodes :id=qmk-keycodes +## QMK Keycodes {#qmk-keycodes} |Key |Aliases |Description | |-----------------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------| @@ -16,4 +16,6 @@ On this page we have documented keycodes between `0x00FF` and `0xFFFF` which are |`QK_MAKE` | |Sends `qmk compile -kb (keyboard) -km (keymap)`, or `qmk flash` if shift is held. Puts keyboard into bootloader mode if shift & control are held | |`QK_REBOOT` |`QK_RBT` |Resets the keyboard. Does not load the bootloader | -!> Note: `QK_MAKE` requires `#define ENABLE_COMPILE_KEYCODE` in your config.h to function. +::: warning +Note: `QK_MAKE` requires `#define ENABLE_COMPILE_KEYCODE` in your config.h to function. +::: diff --git a/docs/quantum_painter.md b/docs/quantum_painter.md index 7f524b07ee3..1d844d0f942 100644 --- a/docs/quantum_painter.md +++ b/docs/quantum_painter.md @@ -1,4 +1,4 @@ -# Quantum Painter :id=quantum-painter +# Quantum Painter {#quantum-painter} Quantum Painter is the standardised API for graphical displays. It currently includes support for basic drawing primitives, as well as custom images, animations, and fonts. @@ -13,7 +13,9 @@ QUANTUM_PAINTER_DRIVERS += ...... You will also likely need to select an appropriate driver in `rules.mk`, which is listed below. -!> Quantum Painter is not currently integrated with system-level operations such as when the keyboard goes into suspend. Users will need to handle this manually at the current time. +::: warning +Quantum Painter is not currently integrated with system-level operations such as when the keyboard goes into suspend. Users will need to handle this manually at the current time. +::: The QMK CLI can be used to convert from normal images such as PNG files or animated GIFs, as well as fonts from TTF files. @@ -35,7 +37,7 @@ Supported devices: | SSD1306 (I2C) | Monochrome OLED | 128x32 | I2C | `QUANTUM_PAINTER_DRIVERS += sh1106_i2c` | | Surface | Virtual | User-defined | None | `QUANTUM_PAINTER_DRIVERS += surface` | -## Quantum Painter Configuration :id=quantum-painter-config +## Quantum Painter Configuration {#quantum-painter-config} | Option | Default | Purpose | |---------------------------------------------------|---------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| @@ -54,11 +56,11 @@ Supported devices: Drivers have their own set of configurable options, and are described in their respective sections. -## Quantum Painter CLI Commands :id=quantum-painter-cli +## Quantum Painter CLI Commands {#quantum-painter-cli} - +:::::tabs -### ** `qmk painter-convert-graphics` ** +==== `qmk painter-convert-graphics` This command converts images to a format usable by QMK, i.e. the QGF File Format. @@ -109,7 +111,7 @@ Writing /home/qmk/qmk_firmware/keyboards/my_keeb/generated/my_image.qgf.h... Writing /home/qmk/qmk_firmware/keyboards/my_keeb/generated/my_image.qgf.c... ``` -### ** `qmk painter-make-font-image` ** +==== `qmk painter-make-font-image` This command converts a TTF font to an intermediate format for editing, before converting to the QFF File Format. @@ -142,7 +144,7 @@ The `UNICODE_GLYPHS` argument allows for specifying extra unicode glyphs to gene $ qmk painter-make-font-image --font NotoSans-ExtraCondensedBold.ttf --size 11 -o noto11.png --unicode-glyphs "ĄȽɂɻɣɈʣ" ``` -### ** `qmk painter-convert-font-image` ** +==== `qmk painter-convert-font-image` This command converts an intermediate font image to the QFF File Format. @@ -187,14 +189,13 @@ Writing /home/qmk/qmk_firmware/keyboards/my_keeb/generated/noto11.qff.h... Writing /home/qmk/qmk_firmware/keyboards/my_keeb/generated/noto11.qff.c... ``` - +::::: -## Quantum Painter Display Drivers :id=quantum-painter-drivers +## Quantum Painter Display Drivers {#quantum-painter-drivers} - +::::::tabs - -### ** LCD ** +===== LCD Most TFT display panels use a 5-pin interface -- SPI SCK, SPI MOSI, SPI CS, D/C, and RST pins. @@ -202,9 +203,9 @@ For these displays, QMK's `spi_master` must already be correctly configured for The pin assignments for SPI CS, D/C, and RST are specified during device construction. - +:::::tabs -#### ** GC9A01 ** +==== GC9A01 Enabling support for the GC9A01 in Quantum Painter is done by adding the following to `rules.mk`: @@ -230,7 +231,7 @@ The maximum number of displays can be configured by changing the following in yo Native color format rgb565 is compatible with GC9A01 -#### ** ILI9163 ** +==== ILI9163 Enabling support for the ILI9163 in Quantum Painter is done by adding the following to `rules.mk`: @@ -256,7 +257,7 @@ The maximum number of displays can be configured by changing the following in yo Native color format rgb565 is compatible with ILI9163 -#### ** ILI9341 ** +==== ILI9341 Enabling support for the ILI9341 in Quantum Painter is done by adding the following to `rules.mk`: @@ -282,7 +283,7 @@ The maximum number of displays can be configured by changing the following in yo Native color format rgb565 is compatible with ILI9341 -#### ** ILI9486 ** +==== ILI9486 Enabling support for the ILI9486 in Quantum Painter is done by adding the following to `rules.mk`: @@ -315,7 +316,7 @@ The maximum number of displays can be configured by changing the following in yo Native color format rgb888 is compatible with ILI9486 Native color format rgb565 is compatible with ILI9486 Waveshare -#### ** ILI9488 ** +==== ILI9488 Enabling support for the ILI9488 in Quantum Painter is done by adding the following to `rules.mk`: @@ -341,7 +342,7 @@ The maximum number of displays can be configured by changing the following in yo Native color format rgb888 is compatible with ILI9488 -#### ** ST7735 ** +==== ST7735 Enabling support for the ST7735 in Quantum Painter is done by adding the following to `rules.mk`: @@ -367,9 +368,11 @@ The maximum number of displays can be configured by changing the following in yo Native color format rgb565 is compatible with ST7735 -!> Some ST7735 devices are known to have different drawing offsets -- despite being a 132x162 pixel display controller internally, some display panels are only 80x160, or smaller. These may require an offset to be applied; see `qp_set_viewport_offsets` above for information on how to override the offsets if they aren't correctly rendered. +::: warning +Some ST7735 devices are known to have different drawing offsets -- despite being a 132x162 pixel display controller internally, some display panels are only 80x160, or smaller. These may require an offset to be applied; see `qp_set_viewport_offsets` above for information on how to override the offsets if they aren't correctly rendered. +::: -#### ** ST7789 ** +==== ST7789 Enabling support for the ST7789 in Quantum Painter is done by adding the following to `rules.mk`: @@ -395,11 +398,13 @@ The maximum number of displays can be configured by changing the following in yo Native color format rgb565 is compatible with ST7789 -!> Some ST7789 devices are known to have different drawing offsets -- despite being a 240x320 pixel display controller internally, some display panels are only 240x240, or smaller. These may require an offset to be applied; see `qp_set_viewport_offsets` above for information on how to override the offsets if they aren't correctly rendered. +::: warning +Some ST7789 devices are known to have different drawing offsets -- despite being a 240x320 pixel display controller internally, some display panels are only 240x240, or smaller. These may require an offset to be applied; see `qp_set_viewport_offsets` above for information on how to override the offsets if they aren't correctly rendered. +::: - +::::: -### ** OLED ** +===== OLED OLED displays tend to use 5-pin SPI when at larger resolutions, or when using color -- SPI SCK, SPI MOSI, SPI CS, D/C, and RST pins. Smaller OLEDs may use I2C instead. @@ -407,9 +412,9 @@ When using these displays, either `spi_master` or `i2c_master` must already be c For SPI, the pin assignments for SPI CS, D/C, and RST are specified during device construction -- for I2C the panel's address is specified instead. - +:::::tabs -#### ** SSD1351 ** +==== SSD1351 Enabling support for the SSD1351 in Quantum Painter is done by adding the following to `rules.mk`: @@ -435,7 +440,7 @@ The maximum number of displays can be configured by changing the following in yo Native color format rgb565 is compatible with SSD1351 -#### ** SH1106 ** +==== SH1106 Enabling support for the SH1106 in Quantum Painter is done by adding the following to `rules.mk`: @@ -469,17 +474,19 @@ The maximum number of displays of each type can be configured by changing the fo Native color format mono2 is compatible with SH1106 -#### ** SSD1306 ** +==== SSD1306 SSD1306 and SH1106 are almost entirely identical, to the point of being indisinguishable by Quantum Painter. Enable SH1106 support in Quantum Painter and create SH1106 devices in firmware to perform drawing operations on SSD1306 displays. - +::::: -### ** Surface ** +===== Surface Quantum Painter has a surface driver which is able to target a buffer in RAM. In general, surfaces keep track of the "dirty" region -- the area that has been drawn to since the last flush -- so that when transferring to the display they can transfer the minimal amount of data to achieve the end result. -!> These generally require significant amounts of RAM, so at large sizes and/or higher bit depths, they may not be usable on all MCUs. +::: warning +These generally require significant amounts of RAM, so at large sizes and/or higher bit depths, they may not be usable on all MCUs. +::: Enabling support for surfaces in Quantum Painter is done by adding the following to `rules.mk`: @@ -533,13 +540,17 @@ bool qp_surface_draw(painter_device_t surface, painter_device_t display, uint16_ The `surface` is the surface to copy out from. The `display` is the target display to draw into. `x` and `y` are the target location to draw the surface pixel data. Under normal circumstances, the location should be consistent, as the dirty region is calculated with respect to the `x` and `y` coordinates -- changing those will result in partial, overlapping draws. `entire_surface` whether the entire surface should be drawn, instead of just the dirty region. -!> The surface and display panel must have the same native pixel format. +::: warning +The surface and display panel must have the same native pixel format. +::: -?> Calling `qp_flush()` on the surface resets its dirty region. Copying the surface contents to the display also automatically resets the dirty region. +::: tip +Calling `qp_flush()` on the surface resets its dirty region. Copying the surface contents to the display also automatically resets the dirty region. +::: - +:::::: -## Quantum Painter Drawing API :id=quantum-painter-api +## Quantum Painter Drawing API {#quantum-painter-api} All APIs require a `painter_device_t` object as their first parameter -- this object comes from the specific device initialisation, and instructions on creating it can be found in each driver's respective section. @@ -548,13 +559,15 @@ To use any of the APIs, you need to include `qp.h`: #include ``` - +::::::tabs -### ** General Notes ** +===== General Notes The coordinate system used in Quantum Painter generally accepts `left`, `top`, `right`, and `bottom` instead of x/y/width/height, and each coordinate is inclusive of where pixels should be drawn. This is required as some datatypes used by display panels have a maximum value of `255` -- for any value or geometry extent that matches `256`, this would be represented as a `0`, instead. -?> Drawing a horizontal line 8 pixels long, starting from 4 pixels inside the left side of the display, will need `left=4`, `right=11`. +::: tip +Drawing a horizontal line 8 pixels long, starting from 4 pixels inside the left side of the display, will need `left=4`, `right=11`. +::: All color data matches the standard QMK HSV triplet definitions: @@ -562,13 +575,15 @@ All color data matches the standard QMK HSV triplet definitions: * Saturation is of the range `0...255` and is internally mapped to 0...100% saturation. * Value is of the range `0...255` and is internally mapped to 0...100% brightness. -?> Colors used in Quantum Painter are not subject to the RGB lighting CIE curve, if it is enabled. +::: tip +Colors used in Quantum Painter are not subject to the RGB lighting CIE curve, if it is enabled. +::: -### ** Device Control ** +===== Device Control - +:::::tabs -#### ** Display Initialisation ** +==== Display Initialisation ```c bool qp_init(painter_device_t device, painter_rotation_t rotation); @@ -584,7 +599,7 @@ void keyboard_post_init_kb(void) { } ``` -#### ** Display Power ** +==== Display Power ```c bool qp_power(painter_device_t device, bool power_on); @@ -592,7 +607,9 @@ bool qp_power(painter_device_t device, bool power_on); The `qp_power` function instructs the display whether or not the display panel should be on or off. -!> If there is a separate backlight controlled through the normal QMK backlight API, this is not controlled by the `qp_power` function and needs to be manually handled elsewhere. +::: warning +If there is a separate backlight controlled through the normal QMK backlight API, this is not controlled by the `qp_power` function and needs to be manually handled elsewhere. +::: ```c static uint8_t last_backlight = 255; @@ -615,7 +632,7 @@ void suspend_wakeup_init_user(void) { } ``` -#### ** Display Clear ** +==== Display Clear ```c bool qp_clear(painter_device_t device); @@ -623,7 +640,7 @@ bool qp_clear(painter_device_t device); The `qp_clear` function clears the display's screen. -#### ** Display Flush ** +==== Display Flush ```c bool qp_flush(painter_device_t device); @@ -631,7 +648,9 @@ bool qp_flush(painter_device_t device); The `qp_flush` function ensures that all drawing operations are "pushed" to the display. This should be done as the last operation whenever a sequence of draws occur, and guarantees that any changes are applied. -!> Some display panels may seem to work even without a call to `qp_flush` -- this may be because the driver cannot queue drawing operations and needs to display them immediately when invoked. In general, calling `qp_flush` at the end is still considered "best practice". +::: warning +Some display panels may seem to work even without a call to `qp_flush` -- this may be because the driver cannot queue drawing operations and needs to display them immediately when invoked. In general, calling `qp_flush` at the end is still considered "best practice". +::: ```c void housekeeping_task_user(void) { @@ -645,13 +664,13 @@ void housekeeping_task_user(void) { } ``` - +::::: -### ** Drawing Primitives ** +===== Drawing Primitives - +:::::tabs -#### ** Set Pixel ** +==== Set Pixel ```c bool qp_setpixel(painter_device_t device, uint16_t x, uint16_t y, uint8_t hue, uint8_t sat, uint8_t val); @@ -659,7 +678,9 @@ bool qp_setpixel(painter_device_t device, uint16_t x, uint16_t y, uint8_t hue, u The `qp_setpixel` can be used to set a specific pixel on the screen to the supplied color. -?> Using `qp_setpixel` for large amounts of drawing operations is inefficient and should be avoided unless they cannot be achieved with other drawing APIs. +::: tip +Using `qp_setpixel` for large amounts of drawing operations is inefficient and should be avoided unless they cannot be achieved with other drawing APIs. +::: ```c void housekeeping_task_user(void) { @@ -675,7 +696,7 @@ void housekeeping_task_user(void) { } ``` -#### ** Draw Line ** +==== Draw Line ```c bool qp_line(painter_device_t device, uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint8_t hue, uint8_t sat, uint8_t val); @@ -697,7 +718,7 @@ void housekeeping_task_user(void) { } ``` -#### ** Draw Rect ** +==== Draw Rect ```c bool qp_rect(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom, uint8_t hue, uint8_t sat, uint8_t val, bool filled); @@ -719,7 +740,7 @@ void housekeeping_task_user(void) { } ``` -#### ** Draw Circle ** +==== Draw Circle ```c bool qp_circle(painter_device_t device, uint16_t x, uint16_t y, uint16_t radius, uint8_t hue, uint8_t sat, uint8_t val, bool filled); @@ -741,7 +762,7 @@ void housekeeping_task_user(void) { } ``` -#### ** Draw Ellipse ** +==== Draw Ellipse ```c bool qp_ellipse(painter_device_t device, uint16_t x, uint16_t y, uint16_t sizex, uint16_t sizey, uint8_t hue, uint8_t sat, uint8_t val, bool filled); @@ -763,9 +784,9 @@ void housekeeping_task_user(void) { } ``` - +::::: -### ** Image Functions ** +===== Image Functions Making an image available for use requires compiling it into your firmware. To do so, assuming you've created `my_image.qgf.c` and `my_image.qgf.h` as per the CLI examples above, you'd add the following to your `rules.mk`: @@ -778,9 +799,9 @@ SRC += my_image.qgf.c #include "my_image.qgf.h" ``` - +:::::tabs -#### ** Load Image ** +==== Load Image ```c painter_image_handle_t qp_load_image_mem(const void *buffer); @@ -790,9 +811,11 @@ The `qp_load_image_mem` function loads a QGF image from memory or flash. `qp_load_image_mem` returns a handle to the loaded image, which can then be used to draw to the screen using `qp_drawimage`, `qp_drawimage_recolor`, `qp_animate`, or `qp_animate_recolor`. If an image is no longer required, it can be unloaded by calling `qp_close_image` below. -See the [CLI Commands](quantum_painter.md?id=quantum-painter-cli) for instructions on how to convert images to [QGF](quantum_painter_qgf.md). +See the [CLI Commands](quantum_painter#quantum-painter-cli) for instructions on how to convert images to [QGF](quantum_painter_qgf). -?> The total number of images available to load at any one time is controlled by the configurable option `QUANTUM_PAINTER_NUM_IMAGES` in the table above. If more images are required, the number should be increased in `config.h`. +::: tip +The total number of images available to load at any one time is controlled by the configurable option `QUANTUM_PAINTER_NUM_IMAGES` in the table above. If more images are required, the number should be increased in `config.h`. +::: Image information is available through accessing the handle: @@ -802,7 +825,7 @@ Image information is available through accessing the handle: | Height | `image->height` | | Frame Count | `image->frame_count` | -#### ** Unload Image ** +==== Unload Image ```c bool qp_close_image(painter_image_handle_t image); @@ -810,7 +833,7 @@ bool qp_close_image(painter_image_handle_t image); The `qp_close_image` function releases resources related to the loading of the supplied image. -#### ** Draw image ** +==== Draw image ```c bool qp_drawimage(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image); @@ -830,7 +853,7 @@ void keyboard_post_init_kb(void) { } ``` -#### ** Animate Image ** +==== Animate Image ```c deferred_token qp_animate(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image); @@ -855,7 +878,7 @@ void keyboard_post_init_kb(void) { } ``` -#### ** Stop Animation ** +==== Stop Animation ```c void qp_stop_animation(deferred_token anim_token); @@ -870,9 +893,9 @@ void housekeeping_task_user(void) { } ``` - +::::: -### ** Font Functions ** +===== Font Functions Making a font available for use requires compiling it into your firmware. To do so, assuming you've created `my_font.qff.c` and `my_font.qff.h` as per the CLI examples above, you'd add the following to your `rules.mk`: @@ -885,9 +908,9 @@ SRC += noto11.qff.c #include "noto11.qff.h" ``` - +:::::tabs -#### ** Load Font ** +==== Load Font ```c painter_font_handle_t qp_load_font_mem(const void *buffer); @@ -897,9 +920,11 @@ The `qp_load_font_mem` function loads a QFF font from memory or flash. `qp_load_font_mem` returns a handle to the loaded font, which can then be measured using `qp_textwidth`, or drawn to the screen using `qp_drawtext`, or `qp_drawtext_recolor`. If a font is no longer required, it can be unloaded by calling `qp_close_font` below. -See the [CLI Commands](quantum_painter.md?id=quantum-painter-cli) for instructions on how to convert TTF fonts to [QFF](quantum_painter_qff.md). +See the [CLI Commands](quantum_painter#quantum-painter-cli) for instructions on how to convert TTF fonts to [QFF](quantum_painter_qff). -?> The total number of fonts available to load at any one time is controlled by the configurable option `QUANTUM_PAINTER_NUM_FONTS` in the table above. If more fonts are required, the number should be increased in `config.h`. +::: tip +The total number of fonts available to load at any one time is controlled by the configurable option `QUANTUM_PAINTER_NUM_FONTS` in the table above. If more fonts are required, the number should be increased in `config.h`. +::: Font information is available through accessing the handle: @@ -907,7 +932,7 @@ Font information is available through accessing the handle: |-------------|----------------------| | Line Height | `image->line_height` | -#### ** Unload Font ** +==== Unload Font ```c bool qp_close_font(painter_font_handle_t font); @@ -915,7 +940,7 @@ bool qp_close_font(painter_font_handle_t font); The `qp_close_font` function releases resources related to the loading of the supplied font. -#### ** Measure Text ** +==== Measure Text ```c int16_t qp_textwidth(painter_font_handle_t font, const char *str); @@ -923,7 +948,7 @@ int16_t qp_textwidth(painter_font_handle_t font, const char *str); The `qp_textwidth` function allows measurement of how many pixels wide the supplied string would result in, for the given font. -#### ** Draw Text ** +==== Draw Text ```c int16_t qp_drawtext(painter_device_t device, uint16_t x, uint16_t y, painter_font_handle_t font, const char *str); @@ -945,49 +970,49 @@ void keyboard_post_init_kb(void) { } ``` - +::::: -### ** Advanced Functions ** +===== Advanced Functions - +:::::tabs -#### ** Gettters ** +==== Getters These functions allow external code to retrieve the current width, height, rotation, and drawing offsets. - +::::tabs -#### ** Width ** +=== Width ```c uint16_t qp_get_width(painter_device_t device); ``` -#### ** Height ** +=== Height ```c uint16_t qp_get_height(painter_device_t device); ``` -#### ** Rotation ** +=== Rotation ```c painter_rotation_t qp_get_rotation(painter_device_t device); ``` -#### ** Offset X ** +=== Offset X ```c uint16_t qp_get_offset_x(painter_device_t device); ``` -#### ** Offset Y ** +=== Offset Y ```c uint16_t qp_get_offset_y(painter_device_t device); ``` -##### ** Everything ** +=== Everything Convenience function to call all the previous ones at once. Note: You can pass `NULL` for the values you are not interested in. @@ -996,9 +1021,9 @@ Note: You can pass `NULL` for the values you are not interested in. void qp_get_geometry(painter_device_t device, uint16_t *width, uint16_t *height, painter_rotation_t *rotation, uint16_t *offset_x, uint16_t *offset_y); ``` - +:::: -#### ** Set Viewport Offsets ** +==== Set Viewport Offsets ```c void qp_set_viewport_offsets(painter_device_t device, uint16_t offset_x, uint16_t offset_y); @@ -1006,7 +1031,7 @@ void qp_set_viewport_offsets(painter_device_t device, uint16_t offset_x, uint16_ The `qp_set_viewport_offsets` function can be used to offset all subsequent drawing operations. For example, if a display controller is internally 240x320, but the display panel is 240x240 and has a Y offset of 80 pixels, you could invoke `qp_set_viewport_offsets(display, 0, 80);` and the drawing positioning would be corrected. -#### ** Set Viewport ** +==== Set Viewport ```c bool qp_viewport(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom); @@ -1014,7 +1039,7 @@ bool qp_viewport(painter_device_t device, uint16_t left, uint16_t top, uint16_t The `qp_viewport` function controls where raw pixel data is written to. -#### ** Stream Pixel Data ** +==== Stream Pixel Data ```c bool qp_pixdata(painter_device_t device, const void *pixel_data, uint32_t native_pixel_count); @@ -1022,8 +1047,10 @@ bool qp_pixdata(painter_device_t device, const void *pixel_data, uint32_t native The `qp_pixdata` function allows raw pixel data to be streamed to the display. It requires a native pixel count rather than the number of bytes to transfer, to ensure display panel data alignment is respected. E.g. for display panels using RGB565 internal format, sending 10 pixels will result in 20 bytes of transfer. -!> Under normal circumstances, users will not need to manually call either `qp_viewport` or `qp_pixdata`. These allow for writing of raw pixel information, in the display panel's native format, to the area defined by the viewport. +::: warning +Under normal circumstances, users will not need to manually call either `qp_viewport` or `qp_pixdata`. These allow for writing of raw pixel information, in the display panel's native format, to the area defined by the viewport. +::: - +::::: - +:::::: diff --git a/docs/quantum_painter_lvgl.md b/docs/quantum_painter_lvgl.md index b4f31ad4af8..40b3c3b2f12 100644 --- a/docs/quantum_painter_lvgl.md +++ b/docs/quantum_painter_lvgl.md @@ -1,14 +1,16 @@ -# Quantum Painter LVGL Integration :id=lvgl +# Quantum Painter LVGL Integration {#lvgl} LVGL (Light and Versatile Graphics Library) is an open-source graphics library providing everything you need to create an embedded GUI for your board with easy-to-use graphical elements. -LVGL integrates with [Quantum Painter's](quantum_painter.md) API and drivers to render to the display, the hardware supported by Quantum Painter is also supported by LVGL. +LVGL integrates with [Quantum Painter's](quantum_painter) API and drivers to render to the display, the hardware supported by Quantum Painter is also supported by LVGL. -?> Keep in mind that enabling the LVGL integration has a big impact in firmware size, it is recommeded to use a supported MCU with >256 kB of flash space. +::: tip +Keep in mind that enabling the LVGL integration has a big impact in firmware size, it is recommeded to use a supported MCU with >256 kB of flash space. +::: To learn more about LVGL and how to use it please take a look at their [official documentation](https://docs.lvgl.io/8.2/intro/) -## Enabling LVGL :id=lvgl-enabling +## Enabling LVGL {#lvgl-enabling} To enable LVGL to be built into your firmware, add the following to `rules.mk`: ```make @@ -16,11 +18,11 @@ QUANTUM_PAINTER_ENABLE = yes QUANTUM_PAINTER_DRIVERS = ...... QUANTUM_PAINTER_LVGL_INTEGRATION = yes ``` -To configure the Quantum Painter Display Drivers please read the [Quantum Painter Display Drivers](quantum_painter.md#quantum-painter-drivers) section. +To configure the Quantum Painter Display Drivers please read the [Quantum Painter Display Drivers](quantum_painter#quantum-painter-drivers) section. -## Quantum Painter LVGL API :id=lvgl-api +## Quantum Painter LVGL API {#lvgl-api} -### Quantum Painter LVGL Attach :id=lvgl-api-init +### Quantum Painter LVGL Attach {#lvgl-api-init} ```c bool qp_lvgl_attach(painter_device_t device); @@ -39,10 +41,13 @@ void keyboard_post_init_kb(void) { } } ``` -To init. the display please read the [Display Initialisation](quantum_painter.md#quantum-painter-api-init) section. +To init. the display please read the [Display Initialisation](quantum_painter#quantum-painter-api-init) section. -!> Attaching LVGL to a display means LVGL subsequently "owns" the display. Using standard Quantum Painter drawing operations with the display after LVGL attachment will likely result in display artifacts. -### Quantum Painter LVGL Detach :id=lvgl-api-init +::: warning +Attaching LVGL to a display means LVGL subsequently "owns" the display. Using standard Quantum Painter drawing operations with the display after LVGL attachment will likely result in display artifacts. +::: + +### Quantum Painter LVGL Detach {#lvgl-api-detach} ```c void qp_lvgl_detach(void) @@ -50,7 +55,7 @@ void qp_lvgl_detach(void) The `qp_lvgl_detach` function stops the internal LVGL ticks and releases resources related to it. -## Enabling/Disabling LVGL features :id=lvgl-configuring +## Enabling/Disabling LVGL features {#lvgl-configuring} You can overwrite LVGL specific features in your `lv_conf.h` file. diff --git a/docs/quantum_painter_qff.md b/docs/quantum_painter_qff.md index f62d59bdcb1..3695be2c5b4 100644 --- a/docs/quantum_painter_qff.md +++ b/docs/quantum_painter_qff.md @@ -1,4 +1,4 @@ -# QMK Font Format :id=qmk-font-format +# QMK Font Format {#qmk-font-format} QMK uses a font format _("Quantum Font Format" - QFF)_ specifically for resource-constrained systems. @@ -16,11 +16,11 @@ The general structure of the file is: * _Font palette block_ (optional, depending on frame format) * _Font data block_ -## Block Header :id=qff-block-header +## Block Header {#qff-block-header} -The block header is identical to [QGF's block header](quantum_painter_qgf.md#qgf-block-header), and is present for all blocks, including the font descriptor. +The block header is identical to [QGF's block header](quantum_painter_qgf#qgf-block-header), and is present for all blocks, including the font descriptor. -## Font descriptor block :id=qff-font-descriptor +## Font descriptor block {#qff-font-descriptor} * _typeid_ = 0x00 * _length_ = 20 @@ -47,9 +47,9 @@ typedef struct __attribute__((packed)) qff_font_descriptor_v1_t { // _Static_assert(sizeof(qff_font_descriptor_v1_t) == (sizeof(qgf_block_header_v1_t) + 20), "qff_font_descriptor_v1_t must be 25 bytes in v1 of QFF"); ``` -The values for `format`, `flags`, `compression_scheme`, and `transparency_index` match [QGF's frame descriptor block](quantum_painter_qgf.md#qgf-frame-descriptor), with the exception that the `delta` flag is ignored by QFF. +The values for `format`, `flags`, `compression_scheme`, and `transparency_index` match [QGF's frame descriptor block](quantum_painter_qgf#qgf-frame-descriptor), with the exception that the `delta` flag is ignored by QFF. -## ASCII glyph table :id=qff-ascii-table +## ASCII glyph table {#qff-ascii-table} * _typeid_ = 0x01 * _length_ = 290 @@ -69,7 +69,7 @@ typedef struct __attribute__((packed)) qff_ascii_glyph_table_v1_t { // _Static_assert(sizeof(qff_ascii_glyph_table_v1_t) == (sizeof(qgf_block_header_v1_t) + 285), "qff_ascii_glyph_table_v1_t must be 290 bytes in v1 of QFF"); ``` -## Unicode glyph table :id=qff-unicode-table +## Unicode glyph table {#qff-unicode-table} * _typeid_ = 0x02 * _length_ = variable @@ -86,18 +86,18 @@ typedef struct __attribute__((packed)) qff_unicode_glyph_table_v1_t { } qff_unicode_glyph_table_v1_t; ``` -## Font palette block :id=qff-palette-descriptor +## Font palette block {#qff-palette-descriptor} * _typeid_ = 0x03 * _length_ = variable -The _font palette block_ is identical to [QGF's frame palette block](quantum_painter_qgf.md#qgf-frame-palette-descriptor), retaining the same _typeid_ of 0x03. +The _font palette block_ is identical to [QGF's frame palette block](quantum_painter_qgf#qgf-frame-palette-descriptor), retaining the same _typeid_ of 0x03. It is only specified in the QFF if the font is palette-based, and follows the _unicode glyph block_ if the font contains any Unicode glyphs, or the _ASCII glyph block_ if the font contains only ASCII glyphs. -## Font data block :id=qff-data-descriptor +## Font data block {#qff-data-descriptor} * _typeid_ = 0x04 * _length_ = variable -The _font data block_ is the last block in the file and is identical to [QGF's frame data block](quantum_painter_qgf.md#qgf-frame-data-descriptor), however has a different _typeid_ of 0x04 in QFF. +The _font data block_ is the last block in the file and is identical to [QGF's frame data block](quantum_painter_qgf#qgf-frame-data-descriptor), however has a different _typeid_ of 0x04 in QFF. diff --git a/docs/quantum_painter_qgf.md b/docs/quantum_painter_qgf.md index caf6731e652..700b78d105d 100644 --- a/docs/quantum_painter_qgf.md +++ b/docs/quantum_painter_qgf.md @@ -1,4 +1,4 @@ -# QMK Graphics Format :id=qmk-graphics-format +# QMK Graphics Format {#qmk-graphics-format} QMK uses a graphics format _("Quantum Graphics Format" - QGF)_ specifically for resource-constrained systems. @@ -20,7 +20,7 @@ The general structure of the file is: Different frames within the file should be considered "isolated" and may have their own image format and/or palette. -## Block Header :id=qgf-block-header +## Block Header {#qgf-block-header} This block header is present for all blocks, including the graphics descriptor. @@ -36,7 +36,7 @@ typedef struct __attribute__((packed)) qgf_block_header_v1_t { ``` The _length_ describes the number of octets in the data following the block header -- a block header may specify a _length_ of `0` if no blob is specified. -## Graphics descriptor block :id=qgf-graphics-descriptor +## Graphics descriptor block {#qgf-graphics-descriptor} * _typeid_ = 0x00 * _length_ = 18 @@ -59,7 +59,7 @@ typedef struct __attribute__((packed)) qgf_graphics_descriptor_v1_t { // _Static_assert(sizeof(qgf_graphics_descriptor_v1_t) == (sizeof(qgf_block_header_v1_t) + 18), "qgf_graphics_descriptor_v1_t must be 23 bytes in v1 of QGF"); ``` -## Frame offset block :id=qgf-frame-offset-descriptor +## Frame offset block {#qgf-frame-offset-descriptor} * _typeid_ = 0x01 * _length_ = variable @@ -77,7 +77,7 @@ typedef struct __attribute__((packed)) qgf_frame_offsets_v1_t { } qgf_frame_offsets_v1_t; ``` -## Frame descriptor block :id=qgf-frame-descriptor +## Frame descriptor block {#qgf-frame-descriptor} * _typeid_ = 0x02 * _length_ = 5 @@ -125,9 +125,9 @@ Frame flags is a bitmask with the following format: Compression scheme possible values: * `0x00`: No compression -* `0x01`: [QMK RLE](quantum_painter_rle.md) +* `0x01`: [QMK RLE](quantum_painter_rle) -## Frame palette block :id=qgf-frame-palette-descriptor +## Frame palette block {#qgf-frame-palette-descriptor} * _typeid_ = 0x03 * _length_ = variable @@ -145,7 +145,7 @@ typedef struct __attribute__((packed)) qgf_palette_v1_t { } qgf_palette_v1_t; ``` -## Frame delta block :id=qgf-frame-delta-descriptor +## Frame delta block {#qgf-frame-delta-descriptor} * _typeid_ = 0x04 * _length_ = 8 @@ -163,7 +163,7 @@ typedef struct __attribute__((packed)) qgf_delta_v1_t { // _Static_assert(sizeof(qgf_delta_v1_t) == 13, "qgf_delta_v1_t must be 13 bytes in v1 of QGF"); ``` -## Frame data block :id=qgf-frame-data-descriptor +## Frame data block {#qgf-frame-data-descriptor} * _typeid_ = 0x05 * _length_ = variable diff --git a/docs/quantum_painter_rle.md b/docs/quantum_painter_rle.md index dcb9a1e1a7f..9c13ad6adab 100644 --- a/docs/quantum_painter_rle.md +++ b/docs/quantum_painter_rle.md @@ -1,6 +1,6 @@ -# QMK QGF/QFF RLE data schema :id=qmk-qp-rle-schema +# QMK QGF/QFF RLE data schema {#qmk-qp-rle-schema} -There are two "modes" to the RLE algorithm used in both [QGF](quantum_painter_qgf.md)/[QFF](quantum_painter_qff.md): +There are two "modes" to the RLE algorithm used in both [QGF](quantum_painter_qgf)/[QFF](quantum_painter_qff): * Non-repeating sections of octets, with associated length of up to `128` octets * `length` = `marker - 128` diff --git a/docs/redirects.json b/docs/redirects.json deleted file mode 100644 index 651148c2c12..00000000000 --- a/docs/redirects.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "redirects": [ - { - "from": "adding_a_keyboard_to_qmk.html", - "to": "hardware_keyboard_guidelines.html" - }, - { - "from": "build_environment_setup.html", - "to": "getting_started_build_tools.html" - }, - { - "from": "dynamic_macros.html", - "to": "feature_dynamic_macros.html" - }, - { - "from": "feature_common_shortcuts.html", - "to": "feature_advanced_keycodes.html" - }, - { - "from": "glossary.html", - "to": "reference_glossary.html" - }, - { - "from": "key_lock.html", - "to": "feature_key_lock.html" - }, - { - "from": "make_instructions.html", - "to": "getting_started_make_guide.html" - }, - { - "from": "porting_your_keyboard_to_qmk.html", - "to": "hardware_avr.html" - }, - { - "from": "space_cadet_shift.html", - "to": "feature_space_cadet_shift.html" - }, - { - "from": "tap_dance.html", - "to": "feature_tap_dance.html" - }, - { - "from": "unicode.html", - "to": "feature_unicode.html" - }, - { - "from": "python_development.html", - "to": "cli_development.html" - } - ] -} diff --git a/docs/ref_functions.md b/docs/ref_functions.md index c82c5747c2b..156c9ed20b1 100644 --- a/docs/ref_functions.md +++ b/docs/ref_functions.md @@ -2,7 +2,7 @@ There are a lot of hidden functions in QMK that are incredibly useful, or may add a bit of functionality that you've been wanting. Functions that are specific to certain features are not included here, as those will be on their respective feature page. -## (OLKB) Tri Layers :id=olkb-tri-layers +## (OLKB) Tri Layers {#olkb-tri-layers} There are actually separate functions that you can use there, depending on what you're after. @@ -41,7 +41,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { ``` ### `update_tri_layer_state(state, x, y, z)` -The other function is `update_tri_layer_state(state, x, y, z)`. This function is meant to be called from the [`layer_state_set_*` functions](custom_quantum_functions.md#layer-change-code). This means that any time that you use a keycode to change the layer, this will be checked. So you could use `LT(layer, kc)` to change the layer and it will trigger the same layer check. +The other function is `update_tri_layer_state(state, x, y, z)`. This function is meant to be called from the [`layer_state_set_*` functions](custom_quantum_functions#layer-change-code). This means that any time that you use a keycode to change the layer, this will be checked. So you could use `LT(layer, kc)` to change the layer and it will trigger the same layer check. There are a couple of caveats to this method: 1. You cannot access the `z` layer without having `x` and `y` layers on, since if you try to activate just layer `z`, it will run this code and turn off layer `z` before you could use it. @@ -71,7 +71,7 @@ Do you want to set the default layer, so that it's retained even after you unplu To use this, you would use `set_single_persistent_default_layer(layer)`. If you have a name defined for your layer, you can use that instead (such as _QWERTY, _DVORAK or _COLEMAK). -This will set the default layer, update the persistent settings, and play a tune if you have [Audio](feature_audio.md) enabled on your board, and the default layer sounds set. +This will set the default layer, update the persistent settings, and play a tune if you have [Audio](feature_audio) enabled on your board, and the default layer sounds set. To configure the default layer sounds, you would want to define this in your `config.h` file, like this: @@ -83,7 +83,9 @@ To configure the default layer sounds, you would want to define this in your `co ``` -?> There are a large number of predefined songs in [quantum/audio/song_list.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/audio/song_list.h) that you can use. +::: tip +There are a large number of predefined songs in [quantum/audio/song_list.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/audio/song_list.h) that you can use. +::: ## Resetting the keyboard @@ -97,7 +99,7 @@ To reset to the bootloader use `QK_BOOTLOADER` or `QK_BOOT` keycode or `reset_ke ## Wiping the EEPROM (Persistent Storage) -If you're having issues with Audio, RGB Underglow, backlighting or keys acting weird, then you can reset the EEPROM (persistent setting storage). To force an EEPROM reset, use the [`EE_CLR` keycode](quantum_keycodes.md) or [Bootmagic Lite](feature_bootmagic.md) functionality. If neither of those are an option, then you can use a custom macro to do so. +If you're having issues with Audio, RGB Underglow, backlighting or keys acting weird, then you can reset the EEPROM (persistent setting storage). To force an EEPROM reset, use the [`EE_CLR` keycode](quantum_keycodes) or [Bootmagic Lite](feature_bootmagic) functionality. If neither of those are an option, then you can use a custom macro to do so. To wipe the EEPROM, run `eeconfig_init()` from your function or macro to reset most of the settings to default. @@ -105,7 +107,9 @@ To wipe the EEPROM, run `eeconfig_init()` from your function or macro to reset m If you want to send a random character to the host computer, you can use the `tap_random_base64()` function. This [pseudorandomly](https://en.wikipedia.org/wiki/Pseudorandom_number_generator) selects a number between 0 and 63, and then sends a key press based on that selection. (0–25 is `A`–`Z`, 26–51 is `a`–`z`, 52–61 is `0`–`9`, 62 is `+` and 63 is `/`). -?> Needless to say, but this is _not_ a cryptographically secure method of generating random Base64 keys or passwords. +::: tip +Needless to say, but this is _not_ a cryptographically secure method of generating random Base64 keys or passwords. +::: ## Software Timers diff --git a/docs/reference_configurator_support.md b/docs/reference_configurator_support.md index db6cd80a20a..dffed5c0c34 100644 --- a/docs/reference_configurator_support.md +++ b/docs/reference_configurator_support.md @@ -21,7 +21,9 @@ To understand how the Configurator understands keyboards, first one must underst |---------------| ``` -?> For more on layout macros, see [Understanding QMK: Matrix Scanning](understanding_qmk.md?id=matrix-scanning) and [Understanding QMK: Matrix to Physical Layout Map](understanding_qmk.md?id=matrix-to-physical-layout-map). +::: tip +For more on layout macros, see [Understanding QMK: Matrix Scanning](understanding_qmk#matrix-scanning) and [Understanding QMK: Matrix to Physical Layout Map](understanding_qmk#matrix-to-physical-layout-map). +::: The Configurator's API reads the keyboard's `.h` file from `qmk_firmware/keyboards//.h`. For our numpad, this file would be `qmk_firmware/keyboards/numpad/numpad.h`: @@ -65,9 +67,13 @@ QMK uses `KC_NO` to designate places in the switch matrix where there is no swit } ``` -!> This usage differs from that of keymap macros, which almost always use `XXXXXXX` (seven capital X's) for `KC_NO` and `_______` (seven underscores) for `KC_TRNS`. +::: warning +This usage differs from that of keymap macros, which almost always use `XXXXXXX` (seven capital X's) for `KC_NO` and `_______` (seven underscores) for `KC_TRNS`. +::: -!> To prevent user confusion, using `KC_NO` is preferred. +::: warning +To prevent user confusion, using `KC_NO` is preferred. +::: The layout macro tells the Configurator that our keyboard has 17 keys, arranged in five rows of four columns each. Our switch positions are named `k`, counting from 0. The names themselves actually don't matter, as long as they match between the top section, which receives the keycodes from the keymap, and the bottom half which designates where each key is in the matrix. @@ -141,7 +147,9 @@ The `layouts` object contains the data that represents the physical layout of th Some objects will also have `"w"` and `"h"` keys, which represent a key's width and height, respectively. -?> For more on the `info.json` files, see [`info.json` Format](reference_info_json.md). +::: tip +For more on the `info.json` files, see [`info.json` Format](reference_info_json). +::: ## How the Configurator Programs Keys diff --git a/docs/reference_glossary.md b/docs/reference_glossary.md index 31855606be7..cf8c8f0d75f 100644 --- a/docs/reference_glossary.md +++ b/docs/reference_glossary.md @@ -36,12 +36,12 @@ An alternative keyboard layout developed by Dr. August Dvorak in the 1930's. A s ## Dynamic Macro A macro which has been recorded on the keyboard and which will be lost when the keyboard is unplugged or the computer rebooted. -* [Dynamic Macro Documentation](feature_dynamic_macros.md) +* [Dynamic Macro Documentation](feature_dynamic_macros) ## Eclipse An IDE that is popular with many C developers. -* [Eclipse Setup Instructions](other_eclipse.md) +* [Eclipse Setup Instructions](other_eclipse) ## Firmware The software that controls your MCU. @@ -59,7 +59,7 @@ In-system programming, a method of programming an AVR chip using external hardwa An interface for receiving debugging messages from your keyboard. You can view these messages using [QMK Flasher](https://github.com/qmk/qmk_flasher) or [PJRC's hid_listen](https://www.pjrc.com/teensy/hid_listen.html) ## Keycode -A 2-byte number that represents a particular key. `0x00`-`0xFF` are used for [Basic Keycodes](keycodes_basic.md) while `0x100`-`0xFFFF` are used for [Quantum Keycodes](quantum_keycodes.md). +A 2-byte number that represents a particular key. `0x00`-`0xFF` are used for [Basic Keycodes](keycodes_basic) while `0x100`-`0xFFFF` are used for [Quantum Keycodes](quantum_keycodes). ## Key Down An event that happens when a key is pressed down, but is completed before a key is released. @@ -76,7 +76,7 @@ An abstraction used to allow a key to serve multiple purposes. The highest activ ## Leader Key A feature that allows you to tap the leader key followed by a sequence of 1, 2, or 3 keys to activate key presses or other quantum features. -* [Leader Key Documentation](feature_leader_key.md) +* [Leader Key Documentation](feature_leader_key) ## LED Light Emitting Diode, the most common device used for indicators on a keyboard. @@ -90,7 +90,7 @@ A wiring pattern of columns and rows that enables the MCU to detect keypresses w ## Macro A feature that lets you send multiple keypress events (hid reports) after having pressed only a single key. -* [Macro Documentation](feature_macros.md) +* [Macro Documentation](feature_macros) ## MCU Microcontrol Unit, the processor that powers your keyboard. @@ -101,7 +101,7 @@ A key that is held down while typing another key to modify the action of that ke ## Mousekeys A feature that lets you control your mouse cursor and click from your keyboard. -* [Mousekeys Documentation](feature_mouse_keys.md) +* [Mousekeys Documentation](feature_mouse_keys) ## N-Key Rollover (NKRO) A term that applies to keyboards that are capable of reporting any number of key-presses at once. @@ -130,7 +130,7 @@ A 1 byte number that is sent as part of a HID report over USB that represents a ## Space Cadet Shift A special set of shift keys which allow you to type various types of braces by tapping the left or right shift one or more times. -* [Space Cadet Shift Documentation](feature_space_cadet.md) +* [Space Cadet Shift Documentation](feature_space_cadet) ## Tap Pressing and releasing a key. In some situations you will need to distinguish between a key down and a key up event, and Tap always refers to both at once. @@ -138,7 +138,7 @@ Pressing and releasing a key. In some situations you will need to distinguish be ## Tap Dance A feature that lets you assign multiple keycodes to the same key based on how many times you press it. -* [Tap Dance Documentation](feature_tap_dance.md) +* [Tap Dance Documentation](feature_tap_dance) ## Teensy A low-cost AVR development board that is commonly used for hand-wired builds. A teensy is often chosen despite costing a few dollars more due to its halfkay bootloader, which makes flashing very simple. @@ -149,12 +149,12 @@ A generic term for LEDs that light the underside of the board. These LEDs typica ## Unicode In the larger computer world Unicode is a set of encoding schemes for representing characters in any language. As it relates to QMK it means using various OS schemes to send unicode codepoints instead of scancodes. -* [Unicode Documentation](feature_unicode.md) +* [Unicode Documentation](feature_unicode) ## Unit Testing A framework for running automated tests against QMK. Unit testing helps us be confident that our changes do not break anything. -* [Unit Testing Documentation](unit_testing.md) +* [Unit Testing Documentation](unit_testing) ## USB Universal Serial Bus, the most common wired interface for a keyboard. diff --git a/docs/reference_info_json.md b/docs/reference_info_json.md index 8a2ded95f75..25d2e9d1d83 100644 --- a/docs/reference_info_json.md +++ b/docs/reference_info_json.md @@ -1,10 +1,10 @@ -# `info.json` Reference :id=info-json-reference +# `info.json` Reference {#info-json-reference} -The information contained in `info.json` is combined with the `config.h` and `rules.mk` files, dynamically generating the necessary configuration for your keyboard at compile time. It is also used by the [QMK API](https://github.com/qmk/qmk_api), and contains the information [QMK Configurator](https://config.qmk.fm/) needs to display a representation of your keyboard. Its key/value pairs are ruled by the [`data/schemas/keyboard.jsonschema`](https://github.com/qmk/qmk_firmware/blob/master/data/schemas/keyboard.jsonschema) file. To learn more about the why and how of the schema file see the [Data Driven Configuration](https://docs.qmk.fm/#/data_driven_config) page. +The information contained in `info.json` is combined with the `config.h` and `rules.mk` files, dynamically generating the necessary configuration for your keyboard at compile time. It is also used by the [QMK API](https://github.com/qmk/qmk_api), and contains the information [QMK Configurator](https://config.qmk.fm/) needs to display a representation of your keyboard. Its key/value pairs are ruled by the [`data/schemas/keyboard.jsonschema`](https://github.com/qmk/qmk_firmware/blob/master/data/schemas/keyboard.jsonschema) file. To learn more about the why and how of the schema file see the [Data Driven Configuration](data_driven_config) page. You can create `info.json` files at every level under `qmk_firmware/keyboards/`. These files are combined, with more specific files overriding keys in less specific files. This means you do not need to duplicate your metadata information. For example, `qmk_firmware/keyboards/clueboard/info.json` specifies information common to all Clueboard products, such as `manufacturer` and `maintainer`, while `qmk_firmware/keyboards/clueboard/66/info.json` contains more specific information about Clueboard 66%. -## General Metadata :id=general-metadata +## General Metadata {#general-metadata} * `keyboard_name` (Required) * A free-form text string describing the keyboard. This will be used as the USB product string. Can include Unicode characters, escaped to ASCII eg. `\u03A8` (Ψ). @@ -25,7 +25,7 @@ You can create `info.json` files at every level under `qmk_firmware/keyboards/ Serial in this context should be read as **sending information one bit at a time**, rather than implementing UART/USART/RS485/RS232 standards. +::: tip +Serial in this context should be read as **sending information one bit at a time**, rather than implementing UART/USART/RS485/RS232 standards. +:::
@@ -16,7 +18,9 @@ The Serial driver powers the [Split Keyboard](feature_split_keyboard.md) feature This is the Default driver, absence of configuration assumes this driver. It works by [bit banging](https://en.wikipedia.org/wiki/Bit_banging) a GPIO pin using the CPU. It is therefore not as efficient as a dedicated hardware peripheral, which the Half-duplex and Full-duplex drivers use. -!> On ARM platforms the bitbang driver causes connection issues when using it together with the bitbang WS2812 driver. Choosing alternate drivers for both serial and WS2812 (instead of bitbang) is strongly recommended. +::: warning +On ARM platforms the bitbang driver causes connection issues when using it together with the bitbang WS2812 driver. Choosing alternate drivers for both serial and WS2812 (instead of bitbang) is strongly recommended. +::: ### Pin configuration @@ -76,7 +80,9 @@ Targeting ARM boards based on ChibiOS, where communication is offloaded to a USA Only one GPIO pin is needed for the Half-duplex driver, as only one wire is used for receiving and transmitting data. This pin is referred to as the `SERIAL_USART_TX_PIN` in the configuration. Ensure that the pin chosen for split communication can operate as the TX pin of the contoller's USART peripheral. A TRS or USB cable provides enough conductors for this driver to function. As the split connection is configured to operate in open-drain mode, an **external pull-up resistor is needed to keep the line high**. Resistor values of 1.5kΩ to 8.2kΩ are known to work. -!> ***Note:*** A pull-up resistor isn't required for RP2040 controllers configured with PIO subsystem. +::: warning +***Note:*** A pull-up resistor isn't required for RP2040 controllers configured with PIO subsystem. +::: ### Setup @@ -102,7 +108,7 @@ SERIAL_DRIVER = vendor #define SERIAL_USART_TX_PIN B6 // The GPIO pin that is used split communication. ``` -For STM32 MCUs several GPIO configuration options can be changed as well. See the section ["Alternate Functions for selected STM32 MCUs"](alternate-functions-for-selected-stm32-mcus). +For STM32 MCUs several GPIO configuration options can be changed as well. See the section ["Alternate Functions for selected STM32 MCUs"](#alternate-functions-for-selected-stm32-mcus). ```c #define USART1_REMAP // Remap USART TX and RX pins on STM32F103 MCUs, see table below. @@ -163,7 +169,7 @@ SERIAL_DRIVER = vendor #define SERIAL_USART_RX_PIN B7 // USART RX pin ``` -For STM32 MCUs several GPIO configuration options, including the ability for `TX` to `RX` pin swapping, can be changed as well. See the section ["Alternate Functions for selected STM32 MCUs"](alternate-functions-for-selected-stm32-mcus). +For STM32 MCUs several GPIO configuration options, including the ability for `TX` to `RX` pin swapping, can be changed as well. See the section ["Alternate Functions for selected STM32 MCUs"](#alternate-functions-for-selected-stm32-mcus). ```c #define SERIAL_USART_PIN_SWAP // Swap TX and RX pins if keyboard is master halve. (Only available on some MCUs) @@ -291,7 +297,9 @@ If you're having issues withe serial communication, you can enable debug message #define SERIAL_DEBUG ``` -?> The messages will be printed out to the `CONSOLE` output. For additional information, refer to [Debugging/Troubleshooting QMK](faq_debug.md). +::: tip +The messages will be printed out to the `CONSOLE` output. For additional information, refer to [Debugging/Troubleshooting QMK](faq_debug). +::: ## Alternate Functions for selected STM32 MCUs diff --git a/docs/spi_driver.md b/docs/spi_driver.md index 569a19f1db4..b77e2dbb46f 100644 --- a/docs/spi_driver.md +++ b/docs/spi_driver.md @@ -1,10 +1,10 @@ -# SPI Master Driver :id=spi-master-driver +# SPI Master Driver {#spi-master-driver} The SPI Master drivers used in QMK have a set of common functions to allow portability between MCUs. -## Usage :id=usage +## Usage {#usage} -In most cases, the SPI Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](feature_oled_driver.md). +In most cases, the SPI Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](feature_oled_driver). However, if you need to use the driver standalone, add the following to your `rules.mk`: @@ -14,7 +14,7 @@ SPI_DRIVER_REQUIRED = yes You can then call the SPI API by including `spi_master.h` in your code. -## AVR Configuration :id=avr-configuration +## AVR Configuration {#avr-configuration} No special setup is required - just connect the `SS`, `SCK`, `MOSI` and `MISO` pins of your SPI devices to the matching pins on the MCU: @@ -28,7 +28,7 @@ No special setup is required - just connect the `SS`, `SCK`, `MOSI` and `MISO` p You may use more than one slave select pin, not just the `SS` pin. This is useful when you have multiple devices connected and need to communicate with them individually. `SPI_SS_PIN` can be passed to `spi_start()` to refer to `SS`. -## ChibiOS/ARM Configuration :id=arm-configuration +## ChibiOS/ARM Configuration {#arm-configuration} You'll need to determine which pins can be used for SPI -- as an example, STM32 parts generally have multiple SPI peripherals, labeled SPI1, SPI2, SPI3 etc. @@ -66,19 +66,19 @@ If a complete SPI interface is not required, then the following can be done to d - in `config.h`: `#define SPI_MOSI_PIN NO_PIN` - in `mcuconf.h`: `#define SPI_SELECT_MODE SPI_SELECT_MODE_NONE`, in this case the `slavePin` argument passed to `spi_start()` may be `NO_PIN` if the slave select pin is not used. -## API :id=api +## API {#api} -### `void spi_init(void)` :id=api-spi-init +### `void spi_init(void)` {#api-spi-init} Initialize the SPI driver. This function must be called only once, before any of the below functions can be called. --- -### `bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)` :id=api-spi-start +### `bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)` {#api-spi-start} Start an SPI transaction. -#### Arguments :id=api-spi-start-arguments +#### Arguments {#api-spi-start-arguments} - `pin_t slavePin` The QMK pin to assert as the slave select pin, eg. `B4`. @@ -97,71 +97,71 @@ Start an SPI transaction. - `uint16_t divisor` The SPI clock divisor, will be rounded up to the nearest power of two. This number can be calculated by dividing the MCU's clock speed by the desired SPI clock speed. For example, an MCU running at 8 MHz wanting to talk to an SPI device at 4 MHz would set the divisor to `2`. -#### Return Value :id=api-spi-start-return +#### Return Value {#api-spi-start-return} `false` if the supplied parameters are invalid or the SPI peripheral is already in use, or `true`. --- -### `spi_status_t spi_write(uint8_t data)` :id=api-spi-write +### `spi_status_t spi_write(uint8_t data)` {#api-spi-write} Write a byte to the selected SPI device. -#### Arguments :id=api-spi-write-arguments +#### Arguments {#api-spi-write-arguments} - `uint8_t data` The byte to write. -#### Return Value :id=api-spi-write-return +#### Return Value {#api-spi-write-return} `SPI_STATUS_TIMEOUT` if the timeout period elapses, or `SPI_STATUS_SUCCESS`. --- -### `spi_status_t spi_read(void)` :id=api-spi-read +### `spi_status_t spi_read(void)` {#api-spi-read} Read a byte from the selected SPI device. -#### Return Value :id=api-spi-read-return +#### Return Value {#api-spi-read-return} `SPI_STATUS_TIMEOUT` if the timeout period elapses, or the byte read from the device. --- -### `spi_status_t spi_transmit(const uint8_t *data, uint16_t length)` :id=api-spi-transmit +### `spi_status_t spi_transmit(const uint8_t *data, uint16_t length)` {#api-spi-transmit} Send multiple bytes to the selected SPI device. -#### Arguments :id=api-spi-transmit-arguments +#### Arguments {#api-spi-transmit-arguments} - `const uint8_t *data` A pointer to the data to write from. - `uint16_t length` The number of bytes to write. Take care not to overrun the length of `data`. -#### Return Value :id=api-spi-transmit-return +#### Return Value {#api-spi-transmit-return} `SPI_STATUS_TIMEOUT` if the timeout period elapses, `SPI_STATUS_ERROR` if some other error occurs, otherwise `SPI_STATUS_SUCCESS`. --- -### `spi_status_t spi_receive(uint8_t *data, uint16_t length)` :id=api-spi-receive +### `spi_status_t spi_receive(uint8_t *data, uint16_t length)` {#api-spi-receive} Receive multiple bytes from the selected SPI device. -#### Arguments :id=api-spi-receive-arguments +#### Arguments {#api-spi-receive-arguments} - `uint8_t *data` A pointer to the buffer to read into. - `uint16_t length` The number of bytes to read. Take care not to overrun the length of `data`. -#### Return Value :id=api-spi-receive-return +#### Return Value {#api-spi-receive-return} `SPI_STATUS_TIMEOUT` if the timeout period elapses, `SPI_STATUS_ERROR` if some other error occurs, otherwise `SPI_STATUS_SUCCESS`. --- -### `void spi_stop(void)` :id=api-spi-stop +### `void spi_stop(void)` {#api-spi-stop} End the current SPI transaction. This will deassert the slave select pin and reset the endianness, mode and divisor configured by `spi_start()`. diff --git a/docs/squeezing_avr.md b/docs/squeezing_avr.md index 3f014cafb7e..c3f3d3c6e1e 100644 --- a/docs/squeezing_avr.md +++ b/docs/squeezing_avr.md @@ -27,7 +27,7 @@ SPACE_CADET_ENABLE = no GRAVE_ESC_ENABLE = no MAGIC_ENABLE = no ``` -These features are enabled by default, but they may not be needed. Double check to make sure. The [Magic Keycodes](keycodes_magic.md) are the largest and control things like NKRO toggling, GUI and ALT/CTRL swapping, etc. Disabling them will disable those functions. See [Magic Functions](#magic-functions) for disabling related functions. +These features are enabled by default, but they may not be needed. Double check to make sure. The [Magic Keycodes](keycodes_magic) are the largest and control things like NKRO toggling, GUI and ALT/CTRL swapping, etc. Disabling them will disable those functions. See [Magic Functions](#magic-functions) for disabling related functions. If you use `sprintf` or `snprintf` functions you can save around ~400 Bytes by enabling this option. ```make diff --git a/docs/support_deprecation_policy.md b/docs/support_deprecation_policy.md index f7107dfc89c..450a578e2ee 100644 --- a/docs/support_deprecation_policy.md +++ b/docs/support_deprecation_policy.md @@ -6,7 +6,9 @@ In general, feature development is encouraged to support as many hardware config The most frequently-hit constraint is the amount of code that can be flashed onto an ATmega32U4 -- users almost always need to pick and choose included functionality due to the size constraints. -!> [Squeezing AVR](https://docs.qmk.fm/#/squeezing_avr) has some steps that users can take in order to minimise the overall firmware size, which in some cases enables the ability for users to include other desired features. +::: warning +[Squeezing AVR](squeezing_avr) has some steps that users can take in order to minimise the overall firmware size, which in some cases enables the ability for users to include other desired features. +::: ## Deprecation & Removal Policy @@ -27,7 +29,9 @@ There may be several motivations behind the deprecation or removal of functional When a feature is selected for deprecation, future changes to that area will cease to be developed by the QMK team, and Pull Requests submitted against those areas will be declined. -?> As QMK does not gather metrics from its users, the only way the QMK team can gauge the level of usage is to refer to the main QMK Firmware repository -- searching through forks is not practical due to the sheer number of them. +::: tip +As QMK does not gather metrics from its users, the only way the QMK team can gauge the level of usage is to refer to the main QMK Firmware repository -- searching through forks is not practical due to the sheer number of them. +::: ### How much advance notice will be given? diff --git a/docs/sw.js b/docs/sw.js deleted file mode 100644 index 1e4aaeb7621..00000000000 --- a/docs/sw.js +++ /dev/null @@ -1,83 +0,0 @@ -/* =========================================================== - * docsify sw.js - * =========================================================== - * Copyright 2016 @huxpro - * Licensed under Apache 2.0 - * Register service worker. - * ========================================================== */ - -const RUNTIME = 'docsify' -const HOSTNAME_WHITELIST = [ - self.location.hostname, - 'fonts.gstatic.com', - 'fonts.googleapis.com', - 'unpkg.com' -] - -// The Util Function to hack URLs of intercepted requests -const getFixedUrl = (req) => { - var now = Date.now() - var url = new URL(req.url) - - // 1. fixed http URL - // Just keep syncing with location.protocol - // fetch(httpURL) belongs to active mixed content. - // And fetch(httpRequest) is not supported yet. - url.protocol = self.location.protocol - - // 2. add query for caching-busting. - // Github Pages served with Cache-Control: max-age=600 - // max-age on mutable content is error-prone, with SW life of bugs can even extend. - // Until cache mode of Fetch API landed, we have to workaround cache-busting with query string. - // Cache-Control-Bug: https://bugs.chromium.org/p/chromium/issues/detail?id=453190 - if (url.hostname === self.location.hostname) { - url.search += (url.search ? '&' : '?') + 'cache-bust=' + now - } - return url.href -} - -/** - * @Lifecycle Activate - * New one activated when old isnt being used. - * - * waitUntil(): activating ====> activated - */ -self.addEventListener('activate', event => { - event.waitUntil(self.clients.claim()) -}) - -/** - * @Functional Fetch - * All network requests are being intercepted here. - * - * void respondWith(Promise r) - */ -self.addEventListener('fetch', event => { - // Skip some of cross-origin requests, like those for Google Analytics. - if (HOSTNAME_WHITELIST.indexOf(new URL(event.request.url).hostname) > -1) { - // Stale-while-revalidate - // similar to HTTP's stale-while-revalidate: https://www.mnot.net/blog/2007/12/12/stale - // Upgrade from Jake's to Surma's: https://gist.github.com/surma/eb441223daaedf880801ad80006389f1 - const cached = caches.match(event.request) - const fixedUrl = getFixedUrl(event.request) - const fetched = fetch(fixedUrl, { cache: 'no-store' }) - const fetchedCopy = fetched.then(resp => resp.clone()) - - // Call respondWith() with whatever we get first. - // If the fetch fails (e.g disconnected), wait for the cache. - // If there’s nothing in cache, wait for the fetch. - // If neither yields a response, return offline pages. - event.respondWith( - Promise.race([fetched.catch(_ => cached), cached]) - .then(resp => resp || fetched) - .catch(_ => { /* eat any errors */ }) - ) - - // Update the cache with the version we fetched (only for ok status) - event.waitUntil( - Promise.all([fetchedCopy, caches.open(RUNTIME)]) - .then(([response, cache]) => response.ok && cache.put(event.request, response)) - .catch(_ => { /* eat any errors */ }) - ) - } -}) diff --git a/docs/syllabus.md b/docs/syllabus.md index f5cdea21820..82b6110c806 100644 --- a/docs/syllabus.md +++ b/docs/syllabus.md @@ -4,19 +4,19 @@ This page helps you build up your QMK knowledge by introducing the basics first # Beginning Topics -If you read nothing else you should read the documents in this section. After reading the [Tutorial](newbs.md) you should be able to create a basic keymap, compile it, and flash it to your keyboard. The remaining documents will flesh out your knowledge of these basics. +If you read nothing else you should read the documents in this section. After reading the [Tutorial](newbs) you should be able to create a basic keymap, compile it, and flash it to your keyboard. The remaining documents will flesh out your knowledge of these basics. * **Learn How To Use QMK Tools** - * [Tutorial](newbs.md) - * [CLI](cli.md) - * [GIT](newbs_git_best_practices.md) + * [Tutorial](newbs) + * [CLI](cli) + * [GIT](newbs_git_best_practices) * **Learn About Keymaps** - * [Layers](feature_layers.md) - * [Keycodes](keycodes.md) + * [Layers](feature_layers) + * [Keycodes](keycodes) * The full list of keycodes you can use. Note that some may require knowledge found in the Intermediate or Advanced Topics. * **Configuring IDEs** - Optional - * [Eclipse](other_eclipse.md) - * [VS Code](other_vscode.md) + * [Eclipse](other_eclipse) + * [VS Code](other_vscode) # Intermediate Topics @@ -24,49 +24,49 @@ These topics start to dig into some of the features that QMK supports. You don't * **Learn How To Configure Features** - * [Audio](feature_audio.md) + * [Audio](feature_audio) * Lighting - * [Backlight](feature_backlight.md) - * [LED Matrix](feature_led_matrix.md) - * [RGB Lighting](feature_rgblight.md) - * [RGB Matrix](feature_rgb_matrix.md) - * [Tap-Hold Configuration](tap_hold.md) - * [Squeezing Space from AVR](squeezing_avr.md) + * [Backlight](feature_backlight) + * [LED Matrix](feature_led_matrix) + * [RGB Lighting](feature_rgblight) + * [RGB Matrix](feature_rgb_matrix) + * [Tap-Hold Configuration](tap_hold) + * [Squeezing Space from AVR](squeezing_avr) * **Learn More About Keymaps** - * [Keymaps](keymap.md) - * [Custom Functions and Keycodes](custom_quantum_functions.md) + * [Keymaps](keymap) + * [Custom Functions and Keycodes](custom_quantum_functions) * Macros - * [Dynamic Macros](feature_dynamic_macros.md) - * [Compiled Macros](feature_macros.md) - * [Tap Dance](feature_tap_dance.md) - * [Combos](feature_combo.md) - * [Userspace](feature_userspace.md) - * [Key Overrides](feature_key_overrides.md) + * [Dynamic Macros](feature_dynamic_macros) + * [Compiled Macros](feature_macros) + * [Tap Dance](feature_tap_dance) + * [Combos](feature_combo) + * [Userspace](feature_userspace) + * [Key Overrides](feature_key_overrides) # Advanced Topics Everything below here requires a lot of foundational knowledge. Besides being able to create keymaps using advanced features you should be familiar with using both `config.h` and `rules.mk` to configure options for your keyboard. * **Maintaining Keyboards Within QMK** - * [Handwiring a Keyboard](hand_wire.md) - * [Keyboard Guidelines](hardware_keyboard_guidelines.md) - * [info.json Reference](reference_info_json.md) - * [Debounce API](feature_debounce_type.md) + * [Handwiring a Keyboard](hand_wire) + * [Keyboard Guidelines](hardware_keyboard_guidelines) + * [info.json Reference](reference_info_json) + * [Debounce API](feature_debounce_type) * **Advanced Features** - * [Unicode](feature_unicode.md) - * [API](api_overview.md) - * [Bootmagic Lite](feature_bootmagic.md) + * [Unicode](feature_unicode) + * [API](api_overview) + * [Bootmagic Lite](feature_bootmagic) * **Hardware** - * [How Keyboards Work](how_keyboards_work.md) - * [How A Keyboard Matrix Works](how_a_matrix_works.md) - * [Split Keyboards](feature_split_keyboard.md) - * [Stenography](feature_stenography.md) - * [Pointing Devices](feature_pointing_device.md) + * [How Keyboards Work](how_keyboards_work) + * [How A Keyboard Matrix Works](how_a_matrix_works) + * [Split Keyboards](feature_split_keyboard) + * [Stenography](feature_stenography) + * [Pointing Devices](feature_pointing_device) * **Core Development** - * [Coding Conventions](coding_conventions_c.md) - * [Compatible Microcontrollers](compatible_microcontrollers.md) - * [Custom Matrix](custom_matrix.md) - * [Understanding QMK](understanding_qmk.md) + * [Coding Conventions](coding_conventions_c) + * [Compatible Microcontrollers](compatible_microcontrollers) + * [Custom Matrix](custom_matrix) + * [Understanding QMK](understanding_qmk) * **CLI Development** - * [Coding Conventions](coding_conventions_python.md) - * [CLI Development Overview](cli_development.md) + * [Coding Conventions](coding_conventions_python) + * [CLI Development Overview](cli_development) diff --git a/docs/tap_hold.md b/docs/tap_hold.md index 18c90c6932c..fe862894b45 100644 --- a/docs/tap_hold.md +++ b/docs/tap_hold.md @@ -8,7 +8,9 @@ These options let you modify the behavior of the Tap-Hold keys. The crux of all of the following features is the tapping term setting. This determines what is a tap and what is a hold. The exact timing for this to feel natural can vary from keyboard to keyboard, from switch to switch, and from key to key. -?> `DYNAMIC_TAPPING_TERM_ENABLE` enables three special keys that can help you quickly find a comfortable tapping term for you. See "Dynamic Tapping Term" for more details. +::: tip +`DYNAMIC_TAPPING_TERM_ENABLE` enables three special keys that can help you quickly find a comfortable tapping term for you. See "Dynamic Tapping Term" for more details. +::: You can set the global time for this by adding the following setting to your `config.h`: @@ -38,7 +40,7 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { } ``` -### Dynamic Tapping Term :id=dynamic-tapping-term +### Dynamic Tapping Term {#dynamic-tapping-term} `DYNAMIC_TAPPING_TERM_ENABLE` is a feature you can enable in `rules.mk` that lets you use three special keys in your keymap to configure the tapping term on the fly. @@ -126,13 +128,13 @@ The code which decides between the tap and hold actions of dual-role keys suppor Note that until the tap-or-hold decision completes (which happens when either the dual-role key is released, or the tapping term has expired, or the extra condition for the selected decision mode is satisfied), key events are delayed and not transmitted to the host immediately. The default mode gives the most delay (if the dual-role key is held down, this mode always waits for the whole tapping term), and the other modes may give less delay when other keys are pressed, because the hold action may be selected earlier. -### Comparison :id=comparison +### Comparison {#comparison} To better illustrate the tap-or-hold decision modes, let us compare the expected output of each decision mode in a handful of tapping scenarios involving a mod-tap key (`LSFT_T(KC_A)`) and a regular key (`KC_B`) with the `TAPPING_TERM` set to 200ms. Note: "`kc` held" in the "Physical key event" column means that the key wasn't physically released yet at this point in time. -#### Distinct taps (AABB) :id=distinct-taps +#### Distinct taps (AABB) {#distinct-taps} | Time | Physical key event | Default | `PERMISSIVE_HOLD` | `HOLD_ON_OTHER_KEY_PRESS` | |------|--------------------|----------------|-------------------|----------------------------| @@ -149,7 +151,7 @@ Note: "`kc` held" in the "Physical key event" column means that the key wasn't p | 205 | `KC_B` down | b | b | b | | 210 | `KC_B` up | b | b | b | -#### Nested tap (ABBA) :id=nested-tap +#### Nested tap (ABBA) {#nested-tap} | Time | Physical key event | Default | `PERMISSIVE_HOLD` | `HOLD_ON_OTHER_KEY_PRESS` | |------|--------------------|----------------|-------------------|----------------------------| @@ -174,7 +176,7 @@ Note: "`kc` held" in the "Physical key event" column means that the key wasn't p | 210 | `KC_B` up | B | B | B | | 220 | `LSFT_T(KC_A)` up | B | B | B | -#### Rolling keys (ABAB) :id=rolling-keys +#### Rolling keys (ABAB) {#rolling-keys} | Time | Physical key event | Default | `PERMISSIVE_HOLD` | `HOLD_ON_OTHER_KEY_PRESS` | |------|--------------------|----------------|-------------------|----------------------------| @@ -296,7 +298,9 @@ However, this slightly different sequence will not be affected by the “permiss In the sequence above the dual-role key is released before the other key is released, and if that happens within the tapping term, the “permissive hold” mode will still choose the tap action for the dual-role key, and the sequence will be registered as `al` by the host. We could describe this as a “rolling press” (the two keys' key down and key up events behave as if you were rolling a ball across the two keys, first pressing each key down in sequence and then releasing them in the same order). -?> The `PERMISSIVE_HOLD` option is not noticeable if you also enable `HOLD_ON_OTHER_KEY_PRESS` because the latter option considers both the “nested tap” and “rolling press” sequences like shown above as a hold action, not the tap action. `HOLD_ON_OTHER_KEY_PRESS` makes the Tap-Or-Hold decision earlier in the chain of key events, thus taking a precedence over `PERMISSIVE_HOLD`. +::: tip +The `PERMISSIVE_HOLD` option is not noticeable if you also enable `HOLD_ON_OTHER_KEY_PRESS` because the latter option considers both the “nested tap” and “rolling press” sequences like shown above as a hold action, not the tap action. `HOLD_ON_OTHER_KEY_PRESS` makes the Tap-Or-Hold decision earlier in the chain of key events, thus taking a precedence over `PERMISSIVE_HOLD`. +::: For more granular control of this feature, you can add the following to your `config.h`: @@ -394,7 +398,9 @@ With default settings, `a` will be sent on the first release, then `a` will be s With `QUICK_TAP_TERM` configured, the timing between `SFT_T(KC_A)` up and `SFT_T(KC_A)` down must be within `QUICK_TAP_TERM` to trigger auto repeat. Otherwise the second press will be sent as a Shift. If `QUICK_TAP_TERM` is set to `0`, the second press will always be sent as a Shift, effectively disabling auto-repeat. -!> `QUICK_TAP_TERM` timing will also impact anything that uses tapping toggles (Such as the `TT` layer keycode, and the One Shot Tap Toggle). +::: warning +`QUICK_TAP_TERM` timing will also impact anything that uses tapping toggles (Such as the `TT` layer keycode, and the One Shot Tap Toggle). +::: For more granular control of this feature, you can add the following to your `config.h`: @@ -415,7 +421,9 @@ 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`. +::: tip +If `QUICK_TAP_TERM` is set higher than `TAPPING_TERM`, it will default to `TAPPING_TERM`. +::: ## Retro Tapping @@ -483,11 +491,13 @@ Examples: #define MODS_TO_NEUTRALIZE { MOD_BIT(KC_LEFT_ALT), MOD_BIT(KC_LEFT_GUI), MOD_BIT(KC_RIGHT_GUI), MOD_BIT(KC_LEFT_CTRL)|MOD_BIT(KC_LEFT_SHIFT) } ``` -!> Do not use `MOD_xxx` constants like `MOD_LSFT` or `MOD_RALT`, since they're 5-bit packed bit-arrays while `MODS_TO_NEUTRALIZE` expects a list of 8-bit packed bit-arrays. Use `MOD_BIT()` or `MOD_MASK_xxx` instead. +::: warning +Do not use `MOD_xxx` constants like `MOD_LSFT` or `MOD_RALT`, since they're 5-bit packed bit-arrays while `MODS_TO_NEUTRALIZE` expects a list of 8-bit packed bit-arrays. Use `MOD_BIT()` or `MOD_MASK_xxx` instead. +::: ### Retro Shift -[Auto Shift,](feature_auto_shift.md) has its own version of `retro tapping` called `retro shift`. It is extremely similar to `retro tapping`, but holding the key past `AUTO_SHIFT_TIMEOUT` results in the value it sends being shifted. Other configurations also affect it differently; see [here](feature_auto_shift.md#retro-shift) for more information. +[Auto Shift,](feature_auto_shift) has its own version of `retro tapping` called `retro shift`. It is extremely similar to `retro tapping`, but holding the key past `AUTO_SHIFT_TIMEOUT` results in the value it sends being shifted. Other configurations also affect it differently; see [here](feature_auto_shift#retro-shift) for more information. ## Why do we include the key record for the per key functions? diff --git a/docs/translating.md b/docs/translating.md deleted file mode 100644 index 4365817590d..00000000000 --- a/docs/translating.md +++ /dev/null @@ -1,55 +0,0 @@ -# Translating the QMK Docs - -All files in the root folder (`docs/`) should be in English - all other languages should be in subfolders with the ISO 639-1 language codes, followed by `-` and the country code where relevant. [A list of common ones can be found here](https://www.andiamo.co.uk/resources/iso-language-codes/). If this folder doesn't exist, you may create it. Each of the translated files should have the same name as the English version, so things can fall back successfully. - -A `_summary.md` file should exist in this folder with a list of links to each file, with a translated name, and link preceded by the language folder: - -```markdown - * [QMK简介](zh-cn/getting_started_introduction.md) -``` - -All links to other docs pages must also be prefixed with the language folder. If the link is to a specific part of the page (ie. a certain heading), you must use the English ID for the heading, like so: - -```markdown -[建立你的环境](zh-cn/newbs-getting-started.md#set-up-your-environment) - -## 建立你的环境 :id=set-up-your-environment -``` - -Once you've finished translating a new language, you'll also need to modify the following files: - -* [`docs/_langs.md`](https://github.com/qmk/qmk_firmware/blob/master/docs/_langs.md) - Each line should contain a country flag as a [GitHub emoji shortcode](https://github.com/ikatyang/emoji-cheat-sheet/blob/master/README.md#country-flag) followed by the name represented in its own language: - - ```markdown - - [:cn: 中文](/zh-cn/) - ``` - -* [`docs/index.html`](https://github.com/qmk/qmk_firmware/blob/master/docs/index.html) - Both `placeholder` and `noData` objects should have a dictionary entry for the language folder in a string: - - ```js - '/zh-cn/': '没有结果!', - ``` - - The `nameLink` object, for setting the "QMK Firmware" heading link in the sidebar, must also be added to: - - ```js - '/zh-cn/': '/#/zh-cn/', - ``` - - And make sure to add the language folder in the `fallbackLanguages` list, so it will properly fall back to English instead of 404ing: - - ```js - fallbackLanguages: [ - // ... - 'zh-cn', - // ... - ], - ``` - -## Previewing the Translations - -See [Previewing the Documentation](contributing.md#previewing-the-documentation) for how to set up a local instance of the docs - you should be able to select your new language from the "Translations" menu at the top-right. - -Once you're happy with your work, feel free to open a pull request! diff --git a/docs/uart_driver.md b/docs/uart_driver.md index 9b0a92d23d1..23f5b3d6e43 100644 --- a/docs/uart_driver.md +++ b/docs/uart_driver.md @@ -1,10 +1,10 @@ -# UART Driver :id=uart-driver +# UART Driver {#uart-driver} The UART drivers used in QMK have a set of common functions to allow portability between MCUs. Currently, this driver does not support enabling hardware flow control (the `RTS` and `CTS` pins) if available, but may do so in future. -## Usage :id=usage +## Usage {#usage} In most cases, the UART driver code is automatically included if you are using a feature or driver which requires it. @@ -16,7 +16,7 @@ UART_DRIVER_REQUIRED = yes You can then call the UART API by including `uart.h` in your code. -## AVR Configuration :id=avr-configuration +## AVR Configuration {#avr-configuration} No special setup is required - just connect the `RX` and `TX` pins of your UART device to the opposite pins on the MCU: @@ -28,7 +28,7 @@ No special setup is required - just connect the `RX` and `TX` pins of your UART |ATmega32A |`D1`|`D0`|*n/a*|*n/a*| |ATmega328/P |`D1`|`D0`|*n/a*|*n/a*| -## ChibiOS/ARM Configuration :id=arm-configuration +## ChibiOS/ARM Configuration {#arm-configuration} You'll need to determine which pins can be used for UART -- as an example, STM32 parts generally have multiple UART peripherals, labeled USART1, USART2, USART3 etc. @@ -53,45 +53,45 @@ Configuration-wise, you'll need to set up the peripheral as per your MCU's datas | `#define UART_RTS_PIN` | The pin to use for RTS | `A12` | | `#define UART_RTS_PAL_MODE` | The alternate function mode for RTS | `7` | -## API :id=api +## API {#api} -### `void uart_init(uint32_t baud)` :id=api-uart-init +### `void uart_init(uint32_t baud)` {#api-uart-init} Initialize the UART driver. This function must be called only once, before any of the below functions can be called. -#### Arguments :id=api-uart-init-arguments +#### Arguments {#api-uart-init-arguments} - `uint32_t baud` The baud rate to transmit and receive at. This may depend on the device you are communicating with. Common values are 1200, 2400, 4800, 9600, 19200, 38400, 57600, and 115200. --- -### `void uart_write(uint8_t data)` :id=api-uart-write +### `void uart_write(uint8_t data)` {#api-uart-write} Transmit a single byte. -#### Arguments :id=api-uart-write-arguments +#### Arguments {#api-uart-write-arguments} - `uint8_t data` The byte to write. --- -### `uint8_t uart_read(void)` :id=api-uart-read +### `uint8_t uart_read(void)` {#api-uart-read} Receive a single byte. -#### Return Value :id=api-uart-read-return +#### Return Value {#api-uart-read-return} The byte read from the receive buffer. This function will block if the buffer is empty (ie. no data to read). --- -### `void uart_transmit(const uint8_t *data, uint16_t length)` :id=api-uart-transmit +### `void uart_transmit(const uint8_t *data, uint16_t length)` {#api-uart-transmit} Transmit multiple bytes. -#### Arguments :id=api-uart-transmit-arguments +#### Arguments {#api-uart-transmit-arguments} - `const uint8_t *data` A pointer to the data to write from. @@ -100,11 +100,11 @@ Transmit multiple bytes. --- -### `void uart_receive(char *data, uint16_t length)` :id=api-uart-receive +### `void uart_receive(char *data, uint16_t length)` {#api-uart-receive} Receive multiple bytes. -#### Arguments :id=api-uart-receive-arguments +#### Arguments {#api-uart-receive-arguments} - `uint8_t *data` A pointer to the buffer to read into. @@ -113,10 +113,10 @@ Receive multiple bytes. --- -### `bool uart_available(void)` :id=api-uart-available +### `bool uart_available(void)` {#api-uart-available} Return whether the receive buffer contains data. Call this function to determine if `uart_read()` will return data immediately. -#### Return Value :id=api-uart-available-return +#### Return Value {#api-uart-available-return} `true` if the receive buffer length is non-zero. diff --git a/docs/understanding_qmk.md b/docs/understanding_qmk.md index 7cb46bd8cf2..ad5afdc56af 100644 --- a/docs/understanding_qmk.md +++ b/docs/understanding_qmk.md @@ -2,9 +2,9 @@ This document attempts to explain how the QMK firmware works from a very high level. It assumes you understand basic programming concepts but does not (except where needed to demonstrate) assume familiarity with C. It assumes that you have a basic understanding of the following documents: -* [Introduction](getting_started_introduction.md) -* [How Keyboards Work](how_keyboards_work.md) -* [FAQ](faq_general.md) +* [Introduction](getting_started_introduction) +* [How Keyboards Work](how_keyboards_work) +* [FAQ](faq_general) ## Startup diff --git a/docs/unit_testing.md b/docs/unit_testing.md index 60787fdffcf..3e4c914bf12 100644 --- a/docs/unit_testing.md +++ b/docs/unit_testing.md @@ -44,7 +44,7 @@ Note that the tests are always compiled with the native compiler of your platfor If there are problems with the tests, you can find the executable in the `./build/test` folder. You should be able to run those with GDB or a similar debugger. -To forward any [debug messages](unit_testing.md#debug-api) to `stderr`, the tests can run with `DEBUG=1`. For example +To forward any [debug messages](unit_testing#debug-api) to `stderr`, the tests can run with `DEBUG=1`. For example ``` make test:all DEBUG=1 @@ -58,7 +58,7 @@ 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. -# Tracing Variables :id=tracing-variables +# 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/docs/ws2812_driver.md b/docs/ws2812_driver.md index 8851c042f04..c445e2dbf65 100644 --- a/docs/ws2812_driver.md +++ b/docs/ws2812_driver.md @@ -1,4 +1,4 @@ -# WS2812 Driver :id=ws2812-driver +# WS2812 Driver {#ws2812-driver} This driver provides support for WorldSemi addressable RGB(W) LEDs, and compatible equivalents: @@ -8,9 +8,9 @@ This driver provides support for WorldSemi addressable RGB(W) LEDs, and compatib These LEDs are often called "addressable" because instead of using a wire per color (and per LED), each LED contains a small microchip that understands a special protocol sent over a single wire. The LEDs can be chained together, and the remaining data is passed on to the next. In this way, you can easily control the color of many LEDs using a single GPIO. -## Usage :id=usage +## Usage {#usage} -In most cases, the WS2812 driver code is automatically included if you are using either the [RGBLight](feature_rgblight.md) or [RGB Matrix](feature_rgb_matrix.md) feature with the `ws2812` driver set, and you would use those APIs instead. +In most cases, the WS2812 driver code is automatically included if you are using either the [RGBLight](feature_rgblight) or [RGB Matrix](feature_rgb_matrix) feature with the `ws2812` driver set, and you would use those APIs instead. However, if you need to use the driver standalone, add the following to your `rules.mk`: @@ -20,7 +20,7 @@ WS2812_DRIVER_REQUIRED = yes You can then call the WS2812 API by including `ws2812.h` in your code. -## Basic Configuration :id=basic-configuration +## Basic Configuration {#basic-configuration} Add the following to your `config.h`: @@ -35,14 +35,14 @@ Add the following to your `config.h`: |`WS2812_BYTE_ORDER`|`WS2812_BYTE_ORDER_GRB`|The byte order of the RGB data | |`WS2812_RGBW` |*Not defined* |Enables RGBW support (except `i2c` driver) | -### Timing Adjustment :id=timing-adjustment +### Timing Adjustment {#timing-adjustment} The WS2812 LED communication protocol works by encoding a "1" bit with a long high pulse (T1H), and a "0" bit with a shorter pulse (T0H). The total cycle length of a bit is the same. The "reset" pulse (TRST) latches the sent RGB data to all of the LEDs and denotes a completed "frame". Some WS2812 variants have slightly different timing parameter requirements, which can be accounted for if necessary using the above `#define`s in your `config.h`. -### Byte Order :id=byte-order +### Byte Order {#byte-order} Some WS2812 variants may have their color components in a different physical or logical order. For example, the WS2812B-2020 has physically swapped red and green LEDs, which causes the wrong color to be displayed, because the default order of the bytes sent over the wire is defined as GRB. If you find your LED colors are consistently swapped, you may need to change the byte order by adding the following to your `config.h`: @@ -59,7 +59,7 @@ Where the byte order may be one of: |`RGB` |WS2812B-2020 | |`BGR` |TM1812 | -### RGBW Support :id=rgbw-support +### RGBW Support {#rgbw-support} Rendering the color white with RGB LEDs is typically inconsistent due to inherent variations between each individual LED die. However, some WS2812 variants (such as SK6812RGBW) also possess a white LED along with the red, green, and blue channels, which allows for a more accurate white to be displayed. @@ -80,11 +80,11 @@ To enable RGBW conversion, add the following to your `config.h`: #define WS2812_RGBW ``` -## Driver Configuration :id=driver-configuration +## Driver Configuration {#driver-configuration} Driver selection can be configured in `rules.mk` as `WS2812_DRIVER`, or in `info.json` as `ws2812.driver`. Valid values are `bitbang` (default), `i2c`, `spi`, `pwm`, `vendor`, or `custom`. See below for information on individual drivers. -### Bitbang Driver :id=bitbang-driver +### Bitbang Driver {#bitbang-driver} This is the default WS2812 driver. It operates by "bit-banging" ie. directly toggling the GPIO. @@ -94,7 +94,7 @@ Please note that on AVR devices, due to the tight timing requirements longer cha WS2812_DRIVER = bitbang ``` -### I2C Driver :id=i2c-driver +### I2C Driver {#i2c-driver} A specialized driver mainly used for PS2AVRGB (Bootmapper Client) boards, which possess an ATtiny85 that handles the WS2812 LEDs. @@ -109,7 +109,7 @@ The following `#define`s apply only to the `i2c` driver: |`WS2812_I2C_ADDRESS`|`0xB0` |The I2C address of the ATtiny85. | |`WS2812_I2C_TIMEOUT`|`100` |The I2C timeout, in milliseconds.| -### PIO Driver :id=pio-driver +### PIO Driver {#pio-driver} This driver is RP2040-only, and leverages the onboard PIO (programmable I/O) system and DMA to offload processing from the CPU. @@ -119,7 +119,7 @@ The WS2812 PIO program uses one state machine, six instructions and one DMA inte WS2812_DRIVER = vendor ``` -### PWM Driver :id=pwm-driver +### PWM Driver {#pwm-driver} This driver is ARM-only, and leverages the onboard PWM peripheral and DMA to offload processing from the CPU. @@ -127,7 +127,7 @@ This driver is ARM-only, and leverages the onboard PWM peripheral and DMA to off WS2812_DRIVER = pwm ``` -### SPI Driver :id=spi-driver +### SPI Driver {#spi-driver} This driver is ARM-only, and leverages the onboard SPI peripheral and DMA to offload processing from the CPU. The DI pin **must** be connected to the MOSI pin on the MCU, and all other SPI pins **must** be left unused. This is also very dependent on your MCU's SPI peripheral clock speed, and may or may not be possible depending on the MCU selected. @@ -135,7 +135,7 @@ This driver is ARM-only, and leverages the onboard SPI peripheral and DMA to off WS2812_DRIVER = spi ``` -## ChibiOS/ARM Configuration :id=arm-configuration +## ChibiOS/ARM Configuration {#arm-configuration} The following defines apply only to ARM devices: @@ -144,7 +144,7 @@ The following defines apply only to ARM devices: |`WS2812_T1L`|`(WS2812_TIMING - WS2812_T1H)`|The length of a "1" bit's low phase in nanoseconds (bitbang and PIO drivers only)| |`WS2812_T0L`|`(WS2812_TIMING - WS2812_T0H)`|The length of a "0" bit's low phase in nanoseconds (bitbang and PIO drivers only)| -### Push-Pull and Open Drain :id=push-pull-open-drain +### Push-Pull and Open Drain {#push-pull-open-drain} By default, the GPIO used for data transmission is configured as a *push-pull* output, meaning the pin is effectively always driven either to VCC or to ground. @@ -156,7 +156,7 @@ To configure the DI pin for open drain configuration, add the following to your #define WS2812_EXTERNAL_PULLUP ``` -### SPI Driver :id=arm-spi-driver +### SPI Driver {#arm-spi-driver} Depending on the ChibiOS board configuration, you may need to enable SPI at the keyboard level. For STM32, this would look like: @@ -181,7 +181,7 @@ The following `define`s apply only to the `spi` driver: |`WS2812_SPI_DIVISOR` |`16` |The divisor used to adjust the baudrate | |`WS2812_SPI_USE_CIRCULAR_BUFFER`|*Not defined*|Enable a circular buffer for improved rendering | -#### Setting the Baudrate :id=arm-spi-baudrate +#### Setting the Baudrate {#arm-spi-baudrate} To adjust the SPI baudrate, you will need to derive the target baudrate from the clock tree provided by STM32CubeMX, and add the following to your `config.h`: @@ -191,7 +191,7 @@ To adjust the SPI baudrate, you will need to derive the target baudrate from the Only divisors of 2, 4, 8, 16, 32, 64, 128 and 256 are supported on STM32 devices. Other MCUs may have similar constraints -- check the reference manual for your respective MCU for specifics. -#### Circular Buffer :id=arm-spi-circular-buffer +#### Circular Buffer {#arm-spi-circular-buffer} A circular buffer can be enabled if you experience flickering. @@ -201,7 +201,7 @@ To enable the circular buffer, add the following to your `config.h`: #define WS2812_SPI_USE_CIRCULAR_BUFFER ``` -### PIO Driver :id=arm-pio-driver +### PIO Driver {#arm-pio-driver} The following `#define`s apply only to the PIO driver: @@ -209,7 +209,7 @@ The following `#define`s apply only to the PIO driver: |---------------------|-------------|---------------------------------------| |`WS2812_PIO_USE_PIO1`|*Not defined*|Use the PIO1 peripheral instead of PIO0| -### PWM Driver :id=arm-pwm-driver +### PWM Driver {#arm-pwm-driver} Depending on the ChibiOS board configuration, you may need to enable PWM at the keyboard level. For STM32, this would look like: @@ -235,15 +235,17 @@ The following `#define`s apply only to the `pwm` driver: |`WS2812_PWM_DMAMUX_ID` |*Not defined* |The DMAMUX configuration for `TIMx_UP` - only required if your MCU has a DMAMUX peripheral| |`WS2812_PWM_COMPLEMENTARY_OUTPUT`|*Not defined* |Whether the PWM output is complementary (`TIMx_CHyN`) | -?> Using a complementary timer output (`TIMx_CHyN`) is possible only for advanced-control timers (1, 8 and 20 on STM32), and the `STM32_PWM_USE_ADVANCED` option in `mcuconf.h` must be set to `TRUE`. Complementary outputs of general-purpose timers are not supported due to ChibiOS limitations. +::: tip +Using a complementary timer output (`TIMx_CHyN`) is possible only for advanced-control timers (1, 8 and 20 on STM32), and the `STM32_PWM_USE_ADVANCED` option in `mcuconf.h` must be set to `TRUE`. Complementary outputs of general-purpose timers are not supported due to ChibiOS limitations. +::: -## API :id=api +## API {#api} -### `void ws2812_setleds(rgb_led_t *ledarray, uint16_t number_of_leds)` :id=api-ws2812-setleds +### `void ws2812_setleds(rgb_led_t *ledarray, uint16_t number_of_leds)` {#api-ws2812-setleds} Send RGB data to the WS2812 LED chain. -#### Arguments :id=api-ws2812-setleds-arguments +#### Arguments {#api-ws2812-setleds-arguments} - `rgb_led_t *ledarray` A pointer to the LED array. diff --git a/docs/zh-cn/README.md b/docs/zh-cn/README.md deleted file mode 100644 index 93dfbf1eefe..00000000000 --- a/docs/zh-cn/README.md +++ /dev/null @@ -1,42 +0,0 @@ -# Quantum Mechanical Keyboard固件 - - - -## 什么是 QMK 固件? - -QMK (*Quantum Mechanical Keyboard*) 是一个社区维护的用于开发计算机输入设备的开源软件。社区专注像键盘,鼠标,MIDI设备的各种电子输入设备。社区内的核心小组成员维护[QMK固件](https://github.com/qmk/qmk_firmware),[QMK配置器](https://config.qmk.fm)(QMK Configurator),[QMK工具箱](https://github.com/qmk/qmk_toolbox)(QMK Toolbox),[qmk.fm](https://qmk.fm),并与各位社区成员维护这份文档。 - -## 如何入门 - -
- -?> **基础方式** [QMK配置器](zh-cn/newbs_building_firmware_configurator.md)
-用户友好的图形界面工具,无需具备编程知识基础。 - -?> **进阶方式** [基于源代码](zh-cn/newbs.md)
-功能更强大,但门槛较高。 - -
- -## 个性化定制 - -QMK提供了很多功能,对应着很多可供浏览的配套文档。大部分功能都是通过修改[键映射](zh-cn/keymap.md)及[键码](zh-cn/keycodes.md)实现的。 - -## 需要帮助? - -请查阅[寻求帮助页面](zh-cn/support.md)以了解如何获取QMK使用方法的帮助。 - -## 回馈社区 - -有多种回馈社区的方法,最简单的方法是开始使用QMK并向你的朋友们推荐它。 - -* 可以在我们的论坛及聊天室进行互助: - * [/r/olkb](https://www.reddit.com/r/olkb/) - * [Discord服务器](https://discord.gg/Uq7gcHh) -* 点击页面下方的“Edit This Page”,可以对文档提供贡献。 -* [将这份文档翻译为你的语言](zh-cn/translating.md) -* [上报bug](https://github.com/qmk/qmk_firmware/issues/new/choose) -* [发起Pull Request](zh-cn/contributing.md) diff --git a/docs/zh-cn/_summary.md b/docs/zh-cn/_summary.md deleted file mode 100644 index a076f1a8c67..00000000000 --- a/docs/zh-cn/_summary.md +++ /dev/null @@ -1,191 +0,0 @@ - -* 新手教程 - * [介绍](zh-cn/newbs.md) - * [入门](zh-cn/newbs_getting_started.md) - * [构建第一个固件](zh-cn/newbs_building_firmware.md) - * [刷写固件](zh-cn/newbs_flashing.md) - * [寻求帮助](zh-cn/support.md) - * [其它资源](zh-cn/newbs_learn_more_resources.md) - * [QMK大纲](zh-cn/syllabus.md) - -* FAQ - * [常规FAQ](zh-cn/faq_general.md) - * [构建/编译QMK](zh-cn/faq_build.md) - * [QMK问题排查](zh-cn/faq_misc.md) - * [调试QMK](zh-cn/faq_debug.md) - * [键映射FAQ](zh-cn/faq_keymap.md) - * [充分利用AVR的存储空间](zh-cn/squeezing_avr.md) - * [术语表](zh-cn/reference_glossary.md) - -* 配置器(Configurator) - * [总览](zh-cn/newbs_building_firmware_configurator.md) - * [入门](zh-cn/configurator_step_by_step.md) - * [问题排查](zh-cn/configurator_troubleshooting.md) - * [框架](zh-cn/configurator_architecture.md) - * QMK API - * [总览](zh-cn/api_overview.md) - * [API文档](zh-cn/api_docs.md) - * [键盘支持](zh-cn/reference_configurator_support.md) - * [添加默认键映射](zh-cn/configurator_default_keymaps.md) - -* CLI - * [总览](zh-cn/cli.md) - * [配置](zh-cn/cli_configuration.md) - * [命令](zh-cn/cli_commands.md) - * [Tab补全](zh-cn/cli_tab_complete.md) - -* 使用QMK - * 导览 - * [功能定制](zh-cn/custom_quantum_functions.md) - * [利用Zadig安装驱动](zh-cn/driver_installation_zadig.md) - * [极简式制作](zh-cn/easy_maker.md) - * [键映射总览](zh-cn/keymap.md) - * 开发环境 - * [Docker指南](zh-cn/getting_started_docker.md) - * 刷写(Flashing) - * [刷写](zh-cn/flashing.md) - * [刷写ATmega32A (ps2avrgb)](zh-cn/flashing_bootloadhid.md) - * IDE - * [在Eclipse中使用QMK](zh-cn/other_eclipse.md) - * [在VSCode中使用QMK](zh-cn/other_vscode.md) - * Git最佳实践 - * [介绍](zh-cn/newbs_git_best_practices.md) - * [你自己的副本](zh-cn/newbs_git_using_your_master_branch.md) - * [冲突合并](zh-cn/newbs_git_resolving_merge_conflicts.md) - * [基于你的分支修复](zh-cn/newbs_git_resynchronize_a_branch.md) - * 键盘组装 - * [飞线指南](zh-cn/hand_wire.md) - * [ISP刷写指南](zh-cn/isp_flashing_guide.md) - - * 键码入门 - * [键码汇总](zh-cn/keycodes.md) - * [基础键码](zh-cn/keycodes_basic.md) - * [语言特定的键码](zh-cn/reference_keymap_extras.md) - * [修饰键](zh-cn/feature_advanced_keycodes.md) - * [原子键码](zh-cn/quantum_keycodes.md) - * [Magic键码](zh-cn/keycodes_magic.md) - - * 键码进阶 - * [指令](zh-cn/feature_command.md) - * [动态宏](zh-cn/feature_dynamic_macros.md) - * [Grave Escape](zh-cn/feature_grave_esc.md) - * [前导键](zh-cn/feature_leader_key.md) - * [Mod-Tap](zh-cn/mod_tap.md) - * [宏](zh-cn/feature_macros.md) - * [鼠标键](zh-cn/feature_mouse_keys.md) - * [Repeat Key](zh-cn/feature_repeat_key.md) - * [Space Cadet Shift](zh-cn/feature_space_cadet.md) - * [US ANSI上档键值](zh-cn/keycodes_us_ansi_shifted.md) - - * 软件特性 - * [自动Shift](zh-cn/feature_auto_shift.md) - * [组合键](zh-cn/feature_combo.md) - * [防抖API](zh-cn/feature_debounce_type.md) - * [按键锁定](zh-cn/feature_key_lock.md) - * [按键重定义](zh-cn/feature_key_overrides.md) - * [层](zh-cn/feature_layers.md) - * [粘滞键](zh-cn/one_shot_keys.md) - * [光标设备](zh-cn/feature_pointing_device.md) - * [原生HID](zh-cn/feature_rawhid.md) - * [Sequencer](zh-cn/feature_sequencer.md) - * [换手](zh-cn/feature_swap_hands.md) - * [一键多用](zh-cn/feature_tap_dance.md) - * [点按配置](zh-cn/tap_hold.md) - * [Unicode](zh-cn/feature_unicode.md) - * [用户空间](zh-cn/feature_userspace.md) - * [WPM计算](zh-cn/feature_wpm.md) - - * 硬件特性 - * 显示 - * [HD44780 LCD控制器](zh-cn/feature_hd44780.md) - * [ST7565 LCD驱动](zh-cn/feature_st7565.md) - * [OLED驱动](zh-cn/feature_oled_driver.md) - * 灯效 - * [背光](zh-cn/feature_backlight.md) - * [LED矩阵](zh-cn/feature_led_matrix.md) - * [RGB灯光](zh-cn/feature_rgblight.md) - * [RGB矩阵](zh-cn/feature_rgb_matrix.md) - * [音频](zh-cn/feature_audio.md) - * [蓝牙](zh-cn/feature_bluetooth.md) - * [Bootmagic Lite](zh-cn/feature_bootmagic.md) - * [自定义矩阵](zh-cn/custom_matrix.md) - * [Digitizer](zh-cn/feature_digitizer.md) - * [拨动开关(DIP Switch)](zh-cn/feature_dip_switch.md) - * [编码器(旋钮)](zh-cn/feature_encoders.md) - * [触摸反馈](zh-cn/feature_haptic_feedback.md) - * [摇杆](zh-cn/feature_joystick.md) - * [LED指示](zh-cn/feature_led_indicators.md) - * [MIDI](zh-cn/feature_midi.md) - * [Proton C转换](zh-cn/proton_c_conversion.md) - * [PS/2鼠标](zh-cn/feature_ps2_mouse.md) - * [分体式键盘](zh-cn/feature_split_keyboard.md) - * [速记](zh-cn/feature_stenography.md) - * [热敏打印机](zh-cn/feature_thermal_printer.md) - -* QMK开发 - * [PR Checklist](zh-cn/pr_checklist.md) - * 打破兼容的改动 - * [总览](zh-cn/breaking_changes.md) - * [我的PR已打上标记](zh-cn/breaking_changes_instructions.md) - * [近期的变更日志(Changelog)](zh-cn/ChangeLog/20210529.md "QMK v0.13.0 - 2021 May 29") - * [更早期的不兼容改动](zh-cn/breaking_changes_history.md) - - * C语言开发 - * [ARM调试指引](zh-cn/arm_debugging.md) - * [AVR处理器](zh-cn/hardware_avr.md) - * [C编码规范](zh-cn/coding_conventions_c.md) - * [兼容的微处理器](zh-cn/compatible_microcontrollers.md) - * [驱动](zh-cn/hardware_drivers.md) - * [ADC驱动](zh-cn/adc_driver.md) - * [Audio驱动](zh-cn/audio_driver.md) - * [I2C驱动](zh-cn/i2c_driver.md) - * [SPI驱动](zh-cn/spi_driver.md) - * [WS2812驱动](zh-cn/ws2812_driver.md) - * [EEPROM驱动](zh-cn/eeprom_driver.md) - * [串口驱动](zh-cn/serial_driver.md) - * [UART驱动](zh-cn/uart_driver.md) - * [操控GPIO](zh-cn/gpio_control.md) - * [键盘开发指引](zh-cn/hardware_keyboard_guidelines.md) - - * Python开发 - * [编码规范](zh-cn/coding_conventions_python.md) - * [QMK CLI开发](zh-cn/cli_development.md) - - * 配置器开发 - * QMK API - * [开发环境](zh-cn/api_development_environment.md) - * [架构总览](zh-cn/api_development_overview.md) - - * 硬件平台开发 - * Arm/ChibiOS - * [选择MCU](zh-cn/platformdev_selecting_arm_mcu.md) - * [启动引导](zh-cn/platformdev_chibios_earlyinit.md) - - * QMK参考信息 - * [参与到QMK](zh-cn/contributing.md) - * [翻译QMK文档](zh-cn/translating.md) - * [配置](zh-cn/config_options.md) - * [数据驱动配置](zh-cn/data_driven_config.md) - * [Make指引](zh-cn/getting_started_make_guide.md) - * [编写文档的最佳实践](zh-cn/documentation_best_practices.md) - * [文档模板](zh-cn/documentation_templates.md) - * [贡献配列到社区](zh-cn/feature_layouts.md) - * [单元测试](zh-cn/unit_testing.md) - * [常用函数](zh-cn/ref_functions.md) - * [info.json参考资料](zh-cn/reference_info_json.md) - - * 深入了解 - * [键盘工作原理](zh-cn/how_keyboards_work.md) - * [键盘矩阵原理](zh-cn/how_a_matrix_works.md) - * [了解QMK](zh-cn/understanding_qmk.md) - - * QMK内部细节 (编辑中) - * [定义](zh-cn/internals/defines.md) - * [输入回调的注册](zh-cn/internals/input_callback_reg.md) - * [Midi设备](zh-cn/internals/midi_device.md) - * [Midi设备驱动流程](zh-cn/internals/midi_device_setup_process.md) - * [Midi辅助功能](zh-cn/internals/midi_util.md) - * [发送函数](zh-cn/internals/send_functions.md) - * [Sysex工具](zh-cn/internals/sysex_tools.md) - - diff --git a/docs/zh-cn/api_docs.md b/docs/zh-cn/api_docs.md deleted file mode 100644 index 03ee6ab13e3..00000000000 --- a/docs/zh-cn/api_docs.md +++ /dev/null @@ -1,73 +0,0 @@ -# QMK API - - - -本章节详述了QMK API的使用方法,若您是应用开发者,使用这套API可以实现[QMK](https://qmk.fm)键盘固件的编译支持。 - -## 总览 - -本服务提供了一套用于编译自定义键映射的异步API,通过POST方式发送JSON参数到API,定期检查执行状态,待固件编译完成后,即可下载生成的固件文件和固件的源文件(如果需要的话)。 - -#### 荷载JSON参数示例: - -```json -{ - "keyboard": "clueboard/66/rev2", - "keymap": "my_awesome_keymap", - "layout": "LAYOUT_all", - "layers": [ - ["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_GRV","KC_BSPC","KC_PGUP","KC_TAB","KC_Q","KC_W","KC_E","KC_R","KC_T","KC_Y","KC_U","KC_I","KC_O","KC_P","KC_LBRC","KC_RBRC","KC_BSLS","KC_PGDN","KC_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_LSFT","KC_NUBS","KC_Z","KC_X","KC_C","KC_V","KC_B","KC_N","KC_M","KC_COMM","KC_DOT","KC_SLSH","KC_RO","KC_RSFT","KC_UP","KC_LCTL","KC_LGUI","KC_LALT","KC_MHEN","KC_SPC","KC_SPC","KC_HENK","KC_RALT","KC_RCTL","MO(1)","KC_LEFT","KC_DOWN","KC_RIGHT"], - ["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_TRNS","KC_DEL","BL_STEP","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","_______","KC_TRNS","KC_PSCR","KC_SCRL","KC_PAUS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(2)","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_PGUP","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(1)","KC_LEFT","KC_PGDN","KC_RGHT"], - ["KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","QK_BOOT","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(2)","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(1)","KC_TRNS","KC_TRNS","KC_TRNS"] - ] -} -``` - -如上可见,荷载参数里有用于生成固件文件的所有键盘信息。每一个层定义都包含了与键盘 `LAYOUT` 宏定义一致的QMK键码列表数据,若该键盘有多个支持的 `LAYOUT` 宏定义,也可以指定使用的是哪一个。 - -## 提交一个编译job - -若要将键映射配置编译成固件文件,仅需将JSON参数通过POST发送至 `/v1/compile` 节点。下面的示例中我们假设JSON荷载参数已存放在 `json_data` 文件中。 - -``` -$ curl -H "Content-Type: application/json" -X POST -d "$(< json_data)" https://api.qmk.fm/v1/compile -{ - "enqueued": true, - "job_id": "ea1514b3-bdfc-4a7b-9b5c-08752684f7f6" -} -``` - -## 检查状态 - -键映射配置提交后,可以简单地通过 HTTP GET 请求来查询job状态: - -``` -$ curl https://api.qmk.fm/v1/compile/ea1514b3-bdfc-4a7b-9b5c-08752684f7f6 -{ - "created_at": "Sat, 19 Aug 2017 21:39:12 GMT", - "enqueued_at": "Sat, 19 Aug 2017 21:39:12 GMT", - "id": "f5f9b992-73b4-479b-8236-df1deb37c163", - "status": "running", - "result": null -} -``` - -这份信息告诉我们编译job已经提交到队列中且正在执行。job的状态有5种: - -* **failed(失败)**: 编译服务出现问题。 -* **finished(完成)**: 编译已完成,`result` 字段中保存了编译结果。 -* **queued(排队中)**: 键映射job在等待可用的编译服务器。 -* **running(执行中)**: 编译进行中,应当很快就会结束。 -* **unknown(未知)**: 出现了较严重的错误,请给我们[提交一个bug](https://github.com/qmk/qmk_compiler/issues). - -## 确认编译产出 - -编译job完成后请查看 `result` 字段,该字段下保存了如下信息项的哈希表数据: - -* `firmware_binary_url`: 用于刷写的固件文件URL列表 -* `firmware_keymap_url`: `keymap.c` 文件URL列表 -* `firmware_source_url`: 完整的固件源代码URL列表 -* `output`: 编译job的stdout及stderr输出信息,所有错误信息都会在这里。 diff --git a/docs/zh-cn/api_overview.md b/docs/zh-cn/api_overview.md deleted file mode 100644 index a07cfb74273..00000000000 --- a/docs/zh-cn/api_overview.md +++ /dev/null @@ -1,20 +0,0 @@ -# QMK API - - - -QMK API提供了一套可用于Web及GUI工具可用的异步API,用于实现将任何[QMK](https://qmk.fm/)支持的键盘的键映射方案进行编译。已有的键映射模板支持所有的QMK键码并且不需要额外的C代码需求。键盘的维护团队可以提供新的模板来启用更多功能的支持。 - -## App开发者 - -若您是一位意愿将这套API引入您的程序中的移动端App开发者,请参阅[API使用指引](zh-cn/api_docs.md)。 - -## 键盘维护团队 - -若您希望强化您维护的键盘方案在QMK编译API中的支持,请参阅[键盘支持](zh-cn/reference_configurator_support.md)。 - -## 后端开发者 - -若您对这套API系统本身感兴趣,请参阅[开发环境](zh-cn/api_development_environment.md)搭建环境并继续深入探索[架构总览](zh-cn/api_development_overview.md)。 diff --git a/docs/zh-cn/cli.md b/docs/zh-cn/cli.md deleted file mode 100644 index 22c2db92c85..00000000000 --- a/docs/zh-cn/cli.md +++ /dev/null @@ -1,43 +0,0 @@ -# QMK CLI :id=qmk-cli - - - -## 总览 :id=overview - -QMK CLI可以让构建QMK键盘的过程更轻松一些,我们已提供的一批指令可用于简化及流式化地处理一些常见工作,如获取并编译QMK固件,创建新的键映射等。 - -### 依赖项 :id=requirements - -QMK依赖Python 3.6或更高版本。我们已经尽力缩减依赖项,但在[`requirements.txt`](https://github.com/qmk/qmk_firmware/blob/master/requirements.txt)中的依赖项是需安装的包。在安装QMK CLI时这些依赖项也会自动完成安装。 - -### 通过 Homebrew 安装(macOS 及部分 Linux) :id=install-using-homebrew - -若已安装[Homebrew](https://brew.sh),可以按如下方法安装QMK: - -``` -brew install qmk/qmk/qmk -export QMK_HOME='~/qmk_firmware' # 可选,指定 `qmk_firmware` 的路径 -qmk setup # 拉取 `qmk/qmk_firmware` 并选择性地配置构建环境 -``` - -### 通过 pip 安装 :id=install-using-easy_install-or-pip - -未在以上列出的操作系统可以手动安装QMK。首先确认已安装Python 3.6(或更高版本)及 pip,然后通过如下指令安装QMK: - -``` -python3 -m pip install qmk -export QMK_HOME='~/qmk_firmware' # 可选,指定 `qmk_firmware` 的路径 -qmk setup # 拉取 `qmk/qmk_firmware` 并选择性地配置构建环境 -``` - -### 其它操作系统的安装包 :id=packaging-for-other-operating-systems - -我们正在寻求可以制作维护更多操作系统下可用的 `qmk` 安装包的开发者,若您愿意为您的操作系统制作安装包,请遵循如下指引: - -* 当该系统下的最佳实践与本指引冲突时,请遵循系统的最佳实践方案 - * 但请在注释中列明此处违反这份指引的原因 -* 在 virtualenv 下安装 -* 指引用户去设置 `QMK_HOME` 环境变量,使得固件源文件拉取路径不再是默认的 `~/qmk_firmware` diff --git a/docs/zh-cn/cli_commands.md b/docs/zh-cn/cli_commands.md deleted file mode 100644 index ed36ed975bb..00000000000 --- a/docs/zh-cn/cli_commands.md +++ /dev/null @@ -1,503 +0,0 @@ -# QMK CLI 命令 - - - -# 用户命令 - -## `qmk compile` - -该命令用于在指定目录下编译固件,可用于构建导出的JSON数据,代码库中的键映射,或是当前目录下的键盘。 - -该命令会尝试感知目录路径,当你在键盘或键映射目录下执行时,KEYBOARD及KEYMAP参数将被自动填入。 - -**用于配置器导出的数据时**: - -``` -qmk compile [-c] -``` - -**用于键映射时**: - -``` -qmk compile [-c] [-e =] [-j ] -kb -km -``` - -**在键盘目录下时**: - -须在存在默认键映射的键盘目录下执行,或是在键盘的键映射子目录下,否则须指定参数 `--keymap ` -``` -qmk compile -``` - -**构建所有支持该键映射的键盘时**: - -``` -qmk compile -kb all -km -``` - -**示例**: -``` -$ qmk config compile.keymap=default -$ cd ~/qmk_firmware/keyboards/planck/rev6 -$ qmk compile -Ψ Compiling keymap with make planck/rev6:default -... -``` -指定键映射参数时 - -``` -$ cd ~/qmk_firmware/keyboards/clueboard/66/rev4 -$ qmk compile -km 66_iso -Ψ Compiling keymap with make clueboard/66/rev4:66_iso -... -``` -位于键盘目录下时 - -``` -$ cd ~/qmk_firmware/keyboards/gh60/satan/keymaps/colemak -$ qmk compile -Ψ Compiling keymap with make gh60/satan:colemak -... -``` - -**在配列目录下时**: - -必须是在 `qmk_firmware/layouts/` 下的键映射目录下。 -``` -qmk compile -kb -``` - -**示例**: -``` -$ cd ~/qmk_firmware/layouts/community/60_ansi/mechmerlin-ansi -$ qmk compile -kb dz60 -Ψ Compiling keymap with make dz60:mechmerlin-ansi -... -``` - -**并行编译**: - -在编译时添加 `-j`/`--parallel` 开关可能有助于加快编译速度。 -``` -qmk compile -j -kb -``` -`num_jobs` 用于指定并行的job上限,将其设置为0可以实现无限制的并行编译。 -``` -qmk compile -j 0 -kb -``` - -## `qmk flash` :id=qmk-flash - -该命令与 `qmk compile` 类似,但额外地可以指定bootloader。bootloader参数是可选的,默认会指定为 `:flash`。可通过 `-bl ` 来指定bootloader。请查阅[刷写固件](zh-cn/flashing.md)指引以深入了解可用的bootloader信息。 - -该命令会尝试感知目录路径,当你在键盘或键映射目录下执行时,KEYBOARD及KEYMAP参数将被自动填入。 - -**用于配置器导出的数据时**: - -``` -qmk flash [-bl ] [-c] [-e =] [-j ] -``` - -**用于键映射时**: - -``` -qmk flash -kb -km [-bl ] [-c] [-e =] [-j ] -``` - -**列出所有bootloader** - -``` -qmk flash -b -``` - -## `qmk config` - -该命令用于配置QMK功能,完整的 `qmk config` 文档参见[CLI配置](zh-cn/cli_configuration.md)。 - -**使用方法**: - -``` -qmk config [-ro] [config_token1] [config_token2] [...] [config_tokenN] -``` - -## `qmk cd` - -该命令会启动一个新的 shell 会话并定位到 `qmk_firmware` 所在目录。 - -须留意如果你已经位于 `QMK_HOME` 下的某个位置(比如 `keyboards/` 目录中),该指令不会生效。 - -若要退回到原来的 shell 会话,只需要执行 `exit`。 - -**使用方法**: - -``` -qmk cd -``` - -## `qmk console` - -该命令用于连接键盘终端并展示调试信息。仅当键盘固件通过 `CONSOLE_ENABLE=yes` 编译时有效。 - -**用法**: - -``` -qmk console [-d :[:]] [-l] [-n] [-t] [-w ] -``` - -**示例**: - -连接到所有可用的键盘并输出终端信息: - -``` -qmk console -``` - -列出所有设备: - -``` -qmk console -l -``` - -仅输出 clueboard/66/rev3 键盘的信息: - -``` -qmk console -d C1ED:2370 -``` - -仅输出第二把 clueboard/66/rev3 键盘的信息: - -``` -qmk console -d C1ED:2370:2 -``` - -输出时间戳及VID:PID以替代键盘名: - -``` -qmk console -n -t -``` - -屏蔽bootloader的消息: - -``` -qmk console --no-bootloaders -``` - -## `qmk doctor` - -该命令用以检查你的开发环境并对发现的潜在的构建及刷写问题进行提醒,如果您乐意,它也可以修复其中大部分问题。 - -**用法**: - -``` -qmk doctor [-y] [-n] -``` - -**示例**: - -检查开发环境中的问题并提示是否修复: - - qmk doctor - -检查开发环境中的问题并自动进行修复: - - qmk doctor -y - -检查开发环境中的问题,仅生成报告: - - qmk doctor -n - -## `qmk format-json` - -将JSON文件格式化为(尽量)便于阅读的形式。会自动分辨JSON结构类型(info.json还是keymap.json),必要时也可以通过 `--format` 指定。 - -**用法**: - -``` -qmk format-json [-f FORMAT] -``` - -## `qmk info` - -展示QMK中的键盘及键映射信息,该命令用来获取键盘信息,输出配列,展示底层按键矩阵,及格式化地输出键映射JSON数据。 - -**用法**: - -``` -qmk info [-f FORMAT] [-m] [-l] [-km KEYMAP] [-kb KEYBOARD] -``` - -该命令会尝试感知目录路径,当你在键盘或键映射目录下执行时,KEYBOARD及KEYMAP参数将被自动填入。 - -**示例**: - -输出键盘的基础信息: - - qmk info -kb planck/rev5 - -输出键盘的矩阵信息: - - qmk info -kb ergodox_ez -m - -输出键盘的键映射JSON数据: - - qmk info -kb clueboard/california -km default - -## `qmk json2c` - -从QMK配置器导出的数据中生成 keymap.c 文件 -Creates a keymap.c from a QMK Configurator export. - -**用法**: - -``` -qmk json2c [-o OUTPUT] filename -``` - -## `qmk c2json` - -从 keymap.c 文件中生成 keymap.json -**注意:** 解析C代码文件并不容易,该命令有可能无法对你的键映射文件生效,不使用C预处理代码有时可以解决问题。 - -**用法**: - -``` -qmk c2json -km KEYMAP -kb KEYBOARD [-q] [--no-cpp] [-o OUTPUT] filename -``` - -## `qmk lint` - -检查键盘及键映射数据并提示出常见错误与问题,以及不符合模板规范的地方。 - -**用法**: - -``` -qmk lint [-km KEYMAP] [-kb KEYBOARD] [--strict] -``` - -该命令会尝试感知目录路径,当你在键盘或键映射目录下执行时,KEYBOARD及KEYMAP参数将被自动填入。 - -**示例**: - -基本的lint检查: - - qmk lint -kb rominronin/katana60/rev2 - -## `qmk list-keyboards` - -该命令可以列出 `qmk_firmware` 中所有的键盘 - -**用法**: - -``` -qmk list-keyboards -``` - -## `qmk list-keymaps` - -该命令可以列出指定键盘(及指定版本)下的所有键映射。 - -该命令会尝试感知目录路径,当你在键盘或键映射目录下执行时,KEYBOARD及KEYMAP参数将被自动填入。 - -**用法**: - -``` -qmk list-keymaps -kb planck/ez -``` - -## `qmk new-keyboard` - -该命令可基于现有模板创建出新的键盘定义。 - -对于未给出的参数,会提示你输入,若未传入 `-u` 参数且 .gitconfig 中设置了 `user.name`,则会提示你使用该值作为默认用户名。 - -**用法**: - -``` -qmk new-keyboard [-kb KEYBOARD] [-t {avr,ps2avrgb}] -u USERNAME -``` - -## `qmk new-keymap` - -该命令可基于键盘已有的默认键映射创建新的键映射。 - -该命令会尝试感知目录路径,当你在键盘或键映射目录下执行时,KEYBOARD及KEYMAP参数将被自动填入。 - -**用法**: - -``` -qmk new-keymap [-kb KEYBOARD] [-km KEYMAP] -``` - -## `qmk clean` - -该命令会清理 `.build` 目录,若传入 `--all` 开关,在 `qmk_firmware` 下的所有.hex及.bin文件也会一并删除。 - -**用法**: - -``` -qmk clean [-a] -``` - ---- - -# 面向开发者的命令 - -## `qmk format-text` - -该命令会重新格式化并统一文件的换行符。 - -代码库下所有的文件须使用Unix换行符(LF)。 -若你在**Windows**下进行开发,必须确保文件中的换行符是正确的,才能让你的PR被允许合入。 - -``` -qmk format-text -``` - -## `qmk format-c` - -该命令会使用clang-format来格式化C代码。 - -不带参数地执行该命令以用来格式化核心代码相关的改动,默认会通过 `git diff` 来检查 `origin/master`, 可以通过 `-b <分支名>` 来改变检查的分支。 - -带着 `-a` 开关执行命令会格式化所有的核心代码,也可以在命令行中传入文件名来指定格式化某个文件。 - -**用以处理指定文件时**: - -``` -qmk format-c [file1] [file2] [...] [fileN] -``` - -**用以处理所有的核心代码时**: - -``` -qmk format-c -a -``` - -**用以处理 origin/master 下的所有改动时**: - -``` -qmk format-c -``` - -**用以处理指定分支下的所有改动时**: - -``` -qmk format-c -b branch_name -``` - -## `qmk generate-compilation-database` - -**用法**: - -``` -qmk generate-compilation-database [-kb KEYBOARD] [-km KEYMAP] -``` - -创建新 `compile_commands.json` 文件。 - -你的IDE/编辑器是否使用了“编程语言本地服务器”(language server)且 _总是_ 无法找到全部的包含文件(include files)?是不是很讨厌红色的波浪线?想不想让你的编辑器看得懂 `#include QMK_KEYBOARD_H`?你需要的是一个[编译数据库](https://clang.llvm.org/docs/JSONCompilationDatabase.html)!而 QMK 可以帮助你构建出一个。 - -该命令需要知道你在构建的是哪个键盘及键映射,它使用与 `qmk compile` 命令一样的选项:参数、当前目录以及配置文件。 - -**示例:** - -``` -$ cd ~/qmk_firmware/keyboards/gh60/satan/keymaps/colemak -$ qmk generate-compilation-database -Ψ Making clean -Ψ Gathering build instructions from make -n gh60/satan:colemak -Ψ Found 50 compile commands -Ψ Writing build database to /Users/you/src/qmk_firmware/compile_commands.json -``` - -现在可以打开你的开发环境并享受没有波浪线的日子了。 - -## `qmk docs` - -该命令会在本地启动一个HTTP服务,从而你可以浏览及改进文档,默认端口号为8936,使用 `-b`/`--browser` 开关可以让该命令自动通过默认浏览器打开链接地址。 - -**用法**: - -``` -qmk docs [-b] [-p PORT] -``` - -## `qmk generate-docs` - -该命令可以在本地生成QMK文档,用以文档的常规浏览使用,或进行文档改进工作。可以使用类似[serve](https://www.npmjs.com/package/serve)这样的工具来浏览生成的文档文件。 - -**用法**: - -``` -qmk generate-docs -``` - -## `qmk generate-rgb-breathe-table` - -该命令可以生成用于[RGB灯光](zh-cn/feature_rgblight.md)的呼吸效果的查询表(LUT)头文件。将该文件命名为 `rgblight_breathe_table.h` 并放入键盘或键映射目录下,可以覆盖替换 `quantum/rgblight/` 下的默认LUT。 - -**用法**: - -``` -qmk generate-rgb-breathe-table [-q] [-o OUTPUT] [-m MAX] [-c CENTER] -``` - -## `qmk kle2json` - -该命令可以将KLE原始数据转换成QMK配置器的JSON数据,可接受的输入可以是文件绝对路径,或当前目录下的文件名。若 `info.json` 文件存在,默认不会进行覆盖,通过指定 `-f` 或 `--force` 开关可以允许覆盖。 - -**用法**: - -``` -qmk kle2json [-f] -``` - -**示例**: - -``` -$ qmk kle2json kle.txt -☒ File info.json already exists, use -f or --force to overwrite. -``` - -``` -$ qmk kle2json -f kle.txt -f -Ψ Wrote out to info.json -``` - -## `qmk format-python` - -该命令可以对 `qmk_firmware` 下的python代码进行格式化。 - -**用法**: - -``` -qmk format-python -``` - -## `qmk pytest` - -该命令会执行python测试框架,在你更改了python代码后,应确保该命令可以成功执行。 - -**用法**: - -``` -qmk pytest -``` - -**示例**: - -执行全部的测试套件: - - qmk pytest - -执行指定的测试用例组: - - qmk pytest -t qmk.tests.test_cli_commands - -执行单个测试用例: - - qmk pytest -t qmk.tests.test_cli_commands.test_c2json - qmk pytest -t qmk.tests.test_qmk_path diff --git a/docs/zh-cn/cli_configuration.md b/docs/zh-cn/cli_configuration.md deleted file mode 100644 index d3bca4a3383..00000000000 --- a/docs/zh-cn/cli_configuration.md +++ /dev/null @@ -1,126 +0,0 @@ -# QMK CLI 配置 - - - -本文详述了 `qmk config` 功能及作用。 - -# 介绍 - -QMK CLI的配置系统是一套键/值(key/value)数据系统,每个键由一个子指令和一个参数名组成,通过点号(英文句号)分隔。这使得配置项可以简单直接地映射到命令行参数上。 - -## 简单示例 - -作为一个示例,对于指令 `qmk compile --keyboard clueboard/66/rev4 --keymap default` - -其存在两个命令行参数,可以通过如下方式从配置中读取: - -* `compile.keyboard` -* `compile.keymap` - -可以这样设置: - -``` -$ qmk config compile.keyboard=clueboard/66/rev4 compile.keymap=default -compile.keyboard: None -> clueboard/66/rev4 -compile.keymap: None -> default -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -现在每次执行 `qmk compile` 时都不需要指定键盘及键映射参数了。 - -## 设置用户级的默认配置 - -当你需要在多个命令中使用一致的配置项时,比如很多命令都需要的 `--keyboard` 参数,相比于每次执行命令都去指定该参数值,你可以直接设置用户级的配置值,即可将该配置用于所有的命令。 - -示例: - -``` -$ qmk config user.keyboard=clueboard/66/rev4 user.keymap=default -user.keyboard: None -> clueboard/66/rev4 -user.keymap: None -> default -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -# CLI文档 (`qmk config`) - -`qmk config` 命令可以管理配置数据。当不带额外参数执行时,会输出所有已有配置。存在参数时这些参数将被视为配置项参数,其格式须满足如下形式且无空格分隔: - - [.][=] - -## 设置配置值 - -在配置项的键后加 = 号进行值的设置,配置项的键必须是 `
.` 的完整形式。 - -举例: - -``` -$ qmk config default.keymap=default -default.keymap: None -> default -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -## 读取配置值 - -可以读取整个配置文件、单独配置键或是一整个配置系列,也可以同时指定读取多个配置项。 - -### 全量配置读取示例 - - qmk config - -### 单系列配置读取示例 - - qmk config compile - -### 单配置项读取示例 - - qmk config compile.keyboard - -### 多配置项读取示例 - - qmk config user compile.keyboard compile.keymap - -## 删除配置值 - -将配置值设置为 `None` 即可删除该配置值。 - -示例: - -``` -$ qmk config default.keymap=None -default.keymap: default -> None -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -## 批量操作 - -一个指令中可以合并执行多个读写操作,将依序进行执行输出: - -``` -$ qmk config compile default.keymap=default compile.keymap=None -compile.keymap=skully -compile.keyboard=clueboard/66_hotswap/gen1 -default.keymap: None -> default -compile.keymap: skully -> None -Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini' -``` - -# 用户配置相关的配置项 - -| 配置项 | 默认值 | 描述 | -|-------|-------|------| -| user.keyboard | None | 键盘路径(举例:`clueboard/66/rev4`) | -| user.keymap | None | 键盘名称(举例:`default`) | -| user.name | None | 用户的Github用户名 | - -# 所有配置项 - -| 配置项 | 默认值 | 描述 | -|-------|-------|------| -| compile.keyboard | None | 键盘路径(举例:`clueboard/66/rev4`) | -| compile.keymap | None | 键盘名称(举例:`default`) | -| hello.name | None | 执行时展示的欢迎信息 | -| new_keyboard.keyboard | None | 键盘路径(举例:`clueboard/66/rev4`) | -| new_keyboard.keymap | None | 键盘名称(举例:`default`) | diff --git a/docs/zh-cn/cli_tab_complete.md b/docs/zh-cn/cli_tab_complete.md deleted file mode 100644 index 7a16e9766c8..00000000000 --- a/docs/zh-cn/cli_tab_complete.md +++ /dev/null @@ -1,32 +0,0 @@ -# QMK Tab补全 - - - -在使用Bash 4.2及更高版本、Zsh或FiSH时,可以启用QMK CLI的Tab补全功能,可以实现对 `qmk` 参数中的开关、键盘、文件等参数的自动补全。 - -## 设置 - -有以下几种启用Tab补全的方法。 - -### 仅当前用户生效 - -将以下内容添加到文件 `.profile` 或 `.bashrc` 的末尾: - - source ~/qmk_firmware/util/qmk_tab_complete.sh - -若你的 `qmk_firmware` 存放在其它路径,以上路径也需要调整。 - -### 系统级的符号关联 - -若想让所有本地用户都可以实现Tab补全,可以按如下方法添加符号连接到 `qmk_tab_complete.sh` 脚本: - - `ln -s ~/qmk_firmware/util/qmk_tab_complete.sh /etc/profile.d/qmk_tab_complete.sh` - -### 系统级的脚本拷贝 - -有时符号连接的方案无效,可以改用拷贝文件到指定位置的方案。但须留意该Tab补全脚本可能会不定时更新,你需要定期重新拷贝一次该脚本。 - - cp util/qmk_tab_complete.sh /etc/profile.d diff --git a/docs/zh-cn/configurator_architecture.md b/docs/zh-cn/configurator_architecture.md deleted file mode 100644 index 386ebd6899c..00000000000 --- a/docs/zh-cn/configurator_architecture.md +++ /dev/null @@ -1,66 +0,0 @@ -# QMK配置器框架 - - - -本章节提供了QMK配置器前端技术框架信息,若你对QMK配置器前端工程本身感兴趣,可以从[QMK配置器](https://github.com/qmk/qmk_configurator)代码库开始。 - -# 总览 - -![QMK配置器技术框架图](./../configurator_diagram.svg) - -# 详述 - -QMK配置器基于[单页面框架](https://en.wikipedia.org/wiki/Single-page_application)实现,供使用者创建兼容QMK键盘的自定义键映射方案。键映射方案可以导出为JSON格式的数据,也可以编译出可通过[QMK工具箱](https://github.com/qmk/qmk_toolbox)刷写到键盘中的固件文件。 - -配置器从“键盘元数据仓库(Keyboard Metadata store)”获取键盘元数据,编译请求通过QMK API提交,编译产出放在S3兼容的数据仓库[Digital Ocean空间](https://www.digitalocean.com/products/spaces/)中。 - -## 配置器前端 - -地址: - -[配置器前端](https://config.qmk.fm)会编译并产出一些静态文件并通过Github Pages托管,每当[QMK配置器 `master`](https://github.com/qmk/qmk_configurator)分支收到推送的提交时都会触发。可以通过[QMK配置器 actions页面](https://github.com/qmk/qmk_configurator/actions/workflows/build.yml)查看这些job的状态。 - -## 键盘元数据 - -地址: - -每当[qmk_firmware](https://github.com/qmk/qmk_firmware)仓库中的键盘定义变化时,会生成JSON格式的键盘元数据,并上传到指定空间用于配置器生成每种键盘的UI展现。可以在[QMK固件 actions页面](https://github.com/qmk/qmk_firmware/actions/workflows/api.yml)查看相关job的状态。如果你是QMK开发团队成员(Collaborator),可以使用 `workflow_dispatch` 事件触发器来手动执行该job。 - -## QMK API - -地址: - -QMK API接受 `keymap.json` 文件输入并进行编译,这和你在 `qmk compile` 和 `qmk flash` 中使用的文件一样。当 `keymap.json` 文件被提交后,浏览器中的页面将定时查看job状态(每2秒一次,有时更久一些)直到job完成。最终产出的JSON描述信息里包含了键映射方案的源文件,及编译出的二进制的可下载链接地址。 - -为遵循GPL协议,QMK API会确保源文件及编译产出总是同时提供的。 - -API有3种非异常的回应状态- - -1. 编译job排队中 -2. 编译job执行中 -3. 编译job已完成 - -### 编译job排队中 - -此状态表明[QMK编译器](#QMK编译器)节点还未选中该job,在配置器页面此时会显示“等待一个可用的烤炉(Waiting for an oven)”。 - -### 编译job执行中 - -此状态说明编译job已经在执行中,配置器页面会显示为“烤制中”(Baking)。 - -### 编译job已完成 - -此状态说明编译job已经执行完毕,输出的JSON格式的状态信息里有源文件及编译产出的二进制文件的下载链接项。 - -## Redis/RQ - -QMK API通过Redis队列分发job到可用的[QMK编译器](#QMK编译器)节点。接收到的 `keymap.json` 文件先送到RQ队列,而 `qmk_compiler` 节点则从中拉取执行。 - -## QMK编译器 - -[QMK编译器](https://github.com/qmk/qmk_compiler)负责执行 `keymap.json` 文件的实际编译工作。它的工作逻辑是先拉取有请求的 `qmk_firmware` 分支代码,执行 `qmk compile keymap.json`,最后上传源文件及二进制产出到Digital Ocean空间中。 - -当用户需要下载源代码/二进制文件时,API会给出重定向后的已鉴权地址链接。 diff --git a/docs/zh-cn/configurator_default_keymaps.md b/docs/zh-cn/configurator_default_keymaps.md deleted file mode 100644 index 9f990286f24..00000000000 --- a/docs/zh-cn/configurator_default_keymaps.md +++ /dev/null @@ -1,198 +0,0 @@ -# 向QMK配置器中添加默认键映射 :id=adding-default-keymaps - - - -本章节描述了如何向QMK配置器中添加一款键盘的默认键映射 - - -## 技术信息 :id=technical-information - -QMK配置器使用JSON作为键映射的本地文件格式。我们尽力确保其行为与在 `qmk_firmware` 中 执行 `make :default` 时一致。 - -该目录下的键映射需要定义四个键值对: - -* `keyboard` (字符串) - * 键盘名称,与执行 `make` 进行编译时使用的一致(如 `make 1upkeyboards/1up60rgb:default`)。 -* `keymap` (字符串) - * 应设置为 `default`. -* `layout` (字符串) - * 默认键映射应使用的配列宏定义。 -* `layers` (数组) - * 键映射数据。此键下的每行元素对应一个层定义,层定义中包含该层的键码组成信息。 - -额外地,大部分键映射中还有一个 `commit` 项,该项并不是QMK配置器后端服务API所需,而是用于告知配置器维护者这份JSON键映射数据来源于代码库中的哪个版本的键映射。该值为 `qmk_firmware` 代码库中最后一次修改键盘默认 `keymap.c` 文件提交的commit的SHA标记。该SHA值的获取方式是拉取[`qmk/qmk_firmware` 库的 `master`分支](https://github.com/qmk/qmk_firmware/tree/master/)后,执行 `git log -1 --pretty=oneline -- keyboards//keymaps/default/keymap.c`(若键盘有什么问题且存在 `keymap.json` 文件,则用之作为替代),执行结果应类似于: - -``` -f14629ed1cd7c7ec9089604d64f29a99981558e8 Remove/migrate action_get_macro()s from default keymaps (#5625) -``` - -本例中,`f14629ed1cd7c7ec9089604d64f29a99981558e8` 即应为 `commit` 的值。 - - -## 示例 :id=example - -若某人想添加H87a Hineybush键盘的默认键映射方案,应到 `qmk_firmware` 下H87a的默认键映射下执行上述 `git log` 命令: - -``` -user ~/qmk_firmware (master) -$ git log -1 --pretty=oneline master -- keyboards/hineybush/h87a/keymaps/default/keymap.c -ef8878fba5d3786e3f9c66436da63a560cd36ac9 Hineybush h87a lock indicators (#8237) -``` - -在我们获取了commit哈希值后,还需要键映射定义(为加强可读性进行了编辑处理): - -```c -... -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [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_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_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_NUHS, KC_ENT, - 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_TRNS, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [1] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -}; -``` - -默认键映射使用了 `LAYOUT_all` 宏,最后其会成为 `layout` 项的值。编译为QMK配置器的JSON键映射数据后,输出文件应为: - -```json -{ - "keyboard": "hineybush/h87a", - "keymap": "default", - "commit": "ef8878fba5d3786e3f9c66436da63a560cd36ac9", - "layout": "LAYOUT_all", - "layers": [ - [ - "KC_ESC", "KC_F1", "KC_F2", "KC_F3", "KC_F4", "KC_F5", "KC_F6", "KC_F7", "KC_F8", "KC_F9", "KC_F10", "KC_F11", "KC_F12", "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_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_NUHS", "KC_ENT", - "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_TRNS", "KC_UP", - "KC_LCTL", "KC_LGUI", "KC_LALT", "KC_SPC", "KC_RALT", "MO(1)", "KC_RGUI", "KC_RCTL", "KC_LEFT", "KC_DOWN", "KC_RGHT" - ], - [ - "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "RGB_TOG", "RGB_MOD", "RGB_HUD", "RGB_HUI", "RGB_SAD", "RGB_SAI", "RGB_VAD", "RGB_VAI", "BL_TOGG", "BL_DEC", "BL_INC", - "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_VOLU", - "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "QK_BOOT", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_MPLY", "KC_MNXT", "KC_VOLD", - "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS" - ] - ] -} -``` - -`layers` 数组中的空白区域不影响键映射功能,仅为了方便阅读。 - - -## 附加说明 :id=caveats - -### 层定义只能通过序号进行引用 :id=layer-references - -QMK中常见的一种做法是通过一系列 `#define` 或 `enum` 类型声明来对层定义进行命名: - -```c -enum layer_names { - _BASE, - _MEDIA, - _FN -}; -``` - -对于C代码来讲可行,但对于配置器来讲,你*必须*使用层序号 - 上例中的`MO(_FN)` 应使用 `MO(2)`。 - -### 不支持任何形式的定制化代码 :id=custom-code - -需要在 keymap.c 文件中添加函数代码的功能,如Tap Dance或是Unicode,都*完全*无法在配置器中构建。即便是在 `qmk_firmware` 代码库中在键盘定义中设置了 `TAP_DANCE_ENABLE = yes`,也只会导致*任何*固件构建在配置器中行不通。这是由API及JSON格式的键映射数据同时造成的限制。 - -### 对自定义键码的不完全支持 :id=custom-keycodes - -仅有一个方案可以支持自定义键码:若自定义键码的逻辑实现是在 qmk_firmware 下的键盘定义中完成的,而非在键映射中,那么这个键码*可以*在配置器中使用且*可以*编译运行。(因此,)相对于在 `keymap.c` 中使用如下代码段: - -```c -enum custom_keycodes { - CUSTOM_1 = SAFE_RANGE, - CUSTOM_2, - CUSTOM_3 -}; -... -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch(keycode) { - case CUSTOM_1: - if (record->event.pressed) { - SEND_STRING("This is custom keycode #1."); - } - return false; - case CUSTOM_2: - if (record->event.pressed) { - SEND_STRING("This is custom keycode #2."); - } - return false; - case CUSTOM_3: - if (record->event.pressed) { - SEND_STRING("This is custom keycode #3."); - } - return false; - } - return true; -}; -``` - -... 请将键码的 `enum` 定义块添加到键盘的头文件(``)中,例如(留意 `enum` 在这里命名为 `keyboard_keycodes`): - -```c -enum keyboard_keycodes { - CUSTOM_1 = SAFE_RANGE, - CUSTOM_2, - CUSTOM_3, - NEW_SAFE_RANGE // 重要! -}; -``` - -... 之后在 `.c` 中的 `process_record_kb()` 代码逻辑应为: - -```c -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { - switch(keycode) { - case CUSTOM_1: - if (record->event.pressed) { - SEND_STRING("This is custom keycode #1."); - } - return false; - case CUSTOM_2: - if (record->event.pressed) { - SEND_STRING("This is custom keycode #2."); - } - return false; - case CUSTOM_3: - if (record->event.pressed) { - SEND_STRING("This is custom keycode #3."); - } - return false; - } - return process_record_user(keycode, record); -}; -``` - -注意最后的 `process_record_user()` 调用,若用户需要添加自定义键码到键映射中,须使用 `NEW_SAFE_RANGE` 替代 `SAFE_RANGE`,而其定义来自于上面键盘层定义中。 - - -## 更多资料 :id=additional-reading - -为了让QMK配置器支持你的键盘,你的键盘定义必须存在于 `qmk_firmware` 代码库的 `master` 分支中。相关操作指引,请参见[在QMK配置器中支持你的键盘](zh-cn/reference_configurator_support.md). diff --git a/docs/zh-cn/configurator_step_by_step.md b/docs/zh-cn/configurator_step_by_step.md deleted file mode 100644 index bbfb71d5a6d..00000000000 --- a/docs/zh-cn/configurator_step_by_step.md +++ /dev/null @@ -1,63 +0,0 @@ -# QMK 配置器: 入门 - - - -本章节描述了如何使用QMK配置器构建出固件文件的过程。 - -## 第一步:选择键盘 - -从下拉列表中选择一款用于创建键映射的键盘。 - -?> 当键盘有多个版本可选择时,请确保选择正确。 - -因为很重要,这里我再次说一遍: - -!> **请选择正确的版本!** - -如果你的键盘声称是基于QMK的但未在列表中,可能是开发者还未提交给我们,或者提交还未被合并进来。若在[Pull Request](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+is%3Apr+label%3Akeyboard)中没有找到请求支持该键盘的issue,请到[QMK固件](https://github.com/qmk/qmk_firmware/issues)提交一个issue。也有一些基于QMK的键盘是由制造商自己的GitHub账号在维护着,请也确认一下。 - -## 第二部:选择键盘配列 - -选择最适合你要创建的键映射的配列,一些键盘的配列不完整或有问题,后续会逐渐支持。 - -!> 有时会遇到没有特别适合的配列的情况,请选择 `LAYOUT_all`。 - -## 第三步:命名你的键映射 - -如何起名完全取决于你。 - -?> 如果编译时遇到了问题,可能是因为QMK固件代码库中已经有了同名项,可以尝试改一下名字。 - -## 第四步:设计你的键映射 - -以下三种方法可以添加键码: - -1. 拖拽 -2. 点击布局上的空白项,再点击所需的键码 -3. 点击布局上的空白项, 再点击你物理键盘上的按键 - -?> 鼠标在键上悬停时会有一个键码值的提示出现,详细描述信息请参见: - -* [基础键码资料](zh-cn/keycodes_basic.md) -* [进阶键码资料](zh-cn/feature_advanced_keycodes.md) - -!> 如果你选择的配列与物理实机有出入,请将不需要的按键留空。如果不清楚应该用哪个键,例如,你只需要一个退格键,但 `LAYOUT_all` 中有两个退格键,须将两个键都放上一样的键码。 - -## 第五步:保存键映射留待后续修订 - -当你调整完毕键映射方案,或打算以后继续编辑,点击 `导出Keymap JSON文件(Download this QMK Keymap JSON File)` 按钮,当前键映射方案将保存到你的计算机中,之后可以点击 `导入Keymap JSON文件(Upload a QMK Keymap JSON File)` 按钮导入后继续编辑。 - -!> **注意:** 导出的.json文件与 kbfirmware.com 和其它工具软件生成的并不兼容,如果你将导出的数据放到那些工具中,或尝试导入那些工具生成的.json文件,是不可行的。 - -## 第六步:编译固件 - -点击绿色的 `编译(Compile)` 按钮。 - -编译完成后,可以点击绿色的 `固件(Download Firmware)` 下载固件文件。 - -## 下一步:刷写到键盘中 - -参见[刷写固件](zh-cn/newbs_flashing.md). diff --git a/docs/zh-cn/configurator_troubleshooting.md b/docs/zh-cn/configurator_troubleshooting.md deleted file mode 100644 index a48ad1dd726..00000000000 --- a/docs/zh-cn/configurator_troubleshooting.md +++ /dev/null @@ -1,31 +0,0 @@ -# 配置器问题排查 - - - -## 我的 .json 文件不可用 - -如果该 .json 文件确实是QMK配置器中导出的,恭喜你遇到bug了,请在[QMK配置器](https://github.com/qmk/qmk_configurator/issues)库中提交一个issue。 - -如果不是……那么页面顶部加大加粗的提示让你不要使用其它 .json 文件,你是怎么错过的? - -## 我的配列中有好多空格键,我应该怎么处理? - -如果你是说有三个空格键栏,最好的做法是都放上空格键。这个处理方案也适用于退格键和Shift键。 - -## 用于...的键码是什么? - -参见: - -* [基础键码资料](zh-cn/keycodes_basic.md) -* [进阶键码资料](zh-cn/feature_advanced_keycodes.md) - -## 无法编译 - -请检查键映射中所有的层,确保没有随机(random)键。 - -## Bug及其它问题 - -我们很乐意倾听你的需求及bug报告,请到[QMK配置器](https://github.com/qmk/qmk_configurator/issues)代码库中提交吧。 diff --git a/docs/zh-cn/contributing.md b/docs/zh-cn/contributing.md deleted file mode 100644 index 03d3ea916ae..00000000000 --- a/docs/zh-cn/contributing.md +++ /dev/null @@ -1,175 +0,0 @@ -# 如何做贡献 - - - -👍🎉 首先感谢各位百忙之中抽空阅读本文档,并为我们无私奉献。给您点赞啦! 🎉👍 - -第三方的帮助让QMK获得了成长与进步。我们希望提供一套对贡献者和维护者都感到简便实用的PR(pull request)及贡献流程,因此我们整理出了一些准则,以免你的PR在被接纳前需要大改一番。 - -* [项目概况](#project-overview) -* [代码规范](#coding-conventions) -* [一般教程](#general-guidelines) -* [行为守则对于我来说有何意义?](#what-does-the-code-of-conduct-mean-for-me) - -## 这文章巨长无比不想读啊! 我就想问个问题而已! - -您要是有关于QMK的问题,请在[OLKB Subreddit](https://reddit.com/r/olkb)或者是[Discord](https://discord.gg/Uq7gcHh)上进行提问。 - -请记住: - -* 你的问题也许要过几个小时才会有人回复,请耐心一些。 -* 参与到QMK中的成员都是在无偿地贡献着自己的时间和精力,我们没有受雇于开发QMK或是专职回答你的疑问。 -* 您可以看看下面的教程,可以让您的问题浅显易懂,更容易回答: - * https://opensource.com/life/16/10/how-ask-technical-questions - * http://www.catb.org/esr/faqs/smart-questions.html - -# 项目概况 :id=project-overview - -QMK很大一部分是C语言编写的,小部分特性是C++的。QMK的设计目标是在键盘上的嵌入式处理器中工作,如AVR([LUFA](https://www.fourwalledcubicle.com/LUFA.php))和ARM ([ChibiOS](https://www.chibios.org))。如果您对Arduino很熟悉的话,会发现优缺点也基本是相似的。但无论你之前是否有Arduino使用经验,都不会影响你参与到QMK贡献中来。 - - - -# 我到哪里寻求帮助? - -您要是有问题的话可以 [提出一个issue](https://github.com/qmk/qmk_firmware/issues) 或 [在Discord上交流一下](https://discord.gg/Uq7gcHh). - -# 我怎样才能做出贡献? - -您以前是否没有参与贡献过开源社区,而又想知道如何对QMK提供帮助?这里有一份快速指引! -*译注:对于没有基本编程经验的人,请谨慎考虑这套操作流程,可参考,照着做很容易出问题,社区的语言障碍也会阻碍你对这些步骤的细节进行咨询* - -0. 先注册一个 [GitHub](https://github.com) 账户。 -1. 完整整理出来你要贡献的键映射,或是 [找一个你想解决的问题](https://github.com/qmk/qmk_firmware/issues),或者 [找一个你想添加的特性](https://github.com/qmk/qmk_firmware/issues?q=is%3Aopen+is%3Aissue+label%3Afeature)。 -2. 把关联着问题的仓库fork到你的仓库。这样在`你的GitHub用户名/qmk_firmware` 下就有一个副本啦。 -3. 使用 `git clone https://github.com/你的GitHub用户名/仓库名.git` 命令把仓库同步到你的电脑中。 -4. 您要是想开发一个新特性的话可以先创建一个issue和QMK的维护者讨论一下您要做什么。 -5. 使用 `git checkout -b 此处写分支名字(别用汉字)` 命令来创建一个新分支(branch)用于开发。 -6. 对要解决的问题或要添加的特性进行适当的更改。 -7. 使用 `git add 把改变的文件的目录写这里` 可以添加改变的文件内容到git用于管理工程状态的索引(快照)里。 -8. 使用 `git commit -m "这里写修改的相关信息"` 来描述你做出了什么修改。 -9. 使用 `git push origin 此处写分支名字`来把你的更改同步到GitHub库里(反正不是打篮球那个库里)。 -10. 提交一个[QMK 固件的pull request](https://github.com/qmk/qmk_firmware/pull/new/master)。 -11. 给你的pull request拟一个标题,包括简短的描述和问题或错误代码。比如, 你可以起一个这样的"Added more log outputting to resolve #4352"(最好用英语,毕竟QMK的维护团队成员都是英语语系,有可能会看不懂中文)。 -12. 在描述(description)里面写你做了哪些更改,你的代码里还存在什么问题, 或者你想对QMK维护着询问的问题。你的pull request有点小问题无伤大雅(没有完美的pull request), QMK维护团队会尽力帮您改进的! -13. 维护人员审查代码可能需要一些时间。 -14. 维护人员会通知您要更改什么地方,然后您就按照建议改一改。 -15. 你的pull request合并成功了,恭喜! - -# 代码规范 :id=coding-conventions - -我们的编码风格很容易掌握,如果你有C语言或Python编码经验,跟随我们的编码风格不会有什么困难。 - -* [编码规范 - C](zh-cn/coding_conventions_c.md) -* [编码规范 - Python](zh-cn/coding_conventions_python.md) - -# 基本准则 :id=general-guidelines - -在QMK中存在多种类型的修改需求,因此也会有审查严格性上的差异。请在做出任何修改时留意,你的改动隶属于什么类型。 - -* 将PR(pull request)分成一个个的逻辑单元。 比如,不要一次将两个新特性PR出去。要添加的特性排好队,一个一个来。 -* 提交之前使用 `git diff --check` 做以下检查,不要提交多余的空格 -* 确定你的代码能通过编译 - * 键映射: 确定`make keyboard:your_new_keymap` 不返回错误 - * 键盘: 确定 `make keyboard:all` 不返回错误 - * 核心代码: 确定 `make all` 不返回错误 -* 提交的信息尽量明确。第一行写点简短介绍(每行不多于70个英文字母), 第二行空着,第三行和后面就要写些必要的细节了。最好用英文写,比如: - -``` -Adjust the fronzlebop for the kerpleplork - -The kerpleplork was intermittently failing with error code 23. The root cause was the fronzlebop setting, which causes the kerpleplork to activate every N iterations. - -Limited experimentation on the devices I have available shows that 7 is high enough to avoid confusing the kerpleplork, but I'd like to get some feedback from people with ARM devices to be sure. -``` - -!> **特别留意:** 若你要对其它QMK使用者提交的代码进行功能修改或尝试修复bug,例如非默认的键映射、用户空间和配列部分,须在PR中标记出代码的原始提交者。很多QMK使用者都会对自己提交的代码在不知晓的情况下产生了改动感到困惑和沮丧,无论他的Git及Github经验丰富与否。 - -## 文档 - -对文档进行修正是最简单的参与贡献的一个办法,找到错误放置的文档或是修复不完备的部分很容易!我们也急需能修订文档的贡献者参与进来,所以如果你具备这样的能力但不清楚如何开始,请[看这里](#我怎样才能做出贡献?)! - -文档位于 `qmk_firmware/docs` 目录下,如果你习惯于在web页面中完成工作目标,可以在 https://docs.qmk.fm/ 各文档页面下方点击“Edit this page”在线进行编辑。 - -在文档中附代码案例时, 先观察文档其他地方的命名规范。比如, 将enum类型的定义命名为 `my_layers` 或 `my_keycodes` 的形式可以保持前后一致性: - -```c -enum my_layers { - _FIRST_LAYER, - _SECOND_LAYER -}; - -enum my_keycodes { - FIRST_LAYER = SAFE_RANGE, - SECOND_LAYER -}; -``` - -### 预览文档 :id=previewing-the-documentation - -在发起pull request前,请通过文档预览来检查你的本地更改。可以在 `qmk_firmware/` 目录下执行以下命令来配置文档开发环境: - - qmk docs - -或者,如果你有安装Python 3,可以尝试: - - python3 -m http.server 8936 --directory docs - -然后在本地浏览器打开 `http://localhost:8936/`. - -## 键映射 - -大多数QMK新手都从创建一个自己的键映射 -开始。我们尽力保证键映射规范宽松 (毕竟键映射体现的是个人喜好) 不过我们仍要求须遵守以下准则,以便他人更好地发现并理解你的键映射代码。 - -* 使用这份 [模板](zh-cn/documentation_templates.md) 写一份 `readme.md`。 -* 所有的键映射PR都会被压缩处理(squashed,参见[Github文档](https://docs.github.com/cn/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges)),如果你对commit被压缩很介意,请自行处理 -* 不要把新特性和键映射放在一个PR中。先提交新特性,再通过PR提交键映射 -* 键映射文件夹中不要提交 `Makefile` 文件(已不再使用) -* 更新头文件中的copyrights信息(看 `%YOUR_NAME%` 部分) - -## 键盘 - -QMK的最终归宿是键盘。有些键盘是社区维护的,有一些是制作这些键盘的人维护的。`readme.md` 会告诉你是谁维护了这个键盘,如果你对某个键盘有疑问,可以 [创建一个Issue](https://github.com/qmk/qmk_firmware/issues) 来问一问维护者。 - -我们建议你按下面的来操作: - -* 基于[模板](zh-cn/documentation_templates.md)编写 `readme.md`。 -* commit数量尽量合理,否则你的PR可能会被我们压缩。 -* 不要把新特性和新键盘定义放在一个PR中。先提交新特性,再通过PR提交新键盘定义 -* 用最近一级的父文件夹的名字命名 `.c`/`.h` 文件, 比如 `/keyboards///.[ch]` -* 键盘文件夹就不要放`Makefile`了,这个操作都过时啦 -* 更新文件头部的copyrights(看`%YOUR_NAME%`那) - -## Quantum/TMK 核心 - -在你投入大量精力到新功能开发中之前,请先确保使用了最佳的实现方案。通过阅读[了解QMK](zh-cn/understanding_qmk.md)可以获得对QMK的基本认知,这个文档将带你领略QMK的程序流程,然后你可以和维护团队探讨一下实现你想法的最佳方法的思路,以下渠道都可以: - -* [在Discord中交流](https://discord.gg/Uq7gcHh) -* [建立一个Issue](https://github.com/qmk/qmk_firmware/issues/new) - -新特性和BUG的修复影响所有键盘,开发组也在翻修QMK。所以,在实施重大改动之前一定要讨论一下。如果你在没有事先与维护团队沟通的情况下提交了一个PR,而且你的选择与维护团队的计划方向不符,那你可能要面临大改了。 - -修复BUG或者开发新特性之前看看这个: - -* **默认不启用** - QMK运行的芯片多数内存有限,首要考虑的应是已有的键映射不要被破坏,因此你的功能应当是“可以**启用**”的,而不是“可以禁用”的。如果你觉得该特性应该默认开启或者你能帮助缩减代码,请先和我们沟通一下。 -* **提交之前在本地编译** - 这个简直就是家喻户晓了,但是也确实需要编译啊! 在你发起PR前,请确保任何改动都通过了编译验证。 -* **注意版本和芯片平台兼容性** - 有那么几个键盘有支持不同配置甚至是不同芯片的版本。请确保你开发的特性同时支持AVR和ARM两个平台,或者在不支持的平台自动禁用。 -* **解释你的新特性** - 在`docs/`写个文档, 你可以创建新文档或者写到现有文档中。如果你不把它记录下来,其他人就无法从你的努力中获益。 - -也可以看看以下建议: - -* commit数量尽量合理,否则你的PR可能会被我们压缩。 -* 不要把新键盘定义或新键映射与关键改动放在一个PR中。先提交关键改动。 -* 给你的特性编写[单元测试](zh-cn/unit_testing.md)。 -* 你编辑的文件风格要一致,如果风格不明确或者是混搭风的,请先阅读上方的[代码规范](#coding-conventions)。 - -## 重构 - -为了保持QMK脉络清晰,QMK的深度重构工作已在规划中,并会通过合作者进行相应的修改。如果你有重构的思路或建议请[创建一个issue](https://github.com/qmk/qmk_firmware/issues), 我们很乐意讨论一下QMK可以如何改进。 - -# 行为守则对于我来说有何意义? :id=what-does-the-code-of-conduct-mean-for-me - -我们的[行为守则](https://qmk.fm/coc/) 指出您有责任尊重并礼貌地对待项目中的每个人,无论他们的身份如何。如果你是我们行为守则所描述的不当行为的受害者,我们将站在你这边,尽最大努力对施暴者进行谴责。 diff --git a/docs/zh-cn/custom_quantum_functions.md b/docs/zh-cn/custom_quantum_functions.md deleted file mode 100644 index dba9e7e7c09..00000000000 --- a/docs/zh-cn/custom_quantum_functions.md +++ /dev/null @@ -1,476 +0,0 @@ -# 如何定制化键盘功能 - - - -对于很多人来说对客制化键盘的诉求不只是向电脑输入按下的键。你肯定想实现比简单按键和宏更复杂的功能。QMK支持基于注入点的代码注入,功能重写,另外还可以自定义键盘在不同情况下的行为。 - -本页不要求任何额外的QMK知识基础,但阅读[理解QMK](zh-cn/understanding_qmk.md)将会在更基础的层面帮你理解发生了什么。 - -## 核心/键盘/键映射的概念 :id=a-word-on-core-vs-keyboards-vs-keymap - -QMK基于如下层级组成: - -* Core (`_quantum`) - * Keyboard/Revision (`_kb`) - * Keymap (`_user`) - -该文后续部分所提及的函数在定义时皆可添加 `_kb()` 或 `_user()` 后缀,我们建议在键盘及其子版本中使用 `_kb()` 后缀,而在键映射中使用 `_user()` 后缀。 - -在键盘及其子版本中定义函数时,一个重要的点是在 `_kb()` 函数执行任何逻辑前,应先调用 `_user()` 函数,否则这些键映射中的函数将没有机会被执行。 -# 自定义键码 - -到目前为止,最常见的任务是更改现有键码的行为或创建新的键码。从代码角度来看这些操作都很相似。 - -## 定义一个新键码 - -创建键码的第一步,是先定义其枚举值,也就是给键码起个名字并分配一个唯一值。QMK没有直接限制最大可用的键码值,而是提供了一个 `SAFE_RANGE` 宏。你可以在定义枚举时用 `SAFE_RANGE` 来保证你取得了唯一的键码值。 - - -这有定义两个键码的枚举值的例子。添加以下代码块至 `keymap.c` 后你就可以在布局中使用 `FOO` 和 `BAR` 了。 - -```c -enum my_keycodes { - FOO = SAFE_RANGE, - BAR -}; -``` - -## 编程设计你的键码的行为 :id=programming-the-behavior-of-any-keycode - -当你覆盖一个已存在按键的行为时,或是给新按键设计功能时,请使用 `process_record_kb()` 和 `process_record_user()` 函数。QMK会在响应并处理按键事件前调用这些函数,如果这些函数返回值为 `true`,QMK将继续用常规的方式处理键码,这样可以很方便的扩展键码的功能而不需要替换代码实现。如果函数返回`false` QMK会跳过常规的键处理逻辑,需要发送的按键按下或抬起事件则需交由你负责完成。 - -任意按键在按下或抬起时,每次都会调用这些函数。 - -### process_record_user()` 实现示例 - -这个例子做了两个事。自定义了一个叫做 `FOO` 的键码的行为,并提供了在按下回车时播放音符的功能。 - -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case FOO: - if (record->event.pressed) { - // 按下时做些什么 - } else { - // 抬起时做些什么 - } - return false; // 跳过此键的所有进一步处理 - case KC_ENTER: - // 当按下回车时播放音符 - if (record->event.pressed) { - PLAY_SONG(tone_qwerty); - } - return true; // 让QMK响应回车按下/抬起事件 - default: - return true; // 正常响应其他键码 - } -} -``` - -### `process_record_*` 实现示例 - -* 键盘/各子版本:`bool process_record_kb(uint16_t keycode, keyrecord_t *record)` -* 键映射:`bool process_record_user(uint16_t keycode, keyrecord_t *record)` - -`keycode` 参数为键映射中形如 `MO(1)`,`KC_L` 等定义的键值项。 应使用 `switch...case` 代码块来处理这些事件。 - -`record` 参数含有按键的真实状态信息: - -```c -keyrecord_t record { - keyevent_t event { - keypos_t key { - uint8_t col - uint8_t row - } - bool pressed - uint16_t time - } -} -``` - -# 键盘初始化代码 - -键盘初始化过程须经过几个步骤,而你的目的决定了你需要关注哪些函数。 - -有三个主要初始化函数,按调用顺序列出。 - -* `keyboard_pre_init_*` - 会在大多数其他功能运行前执行。适用于那些需要尽早执行的硬件初始化工作。 -* `matrix_init_*` - 在固件启动过程中被调用。此时硬件已初始化,但部分功能还不可用。 -* `keyboard_post_init_*` - 在固件启动过程的最后被调用。大多数情况下,你的“客制化”代码都可以放在这里。 - -!> 对于大多数人来说 `keyboard_post_init_user` 是你想要关注的函数。例如, 你可以在这里启动RGB背光灯。 - -## 键盘预初始化代码 - -这部分代码执行的非常早,甚至是在USB通信功能启动之前。 - -在这之后不久即会完成矩阵的初始化。 - -对于大多数用户来说不应在此处进行修改,因为它主要用于硬件初始化。 - -但如果你有硬件须初始化的话放在这里再好不过了(比如初始化LED引脚). - -### `keyboard_pre_init_user()` 实现示例 - -本例中,在键盘层将 B0, B1, B2, B3, 和 B4 引脚设置为LED引脚。 - -```c -void keyboard_pre_init_user(void) { - // 调用键盘预初始化代码 - - // 设置LED引脚为输出模式 - setPinOutput(B0); - setPinOutput(B1); - setPinOutput(B2); - setPinOutput(B3); - setPinOutput(B4); -} -``` - -### `keyboard_pre_init_*` 函数文档 - -* 键盘/各子版本:`void keyboard_pre_init_kb(void)` -* 键映射:`void keyboard_pre_init_user(void)` - -## 矩阵初始化代码 - -在矩阵初始化后被调用。此时一部分硬件已设置完成,但一些功能尚未完成初始化。 - -此处可以用来设置一些与硬件无关,且对初始化位置没有特殊要求的功能。 - - -### `matrix_init_*` 函数文档 - -* 键盘/各子版本:`void matrix_init_kb(void)` -* 键映射:`void matrix_init_user(void)` - -### 低级矩阵函数的重写 :id=low-level-matrix-overrides - -* GPIO引脚初始化:`void matrix_init_pins(void)` - * 此处须完成低级行列引脚的初始化。默认实现中,这里会参考可选的键盘设置项 `ROW2COL`,`COL2ROW` 及 `DIRECT_PINS` 来初始化所有 `MATRIX_ROW_PINS` 及 `MATRIX_COL_PINS` 中定义的GPIO引脚的输入/输出状态。当键盘设计者重写该函数后,QMK本身不会进行任何引脚的初始化,只会听从重写的函数的实现逻辑。 -* `COL2ROW`-从行中读: `void matrix_read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)` -* `ROW2COL`-从列中读: `void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col)` -* `DIRECT_PINS`-直读: `void matrix_read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)` - * 以上三个函数须参考矩阵类别,从底层矩阵的相关引脚状态中获取输入信息,并且应该只需要实现三者之一。默认情况下,在遍历 `MATRIX_ROW_PINS` and `MATRIX_COL_PINS` 时,会根据是否设置了 `ROW2COL`,`COL2ROW` 或 `DIRECT_PINS` 来配置输入输出方式。当键盘设计者重写该函数后,QMK本身不会进行任何矩阵GPIO引脚状态的变更,只会听从重写的函数的实现逻辑。 - -## 键盘后初始化代码 - -这是键盘初始化过程中的最后一个任务。此时您可以配置并调整某些特性,因为此时这些特性已初始化完毕。 - -### `keyboard_post_init_user()` 实现示例 - -本示例在所有初始化完成后运行,配置RGB背光。 - -```c -void keyboard_post_init_user(void) { - // 调用后初始化代码 - rgblight_enable_noeeprom(); // 使能Rgb,不保存设置 - rgblight_sethsv_noeeprom(180, 255, 255); // 将颜色设置到蓝绿色(青色),不保存设置 - rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3); // 设置快速呼吸模式,不保存设置 -} -``` - -### `keyboard_post_init_*` 函数文档 - -* 键盘/各子版本:`void keyboard_post_init_kb(void)` -* 布局: `void keyboard_post_init_user(void)` - -# 矩阵扫描码 - -应尽量使用 `process_record_*()` 实现所需的键盘自定义以及事件监听,以确保这些代码不会对键盘性能产生负面的影响。然而,在极少数情况下需要在矩阵扫描中添加监听,此时需要极端留意这些函数代码的性能表现,因为这些函数每秒可能被执行十数次。 - -### `matrix_scan_*` 实现示例 - -这个例子被故意省略了。在监听处理这样一个对性能及其敏感的部分之前,您应该足够了解qmk的内部结构,才可以在没有示例的情况下编写。如果你需要帮助,请[新建一个issue](https://github.com/qmk/qmk_firmware/issues/new)或[在Discord上与我们交流](https://discord.gg/Uq7gcHh). - -### `matrix_scan_*` 函数文档 - -* 键盘/各子版本:`void matrix_scan_kb(void)` -* 布局: `void matrix_scan_user(void)` - -该函数在每次矩阵扫描时被调用,这基本与MCU处理能力上限相同。在这里写代码要谨慎,因为它会运行很多次。 - -在需要自定义矩阵扫描代码时可以使用该函数。这也可以用作自定义状态输出(比如LED灯或者屏幕)或者其他即便用户没有输入时你也想定期运行的功能。 - -# Keyboard housekeeping - -* 键盘/各子版本:`void housekeeping_task_kb(void)` -* 键映射:`void housekeeping_task_user(void)` - -该函数在所有QMK处理工作完毕后,下一轮开始执行前被执行。可以放心地假设此时QMK已对最新的矩阵扫描结果完成了所有的处理工作 -- 更新层状态,发送USB事件,更新LED状态,刷新显示屏。 - -与 `matrix_scan_*` 类似,这些函数会频繁调用直至MCU处理能力上限。为了确保键盘的响应能力,建议在这些函数中尽量做最少的事情,在你确实需要在这里实现特别的功能时,可能会影响到其它功能的表现。 - -# 键盘 空闲/唤醒 代码 - -在主控板支持情况下,暂停大部分功能可以实现“空闲”状态,例如RGB灯光和背光。既可以节省电量消耗,也可能增强键盘的表现。 - -这由两个函数控制: `suspend_power_down_*` 和 `suspend_wakeup_init_*`,分别在主控板空闲和唤醒时被调用。 - - -### suspend_power_down_user() 和 suspend_wakeup_init_user() 的实现示例 - - -```c -void suspend_power_down_user(void) { - // 当键盘挂起时会被多次调用的代码 -} - -void suspend_wakeup_init_user(void) { - // 键盘唤醒时被调用的代码 -} -``` - -### 键盘 挂起/唤醒 函数文档 - -* 键盘/各子版本:`void suspend_power_down_kb(void)` 和 `void suspend_wakeup_init_user(void)` -* 键映射:`void suspend_power_down_kb(void)` 和 `void suspend_wakeup_init_user(void)` - -# 层切换代码 :id=layer-change-code - -每当层发生切换时被执行,可用于感知层切换事件,或自定义层处理逻辑。 - -### `layer_state_set_*` 实现示例 - -本例中,通过Planck键盘示范了如何将[RGB背光灯](zh-cn/feature_rgblight.md)设置为与层同步。 - -```c -layer_state_t layer_state_set_user(layer_state_t state) { - switch (get_highest_layer(state)) { - case _RAISE: - rgblight_setrgb (0x00, 0x00, 0xFF); - break; - case _LOWER: - rgblight_setrgb (0xFF, 0x00, 0x00); - break; - case _PLOVER: - rgblight_setrgb (0x00, 0xFF, 0x00); - break; - case _ADJUST: - rgblight_setrgb (0x7A, 0x00, 0xFF); - break; - default: // 默认层及其它层 - rgblight_setrgb (0x00, 0xFF, 0xFF); - break; - } - return state; -} -``` - -可以通过 `IS_LAYER_ON_STATE(state, layer)` 和 `IS_LAYER_OFF_STATE(state, layer)` 宏来确认常规层的状态。 - -如果不在 `layer_state_set_*` 函数中,可以通过 `IS_LAYER_ON(layer)` 和 `IS_LAYER_OFF(layer)` 宏来确认全局的层状态。 - -### `layer_state_set_*` 函数文档 - -* 键盘/各子版本:`layer_state_t layer_state_set_kb(layer_state_t state)` -* 布局: `layer_state_t layer_state_set_user(layer_state_t state)` - - -此处的 `state` 为当前活跃层的位掩码, 详见[键映射概述](zh-cn/keymap.md#keymap-layer-status) - - -# 配置的持久存储(EEPROM) - -该功能可以让键盘的配置持久存储下来。这些配置存储在控制器的EEPROM中,即便掉电后依旧可以留存下来。可以通过 `eeconfig_read_kb` 和 `eeconfig_read_user` 来读取,通过 `eeconfig_update_kb` and `eeconfig_update_user` 来进行保存。该功能常用于保存一些开关状态(比如rgb层指示灯)。此外,可以通过 `eeconfig_init_kb` 和 `eeconfig_init_user` 来设置EEPROM的默认配置值。 - -复杂的地方是,有很多方法可以存储和访问EEPROM数据,并且没有哪种方法是“正确”的。但是,每个功能只有一个双字(四字节)空间可用。 - -记住EEPROM是有写入寿命的。尽管写入寿命很高,但是并不是只有这些配置信息会写到EEPROM中。如果你写入过于频繁,你的MCU寿命将会急速减少。 - -* 如果您不理解这个例子,那么您可以不使用这个特性,因为它相当复杂。 - -### 实现示例 - -本例讲解了如何添加并读写设置项。本例使用用户键映射来实现。这是一个复杂的函数,有很多事情要做。实际上,它使用了很多前述的函数来工作! -(译注:该示例由于英文行文,可能会觉得看得稀里糊涂。实现的功能很简单,即开启了层指示功能(RGB_LYR)时,rgb背光灯会展示当前层的特定颜色用以指示层状态,而触发任何改变rgb背光颜色的键码时,rgb背光灯将回归普通的背光灯角色,不再作为层指示器) - -在你的keymap.c文件中,将以下代码添加至顶部: -```c -typedef union { - uint32_t raw; - struct { - bool rgb_layer_change :1; - }; -} user_config_t; - -user_config_t user_config; -``` - -以上代码建立了一个32位的结构体,用于在内存及EEPROM中存储配置项。此时不再需要再单独声明变量,因为都已经在该结构体中定义了。须记住 `bool`(布尔)值占用1位,`uint8_t` 占用8位,`uint16_t` 占用16位。你可以混合搭配使用,但改变这些顺序会因为错误的读写而招致问题。 - -我们在 `layer_state_set_*` 函数中会使用 `rgb_layer_change`。通过 `keyboard_post_init_user` 和 `process_record_user` 来配置所需的一切。 - -在编写 `keyboard_post_init_user` 时,你需要使用 `eeconfig_read_user()` 来计算并填充你刚刚创建的结构体。然后即可以使用结构体数据来控制键映射中的功能。就像这样: -```c -void keyboard_post_init_user(void) { - // 调用键映射级别的矩阵初始化 - - // 从EEPROM读用户配置 - user_config.raw = eeconfig_read_user(); - - // 如使能,设置默认层 - if (user_config.rgb_layer_change) { - rgblight_enable_noeeprom(); - rgblight_sethsv_noeeprom_cyan(); - rgblight_mode_noeeprom(1); - } -} -``` -以上函数会在读EEPROM配置后立即设置默认层的RGB颜色。"raw"值将被转换为上述创建的实际使用的"union"结构体。 - -```c -layer_state_t layer_state_set_user(layer_state_t state) { - switch (get_highest_layer(state)) { - case _RAISE: - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_magenta(); rgblight_mode_noeeprom(1); } - break; - case _LOWER: - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_red(); rgblight_mode_noeeprom(1); } - break; - case _PLOVER: - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_green(); rgblight_mode_noeeprom(1); } - break; - case _ADJUST: - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_white(); rgblight_mode_noeeprom(1); } - break; - default: // 针对其他层或默认层 - if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom_cyan(); rgblight_mode_noeeprom(1); } - break; - } - return state; -} -``` -这样仅在相关值使能时才会改变RGB背光灯。若要配置该值, 为 `process_record_user` 创建一个新键码 `RGB_LYR`。此时我们想实现的是,如果触发了常规的RGB码,以上示例中的逻辑都将不生效,形如: -```c - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case FOO: - if (record->event.pressed) { - // 按下时做点什么 - } else { - // 抬起时做点什么 - } - return false; // 跳过此键的进一步处理 - case KC_ENTER: - // 在按下回车时播放音符 - if (record->event.pressed) { - PLAY_SONG(tone_qwerty); - } - return true; // 让QMK产生回车按下/抬起事件 - case RGB_LYR: // 这允许我们将背光灯作为层指示,或正常用途 - if (record->event.pressed) { - user_config.rgb_layer_change ^= 1; // 切换状态 - eeconfig_update_user(user_config.raw); // 向EEPROM写入新状态 - if (user_config.rgb_layer_change) { // 如果层指示功能被使能 - layer_state_set(layer_state); // 那么立刻更新层颜色 - } - } - return false; - case RGB_MODE_FORWARD ... RGB_MODE_GRADIENT: // 对于所有的RGB代码 (参考 quantum_keycodes.h, 400 行处) - if (record->event.pressed) { // 本句失能层指示功能,假设你现在要调整该功能…你要把它禁用 - if (user_config.rgb_layer_change) { // 仅当使能时 - user_config.rgb_layer_change = false; // 失能,然后 - eeconfig_update_user(user_config.raw); // 向EEPROM写入设置 - } - } - return true; break; - default: - return true; // 其他键码正常处理 - } -} -``` -最后,须添加 `eeconfig_init_user` 函数,从而当EEPROM重置时,可以指定默认值, 甚至自定义操作。若想强制重置EEPROM,请用 `EEP_RST` 键码或[Bootmagic](zh-cn/feature_bootmagic.md) 功能。比如,在你想重置RGB层指示配置,并保存默认值时。 - -```c -void eeconfig_init_user(void) { // EEPROM被重置 - user_config.raw = 0; - user_config.rgb_layer_change = true; // 我们想要默认使能 - eeconfig_update_user(user_config.raw); // 向EEPROM写入默认值 - - // 通过使用非'noeeprom'版本的函数,可以同时写入这些配置到EEPROM中。 - rgblight_enable(); // 默认使能RGB - rgblight_sethsv_cyan(); // 默认设置青色 - rgblight_mode(1); // 默认设置长亮 -} -``` - -一切已就绪,RGB层指示将在需要时生效。这个设置会持久存储,即便是拔下键盘。如果你使用其他RGB码,层指示将失效,从而可以停留在期望的模式及颜色下。 - -### 'EECONFIG' 函数文档 - -* 键盘/各子版本:`void eeconfig_init_kb(void)`, `uint32_t eeconfig_read_kb(void)` 和 `void eeconfig_update_kb(uint32_t val)` -* 键映射:`void eeconfig_init_user(void)`, `uint32_t eeconfig_read_user(void)` 和 `void eeconfig_update_user(uint32_t val)` - -`val` 是你想写入EEPROM的值,`eeconfig_read_*`函数会从EEPROM返回一个32位(双字)的值。 - -### 定时执行 :id=deferred-execution - -QMK支持在特定时间间隔后执行回调,以代替手动的计时器管理。 - -#### 定时回调函数 - -所有的 _定时回调函数_ 使用同样的函数签名,如下: - -```c -uint32_t my_callback(uint32_t trigger_time, void *cb_arg) { - /* 处理了一些工作 */ - bool repeat = my_deferred_functionality(); - return repeat ? 500 : 0; -} -``` - -第一个参数 `trigger_time` 为预期的执行时间,如果因为其它事情造成了延迟未能在准确的时间点执行,可以利用这个参数“追赶”或者跳过这次间隔,取决于你的目的是什么。 - -第二个参数 `cb_arg` 为下述的 `defer_exec()` 传入的参数,由此可以获取调用时的状态信息。 - -返回值为该函数下一次期望被回调的时间间隔毫秒数 -- 若返回 `0` 则会自动被注销掉。上例中,通过执行假想的 `my_deferred_functionality()` 函数来决策回调是否继续下去 -- 若是,则给出一个 `500` 毫秒的延迟计划,否则,返回 `0` 来告知定时处理后台任务该计划已执行完毕。 - -?> 须留意返回的延时时间是相对原定的触发时间点的,而不是回调执行完的时间点。这样可以防止偶发的执行延迟影响稳定的定时事件计划。 - -#### 注册定时回调 - -在定义好回调后,通过如下API进行定时回调注册: - -```c -deferred_token my_token = defer_exec(1500, my_callback, NULL); -``` - -第一个参数为执行 `my_callback` 的毫秒时间延迟 -- 上例中为 `1500` 毫秒,即 1.5 秒。 - -第三个参数为回调执行时传入的 `cb_arg` 参数。须确保该值在回调时依旧有效 -- 局部函数内的变量会在回调执行前就被释放掉因此不能用。如果并不需要这个参数,可以传入 `NULL`。 - -返回值 `deferred_token` 可被用于在回调执行前取消该定时计划。如果该函数调用失败,会返回 `INVALID_DEFERRED_TOKEN`,一般错误原因是延时值被设置为 `0` 或回调函数参数为 `NULL`,还有一种可能是已有过量的回调在等待被处理 -- 可以按照下述方法修改这个阈值。 - -#### 延长定时回调时间 - -由 `defer_exec()` 返回的 `deferred_token` 可以用来修改回调执行所需等待的时延值: -```c -// 重新调整 my_token 后续的执行计划为当前时间起800ms后 -extend_deferred_exec(my_token, 800); -``` - -#### 取消定时回调 - -由 `defer_exec()` 返回的 `deferred_token` 可以用来取消掉后续的执行计划: -```c -// 取消 my_token 的后续回调 -cancel_deferred_exec(my_token); -``` - -一旦 token 被取消了,即视为不再可用。重新使用该 token 是不支持的。 - -#### 定时回调的限制 - -可安排的定时回调计划数量是有限的,由 `MAX_DEFERRED_EXECUTORS` 定义的值确定。 - -如果定时回调注册失败了,可以在对应的键盘或键映射下的 `config.h` 文件中修改该值,比如将默认的 8 改为 16: - -```c -#define MAX_DEFERRED_EXECUTORS 16 -``` diff --git a/docs/zh-cn/driver_installation_zadig.md b/docs/zh-cn/driver_installation_zadig.md deleted file mode 100644 index db9bb9a3fd8..00000000000 --- a/docs/zh-cn/driver_installation_zadig.md +++ /dev/null @@ -1,102 +0,0 @@ -# 利用Zadig安装Bootloader驱动 - - - -QMK在主机侧会展现为一台HID键盘设备,因此不需要额外的驱动。但若要在Windows下刷写键盘固件,重置主控板时出现的bootloader设备则通常需要一些驱动程序。 - -已知的特例有两个:常见于Pro Micro的Caterina bootloader,以及PJRC Teensys上的HalfKay bootloader, 会同时提供一个串行端口设备及一个HID设备,因此不需要额外的驱动。 - -这里我们推荐使用[Zadig](https://zadig.akeo.ie/)工具软件。若你在MSYS2中配置了开发环境,`qmk_install.sh` 脚本已经替你安装了相关驱动。 - -## 安装 - -将键盘重置为bootloader模式,点击 `RESET` 键码(可能在别的层中),或按一下通常在主控板背面上的重置开关,如果你的键盘上没有前两者,尝试在按住Esc键或空格+`B`键时插上键盘(更多信息参见[Bootmagic](zh-cn/feature_bootmagic.md))。有些键盘使用[指令](zh-cn/feature_command.md)功能来代替Bootmagic,这种情况下,可以在键盘插入状态下点击 左Shift+右Shift+`B` 或 左Shift+右Shift+Esc组合键来进入bootloader模式。 -也有一些键盘需要特别的操作才能进入bootloader状态。例如,[Bootmagic](zh-cn/feature_bootmagic.md)键(默认为:Esc键)在其它键上,比如左Control;或是指令组合键(默认为:左Shift+右Shift)为其它组合,如左Control+右Control。当不确定的时候,可以查阅一下主控板的README文件。 - -若要将USBaspLoader设备置为bootloader模式,请在按住 `BOOT` 按钮时点击 `RESET` 按钮,或是在按住 `BOOT` 按钮时插入USB线缆。 - -Zadig可以自动检测到bootloader设备,但有时你需要在 **Options(选项) → List All Devices(列出所有设备)** 的下拉列表中选择正确的设备。 - -!> 如果Zadig中列出的一个或多个设备为 `HidUsb` 驱动的,那么你的键盘应该没有进入bootloader模式,此时箭头会标记成橙色并会询问你确认是否要修改系统驱动,此时**不要**允许该操作。 - -如果箭头呈现绿色,选择所需的驱动,点击**Install Driver(安装驱动)**。如何选择正确的驱动进行安装请参见[已知驱动列表](#list-of-known-bootloaders)。 - -![在Zadig中安装了正确的bootloader驱动](https://i.imgur.com/b8VgXzx.png) - -最后,重新拔插一次键盘,确认驱动可以正常加载。如果你在使用QMK工具箱进行刷写,记得也重启一下,因为有时它不会检测到驱动的变化。 - -## 从错误的驱动安装中恢复 - -如果你发现键盘无法输入了,应当是因为错误地替换了键盘本身的驱动,而不是bootloader的驱动,你的键盘没有进入bootloader模式就进行安装时就会遇到这个问题。在Zadig中很容易看出这个问题 - 正常的键盘在其所有的接口上都应该有 `HidUsb` 驱动: - -![在Zadig中的一个正常的键盘](https://i.imgur.com/Hx0E5kC.png) - -打开Device Manager(设备管理器),选择**View(查看) → Devices by container(依类型排序设备)**,并定位到你键盘名所在的节点。 - -![在设备管理器中安装了错误的驱动的主控板](https://i.imgur.com/o7WLvBl.png) - -在这些节点上右键,选择**Uninstall device(卸载)**。如果出现了**Delete the driver software for this device(同时卸载该设备驱动文件)**也请勾选上。 - -![设备卸载确认对话框,选中了“删除驱动文件”](https://i.imgur.com/aEs2RuA.png) - -点击 **Action(操作) → Scan for hardware changes(扫描检测硬件改动)**。此时,键盘应该恢复可用状态了。再确认一下Zadig中键盘是否在使用 `HidUsb` 驱动,如果是,键盘即完全恢复可用状态了,如果不是,重复这一步直到Zadig中报告了正确的驱动。 - -?> 在这一步有时需要重启电脑,以便Windows可以选用新驱动文件。 - -## 卸载 - -卸载bootloadeer设备要比安装过程复杂一些。 - -打开设备管理器,选择**查看 → 依类型排序设备**,并找到bootloader设备,寻找USB VID和PID与Zadig的[该表格](#list-of-known-bootloaders)中一致的项。 - -在设备属性的详细信息tab中,找到 `Inf name(INF名称)` 值,通常该值类似于 `oemXX.inf`: - -![设备属性中的INF名称值](https://i.imgur.com/Bu4mk9m.png) - -之后使用管理员权限打开一个命令行窗口(在开始菜单处输出 `cmd` 并点击Ctrl+Shift+回车)。执行 `pnputil /enum-drivers` 并找到 `INF名称` 与 `Published Name(发布名称)` 一致的项: - -![对pnputil输出中匹配驱动项进行高亮展示](https://i.imgur.com/3RrSjzW.png) - -执行 `pnputil /delete-driver oemXX.inf /uninstall`,之后该驱动会被删除,相关设备也不再使用该驱动,但设备是不会被移除的。 - -与上一节相似,本流程也可能需要执行多次,因为一个设备可能会有多个可用的驱动。 - -!> **警告:** 操作过程中*务必非常小心*!以免不小心卸载掉其它关键驱动。如果你对操作不是很确定,多次检查 `/enum-drivers`的输出信息,也可以考虑执行 `/delete-driver` 时不添加 `/uninstall` 开关\。 - -## 已知驱动列表 :id=list-of-known-bootloaders - -该表列出了已知的bootloader设备及其USB VID(厂商ID)和PID(产品ID),以及可用于QMK刷写固件的驱动。留意usbser及HidUsb驱动是随Windows附带的,无法通过Zadig安装 - 如果你的设备驱动不符,请参照上节来卸载这些驱动。 - -此处列出的设备名应与Zadig中的一致,但不一定与设备管理器及QMK工具箱展示的一致。 - -|Bootloader |设备名 |VID/PID |驱动 | -|--------------|------------------------------|--------------|-------| -|`atmel-dfu` |ATmega16u2 DFU |`03EB:2FEF` |libusb0| -|`atmel-dfu` |ATmega32U2 DFU |`03EB:2FF0` |libusb0| -|`atmel-dfu` |ATm16U4 DFU V1.0.2 |`03EB:2FF3` |libusb0| -|`atmel-dfu` |ATm32U4DFU |`03EB:2FF4` |libusb0| -|`atmel-dfu` |*none* (AT90USB64) |`03EB:2FF9` |libusb0| -|`atmel-dfu` |AT90USB128 DFU |`03EB:2FFB` |libusb0| -|`qmk-dfu` |(键盘名) Bootloader |同`atmel-dfu` |libusb0| -|`halfkay` |*none* |`16C0:0478` |HidUsb | -|`caterina` |Pro Micro 3.3V |`1B4F:9203` |usbser | -|`caterina` |Pro Micro 5V |`1B4F:9205` |usbser | -|`caterina` |LilyPadUSB |`1B4F:9207` |usbser | -|`caterina` |Pololu A-Star 32U4 Bootloader |`1FFB:0101` |usbser | -|`caterina` |Arduino Leonardo |`2341:0036` |usbser | -|`caterina` |Arduino Micro |`2341:0037` |usbser | -|`caterina` |Adafruit Feather 32u4 |`239A:000C` |usbser | -|`caterina` |Adafruit ItsyBitsy 32u4 3V |`239A:000D` |usbser | -|`caterina` |Adafruit ItsyBitsy 32u4 5V |`239A:000E` |usbser | -|`caterina` |Arduino Leonardo |`2A03:0036` |usbser | -|`caterina` |Arduino Micro |`2A03:0037` |usbser | -|`bootloadhid` |HIDBoot |`16C0:05DF` |HidUsb | -|`usbasploader`|USBasp |`16C0:05DC` |libusbK| -|`apm32-dfu` |APM32 DFU ISP Mode |`314B:0106` |WinUSB | -|`stm32-dfu` |STM32 BOOTLOADER |`0483:DF11` |WinUSB | -|`kiibohd` |Kiibohd DFU Bootloader |`1C11:B007` |WinUSB | -|`stm32duino` |Maple 003 |`1EAF:0003` |WinUSB | -|`qmk-hid` |(键盘名) Bootloader |`03EB:2067` |HidUsb | diff --git a/docs/zh-cn/easy_maker.md b/docs/zh-cn/easy_maker.md deleted file mode 100644 index 420c77d3af5..00000000000 --- a/docs/zh-cn/easy_maker.md +++ /dev/null @@ -1,37 +0,0 @@ -# 极简式制作 - 通过配置器进行一次性的工程构建 - - - -你是否需要一种极简的控制器编程方案,类似Proton C或Teensy 2.0,以进行一次性的工程构建?QMK提供了极简制作器,通过QMK配置器可以在几分钟内制作一个固件。 - -有几种极简制作器,取决于你需要什么样的: - -* [引脚直连](https://config.qmk.fm/#/?filter=ez_maker/direct) - 将每个开关独立直连到一个引脚 -* 引脚直连 + 背光 (即将可用) - 类似引脚直连,单独加一个引脚连接到[背光](zh-cn/feature_backlight.md)控制器上 -* 引脚直连 + 小键盘锁 (即将可用) - 类似引脚直连,单独加一个引脚连接到Numlock LED上 -* 引脚直连 + 大写锁 (即将可用) - 类似引脚直连, 单独加一个引脚连接到Capslock LED上 -* 引脚直连 + 编码器 (即将可用) - 类似引脚直连, 再加两个引脚用于连接一个旋钮编码器 - -## 快速指引 - -最简单的情况是使用一个引脚直连的主控板,将每个引脚连接到一个开关,另一端再接地即可,从以下键盘列表中可以选择一款支持的MCU: - -* - -更多信息请参见[引脚直连](#direct-pin)一节。 - -# 引脚直连 :id=direct-pin - -与其名字表意相同,它的原理是一个引脚连接一个开关,每个开关的另一端接地(VSS或GND),不需要额外的部件,通常MCU内部自带上拉电阻,因此可以感知开关动作。 - - -这里有一个示意图,展示了如何将一个按钮连接到ProMicro的A3引脚上: - -![该示意图中的ProMicro的A3引脚导出一根线,连接到了开关的左边,另一根线从开关右边引出并接地。](https://i.imgur.com/JcDhZll.png) - -在开关连接到各自的引脚后,在键盘下拉列表中选择所使用的MCU,将键码指定到对应的引脚上即可构建出固件。以下链接仅展示支持引脚直连的极简式制作: - -* diff --git a/docs/zh-cn/faq_build.md b/docs/zh-cn/faq_build.md deleted file mode 100644 index 84cd3c6a4e9..00000000000 --- a/docs/zh-cn/faq_build.md +++ /dev/null @@ -1,73 +0,0 @@ -# 常被问及的编译问题 - - - -本页涉及所有编译QMK的问题,如果你还没有试过,请先阅读[编译环境配置](zh-cn/getting_started_build_tools.md)及[Make指引](zh-cn/getting_started_make_guide.md)。 - -## 无法在Linux下编程 -操作设备需要足够的权限,对于Linux用户,请参阅下方有关 `udev` 的规则说明。如果你对 `udev` 有困惑,可以先试试 `sudo` 命令,如果你对这个命令不熟悉,可以通过 `man sudo` 或 [这个web页面](https://linux.die.net/man/8/sudo)进行了解。 - -一个使用 `sudo` 的示例,这里假设你的控制器是ATMega32u4: - - $ sudo dfu-programmer atmega32u4 erase --force - $ sudo dfu-programmer atmega32u4 flash your.hex - $ sudo dfu-programmer atmega32u4 reset - -或者只是: - - $ sudo make ::flash - -但请留意,用 `sudo` 来执行 `make` 通常***不是***一个好主意,请尽量考虑使用上面的办法。 - -### Linux `udev` 规则 :id=linux-udev-rules - -在linux下,需要足够的权限才能读写bootloader设备,可以使用 `sudo` 来刷写固件(不推荐),也可以将[这个文件](https://github.com/qmk/qmk_firmware/tree/master/util/udev/50-qmk.rules) 放到 `/etc/udev/rules.d/` 目录下。 - -放好后,执行: - -``` -sudo udevadm control --reload-rules -sudo udevadm trigger -``` - -**注意:**在旧版ModeManager(<1.12)中,过滤功能仅在严格模式(strict mode)下可用,可以调整一下配置: - -``` -printf '[Service]\nExecStart=\nExecStart=/usr/sbin/ModemManager --filter-policy=default' | sudo tee /etc/systemd/system/ModemManager.service.d/policy.conf -sudo systemctl daemon-reload -sudo systemctl restart ModemManager -``` - -### 在Linux下无法检测到bootloader模式下的串口设备 -确认一下你的内核版本是否已配置为支持该设备。如果你的设备使用USB ACM,如Pro Micro(Atmega32u4),确认内核 配置中包含 `CONFIG_USB_ACM=y`,其它类型的设备可能需要 `USB_SERIAL` 及相关子配置的支持。 - -## DFU Bootloader显示为未知设备 - -在Windows下刷写键盘固件时很常见的一个问题。主要原因是安装了错误的驱动,或者压根没有装驱动。 - -要修复这个问题,可以尝试重新执行QMK安装脚本(位于MSYS2或WSL中的 `qmk_firmware` 目录下的 `./util/qmk_install.sh`)或重新安装QMK工具箱。此外,也可以尝试下载安装[QMK驱动安装包 `qmk_driver_installer`](https://github.com/qmk/qmk_driver_installer)来修复。 - -如果问题依旧,可能是需要下载安装Zadig,具体请参考[通过Zadig安装bootloader驱动](zh-cn/driver_installation_zadig.md)。 - -## USB VID 和 PID -通过编辑 `config.h` 你可以自由指定ID,随便选一个看起来不常用的ID一般不会有什么问题,冲突的概率很低。 - -大部分QMK设备都选用 `0xFEED` 作为VID,选取PID前请先看一下其它键盘的情况再决定。 - -同时请阅读这个issue: -https://github.com/tmk/tmk_keyboard/issues/150 - -你可以在以下地址购买唯一的VID:PID,但我觉得个人使用情况下没有必要。 -- https://www.obdev.at/products/vusb/license.html -- https://www.mcselec.com/index.php?page=shop.product_details&flypage=shop.flypage&product_id=92&option=com_phpshop&Itemid=1 - -### 在我刷写完键盘后就没响应了/点了没动静了 -- 设备是arm的(rev6 planck, clueboard 60, hs60v2等)(2019年2月) -因为ARM平台下EEPROM特殊的工作模式,已保存的配置可能会失效。主要影响的是默认层,有概率在特定情况下会导致键盘不可用,我们还没有搞明白原因。这个问题可以在重置EEPROM后恢复。 - -[Planck rev6 上重置 EEPROM](https://cdn.discordapp.com/attachments/473506116718952450/539284620861243409/planck_rev6_default.bin) 可以用于强制重置EEPROM。刷入这个文件后,再次刷入正常固件,会将键盘恢复到_正常_工作状态。 -[Preonic rev3 上重置 EEPROM](https://cdn.discordapp.com/attachments/473506116718952450/537849497313738762/preonic_rev3_default.bin) - -也可以考虑使用bootmagic,只要它可以用。(参见[Bootmagic文档](zh-cn/feature_bootmagic.md)并结合键盘情况来了解如何操作) diff --git a/docs/zh-cn/faq_debug.md b/docs/zh-cn/faq_debug.md deleted file mode 100644 index 63d688ed9e6..00000000000 --- a/docs/zh-cn/faq_debug.md +++ /dev/null @@ -1,136 +0,0 @@ -# 调试 FAQ - - - -此页面详细介绍了人们对键盘故障排除的各种常见问题。 - -## 调试 :id=debugging - -如果你在 `rules.mk` 中配置了 `CONSOLE_ENABLE = yes`,你的键盘将会输出调试信息。默认情况下输出很有限,可以启用调试模式来增加调试输出的丰富度。使用你的键映射方案中的 `DEBUG` 键码,或使用[指令](zh-cn/feature_command.md)功能来启动调试模式,或者将下面这段代码放到你的键映射中: - -```c -void keyboard_post_init_user(void) { - // 通过调整这些值可以改变其表现 - debug_enable=true; - debug_matrix=true; - //debug_keyboard=true; - //debug_mouse=true; -} -``` - -## 调试工具 - -有多种可用于调试的工具。 - -### 使用QMK工具箱调试 - -在兼容的平台上,[QMK工具箱](https://github.com/qmk/qmk_toolbox)可以展示你的键盘的调试输出。 - -### 使用 QMK CLI 进行调试 - -倾向于在终端进行调试?使用 [QMK CLI 命令行](zh-cn/cli_commands.md#qmk-console)可以展示键盘输出的调试信息。 - -### 使用hid_listen调试 - -更喜欢使用终端的方案?PJRC提供的[hid_listen](https://www.pjrc.com/teensy/hid_listen.html)也可以用来展示调试信息,已有Windows、Linux及MacOS下预编译好的可执行文件。 - -## 发送自定义调试信息 :id=debug-api - -有时在[自定义代码](zh-cn/custom_quantum_functions.md)中输出调试信息非常有用,要做到这个功能也很简单,在代码文件头部包含 `print.h` 文件: - -```c -#include "print.h" -``` - -然后可以使用以下输出函数: - -* `print("string")`: 字符串输出 -* `uprintf("%s string", var)`: 格式化字符串输出 -* `dprint("string")` 仅调试模式下,字符串输出 -* `dprintf("%s string", var)`: 仅调试模式下,格式化字符串输出 - -## 调试示例 - -以下列出了一些实际出现过的调试范例,更多资料参见[调试/定位QMK问题](zh-cn/faq_debug.md)。 - -### 当前按下的键的矩阵坐标是什么? - -在移植或尝试诊断PCB问题时,确认按下的键被正确扫描到是很有用的排查步骤。要启用该场景的日志输出,请在 `keymap.c` 中添加: - -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - // If console is enabled, it will print the matrix position and status of each key pressed -#ifdef CONSOLE_ENABLE - uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u, interrupt: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); -#endif - return true; -} -``` - -输出示例 -```text -Waiting for device:....... -Listening: -KL: kc: 169, col: 0, row: 0, pressed: 1 -KL: kc: 169, col: 0, row: 0, pressed: 0 -KL: kc: 174, col: 1, row: 0, pressed: 1 -KL: kc: 174, col: 1, row: 0, pressed: 0 -KL: kc: 172, col: 2, row: 0, pressed: 1 -KL: kc: 172, col: 2, row: 0, pressed: 0 -``` - -### 扫描到一个键码需要多久? - -调试性能问题时,知晓开关矩阵的扫描频率是很有用的排查步骤。要启用该场景的日志输出,请在 `config.h` 中添加: - -```c -#define DEBUG_MATRIX_SCAN_RATE -``` - -输出示例 -```text - > matrix scan frequency: 315 - > matrix scan frequency: 313 - > matrix scan frequency: 316 - > matrix scan frequency: 316 - > matrix scan frequency: 316 - > matrix scan frequency: 316 -``` - -## `hid_listen` 无法识别到设备 - -如果设备没有就绪,在命令行下调试会看到如下输出: - -``` -Waiting for device:......... -``` - -当设备插入后,*hid_listen*可以发现设备,会有如下输出: - -``` -Waiting for new device:......................... -Listening: -``` - -若无法出现'Listening:'消息,尝试在[Makefile]中添加 `CONSOLE_ENABLE=yes` - -在类Linux系统下,访问设备可能需要一定权限,尝试使用 `sudo hid_listen`。 - -此外,很多Linux发行版可以通过创建如下内容的文件 `/etc/udev/rules.d/70-hid-listen.rules` 来避免通过root权限执行hid_listen: - -``` -SUBSYSTEM=="hidraw", ATTRS{idVendor}=="abcd", ATTRS{idProduct}=="def1", TAG+="uaccess", RUN{builtin}+="uaccess" -``` - -使用设备的真实VID和PID替换上面的abcd和def1,留意必须全小写。其中 `RUN{builtin}+="uaccess"` 仅在较老的发行版中需要使用。 - -## 命令行无法成功输出消息 -请检查: -- *hid_listen*确实找到了设备,如前文所述。 -- 通过**Magic**+d命令启用调试模式,参见[Magic Commands](https://github.com/tmk/tmk_keyboard#magic-commands). -- 配置`debug_enable=true`. 参见[调试](#debugging) -- 尝试用 `print` 替代 `dprint`, 参见**common/print.h**. -- 拔出其它可能影响命令行的设备,参见[Issue #97](https://github.com/tmk/tmk_keyboard/issues/97). diff --git a/docs/zh-cn/faq_general.md b/docs/zh-cn/faq_general.md deleted file mode 100644 index cc8ef3d19a2..00000000000 --- a/docs/zh-cn/faq_general.md +++ /dev/null @@ -1,58 +0,0 @@ -# 常见问题(FAQ) - - - -## QMK是什么? - -[QMK](https://github.com/qmk), 是量子机械键盘(Quantum Mechanical Keyboard)的缩写, 是制作自定义键盘工具的人组成的组织。 一切始于[QMK固件](https://github.com/qmk/qmk_firmware)项目, 可以认为是[TMK](https://github.com/tmk/tmk_keyboard)的改进版本. - -## 不知道从哪开始搞! - -这样的话建议从[新手指引](zh-cn/newbs.md)开始。那里有你需要的高质量的入门信息。 - -如果还是搞不懂的话,直接跳到[QMK配置器](https://config.qmk.fm)吧,你核心需要的东西都在那里。 - -## 我的固件如何刷写到硬件上? - -先参考[编译/刷写固件FAQ](zh-cn/faq_build.md),里面有充足的资料,常见的问题也给出了足够多的解决办法。 - -## 我的问题这里找不到相关信息怎么办? - -没有关系,请到[GitHub上发issue](https://github.com/qmk/qmk_firmware/issues)看看是否有人遇到了相同的问题(留意一定是相同的问题,而不是相似的)。 - -如果还是找不到解决办法,请[新建issue](https://github.com/qmk/qmk_firmware/issues/new)! - -## 我好像找到了bug? - -那么新建一个[issue](https://github.com/qmk/qmk_firmware/issues/new)吧,如果你还知道怎么修,带着修复方案发个Pull Request吧。 - -## 但是 `git` 和 `GitHub` 我实在是玩不转! - -别担心,这里有很好的[入门指引](zh-cn/newbs_git_best_practices.md)可以教你怎么轻松快乐地使用 `git` 和GitHub进行开发。 - -更多的 `git` 和GitHub知识,参考[这里](zh-cn/newbs_learn_more_resources.md)。 - -## 我可以添加一个支持的键盘 - -太棒啦!请发Pull Request吧,在代码审阅后,我们会合并进去! - -### 我可以打上 `QMK` 的标吗? - -很好啊!我们甚至乐意帮你这么做! - -我们有[一整页](https://qmk.fm/powered/)的资料旨在帮你在页面和键盘上打上QMK的标,里面有QMK官方提供的所有支援(信息及图片)。 - -如果你有任何疑问,可以发issue或通过[Discord](https://discord.gg/Uq7gcHh)联系我们。 - -## QMK和TMK区别是什么? - -TMK原先是由[Jun Wako](https://github.com/tmk)设计实现的,QMK来源于[Jack Humbert](https://github.com/jackhumbert)的Planck的TMK fork。一段时间后,Jack的这个fork与TMK渐行渐远,到2015年时,Jack决定将这份fork重命名为QMK。 - -技术上讲QMK等同于基于TMK增加了一些新功能,最显著的是在扩充了可用键码后,实现了很多诸如 `S()`, `LCTL()` 及 `MO()` 这样的高级功能,所有这些键码可以参见[键码](zh-cn/keycodes.md)页。 - -从工程项目及社区维护角度来看,TMK维护了一份官方支持的键盘及很少量的社区贡献,社区中各自维护着各自的fork,且因为默认键映射很少,TMK的使用者基本不会共享键映射。QMK通过统一的集约式仓库(repo)管理来鼓励分享键盘及键映射,任何符合质量基线的pull request都会被采纳,因此绝大部分贡献都来源于社区,QMK小组会在必要时提供支援。 - -两种模式各有利弊,并且TMK和QMK之间也会有合乎理法的代码交流。 diff --git a/docs/zh-cn/faq_keymap.md b/docs/zh-cn/faq_keymap.md deleted file mode 100644 index 0e1e5a20e88..00000000000 --- a/docs/zh-cn/faq_keymap.md +++ /dev/null @@ -1,157 +0,0 @@ -# 键映射FAQ - - - -本页包含人们经常遇到的关于键映射的问题,如果你还没阅读过[键映射概览](zh-cn/keymap.md),请先阅读一下。 - -## 我能使用的键码有哪些? -所有可用键码收录在[键码](zh-cn/keycodes.md)页,在有更详尽的文档时,我们会更新这个链接。 - -所有键码实际定义在[quantum/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/keycode.h). - -## 默认键码是什么? - -广为使用的键盘配列有三种——ANSI,ISO及JIS。北美主要使用ANSI,欧洲及非洲主要使用ISO,日本主要使用JIS,其它区域多为ANSI或ISO。这三种配列的键码可查阅: - - -![键盘配列示意图](https://i.imgur.com/5wsh5wM.png) - -## 如何对复杂的键码指定自定义的名称? - -使用更容易理解的自定义的名字去指代一些键码有时很实用,通常我们使用 `#define` 来实现: - -```c -#define FN_CAPS LT(_FL, KC_CAPSLOCK) -#define ALT_TAB LALT(KC_TAB) -``` - -这样键映射代码中就可以使用 `FN_CAPS` 和 `ALT_TAB` 了,可读性好得多。 - -## 一些按键发生了交换,或是不能用了 - -QMK有两个功能系列,Bootmagic及指令,都可以让键盘随时变得灵活多变,功能包含但不限于交换Ctrl/Caps、锁定Gui键、交换Alt/Gui、交换Backspace/Backslash、禁用所有按键等。 - -快速恢复的办法是插入键盘时按住空格+`Backspace`键,这样会重置键盘内存储的设置信息,键盘就会恢复常态。如果问题依旧存在,请参考: - -* [Bootmagic](zh-cn/feature_bootmagic.md) -* [指令](zh-cn/feature_command.md) - -## 菜单键(Menu)不可用 - -现代键盘上,位于 `KC_RGUI` 及 `KC_RCTL` 间的按键实际上叫做 `KC_APP`。原因是该键被发明时,相关标准中已经有了 `菜单(MENU)` 键,因此微软将该键命名为 `APP` 键。 - -## `KC_SYSREQ` 不可用 -请使用截图键码(`KC_PSCREEN` 及 `KC_PSCR`)替代 `KC_SYSREQ`,组合键’Alt + Print Screen‘实际上会被识别为’System request‘。 - -具体参见[issue #168](https://github.com/tmk/tmk_keyboard/issues/168)以及 -* https://en.wikipedia.org/wiki/Magic_SysRq_key -* https://en.wikipedia.org/wiki/System_request - -## 电源键不工作 - -QMK有两个容易让人迷惑的“电源键”键码:HID键盘页的 `KC_POWER`,及用户页的 `KC_SYSTEM_POWER`(或 `KC_PWR`)。 - -前者只有macOS支持,后者连同 `KC_SLEP` 及 `KC_WAKE` 在所有主流操作系统上都支持,因此使用后者是推荐的做法。在Windows下,按下按键即刻就会生效,而macOS下必须按住直到系统弹出一个对话框。 - -## 单发修饰键 -用来解决我自己的’the‘麻烦,我总是会将’The‘错输入为’the‘或’THe‘,单发Shift键缓解了我的这个麻烦。 -https://github.com/tmk/tmk_keyboard/issues/67 - -## 修饰键/层 卡住了 -层切换功能只有在正确配置的情况下,才不会出现卡住修饰键和层的问题。 -对于修饰键和层切换操作来讲,必须确保 `KC_TRANS` 在切换到目标layer时正确置位,才能让修饰键正确释放。或者在释放动作中确保返回到了之前的层。 - -* https://github.com/tmk/tmk_core/blob/master/doc/keymap.md#31-momentary-switching -* https://geekhack.org/index.php?topic=57008.msg1492604#msg1492604 -* https://github.com/tmk/tmk_keyboard/issues/248 - - -## 机械锁定式开关支持 - -该功能支持形如[Alps这款](https://deskthority.net/wiki/Alps_SKCL_Lock)的*机械锁定式开关*,启用该功能须在 `config.h` 中添加如下定义: - -``` -#define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE -``` - -启用该功能后,在你的键映射中须改为使用 `KC_LCAP`,`KC_LNUM` 和 `KC_LSCR`。 - -旧式复古风(vintage style)键盘偶尔能见到锁定式开关,但在现代键盘中见不到了。***因此你基本不会需要这个功能的,直接使用 `KC_CAPS`,`KC_NUM` 和 `KC_SCRL` 就好*** - -## 输入形如法语中软音'Ç'这样的非ASCII字符 - -参见[Unicode](zh-cn/feature_unicode.md)功能. - -## macOS系统下的 `Fn` - -和其它键盘不同,Apple键盘上的Fn有自己的键码...在某种程度上。其占用了基础6KRO HID事件上报中的第六个键码 —— 因此Apple键盘实际上只是5KRO(5键无冲)的。 - -技术上讲QMK确实能发送这种键码,但这么做需要修改上报事件中Fn键状态的格式。更麻烦的是,只有你的键盘的VID及PID与Apple键盘一致时才会生效。QMK对此提供官方支持可能会有法律风险,换句话说,我们不太可能去这么做的。 - -具体信息请参见[这个issue](https://github.com/qmk/qmk_firmware/issues/2179)。 - -## Mac OSX下支持的键有哪些? -你可以通过查阅以下代码确认OSX下支持的键码。 - -`usb_2_adb_keymap` 数组实现了从 Keyboard/Keypad 页到 ADB 扫描码(OSX内部使用的键码)的转换。 - -https://opensource.apple.com/source/IOHIDFamily/IOHIDFamily-606.1.7/IOHIDFamily/Cosmo_USB2ADB.c - -以及 `IOHIDConsumer::dispatchConsumerEvent` 负责处理用户页部分。 - -https://opensource.apple.com/source/IOHIDFamily/IOHIDFamily-606.1.7/IOHIDFamily/IOHIDConsumer.cpp - - -## Mac OSX下的JIS键 -日语体系的JIS键盘有些特殊键码:`無変換(Muhenkan)`, `変換(Henkan)`, `ひらがな(hiragana)` 在OSX下无法被识别,可以尝试通过以下配置借助 **Seil** 来启用这些键。 - -* 在PC键盘中启用NFER键 -* 在PC键盘中启用XFER键 -* 在PC键盘中启用KATAKANA键 - -https://pqrs.org/osx/karabiner/seil.html - - -## RN-42蓝牙模块与Karabiner的兼容性问题 -Karabiner - Mac OSX系统下的键映射工具 - 默认会忽略RN-42模块的输入事件。须在Karabiner开启相关选项来支持你的键盘。 -https://github.com/tekezo/Karabiner/issues/403#issuecomment-102559230 -这个问题的其它详细信息参见 -https://github.com/tmk/tmk_keyboard/issues/213 -https://github.com/tekezo/Karabiner/issues/403 - - -## Esc和`位于同一个键位 - -参见[Grave Escape](zh-cn/feature_grave_esc.md)功能. - -## Mac OSX下的弹出功能 -`KC_EJCT` 在OSX下可用。 https://github.com/tmk/tmk_keyboard/issues/250 -Windows 10应该是忽略了这个键码,Linux/Xorg能识别到,但默认没有映射处理。 - -目前尚不清楚Apple键盘上弹出键到底是啥,HHKB在Mac模式下使用 `F20` 来作为弹出键(`Fn+f`),但应该和Apple的弹出键码不是一回事儿。 - -## 在 `action_util.c` 中的 `weak_mods` 和 `real_mods` 是什么东西? -___待完善的内容___ - -real_mods保存的是现实的/物理上的修饰键状态,而weak_mods保存的是虚拟的或临时的修饰键状态,且不应该影响到真实的修饰键的状态。 - -例如你按住了物理键盘上的左shift键,又输入了 ACTION_MODS_KEY(LSHIFT, KC_A), - -在weak_mods下, -* (1) 按住左shift: real_mods |= MOD_BIT(LSHIFT) -* (2) 按下 ACTION_MODS_KEY(LSHIFT, KC_A): weak_mods |= MOD_BIT(LSHIFT) -* (3) 松开 ACTION_MODS_KEY(LSHIFT, KC_A): weak_mods &= ~MOD_BIT(LSHIFT) -real_mods依然保留着修饰键的状态值。 - -非weak_mods时, -* (1) 按住左shift: real_mods |= MOD_BIT(LSHIFT) -* (2) 按下 ACTION_MODS_KEY(LSHIFT, KC_A): real_mods |= MOD_BIT(LSHIFT) -* (3) 松开 ACTION_MODS_KEY(LSHIFT, KC_A): real_mods &= ~MOD_BIT(LSHIFT) -这时real_mods失去了‘物理键左shift’的状态值。 - -在键盘事件发送时,weak_mods会与real_mods求逻辑或。 -https://github.com/tmk/tmk_core/blob/master/common/action_util.c#L57 diff --git a/docs/zh-cn/faq_misc.md b/docs/zh-cn/faq_misc.md deleted file mode 100644 index d01caba3beb..00000000000 --- a/docs/zh-cn/faq_misc.md +++ /dev/null @@ -1,108 +0,0 @@ -# 其它 FAQ - - - -## 怎么对键盘进行测试? :id=testing - -测试键盘就简单直接,把每个按键按一遍后确认发送的是正确的就行。也可以使用[QMK配置器](https://config.qmk.fm/#/test/)的测试模式检查键盘,即便这键盘没有运行着QMK。 - -## 安全措施 - -你应该不想见到键盘变砖,变得不能再刷写固件。这里给出了一些非常危险(或相反不太危险)的因素。 - -- 如果你的键盘没有RESET键,在你需要进入DFU模式时,不得不需要用螺丝刀打开后盖去按PCB上的RESET键。 -- 把 tmk_core/common 下的文件搞乱的话,容易导致键盘无法使用 -- .hex文件太大的话也会引起问题。`make dfu` 会先擦除存储块,再检查固件大小(哎呀,顺序错了),此时发现错误进而导致刷写失败,键盘停留在DFU模式下。 - - 因此,请留意.hex文件尺寸有大小限制,例如在Planck上是十六进制7000(十进制的28672) - -``` -Linking: .build/planck_rev4_cbbrowne.elf [OK] -Creating load file for Flash: .build/planck_rev4_cbbrowne.hex [OK] - -Size after: - text data bss dec hex filename - 0 22396 0 22396 577c planck_rev4_cbbrowne.hex -``` - - - 上面的文件大小是22396/577ch, 小于28672/7000h - - 任何合适的其它.hex文件,都可以尝试加载 - - 在键盘的Makefile中你添加的一些配置也会额外占用空间,在使用BOOTMAGIC_ENABLE, - MOUSEKEY_ENABLE, EXTRAKEY_ENABLE, CONSOLE_ENABLE, API_SYSEX_ENABLE - 时请留意 -- DFU工具/不会/允许bootloader被覆写(除非你往DFU工具上塞自己的东西),这个风险不大。 -- EEPROM的写循环一般是 100000(100k)次,不应不停地持续重复地刷写固件,不然很快就烧毁了。 - -## NKRO 不好使 -首先请确保在编译固件时有在**Makefile**中启用 `NKRO_ENABLE` - -如果依旧不行,尝试一下 `Magic` **N** 指令(默认是左Shift+右Shift+N),这个指令可以让键盘在**NKRO**和**6KRO**模式间临时切换。有的场景下**NKRO**无法工作必须切换到**6KRO**模式,比如在BIOS中操作时。 - -如果你的固件编译时指定了 `BOOTMAGIC_ENABLE` ,则需要使用 `BootMagic`**N** 指令(默认是空格+N)。这个配置保存在EEPROM中,断电也会留存。 - -https://github.com/tmk/tmk_keyboard#boot-magic-configuration---virtual-dip-switch - - -## 轨迹球需要复位电路 (PS/2鼠标支持) -缺失复位电路的情况下,由于不正确的硬件初始化,可能会导致设备不稳定,具体请参阅TPM754的电路原理图: - -- https://geekhack.org/index.php?topic=50176.msg1127447#msg1127447 -- https://www.mikrocontroller.net/attachment/52583/tpm754.pdf - - -## 无法读到大于16的矩阵列 -当列数大于16时,在 [matrix.h] 中的 `read_cols()` 中请用 `1UL<<16` 替代 `1<<16`。 - -在C语言中,对于AVR上的 `1`,会被视作一种[16位]的[整形(int)]类型,因此无法左移超过15位。因此 `1<<16` 的计算结果会错误地变成0。解决办法就是将类型改为[无符号长整形(unsigned long)]类型的 `1UL`。 - -https://deskthority.net/workshop-f7/rebuilding-and-redesigning-a-classic-thinkpad-keyboard-t6181-60.html#p146279 - -## 有些额外的按键不好使(系统,音频控制键) -在QMK的 `rules.mk` 中须定义 `EXTRAKEY_ENABLE` - -``` -EXTRAKEY_ENABLE = yes # 音频及系统控制 -``` - -## 无法从休眠唤醒 - -在Windows的**电源管理**的**设备管理**中,检查 `允许该设备唤醒计算机` 选项,同时检查一下BIOS中的相关设置,任意一个按键都应该能将计算机从休眠状态唤醒。 - -## 在使用Arduino? - -**注意Arduino的引脚编号与芯片的引脚编号是不同的**。例如,Arduino的 `D0` 引脚并不是 `PD0`,请对照其电路图检查电路。 - -- https://arduino.cc/en/uploads/Main/arduino-leonardo-schematic_3b.pdf -- https://arduino.cc/en/uploads/Main/arduino-micro-schematic.pdf - -Arduino Leonardo 以及 micro 使用的是**ATMega32U4**因此可以用TMK,但bootloader可能会是个麻烦的问题。 - -## 启用JTAG - -默认情况下,键盘启动后JTAG调试接口就被禁用了。支持JTAG的MCU出场时会带着 `JTAGEN` 保险丝,而键盘因为需要这部分MCU的引脚去控制开关矩阵、LED等功能。 - -如果你希望启用JTAG,在 `config.h` 中添加定义: - -```c -#define NO_JTAG_DISABLE -``` - -## USB 3兼容性问题 -将设备从USB 3.x端口改插到USB 2.0端口能解决一些问题。 - - -## Mac相关兼容性问题 -### OS X 10.11 和 Hub -参见: https://geekhack.org/index.php?topic=14290.msg1884034#msg1884034 - - -## BIOS (UEFI) 配置/恢复 (休眠 & 唤醒)/电源循环 -有人反馈过他们的键盘在BIOS下或是从休眠状态唤醒后会不可用。 - -目前这个问题的原因还不清楚,但一些编译选项应该和这个问题有关,你可以在Makefile中禁用 `CONSOLE_ENABLE`, `NKRO_ENABLE`, `SLEEP_LED_ENABLE` 或其他的试一试。 - -更多信息: -- https://github.com/tmk/tmk_keyboard/issues/266 -- https://geekhack.org/index.php?topic=41989.msg1967778#msg1967778 diff --git a/docs/zh-cn/feature_grave_esc.md b/docs/zh-cn/feature_grave_esc.md deleted file mode 100644 index 1795a508efe..00000000000 --- a/docs/zh-cn/feature_grave_esc.md +++ /dev/null @@ -1,39 +0,0 @@ -# Grave Escape - - - -*译注:Grave键即标准键盘中Tab键上方的 ` 键,该符号用于英法语等西语体系,辅助调整发音,中文中没有对应概念;Escape即Esc键* - -若你使用60%或其它没有Fn键配列的键盘,会留意到没有独立的Escape键。Grave Escape功能可以让Grave键(`及`~`)与Escape共享一个按键 - -## 使用方法 - -在配列中使用 `QK_GESC` 替换 `KC_GRAVE` (一般都在`1`键左边)。默认点击会输出 `KC_ESC`,按下Shift或GUI键时,点击会输出 `KC_GRV` - -## 操作系统视角 - -假如翠花按下GESC键,系统接收到的是KC_ESC字符。若翠花按住Shift再按下GESC,将输出 `~` 或是反引号。若翠花按住GUI/CMD/Win键,将仅输出`字符 - -## 键码 - -|键 |别名 |描述 | -|---------|-----------|------------------------------------------------------------------| -|`QK_GESC`|`GRAVE_ESC`|单击输出Escape, 按住Shift或GUI时输出` | - -### 须留意 - -在macOS上 Command+`默认行为是“移动焦点到下一个窗口”,因此不会输出反引号。另外,即便在键盘配置中更改过快捷键,终端程序(Terminal)也通常会将这个操作视为循环切换窗口 - -## 配置 - -有几种键组合可以变更这种行为,如Windows下的Control+Shift+Escape、macOS下的Command+Option+Escape。若要调整,可以在 `config.h` 中通过 `#define` 配置 - -|定义 |描述 | -|--------------------------|-----------------------------------------| -|`GRAVE_ESC_ALT_OVERRIDE` |按住Alt时输出Escape | -|`GRAVE_ESC_CTRL_OVERRIDE` |按住Control时输出Escape | -|`GRAVE_ESC_GUI_OVERRIDE` |按住GUI时输出Escape | -|`GRAVE_ESC_SHIFT_OVERRIDE`|按住Shift时输出Escape | diff --git a/docs/zh-cn/feature_space_cadet.md b/docs/zh-cn/feature_space_cadet.md deleted file mode 100644 index e3dab9c7270..00000000000 --- a/docs/zh-cn/feature_space_cadet.md +++ /dev/null @@ -1,70 +0,0 @@ -# Space Cadet: The Future, Built In - - - - -*译注:Space Cadet来源于(在西方早期程序员中)著名的键盘Space Cadet Keyboard,具体信息参见下面的链接或[维基百科](https://en.wikipedia.org/wiki/Space-cadet_keyboard)* - -Steve Losh 在 [Space Cadet Shift](https://stevelosh.com/blog/2012/10/a-modern-space-cadet/) 详细地描述了该功能. 简而言之,点击左Shift时,会输出左括号;点击右Shift时,会输出右括号。如果按住Shift键,常规的Shift将正常工作。这功能实际上和听起来的一样爽,更爽的是现在连Control和Alt也支持! - -## 使用指南 - -首先,在你的配列中完成以下任一项: -- 替换左Shift为 `KC_LSPO`(左Shift,左括号),替换右Shift为 `KC_RSPC`(右Shift,右括号)。 -- 替换左Control为 `KC_LCPO`(左Control,左括号),替换右Control为 `KC_RCPC`(右Control,右括号)。 -- 替换左Alt为 `KC_LAPO`(左Alt,左括号),替换右Alt为 `KC_RAPC`(右Alt,右括号)。 -- 替换任意一个Shift为 `KC_SFTENT`(右Shift,回车)。 - -## 键码 - -|键码 |描述 | -|-----------|-----------------------------| -|`KC_LSPO` |按住时左Shift,点击时 `(` | -|`KC_RSPC` |按住时右Shift,点击时 `)` | -|`KC_LCPO` |按住时左Control,点击时 `(` | -|`KC_RCPC` |按住时右Control,点击时 `)` | -|`KC_LAPO` |按住时左Alt,点击时 `(` | -|`KC_RAPC` |按住时右Alt,点击时 `)` | -|`KC_SFTENT`|按住时右Shift,点击时回车 | - -## 须留意 - -同时按下两边的Shift键时会与Space Cadet功能冲突。请参见[指令功能](zh-cn/feature_command.md)以了解如何解决,也可以在 `rules.mk` 中禁用指令: - -```make -COMMAND_ENABLE = no -``` - -## 配置 - -默认情况下Space Cadet假设键盘布局为US ANSI,如果你的布局使用不同的括号符,可以在 `config.h` 中重定义。可以修改修饰键点击时发送的字符,亦或阻止修饰键工作。这个新的配置项依次绑定了三个键码:按住或组合其它键使用时的修饰键;点击时发送的修饰键点击(`Tap Modifier`)(在 `KC_TRNS` 中没有修饰键时);最后是点击时发送的键码。请记住,例如'KC_RSFT'按住时点击 `KC_KSPO` 及 `KC_TRNS` 时,修饰键依旧会对键码生效,即属于修饰键点击。 - -|定义 |默认值 |描述 | -|----------------|-------------------------------|----------------------------------------------------------------| -|`LSPO_KEYS` |`KC_LSFT, LSPO_MOD, LSPO_KEY` |按住时发送`KC_LSFT`,点击时发送 `LSPO_MOD` 及 `LSPO_KEY` 定义的键码. | -|`RSPC_KEYS` |`KC_RSFT, RSPC_MOD, RSPC_KEY` |按住时发送`KC_RSFT`,点击时发送 `RSPC_MOD` 及 `RSPC_KEY` 定义的键码. | -|`LCPO_KEYS` |`KC_LCTL, KC_LSFT, KC_9` |按住时发送`KC_LCTL`,点击时发送 `KC_LSFT` 及 `KC_9`. | -|`RCPC_KEYS` |`KC_RCTL, KC_RSFT, KC_0` |按住时发送`KC_RCTL`,点击时发送 `KC_RSFT` 及 `KC_0`. | -|`LAPO_KEYS` |`KC_LALT, KC_LSFT, KC_9` |按住时发送`KC_LALT`,点击时发送 `KC_LSFT` 及 `KC_9`. | -|`RAPC_KEYS` |`KC_RALT, KC_RSFT, KC_0` |按住时发送`KC_RALT`,点击时发送 `KC_RSFT` 及 `KC_0`. | -|`SFTENT_KEYS` |`KC_RSFT, KC_TRNS, SFTENT_KEY` |按住时发送`KC_RSFT`,点击时发送 `SFTENT_KEY`. | -|`SPACE_CADET_MODIFIER_CARRYOVER` |*未定义* |在尝试触发其它修饰键的修饰键点击前,暂存目前的修饰键。这在尝试触发Space Cadet前频繁发生修饰键提前松开时会有用。(译注[^1]) | - - -## 过时的配置项 - -以下是一些内部用于向后兼容的定义,目前仍可以使用,但上面的定义适用性要强得多。例如,若你点击 `KC_LSPO` 时不想按住修饰键,在旧定义中只有一个办法,使用 `DISABLE_SPACE_CADET_MODIFIER`。但现在可以定义为:`#define LSPO_KEYS KC_LSFT, KC_TRNS, KC_9`,效果是在按住按键时触发左Shift,点击则发送 `KC_9`。 - -|定义 |默认值 |描述 | -|------------------------------|-------------|-------------------------------------| -|`LSPO_KEY` |`KC_9` |点击左Shift时发送的键码 | -|`RSPC_KEY` |`KC_0` |点击右Shift时发送的键码 | -|`LSPO_MOD` |`KC_LSFT` |应用在 `LSPO_KEY` 上的修饰键 | -|`RSPC_MOD` |`KC_RSFT` |应用在 `RSPC_KEY` 上的修饰键 | -|`SFTENT_KEY` |`KC_ENT` |点击Shift时发送的键码 | -|`DISABLE_SPACE_CADET_MODIFIER`|*未定义* |定义时将阻止修饰键应用在Space Cadet上 | - -[^1]这句实在是绕,不能确保翻译到位,请参考英文文档 diff --git a/docs/zh-cn/flashing.md b/docs/zh-cn/flashing.md deleted file mode 100644 index 559b8742d03..00000000000 --- a/docs/zh-cn/flashing.md +++ /dev/null @@ -1,329 +0,0 @@ -# 刷写指引及Bootloader资料 - - - -用于键盘的bootloader有很多种,几乎每一种都在使用私有的刷写协议及工具。幸运的是,形如[QMK工具箱](https://github.com/qmk/qmk_toolbox/releases)这样的工程目标就是尽量支持这些工具,本文会探讨各种bootloader的差异,以及可用的刷写方案。 - -针对基于AVR的键盘,QMK会自动检查所要刷写的 `.hex` 文件大小是否与在 `rules.mk` 中设置的 `BOOTLOADER` 值所匹配,同时会输出字节大小信息(及最大限制)。 - -同时也可以使用CLI工具刷写键盘,执行: -``` -$ qmk flash -kb -km -``` -更多信息参见文档[`qmk flash`](zh-cn/cli_commands.md#qmk-flash)。 - -## Atmel DFU - -Atmel系列的DFU bootloader默认配备在所有USB AVR系列上(16/32U4RC除外),广泛用于一些PCB上具备私有集成电路模块(IC)的键盘上(老款OLKB、Clueboards等)。有些使用的是LUFA实现的DFU bootloader,或是QMK的分支版本(新款OLKB),后者对硬件功能进行了扩充加强。 - -为保证对DFU bootloader的兼容性,请确保在 `rules.mk` 中存在如下部分内容(可选的值还有 `lufa-dfu` 或 `qmk-dfu`): - -```make -# 选择Bootloader -BOOTLOADER = atmel-dfu -``` - -兼容的刷写工具: - -* [QMK工具箱](https://github.com/qmk/qmk_toolbox/releases)(推荐的图形化工具) -* [dfu-programmer](https://github.com/dfu-programmer/dfu-programmer) / QMK中将构建目标设为 `:dfu`(推荐的命令行工具) - -刷写过程: - -1. 使用如下任一方式进入bootloader模式: - * 点击 `QK_BOOT` 键码 - * 如果PCB上有 `RESET` 键,点击之 - * 快速短接一下RST到GND -2. 等待操作系统识别到设备 -3. 清空flash存储数据(如果使用QMK工具箱或CLI的 `make`会自动进行) -4. 将.hex文件刷写进去 -5. 重置设备进入应用模式(如上,会自动进行) - -### QMK DFU - -QMK维护了[一个LUFA DFU bootloader的分支版本](https://github.com/qmk/lufa/tree/master/Bootloaders/DFU),其可以进行一次矩阵扫描来退出bootloader进入应用模式,同时会让LED闪烁或蜂鸣器响一声。若要启用该功能,将以下定义添加到 `config.h`: - -```c -#define QMK_ESC_OUTPUT F1 // COL pin if COL2ROW -#define QMK_ESC_INPUT D5 // ROW pin if COL2ROW -// 可选: -//#define QMK_LED E6 -//#define QMK_SPEAKER C6 -``` -目前来讲不推荐将 `QMK_ESC` 键设置成与[Bootmagic](zh-cn/feature_bootmagic.md)同一个键,否则按下该键时只会让MCU在bootloader模式上反复进出。 - -制造商及型号字符串自动从 `config.h` 中获取,并会在型号后追加 " Bootloader"。 - -要生成该bootloader,需指定 `bootloader` 构建目标,即 `make planck/rev4:default:bootloader`。要生成可部署到正式产品的.hex文件(同时包含QMK及bootloader),使用 `production` 构建目标,即 `make planck/rev4:default:production`。 - -### `make` 构建目标 - -* `:dfu`: 每5秒检测一次直到发现可用的DFU设备,然后进行固件刷写。 -* `:dfu-split-left` 和 `:dfu-split-right`: 同 `:dfu` 一样会刷写固件,但额外地会设置手性设置到EEPROM中,对于基于Elite-C的分体式键盘这是理想的方法。 - -## Caterina - -Arduino及其仿制板使用[Caterina bootloader](https://github.com/arduino/ArduinoCore-avr/tree/master/bootloaders/caterina)或某种变体(使用Pro Micro或其仿制芯片、Pololu A-Star等构建的所有键盘),并基于虚拟串口使用AVR109协议进行通信。 - -为确保对Caterina bootloader的兼容性,请添加如下代码块至 `rules.mk`: - -```make -# 选择Bootloader -BOOTLOADER = caterina -``` - -兼容的刷写工具: - -* [QMK工具箱](https://github.com/qmk/qmk_toolbox/releases) (推荐的图形化工具) -* [avrdude](https://www.nongnu.org/avrdude/) QMK中须基于 `avr109` 编程器 / `:avrdude` 构建目标 (推荐的命令行工具) -* [AVRDUDESS](https://github.com/zkemble/AVRDUDESS) - -刷写过程: - -1. 使用如下任一方式进入bootloader模式(进入该模式后只有7秒时间可以刷写;一些型号需要你在750ms内重置两次): - * 点击 `QK_BOOT` 键码 - * 如果PCB上有 `RESET` 键,点击之 - * 快速短接一下RST到GND -2. 等待操作系统识别到设备 -3. 将.hex文件刷写进去 -4. 等待设备自动重置 - -### `make` 构建目标 - -* `:avrdude`: 每5秒检测一次直到发现可用的Caterina设备(通过检测新COM端口),然后进行固件刷写。 -* `:avrdude-loop`: 同 `:avrdude` 一样刷写固件,但会在一个设备刷写完后再次尝试刷写。主要用于批量刷写设备。按 Ctrl+C 以终止循环检测。 -* `:avrdude-split-left` 和 `:avrdude-split-right`: 同 `:avrdude` 一样会刷写固件,但额外地会设置手性设置到EEPROM中,对于基于Pro Micro的分体式键盘这是理想的方法。 - -## HalfKay - -HalfKay是一款由PJRC开发的超精简的bootloader,且呈现为HID设备(因此不需要额外的驱动),在所有的Teensys,即"the 2.0",上已经预刷写过。该bootloader目前是闭源的,因此一旦覆写(即通过ISP刷入其它bootloader)掉,就无法复原了。 - -为确保对Halfkay bootloader的兼容性,请添加如下代码块至 `rules.mk`: - -```make -# 选择Bootloader -BOOTLOADER = halfkay -``` - -兼容的刷写工具: - -* [QMK工具箱](https://github.com/qmk/qmk_toolbox/releases)(推荐的图形化工具) -* [Teensy Loader Command Line](https://www.pjrc.com/teensy/loader_cli.html) / QMK中将构建目标设为 `:teensy`(推荐的命令行工具) -* [Teensy Loader](https://www.pjrc.com/teensy/loader.html) - -刷写过程: - -1. 使用如下任一方式进入bootloader模式(进入该模式后只有7秒时间可以刷写): - * 点击 `QK_BOOT` 键码 - * 如果Teensy上或PCB上有 `RESET` 键,点击之 - * 快速短接一下RST到GND -2. 等待操作系统识别到设备 -3. 将.hex文件刷写进去 -4. 重置设备进入应用模式(可能会自动进行) - -## USBasploader - -USBasploader是一款来源于[Objective Development](https://www.obdev.at/products/vusb/usbasploader.html)的bootloader。它通过模拟出一个USBasp ISP编程器来运行V-USB以用于一些形如ATmega328P这样的“非USB AVR芯片”。 - -为确保对USBasploader bootloader的兼容性,请添加如下代码块至 `rules.mk`: - -```make -# 选择Bootloader -BOOTLOADER = usbasploader -``` - -兼容的刷写工具: - -* [QMK工具箱](https://github.com/qmk/qmk_toolbox/releases)(推荐的图形化工具) -* [avrdude](https://www.nongnu.org/avrdude/) QMK中须基于 `usbasp` 编程器 / `:usbasp` 构建目标(推荐的命令行工具) -* [AVRDUDESS](https://github.com/zkemble/AVRDUDESS) - -刷写过程: - -1. 使用如下任一方式进入bootloader模式: - * 点击 `QK_BOOT` 键码 - * 在按住 `BOOT` 按钮时,快速点击一下PCB上的 `RESET` -2. 等待操作系统识别到设备 -3. 将.hex文件刷写进去 -4. 点击PCB上的 `RESET` 按钮或将RST短接至GND一下。 - -## BootloadHID - -BootloadHID是一款用于AVR微控制器的bootloader,其呈现为HID输入设备,和HalkKay很像,因此在Windows下也无需安装驱动。 - -为确保对bootloadHID bootloader的兼容性,请添加如下代码块至 `rules.mk`: - -```make -# 选择Bootloader -BOOTLOADER = bootloadhid -``` - -兼容的刷写工具: - -* [QMK工具箱](https://github.com/qmk/qmk_toolbox/releases)(推荐的图形化工具) -* [bootloadHID CLI](https://www.obdev.at/products/vusb/bootloadhid.html) / QMK中将构建目标设为 `:bootloadhid`(推荐的命令行工具) -* [HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash) - - -刷写过程: - -1. 使用如下任一方式进入bootloader模式: - * 点击 `QK_BOOT` 键码 - * 在按住“盐键”(salt key)时插入键盘 - 在PS2AVRGB板上,通常在MCU的A0及B0引脚上有这个按键,否则请查看键盘的使用说明。 -2. 等待操作系统识别到设备 -3. 将.hex文件刷写进去 -4. 重置设备到应用模式(可能会自动进行) - -### QMK HID - -QMK维护了[一个LUFA HID bootloader的分支版本](https://github.com/qmk/lufa/tree/master/Bootloaders/HID),通过USB HID节点设备进行刷写,工作模式类似于PJRC的Teensy Loader刷写器以及HalfKay bootloader。其可以进行一次矩阵扫描来退出bootloader进入应用模式,同时会让LED闪烁或蜂鸣器响一声。 - -为确保对QMK HID bootloader的兼容性,请添加如下代码块至 `rules.mk`: - -```make -# 选择Bootloader -BOOTLOADER = qmk-hid -``` - -要启用额外的功能支持,请添加如下定义至 `config.h`: - -```c -#define QMK_ESC_OUTPUT F1 // COL pin if COL2ROW -#define QMK_ESC_INPUT D5 // ROW pin if COL2ROW -// 可选: -//#define QMK_LED E6 -//#define QMK_SPEAKER C6 -``` - -目前来讲不推荐将 `QMK_ESC` 键设置成与[Bootmagic Lite](zh-cn/feature_bootmagic.md)同一个键,否则按下该键时只会让MCU在bootloader模式上反复进出。 - -制造商及型号字符串自动从 `config.h` 中获取,并会在型号后追加 " Bootloader"。 - -要生成该bootloader,需指定 `bootloader` 构建目标,即 `make planck/rev4:default:bootloader`。要生成可部署到正式产品的.hex文件(同时包含QMK及bootloader),使用 `production` 构建目标,即 `make planck/rev4:default:production`。 - -兼容的刷写工具: - -* TBD - * 目前只能选择使用该 [Python脚本](https://github.com/qmk/lufa/tree/master/Bootloaders/HID/HostLoaderApp_python), 或从LUFA仓库中构建[`hid_bootloader_cli`](https://github.com/qmk/lufa/tree/master/Bootloaders/HID/HostLoaderApp)。Homebrew也许(即将)能直接支持(通过 `brew install qmk/qmk/hid_bootloader_cli`)。 - -刷写过程: - -1. 使用如下任一方式进入bootloader模式: - * 点击 `QK_BOOT` 键码 - * 如果PCB上有 `RESET` 键,点击之 - * 快速短接一下RST到GND -2. 等待操作系统识别到设备 -4. 将.hex文件刷写进去 -5. 重置设备进入应用模式(可能会自动进行) - -### `make` 构建目标 - -* `:qmk-hid`: 每5秒检测一次直到发现可用的DFU设备,然后进行固件刷写。 - -## STM32/APM32 DFU - -所有的STM32及APM32 MCU系列,除F103型号外(参见[STM32duino小节](#stm32duino))都在出场时预装了bootloader且无法修改或删除。 - -为确保对STM32-DFU bootloader的兼容性,请添加如下代码块至 `rules.mk`(可选替代项为 `apm32-dfu`): - -```make -# 选择Bootloader -BOOTLOADER = stm32-dfu -``` - -兼容的刷写工具: - -* [QMK工具箱](https://github.com/qmk/qmk_toolbox/releases) (推荐的图形化工具) -* [dfu-util](https://dfu-util.sourceforge.net/) / QMK中将构建目标设为 `:dfu-util`(推荐的命令行工具) - -刷写过程: - -1. 使用如下任一方式进入bootloader模式(进入该模式后只有7秒时间可以刷写): - * 点击 `QK_BOOT` 键码(对STM32F042设备可能无效) - * 如果有重置电路,点击PCB上的 `RESET` 键;有些主控板上可能会有一个开关需要先打开 - * 否则,你需要将 `BOOT0` 接线到VCC(通过 `BOOT0` 按钮或跳线),短接 `RESET` 至GND(通过 `RESET` 按钮或条线),然后断开 `BOOT0` 的接线。 -2. 等待操作系统识别到设备 -3. 将.bin文件刷写进去 -4. 重置设备进入应用模式(可能会自动进行) - -### `make` 构建目标 - -* `:dfu-util`: 每5秒检测一次直到发现可用的STM32 bootloader设备,然后进行固件刷写。 -* `:dfu-util-split-left` 和 `:dfu-util-split-right`: 同 `:dfu-util` 一样会刷写固件,但额外地会设置手性设置到EEPROM中,对于基于Proton-C的分体式键盘这是理想的方法。 -* `:st-link-cli`: 通过ST-Link CLI工具集而非dfu-util进行刷写,需要有ST-Link电子狗。 -* `:st-flash`: 通过[STLink工具](https://github.com/stlink-org/stlink)内的 `st-flash` 工具而非dfu-util进行刷写,需要有ST-Link电子狗。 - -## STM32duino :id=stm32duino - -该bootloader几乎是STM32F103板专用,该型号出厂不带USB DFU bootloader。其源代码及预编译好的二进制文件[在这里](https://github.com/rogerclarkmelbourne/STM32duino-bootloader)。 - -为确保对STM32duino bootloader的兼容性,请添加如下代码块至 `rules.mk`: - -```make -# 选择Bootloader -BOOTLOADER = stm32duino -``` - -兼容的刷写工具: - -* [QMK工具箱](https://github.com/qmk/qmk_toolbox/releases) (推荐的图形化工具) -* [dfu-util](https://dfu-util.sourceforge.net/) / QMK中将构建目标设为 `:dfu-util`(推荐的命令行工具) - -刷写过程: - -1. 使用如下任一方式进入bootloader模式(进入该模式后只有7秒时间可以刷写): - * 点击 `QK_BOOT` 键码(对STM32F042设备可能无效) - * 如果有重置电路,点击PCB上的 `RESET` 键;有些主控板上可能会有一个开关需要先打开 - * 否则,你需要将 `BOOT0` 接线到VCC(通过 `BOOT0` 按钮或跳线),短接 `RESET` 至GND(通过 `RESET` 按钮或条线),然后断开 `BOOT0` 的接线。 -2. 等待操作系统识别到设备 -3. 将.bin文件刷写进去 -4. 重置设备进入应用模式(可能会自动进行) - -## Kiibohd DFU - -Input Club出品的键盘使用NXP Kinetis微控制器而非STM32,并使用了独有的[自制bootloader](https://github.com/kiibohd/controller/tree/master/Bootloader),然而处理器 及协议上两者大部分是一致的。 - -在 `rules.mk` 中该bootloader的设置项为 `kiibohd`,但既然该bootloader仅用在Input Club主控板上,就不必要设置到键映射或是用户级了。 - -兼容的刷写工具: - -* [QMK工具箱](https://github.com/qmk/qmk_toolbox/releases)(推荐的图形化工具) -* [dfu-util](https://dfu-util.sourceforge.net/) / QMK中将构建目标设为 `:dfu-util`(推荐的命令行工具) - -刷写过程: - -1. 使用如下任一方式进入bootloader模式: - * 点击 `QK_BOOT` 键码(有可能只能进入到“安全”bootloader模式,参见[这里](https://github.com/qmk/qmk_firmware/issues/6112)) - * 如果PCB上有 `RESET` 键,点击之 -2. 等待操作系统识别到设备 -3. 将.bin文件刷写进去 -4. 重置设备进入应用模式(可能会自动进行) - -## tinyuf2 - -键盘可以考虑支持tinyuf2 bootloader,目前唯一支持的设备是F401/F411 blackpill。 - -在 `rules.mk` 中该bootloader的设置项为 `tinyuf2`,也可指定到键映射及用户级中。 - -为确保对tinyuf2 bootloader的兼容性,请添加如下代码块至 `rules.mk`: - -```make -# 选择Bootloader -BOOTLOADER = tinyuf2 -``` - -兼容的刷写工具: - -* 任何具备文件拷贝能力的程序,如 _macOS Finder_ 或 _Windows Explorer_ *。 - -刷写过程: - -1. 使用如下任一方式进入bootloader模式: - * 点击 `QK_BOOT` 键码 - * 双击PCB上的 `nRST` 键 -2. 等待操作系统识别到设备 -3. 将.uf2文件拷贝到新出现的USB存储设备上 -4. 等待设备恢复可用状态 diff --git a/docs/zh-cn/flashing_bootloadhid.md b/docs/zh-cn/flashing_bootloadhid.md deleted file mode 100644 index c5e944f9477..00000000000 --- a/docs/zh-cn/flashing_bootloadhid.md +++ /dev/null @@ -1,75 +0,0 @@ -# BootloadHID刷写指引及资料 - - - -ps2avr(GB)基于一片ATmega32A微控制器及特殊的bootloader,无法使用常规的QMK方法进行刷写。 - -常规刷写过程: - -1. 使用如下任一方式进入bootloader模式: - * 点击 `QK_BOOT` 键码(一些设备上不管用) - * 在按住“盐键”(salt key)时插入键盘(该键一般会在键盘使用说明上写明) -2. 等待操作系统识别到设备 -3. 将.hex文件刷写进去 -4. 重置设备到应用模式(可能会自动进行) - -## 用于bootloadHID刷写的构建目标 - -?> 使用QMK安装脚本,具体[参见这里](zh-cn/newbs_getting_started.md),所需的bootloadHID工具应自动被安装上。 - -若希望通过命令行进行刷写,通过如下命令指定 `:bootloadhid` 构建目标: - - make ::bootloadhid - -## 基于图形化界面的刷写方法 - -### Windows -1. 下载[HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash) -2. 重置键盘 -3. 确认VID为 `16c0` 且PID为 `05df` -4. 点击 `查找设备(Find Device)` 并确认目标键盘可见 -5. 点击 `打开.hex文件(Open .hex File)` 并定位到你创建的.hex文件 -6. 点击 `刷写设备(Flash Device)` 并等待刷写完毕 - -## 在命令行中进行刷写 - -1. 重置键盘 -2. 通过输入 `bootloadHID -r` 并追加 `.hex` 文件的路径进行主控板的刷写 - -### Windows系统上手动安装 -针对MSYS2: -1. 下载BootloadHID固件包:https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz -2. 使用合适的工具解压,如7-Zip -3. 将解压出的 `commandline/bootloadHID.exe` 拷贝至MSYS目录下,一般是 `C:\msys64\usr\bin` - -针对Windows本地环境刷写,`bootloadHID.exe` 可以直接在非MSYS2环境下执行。 - -### Linux系统上手动安装 -1. 安装libusb开发依赖项: - ```bash - # 该操作具体取决于系统 - Debian下可以这样 - sudo apt-get install libusb-dev - ``` -2. 下载BootloadHID固件包: - ``` - wget https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz -O - | tar -xz -C /tmp - ``` -3. 构建bootloadHID可执行程序: - ``` - cd /tmp/bootloadHID.2012-12-08/commandline/ - make - sudo cp bootloadHID /usr/local/bin - ``` - -### MacOS系统上手动安装 -1. 执行以下命令安装Homebrew: - ``` - /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" - ``` -2. 安装以下包: - ``` - brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb - ``` diff --git a/docs/zh-cn/getting_started_docker.md b/docs/zh-cn/getting_started_docker.md deleted file mode 100644 index 038f17f9ac2..00000000000 --- a/docs/zh-cn/getting_started_docker.md +++ /dev/null @@ -1,59 +0,0 @@ -# Docker快速上手指引 - - - -本工程包含了一套Docker工作流,可以方便地在不更改你主系统环境情况下完成新固件文件的构建工作。这同时也保证了在你拉取该工程代码后的编译环境与其他人以及QMK开发者的一致。当你需要其他人协助你排查遇到的问题时会方便很多。 - -## 需求 - -核心需求是一个已安装的可用的 `docker` 或 `podman`。 -* [Docker CE](https://docs.docker.com/install/#supported-platforms) -* [Podman](https://podman.io/getting-started/installation) - -## 用法 - -拉取QMK仓库到本地(包括所有的子模块): - -```bash -git clone --recurse-submodules https://github.com/qmk/qmk_firmware.git -cd qmk_firmware -``` - -执行以下命令构建键映射: -```bash -util/docker_build.sh : -# 例: util/docker_build.sh planck/rev6:default -``` - -如上可以构建所需的键盘/键映射,可用于刷写的 `.hex` 及 `.bin` 输出文件存放在QMK目录下。如果省略了 `:keymap` 参数,所有的键映射都会被编译。留意编译参数格式与 `make` 构建时的一致。 - -同时也支持直接从Docker中编译和刷写,只需要指定 `target`: - -```bash -util/docker_build.sh keyboard:keymap:target -# 例: util/docker_build.sh planck/rev6:default:flash -``` - -可以不带参数地执行该脚本,其会依次要求你输入这些参数,也许你会觉得这样更好用: - -```bash -util/docker_build.sh -# 从输入中读取参数 (留空则构建所有的键盘/键映射) -``` - -可以通过设置环境变量 `RUNTIME` 为想使用的容器运行时的名称或路径来指定运行时,默认其会检测并自动选取docker或podman,相比于podman会更倾向于用docker。 - -```bash -RUNTIME="podman" util/docker_build.sh keyboard:keymap:target -``` - -## FAQ - -### 为什么我无法在我的Windows/macOS下刷写固件 - -在Windows及macOS上,需要有[Docker Machine](http://gw.tnode.com/docker/docker-machine-with-usb-support-on-windows-macos/)运行着,配置过程很繁琐,因此我们没有做推荐。请考虑使用[QMK工具箱](https://github.com/qmk/qmk_toolbox)。 - -!> Windows下需要启用[Hyper-V](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v)才能运行Docker,这也意味着它无法运行在没有Hyper-V的Windows版本下,如Windows 7,Windows 8及**Windows 10家庭版**。 diff --git a/docs/zh-cn/getting_started_github.md b/docs/zh-cn/getting_started_github.md deleted file mode 100644 index 2a5ec8ca4f4..00000000000 --- a/docs/zh-cn/getting_started_github.md +++ /dev/null @@ -1,69 +0,0 @@ -# 如何在QMK中使用GitHub - - - -对不熟悉 GitHub 的人来说,使用GitHub 可能会有些难度。此教程会教您 fork 和 clone QMK,以及向 QMK 提交 pull request 。 - -?> 本教程假设您已安装GitHub,并且您喜欢使用命令行工作。 - -首先 [GitHub上的QMK页面](https://github.com/qmk/qmk_firmware), 您能看到右上方有个按钮写着"Fork": - -![从GitHub上分叉](https://i.imgur.com/8Toomz4.jpg) - -如果你是某组织成员,你将需要选择分叉到哪个账户。一般情况下, 你是想要分叉到你的私人账户下。当你完成分叉 (有时需要等一会), 点击"Clone or Download" 按钮: - -!从GitHub下载](https://i.imgur.com/N1NYcSz.jpg) - -你要选择 "HTTPS", 然后选择链接复制: - -![HTTPS链接](https://i.imgur.com/eGO0ohO.jpg) - -然后,在命令行输入`git clone --recurse-submodules `,然后粘贴你的链接: - -``` -user@computer:~$ git clone --recurse-submodules https://github.com/whoeveryouare/qmk_firmware.git -Cloning into 'qmk_firmware'... -remote: Enumerating objects: 9, done. -remote: Counting objects: 100% (9/9), done. -remote: Compressing objects: 100% (5/5), done. -remote: Total 183883 (delta 5), reused 4 (delta 4), pack-reused 183874 -Receiving objects: 100% (183883/183883), 132.90 MiB | 9.57 MiB/s, done. -Resolving deltas: 100% (119972/119972), done. -... -Submodule path 'lib/chibios': checked out '587968d6cbc2b0e1c7147540872f2a67e59ca18b' -Submodule path 'lib/chibios-contrib': checked out 'ede48346eee4b8d6847c19bc01420bee76a5e486' -Submodule path 'lib/googletest': checked out 'ec44c6c1675c25b9827aacd08c02433cccde7780' -Submodule path 'lib/lufa': checked out 'ce10f7642b0459e409839b23cc91498945119b4d' -``` - -现在你本地计算机有QMK的分叉了,你可以添加你的布局了, 为你的键盘编译并刷新固件吧。如果你觉得你的修改很不错, 你可以添加,提交,然后想你的分叉推出(pull)你的改变,像这样: - -``` -user@computer:~$ git add . -user@computer:~$ git commit -m "adding my keymap" -[master cccb1608] adding my keymap - 1 file changed, 1 insertion(+) - create mode 100644 keyboards/planck/keymaps/mine/keymap.c -user@computer:~$ git push -Counting objects: 1, done. -Delta compression using up to 4 threads. -Compressing objects: 100% (1/1), done. -Writing objects: 100% (1/1), 1.64 KiB | 0 bytes/s, done. -Total 1 (delta 1), reused 0 (delta 0) -remote: Resolving deltas: 100% (1/1), completed with 1 local objects. -To https://github.com/whoeveryouare/qmk_firmware.git - + 20043e64...7da94ac5 master -> master -``` - -现在你的改动已经在你GitHub上的分支中了 - 如果你回到这 (`https://github.com/你的GitHub账户名/qmk_firmware`) ,你可以点击下方所示按钮创建 "New Pull Request": - -![新的 Pull Request](https://i.imgur.com/DxMHpJ8.jpg) - -现在你可以看到你所做的一切 - 如果看起来不错, 就可以点击 "Create Pull Request"定稿了: - -![创建Pull Request](https://i.imgur.com/Ojydlaj.jpg) - -提交后,我们会开跟你说你的改动,要求您进行更改, 并最终接受您的更改!感谢您为QMK做的贡献 :) diff --git a/docs/zh-cn/getting_started_introduction.md b/docs/zh-cn/getting_started_introduction.md deleted file mode 100644 index 82d50355ebb..00000000000 --- a/docs/zh-cn/getting_started_introduction.md +++ /dev/null @@ -1,59 +0,0 @@ -# 介绍 - - - -本页解释了使用QMK项目所需的基本信息。它假定您能熟练使用Unix shell,但您不熟悉C语言也不熟悉使用make编译。 - -## 基本QMK结构 - -QMK是[Jun Wako](https://github.com/tmk)的[tmk_keyboard](https://github.com/tmk/tmk_keyboard)工程的一个分叉。经过更改的TMK原始代码放在`tmk_core` 文件夹中。 QMK增加的新东西可以在 `quantum` 文件夹中找到。 键盘项目可以在 `handwired`(手动飞线) 和 `keyboard`(PCB键盘)这两个文件夹找到。 - -### 用户空间结构 - -在`users`文件夹里面的目录是每个用户的目录。这个文件夹里面放的是用户们在不同键盘都能用到的代码。详见[用户空间特性](zh-cn/feature_userspace.md) - -### 键盘项目结构 - -在`keyboards`文件夹和他的子文件夹`handwired`中就是各个键盘的项目了,比如`qmk_firmware/keyboards/clueboard`。内部结构与如下: - -* `keymaps/`: 可以构建的不同布局 -* `rules.mk`: 用来设置 "make" 命令默认选项的文件。别直接编辑这个文件,你应该使用具体某个布局的 `rules.mk`. -* `config.h`: 用于设置默认编译选项的文件。别直接编辑这个文件, 你应该使用具体某个布局的 `config.h`. - -### 布局结构 - -在各个布局的文件夹,你能找到以下文件。只有 `keymap.c` 是必要的, 如果其他文件找不到就会直接选择默认选项。 - -* `config.h`: 配置布局的选项 -* `keymap.c`: 布局的全部代码, 必要文件 -* `rules.mk`: 使能的QMK特性 -* `readme.md`:介绍你的布局,告诉别人怎么使用,附上功能说明。请将图片上传到imgur等图床(译注:imgur可能已被墙,为了方便国人访问,建议使用国内可以直接访问的图床)。 - -# `config.h` 文件 - -有三个重要的`config.h` 位置: - -* 键盘 (`/keyboards//config.h`) -* 用户空间 (`/users//config.h`) -* 布局 (`/keyboards//keymaps//config.h`) - -构建系统按照上述顺序自动获取配置文件。如果要覆盖由上一个 `config.h` 所做的设置,您需要首先为要更改的设置包含一些样板代码。 - -``` -#pragma once -``` - -要覆盖上一个 `config.h` 所做的设置,你要先 `#undef` 然后再 `#define` 这个设置. - -样板代码和设置看起来像这样: - -``` -#pragma once - -// 像下面那样覆盖设置(MY_SETTING指的是你要覆盖的设置项)! -#undef MY_SETTING -#define MY_SETTING 4 -``` diff --git a/docs/zh-cn/hand_wire.md b/docs/zh-cn/hand_wire.md deleted file mode 100644 index 97e80251fe9..00000000000 --- a/docs/zh-cn/hand_wire.md +++ /dev/null @@ -1,255 +0,0 @@ -# 手工搭建指南 - - - -## 模块清单 - -你需要的模块有:(*x*为你设计的键盘的键数) - -* QMK所兼容的主控板(Teensy, Pro-Micro, QMK Proton C 等) -* *x* 个键轴 (MX, Matias, Gateron 等) -* *x* 个通孔二极管(译注:即普通的直插二极管) -* 定位板及卫星轴 -* 电线 -* 电烙铁 -* 松香/焊油 -* 通风的环境/风扇通风 -* 剪线钳 - -可选地但比较有用的: - -* 剥线钳/一把锋利的剪刀 -* 镊子及小尖嘴钳 -* 焊台/一位助手 - -## 前期工作 - -组装PCB矩阵的方法多种多样,这份指引会描述一些基础信息并给出一些推荐方案。 - -既然我们要进行手工飞线搭建,这里就假设你已经有了定位板。如果你想构建完全定制化的配列,有 [ai03 Plate Generator](https://kbplate.ai03.me/) 以及 [Swillkb Plate & Case Builder](http://builder.swillkb.com/) 这样的工具可以助你设计出一个新的。 - -首先从安装键轴及卫星轴开始,考虑厚度及材质的影响,可能需要热熔胶来固定。 - -## 设计矩阵 :id=planning-the-matrix - -如果你在参考已有的手工搭建指南(比如[自制键盘固件目录](https://github.com/qmk/qmk_firmware/tree/master/keyboards/handwired)下的键盘),可以跳过该步骤,确保是按照文中的矩阵方案连线即可。 - -如果你的方案是将每个开关的一个引脚与两边的开关相连(行方向),另一个引脚与上下的开关相连(列方向),并串联一个二极管到一端,最常用的方案是二极管背对着连接到行方向的引脚(列向行)。即让远离二极管黑线一端连接到开关上(电流只能从一个方向通过二极管)。 - -可以很容易地设计出正交连接的键盘(如Planck)。 -(译注:这里的“正交”意思是行列方向连接规整) - -![Planck矩阵示例图](https://i.imgur.com/FRShcLD.png) -[作者:RoastPotatoe "如何手工搭建Planck键盘"](https://blog.roastpotatoes.co/guide/2015/11/04/how-to-handwire-a-planck/) (英文)内的图例 - -键盘配列越大,功能越丰富,则矩阵也会更复杂。[Keyboard Firmware Builder](https://kbfirmware.com/) 可以帮助你设计矩阵配列(下图为通过 [Keyboard Layout Editor](https://www.keyboard-layout-editor.com) 导出的全尺寸ISO键盘)。 - -![ISO键盘矩阵示例图](https://i.imgur.com/UlJ4ZDP.png) - -必须时刻留意矩阵的行列数总和不能超出控制器的IO引脚数,因此上图的方案可以使用 Proton C 或 Teensy++ 控制器,但常规 Teensy 或 Pro Micro 不行。 - -### 常见微控制器板 :id=common-microcontroller-boards - -| 控制器板 | 控制器方案 | # I/O引脚数 | 引脚图 | -| :------------ |:-------------:| ------:| ------ | -| Pro Micro* | ATmega32u4 | 20 | [链接](https://learn.sparkfun.com/tutorials/pro-micro--fio-v3-hookup-guide/hardware-overview-pro-micro#Teensy++_2.0) | -| Teensy 2.0 | ATmega32u4 | 25 | [链接](https://www.pjrc.com/teensy/pinout.html) | -| [QMK Proton C](https://qmk.fm/proton-c/) | STM32F303xC | 36 | [链接 1](https://i.imgur.com/RhtrAlc.png), [2](https://deskthority.net/wiki/QMK_Proton_C) | -| Teensy++ 2.0 | AT90USB1286 | 46 | [链接](https://www.pjrc.com/teensy/pinout.html#Teensy_2.0) | - -*Elite C 与 Pro Micro 除将 Micro USB 替换为 USB-C 外其余无差别。 - -一些主控板专门为手工接线设计,除可直接连接少量开关外还有额外的引脚,但这些通常会更贵一些,也更难掌控。 - -实装的 Postage mini 主控板 - -| 控制器板 | 控制器方案 | # I/O引脚数 | -| :------------ |:-------------:| ------:| -| [Swiss helper](https://www.reddit.com/r/MechanicalKeyboards/comments/8jg5d6/hand_wiring_this_might_help/) | ATmega32u4 | 20 | -| [Postage 主控板](https://github.com/LifeIsOnTheWire/Postage-Board/)| ATmega32u4| 25 | -| [Postage mini 主控板](https://geekhack.org/index.php?topic=101460.0)| ATmega32u4| 25 | - -## 矩阵布线 - -布线方案不是唯一的,要达成的效果是可以正确连接所有的焊点并不会出现预期外的短路。 - -公开的材料和技术方案: - -(译注:链接文章及标题恕不翻译) - -| 技术方案 | 示例 | 优点 | 缺点 | 图片 -| :-----------| :------- | :------ | :--- | :--- -| 间断开口的线缆 | [Sasha Solomon's Dactyl](https://medium.com/@sachee/building-my-first-keyboard-and-you-can-too-512c0f8a4c5f) 以及 [Cribbit's modern hand wire](https://geekhack.org/index.php?topic=87689.0) | 整洁 | 线缆开口的操作会有些困难 | ![开口的线缆](https://i.imgur.com/0GNIYY0.jpg) -| 适宜长度的线缆 | [u/xicolinguada's ortho build](https://www.reddit.com/r/MechanicalKeyboards/comments/c39k4f/my_first_hand_wired_keyboard_its_not_perfect_but/) | 剥线容易 | 较难固定位置 | ![适宜长度的线缆](https://i.imgur.com/mBe5vkL.jpg) -| 漆包线 | [fknraiden's custom board](https://geekhack.org/index.php?topic=74223.0) | 可以直接焊接(烧掉绝缘层) | 外观差? | ![漆包线](https://i.imgur.com/b4b7KDb.jpg) -| 弯折二极管引脚作为行方向连线 | [Matt3o's Brownfox](https://deskthority.net/viewtopic.php?f=7&t=6050) | 焊点更少 | 绝缘性差 | ![弯折了的二极管引脚](https://i.imgur.com/aTnG8TV.jpg) -| 硬线(如铜管) | [u/d_stilgar's invisible hardline](https://www.reddit.com/r/MechanicalKeyboards/comments/8aw5j2/invisible_hardline_keyboard_progress_update_april/) 以及 [u/jonasfasler's first attempt](https://www.reddit.com/r/MechanicalKeyboards/comments/de1jyv/my_first_attempt_at_handwiring_a_keyboard/) | 非常漂亮 | 难度高,没有物理绝缘 | ![手工连接的硬线](https://i.imgur.com/CnASmPo.jpg) -| 用绝缘胶带(如高温胶带*)隔离开的裸线 | [Matt3o's 65% on his website](https://matt3o.com/hand-wiring-a-custom-keyboard/) | 简单(不用剥线) | 丑拒 | ![裸线](https://i.imgur.com/AvXZShD.jpg) -| 铜箔胶带 | [ManuForm Dactyl](https://github.com/tshort/dactyl-keyboard) | 非常简单 | 只适用于定位板/外壳与开关底部平齐的情况 | ![铜箔胶带](https://i.imgur.com/RFyNMlL.jpg) - -(*译注:原文是聚酰亚胺胶带,在中国通常叫高温胶带) - - -以上方案可以结合使用,在焊接前请准备好各种长度的线缆。 - - -### 分体键盘的注意事项 - -如果你想制作的是分体键盘(如Dactyl),每一半边都需要一个控制器以及连通两方的通信用线(如TRRS或硬连接线)。更多资料参见[QMK分体键盘文档](zh-cn/feature_split_keyboard.md)。 -(译注:TRRS即一种常用的4线耳机线插口,具体信息请查阅维基百科或[这份知乎文章](https://zhuanlan.zhihu.com/p/144233538)) - - -### 焊接 - -你可以找到很多焊接指导及技巧,这里列出了最相关及最关键的部分: - -要想焊接的牢固需要确保焊料与焊接两端的金属面充分地接触,一个好办法(也不是必须)是上锡前先(将线缆)在针脚上绕一圈或先拧在一起。 - -杆上绕圈 绕环的二极管引脚 - -如果二极管还在包装条上且需要弯折(作为绕圈的起点处或用于连接到邻接处),一个简便的办法是找一个盒子、桌子或尺子的直边上进行弯折。由于弯折统一在二极管一侧,也有助于区分二极管的方向。 - -弯折二极管引脚 - -如果你的电烙铁有温控功能,将其设置在 315ºC(600ºF)。 - -热起来后,给电烙铁上锡 - 即融化一部分锡料到烙铁头上然后立刻用湿海绵或烙铁头海绵擦掉,这样烙铁头上会有一层光滑明亮的焊料,以防止氧化且有助于焊料的焊接操作。 - -接下来进行焊接,先将烙铁头在焊接面上接触一会儿进行加热,然后上焊料焊接两侧。加热焊接面的目的是为了确保焊料可以粘附且不会过早冷却下来。 - -不能让焊料/焊点加热过度,热量会通过接触面烧毁原件(融毁开关外壳等)。并且,由于焊锡中有帮助[“浸润”](https://en.m.wikipedia.org/wiki/Wetting)(即上锡)的助焊剂,加热的越久助焊剂蒸发掉的越多,最终导致焊接点虚焊,除了看起来糟糕外,还有导致电路短路的风险。 - -#### 焊接二极管 - -从左上角的那个开关开始,将二极管放到开关上(用镊子,如果有的话)并纵向放直,有黑线的一端朝向你。让二极管间并联(二极管的阴极不应连接到其它二极管的阳极),二极管的阳极应连接到开关的左引脚上,而弯曲的阴极应朝向右边放置,如图: - -![soldering-diodes-01.png](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/docs/hand_wire/soldering-diodes-01.png) - -在放稳二极管后,拿起焊锡,将其与左轴脚同时接触到电烙铁上 - 在松香的帮助下焊锡会很容易地覆盖在二极管及轴脚上。二极管可能会有些位移,此时你可以抓住二极管另外一端弯折过的引脚,小心地放回到位置上 - 但请留意另一端是会迅速变得烫手的。如果二极管容易乱跑,可以使用尖嘴钳之类的东西在焊接时辅助保持稳固。 - -松香加热时升起的烟有害,注意保护口鼻,不要熏到眼睛或皮肤。 - -焊接到位时,可以将焊点升起的烟吹走以免熏脸,也能帮助焊点快速降温。焊点在冷却后会形成沙哑状(无光泽)的表面,但请注意此时它依旧非常烫,需要几分钟时间的冷却才可以触摸,多吹吹有助于快速冷却。 - -在第一个二极管焊接完毕后,第二个二极管需要焊接轴脚以及上一个二极管弯折的那一端,看起来像这样: - -![soldering-diodes-02.png](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/docs/hand_wire/soldering-diodes-02.png) - -在焊接完毕一整行后,用剪线钳剪掉二极管上方(绕轴脚后多出的部分),以及这一行最后侧多出来的引脚部分。在每一行焊接完毕后都要记得这一步。 - -在你完成了所有的二极管的焊接工作后,最好是逐一测试一下以确保焊接牢固稳定 - 再往后不是不能回头修正,但会越来越困难。 - -#### 纵向上的焊接 - -这一步你有几个可选项需考虑 - 给横向电缆进行绝缘处理是个好主意(毕竟二极管没有绝缘层),但如果你足够小心,横向电缆裸露着也行 - 但仍旧不建议这么做。如果你用的是单芯线,先将外皮整个褪下来再酌情装回去可能是最好的办法,但会因尺寸及材质原因造成操作困难,你可以将线缆上需要焊接到开关轴的部分裸露出来。 - -如果你使用多股线/铜绞线,可能最简单的方案就是用不固定长度的小段电线来纵向连接开关。通过融化掉焊接点的外皮的方式来用一整根线不是不可以,但这里不推荐这样做,这种操作会产生更多的有害烟尘,也会毁掉你的电烙铁。 - -在进行焊接操作前,先预弯折好线缆(如果是单芯线),或至少心中已经规划好焊接路线顺序(特别是你要做的设计是错列的时)。实际上焊接顺序不是特别重要,因为我们是通过焊接方案来确定键映射定义的 - 只要确保一行上的所有按键都有独自的列,且从左到右依次排列。 - -如果你不做任何的绝缘处理,可以将纵向的线升高一些,焊接在轴脚尖端上 - 如果线缆本身足够稳固,不会短路到连接着二极管的横线线缆上。 - -## 连接控制器 - -在矩阵焊接完成后,可以将其焊接到微控制器板上了。 - -将微控制器放在预期的位置上,同时要考虑到安装及外壳对齐问题。须记得USB槽的位置是可以与微控制器分开的,只需使用一小段公对母线接驳下即可。 - -找到微控制器板的引脚定义/文档([链接](#common-microcontroller-boards))并将所有的I/O引脚标出来(留意像teensy这种的控制器,模拟I/O引脚可能是数字I/O引脚的两倍),将线缆连接到这些引脚上。 - ----- - -### 针对 Teensy 2.0 的特殊说明 - -Teensy 上的部分引脚有点特殊,像 D6(片上LED),及一些 UART、SPI、I2C或PWM通道,不过只是在你计划着在键盘上还有其它功能设计时才需避免使用。如果你还不是很确定以后会不会增加什么功能上去,引脚应该还是足够充足到可以剩一部分出来的。 - -那些无论在什么控制器上都不应去使用的引脚,有:GND、VCC、AREF以及RST - 其它所有引脚都是可以用且也能在固件中访问的到的。 - ----- - - -将电线切割为控制器到各行/列上某一点距离的长度。可以焊到各行的任意位置上,只需要确保是在二极管之后 - 焊接到二极管前面(轴脚侧)的话该行将无法正常使用。 - -这里用排线的话会显得非常整洁,你也可以考虑如何排布线缆以连接到各行/列的近处。 - -排线 - -在往控制器上焊接电线时,请记住各引脚连接的是哪一行/列,在后续制作固件时我们需要用到这些信息来定义矩阵。 - -在你往下继续以前,请确保控制器已装配到位 - 切掉线缆再重新焊接非常麻烦! - - -## 一些基础的固件配置 - -至此,在你构建好固件后,键盘就应该能正常工作了。 - -通过 [Keyboard Firmware Builder](https://kbfirmware.com/) 网站可以轻松地创建一个简单的固件。通过 [Keyboard Layout Editor](https://www.keyboard-layout-editor.com) 可以自己制作配列数据,之后就可以导入进来并重新构建矩阵信息(如果你没有在先前的 [设计矩阵](#planning-the-matrix) 完成的话)。 - -继续完成剩下的步骤,在逐一配置完所有的按键后就可以编译下载固件了。其中 .hex 文件可以用来直接刷写到键盘上,而 .zip 包中的源代码可以用来添加高级功能并通过 [构建第一个固件](zh-cn/newbs_building_firmware?id=build-your-firmware) 中详述的方法进行本地构建。 - -Keyboard Firmware Builder提供的源代码是QMK的,但版本是2017年初的。如果要用现今版本的QMK来构建 .zip 中的源代码,需要在打开 .zip 后遵循以下几步: - -1. 解压 `kb` 目录到 `qmk_firmware/keyboards/handwired/`。 -2. 进入解压的 `kb` 目录,转到 `keymaps/default/` 目录下,打开 `keymap.c`。 -3. 找到并删除 `action_get_macro` 代码段: - ``` - const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { - ... - return MACRO_NONE; - } - ``` -4. 保存并关闭 `keymap.c`。 - -## 刷写固件 - -安装 [QMK Toolbox](https://github.com/qmk/qmk_toolbox). - -![QMK Toolbox](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/docs/hand_wire/qmk_toolbox.png "QMK Toolbox 0.0.16 on Windows 8.1") - -在 “Local File” 栏处定位到你新创建的 .hex 文件,在 “MicroController” 中选择你的控制器板(常见型号[这里](#common-microcontroller-boards)有)。 - -插上你的键盘后在QMK Toolbox中点击reset(重置)按钮(如果没有重置按钮,短接一下Reset和接地引脚)再点击“Flash”(刷写)按钮。 - - -## 测试固件 - -可以用 [QMK配置器的键盘测试器](https://config.qmk.fm/#/test)、[Keyboard Tester](https://www.keyboardtester.com/tester.html) 或 [Keyboard Checker](https://keyboardchecker.com/) 进行测试,也可以打开一个文本编辑器并试着输入 - 你应该能成功输入键映射方案中的所有字符。对每个按键进行测试,并记录下不能正常工作的按键。对这些不能正常工作的按键,这里有一个快速排查指引: - -1. 将键盘翻过来,用一段金属物短接一下轴脚 - 这么做可以排除掉需要更换掉的坏轴的可能性。 -2. 检查轴脚上的焊点 - 应该是饱满且完整覆盖的。如果你稍加用力就能将其弄下来,那么就是焊接不到位。 -3. 检查二极管的焊点 - 如果二极管虚焊了,部分行可以使用,但其它的可能就不行了。 -4. 检查连接到各行的焊点 - 如果这里虚焊了,这些行就无法正常使用。 -5. 检查 Teensy 两侧的进/出线的焊点 - 两侧的线缆都必须确保已被良好地焊接。 -6. 检查 `.h` 文件中是否有错误或不当的 `KC_NO` - 如果不确定在哪里,用已有的 k*xy* 变量替换一下。 -7. 检查固件文件确实经过编译且正确刷写到Teensy上了。除非你在终端看到了错误消息,或是刷写时出现了弹框,否则一切应该是正常的。 -8. 使用万用表实测一下,触发开关时是否成功闭合(按下时可以连通电路)。 - -如果你完成了上述所有检查,应当留意有时可能是多种因素共同造成了开关的异常,因此最后将其短路掉来排查问题并没有什么害处。 - -## 即将完成 - -在确认键盘可以正常使用后,如果你用的是独立的控制器模块(非手工构建用),须将其固定好。办法有很多,比如热熔胶、双面胶带、3D打印的盒子、电工胶带等。 - -如果你觉得成就感满满,可以试着增加一些额外的功能,比如 [轴内LED](https://geekhack.org/index.php?topic=94258.0),[轴内RGB](https://www.reddit.com/r/MechanicalKeyboards/comments/5s1l5u/photoskeyboard_science_i_made_a_handwired_rgb/),[RGB背光](https://medium.com/@DavidNZ/hand-wired-custom-keyboard-cdd14429c7b3#.7a1ovebsk) 甚至可以是 [OLED显示屏!](https://www.reddit.com/r/olkb/comments/5zy7og/adding_ssd1306_oled_display_to_your_build/) - -固件的潜力非常大 - 阅览 [docs.qmk.fm](https://docs.qmk.fm) 可以看到全部功能的列表,也能深入了解人们是如何使用那些五花八门的键盘的。随时欢迎到 [OLKB subreddit](https://reddit.com/r/olkb) 或 [QMK Discord](https://discord.gg/Uq7gcHh) 上寻求帮助! - -## 其它指引链接 - -- [matt3o 的分步指引 (BrownFox build)](https://deskthority.net/viewtopic.php?f=7&t=6050) 以及他的 [个人站点](https://matt3o.com/hand-wiring-a-custom-keyboard/) 和 [指导视频](https://www.youtube.com/watch?v=LVzpsjFWPP4) -- [Cribbit:“现代化的手工搭建指南 - 强大,简洁,友好”](https://geekhack.org/index.php?topic=87689.0) -- [Sasha Solomon:“打造我的第一把键盘”](https://medium.com/@sachee/building-my-first-keyboard-and-you-can-too-512c0f8a4c5f) -- [RoastPotatoe: “如何手工搭建Planck键盘”](https://blog.roastpotatoes.co/guide/2015/11/04/how-to-handwire-a-planck/) -- [Masterzen:“手工搭建键盘记录”](https://www.masterzen.fr/2018/12/16/handwired-keyboard-build-log-part-1/) - - -# 遗留内容 - -以前本页内还有其它内容,现在我们已经将他们单独分离出去了。以下的内容是一些重定向链接,以供那些从老链接地址过来的人能找到自己要找的内容。 - -## 序: 键盘矩阵是如何工作的(以及为什么需要二极管) :id=preamble-how-a-keyboard-matrix-works-and-why-we-need-diodes - -* [键盘矩阵是如何工作的](zh-cn/how_a_matrix_works.md) diff --git a/docs/zh-cn/keymap.md b/docs/zh-cn/keymap.md deleted file mode 100644 index 91a5ac0c664..00000000000 --- a/docs/zh-cn/keymap.md +++ /dev/null @@ -1,211 +0,0 @@ -# 键映射总览 - - - -QMK键映射定义在C源文件中,其数据结构上是一个容纳了数组的数组。外层数组容纳了各个层,内层各数组则为层内的键列表。基本所有键盘都通过定义 `LAYOUT()` 宏来创建该两级数组。 - - -## 键映射与配列 :id=keymap-and-layers -在QMK中, **`const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS]`** 容纳了多个 **层**, 每个**层**下包含了由**16位**的**动作码**所组成的键映射信息。 最多可以定义**32个层**。 - -对于常规键的定义,其**动作码**的高8位皆为0,低8位保存了USB HID中使用的各个键对应的**键码**。 - -不同的层可以同时生效,层的编号从0至31,编号越高的层优先级越高。 -(译注:由于是ascii图,掺杂中文会导致排版错乱,各翻译标注在图下方。下同) - - Keymap: 32 Layers Layer: action code matrix - ----------------- --------------------- - stack of layers array_of_action_code[row][column] - ____________ precedence _______________________ - / / | high / ESC / F1 / F2 / F3 .... - 31 /___________// | /-----/-----/-----/----- - 30 /___________// | / TAB / Q / W / E .... - 29 /___________/ | /-----/-----/-----/----- - : _:_:_:_:_:__ | : /LCtrl/ A / S / D .... - : / : : : : : / | : / : : : : - 2 /___________// | 2 `-------------------------- - 1 /___________// | 1 `-------------------------- - 0 /___________/ V low 0 `-------------------------- -翻译: - -|原文 |译文 | -|--------------------------|-------------| -|Keymap: 32 Layers | 键映射:32个层| -|stack of layers | 层堆栈 | -|precedence | 优先级 | -|high/low | 高/低 | -|layer: action code matrix | 层:动作码矩阵| -|row/column | 行/列 | - -有时,键映射中存储的动作码在一些文档中也被称作键码,主要是由TMK沿袭而来的习惯。 - -### 键映射的层状态 :id=keymap-layer-status - -键映射的层状态由两个32位参数决定: - -* **`default_layer_state`** 指向一个总是可用的键映射层(0-31)(即默认层)。 -* **`layer_state`** 每一位标记对应层的启用/停用状态。 - -通常键映射中的'0'层为 `default_layer(默认层)`,其它层在启动时会被固件置为停用状态,不过这些可以通过 `config.h` 进行配置。当你换了一个按键布局时可用于更改 `default_layer`,比如从Qwerty布局切换到了Colemak布局。 - - Initial state of Keymap Change base layout - ----------------------- ------------------ - - 31 31 - 30 30 - 29 29 - : : - : : ____________ - 2 ____________ 2 / / - 1 / / ,->1 /___________/ - ,->0 /___________/ | 0 - | | - `--- default_layer = 0 `--- default_layer = 1 - layer_state = 0x00000001 layer_state = 0x00000002 -翻译: - -|原文 |译文 | -|-----------------------|-------------| -|Initial state of Keymap| 键映射原始状态| -|Change base layout | 更改了基础层 | - -另外,可以通过修改 `layer_state` 做到其他层对基础层的覆盖,以实现诸如导航键、功能键(F1-F12)、多媒体键等特殊动作。 - - Overlay feature layer - --------------------- bit|status - ____________ ---+------ - 31 / / 31 | 0 - 30 /___________// -----> 30 | 1 - 29 /___________/ -----> 29 | 1 - : : | : - : ____________ : | : - 2 / / 2 | 0 - ,->1 /___________/ -----> 1 | 1 - | 0 0 | 0 - | + - `--- default_layer = 1 | - layer_state = 0x60000002 <-' - - - -### 层优先级及穿透 -须记住**层堆栈中更高的层有着更高的优先级**。固件会从最高的活跃层开始向下找键码,一旦固件在活跃层上找到了一个非 `KC_TRNS`(穿透)键码,就会停止查找,再往下的层级不会被查看。 - - ____________ - / / <--- 较高的层 - / KC_TRNS // - /___________// <--- 较低的层 (KC_A) - /___________/ - - 这个场景中,较高层级中的非穿透键是可用的,如果定义为 `KC_TRNS`(及同等效果的),较低层级的键码 `KC_A` 将被采纳。 - -**注意:** 在层中定义合法的穿透键的方法有: -* `KC_TRANSPARENT` -* `KC_TRNS`(别名) -* `_______`(别名) - -这些键码允许在搜索非穿透键码时可以穿透当前层下落到更低层去。 - -## `keymap.c` 文件解析 - -本例中我们将深入到[Clueboard 66%的一款旧版的默认键映射](https://github.com/qmk/qmk_firmware/blob/ca01d94005f67ec4fa9528353481faa622d949ae/keyboards/clueboard/keymaps/default/keymap.c)方案中去。将该文件在另一个浏览器窗口中打开,以便对照本文进行同步阅览。 - -在一个 `keymap.c` 文件中会有三个你可能会关心的部分: - -* [预定义](#definitions) -* [层/键映射数据结构](#layers-and-keymaps) -* [自定义函数](#custom-functions),若有的话 - -### 预定义 - -文件头部可以看到: - - #include QMK_KEYBOARD_H - - // Helpful defines - // 译:便捷性的宏定义 - #define GRAVE_MODS (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT)) - - /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * You can use _______ in place for KC_TRNS (transparent) * - * Or you can use XXXXXXX for KC_NO (NOOP) * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - // 译:可以用 _______ 替代 KC_TRNS(穿透),用 XXXXXXX 替代 KC_NO (空操作) - - // Each layer gets a name for readability. - // The underscores don't mean anything - you can - // have a layer called STUFF or any other name. - // Layer names don't all need to be of the same - // length, and you can also skip them entirely - // and just use numbers. - // 译:每一层为了便于识别可以起一个名字,下划线没有实际意义 - 叫STUFF之类的也行的, - // 译:层名不需要都一样长,甚至不定义这些直接用层号也是可以的 - enum layer_names { - _BL, - _FL, - _CL, - }; - -以上是一些便于编写键映射及自定义函数时可用的预定义,`GRAVE_MODS` 后续会用在自定义函数中,之后的 `_BL`, `_FL` 及 `_CL` 便于我们在代码中引用这些层。 - -注:在一些更早的键映射文件中,你可能会发现一些形如 `_______` 或 `XXXXXXX` 的定义,这些可以分别代替 `KC_TRNS` 及 `KC_NO`,这样可以更清楚地分辨出各层中定义了哪些键的键值。现在这些定义是不需要的,因为我们默认已经提供了这些定义。 - -### 层和键映射 - -这个文件中最主要的部分是 `keymaps[]` 定义,这里须列出你的层以及层中的内容。这一部分应该以如下定义起始: - - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -之后是一个LAYOUT()宏组成的列表,一个LAYOUT()下定义了一个层中的键列表,一般你需要至少一个“基础层”(如QWERTY、Dvorak或Colemak),之后是在其之上的多个“功能”层。受限于对层的处理顺序,较低的层无法覆盖在较高的层上。 - -QMK在 `keymaps[][MATRIX_ROWS][MATRIX_COLS]` 中保存着16位的动作码(有些时候也被称作键码),对于与常规键一致的键码,其高字节为0,低字节为USB HID 键盘所使用的键码值。 - -> QMK的前身TMK中使用 `const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS]` 来存储8位的键码,一些键码被保留用于引用执行 `fn_actions[]` 数组中的特定功能。 - -#### 基础层 - -以下示例是Clueboard的基础层定义: - - /* Keymap _BL: Base Layer (Default Layer) - */ - [_BL] = LAYOUT( - F(0), 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_GRV, KC_BSPC, KC_PGUP, \ - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, \ - KC_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_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_RSFT, KC_UP, \ - KC_LCTL, KC_LGUI, KC_LALT, KC_MHEN, KC_SPC,KC_SPC, KC_HENK, KC_RALT, KC_RCTL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT), - -这里有一些值得留意的地方: - -* 站在C语言源代码的角度看,这只是一个数组,但我们掺杂了大量括号使得每个键可以在视觉上与物理设备对齐。 -* 常规的键盘扫描码以KC_起始,而那些“特殊”键则不是。 -* 最左上的键可以触发自定义函数0(`F(0)`) -* "Fn"键定义为 `MO(_FL)`,当按住该键时会切换到 `_FL` 层。 - -#### 功能覆盖层 - -对于功能层,从代码角度讲与基础层没有任何区别。但在概念上讲,应该将其作为覆盖层而非替代层来定义。对大部分人来讲这个区别不重要,但当你构建越来越复杂的层结构时,其重要性会越来越凸显。 - - [_FL] = LAYOUT( - KC_GRV, 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_DEL, BL_STEP, \ - _______, _______, _______,_______,_______,_______,_______,_______,KC_PSCR,KC_SCRL, KC_PAUS, _______, _______, _______, _______, \ - _______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \ - _______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, KC_PGUP, \ - _______, _______, _______, _______, _______,_______, _______, _______, _______, MO(_FL), KC_HOME, KC_PGDN, KC_END), - -这里值得留意的有: - -* 我们使用 `_______` 定义来替代 `KC_TRNS`, 以便凸显在该层中有变化的那些键。 -* 对于这一层来讲,如果点击的是一个 `_______` 键,实际生效的将是其下的活跃层中的键。 - -# 核心细节 - -在阅读完本节后,你应该掌握了构建自己的键映射的基础能力,更多的资料请参见: - -* [键码](zh-cn/keycodes.md) -* [键映射FAQ](zh-cn/faq_keymap.md) - -我们仍在优化这份文档,如果你有更好的优化建议,请[提交一份issue](https://github.com/qmk/qmk_firmware/issues/new)! diff --git a/docs/zh-cn/mod_tap.md b/docs/zh-cn/mod_tap.md deleted file mode 100644 index 9dc59bfb79f..00000000000 --- a/docs/zh-cn/mod_tap.md +++ /dev/null @@ -1,141 +0,0 @@ -# Mod-Tap - - - -Mod-Tap键 `MT(mod, kc)` 在按住时功能为修饰键,在点击时则是常规键码。举例来讲,可以设计出一个按键,当点击时发送Escape,按下时则作为Control或Shift - -修饰键码及`OSM()`将会被缀以`MOD_`前缀,而非`KC_` - -|修饰键码 |描述 | -|----------|------------------------------------------| -|`MOD_LCTL`|左Control | -|`MOD_LSFT`|左Shift | -|`MOD_LALT`|左Alt | -|`MOD_LGUI`|左GUI (Windows/Command/Meta键) | -|`MOD_RCTL`|右Control | -|`MOD_RSFT`|右Shift | -|`MOD_RALT`|右Alt (AltGr) | -|`MOD_RGUI`|右GUI (Windows/Command/Meta键) | -|`MOD_HYPR`|Hyper (左Control, Shift, Alt 及 GUI同时按下)| -|`MOD_MEH` |Meh (左Control, Shift, 及 Alt同时按下) | - -可以通过逻辑或进行组合: - -```c -MT(MOD_LCTL | MOD_LSFT, KC_ESC) -``` - -此时按住该键将触发左Control及左Shift,点击将发送Escape。 - -为了方便配列,QMK已包含一些常见的Mod-Tap: - -|键 |别名 |描述 | -|------------|-----------------------------------------------------------------|---------------------------------------------| -|`LCTL_T(kc)`|`CTL_T(kc)` |按住时为左Control,点击时为 `kc` | -|`LSFT_T(kc)`|`SFT_T(kc)` |按住时为左Shift,点击时为 `kc` | -|`LALT_T(kc)`|`LOPT_T(kc)`, `ALT_T(kc)`, `OPT_T(kc)` |按住时为左Alt,点击时为 `kc` | -|`LGUI_T(kc)`|`LCMD_T(kc)`, `LWIN_T(kc)`, `GUI_T(kc)`, `CMD_T(kc)`, `WIN_T(kc)`|按住时为左GUI,点击时为 `kc` | -|`RCTL_T(kc)`| |按住时为右 Control,点击时为 `kc` | -|`RSFT_T(kc)`| |按住时为右 Shift,点击时为 `kc` | -|`RALT_T(kc)`|`ROPT_T(kc)`, `ALGR_T(kc)` |按住时为右 Alt,点击时为 `kc` | -|`RGUI_T(kc)`|`RCMD_T(kc)`, `RWIN_T(kc)` |按住时为右 GUI,点击时为 `kc` | -|`LSG_T(kc)` |`SGUI_T(kc)`, `SCMD_T(kc)`, `SWIN_T(kc)` |按住时为左Shift及GUI,点击时为 `kc` | -|`LAG_T(kc)` | |按住时为左Alt及GUI,点击时为 `kc` | -|`RSG_T(kc)` | |按住时为右 Shift及GUI,点击时为 `kc` | -|`RAG_T(kc)` | |按住时为右 Alt及GUI,点击时为 `kc` | -|`LCA_T(kc)` | |按住时为左Control及Alt,点击时为 `kc` | -|`LSA_T(kc)` | |按住时为左Shift及Alt,点击时为 `kc` | -|`RSA_T(kc)` |`SAGR_T(kc)` |按住时为右 Shift及右 Alt (AltGr),点击时为 `kc` | -|`RCS_T(kc)` | |按住时为右 Control及右 Shift,点击时为 `kc` | -|`LCAG_T(kc)`| |按住时为左Control,Alt及GUI,点击时为 `kc` | -|`RCAG_T(kc)`| |按住时为右 Control,Alt及GUI,点击时为 `kc` | -|`C_S_T(kc)` | |按住时为左Control及Shift,点击时为 `kc` | -|`MEH_T(kc)` | |按住时为左Control,Shift及Alt,点击时为 `kc` | -|`HYPR_T(kc)`|`ALL_T(kc)` |按住时为左Control,Shift,Alt及GUI,点击时为 `kc` - 更多[参见这里](https://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)| - -## 注意 - -目前 `MT()` 的 `kc`参数限制在[基础键码集](zh-cn/keycodes_basic.md)中,因此不能使用 `LCTL()`,`KC_TILD` 及其它大于 `0xFF` 的键码。原因是,QMK使用16位的键码,其中3位是功能标记,1位标记左右修饰键,4位存储修饰键码,仅剩8位存储键码。当一次Mod-Tap触发时,只要有一个右修饰键被激发,其它的修饰键也都被视为右修饰键,因此无法混搭形如左Control+右Shift的形式,会被视为右Control+右Shift - -若展开讲就比较复杂了。迁移到32位的键码可以很大程度解决这个问题,但同时会招致配列矩阵大小翻倍,也可能会有其它未知问题。若是想用修饰键配合按键,可以考虑使用[Tap Dance/多击键](zh-cn/feature_tap_dance.md#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) - -在使用Windows远程桌面时你可能会发现有些问题,这是因为远程桌面对键码响应过快。若要修复,可以打开远程桌面的“配置”,在“本地资源”页中的键盘属性,调整为“本地计算器”,此时功能即可恢复正常。另一个办法是加大[`TAP_CODE_DELAY`](zh-cn/config_options.md#behaviors-that-can-be-configured)。 - -## 截获Mod-Taps - -### 改变点击功能 - -若要在Mod-Tap中突破基础键码的限制,可以在 `process_record_user` 中实现。如,上档键码 `KC_DQUO` 无法与 `MT()` 共用,因为它实际上是 `LSFT(KC_QUOT)` 的别名,`KC_DQUO` 上的修饰键码会被 `MT()` 覆盖。但可以使用如下代码截获点击,手动发送 `KC_DQUO`: - -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case LCTL_T(KC_DQUO): - if (record->tap.count && record->event.pressed) { - tap_code16(KC_DQUO); // 点击时发送 KC_DQUO - return false; // 通过返回false阻止对该键的其它处理 - } - break; - } - return true; -} -``` - -### 改变按住功能 - -类似地,同样可以使用这段自定义代码改变按住功能。下面的例子会在 `LT(0, kc)` (layer-tap键无实际意义,因为layer 0默认被激活)按住时对X,C和V键附加剪切,复制和粘贴功能: - -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case LT(0,KC_X): - if (record->tap.count && record->event.pressed) { - return true; // 返回true来发送常规键码 - } else if (record->event.pressed) { - tap_code16(C(KC_X)); // 截获按住功能来发送Ctrl-X - } - return false; - case LT(0,KC_C): - if (record->tap.count && record->event.pressed) { - return true; // 返回true来发送常规键码 - } else if (record->event.pressed) { - tap_code16(C(KC_C)); // 截获按住功能来发送Ctrl-C - } - return false; - case LT(0,KC_V): - if (record->tap.count && record->event.pressed) { - return true; // 返回true来发送常规键码 - } else if (record->event.pressed) { - tap_code16(C(KC_V)); // 截获按住功能来发送Ctrl-V - } - return false; - } - return true; -} -``` - -### 同时改变点击和按住功能 - -最后一个例子通过 `LT(0,KC_NO)` 实现了点击复制,按住粘贴的功能: - -```c -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case LT(0,KC_NO): - if (record->tap.count && record->event.pressed) { - tap_code16(C(KC_C)); // 截获点击来发送Ctrl-C - } else if (record->event.pressed) { - tap_code16(C(KC_V)); // 截获按住功能来发送Ctrl-V - } - return false; - } - return true; -} -``` - -## 其它信息 - -在[点按配置](zh-cn/tap_hold.md)中描述了影响Mod-Tap行为的标记。 diff --git a/docs/zh-cn/newbs.md b/docs/zh-cn/newbs.md deleted file mode 100644 index 3be46262118..00000000000 --- a/docs/zh-cn/newbs.md +++ /dev/null @@ -1,29 +0,0 @@ -# QMK入门教程 - - - -就像计算机一样,每把键盘里也有一个处理器,它的职责是在你点击键盘时,检测到这个动作并反馈给计算机。QMK固件即是为了这个目的而设计的一种"软件",负责检测点击,反馈给电脑。当你构建出一个自定义键映射时,就是在创建一个新的键盘"软件"。 - -QMK的愿景是提供强有力的功能,让不可能的事情变得可能,简单的事情依旧简单。即便是不会编程也可以创建强大的键映射方案。 - -想知道你的键盘是否能运行QMK?如果这个键盘是你自己组建的,那么很可能是可以的。我们[已经支持很多键盘](https://qmk.fm/keyboards/),所以即便你的键盘不能运行QMK,你也很容易能买到满足要求的键盘。 - -?> **这份指南适合于我吗?**
-编程对你是个困难的话,可以看看我们的[在线GUI页面](zh-cn/newbs_building_firmware_configurator.md)。 - -## 总览 - -这份指南适用于想通过源代码编译出键盘固件的需求。对于程序员,全过程都会感觉很熟悉。教程主要分3部分: - -1. [环境配置](zh-cn/newbs_getting_started.md) -2. [构建第一个固件](zh-cn/newbs_building_firmware.md) -3. [刷写固件](zh-cn/newbs_flashing.md) - -该指南的目的是帮助那些从未编译过软件的人,很多取舍及建议都是基于这个考量。完成一个目标可能有多种方案,我们尽量都去支持,如果你搞不明白你的目标如何实现,可以[向我们寻求帮助](zh-cn/support.md)。 - -## 更多资料 - -这份指南之外,也有一些其它能帮助你学习QMK的资料。我们归纳整理在[大纲](zh-cn/syllabus.md)页面和[学习资料](zh-cn/newbs_learn_more_resources.md)页面 diff --git a/docs/zh-cn/newbs_building_firmware.md b/docs/zh-cn/newbs_building_firmware.md deleted file mode 100644 index 681c7ba8f6c..00000000000 --- a/docs/zh-cn/newbs_building_firmware.md +++ /dev/null @@ -1,68 +0,0 @@ -# 构建第一个固件 - - - -现在您已经准备好了构建环境,就可以开始构建自定义固件了。在这节指南中,我们将在3个程序中开展工作——文件管理器、文本编辑器和终端。在做出心满意足的固件前,请不要关闭它们。 -## 新建键映射 - -也许你会考虑从默认键映射复制一份来开始,如果你遵循编译环境配置指南到了最后,那么使用QMK命令行可以简单地做到: - - qmk new-keymap - -如果你的环境没有那样配置,或者你有多个键盘要做,可以指定键盘名: - - qmk new-keymap -kb - -检查命令行输出,应该类似于: - - Ψ keymap directory created in: /home/me/qmk_firmware/keyboards/clueboard/66/rev3/keymaps/ - -上面就是创建出的新 `keymap.c` 文件的路径。 - -## 使用趁手的编辑器打开 `keymap.c` - -在编辑器中打开 `keymap.c`,可以看到控制键盘所有功能的关键结构。`keymap.c` 文件头部的一些define和enum定义能让代码容易阅读一些,继续往下会找到这么一行: - - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -这行是所有层定义的起点,往下能看到有 `LAYOUT` 的行,都是一个层定义的起始,其下方为该层的组成定义。 - -!> 编辑时请非常留意不要错误增加/删除了逗号分隔符,否则很可能无法编译固件,且很难排查是哪里的逗号不对。 - -## 按照个人喜好设计层级 - -这一步的目标完全取决于你,既可以去修复一个你不爽的问题,也可以完全重写一个新的。你可以删除不需要的层,或是增加层到32个的上限,QMK功能丰富,可以在左边的导航栏中寻找“使用QMK”一节,浏览完整的功能信息,也可以看看这些比较简单的: - -* [基础键码](zh-cn/keycodes_basic.md) -* [量子键码](zh-cn/quantum_keycodes.md) -* [Grave/Escape](zh-cn/feature_grave_esc.md) -* [鼠标键](zh-cn/feature_mouse_keys.md) - -?> 你大概理解了键映射如何工作的话,留心尽量少去做改动,改动越多出了问题越难排查。 - -## 构建固件 :id=build-your-firmware - -对键映射做完修改后,该编译固件了。回到终端中使用编译命令: - - qmk compile - -如果没有完整地配置环境,或你有多个目标键盘,可以指定键盘及键映射: - - qmk compile -kb -km - -编译完成后,会输出详尽的编译产出文件信息,其末尾应该看起来像这样: - -``` -Linking: .build/planck_rev5_default.elf [OK] -Creating load file for flashing: .build/planck_rev5_default.hex [OK] -Copying planck_rev5_default.hex to qmk_firmware folder [OK] -Checking file size of planck_rev5_default.hex [OK] - * The firmware size is fine - 27312/28672 (95%, 1360 bytes free) -``` - -## 刷写固件 - -参阅[刷写固件](zh-cn/newbs_flashing.md)以了解如何将固件写入键盘主控。 diff --git a/docs/zh-cn/newbs_building_firmware_configurator.md b/docs/zh-cn/newbs_building_firmware_configurator.md deleted file mode 100644 index c4cd1143182..00000000000 --- a/docs/zh-cn/newbs_building_firmware_configurator.md +++ /dev/null @@ -1,18 +0,0 @@ -# QMK配置器 - - - -[![QMK配置器截图](https://i.imgur.com/anw9cOL.png)](https://config.qmk.fm/) - -[QMK配置器](https://config.qmk.fm)是一个可用于生成`.hex`和`.bin`格式的QMK固件文件的在线交互页面。 - -这里有[视频教程](https://www.youtube.com/watch?v=-imgglzDMdY). 很多人给我们反馈该视频包含了足够多的知识可以用来开始编写自己的键盘程序。 - -QMK配置器在Chrome及Firefox中工作良好。 - -!> **来自于第三方工具的文件数据无法保证与QMK兼容,如Keyboard Layout Editor(KLE)或kbfirmware,请不要加载或导入这些文件。QMK配置器是一个独立的工具。** - -更多信息请参见[QMK配置器: 入门](zh-cn/configurator_step_by_step.md)。 diff --git a/docs/zh-cn/newbs_flashing.md b/docs/zh-cn/newbs_flashing.md deleted file mode 100644 index 9ffb792793d..00000000000 --- a/docs/zh-cn/newbs_flashing.md +++ /dev/null @@ -1,124 +0,0 @@ -# 刷写键盘固件 - - - -在自定义的固件文件构建出来后,可以刷写到键盘中了。 - -## 将键盘调至DFU(Bootloader)模式 - -在你将自定义固件刷写到键盘前,键盘必须处于特有的刷写模式下。此时,键盘会处于不会响应点击等常规操作的状态,并且一定留意不要打断刷写工作,刷写固件过程中不可以把键盘拔下来。 - -不同的键盘进入刷写模式的方法都是不同的,如果你的键盘运行的是QMK、TMK或PS2AVRGB(Bootmapper客户端)且没有写明特别的操作说明的话,可以依次尝试以下操作: - -* 按住两边的Shift键,点击Pause -* 按住两边的Shift键,点击B -* 拔出键盘,同时按住“空格”键及B键,再插上键盘,等两秒后松开 -* 拔出键盘,按住键盘左上或左下的按键(一般来讲是Escape或左Control),在插上键盘 -* 按重置按键(Reset),一般在PCB背面 -* 在PCB上寻找导出的 `RESET` 和 `GND` 引脚,在插电的情况下短接一下 - -如果上面的方法没有用,且键盘主板上的芯片是 `STM32` 系列,情况要复杂一些。通常在[Discord](https://discord.gg/Uq7gcHh)上寻求帮助是最好的办法,并且很可能需要你提供一些键盘主板的照片 —— 所以如果你能提前准备好,我们沟通起来会快得多。 - -如果没有遇到什么问题,你会在QMK工具箱的输出信息里找到类似下面的黄色文字的信息: - -``` -*** DFU device connected: Atmel Corp. ATmega32U4 (03EB:2FF4:0000) -``` - -已进入bootloader状态的设备也可以在设备管理器、系统信息或 `lsusb` 中看到。 - -## 使用QMK工具箱刷写固件 - -使用[QMK工具箱](https://github.com/qmk/qmk_toolbox/releases)刷写固件是最简单的方案。 - -然而该工具箱仅支持Windows及macOS,如果你在使用Linux环境(或是希望用命令行刷写固件),请参阅[在命令行中刷写固件](#使用命令行刷写固件)一节。 - -### 加载固件到QMK工具箱 - -打开QMK工具箱,在Finder或文件管理器中找到固件文件。键盘固件文件名后缀通常是 `.hex` 或 `.bin`,QMK工具箱会尝试将正确的文件拷贝到qmk根目录 `qmk_firmware` 中。 - -在Windows或macOS上,使用下面的指令可以快速打开当前目录。 - - - -#### ** Windows ** - -``` -start . -``` - -#### ** macOS ** - -``` -open . -``` - - - -固件文件的文件名格式为: - -``` -_.{bin,hex} -<键盘名>_<键映射名>.{bin,hex} -``` - -例如, `planck/rev5` 的 `default` 键映射对应的文件名是: - -``` -planck_rev5_default.hex -``` - -找到固件文件后,将其拖拽至QMK工具箱的"Local file"框,或点击“Open”并定位至固件文件。 - -### 刷写到键盘 - -点击QMK工具箱的`Flash`,将看到如下输出信息: - -``` -*** DFU device connected: Atmel Corp. ATmega32U4 (03EB:2FF4:0000) -*** Attempting to flash, please don't remove device ->>> dfu-programmer.exe atmega32u4 erase --force - Erasing flash... Success - Checking memory from 0x0 to 0x6FFF... Empty. ->>> dfu-programmer.exe atmega32u4 flash "D:\Git\qmk_firmware\gh60_satan_default.hex" - Checking memory from 0x0 to 0x3F7F... Empty. - 0% 100% Programming 0x3F80 bytes... - [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success - 0% 100% Reading 0x7000 bytes... - [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success - Validating... Success - 0x3F80 bytes written into 0x7000 bytes memory (56.70%). ->>> dfu-programmer.exe atmega32u4 reset - -*** DFU device disconnected: Atmel Corp: ATmega32U4 (03EB:2FF4:0000) -``` - -## 使用命令行刷写固件 - -现在已经没有以前那样繁琐了,在编译固件后需要刷写时,打开终端输入如下刷写指令: - - qmk flash - -如果未通过命令行工具配置过键盘/键映射名,或有多个目标键盘,可以指定目标键盘和键映射: - - qmk flash -kb <键盘名> -km <键映射名> - -QMK将核查键盘配置,并尝试使用合适的bootloader进行刷写。也就是说,你不用关注应该使用什么bootloader,这些重活儿让qmk指令去承担就好。 - -但是,先决条件是键盘配置中已经设置了bootloader,如果未配置,或你的键盘板子不支持配置的刷写方式,你会看到这些错误信息: - - WARNING: This board's bootloader is not specified or is not supported by the ":flash" target at this time. - -此时,只能退回到需要指定bootloader的方法,具体参见[刷写固件](zh-cn/flashing.md)指引。 - -## 上手试试键盘吧! - -恭喜你,你的自定义固件成功刷写到键盘中了,快去试试吧! - -运气不差的话一切都会是正常工作的,如果不幸遇到了些问题,有一些参考方案可以帮助你排查问题原因。 -键盘测试就简单直接了,依次按一下各按键,检查它是不是发送了正确的输入。可以使用[QMK配置器](https://config.qmk.fm/#/test/)中的测试模式进行测试,即便你的键盘并不运行QMK。 - -还是不行吗?参阅一下FAQ或[通过Discord和我们聊聊](https://discord.gg/Uq7gcHh)吧。 diff --git a/docs/zh-cn/newbs_getting_started.md b/docs/zh-cn/newbs_getting_started.md deleted file mode 100644 index 7ca9871aa71..00000000000 --- a/docs/zh-cn/newbs_getting_started.md +++ /dev/null @@ -1,208 +0,0 @@ -# 配置环境 - - - -构建键映射前,有一些必须安装配置的构建工具,但无论你要编译多少个固件,这一步只需要做一次。 - -## 1. 必备工具 - -首先需要确保一些基本的软件配备。 - -* [文本编辑器](zh-cn/newbs_learn_more_resources.md#text-editor-resources) - * 你需要至少一个能编辑常规文本的软件。系统自带的编辑器通常不会如实保存(会做一些额外的处理,如回车),所以选择编辑器时需要留意。 -* [QMK工具箱(可选)](https://github.com/qmk/qmk_toolbox) - * 在Windows及macOS上可用的图形程序,用于编辑及调试你的键盘 - -?> 如果你没有Linux/Unix命令行使用经验,有些基本概念需要先学习一下。[这些资料](zh-cn/newbs_learn_more_resources.md#command-line-resources)是个使用QMK很好的参考。 - -## 2. 准备构建环境 :id=set-up-your-environment - -我们已经尽力让QMK易于配置了,你只要准备好Linux或Unix环境,剩余的交给QMK来安装。 - - - -### ** Windows ** - -QMK有维护一套基于MSYS2的软件包,所有命令行程序和依赖都是齐备的。通过 `QMK MSYS` 快捷命令可以快速启动开发环境。 - -#### 依赖项 - -需安装[QMK MSYS](https://msys.qmk.fm/),最新版在[这里](https://github.com/qmk/qmk_distro_msys/releases/latest)。 - -此外,如果想自行安装MSYS2环境,下面给出了具体的步骤。 - -
- 自行安装 - -?> 若决定使用 `QMK MSYS`,请跳过此节. - -#### 依赖项 - -遵循 https://www.msys2.org 上的指引,安装MSYS2、Git和Python。 - -在MSYS2安装完毕后,关闭所有的MSYS终端,启动新的MinGW 64-bit终端。 - -!> **注意:** MinGW 64-bit 终端*不同于*安装包最后打开的MSYS终端,窗口标题应当是紫色的"MINGW64"而不是"MSYS"。具体的差异可以[参考这里](https://www.msys2.org/wiki/MSYS2-introduction/#subsystems)。 - -执行如下命令: - - pacman --needed --noconfirm --disable-download-timeout -S git mingw-w64-x86_64-toolchain mingw-w64-x86_64-python3-pip - -#### 安装 - -安装QMK命令行程序: - - python3 -m pip install qmk - -
- -### ** macOS ** - -QMK维护了一套Homebrew tap和formula以用于自动安装命令行程序及依赖项。 - -#### 依赖项 - -须先安装Homebrew,可以参考 https://brew.sh - -#### 安装 - -安装QMK命令行程序: - - brew install qmk/qmk/qmk - -### ** Linux/WSL ** - -?> **WSL用户注意**: 默认情况下,QMK仓库会被clone到home目录下,如果想指定其它目录,务必留意要放在WSL文件系统中(即,非 `/mnt` 目录下),否则文件读写会[非常慢](https://github.com/microsoft/WSL/issues/4197). - -#### 依赖项 - -须安装Git及Python,通常你肯定已经有了,如果确实没有,请使用下面的方法尝试安装: - -* Debian / Ubuntu / Devuan: `sudo apt install -y git python3-pip` -* Fedora / Red Hat / CentOS: `sudo yum -y install git python3-pip` -* Arch / Manjaro: `sudo pacman --needed --noconfirm -S git python-pip libffi` -* Void: `sudo xbps-install -y git python3-pip` -* Solus: `sudo eopkg -y install git python3` -* Sabayon: `sudo equo install dev-vcs/git dev-python/pip` -* Gentoo: `sudo emerge dev-vcs/git dev-python/pip` - -#### 安装 - -安装QMK命令行程序: - - python3 -m pip install --user qmk - -#### 社区提供的包 - -有一些社区成员提供的包,可能版本会有落后或是功能不全的问题,如果你遇到了什么问题,请联系维护它的社区成员。 - -Arch系环境下可以使用官方源安装命令行程序(在写这份文档时,有些依赖项被标记为可选的,其实不是): - - sudo pacman -S qmk - -也可以尝试AUR的 `qmk-git`: - - yay -S qmk-git - -### ** FreeBSD ** - -#### 安装 - -使用FreeBSD包安装QMK命令行程序: - - pkg install -g "py*-qmk" - -请遵循安装后输出的指引操作进行配置(使用 `pkg info -Dg "py*-qmk"` 可以显示这份指引)。 - - - -## 3. 执行QMK配置 :id=set-up-qmk -*译注:由于setup过程中需要从github clone依赖项,请先确保科学上网* - - - -### ** Windows ** - -安装QMK后,执行: - - qmk setup - -通常所有的询问回复 `y` 就行了。 - -### ** macOS ** - -安装QMK后,执行: - - qmk setup - -通常所有的询问回复 `y` 就行了。 - -### ** Linux/WSL ** - -安装QMK后,执行: - - qmk setup - -通常所有的询问回复 `y` 就行了。 - -?>**Debian及Ubuntu系环境须留意**: -也许你会遇到 `bash: qmk: command not found` 错误,主要是因为Debian上的Bash 4.4版本引入的一个[bug](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=839155),`$HOME/.local/bin` 被从PATH环境变量中删除了,后续版本中这个问题已被修复。 -然而Ubuntu很挫地再次引入了这个bug[且没有修复](https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1588562)。 -不过修复也很容易,在当前账户中执行:`echo 'PATH="$HOME/.local/bin:$PATH"' >> $HOME/.bashrc && source $HOME/.bashrc` - -### ** FreeBSD ** - -安装QMK后,执行: - - qmk setup - -通常所有的询问回复 `y` 就行了。 - - - -?> QMK的home目录可以在安装时通过 `qmk setup -H ` 来指定,安装后也可以通过[命令行程序来配置](zh-cn/cli_configuration.md?id=single-key-example)`user.qmk_home`变量,可以通过 `qmk setup --help` 查看所有可用配置。 - -?> 若你熟悉GitHub,[推荐阅读这份指引](zh-cn/getting_started_github.md)通过 `qmk setup /qmk_firmware` 来clone你自己的fork。如果你看不懂这一段啥意思,忽略就是了。 - -## 4. 测试你的构建环境 - -QMK构建环境搭建完成,可以尝试构建一个键盘固件。使用以下指令格式,先试试编译默认提供的键映射: - - qmk compile -kb -km default - -例如,要构建一个Clueboard 66%,就这样执行: - - qmk compile -kb clueboard/66/rev3 -km default - -你应当能看到像这样的输出信息: - -``` -Linking: .build/clueboard_66_rev3_default.elf [OK] -Creating load file for flashing: .build/clueboard_66_rev3_default.hex [OK] -Copying clueboard_66_rev3_default.hex to qmk_firmware folder [OK] -Checking file size of clueboard_66_rev3_default.hex [OK] - * The firmware size is fine - 26356/28672 (2316 bytes free) -``` - -## 5. 配置你的构建环境 (可选的) - -通过对默认配置的简单调整,QMK用起来会更有趣一些,我们来试试! - -大部分QMK新手手头只有一把键盘,可以通过 `qmk config` 命令将它设置为默认键盘,例如你想将 `clueboard/66/rev4` 设置为默认,可以这样: - - qmk config user.keyboard=clueboard/66/rev4 - -也可以调整默认的键映射名称。社区上大家常用自己的GitHub用户名,这也是我们推荐的做法。 - - qmk config user.keymap= - -完成后,这些配置就不用管了,编译键盘固件就可以直接这样执行: - - qmk compile - -# 制作你自己的键映射 - -万事俱备啦!请继续阅读[构建第一个固件](zh-cn/newbs_building_firmware.md). diff --git a/docs/zh-cn/newbs_git_best_practices.md b/docs/zh-cn/newbs_git_best_practices.md deleted file mode 100644 index af3359dfc55..00000000000 --- a/docs/zh-cn/newbs_git_best_practices.md +++ /dev/null @@ -1,23 +0,0 @@ -# QMK所采用的Git最佳实践 - - - -*译者注:对于git相关的部分,除广为接受的名词外,会尽量保留git命令及各种术语的英文版本,部分名词及关键部分会附带中文翻译* - -## 或者讲,"怎么才能不害怕并喜欢上Git" - -本节旨在以最佳方式指导新手在为QMK做贡献时获得流畅的体验。我们将进行一次完整的QMK贡献操作流程,并在部分环节中详细讲述几种便捷的方法,之后我们会故意搞砸一些东西,并教导你如何回到正轨。 - -该章节做了如下假设: - -1. 你已有Github账号且已[fork了qmk_firmware仓库](zh-cn/getting_started_github.md)到你的账号下。 -2. 已完成了[构建环境](zh-cn/newbs_getting_started.md#set-up-your-environment)及[QMK](zh-cn/newbs_getting_started.md#set-up-qmk)配置。 - ---- - -- 第一节:[在你Fork的主干上:频繁更新,不要提交](zh-cn/newbs_git_using_your_master_branch.md) -- 第二节:[解决合并冲突](zh-cn/newbs_git_resolving_merge_conflicts.md) -- 第三节:[重新同步一个脱离同步状态的Git分支](zh-cn/newbs_git_resynchronize_a_branch.md) diff --git a/docs/zh-cn/newbs_git_resolving_merge_conflicts.md b/docs/zh-cn/newbs_git_resolving_merge_conflicts.md deleted file mode 100644 index bd9702a4880..00000000000 --- a/docs/zh-cn/newbs_git_resolving_merge_conflicts.md +++ /dev/null @@ -1,86 +0,0 @@ -# 解决合并冲突 - - - -有时在你致力于一个较长周期才能完成的分支时,其它人提交的变更会与你提交的pull request中的变更发生冲突。我们将这种多个人编辑同一个模块同一个文件时产生的场景叫做 *合并冲突* - -?> 本文中的场景基于[在你Fork的主干上:频繁更新,不要提交](zh-cn/newbs_git_using_your_master_branch.md)一文。如果你对那篇文章不熟悉,请先阅读它,再回来继续。 - -## 变基/衍合(rebase) - - -Git的*变基*操作会将提交历史中的提交节点摘除并回滚,然后统一提交到一个新节点上。在解决合并冲突时,可以通过对当前分支进行变基,来获取从分支拉取到当前时刻的所有变更。 - -从执行如下命令开始: - -``` -git fetch upstream -git rev-list --left-right --count HEAD...upstram/master -``` - -此处输入的 `git rev-list` 命令可以得到当前分支与QMK主干分支间的提交数量差。而先执行 `git fetch` 是为了确保我们有上游仓库(upstream repo)的最新状态。`git rev-list` 命令会返回两个数字: - -``` -$ git rev-list --left-right --count HEAD...upstream/master -7 35 -``` - -第一个数字为当前分支自创建后新增的提交数量。第二个数字为当前分支创建后在 `upstream/master` 上的提交数量,而这部分就是我们当前分支上缺失的提交记录。 - -在我们了解了当前分支以及上游仓库的状态后,可以发起变基操作了: - -``` -git rebase upstream/master -``` - -这样可以让Git回滚该分支的提交,然后基于QMK的主干版本重新应用这些提交。 - -*译注:以下内容在中文Git下大同小异,且仅作为示例,不进行翻译* -``` -$ git rebase upstream/master -First, rewinding head to replay your work on top of it... -Applying: Commit #1 -Using index info to reconstruct a base tree... -M conflicting_file_1.txt -Falling back to patching base and 3-way merge... -Auto-merging conflicting_file_1.txt -CONFLICT (content): Merge conflict in conflicting_file_1.txt -error: Failed to merge in the changes. -hint: Use 'git am --show-current-patch' to see the failed patch -Patch failed at 0001 Commit #1 - -Resolve all conflicts manually, mark them as resolved with -"git add/rm ", then run "git rebase --continue". -You can instead skip this commit: run "git rebase --skip". -To abort and get back to the state before "git rebase", run "git rebase --abort". -``` - -以上内容是在告诉我们有合并冲突存在,并给出了冲突所在的文件名。在编辑器中打开该文件,可以在某处发现类似如下形式的内容: - -``` -<<<<<<< HEAD -

For help with any issues, email us at support@webhost.us.

-======= -

Need help? Email support@webhost.us.

->>>>>>> Commit #1 -``` - -`<<<<<<< HEAD` 标记了合并冲突的起始行,直至 `>>>>>>> Commit #1` 标记的结束行,中间通过 `=======` 分隔开冲突双方。其中 `HEAD` 部分为QMK主干上的版本,标记了提交日志的部分为当前分支的本地提交。 - -由于Git存储的是*文件差异部分*而非整个文件,所以当Git无法在文件中找到一个变更发生前的内容时,就无法知道如何去进行文件变更,重新编辑一下可以解决问题。在更改完成后,保存文件。 - -``` -

Need help? Email support@webhost.us.

-``` - -之后,执行: - -``` -git add conflicting_file_1.txt -git rebase --continue -``` - -Git即会记录对文件冲突做出的变更,并继续处理剩余的提交,直至全部完成。 diff --git a/docs/zh-cn/newbs_git_resynchronize_a_branch.md b/docs/zh-cn/newbs_git_resynchronize_a_branch.md deleted file mode 100644 index 3f38138f697..00000000000 --- a/docs/zh-cn/newbs_git_resynchronize_a_branch.md +++ /dev/null @@ -1,76 +0,0 @@ -# 重新同步已失去同步状态的Git分支 - - - -假设你在自己的 `master` 分支之上有提交,并且想和QMK仓库进行同步,可以通过 `git pull` 拉取QMK的 `master` 分支到你的库,但同时Github也会提醒你当前分支相比 `qmk:master` 有几个领先的提交,会在你向QMK发起pr时造成麻烦。 - -?> 本文中的场景基于[在你Fork的主干上:频繁更新,不要提交](zh-cn/newbs_git_using_your_master_branch.md)一文。如果你对那篇文章不熟悉,请先阅读它,再回来继续。 - -## 备份你在自己的主干分支上的所有变更(可选) - -不会有人想把有用的成果弄丢的。如果你想将你的 `master` 分支上的变更另存一份,简便的方法是直接创建一个当前“脏” `master` 分支的副本: - -``` -git branch old_master master -``` - -现在 `master` 分支拥有了一个副本分支 `old_master`。 - -## 重新同步分支 - -现在可以重新同步 `master` 分支了,这里,我们将QMK仓库设置为Git的远程仓库。通过执行 `git remote -v` 可以确认远程仓库配置,输出信息应类似于: - -``` -QMKuser ~/qmk_firmware (master) -$ git remote -v -origin https://github.com//qmk_firmware.git (fetch) -origin https://github.com//qmk_firmware.git (push) -upstream https://github.com/qmk/qmk_firmware.git (fetch) -upstream https://github.com/qmk/qmk_firmware.git (push) -``` - -如果你只能看到一个仓库: - -``` -QMKuser ~/qmk_firmware (master) -$ git remote -v -origin https://github.com/qmk/qmk_firmware.git (fetch) -origin https://github.com/qmk/qmk_firmware.git (push) -``` - -通过如下命令添加新的远程仓库: - -``` -git remote add upstream https://github.com/qmk/qmk_firmware.git -``` - -然后,重新将 `origin` 远程仓库设置为自己的fork: - -``` -git remote set-url origin https://github.com//qmk_firmware.git -``` - -在两个远程仓库配置完毕后,需要从QMK的 upstream 仓库中获取到更新,执行: - -``` -git fetch upstream -``` - -此时,重新同步你的分支到QMK的版本: - -``` -git reset --hard upstream/master -``` - -以上操作会更新你的本地仓库,而你的Github远程仓库仍然处于未同步状态,通过推送,可以让其进入已同步状态。可以通过如下命令来指引Git强行覆盖掉那些仅在你远程仓库中存在的提交: - -``` -git push --force-with-lease -``` - -!> **不要**在其它使用者也会提交的分支上执行 `git push --force-with-lease`,否则会覆盖掉他人的提交。 - -此时你的Github fork,本地文件副本,以及QMK仓库就是一致的了。之后再进行变更([在分支上!](zh-cn/newbs_git_using_your_master_branch.md#making-changes))和提交。 diff --git a/docs/zh-cn/newbs_git_using_your_master_branch.md b/docs/zh-cn/newbs_git_using_your_master_branch.md deleted file mode 100644 index 2a83fc21396..00000000000 --- a/docs/zh-cn/newbs_git_using_your_master_branch.md +++ /dev/null @@ -1,79 +0,0 @@ -# 在你Fork的主干上:频繁更新,不要提交 - - - -我们强烈推荐所有QMK开发者,无论在哪里做什么改动,频繁更新你的 `master` 分支,但***不要***在其上提交。相对地,将你所有的改动提交到开发分支上并提交一个pull request。 - -为了减少冲突 — 多人同时编辑同一个文件 — 保持你的 `master` 分支更新到最新,并在新创建的分支上进行开发。 - -## 更新master分支 - -为了保持 `master` 更新到最新,推荐将QMK固件仓库("repo")设置为git远程仓库。打开Git命令行界面并键入: - -``` -git remote add upstream https://github.com/qmk/qmk_firmware.git -``` - -?> 名称 `upstream` 部分可以任意,这里给的是常用的;你可以将QMK远程仓库名称改成你想要的。Git的 `remote` 命令语法为 `git remote add `, `` 是远程仓库的简写名称,这个名称可以在很多Git命令中使用,包括但不限于 `fetch`,`pull` 及 `push`,以指定目标远程仓库。 - -要验证是否添加成功,可以执行 `git remote -v`,输出应该类似于: - -``` -$ git remote -v -origin https://github.com//qmk_firmware.git (fetch) -origin https://github.com//qmk_firmware.git (push) -upstream https://github.com/qmk/qmk_firmware.git (fetch) -upstream https://github.com/qmk/qmk_firmware.git (push) -``` - -在以上操作完成后,可以通过执行 `git fetch upstream` 来检查仓库是否有更新。该命令从QMK仓库拉取的分支(branches)及标签(tags) — 统称为“refs(引用)” —现在也被称作 `upstream`(上游)。此时我们可以比对自己fork版本的 `origin` 与QMK维护的分支的差异了。 - -要更新你的fork的master分支,执行以下指令,每一行结束都需要按回车: - -``` -git checkout master -git fetch upstream -git pull upstream master -git push origin master -``` - -以上操作会切换到 `master` 分支,从QMK仓库拉取refs,下载QMK `master` 分支的当前版本,并上传至你的fork中。 - -## 进行编辑 :id=making-changes - -要进行编辑,通过如下命令创建一个新分支: - -``` -git checkout -b dev_branch -git push --set-upstream origin dev_branch -``` - -以上操作会创建 `dev_branch` 新分支,检出(check out)并保存到你的fork中。`--set-upstream` 参数用于告知git使用你的fork仓库来处理 `dev_branch` 分支下的 `git push` 及 `git pull` 命令,且仅需要在第一次执行push命令时指定,之后再次执行 `git push` 或是 `git pull` 都无需加入该参数了。 - -?> 在 `git push` 时,可以使用 `-u` 替代 `--set-upstram` — `-u` 为 `--set-upsream` 参数的别名。 - -你可以任意命名该分支,但仍建议对分支起一个可以描述将在该分支下要做的工作的名称。 - -默认情况下 `git checkout -b` 会基于你当前检出的分支作为新分支的基准。可以在后面追加已存在但未检出的分支名来指定新分支的基准: - -``` -git checkout -b dev_branch master -``` - -此时你便有了一个开发用分支,可以打开编辑器并进行你期望的变更了。通常推荐提交大量的小规模提交(commit),这样在需要时会更容易地定位并回滚造成问题的提交。若要提交更改,编辑并保存要更新的文件,并将其添加到*暂存区(staged area)*,然后提交到分支中: - -``` -git add path/to/updated_file -git commit -m "My commit message." -``` - -`git add` 会将更改后的文件放到Git的*暂存区*,也称作Git的“装载区”。这里留存着即将通过 `git commit` 所提交并保存到仓库中的变更。请使用确切的描述来填写提交日志,以便于快速了解改动内容。 - -?> 如果更改了多个文件,可以通过 `git add -- path/to/file1 path/to/file2 ...` 来添加所有项目。 - -## 发布变更 - -最后一步为上传你的变更到你的fork中。通过执行 `git push`,Git将发布 `dev_branch` 分支的所有变更至你的fork中。 diff --git a/docs/zh-cn/newbs_learn_more_resources.md b/docs/zh-cn/newbs_learn_more_resources.md deleted file mode 100644 index 20fed1f3581..00000000000 --- a/docs/zh-cn/newbs_learn_more_resources.md +++ /dev/null @@ -1,35 +0,0 @@ -# 学习资源 - - - -这些资源旨在让QMK社区的新成员更了解新手教程中的基础知识。 - -*译注:以下资料超出了QMK核心概念范畴,恕不另行翻译* - -### QMK参考资料 - -* [Thomas Baart's QMK Basics Blog](https://thomasbaart.nl/category/mechanical-keyboards/firmware/qmk/qmk-basics/) – 一个站在新人视角,探讨如何使用QMK固件的个人博客。 - -### 命令行操作参考资料 :id=command-line-resources - -* [Good General Tutorial on Command Line](https://www.codecademy.com/learn/learn-the-command-line) -* [Must Know Linux Commands](https://www.guru99.com/must-know-linux-commands.html)
-* [Some Basic Unix Commands](https://www.tjhsst.edu/~dhyatt/superap/unixcmd.html) - -### 文本编辑器相关参考资料 :id=text-editor-resources - -对文本编辑器有选择困难? -* [a great introduction to the subject](https://learntocodewith.me/programming/basics/text-editors/) - -更适用于编程的文本编辑器: -* [Sublime Text](https://www.sublimetext.com/) -* [VS Code](https://code.visualstudio.com/) - -### Git参考资料 - -* [Great General Tutorial](https://www.codecademy.com/learn/learn-git) -* [Flight Rules For Git](https://github.com/k88hudson/git-flight-rules) -* [Git Game To Learn From Examples](https://learngitbranching.js.org/) diff --git a/docs/zh-cn/newbs_testing_debugging.md b/docs/zh-cn/newbs_testing_debugging.md deleted file mode 100644 index 0016d3b8169..00000000000 --- a/docs/zh-cn/newbs_testing_debugging.md +++ /dev/null @@ -1,14 +0,0 @@ -# 测试和调试 - - -## 测试 - -[已移到这里](zh-cn/faq_misc.md#testing) - -## 调试 :id=debugging - -[已移到这里](zh-cn/faq_debug.md#debugging) - diff --git a/docs/zh-cn/other_eclipse.md b/docs/zh-cn/other_eclipse.md deleted file mode 100644 index d0783c2070b..00000000000 --- a/docs/zh-cn/other_eclipse.md +++ /dev/null @@ -1,90 +0,0 @@ -# 在Eclipse中设置QMK开发环境 - - - - -[Eclipse][1]是一款广泛用于Java开发的[集成开发环境](https://en.wikipedia.org/wiki/Integrated_development_environment)(IDE),但有着强大的插件体系允许自定义开发其它语言及用途。 - -相对于使用普通的文本编辑器,使用形如Eclipse这样的IDE有着诸多好处,例如: -* 智能代码补全 -* 快速代码跳转 -* 重构工具 -* 构建自动化(无需使用命令行) -* 图形化交互的GIT -* 静态代码分析 -* 以及大量其它工具,如调试器,代码格式化,显示调用链等。 - -本文专注于阐述如何将Eclipse配置为AVR软件开发环境,并用于基于QMK代码的开发工作。 - -注意,在本文编写时,仅在Ubuntu 16.04环境中进行过验证。 - -# 需求 -## 构建环境 -在开始之前,你需要确保遵循了新手教程中的[新手指引](zh-cn/newbs_getting_started.md)一节。通常,此时你应该具备了[通过 `qmk complile` 命令](zh-cn/newbs_building_firmware.md#build-your-firmware)构建固件文件的能力。 - -## Java -Eclipse为Java程序,因此需要安装Java 8或更高版本才能运行。你可以选择JRE或JDK,后者在进行Java开发时需要用到。 - -# 安装Eclipse及插件 -Eclipse有[多种可选安装方式](https://www.eclipse.org/downloads/eclipse-packages/),取决于你的使用目标。目前没有完备的AVR开发栈安装包,所以我们需要从Eclipse CDT(C/C++ 开发工具环境)开始并安装对应的插件。 - -## 下载安装Eclipse CDT -如果系统中已安装了Eclipse CDT,可以跳过本步骤。同时,为了确保版本支持情况,我们推荐保持其更新至最新版。 - -如果你已安装了Eclipse包,通常也可以[在上面再安装CDT插件](https://eclipse.org/cdt/downloads.php)。但是可能更好的方案是重新全新安装一下,以确保环境轻量,以及防止已安装的工具对后续的工程开发工作产生干扰。 - -安装很简单:遵循[Eclipse安装5步走](https://eclipse.org/downloads/eclipse-packages/?show_instructions=TRUE),并在第三步选择 **用于C/C++开发者的Eclipse IDE(Eclipse IDE for C/C++ Developers)**。 - -此外,也可以选择直接[下载 用于C/C++开发者的Eclipse IDE](https://www.eclipse.org/downloads/eclipse-packages/)([最新版直达链接](https://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/neonr))并解压至任意目录下(会生成 `eclipse` 目录)。 - -## 首次运行 -在安装完毕后,点击运行按钮。(如果是手动解压的,请在安装目录下双击 `eclipse` 可执行程序 - -在提示你选择工作区目录时,选择一个可用于存储Eclipse元数据及工程的目录。**不要选择 `qmk_firmware` 目录**,这是你的项目目录。可以使用其父目录,或其它(最好是空)目录(默认目标目录如果未作他用亦可使用)。 - -启动后,点击右上角的工作台(Workbench)按钮切换到工作台视图(启动时的欢迎页最下方有个确认框可以在下次启动时不再展示欢迎页)。 - -## 安装必要的插件 -注意:无需在每个插件安装完成时重启Eclipse,全部安装完毕后重启一次即可。 - -### [AVR插件](https://avr-eclipse.sourceforge.net/) -这是最重要的一个插件,可以帮助Eclipse理解AVR下的C语言代码。参照执行[更新网址使用指引](https://avr-eclipse.sourceforge.net/wiki/index.php/Plugin_Download#Update_Site),并允许那些未签名内容产生的警告。 - -### [ANSI Escape in Console(命令行下的ANSI转义符)](https://marketplace.eclipse.org/content/ansi-escape-console) -该插件可以允许QMK makefile产生的具有颜色标记的构建输出信息能够正确显示。 - -1. 打开帮助 > Eclipse插件市场… -2. 搜索_ANSI Escape in Console_ -3. 点击插件的安装按钮 -4. 跟随安装指引并再次允许那些未签名的内容产生的警告。 - -在插件皆安装完毕后,依照提示重启Eclipse。 - -# 配置Eclipse QMK环境 -## 导入工程 -1. 点击文件 > 新建 > 现有的Makefile工程代码 -2. 在之后这一页中: - * 选择仓库所克隆到的目录位置作为 _现有代码位置_; - * (可选地)指定一个不同的工程名,如 _QMK_ 或 _Quantum_ ; - * 选择 _AVR-GCC Toolchain_; - * 其它选项保留不动,点击完成 - - ![Importing QMK in Eclipse](https://i.imgur.com/oHYR1yW.png) - -3. 工程即完成加载及分析,其下的文件可以方便地在左侧的 _Project Explorer_ 中查看了。 - -¹ 导入工程时若自定义名称有时会遇到些问题,如果行不通,保留默认的工程名(即目录名,通常是 `qmk_firmware`)再试一次。 - -## 构建你的键盘 - -我们将默认构建目标从 `all` 调整到我们期望构建的键盘及键映射组合上,即 `kinesis/kint36:stapelberg`。此时,形如清理、构建等工程级别的操作可以很快地执行完毕,而不至于耗费大量时间且导致Eclipse卡住。 - -1. 焦点置于工程下的任一编辑器tab中 -2. 打开`工程` > `属性`窗口, 选择 `C/C++构建` 菜单项并切至 `Behavior` 标签。 -3. 将 `Make build target`选项中的全量构建 `all` 改为 `kinesis/kint41:stapelberg`。 -4. 点击 `工程` > `清理...` 以确认配置正确。 - - [1]: https://en.wikipedia.org/wiki/Eclipse_(software) diff --git a/docs/zh-cn/other_vscode.md b/docs/zh-cn/other_vscode.md deleted file mode 100644 index 5f66eb65922..00000000000 --- a/docs/zh-cn/other_vscode.md +++ /dev/null @@ -1,120 +0,0 @@ -# 在Visual Studio Code中设置QMK开发环境 - - - -[Visual Studio Code](https://code.visualstudio.com/) (VS Code) 是一款支援非常多种不同编程语言的开源编辑器。 - -相比于使用简陋的文本编辑器,形如VS Code这样的多功能编辑器有诸多优势,比如: -* 智能的代码补全 -* 便捷的代码导航 -* 重构工具 -* 自动化构建支持(不再需要命令行操作) -* 图形化的GIT界面 -* 调试器、代码格式化、显示调用层级等多种工具 - -本章节旨在阐述如何配置VS Code以在其上进行QMK固件开发。 - -这份指引提供了在Windows及Ubuntu 18.04下所有的配置方法。 - -# 配置VS Code -一开始,你需要首先确认所有的构建工具已经安装配置完成,且QMK Firmware仓库已拷贝至本地。前往参阅[新人指引](zh-cn/newbs_getting_started.md)确保已完成初始配置。 - -## Windows - -### 依赖项 - -* [Git for Windows](https://git-scm.com/download/win) (该链接会自动提示你保存或运行安装包) - - 1. 除 `Git LFS (Large File Support)(大文件支援)` 及 `Check daily for Git for Windows updates(每天检查更新)` 外取消所有可选项。 - 2. 将默认编辑器改为 `Use Visual Studio Code as Git's default editor(将VS Code作为默认编辑器)` - 3. 选择 `Use Git from Git Bash only(仅在Git Bash中使用Git)`,这是应使用的方案。 - 4. 在 `Choosing HTTPS transport backend(选择HTTPS传输服务)` 选项上,皆可。 - 5. 选择 `Checkout as-is, commit Unix-style line endings(检出不作更改,提交时使用Unix风格换行符)`,QMK仓库使用的是Unix style提交。 - 6. 在额外选项页,保持默认选择即可。 - - 该软件是VS Code支持Git的所需项目,是有可能不去使用它,但直接用它会省很多事。 - -* [Git Credential Manager for Windows(Windows版Git凭据管理器)](https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases) (可选) - - 该软件提供了更好的git 凭据加密存储、多因素身份认证(MFA)及私有访问token生成器。 - - 这个不是严格必须的,但我们依旧推荐使用。 - - -### 安装VS Code - -1. 到[VS Code](https://code.visualstudio.com/)下载安装包 -2. 运行安装包 - -很简单的操作。然而,仍有一些配置我们需要确保是设置正确的。 - -### VS Code设置 - -首先来配置IntelliSense,虽不是严格必要的,但能让你后续使用便捷**很多**。首先,在QMK Firmware目录下创建文件 `.vscode/c_cpp_properties.json`,之后的操作可以手动完成,但我已经完成了大部分。 - -获取[这份文件](https://gist.github.com/drashna/48e2c49ce877be592a1650f91f8473e8),如果你的MSYS2没有安装在默认路径,或在用WSL/LxSS,你可能需要做一下编辑修改。 - -在保存妥当后,如果你有已打开的VS Code,你需要reload一下。 - -?> 在 `.vscode` 目录下你应该还能看到 `extensions.json` 和 `settings.json` 文件。 - -现在,我们配置MSYS2作为VSCode的集成终端。这么做有很多好处,最主要的是可以通过按住control点击错误消息直接跳转到文件,调试起来会简单得多,另外的好处是,你不用在窗口间切换。 - -1. 点击 文件 > 首选项 > > 设置 -2. 点击上方右侧的 {} 按钮,打开 `settings.json` 文件。 -3. 将文件改为: - - ```json - { - "terminal.integrated.profiles.windows": { - "QMK_MSYS": { - "path": "C:/QMK_MSYS/usr/bin/bash.exe", - "env": { - "MSYSTEM": "MINGW64", - "CHERE_INVOKING": "1" - }, - "args": ["--login"] - } - }, - - "terminal.integrated.cursorStyle": "line" - } - ``` - - 如果该文件内已经有一些配置项,将上面的内容粘贴在最外层的花括号内,并用一个逗号将新旧内容分隔开。 - -?> 如果你的MSYS2安装在不同的目录下,你需要将 `terminal.integrated.shell.windows` 更改为你系统中正确的目录。 - -4. 点击Ctrl-` (Grave) 或在 视图 > 终端 可以打开终端界面 (`workbench.action.terminal.toggleTerminal` 命令)。如果没有终端它会自动打开一个。 - - 终端应启动于工程目录中(即 `qmk_firmware` 目录),之后你可以构建键盘了。 - - -## 其它系统 - -1. 到[VS Code](https://code.visualstudio.com/)下载安装包 -2. 运行安装包 -3. 搞定 - -是的,确实是搞定了。安装的时候所有所需的路径配置都会被包含进来,在检查当前工程文件并进行IntelliSense解析上表现也会更好。 - -## 插件 - -有一些你可能感兴趣的扩展可以安装: - -* [Git Extension Pack](https://marketplace.visualstudio.com/items?itemName=donjayamanne.git-extension-pack) - 提供了一系列的Git工具可以让你在QMK Firmware中使用Git便捷一些。 -* [EditorConfig for VS Code](https://marketplace.visualstudio.com/items?itemName=EditorConfig.EditorConfig) - _[可选]_ - 可以让你的代码更符合QMK规范。 -* [GitHub Markdown Preview](https://marketplace.visualstudio.com/items?itemName=bierner.github-markdown-preview) - _[可选]_ - 使得VS Code下的markdown预览更符合Github的效果。 -* [VS Live Share Extension Pack](https://marketplace.visualstudio.com/items?itemName=MS-vsliveshare.vsliveshare-pack) - _[可选]_ - 这个扩展允许他人访问你的工作区(或反之)进行协作,在你遇到问题需要他人帮助时挺有用。 - -安装扩展后需要重启VS Code。 - -# 配置VS Code下的QMK -1. 点击 文件 > 打开目录 -2. 打开你从Github克隆的QMK固件仓库所在目录。 -3. 点击 文件 > 保存工作区为... - -此时你已完成了在VS Code下编写QMK固件的准备工作。 diff --git a/docs/zh-cn/reference_configurator_support.md b/docs/zh-cn/reference_configurator_support.md deleted file mode 100644 index bd842871a0f..00000000000 --- a/docs/zh-cn/reference_configurator_support.md +++ /dev/null @@ -1,200 +0,0 @@ -# 在QMK配置器中支持您的键盘 - - - -本章节详述了如何在[QMK配置器](https://config.qmk.fm/)中对键盘进行支持。 - - -## 配置器如何理解键盘 - -若要了解配置器如何理解键盘,须先理解配列的宏定义。这里有一份练习,假设这里有一个17键的小键盘PCB方案,就叫做 `numpad`。 - -``` -|---------------| -|NLk| / | * | - | -|---+---+---+---| -|7 |8 |9 | + | -|---+---+---| | -|4 |5 |6 | | -|---+---+---+---| -|1 |2 |3 |Ent| -|-------+---| | -|0 | . | | -|---------------| -``` - -?> 配列宏定义的更多资料,参见[理解QMK:矩阵扫描](zh-cn/understanding_qmk.md?id=matrix-scanning)及[理解QMK:矩阵到物理配列的映射](zh-cn/understanding_qmk.md?id=matrix-to-physical-layout-map)。 - -配置器的API会从 `qmk_firmware/keyboards//.h` 中读取键盘定义的 `.h` 文件。在上面的小键盘示例中,对应文件应为 `qmk_firmware/keyboards/numpad/numpad.h`: - -```c -#pragma once - -#define LAYOUT( \ - k00, k01, k02, k03, \ - k10, k11, k12, k13, \ - k20, k21, k22, \ - k30, k31, k32, k33, \ - k40, k42 \ - ) { \ - { k00, k01, k02, k03 }, \ - { k10, k11, k12, k13 }, \ - { k20, k21, k22, KC_NO }, \ - { k30, k31, k32, k33 }, \ - { k40, KC_NO, k42, KC_NO } \ -} -``` - -QMK使用 `KC_NO` 去标记开关矩阵中的空位。有时也会因方便或调试用途而使用 `XXX`,`___` 或 `____` 来替代。通产定义写在 `.h` 文件起始位置附近: - -```c -#pragma once - -#define XXX KC_NO - -#define LAYOUT( \ - k00, k01, k02, k03, \ - k10, k11, k12, k13, \ - k20, k21, k22, \ - k30, k31, k32, k33, \ - k40, k42 \ - ) { \ - { k00, k01, k02, k03 }, \ - { k10, k11, k12, k13 }, \ - { k20, k21, k22, XXX }, \ - { k30, k31, k32, k33 }, \ - { k40, XXX, k42, XXX } \ -} -``` - -!> 注意这里的使用模式与键映射中的宏完全不同,后者几乎都在用 `XXXXXXX`(7个大写X)替代 `KC_NO`,用 `_______`(7个下划线)替代 `KC_TRNS`。 - -!> 为避免混淆,推荐使用 `KC_NO`。 - -配列宏定义描述该键盘有17个按键,分布在五行四列。我们将这些开关命名为 `k<行号><列号>`,从0计起。命名成什么不太重要,但须确保负责从键映射中接收键码的上半段,与描述矩阵中按键位置的下半段定义匹配一致。 - -为了能够重现键盘的物理组成样式,须构建并提供一份用于描述按键物理位置和尺寸与开关矩阵绑定关系的JSON文件,以告知配置器程序这些信息。 - -## 构建JSON文件 - -构建该JSON描述文件最简便的办法是使用[Keyboard Layout Editor](https://www.keyboard-layout-editor.com/) ("KLE"), 从中获取的原始数据(Raw Data)可以经QMK工具转换为配置器可用的JSON格式数据。由于KLE默认打开显示的是一个小键盘配列,请移除新手引导部分,从剩余部分开始使用。 - -在配列编辑完毕后,从KLE的原始数据(Raw Data tab)页中拷贝类似如下的内容: - -``` -["Num Lock","/","*","-"], -["7\nHome","8\n↑","9\nPgUp",{h:2},"+"], -["4\n←","5","6\n→"], -["1\nEnd","2\n↓","3\nPgDn",{h:2},"Enter"], -[{w:2},"0\nIns",".\nDel"] -``` - -要将这份数据转换为我们可用的JSON格式,请跳转至[QMK KLE-JSON转换工具](https://qmk.fm/converter/)页面并粘贴到输入框,点击转换按钮。稍后输出框中即可看到所需的JSON数据。将输出数据拷贝到文本文档中,并命名为 `info.json`,保存到 `numpad.h` 所在目录。 - -可以通过 `keyboard_name` 元素来指定键盘名称。这里为了演示,会将每个按键独立分行,以更方便于阅读,这不影响配置器的功能。 - -```json -{ - "keyboard_name": "Numpad", - "url": "", - "maintainer": "qmk", - "tags": { - "form_factor": "numpad" - }, - "layouts": { - "LAYOUT": { - "layout": [ - {"label":"Num Lock", "x":0, "y":0}, - {"label":"/", "x":1, "y":0}, - {"label":"*", "x":2, "y":0}, - {"label":"-", "x":3, "y":0}, - {"label":"7", "x":0, "y":1}, - {"label":"8", "x":1, "y":1}, - {"label":"9", "x":2, "y":1}, - {"label":"+", "x":3, "y":1, "h":2}, - {"label":"4", "x":0, "y":2}, - {"label":"5", "x":1, "y":2}, - {"label":"6", "x":2, "y":2}, - {"label":"1", "x":0, "y":3}, - {"label":"2", "x":1, "y":3}, - {"label":"3", "x":2, "y":3}, - {"label":"Enter", "x":3, "y":3, "h":2}, - {"label":"0", "x":0, "y":4, "w":2}, - {"label":".", "x":2, "y":4} - ] - } - } -} -``` - -`layouts` 对象描述了键盘的物理配列信息,其下的 `LAYOUT` 对象命名须与 `numpad.h` 中的一致,而 `LAYOUT` 下的 `layout` 对象,其下每个JSON对象描述了各物理按键,格式如下: - -``` - 按键名,不会在配置器中展现。 - | - | 按键的X坐标,从键盘左侧开始数。 - | | - | | - | | 按键的Y坐标,从键盘上侧(后视角)开始数。 - | | | - ↓ ↓ ↓ -{"label":"Num Lock", "x":0, "y":0}, -``` - -部分对象包含 `"w"` 和 `"h"` 字段,用以描述按键的宽高值。 - -?> 关于 `info.json` 文件的详细信息,参见[`info.json` 文件格式](zh-cn/reference_info_json.md)。 - - -## 配置器如何配置按键 - -配置器API基于配列宏定义及JSON描述文件创建出键盘的可视化展现,并将每个可视化元素依序绑定到指定的按键: - -配列宏定义中的键 | 所使用的JSON对象 -:---: | :---- -k00 | {"label":"Num Lock", "x":0, "y":0} -k01 | {"label":"/", "x":1, "y":0} -k02 | {"label":"*", "x":2, "y":0} -k03 | {"label":"-", "x":3, "y":0} -k10 | {"label":"7", "x":0, "y":1} -k11 | {"label":"8", "x":1, "y":1} -k12 | {"label":"9", "x":2, "y":1} -k13 | {"label":"+", "x":3, "y":1, "h":2} -k20 | {"label":"4", "x":0, "y":2} -k21 | {"label":"5", "x":1, "y":2} -k22 | {"label":"6", "x":2, "y":2} -k30 | {"label":"1", "x":0, "y":3} -k31 | {"label":"2", "x":1, "y":3} -k32 | {"label":"3", "x":2, "y":3} -k33 | {"label":"Enter", "x":3, "y":3, "h":2} -k40 | {"label":"0", "x":0, "y":4, "w":2} -k42 | {"label":".", "x":2, "y":4} - -当用户在配置器中选中左上角的按键,并赋予数字区锁定键(NumLock)时,配置器会将 `KC_NUM` 作为第一个按键进行键映射文件的构建工作,其它按键逻辑类似。其中 `label` 键值未被用到,其用于用户在调试 `info.json` 文件时,可以参考辨认出各按键。 - - -## 问题及副作用 - -目前配置器还不支持按键偏转及类似ISO回车键这种非矩形按键。另外,对于纵向上偏离其行的按键 — 特别是像[TKC1800](https://github.com/qmk/qmk_firmware/tree/4ac48a61a66206beaf2fdd5f2939d8bbedd0004c/keyboards/tkc1800/)这种1800配列的键盘中的方向键 — 如果 `info.json` 文件的贡献者没有做出修正,KLE转JSON数据工具将会不知如何处理。 - -### 解决方案 - -#### 非矩阵形状的按键 - -针对ISO回车键的情况,QMK会将其定制化显示成一个矩形键,宽1.25u高2u,按键矩阵的右边与字母区的右边对齐。 - -![](https://i.imgur.com/JKngtTw.png) -*一款60% ISO配列的键盘, 在QMK配置器中的渲染样式。* - -#### 纵向偏移的按键 - -对于纵向偏移的按键,将其视作未偏移的样子放入KLE,最后在转换后的JSON文件中,按需编辑其Y偏移值。 - -![](https://i.imgur.com/fmDvDzR.png) -*一款1800配列键盘在KLE中的渲染样式,方向键未进行纵向偏移移动。* - -![](https://i.imgur.com/8beYMBR.png) -*这份Unix差异文件,展示了我们需要在JSON文件中进行的纵向偏移改动。* diff --git a/docs/zh-cn/reference_glossary.md b/docs/zh-cn/reference_glossary.md deleted file mode 100644 index e1dfccddd21..00000000000 --- a/docs/zh-cn/reference_glossary.md +++ /dev/null @@ -1,198 +0,0 @@ -# QMK术语表 - - - -## ARM -多家公司生产的32位单片机系列,例如Atmel, Cypress, Kinetis, NXP, ST, 和 TI等公司。 - -## AVR -[Atmel](https://www.microchip.com/)公司的单片机系列。 AVR是TMK的初始支持平台。 - -## AZERTY -Français (法语)标准键盘布局。用键盘的前六个字母命名。 - -## Backlight(背光) -键盘上照明的通称。背光通常是一组LED灯,穿过键帽或者轴体发光,但也不总是这样。 - -## Bluetooth(蓝牙) -一种短距离点对点无线传输协议。许多无线键盘使用此协议。 - -## Bootloader(引导加载程序) -一种写到你单片机保护区的特殊程序,该程序可以使单片机升级自己的固件,通常是通过USB来升级。 - -## Bootmagic(热改键) -允许各种键盘行为动态变化的功能,如交换或禁用常用键。 - -## C -一种适用于系统代码的低级编程语言。大多数qmk代码是用C编写的。 - -## Colemak -一种流行的键盘布局。 - -## Compile(编译) -把人可读的代码转换成你的单片机可以运行的机器代码的过程。 - -## Dvorak -一个由August Dvorak博士在20世纪30年代创建的布局。Dvorak简化键盘(Dvorak Simplified Keyboard)的缩写。 - -## Dynamic Macro(动态宏) -一种记录在键盘上的宏,当键盘拔出或计算机重新启动时,宏将丢失。 - -* [动态宏文档](zh-cn/feature_dynamic_macros.md) - -## Eclipse -是一种受C语言开发者追捧的集成开发环境(IDE)。 - -* [Eclipse安装说明](zh-cn/other_eclipse.md) - -## Firmware(固件) -用来控制单片机的软件。 - -## git -命令行版本控制软件 - -## GitHub -负责大多数QMK项目的网站。它是Git、问题跟踪和其他帮助我们运行qmk的功能的集成平台。 - -## ISP(在线系统编程) -在线系统编程(In-system programming), 使用外部硬件和JTAG管脚对AVR芯片进行编程的一种方法。 - -## hid_listen -从键盘接收调试消息的接口。 您可以使用[QMK Flasher](https://github.com/qmk/qmk_flasher)或[PJRC's hid_listen](https://www.pjrc.com/teensy/hid_listen.html)查看这些消息 - -## Keycode(键码) -表示特定键的2字节数据。`0x00`-`0xFF`用于[基本键码](zh-cn/keycodes_basic.md)而`0x100`-`0xFFFF`用于[量子键码](zh-cn/quantum_keycodes.md). - -## Key Down -一个键按下尚未抬起时触发的事件。 - -## Key Up -一个键抬起时触发的事件。 - -## Keymap(键映射) -映射到物理键盘布局的一组键码,在按键和按键释放时进行处理。有时翻译为布局,意为软件上表示的布局,即映射。 - -## Layer(层) -为了让一个键实现多个功能的抽象结构。可用层数有上限。 - -## Leader Key(前导键、设置菜单键) -本功能允许您点击前导键,然后按顺序按1-3个键子来激活按键或其他量子功能。 - -* [前导键文档](zh-cn/feature_leader_key.md) - -## LED -发光二极管,键盘上最常用的指示灯装置。 - -## Make -用于编译所有源文件的软件包。可以使用`make`命令和其他参数来编译你的固件。 - -## Matrix(矩阵) -一种由列和行组成的接线模式,使单片机能够用较少的引脚检测按键。矩阵通常包含二极管,以达到全键无冲。 - -## Macro(宏) -本功能可以在敲击单个键后发送多个按键事件(hid报告)。 - -* [宏文档](zh-cn/feature_macros.md) - -## MCU(单片机、微控制单元) -微控制单元,键盘的处理器。 - -## Modifier(修饰键、修改键、功能键) -按住该键将会改变其他键的功能,修饰键包括 Ctrl, Alt, 和 Shift。 - -## Mousekeys(鼠标键) -本功能在您敲击键盘时会控制鼠标光标。 - -* [鼠标键文档](zh-cn/feature_mouse_keys.md) - -## N-Key Rollover (NKRO、全键无冲) -一种术语,适用于能够同时报告任意数量按键的键盘。 - -## Oneshot Modifier(粘滞键) -一种能让你的功能键一直保持按下,直到你按下其他键的功能。它叫做粘滞键或叫做粘连键,该功能由软件实现而非机械结构。 - -## ProMicro -一种低成本AVR开发板。这种板子很容易在购物网站找到(价格不到20RMB),但是据说刷写pro micro有点令人抓狂。 - -## Pull Request(拉请求、PR) -向QMK请求提交代码。我们鼓励所有用户提交你们自己的键盘的代码。 - -## QWERTY -标准英文键盘,通常也用于其他语言,例如中文。是用键盘前6个字母命名的。 - -## QWERTZ -标准Deutsche(德语)键盘布局。使用前6个字母明名。 - -## Rollover(允许翻转、无冲形式) -该术语表示在一个键已按下时按下另一个键。形式包括2KRO(双键无冲),6KRO(6键无冲),和NKRO(全键无冲),无冲表示可同时按下而不产生冲突的键的数量。 - -## Scancode(扫描码) -HID报告中的一个1字节的数字,表示一个键子。这些数字在下列文档中[HID Usage Tables](https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf)该文档发布于[USB-IF](https://www.usb.org/)。 - -## Space Cadet键盘的shift键 -一种特殊的shift设置,能让你通过敲击左或右shift一次或多次键入不同的括号。 - -* [Space Cadet键盘文档](zh-cn/feature_space_cadet.md) - -## Tap(敲击、单击) -按下并抬起一个键。在某些情况下您需要区分键按下和键抬起,但是单击把两个事件都包括了。 - -## Tap Dance(多击键) -本功能允许向同一个键子分配多个键码,并根据按键次数区分。 - -* [多击键文档](zh-cn/feature_tap_dance.md) - -## Teensy -一种低成本AVR开发板,通常用于手工连线键盘。这个teensy是有点小贵但是halfkay bootloader会让它刷写十分简单,所以也很常用。 - -## Underlight(背光) -用于照亮电路板底面的LED的总称。这些LED通常从印刷电路板的底部向键盘所在的表面发光。 - -## Unicode -在广阔的计算机世界中,Unicode是一组编码方案,用于表示任何语言中的字符。 与qmk相关的是,它意味着使用各种操作系统方案来发送Unicode码点,而不是扫描码。 - -* [Unicode文档](zh-cn/feature_unicode.md) - -## Unit Testing(单元测试) -针对qmk的自动测试框架。单元测试帮助我们确信我们的更改不会破坏任何东西。 - -* [单元测试文档](zh-cn/unit_testing.md) - -## USB -通用串行总线,键盘最常见的有线接口。 - -## USB 主机 (简称主机) -USB主机就是你的电脑,或者你的键盘所插的任何设备。 - -# 并没有找到你想找到的术语? - -[新建一个issue](https://github.com/qmk/qmk_firmware/issues) ,想好你的问题,或许你所问的术语就会添加到这里。创建一个PR帮我们添加需要添加的术语当然坠吼了:) - -## 中文翻译术语特别说明(terms of Chinese translation):id=terms-of-zh-cn-translate -!>如果你对QMK文档翻译中的细节不关心,请跳过该节 - -由于语言及文化差异,QMK英文文档中的部分内容,很难在**保持原句结构**的情况下,完美地翻译为中文,而保持翻译前后的语句结构一致对于开源代码的文档翻译来讲十分重要,这样才能确保不同的文档贡献者不会*夹带私货*,防止不同的翻译风格、不同的翻译水准、不同的理解与润色最终产生糟糕的混合。 -因此,这里会对一些词组的的翻译进行规范化,并希望阅读者及后续文档翻译维护者,维持这种统一的范式。 - -### keyboard(键盘)及keymap(键映射) -QMK文档中使用最多的两个术语是keyboard及keymap -* 键盘:在中文语境下,我们提及键盘,基本是在指物理键盘,而在QMK文档中到处可见的“键盘”一词,多对应的是代码中 `keyboards\` 目录下的键盘定义,其更接近于我们讲的“配列”的概念,主要描述了键盘的大体结构,物理键数量及排列。 -* 键映射:keymap的作用是定义物理键盘到实际输出键值(keycode)的映射关系,也是QMK最重要、涉及最多的概念。QMK很多功能就是为了能够在不改变键盘物理排列/电路组成/芯片程序的情况下,动态地改变物理按键输出的键值。如,通过层切换,将原先的wasd键,切换到可以上下左右的模式,或是一键切换CapsLock和Control,实现这些功能的核心工作就是一套动态的keymap,即键映射逻辑。这里不使用“布局”一词作为keymap的翻译,是因为该词过于宽泛。键映射即便是不好听,至少解释了意思且语境中不容易误解。 - -### mod-tap -倾向于不翻译,直接使用原词。因为找不到合适的译法 - -### dead key -直译为死键,西语体系下使用的特殊符号,中文中无对应概念。 - -### flashing(firmware) -使用“刷写”而非容易迷惑的“刷新” - -### option/configuration/setting -根据上下文灵活考虑。对于组件化配置的概念,如一个功能支持与否,使用“配置”一词;对于客观上一定存在的某项设置值,使用“设置”一词。 - -### commit/push/pull等Git术语 -倾向于不翻译。这些词语的对应中文词语过于宽泛或词性不明,非常容易混淆上下文。 diff --git a/docs/zh-cn/support.md b/docs/zh-cn/support.md deleted file mode 100644 index e636d29c972..00000000000 --- a/docs/zh-cn/support.md +++ /dev/null @@ -1,22 +0,0 @@ -# 寻求帮助 - - - -你可以从很多渠道获取QMK帮助。 - -在你前往社区进行沟通前,请先阅览我们的社区[行为守则](https://qmk.fm/coc/) - -## 实时沟通 - -在你需要帮助时,最便捷的办法是通过我们的[Discord服务器](https://discord.gg/Uq7gcHh)进行沟通,通常会有人在线,也有很多乐于助人的人。 - -## OLKB Subreddit - -QMK的官方论坛是[reddit.com](https://reddit.com)上的[/r/olkb](https://reddit.com/r/olkb). - -## GitHub Issues - -你可以在[Github上发Issue](https://github.com/qmk/qmk_firmware/issues),对于需要深入讨论或需要调试的问题,会方便得多。 diff --git a/docs/zh-cn/syllabus.md b/docs/zh-cn/syllabus.md deleted file mode 100644 index d0b861530ae..00000000000 --- a/docs/zh-cn/syllabus.md +++ /dev/null @@ -1,77 +0,0 @@ -# QMK大纲 - - - -这一页旨在帮你建立关于QMK的相关基础知识,并提供能引导你成为QMK大师所需的所有概念。 - -# 基本概念 - -如果你还没有看其它部分,先阅读这一节吧。在阅读了[介绍](zh-cn/newbs.md)之后,你可以制作、编译、刷写一个简单的键映射了,以下文档可以助你充实各系列的知识。 - -* **了解如何使用QMK** - * [介绍](zh-cn/newbs.md) - * [CLI](zh-cn/cli.md) - * [GIT](zh-cn/newbs_git_best_practices.md) -* **了解键映射** - * [层](zh-cn/feature_layers.md) - * [键码](zh-cn/keycodes.md) - * 含所有可用键码,一些会涉及进阶或高级的话题。 -* **配置IDE** - 可选的 - * [Eclipse](zh-cn/other_eclipse.md) - * [VS Code](zh-cn/other_vscode.md) - -# 进阶话题 - -包含窥探QMK主要功能内部原理的话题。你可以不用阅读这些,然而,跳过这些话题的话,去看高级话题的时候会让你很迷惑。 - -* **各功能的配置** - - * [音频](zh-cn/feature_audio.md) - * 灯光 - * [背光](zh-cn/feature_backlight.md) - * [LED矩阵](zh-cn/feature_led_matrix.md) - * [RGB灯光](zh-cn/feature_rgblight.md) - * [RGB矩阵](zh-cn/feature_rgb_matrix.md) - * [点按配置](zh-cn/tap_hold.md) - * [充分利用AVR的存储空间](zh-cn/squeezing_avr.md) -* **深入键映射** - * [键映射](zh-cn/keymap.md) - * [键码与自定义函数](zh-cn/custom_quantum_functions.md) - * 宏 - * [动态宏](zh-cn/feature_dynamic_macros.md) - * [宏](zh-cn/feature_macros.md) - * [Tap Dance](zh-cn/feature_tap_dance.md) - * [组合键](zh-cn/feature_combo.md) - * [用户空间](zh-cn/feature_userspace.md) - * [按键重定义](zh-cn/feature_key_overrides.md) - -# 高级话题 - -这些话题需要较多基础知识,使用这些高级功能前,你应该对如何通过 `config.h` 和 `rules.mk` 来配置键盘选项非常熟悉。 - -* **维护QMK键盘** - * [飞线指南](zh-cn/hand_wire.md) - * [键盘开发指引](zh-cn/hardware_keyboard_guidelines.md) - * [info.json参考资料](zh-cn/reference_info_json.md) - * [防抖API](zh-cn/feature_debounce_type.md) -* **高级功能** - * [Unicode](zh-cn/feature_unicode.md) - * [API](zh-cn/api_overview.md) - * [Bootmagic Lite](zh-cn/feature_bootmagic.md) -* **硬件相关** - * [键盘工作原理](zh-cn/how_keyboards_work.md) - * [键盘矩阵原理](zh-cn/how_a_matrix_works.md) - * [分体键盘](zh-cn/feature_split_keyboard.md) - * [速记](zh-cn/feature_stenography.md) - * [光标设备](zh-cn/feature_pointing_device.md) -* **开发核心知识** - * [C编码规范](zh-cn/coding_conventions_c.md) - * [兼容的微处理器](zh-cn/compatible_microcontrollers.md) - * [自定义矩阵](zh-cn/custom_matrix.md) - * [理解QMK](zh-cn/understanding_qmk.md) -* **CLI开发** - * [编码规范](zh-cn/coding_conventions_python.md) - * [CLI开发总览](zh-cn/cli_development.md) diff --git a/docs/zh-cn/translating.md b/docs/zh-cn/translating.md deleted file mode 100644 index fa80ffd7f85..00000000000 --- a/docs/zh-cn/translating.md +++ /dev/null @@ -1,60 +0,0 @@ -# 翻译QMK文档 - - - -根目录下(`docs/`)的所有文件应当是英语的 - 其它语言应使用 ISO 639-1 中定义的语言编码建立子目录,后跟随一个 `-` 以及必要的国家编码。[常见的语言编码可见这里](https://www.andiamo.co.uk/resources/iso-language-codes/)。如果此目录不存在,可以新建。每个翻译过的文件的文件名,都应保持与英语版本的一致,以确保超链接的退化兼容性。 - -文件夹下的 `_summary.md` 文件中,有链接向其它文件的地址,在翻译过的名称后,跟随的链接前应添加该语言的目录名: - -```markdown - * [QMK简介](zh-cn/getting_started_introduction.md) -``` - -所有导向其它文档页面的链接也必须有语言目录名前缀,若还指向了页面指定位置(即特定的标题),必须使用标题的英文ID,如: - -```markdown -[建立你的环境](zh-cn/newbs-getting-started.md#set-up-your-environment) - -## 建立你的环境 :id=set-up-your-environment -``` - -在翻译后,以下文件也需要进行修改: - -* [`docs/_langs.md`](https://github.com/qmk/qmk_firmware/blob/master/docs/_langs.md) - 中的每一行应包含该语言国家国旗的[GitHub emoji编码](https://github.com/ikatyang/emoji-cheat-sheet/blob/master/README.md#country-flag)标志: - - ```markdown - - [:cn: 中文](/zh-cn/) - ``` - -* [`docs/index.html`](https://github.com/qmk/qmk_firmware/blob/master/docs/index.html) - `placeholder` 及 `noData` 对象应有一个指向对应语言的入口项: - - ```js - '/zh-cn/': '没有结果!', - ``` - - 用于 "QMK固件" 边栏标题链接的 `nameLink` 同样需要添加对应配置: - - ```js - '/zh-cn/': '/#/zh-cn/', - ``` - - 最后确保在 `fallbackLanguages` 列表中添加该语言项,这样未翻译的文档链接将回退到英文版,而不是出现404页面: - - ```js - fallbackLanguages: [ - // ... - 'zh-cn', - // ... - ], - ``` - -## 预览你的翻译成果 - -请阅读[文档预览](zh-cn/contributing.md#previewing-the-documentation)来设置文档的本地预览 - 在页面右上角的 "Translations" 菜单中应当可以看到你翻译的语言的入口。 - -当你觉得一切就绪了,请发起pull request给我们吧! diff --git a/docs/zh-cn/zh_cn_doc_status.sh b/docs/zh-cn/zh_cn_doc_status.sh deleted file mode 100644 index 84693e54618..00000000000 --- a/docs/zh-cn/zh_cn_doc_status.sh +++ /dev/null @@ -1,35 +0,0 @@ -#! /bin/sh -# -# Script to display Simplified Chinese translation status of documents -# Copied from the japanese one -# -if [ ! -d docs/zh-cn ]; then - echo "'docs/zh-cn' not found." - echo "do:" - echo " cd \$(QMK_TOP)" - echo " ./docs/zh-cn/zh-cn_doc_status.sh" - exit 1 -fi - -en_docs=`cd docs;ls -1 [a-z]*.md` -zh_cn_docs=`cd docs/zh-cn;ls -1 [a-z]*.md` -en_count=`echo $en_docs | wc -w` -zh_cn_count=`echo $zh_cn_docs | wc -w` -echo "English documents $en_count files." -echo "Simplified Chinese documents $zh_cn_count files." - -echo "Files that have not been translated yet:" -for docfile in $en_docs -do - if [ ! -f docs/zh-cn/$docfile ]; then - wc docs/$docfile - fi -done | sort -echo "Files that have not been updated yet:" -grep --no-filename "^[ ]*git diff" docs/zh-cn/*.md | while read cmd -do - cline=`echo $cmd | sh | wc -l` - if [ $cline -gt 0 ]; then - echo "$cline $cmd" - fi -done | sort diff --git a/lib/python/qmk/cli/docs.py b/lib/python/qmk/cli/docs.py index c24b914bc13..d28dddf194e 100644 --- a/lib/python/qmk/cli/docs.py +++ b/lib/python/qmk/cli/docs.py @@ -1,44 +1,27 @@ """Serve QMK documentation locally """ -import http.server -import os import shutil -import webbrowser +from qmk.docs import prepare_docs_build_area, run_docs_command from milc import cli -@cli.argument('-p', '--port', default=8936, type=int, help='Port number to use.') -@cli.argument('-b', '--browser', action='store_true', help='Open the docs in the default browser.') @cli.subcommand('Run a local webserver for QMK documentation.', hidden=False if cli.config.user.developer else True) def docs(cli): """Spin up a local HTTP server for the QMK docs. """ - os.chdir('docs') - # If docsify-cli is installed, run that instead so we get live reload - if shutil.which('docsify'): - command = ['docsify', 'serve', '--port', f'{cli.config.docs.port}', '--open' if cli.config.docs.browser else ''] + if not shutil.which('doxygen'): + cli.log.error('doxygen is not installed. Please install it and try again.') + return - cli.log.info(f"Running {{fg_cyan}}{str.join(' ', command)}{{fg_reset}}") - cli.log.info("Press Control+C to exit.") + if not shutil.which('yarn'): + cli.log.error('yarn is not installed. Please install it and try again.') + return - try: - cli.run(command, capture_output=False) - except KeyboardInterrupt: - cli.log.info("Stopping HTTP server...") - else: - # Fall back to Python HTTPServer - with http.server.HTTPServer(('', cli.config.docs.port), http.server.SimpleHTTPRequestHandler) as httpd: - cli.log.info(f"Serving QMK docs at http://localhost:{cli.config.docs.port}/") - cli.log.info("Press Control+C to exit.") + if not prepare_docs_build_area(is_production=False): + return False - if cli.config.docs.browser: - webbrowser.open(f'http://localhost:{cli.config.docs.port}') - - try: - httpd.serve_forever() - except KeyboardInterrupt: - cli.log.info("Stopping HTTP server...") - finally: - httpd.shutdown() + if not cli.config.general.verbose: + cli.log.info('Serving docs at http://localhost:5173/ (Ctrl+C to stop)') + run_docs_command('run', 'docs:dev') diff --git a/lib/python/qmk/cli/generate/docs.py b/lib/python/qmk/cli/generate/docs.py index eb3099e138b..5821d43b869 100644 --- a/lib/python/qmk/cli/generate/docs.py +++ b/lib/python/qmk/cli/generate/docs.py @@ -1,18 +1,12 @@ """Build QMK documentation locally """ import shutil -from pathlib import Path -from subprocess import DEVNULL +from qmk.docs import prepare_docs_build_area, run_docs_command, BUILD_DOCS_PATH from milc import cli -DOCS_PATH = Path('docs/') -BUILD_PATH = Path('.build/') -BUILD_DOCS_PATH = BUILD_PATH / 'docs' -DOXYGEN_PATH = BUILD_PATH / 'doxygen' -MOXYGEN_PATH = BUILD_DOCS_PATH / 'internals' - +@cli.argument('-s', '--serve', arg_only=True, action='store_true', help="Serves the generated docs once built.") @cli.subcommand('Build QMK documentation.', hidden=False if cli.config.user.developer else True) def generate_docs(cli): """Invoke the docs generation process @@ -21,24 +15,22 @@ def generate_docs(cli): * [ ] Add a real build step... something static docs """ - if BUILD_DOCS_PATH.exists(): - shutil.rmtree(BUILD_DOCS_PATH) - if DOXYGEN_PATH.exists(): - shutil.rmtree(DOXYGEN_PATH) + if not shutil.which('doxygen'): + cli.log.error('doxygen is not installed. Please install it and try again.') + return - shutil.copytree(DOCS_PATH, BUILD_DOCS_PATH) + if not shutil.which('yarn'): + cli.log.error('yarn is not installed. Please install it and try again.') + return - # When not verbose we want to hide all output - args = { - 'capture_output': False if cli.config.general.verbose else True, - 'check': True, - 'stdin': DEVNULL, - } - - cli.log.info('Generating docs...') - - # Generate internal docs - cli.run(['doxygen', 'Doxyfile'], **args) - cli.run(['moxygen', '-q', '-g', '-o', MOXYGEN_PATH / '%s.md', DOXYGEN_PATH / 'xml'], **args) + if not prepare_docs_build_area(is_production=True): + return False + cli.log.info('Building vitepress docs') + run_docs_command('run', 'docs:build') cli.log.info('Successfully generated docs to %s.', BUILD_DOCS_PATH) + + if cli.args.serve: + if not cli.config.general.verbose: + cli.log.info('Serving docs at http://localhost:4173/ (Ctrl+C to stop)') + run_docs_command('run', 'docs:preview') diff --git a/lib/python/qmk/cli/new/keyboard.py b/lib/python/qmk/cli/new/keyboard.py index 37bf2923d63..56bd05e1e3e 100644 --- a/lib/python/qmk/cli/new/keyboard.py +++ b/lib/python/qmk/cli/new/keyboard.py @@ -133,7 +133,7 @@ def _question(*args, **kwargs): def prompt_keyboard(): prompt = """{fg_yellow}Name Your Keyboard Project{style_reset_all} For more infomation, see: -https://docs.qmk.fm/#/hardware_keyboard_guidelines?id=naming-your-keyboardproject +https://docs.qmk.fm/hardware_keyboard_guidelines#naming-your-keyboard-project Keyboard Name? """ diff --git a/lib/python/qmk/docs.py b/lib/python/qmk/docs.py new file mode 100644 index 00000000000..56694cf6aeb --- /dev/null +++ b/lib/python/qmk/docs.py @@ -0,0 +1,61 @@ +"""Handlers for the QMK documentation generator (docusaurus). +""" +import shutil +from pathlib import Path +from subprocess import DEVNULL +from os import chdir, environ, makedirs, pathsep +from milc import cli + +from qmk.constants import QMK_FIRMWARE + +DOCS_PATH = QMK_FIRMWARE / 'docs' +BUILDDEFS_PATH = QMK_FIRMWARE / 'builddefs' / 'docsgen' +BUILD_PATH = QMK_FIRMWARE / '.build' +CACHE_PATH = BUILD_PATH / 'cache' +NODE_MODULES_PATH = BUILD_PATH / 'node_modules' +BUILD_DOCS_PATH = BUILD_PATH / 'docs' +DOXYGEN_PATH = BUILD_DOCS_PATH / 'static' / 'doxygen' + + +def run_docs_command(verb, cmd=None): + environ['PATH'] += pathsep + str(NODE_MODULES_PATH / '.bin') + + args = {'capture_output': False if cli.config.general.verbose else True, 'check': True, 'stdin': DEVNULL} + docs_env = environ.copy() + if cli.config.general.verbose: + docs_env['DEBUG'] = 'vitepress:*,vite:*' + args['env'] = docs_env + + arg_list = ['yarn', verb] + if cmd: + arg_list.append(cmd) + + chdir(BUILDDEFS_PATH) + cli.run(arg_list, **args) + + +def prepare_docs_build_area(is_production): + if is_production: + # Set up a symlink for docs to be inside builddefs -- vitepress can't handle source files in parent directories + try: + docs_link = Path(BUILDDEFS_PATH / 'docs') + if not docs_link.exists(): + docs_link.symlink_to(DOCS_PATH) + except NotImplementedError: + cli.log.error('Symlinks are not supported on this platform.') + return False + + if BUILD_DOCS_PATH.exists(): + shutil.rmtree(BUILD_DOCS_PATH) + + # When not verbose we want to hide all output + args = {'capture_output': False if cli.config.general.verbose else True, 'check': True, 'stdin': DEVNULL} + + makedirs(DOXYGEN_PATH) + cli.log.info('Generating doxygen docs at %s', DOXYGEN_PATH) + cli.run(['doxygen', 'Doxyfile'], **args) + + cli.log.info('Installing vitepress dependencies') + run_docs_command('install') + + return True From b39285807e1d21300e8a5dbbf6f2c43a8aab3494 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 30 May 2024 10:00:28 +0100 Subject: [PATCH 061/519] [docs] Fix code blocks overflowing page width (#23829) Fix code blocks overflowing page width --- docs/cli_commands.md | 58 ++++++++--- docs/cli_configuration.md | 20 +++- docs/cli_development.md | 10 +- docs/cli_tab_complete.md | 16 ++- docs/feature_audio.md | 38 ++++--- docs/feature_auto_shift.md | 26 +++-- docs/feature_layouts.md | 30 ++++-- docs/feature_macros.md | 16 ++- docs/flashing_bootloadhid.md | 4 +- docs/hand_wire.md | 4 +- docs/hardware_keyboard_guidelines.md | 16 ++- docs/how_a_matrix_works.md | 40 +++++--- docs/keymap.md | 147 ++++++++++++++------------- docs/newbs_building_firmware.md | 32 ++++-- docs/newbs_flashing.md | 12 ++- docs/newbs_getting_started.md | 8 +- 16 files changed, 312 insertions(+), 165 deletions(-) diff --git a/docs/cli_commands.md b/docs/cli_commands.md index 6f82d9c9de0..5a85356e707 100644 --- a/docs/cli_commands.md +++ b/docs/cli_commands.md @@ -254,15 +254,21 @@ qmk doctor [-y] [-n] Check your environment for problems and prompt to fix them: - qmk doctor +``` +qmk doctor +``` Check your environment and automatically fix any problems found: - qmk doctor -y +``` +qmk doctor -y +``` Check your environment and report problems only: - qmk doctor -n +``` +qmk doctor -n +``` ## `qmk format-json` @@ -290,15 +296,21 @@ This command is directory aware. It will automatically fill in KEYBOARD and/or K Show basic information for a keyboard: - qmk info -kb planck/rev5 +``` +qmk info -kb planck/rev5 +``` Show the matrix for a keyboard: - qmk info -kb ergodox_ez -m +``` +qmk info -kb ergodox_ez -m +``` Show a JSON keymap for a keyboard: - qmk info -kb clueboard/california -km default +``` +qmk info -kb clueboard/california -km default +``` ## `qmk json2c` @@ -350,7 +362,9 @@ This command is directory aware. It will automatically fill in KEYBOARD and/or K Do a basic lint check: - qmk lint -kb rominronin/katana60/rev2 +``` +qmk lint -kb rominronin/katana60/rev2 +``` ## `qmk list-keyboards` @@ -789,16 +803,22 @@ qmk pytest [-t TEST] Run entire test suite: - qmk pytest +``` +qmk pytest +``` Run test group: - qmk pytest -t qmk.tests.test_cli_commands +``` +qmk pytest -t qmk.tests.test_cli_commands +``` Run single test: - qmk pytest -t qmk.tests.test_cli_commands.test_c2json - qmk pytest -t qmk.tests.test_qmk_path +``` +qmk pytest -t qmk.tests.test_cli_commands.test_c2json +qmk pytest -t qmk.tests.test_qmk_path +``` ## `qmk painter-convert-graphics` @@ -835,16 +855,24 @@ options: Run entire test suite: - qmk test-c +``` +qmk test-c +``` List available tests: - qmk test-c --list +``` +qmk test-c --list +``` Run matching test: - qmk test-c --test unicode* +``` +qmk test-c --test unicode* +``` Run single test: - qmk test-c --test basic +``` +qmk test-c --test basic +``` diff --git a/docs/cli_configuration.md b/docs/cli_configuration.md index 50f5dc6e280..3d2260c20c0 100644 --- a/docs/cli_configuration.md +++ b/docs/cli_configuration.md @@ -43,7 +43,9 @@ user.keymap: None -> default The `qmk config` command is used to interact with the underlying configuration. When run with no argument it shows the current configuration. When arguments are supplied they are assumed to be configuration tokens, which are strings containing no spaces with the following form: - [.][=] +``` +[.][=] +``` ## Setting Configuration Values @@ -63,19 +65,27 @@ You can read configuration values for the entire configuration, a single key, or ### Entire Configuration Example - qmk config +``` +qmk config +``` ### Whole Section Example - qmk config compile +``` +qmk config compile +``` ### Single Key Example - qmk config compile.keyboard +``` +qmk config compile.keyboard +``` ### Multiple Keys Example - qmk config user compile.keyboard compile.keymap +``` +qmk config user compile.keyboard compile.keymap +``` ## Deleting Configuration Values diff --git a/docs/cli_development.md b/docs/cli_development.md index e94884de2e9..159bca4faa8 100644 --- a/docs/cli_development.md +++ b/docs/cli_development.md @@ -192,11 +192,15 @@ We use nose2, flake8, and yapf to test, lint, and format code. You can use the ` ### Testing and Linting - qmk pytest +``` +qmk pytest +``` ### Formatting - qmk format-python +``` +qmk format-python +``` ## Formatting Details @@ -212,7 +216,9 @@ Our tests can be found in `lib/python/qmk/tests/`. You will find both unit and i If your PR does not include a comprehensive set of tests please add comments like this to your code so that other people know where they can help: +```python # TODO(unassigned/): Write tests +``` We use [nose2](https://nose2.readthedocs.io/en/latest/getting_started.html) to run our tests. You can refer to the nose2 documentation for more details on what you can do in your test functions. diff --git a/docs/cli_tab_complete.md b/docs/cli_tab_complete.md index 90950b82da1..704439c5e16 100644 --- a/docs/cli_tab_complete.md +++ b/docs/cli_tab_complete.md @@ -10,22 +10,30 @@ There are several ways you can setup tab completion. Add this to the end of your `.profile` or `.bashrc`: - source ~/qmk_firmware/util/qmk_tab_complete.sh +``` +source ~/qmk_firmware/util/qmk_tab_complete.sh +``` If you put `qmk_firmware` into another location you will need to adjust this path. Zsh users will need to load `bashcompinit`. The following can be added to `~/.zshrc` file: - autoload -Uz bashcompinit && bashcompinit +``` +autoload -Uz bashcompinit && bashcompinit +``` ### System Wide Symlink If you want the tab completion available to all users of the system you can add a symlink to the `qmk_tab_complete.sh` script: - ln -s ~/qmk_firmware/util/qmk_tab_complete.sh /etc/profile.d/qmk_tab_complete.sh +``` +ln -s ~/qmk_firmware/util/qmk_tab_complete.sh /etc/profile.d/qmk_tab_complete.sh +``` ### System Wide Copy In some cases a symlink may not work. Instead you can copy the file directly into place. Be aware that updates to the tab complete script may happen from time to time, you will want to recopy the file periodically. - cp util/qmk_tab_complete.sh /etc/profile.d +``` +cp util/qmk_tab_complete.sh /etc/profile.d +``` diff --git a/docs/feature_audio.md b/docs/feature_audio.md index c83d6e3d939..ec28860ae9f 100644 --- a/docs/feature_audio.md +++ b/docs/feature_audio.md @@ -263,31 +263,39 @@ In music mode, the following keycodes work differently, and don't pass through: The pitch standard (`PITCH_STANDARD_A`) is 440.0f by default - to change this, add something like this to your `config.h`: - #define PITCH_STANDARD_A 432.0f +```c +#define PITCH_STANDARD_A 432.0f +``` You can completely disable Music Mode as well. This is useful, if you're pressed for space on your controller. To disable it, add this to your `config.h`: - #define NO_MUSIC_MODE +```c +#define NO_MUSIC_MODE +``` ### Music Mask By default, `MUSIC_MASK` is set to `keycode < 0xFF` which means keycodes less than `0xFF` are turned into notes, and don't output anything. You can change this by defining this in your `config.h` like this: - #define MUSIC_MASK keycode != KC_NO +```c +#define MUSIC_MASK keycode != KC_NO +``` Which will capture all keycodes - be careful, this will get you stuck in music mode until you restart your keyboard! For a more advanced way to control which keycodes should still be processed, you can use `music_mask_kb(keycode)` in `.c` and `music_mask_user(keycode)` in your `keymap.c`: - bool music_mask_user(uint16_t keycode) { - switch (keycode) { - case RAISE: - case LOWER: - return false; - default: - return true; - } +```c + bool music_mask_user(uint16_t keycode) { + switch (keycode) { + case RAISE: + case LOWER: + return false; + default: + return true; } + } +``` Things that return false are not part of the mask, and are always processed. @@ -329,8 +337,9 @@ Keycodes available: The feature is disabled by default, to save space. To enable it, add this to your `config.h`: - #define AUDIO_CLICKY - +```c +#define AUDIO_CLICKY +``` You can configure the default, min and max frequencies, the stepping and built in randomness by defining these values: @@ -343,9 +352,6 @@ You can configure the default, min and max frequencies, the stepping and built i | `AUDIO_CLICKY_FREQ_RANDOMNESS` | 0.05f | Sets a factor of randomness for the clicks, Setting this to `0f` will make each click identical, and `1.0f` will make this sound much like the 90's computer screen scrolling/typing effect. | | `AUDIO_CLICKY_DELAY_DURATION` | 1 | An integer note duration where 1 is 1/16th of the tempo, or a sixty-fourth note (see `quantum/audio/musical_notes.h` for implementation details). The main clicky effect will be delayed by this duration. Adjusting this to values around 6-12 will help compensate for loud switches. | - - - ## MIDI Functionality See [MIDI](feature_midi) diff --git a/docs/feature_auto_shift.md b/docs/feature_auto_shift.md index 3dbaec555e6..53635e39f06 100644 --- a/docs/feature_auto_shift.md +++ b/docs/feature_auto_shift.md @@ -51,7 +51,9 @@ Yes, unfortunately. Add to your `rules.mk` in the keymap folder: - AUTO_SHIFT_ENABLE = yes +``` +AUTO_SHIFT_ENABLE = yes +``` If no `rules.mk` exists, you can create one. @@ -372,22 +374,24 @@ completely normal and with no intention of shifted keys. #### An Example Run - hello world. my name is john doe. i am a computer programmer playing with - keyboards right now. +``` +hello world. my name is john doe. i am a computer programmer playing with +keyboards right now. - [PRESS AS_DOWN quite a few times] +[PRESS AS_DOWN quite a few times] - heLLo woRLd. mY nAMe is JOHn dOE. i AM A compUTeR proGRaMMER PlAYiNG witH - KEYboArDS RiGHT NOw. +heLLo woRLd. mY nAMe is JOHn dOE. i AM A compUTeR proGRaMMER PlAYiNG witH +KEYboArDS RiGHT NOw. - [PRESS AS_UP a few times] +[PRESS AS_UP a few times] - hello world. my name is john Doe. i am a computer programmer playing with - keyboarDs right now. +hello world. my name is john Doe. i am a computer programmer playing with +keyboarDs right now. - [PRESS AS_RPT] +[PRESS AS_RPT] - 115 +115 +``` The keyboard typed `115` which represents your current `AUTO_SHIFT_TIMEOUT` value. You are now set! Practice on the *D* key a little bit that showed up diff --git a/docs/feature_layouts.md b/docs/feature_layouts.md index 93d040b5542..2672477cb52 100644 --- a/docs/feature_layouts.md +++ b/docs/feature_layouts.md @@ -37,17 +37,23 @@ New names should try to stick to the standards set by existing layouts, and can For a keyboard to support a layout, the variable must be defined in it's `.h`, and match the number of arguments/keys (and preferably the physical layout): - #define LAYOUT_60_ansi KEYMAP_ANSI +```c +#define LAYOUT_60_ansi KEYMAP_ANSI +``` The name of the layout must match this regex: `[a-z0-9_]+` The folder name must be added to the keyboard's `rules.mk`: - LAYOUTS = 60_ansi +``` +LAYOUTS = 60_ansi +``` `LAYOUTS` can be set in any keyboard folder level's `rules.mk`: - LAYOUTS = 60_iso +``` +LAYOUTS = 60_iso +``` but the `LAYOUT_` variable must be defined in `.h` as well. @@ -55,12 +61,16 @@ but the `LAYOUT_` variable must be defined in `.h` as well. You should be able to build the keyboard keymap with a command in this format: - make : +``` +make : +``` ### Conflicting layouts When a keyboard supports multiple layout options, - LAYOUTS = ortho_4x4 ortho_4x12 +``` +LAYOUTS = ortho_4x4 ortho_4x12 +``` And a layout exists for both options, ``` @@ -77,8 +87,10 @@ layouts/ The FORCE_LAYOUT argument can be used to specify which layout to build - make : FORCE_LAYOUT=ortho_4x4 - make : FORCE_LAYOUT=ortho_4x12 +``` +make : FORCE_LAYOUT=ortho_4x4 +make : FORCE_LAYOUT=ortho_4x12 +``` ## Tips for Making Layouts Keyboard-Agnostic @@ -86,7 +98,9 @@ The FORCE_LAYOUT argument can be used to specify which layout to build Instead of using `#include "planck.h"`, you can use this line to include whatever `.h` (`.h` should not be included here) file that is being compiled: - #include QMK_KEYBOARD_H +```c +#include QMK_KEYBOARD_H +``` If you want to keep some keyboard-specific code, you can use these variables to escape it with an `#ifdef` statement: diff --git a/docs/feature_macros.md b/docs/feature_macros.md index c3162dba80c..d5a830c0ef5 100644 --- a/docs/feature_macros.md +++ b/docs/feature_macros.md @@ -252,11 +252,15 @@ You can send arbitrary keycodes by wrapping them in: For example: - SEND_STRING(SS_TAP(X_HOME)); +```c +SEND_STRING(SS_TAP(X_HOME)); +``` Would tap `KC_HOME` - note how the prefix is now `X_`, and not `KC_`. You can also combine this with other strings, like this: - SEND_STRING("VE"SS_TAP(X_HOME)"LO"); +```c +SEND_STRING("VE"SS_TAP(X_HOME)"LO"); +``` Which would send "VE" followed by a `KC_HOME` tap, and "LO" (spelling "LOVE" if on a newline). @@ -266,7 +270,9 @@ Delays can be also added to the string: For example: - SEND_STRING("VE" SS_DELAY(1000) SS_TAP(X_HOME) "LO"); +```c +SEND_STRING("VE" SS_DELAY(1000) SS_TAP(X_HOME) "LO"); +``` Which would send "VE" followed by a 1-second delay, then a `KC_HOME` tap, and "LO" (spelling "LOVE" if on a newline, but delayed in the middle). @@ -284,7 +290,9 @@ There's also a couple of mod shortcuts you can use: These press the respective modifier, send the supplied string and then release the modifier. They can be used like this: - SEND_STRING(SS_LCTL("a")); +```c +SEND_STRING(SS_LCTL("a")); +``` Which would send Left Control+`a` (Left Control down, `a`, Left Control up) - notice that they take strings (eg `"k"`), and not the `X_K` keycodes. diff --git a/docs/flashing_bootloadhid.md b/docs/flashing_bootloadhid.md index 6e55a4e7fd2..2d1696c6e74 100644 --- a/docs/flashing_bootloadhid.md +++ b/docs/flashing_bootloadhid.md @@ -19,7 +19,9 @@ Using the QMK installation script, detailed [here](newbs_getting_started), the r To flash via the command line, use the target `:bootloadhid` by executing the following command: - make ::bootloadhid +``` +make ::bootloadhid +``` ## GUI Flashing diff --git a/docs/hand_wire.md b/docs/hand_wire.md index 460e8e8be63..0928888f0e7 100644 --- a/docs/hand_wire.md +++ b/docs/hand_wire.md @@ -181,7 +181,9 @@ Go through the rest of the tabs, assigning keys until you get to the last one wh The source given by Keyboard Firmware Builder is QMK, but is based on a version of QMK from early 2017. To compile the firmware in a modern version of QMK Firmware, you'll need to export via the `Save Configuration` button, then run: - qmk import-kbfirmware /path/to/export.json +``` +qmk import-kbfirmware /path/to/export.json +``` For example: diff --git a/docs/hardware_keyboard_guidelines.md b/docs/hardware_keyboard_guidelines.md index e7c62321f66..728e09c8a9a 100644 --- a/docs/hardware_keyboard_guidelines.md +++ b/docs/hardware_keyboard_guidelines.md @@ -40,7 +40,9 @@ Valid Examples: QMK uses sub-folders both for organization and to share code between revisions of the same keyboard. You can nest folders up to 4 levels deep: - qmk_firmware/keyboards/top_folder/sub_1/sub_2/sub_3/sub_4 +``` +qmk_firmware/keyboards/top_folder/sub_1/sub_2/sub_3/sub_4 +``` If a sub-folder has a `rules.mk` file it will be considered a compilable keyboard. It will be available in QMK Configurator and tested with `make all`. If you are using a folder to organize several keyboards from the same maker you should not have a `rules.mk` file. @@ -250,15 +252,21 @@ When developing your keyboard, keep in mind that all warnings will be treated as If you're adapting your keyboard's setup from another project, but not using the same code, be sure to update the copyright header at the top of the files to show your name, in this format: - Copyright 2017 Your Name +```c +Copyright 2017 Your Name +``` If you are modifying someone else's code and have made only trivial changes you should leave their name in the copyright statement. If you have done significant work on the file you should add your name to theirs, like so: - Copyright 2017 Their Name Your Name +```c +Copyright 2017 Their Name Your Name +``` The year should be the first year the file is created. If work was done to that file in later years you can reflect that by appending the second year to the first, like so: - Copyright 2015-2017 Your Name +```c +Copyright 2015-2017 Your Name +``` ## License diff --git a/docs/how_a_matrix_works.md b/docs/how_a_matrix_works.md index ebe90eb3de9..fdd8c2d76fb 100644 --- a/docs/how_a_matrix_works.md +++ b/docs/how_a_matrix_works.md @@ -6,6 +6,7 @@ When the circuit is arranged in rows and columns, if a key is pressed, a column The microcontroller will be set up via the firmware to send a logical 1 to the columns, one at a time, and read from the rows, all at once - this process is called matrix scanning. The matrix is a bunch of open switches that, by default, don't allow any current to pass through - the firmware will read this as no keys being pressed. As soon as you press one key down, the logical 1 that was coming from the column the keyswitch is attached to gets passed through the switch and to the corresponding row - check out the following 2x2 example: +``` Column 0 being scanned Column 1 being scanned x x col0 col1 col0 col1 @@ -13,11 +14,13 @@ The microcontroller will be set up via the firmware to send a logical 1 to the c row0 ---(key0)---(key1) row0 ---(key0)---(key1) | | | | row1 ---(key2)---(key3) row1 ---(key2)---(key3) +``` The `x` represents that the column/row associated has a value of 1, or is HIGH. Here, we see that no keys are being pressed, so no rows get an `x`. For one keyswitch, keep in mind that one side of the contacts is connected to its row, and the other, its column. When we press `key0`, `col0` gets connected to `row0`, so the values that the firmware receives for that row is `0b01` (the `0b` here means that this is a bit value, meaning all of the following digits are bits - 0 or 1 - and represent the keys in that column). We'll use this notation to show when a keyswitch has been pressed, to show that the column and row are being connected: +``` Column 0 being scanned Column 1 being scanned x x col0 col1 col0 col1 @@ -25,16 +28,20 @@ When we press `key0`, `col0` gets connected to `row0`, so the values that the fi x row0 ---(-+-0)---(key1) row0 ---(-+-0)---(key1) | | | | row1 ---(key2)---(key3) row1 ---(key2)---(key3) +``` We can now see that `row0` has an `x`, so has the value of 1. As a whole, the data the firmware receives when `key0` is pressed is: - col0: 0b01 - col1: 0b00 - │└row0 - └row1 +``` +col0: 0b01 +col1: 0b00 + │└row0 + └row1 +``` A problem arises when you start pressing more than one key at a time. Looking at our matrix again, it should become pretty obvious: +``` Column 0 being scanned Column 1 being scanned x x col0 col1 col0 col1 @@ -44,16 +51,20 @@ A problem arises when you start pressing more than one key at a time. Looking at x row1 ---(key2)---(-+-3) x row1 ---(key2)---(-+-3) Remember that this ^ is still connected to row1 +``` The data we get from that is: - col0: 0b11 - col1: 0b11 - │└row0 - └row1 +``` +col0: 0b11 +col1: 0b11 + │└row0 + └row1 +``` Which isn't accurate, since we only have 3 keys pressed down, not all 4. This behavior is called ghosting, and only happens in odd scenarios like this, but can be much more common on a bigger keyboard. The way we can get around this is by placing a diode after the keyswitch, but before it connects to its row. A diode only allows current to pass through one way, which will protect our other columns/rows from being activated in the previous example. We'll represent a dioded matrix like this; +``` Column 0 being scanned Column 1 being scanned x x col0 col1 col0 col1 @@ -65,11 +76,13 @@ Which isn't accurate, since we only have 3 keys pressed down, not all 4. This be (key2) (key3) (key2) (key3) ! ! ! ! row1 ─────┴────────┘ row1 ─────┴────────┘ +``` In practical applications, the black line of the diode will be placed facing the row, and away from the keyswitch - the `!` in this case is the diode, where the gap represents the black line. A good way to remember this is to think of this symbol: `>|` Now when we press the three keys, invoking what would be a ghosting scenario: +``` Column 0 being scanned Column 1 being scanned x x col0 col1 col0 col1 @@ -81,13 +94,16 @@ Now when we press the three keys, invoking what would be a ghosting scenario: (key2) (┌─┘3) (key2) (┌─┘3) ! ! ! ! row1 ─────┴────────┘ x row1 ─────┴────────┘ +``` Things act as they should! Which will get us the following data: - col0: 0b01 - col1: 0b11 - │└row0 - └row1 +``` +col0: 0b01 +col1: 0b11 + │└row0 + └row1 +``` The firmware can then use this correct data to detect what it should do, and eventually, what signals it needs to send to the OS. diff --git a/docs/keymap.md b/docs/keymap.md index e371fd9ba5e..864d3e14f4f 100644 --- a/docs/keymap.md +++ b/docs/keymap.md @@ -10,20 +10,21 @@ For trivial key definitions, the higher 8 bits of the **action code** are all 0 Respective layers can be validated simultaneously. Layers are indexed with 0 to 31 and higher layer has precedence. - Keymap: 32 Layers Layer: action code matrix - ----------------- --------------------- - stack of layers array_of_action_code[row][column] - ____________ precedence _______________________ - / / | high / ESC / F1 / F2 / F3 .... - 31 /___________// | /-----/-----/-----/----- - 30 /___________// | / TAB / Q / W / E .... - 29 /___________/ | /-----/-----/-----/----- - : _:_:_:_:_:__ | : /LCtrl/ A / S / D .... - : / : : : : : / | : / : : : : - 2 /___________// | 2 `-------------------------- - 1 /___________// | 1 `-------------------------- - 0 /___________/ V low 0 `-------------------------- - +``` +Keymap: 32 Layers Layer: action code matrix +----------------- --------------------- +stack of layers array_of_action_code[row][column] + ____________ precedence _______________________ + / / | high / ESC / F1 / F2 / F3 .... + 31 /___________// | /-----/-----/-----/----- + 30 /___________// | / TAB / Q / W / E .... + 29 /___________/ | /-----/-----/-----/----- + : _:_:_:_:_:__ | : /LCtrl/ A / S / D .... + : / : : : : : / | : / : : : : + 2 /___________// | 2 `-------------------------- + 1 /___________// | 1 `-------------------------- + 0 /___________/ V low 0 `-------------------------- +``` Sometimes, the action code stored in keymap may be referred as keycode in some documents due to the TMK history. @@ -36,50 +37,54 @@ The state of the Keymap layer is determined by two 32 bit parameters: Keymap layer '0' is usually the `default_layer`, with other layers initially off after booting up the firmware, although this can configured differently in `config.h`. It is useful to change `default_layer` when you completely switch a key layout, for example, if you want to switch to Colemak instead of Qwerty. - Initial state of Keymap Change base layout - ----------------------- ------------------ +``` +Initial state of Keymap Change base layout +----------------------- ------------------ - 31 31 - 30 30 - 29 29 - : : - : : ____________ - 2 ____________ 2 / / - 1 / / ,->1 /___________/ - ,->0 /___________/ | 0 - | | - `--- default_layer = 0 `--- default_layer = 1 - layer_state = 0x00000001 layer_state = 0x00000002 + 31 31 + 30 30 + 29 29 + : : + : : ____________ + 2 ____________ 2 / / + 1 / / ,->1 /___________/ +,->0 /___________/ | 0 +| | +`--- default_layer = 0 `--- default_layer = 1 + layer_state = 0x00000001 layer_state = 0x00000002 +``` On the other hand, you can change `layer_state` to overlay the base layer with other layers for features such as navigation keys, function keys (F1-F12), media keys, and/or special actions. - Overlay feature layer - --------------------- bit|status - ____________ ---+------ - 31 / / 31 | 0 - 30 /___________// -----> 30 | 1 - 29 /___________/ -----> 29 | 1 - : : | : - : ____________ : | : - 2 / / 2 | 0 - ,->1 /___________/ -----> 1 | 1 - | 0 0 | 0 - | + - `--- default_layer = 1 | - layer_state = 0x60000002 <-' - - +``` +Overlay feature layer +--------------------- bit|status + ____________ ---+------ + 31 / / 31 | 0 + 30 /___________// -----> 30 | 1 + 29 /___________/ -----> 29 | 1 + : : | : + : ____________ : | : + 2 / / 2 | 0 +,->1 /___________/ -----> 1 | 1 +| 0 0 | 0 +| + +`--- default_layer = 1 | + layer_state = 0x60000002 <-' +``` ### Layer Precedence and Transparency Note that ***higher layers have higher priority within the stack of layers***. The firmware works its way down from the highest active layers to look up keycodes. Once the firmware locates a keycode other than `KC_TRNS` (transparent) on an active layer, it stops searching, and lower layers aren't referenced. - ____________ - / / <--- Higher layer - / KC_TRNS // - /___________// <--- Lower layer (KC_A) - /___________/ - - In the above scenario, the non-transparent keys on the higher layer would be usable, but whenever `KC_TRNS` (or equivalent) is defined, the keycode (`KC_A`) on the lower level would be used. +``` + ____________ + / / <--- Higher layer + / KC_TRNS // +/___________// <--- Lower layer (KC_A) +/___________/ +``` + +In the above scenario, the non-transparent keys on the higher layer would be usable, but whenever `KC_TRNS` (or equivalent) is defined, the keycode (`KC_A`) on the lower level would be used. **Note:** Valid ways to denote transparency on a given layer: * `KC_TRANSPARENT` @@ -101,27 +106,29 @@ There are 2 main sections of a `keymap.c` file you'll want to concern yourself w At the top of the file you'll find this: - #include QMK_KEYBOARD_H +```c +#include QMK_KEYBOARD_H - // Helpful defines - #define GRAVE_MODS (MOD_BIT(KC_LSFT)|MOD_BIT(KC_RSFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT)) +// Helpful defines +#define GRAVE_MODS (MOD_BIT(KC_LSFT)|MOD_BIT(KC_RSFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT)) - /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * You can use _______ in place for KC_TRNS (transparent) * - * Or you can use XXXXXXX for KC_NO (NOOP) * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * You can use _______ in place for KC_TRNS (transparent) * + * Or you can use XXXXXXX for KC_NO (NOOP) * + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - // Each layer gets a name for readability. - // The underscores don't mean anything - you can - // have a layer called STUFF or any other name. - // Layer names don't all need to be of the same - // length, and you can also skip them entirely - // and just use numbers. - enum layer_names { - _BL, - _FL, - _CL, - }; +// Each layer gets a name for readability. +// The underscores don't mean anything - you can +// have a layer called STUFF or any other name. +// Layer names don't all need to be of the same +// length, and you can also skip them entirely +// and just use numbers. +enum layer_names { + _BL, + _FL, + _CL, +}; +``` These are some handy definitions we can use when building our keymap and our custom function. The `GRAVE_MODS` definition will be used later in our custom function, and the following `_BL`, `_FL`, and `_CL` defines make it easier to refer to each of our layers. @@ -131,7 +138,9 @@ Note: You may also find some older keymap files may also have a define(s) for `_ The main part of this file is the `keymaps[]` definition. This is where you list your layers and the contents of those layers. This part of the file begins with this definition: - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +```c +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +``` After this you'll find the layer definitions. Typically you'll have one or more "base layers" (such as QWERTY, Dvorak, or Colemak) and then you'll layer on top of that one or more "function" layers. Due to the way layers are processed you can't overlay a "lower" layer on top of a "higher" layer. diff --git a/docs/newbs_building_firmware.md b/docs/newbs_building_firmware.md index 5e6a4452df4..d7c1157b2d5 100644 --- a/docs/newbs_building_firmware.md +++ b/docs/newbs_building_firmware.md @@ -8,7 +8,9 @@ You can configure your build environment to set the defaults and make working wi Most people new to QMK only have 1 keyboard. You can set this keyboard as your default with the `qmk config` command. For example, to set your default keyboard to `clueboard/66/rev4`: - qmk config user.keyboard=clueboard/66/rev4 +```sh +qmk config user.keyboard=clueboard/66/rev4 +``` ::: tip The keyboard option is the path relative to the keyboard directory, the above example would be found in `qmk_firmware/keyboards/clueboard/66/rev4`. If you're unsure you can view a full list of supported keyboards with `qmk list-keyboards`. @@ -16,21 +18,29 @@ The keyboard option is the path relative to the keyboard directory, the above ex You can also set your default keymap name. Most people use their GitHub username like the keymap name from the previous steps: - qmk config user.keymap= +```sh +qmk config user.keymap= +``` ## Create a New Keymap To create your own keymap you'll want to create a copy of the `default` keymap. If you configured your build environment in the last step you can do that easily with the QMK CLI: - qmk new-keymap +```sh +qmk new-keymap +``` If you did not configure your environment, or you have multiple keyboards, you can specify a keyboard name: - qmk new-keymap -kb +```sh +qmk new-keymap -kb +``` Look at the output from that command, you should see something like this: - Ψ Created a new keymap called in: /home/me/qmk_firmware/keyboards/clueboard/66/rev3/keymaps/. +``` +Ψ Created a new keymap called in: /home/me/qmk_firmware/keyboards/clueboard/66/rev3/keymaps/. +``` This is the location of your new `keymap.c` file. @@ -38,7 +48,9 @@ This is the location of your new `keymap.c` file. Open your `keymap.c` file in your text editor. Inside this file you'll find the structure that controls how your keyboard behaves. At the top of `keymap.c` there may be some defines and enums that make the keymap easier to read. Farther down you'll find a line that looks like this: - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +```c +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +``` This line indicates where the list of Layers begins. Below that you'll find lines containing `LAYOUT`, and these lines indicate the start of a layer. Below that line is the list of keys that comprise a particular layer. @@ -63,11 +75,15 @@ While you get a feel for how keymaps work, keep each change small. Bigger change When your changes to the keymap are complete you will need to build the firmware. To do so go back to your terminal window and run the compile command: - qmk compile +```sh +qmk compile +``` If you did not configure defaults for your environment, or you have multiple keyboards, you can specify a keyboard and/or keymap: - qmk compile -kb -km +```sh +qmk compile -kb -km +``` While this compiles you will have a lot of output going to the screen informing you of what files are being compiled. It should end with output that looks similar to this: diff --git a/docs/newbs_flashing.md b/docs/newbs_flashing.md index eaa8032961a..e9df397267c 100644 --- a/docs/newbs_flashing.md +++ b/docs/newbs_flashing.md @@ -98,17 +98,23 @@ Click the `Flash` button in QMK Toolbox. You will see output similar to the foll This has been made pretty simple compared to what it used to be. When you are ready to compile and flash your firmware, open up your terminal window and run the flash command: - qmk flash +```sh +qmk flash +``` If you did not configure your keyboard/keymap name in the CLI according to the [Configure your build environment](newbs_getting_started) section, or you have multiple keyboards, you can specify the keyboard and keymap: - qmk flash -kb -km +```sh +qmk flash -kb -km +``` This will check the keyboard's configuration, and then attempt to flash it based on the specified bootloader. This means that you don't need to know which bootloader that your keyboard uses. Just run the command, and let the command do the heavy lifting. However, this does rely on the bootloader being set by the keyboard. If this information is not configured, or you're using a board that doesn't have a supported target to flash it, you will see this error: - WARNING: This board's bootloader is not specified or is not supported by the ":flash" target at this time. +``` +WARNING: This board's bootloader is not specified or is not supported by the ":flash" target at this time. +``` In this case, you'll have to fall back on specifying the bootloader. See the [Flashing Firmware](flashing) Guide for more details. diff --git a/docs/newbs_getting_started.md b/docs/newbs_getting_started.md index 3a901ad7ad7..9ebcccc77f2 100644 --- a/docs/newbs_getting_started.md +++ b/docs/newbs_getting_started.md @@ -196,11 +196,15 @@ If you already know how to use GitHub, [we recommend that you follow these instr Now that your QMK build environment is set up, you can build a firmware for your keyboard. Start by trying to build the keyboard's default keymap. You should be able to do that with a command in this format: - qmk compile -kb -km default +```sh +qmk compile -kb -km default +``` For example, to build a firmware for a Clueboard 66% you would use: - qmk compile -kb clueboard/66/rev3 -km default +```sh +qmk compile -kb clueboard/66/rev3 -km default +``` ::: tip The keyboard option is the path relative to the keyboard directory, the above example would be found in `qmk_firmware/keyboards/clueboard/66/rev3`. If you're unsure you can view a full list of supported keyboards with `qmk list-keyboards`. From 8b84fa6b505b29f568164551d85944ba8e2db7c2 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 30 May 2024 19:09:07 +1000 Subject: [PATCH 062/519] [docs] Better logo SVG (#23828) --- builddefs/docsgen/.vitepress/config.mts | 6 +++--- builddefs/docsgen/.vitepress/theme/custom.css | 12 ------------ docs/public/qmk-logo-dark.svg | 14 ++++++++++++++ docs/public/qmk-logo-light.svg | 14 ++++++++++++++ 4 files changed, 31 insertions(+), 15 deletions(-) create mode 100644 docs/public/qmk-logo-dark.svg create mode 100644 docs/public/qmk-logo-light.svg diff --git a/builddefs/docsgen/.vitepress/config.mts b/builddefs/docsgen/.vitepress/config.mts index f2111eeb7c5..289e08ef919 100644 --- a/builddefs/docsgen/.vitepress/config.mts +++ b/builddefs/docsgen/.vitepress/config.mts @@ -28,10 +28,10 @@ export default defineConfig(({ mode }) => { themeConfig: { // https://vitepress.dev/reference/default-theme-config logo: { - light: "/badge-community-light.svg", - dark: "/badge-community-dark.svg", + light: "/qmk-logo-light.svg", + dark: "/qmk-logo-dark.svg", }, - siteTitle: false, + title: 'QMK Firmware', nav: [{ text: "Home", link: "./" }], diff --git a/builddefs/docsgen/.vitepress/theme/custom.css b/builddefs/docsgen/.vitepress/theme/custom.css index 646d215c1f2..77726adedeb 100644 --- a/builddefs/docsgen/.vitepress/theme/custom.css +++ b/builddefs/docsgen/.vitepress/theme/custom.css @@ -5,15 +5,3 @@ kbd { margin: 0.2em; padding: 0.2em; } - -:root { - --vp-nav-logo-height: 100%; -} - -.logo { - padding-bottom: 0.2em; -} - -.VPNavBarTitle.has-sidebar .title { - border-bottom: 0; -} diff --git a/docs/public/qmk-logo-dark.svg b/docs/public/qmk-logo-dark.svg new file mode 100644 index 00000000000..b89e1de6c84 --- /dev/null +++ b/docs/public/qmk-logo-dark.svg @@ -0,0 +1,14 @@ + + + + + + diff --git a/docs/public/qmk-logo-light.svg b/docs/public/qmk-logo-light.svg new file mode 100644 index 00000000000..46b286c8b14 --- /dev/null +++ b/docs/public/qmk-logo-light.svg @@ -0,0 +1,14 @@ + + + + + + From 8a394503c714aaf053e51bb3bbf2a4f8ea503c7b Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 30 May 2024 10:10:00 +0100 Subject: [PATCH 063/519] [docs] Update "Get Started" blocks (#23830) Update "Get Started" blocks --- docs/index.md | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/docs/index.md b/docs/index.md index 91f27a8a803..166bdc8ad94 100644 --- a/docs/index.md +++ b/docs/index.md @@ -6,19 +6,17 @@ QMK (*Quantum Mechanical Keyboard*) is an open source community centered around ## Get Started -
+::: tip Basic +[QMK Configurator](newbs_building_firmware_configurator) -::: tip -**Basic** [QMK Configurator](newbs_building_firmware_configurator)
-::: User friendly graphical interfaces, no programming knowledge required. - -::: tip -**Advanced** [Use The Source](newbs)
::: -More powerful, but harder to use. -
+::: warning Advanced +[Use The Source](newbs) + +More powerful, but harder to use. +::: ## Make It Yours From 32af90ae840714d0fcb8dc438bc519e88ab63e1f Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 30 May 2024 19:26:32 +1000 Subject: [PATCH 064/519] [docs] Fix old anchor IDs (#23831) --- docs/__capabilities.md | 2 +- docs/feature_digitizer.md | 14 +++++++------- docs/feature_unicode.md | 4 ++-- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/__capabilities.md b/docs/__capabilities.md index e28b9289706..dc576d4a3c1 100644 --- a/docs/__capabilities.md +++ b/docs/__capabilities.md @@ -84,7 +84,7 @@ Nested mixed: * `lib/python/qmk/cli/generate/config_h.py` * `lib/python/qmk/cli/generate/rules_mk.py` -### Emoji :id=emoji +### Emoji {#emoji} #### Direct: diff --git a/docs/feature_digitizer.md b/docs/feature_digitizer.md index 905ad9cbd0c..475d5b4d51f 100644 --- a/docs/feature_digitizer.md +++ b/docs/feature_digitizer.md @@ -71,43 +71,43 @@ Send the digitizer report to the host if it is marked as dirty. --- -### `void digitizer_in_range_on(void)` :api-digitizer-in-range-on +### `void digitizer_in_range_on(void)` {#api-digitizer-in-range-on} Assert the "in range" indicator, and flush the report. --- -### `void digitizer_in_range_off(void)` :api-digitizer-in-range-off +### `void digitizer_in_range_off(void)` {#api-digitizer-in-range-off} Deassert the "in range" indicator, and flush the report. --- -### `void digitizer_tip_switch_on(void)` :api-digitizer-tip-switch-on +### `void digitizer_tip_switch_on(void)` {#api-digitizer-tip-switch-on} Assert the tip switch, and flush the report. --- -### `void digitizer_tip_switch_off(void)` :api-digitizer-tip-switch-off +### `void digitizer_tip_switch_off(void)` {#api-digitizer-tip-switch-off} Deassert the tip switch, and flush the report. --- -### `void digitizer_barrel_switch_on(void)` :api-digitizer-barrel-switch-on +### `void digitizer_barrel_switch_on(void)` {#api-digitizer-barrel-switch-on} Assert the barrel switch, and flush the report. --- -### `void digitizer_barrel_switch_off(void)` :api-digitizer-barrel-switch-off +### `void digitizer_barrel_switch_off(void)` {#api-digitizer-barrel-switch-off} Deassert the barrel switch, and flush the report. --- -### `void digitizer_set_position(float x, float y)` :api-digitizer-set-position +### `void digitizer_set_position(float x, float y)` {#api-digitizer-set-position} Set the absolute X and Y position of the digitizer contact, and flush the report. diff --git a/docs/feature_unicode.md b/docs/feature_unicode.md index aa5a064e202..f9295c1f572 100644 --- a/docs/feature_unicode.md +++ b/docs/feature_unicode.md @@ -242,13 +242,13 @@ Set the Unicode input mode. --- -### `void unicode_input_mode_step(void)` : {#api-unicode-input-mode-step} +### `void unicode_input_mode_step(void)` {#api-unicode-input-mode-step} Change to the next Unicode input mode. --- -### `void unicode_input_mode_step_reverse(void)` : {#api-unicode-input-mode-step-reverse} +### `void unicode_input_mode_step_reverse(void)` {#api-unicode-input-mode-step-reverse} Change to the previous Unicode input mode. From 119e54e9e3db66355a07be5f8db9fcc81b65f1ff Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 31 May 2024 01:34:30 +0100 Subject: [PATCH 065/519] Docs theme updates (#23832) --- builddefs/docsgen/.vitepress/theme/custom.css | 14 +++++++++++++- docs/cli_development.md | 4 ++-- docs/driver_installation_zadig.md | 2 +- docs/feature_sequencer.md | 2 +- docs/isp_flashing_guide.md | 2 +- docs/newbs.md | 5 ++--- docs/newbs_building_firmware_workflow.md | 6 ++---- 7 files changed, 22 insertions(+), 13 deletions(-) diff --git a/builddefs/docsgen/.vitepress/theme/custom.css b/builddefs/docsgen/.vitepress/theme/custom.css index 77726adedeb..732cb5b74fe 100644 --- a/builddefs/docsgen/.vitepress/theme/custom.css +++ b/builddefs/docsgen/.vitepress/theme/custom.css @@ -1,7 +1,19 @@ /* Override as vitepress doesn't put them with borders */ kbd { border: 1px solid var(--vp-c-text-1); - border-radius: 0.6em; + border-radius: 5px; margin: 0.2em; padding: 0.2em; } + +:root { + --vp-nav-logo-height: 32px; + + --vp-layout-max-width: calc(98% + 64px); + + --vp-sidebar-width: 300px; +} + +.VPDoc.has-aside .content-container { + max-width: unset !important; +} diff --git a/docs/cli_development.md b/docs/cli_development.md index 159bca4faa8..2e74220d4be 100644 --- a/docs/cli_development.md +++ b/docs/cli_development.md @@ -207,7 +207,7 @@ qmk format-python We use [yapf](https://github.com/google/yapf) to automatically format code. Our configuration is in the `[yapf]` section of `setup.cfg`. ::: tip -Tip- Many editors can use yapf as a plugin to automatically format code as you type. +Many editors can use yapf as a plugin to automatically format code as you type. ::: ## Testing Details @@ -217,7 +217,7 @@ Our tests can be found in `lib/python/qmk/tests/`. You will find both unit and i If your PR does not include a comprehensive set of tests please add comments like this to your code so that other people know where they can help: ```python - # TODO(unassigned/): Write tests +# TODO(unassigned/): Write tests ``` We use [nose2](https://nose2.readthedocs.io/en/latest/getting_started.html) to run our tests. You can refer to the nose2 documentation for more details on what you can do in your test functions. diff --git a/docs/driver_installation_zadig.md b/docs/driver_installation_zadig.md index 69113863f8f..ce16ada166a 100644 --- a/docs/driver_installation_zadig.md +++ b/docs/driver_installation_zadig.md @@ -65,7 +65,7 @@ Run `pnputil /delete-driver oemXX.inf /uninstall`. This will delete the driver a As with the previous section, this process may need to be repeated multiple times, as multiple drivers can be applicable to the same device. ::: warning -**WARNING:** Be *extremely careful* when doing this! You could potentially uninstall the driver for some other critical device. If you are unsure, double check the output of `/enum-drivers`, and omit the `/uninstall` flag when running `/delete-driver`. +Be *extremely careful* when doing this! You could potentially uninstall the driver for some other critical device. If you are unsure, double check the output of `/enum-drivers`, and omit the `/uninstall` flag when running `/delete-driver`. ::: ## List of Known Bootloaders diff --git a/docs/feature_sequencer.md b/docs/feature_sequencer.md index c58b6225cac..f5f1f549afd 100644 --- a/docs/feature_sequencer.md +++ b/docs/feature_sequencer.md @@ -3,7 +3,7 @@ Since QMK has experimental support for MIDI, you can now turn your keyboard into a [step sequencer](https://en.wikipedia.org/wiki/Music_sequencer#Step_sequencers)! ::: warning -**IMPORTANT:** This feature is highly experimental, it has only been tested on a Planck EZ so far. Also, the scope will be limited to support the drum machine use-case to start with. +This feature is highly experimental, it has only been tested on a Planck EZ so far. Also, the scope will be limited to support the drum machine use-case to start with. ::: ## Enable the step sequencer diff --git a/docs/isp_flashing_guide.md b/docs/isp_flashing_guide.md index afebcc6ad65..6f3f0a8f7d0 100644 --- a/docs/isp_flashing_guide.md +++ b/docs/isp_flashing_guide.md @@ -286,7 +286,7 @@ avrdude done. Thank you. This is a slightly more advanced topic, but may be necessary if you are switching from one bootloader to another (for example, Caterina to Atmel/QMK DFU on a Pro Micro). Fuses control some of the low-level functionality of the AVR microcontroller, such as clock speed, whether JTAG is enabled, and the size of the section of flash memory reserved for the bootloader, among other things. You can find a fuse calculator for many AVR parts [here](https://www.engbedded.com/conffuse/). ::: warning -**WARNING:** Setting incorrect fuse values, in particular the clock-related bits, may render the MCU practically unrecoverable without high voltage programming (not covered here)! Make sure to double check the commands you enter before you execute them. +Setting incorrect fuse values, in particular the clock-related bits, may render the MCU practically unrecoverable without high voltage programming (not covered here)! Make sure to double check the commands you enter before you execute them. ::: To set the fuses, add the following to the `avrdude` command: diff --git a/docs/newbs.md b/docs/newbs.md index 10d043c3eda..64593cbad12 100644 --- a/docs/newbs.md +++ b/docs/newbs.md @@ -6,10 +6,9 @@ QMK tries to put a lot of power into your hands by making easy things easy, and Not sure if your keyboard can run QMK? If it's a mechanical keyboard you built yourself chances are good it can. We support a [large number of hobbyist boards](https://qmk.fm/keyboards/). If your current keyboard can't run QMK there are a lot of choices out there for boards that do. -::: tip -**Is This Guide For Me?**
-::: +::: tip Is This Guide For Me? If the thought of programming intimidates you, please [take a look at our online GUI](newbs_building_firmware_configurator) instead. +::: ## Overview diff --git a/docs/newbs_building_firmware_workflow.md b/docs/newbs_building_firmware_workflow.md index 01c2e69032b..a5123892783 100644 --- a/docs/newbs_building_firmware_workflow.md +++ b/docs/newbs_building_firmware_workflow.md @@ -2,11 +2,9 @@ This is an intermediate QMK tutorial to setup an out-of-tree build environment with a personal GitHub repository. It avoids using a fork of the QMK firmware to store and build your keymap within its source tree. Keymap files will instead be stored in your own personal GitHub repository, in [Userspace](feature_userspace) format, and built with an action workflow. Unlike the [default tutorial](newbs), this guide requires some familiarity with using Git. -::: tip -**Is This Guide For Me?**
-::: +::: tip Is This Guide For Me? This is a lean setup to avoid space-consuming local build environment in your computer. Troubleshooting compile-time errors will be slower with commit uploads to GitHub for the compiler workflow. - +::: ## Prerequisites From fa6d23235bf429446250cd5212e209d5fbfdbac2 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 1 Jun 2024 10:37:40 +1000 Subject: [PATCH 066/519] [docs] Remove gitbook directory (#23839) --- docs/__capabilities.md | 2 +- docs/feature_rgblight.md | 2 +- docs/{gitbook/images => public}/color-wheel.svg | 0 docs/{gitbook/images => public}/favicon.ico | Bin docs/{gitbook/images => public}/favicon.png | Bin 5 files changed, 2 insertions(+), 2 deletions(-) rename docs/{gitbook/images => public}/color-wheel.svg (100%) rename docs/{gitbook/images => public}/favicon.ico (100%) rename docs/{gitbook/images => public}/favicon.png (100%) diff --git a/docs/__capabilities.md b/docs/__capabilities.md index dc576d4a3c1..873ca44664f 100644 --- a/docs/__capabilities.md +++ b/docs/__capabilities.md @@ -41,7 +41,7 @@ Unrelated to styling, high-level tech. ![QMK Light](./public/badge-community-light.svg) ![QMK Dark](./public/badge-community-dark.svg) -HSV Color Wheel +HSV Color Wheel ### Lists diff --git a/docs/feature_rgblight.md b/docs/feature_rgblight.md index bd973ef0095..682d8b8cbae 100644 --- a/docs/feature_rgblight.md +++ b/docs/feature_rgblight.md @@ -49,7 +49,7 @@ Then you should be able to use the keycodes below to change the RGB lighting to QMK uses [Hue, Saturation, and Value](https://en.wikipedia.org/wiki/HSL_and_HSV) to select colors rather than RGB. The color wheel below demonstrates how this works. -HSV Color Wheel +HSV Color Wheel Changing the **Hue** cycles around the circle.
Changing the **Saturation** moves between the inner and outer sections of the wheel, affecting the intensity of the color.
diff --git a/docs/gitbook/images/color-wheel.svg b/docs/public/color-wheel.svg similarity index 100% rename from docs/gitbook/images/color-wheel.svg rename to docs/public/color-wheel.svg diff --git a/docs/gitbook/images/favicon.ico b/docs/public/favicon.ico similarity index 100% rename from docs/gitbook/images/favicon.ico rename to docs/public/favicon.ico diff --git a/docs/gitbook/images/favicon.png b/docs/public/favicon.png similarity index 100% rename from docs/gitbook/images/favicon.png rename to docs/public/favicon.png From 78a0adfbb4d2c4e12f93f2a62ded0020d406243e Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 2 Jun 2024 12:42:24 +1000 Subject: [PATCH 067/519] [docs] Organize driver & feature docs into subfolders (#23848) Co-authored-by: Nick Brassel --- docs/ChangeLog/20210828.md | 4 +- docs/ChangeLog/20211127.md | 4 +- docs/ChangeLog/20220226.md | 2 +- docs/ChangeLog/20220528.md | 4 +- docs/ChangeLog/20220827.md | 2 +- docs/ChangeLog/20221126.md | 4 +- docs/ChangeLog/20230226.md | 2 +- docs/ChangeLog/20230528.md | 4 +- docs/ChangeLog/20230827.md | 2 +- docs/ChangeLog/20240225.md | 2 +- docs/_sidebar.json | 112 +++++++++--------- docs/cli_commands.md | 2 +- docs/config_options.md | 12 +- docs/custom_quantum_functions.md | 2 +- docs/documentation_best_practices.md | 2 +- docs/driver_installation_zadig.md | 4 +- docs/{adc_driver.md => drivers/adc.md} | 2 +- docs/{apa102_driver.md => drivers/apa102.md} | 4 +- docs/{audio_driver.md => drivers/audio.md} | 2 +- docs/{eeprom_driver.md => drivers/eeprom.md} | 2 +- docs/{flash_driver.md => drivers/flash.md} | 0 docs/{gpio_control.md => drivers/gpio.md} | 0 docs/{i2c_driver.md => drivers/i2c.md} | 2 +- docs/{serial_driver.md => drivers/serial.md} | 4 +- docs/{spi_driver.md => drivers/spi.md} | 2 +- docs/{uart_driver.md => drivers/uart.md} | 0 docs/{ws2812_driver.md => drivers/ws2812.md} | 2 +- docs/easy_maker.md | 2 +- docs/faq_build.md | 2 +- docs/faq_debug.md | 2 +- docs/faq_keymap.md | 6 +- docs/feature_advanced_keycodes.md | 4 +- docs/feature_converters.md | 16 +-- docs/feature_eeprom.md | 2 +- docs/feature_layers.md | 4 +- docs/feature_macros.md | 4 +- docs/{feature_audio.md => features/audio.md} | 6 +- .../auto_shift.md} | 8 +- .../autocorrect.md} | 2 +- .../backlight.md} | 4 +- .../bluetooth.md} | 2 +- .../bootmagic.md} | 6 +- .../caps_word.md} | 4 +- docs/{feature_combo.md => features/combo.md} | 4 +- .../command.md} | 2 +- .../digitizer.md} | 2 +- .../dip_switch.md} | 0 .../dynamic_macros.md} | 0 .../encoders.md} | 0 .../grave_esc.md} | 0 .../haptic_feedback.md} | 4 +- .../hd44780.md} | 0 .../joystick.md} | 2 +- .../key_lock.md} | 4 +- .../key_overrides.md} | 4 +- .../leader_key.md} | 4 +- .../led_indicators.md} | 2 +- .../led_matrix.md} | 2 +- docs/{feature_midi.md => features/midi.md} | 2 +- .../mouse_keys.md} | 2 +- .../oled_driver.md} | 0 .../os_detection.md} | 0 .../pointing_device.md} | 8 +- .../programmable_button.md} | 0 .../ps2_mouse.md} | 0 .../{feature_rawhid.md => features/rawhid.md} | 0 .../repeat_key.md} | 9 +- .../rgb_matrix.md} | 10 +- .../rgblight.md} | 10 +- .../{feature_secure.md => features/secure.md} | 2 +- .../send_string.md} | 8 +- .../sequencer.md} | 0 .../space_cadet.md} | 2 +- .../split_keyboard.md} | 10 +- .../{feature_st7565.md => features/st7565.md} | 0 .../stenography.md} | 4 +- .../swap_hands.md} | 2 +- .../tap_dance.md} | 4 +- .../tri_layer.md} | 2 +- .../unicode.md} | 4 +- docs/{feature_wpm.md => features/wpm.md} | 0 docs/flashing.md | 4 +- docs/getting_started_make_guide.md | 6 +- docs/hand_wire.md | 2 +- docs/hardware_drivers.md | 10 +- docs/hardware_keyboard_guidelines.md | 2 +- docs/keycodes.md | 42 +++---- docs/mod_tap.md | 2 +- docs/newbs_building_firmware.md | 4 +- docs/platformdev_rp2040.md | 30 ++--- docs/porting_your_keyboard_to_qmk.md | 2 +- docs/pr_checklist.md | 6 +- docs/ref_functions.md | 4 +- docs/reference_glossary.md | 12 +- docs/reference_info_json.md | 44 +++---- docs/syllabus.md | 28 ++--- docs/tap_hold.md | 2 +- 97 files changed, 282 insertions(+), 285 deletions(-) rename docs/{adc_driver.md => drivers/adc.md} (99%) rename docs/{apa102_driver.md => drivers/apa102.md} (85%) rename docs/{audio_driver.md => drivers/audio.md} (97%) rename docs/{eeprom_driver.md => drivers/eeprom.md} (99%) rename docs/{flash_driver.md => drivers/flash.md} (100%) rename docs/{gpio_control.md => drivers/gpio.md} (100%) rename docs/{i2c_driver.md => drivers/i2c.md} (99%) rename docs/{serial_driver.md => drivers/serial.md} (98%) rename docs/{spi_driver.md => drivers/spi.md} (99%) rename docs/{uart_driver.md => drivers/uart.md} (100%) rename docs/{ws2812_driver.md => drivers/ws2812.md} (98%) rename docs/{feature_audio.md => features/audio.md} (99%) rename docs/{feature_auto_shift.md => features/auto_shift.md} (97%) rename docs/{feature_autocorrect.md => features/autocorrect.md} (98%) rename docs/{feature_backlight.md => features/backlight.md} (97%) rename docs/{feature_bluetooth.md => features/bluetooth.md} (96%) rename docs/{feature_bootmagic.md => features/bootmagic.md} (87%) rename docs/{feature_caps_word.md => features/caps_word.md} (98%) rename docs/{feature_combo.md => features/combo.md} (98%) rename docs/{feature_command.md => features/command.md} (95%) rename docs/{feature_digitizer.md => features/digitizer.md} (96%) rename docs/{feature_dip_switch.md => features/dip_switch.md} (100%) rename docs/{feature_dynamic_macros.md => features/dynamic_macros.md} (100%) rename docs/{feature_encoders.md => features/encoders.md} (100%) rename docs/{feature_grave_esc.md => features/grave_esc.md} (100%) rename docs/{feature_haptic_feedback.md => features/haptic_feedback.md} (99%) rename docs/{feature_hd44780.md => features/hd44780.md} (100%) rename docs/{feature_joystick.md => features/joystick.md} (98%) rename docs/{feature_key_lock.md => features/key_lock.md} (86%) rename docs/{feature_key_overrides.md => features/key_overrides.md} (95%) rename docs/{feature_leader_key.md => features/leader_key.md} (94%) rename docs/{feature_led_indicators.md => features/led_indicators.md} (98%) rename docs/{feature_led_matrix.md => features/led_matrix.md} (99%) rename docs/{feature_midi.md => features/midi.md} (99%) rename docs/{feature_mouse_keys.md => features/mouse_keys.md} (98%) rename docs/{feature_oled_driver.md => features/oled_driver.md} (100%) rename docs/{feature_os_detection.md => features/os_detection.md} (100%) rename docs/{feature_pointing_device.md => features/pointing_device.md} (98%) rename docs/{feature_programmable_button.md => features/programmable_button.md} (100%) rename docs/{feature_ps2_mouse.md => features/ps2_mouse.md} (100%) rename docs/{feature_rawhid.md => features/rawhid.md} (100%) rename docs/{feature_repeat_key.md => features/repeat_key.md} (98%) rename docs/{feature_rgb_matrix.md => features/rgb_matrix.md} (99%) rename docs/{feature_rgblight.md => features/rgblight.md} (98%) rename docs/{feature_secure.md => features/secure.md} (97%) rename docs/{feature_send_string.md => features/send_string.md} (93%) rename docs/{feature_sequencer.md => features/sequencer.md} (100%) rename docs/{feature_space_cadet.md => features/space_cadet.md} (97%) rename docs/{feature_split_keyboard.md => features/split_keyboard.md} (97%) rename docs/{feature_st7565.md => features/st7565.md} (100%) rename docs/{feature_stenography.md => features/stenography.md} (98%) rename docs/{feature_swap_hands.md => features/swap_hands.md} (94%) rename docs/{feature_tap_dance.md => features/tap_dance.md} (99%) rename docs/{feature_tri_layer.md => features/tri_layer.md} (98%) rename docs/{feature_unicode.md => features/unicode.md} (98%) rename docs/{feature_wpm.md => features/wpm.md} (100%) diff --git a/docs/ChangeLog/20210828.md b/docs/ChangeLog/20210828.md index f84169cc947..18b1d92b0cd 100644 --- a/docs/ChangeLog/20210828.md +++ b/docs/ChangeLog/20210828.md @@ -10,11 +10,11 @@ It is also now possible to define combos that have keys overlapping with other c ### Key Overrides ([#11422](https://github.com/qmk/qmk_firmware/pull/11422)) {#key-overrides} -QMK now has a new feature: [key overrides](../feature_key_overrides). This feature allows for overriding the output of key combinations involving modifiers. As an example, pressing Shift+2 normally results in an @ on US-ANSI keyboard layouts -- the new key overrides allow for adding similar functionality, but for any modifier + key press. +QMK now has a new feature: [key overrides](../features/key_overrides). This feature allows for overriding the output of key combinations involving modifiers. As an example, pressing Shift+2 normally results in an @ on US-ANSI keyboard layouts -- the new key overrides allow for adding similar functionality, but for any modifier + key press. To illustrate, it's now possible to use the key overrides feature to translate Shift + Backspace into Delete -- an often-requested example of where this functionality comes in handy. -There's far more to describe that what lives in this changelog, so head over to the [key overrides documentation](../feature_key_overrides) for more examples and info. +There's far more to describe that what lives in this changelog, so head over to the [key overrides documentation](../features/key_overrides) for more examples and info. ### Digitizer support ([#12851](https://github.com/qmk/qmk_firmware/pull/12851)) diff --git a/docs/ChangeLog/20211127.md b/docs/ChangeLog/20211127.md index d810be505a4..5ca68c39993 100644 --- a/docs/ChangeLog/20211127.md +++ b/docs/ChangeLog/20211127.md @@ -31,7 +31,7 @@ QMK now has core-supplied support for the following pointing device peripherals: | `POINTING_DEVICE_DRIVER = pimoroni_trackball` | Pimoroni Trackball | | `POINTING_DEVICE_DRIVER = pmw3360` | PMW 3360 | -See the new documentation for the [Pointing Device](../feature_pointing_device) feature for more information on specific configuration for each driver. +See the new documentation for the [Pointing Device](../features/pointing_device) feature for more information on specific configuration for each driver. ### Dynamic Tapping Term ([#11036](https://github.com/qmk/qmk_firmware/pull/11036)) {#dynamic-tapping-term} @@ -116,7 +116,7 @@ Related to the previous section -- RGB Matrix modes have now been made to be opt Most keyboards keep their original functionality, but over time the QMK maintainers have found that removal of animations ends up being the quickest way to free up space... and some keyboards have had animations such as reactive effects disabled by default in order to still fit within the flash space available. -The full list of configurables to turn specific animations back on can be found at on the [RGB Matrix documentation](../feature_rgb_matrix#rgb-matrix-effects) page. +The full list of configurables to turn specific animations back on can be found at on the [RGB Matrix documentation](../features/rgb_matrix#rgb-matrix-effects) page. ### OLED task refactoring ([#14864](https://github.com/qmk/qmk_firmware/pull/14864)) {#oled-task-refactor} diff --git a/docs/ChangeLog/20220226.md b/docs/ChangeLog/20220226.md index f0cbbc0603e..a10b6447eac 100644 --- a/docs/ChangeLog/20220226.md +++ b/docs/ChangeLog/20220226.md @@ -12,7 +12,7 @@ Something something *Lets go gamers!* Pointing devices can now be shared across a split keyboard with support for a single pointing device or a pointing device on each side. -See the [Pointing Device](../feature_pointing_device) documentation for further configuration options. +See the [Pointing Device](../features/pointing_device) documentation for further configuration options. ## Changes Requiring User Action {#changes-requiring-user-action} diff --git a/docs/ChangeLog/20220528.md b/docs/ChangeLog/20220528.md index 31347c9c005..ae84f163d4d 100644 --- a/docs/ChangeLog/20220528.md +++ b/docs/ChangeLog/20220528.md @@ -8,7 +8,7 @@ This is a new feature that allows for capslock-like functionality that turns its For instance, if you wish to type "QMK" without holding shift the entire time, you can either tap both left and right shift, or double-tap shift, to turn on _Caps Word_ -- then type `qmk` (lowercase) without holding shift. Once you hit any key other than `a`--`z`, `0`--`9`, `-`, `_`, delete, or backspace, this will go back to normal typing! -There are other activation mechanisms as well as configurable options like timeout and the like -- see the [Caps Word documentation](../feature_caps_word) for more information. +There are other activation mechanisms as well as configurable options like timeout and the like -- see the [Caps Word documentation](../features/caps_word) for more information. ### Quantum Painter ([#10174](https://github.com/qmk/qmk_firmware/pull/10174)) {#quantum-painter} @@ -26,7 +26,7 @@ Quantum Painter is not supported on AVR due to complexity and size constraints. ### Encoder Mapping ([#13286](https://github.com/qmk/qmk_firmware/pull/13286)) {#encoder-mapping} -One of the long-standing complaints with Encoders is that there has been no easy way to configure them in user keymaps. [#13286](https://github.com/qmk/qmk_firmware/pull/13286) added support for [Encoder Mapping](../feature_encoders#encoder-map), which allows users to define encoder functionality in a similar way to their normal keymap. +One of the long-standing complaints with Encoders is that there has been no easy way to configure them in user keymaps. [#13286](https://github.com/qmk/qmk_firmware/pull/13286) added support for [Encoder Mapping](../features/encoders#encoder-map), which allows users to define encoder functionality in a similar way to their normal keymap. ::: warning This is not yet supported by QMK Configurator. It is also unlikely to ever be supported by VIA. diff --git a/docs/ChangeLog/20220827.md b/docs/ChangeLog/20220827.md index d58db91272f..6d9f82f36a6 100644 --- a/docs/ChangeLog/20220827.md +++ b/docs/ChangeLog/20220827.md @@ -83,7 +83,7 @@ The now-EOL kbfirmware allowed people who aren't set up with QMK the ability to QMK has had the ability to write to internal MCU flash in order to emulate EEPROM for some time now, but it was only limited to a small number of MCUs. The base HAL used by QMK for a large number of ARM devices provides a "proper" embedded MCU flash driver, so _@tzarc_ decoupled the wear-leveling algorithm from the old flash writing code, improved it, wrote some tests, and enabled its use for a much larger number of other devices... including RP2040's XIP flash, and external SPI NOR Flash. -See the [EEPROM Driver](../eeprom_driver) documentation for more information. +See the [EEPROM Driver](../drivers/eeprom) documentation for more information. ### Pointing Device Improvements ([#16371](https://github.com/qmk/qmk_firmware/pull/16371), [#17111](https://github.com/qmk/qmk_firmware/pull/17111), [#17176](https://github.com/qmk/qmk_firmware/pull/17176), [#17482](https://github.com/qmk/qmk_firmware/pull/17482), [#17776](https://github.com/qmk/qmk_firmware/pull/17776), [#17613](https://github.com/qmk/qmk_firmware/pull/17613)) {#pointing-device-improvements} diff --git a/docs/ChangeLog/20221126.md b/docs/ChangeLog/20221126.md index 25cf1d592dd..41b0ad0a6b7 100644 --- a/docs/ChangeLog/20221126.md +++ b/docs/ChangeLog/20221126.md @@ -4,7 +4,7 @@ ### Autocorrect ([#15699](https://github.com/qmk/qmk_firmware/pull/15699)) {#autocorrect} -_@getreuer_ in their infinite wisdom decided that autocorrect was a feature needed by QMK. As is customary, _@drashna_ adapted it to core and got it into a state that everyone else can use it. See [Feature: Autocorrect](../feature_autocorrect) for more ifnormation (grin). +_@getreuer_ in their infinite wisdom decided that autocorrect was a feature needed by QMK. As is customary, _@drashna_ adapted it to core and got it into a state that everyone else can use it. See [Feature: Autocorrect](../features/autocorrect) for more ifnormation (grin). ## Changes Requiring User Action {#changes-requiring-user-action} @@ -132,7 +132,7 @@ The equivalent transformations should be done for LED Matrix boards. ### Unicode mode refactoring {#unicode-mode-renaming} -Unicode modes were renamed in order to prevent collision with equivalent keycodes. The available values for `UNICODE_SELECTED_MODES` changed -- see [Feature: Unicode](../feature_unicode#setting-the-input-mode) for the new list of values and how to configure them. +Unicode modes were renamed in order to prevent collision with equivalent keycodes. The available values for `UNICODE_SELECTED_MODES` changed -- see [Feature: Unicode](../features/unicode#setting-the-input-mode) for the new list of values and how to configure them. ## Notable core changes {#notable-core} diff --git a/docs/ChangeLog/20230226.md b/docs/ChangeLog/20230226.md index ee560686044..87ff9242645 100644 --- a/docs/ChangeLog/20230226.md +++ b/docs/ChangeLog/20230226.md @@ -106,7 +106,7 @@ void leader_end_user(void) { } ``` -For more information please see the [Leader Key documentation](../feature_leader_key). +For more information please see the [Leader Key documentation](../features/leader_key). ### Updated Keyboard Codebases {#updated-keyboard-codebases} diff --git a/docs/ChangeLog/20230528.md b/docs/ChangeLog/20230528.md index 40ab3a420c2..77ad6209b0e 100644 --- a/docs/ChangeLog/20230528.md +++ b/docs/ChangeLog/20230528.md @@ -24,7 +24,7 @@ Of note for keyboard designers: A new pair of keys has been added to QMK -- namely `QK_REPEAT_KEY` and `QK_ALT_REPEAT_KEY` (shortened: `QK_REP`/`QK_AREP`). These allow you to repeat the last key pressed, or in the case of the alternate key, press the "opposite" of the last key. For example, if you press `KC_LEFT`, pressing `QK_REPEAT_KEY` afterwards repeats `KC_LEFT`, but pressing `QK_ALT_REPEAT_KEY` instead sends `KC_RIGHT`. -The full list of default alternate keys is available on the [Repeat Key](../feature_repeat_key) documentation. +The full list of default alternate keys is available on the [Repeat Key](../features/repeat_key) documentation. To enable these keys, in your keymap's `rules.mk`, add: @@ -93,7 +93,7 @@ Additionally, this ensures that builds on QMK Configurator produce some sort of The "classic" OLED driver picked up support for additional sizes of OLED displays, support for the SH1107 controller, and SPI-based OLED support. -Other configurable items are available and can be found on the [OLED Driver page](../feature_oled_driver). +Other configurable items are available and can be found on the [OLED Driver page](../features/oled_driver). ## Full changelist {#full-changelist} diff --git a/docs/ChangeLog/20230827.md b/docs/ChangeLog/20230827.md index aecbcb0d8f4..493ee84349d 100644 --- a/docs/ChangeLog/20230827.md +++ b/docs/ChangeLog/20230827.md @@ -42,7 +42,7 @@ AVR sees minimal (if any) benefit -- `double` was interpreted as `float` on AVR ### Remove encoder in-matrix workaround code ([#20389](https://github.com/qmk/qmk_firmware/pull/20389)) {#remove-encoder-in-matrix-workaround-code} -Some keyboards "hacked" encoder support into spare slots in the key matrix in order to interoperate with VIA. This workaround is no longer necessary, and the code has been removed. If you have a keyboard that uses this workaround, you will need to update your keymap to use the new [Encoder Map](../feature_encoders#encoder-map) API instead. +Some keyboards "hacked" encoder support into spare slots in the key matrix in order to interoperate with VIA. This workaround is no longer necessary, and the code has been removed. If you have a keyboard that uses this workaround, you will need to update your keymap to use the new [Encoder Map](../features/encoders#encoder-map) API instead. ### Unicodemap keycodes rename ([#21092](https://github.com/qmk/qmk_firmware/pull/21092)) {#unicodemap-keycodes-rename} diff --git a/docs/ChangeLog/20240225.md b/docs/ChangeLog/20240225.md index f4103c594e0..1ebfbd23094 100644 --- a/docs/ChangeLog/20240225.md +++ b/docs/ChangeLog/20240225.md @@ -120,7 +120,7 @@ In some cases, accidental automatic activation of the mouse layer made it diffic ### DIP Switch Mapping ([#22543](https://github.com/qmk/qmk_firmware/pull/22543)) {#dip-switch-map} -Much like Encoder Mapping, DIP Switch Mapping allows for specifying a table of actions to execute when a DIP switch state changes. See the [DIP Switch Documentation](../feature_dip_switch#dip-switch-map) for more information. +Much like Encoder Mapping, DIP Switch Mapping allows for specifying a table of actions to execute when a DIP switch state changes. See the [DIP Switch Documentation](../features/dip_switch#dip-switch-map) for more information. ```c #if defined(DIP_SWITCH_MAP_ENABLE) diff --git a/docs/_sidebar.json b/docs/_sidebar.json index f1b7c156e6e..b41719e4b32 100644 --- a/docs/_sidebar.json +++ b/docs/_sidebar.json @@ -103,45 +103,45 @@ { "text": "Advanced Keycodes", "items": [ - { "text": "Command", "link": "/feature_command" }, - { "text": "Dynamic Macros", "link": "/feature_dynamic_macros" }, - { "text": "Grave Escape", "link": "/feature_grave_esc" }, - { "text": "Leader Key", "link": "/feature_leader_key" }, + { "text": "Command", "link": "/features/command" }, + { "text": "Dynamic Macros", "link": "/features/dynamic_macros" }, + { "text": "Grave Escape", "link": "/features/grave_esc" }, + { "text": "Leader Key", "link": "/features/leader_key" }, { "text": "Mod-Tap", "link": "/mod_tap" }, { "text": "Macros", "link": "/feature_macros" }, - { "text": "Mouse Keys", "link": "/feature_mouse_keys" }, - { "text": "Programmable Button", "link": "/feature_programmable_button" }, - { "text": "Repeat Key", "link": "/feature_repeat_key" }, - { "text": "Space Cadet Shift", "link": "/feature_space_cadet" }, + { "text": "Mouse Keys", "link": "/features/mouse_keys" }, + { "text": "Programmable Button", "link": "/features/programmable_button" }, + { "text": "Repeat Key", "link": "/features/repeat_key" }, + { "text": "Space Cadet Shift", "link": "/features/space_cadet" }, { "text": "US ANSI Shifted Keys", "link": "/keycodes_us_ansi_shifted" } ] }, { "text": "Software Features", "items": [ - { "text": "Auto Shift", "link": "/feature_auto_shift" }, - { "text": "Autocorrect", "link": "/feature_autocorrect" }, - { "text": "Caps Word", "link": "/feature_caps_word" }, - { "text": "Combos", "link": "/feature_combo" }, + { "text": "Auto Shift", "link": "/features/auto_shift" }, + { "text": "Autocorrect", "link": "/features/autocorrect" }, + { "text": "Caps Word", "link": "/features/caps_word" }, + { "text": "Combos", "link": "/features/combo" }, { "text": "Debounce API", "link": "/feature_debounce_type" }, - { "text": "Digitizer", "link": "/feature_digitizer" }, + { "text": "Digitizer", "link": "/features/digitizer" }, { "text": "EEPROM", "link": "/feature_eeprom" }, - { "text": "Key Lock", "link": "/feature_key_lock" }, - { "text": "Key Overrides", "link": "/feature_key_overrides" }, + { "text": "Key Lock", "link": "/features/key_lock" }, + { "text": "Key Overrides", "link": "/features/key_overrides" }, { "text": "Layers", "link": "/feature_layers" }, { "text": "One Shot Keys", "link": "/one_shot_keys" }, - { "text": "OS Detection", "link": "/feature_os_detection" }, - { "text": "Raw HID", "link": "/feature_rawhid" }, - { "text": "Secure", "link": "/feature_secure" }, - { "text": "Send String", "link": "/feature_send_string" }, - { "text": "Sequencer", "link": "/feature_sequencer" }, - { "text": "Swap Hands", "link": "/feature_swap_hands" }, - { "text": "Tap Dance", "link": "/feature_tap_dance" }, + { "text": "OS Detection", "link": "/features/os_detection" }, + { "text": "Raw HID", "link": "/features/rawhid" }, + { "text": "Secure", "link": "/features/secure" }, + { "text": "Send String", "link": "/features/send_string" }, + { "text": "Sequencer", "link": "/features/sequencer" }, + { "text": "Swap Hands", "link": "/features/swap_hands" }, + { "text": "Tap Dance", "link": "/features/tap_dance" }, { "text": "Tap-Hold Configuration", "link": "/tap_hold" }, - { "text": "Tri Layer", "link": "/feature_tri_layer" }, - { "text": "Unicode", "link": "/feature_unicode" }, + { "text": "Tri Layer", "link": "/features/tri_layer" }, + { "text": "Unicode", "link": "/features/unicode" }, { "text": "Userspace", "link": "/feature_userspace" }, - { "text": "WPM Calculation", "link": "/feature_wpm" } + { "text": "WPM Calculation", "link": "/features/wpm" } ] }, { @@ -157,35 +157,35 @@ { "text": "Quantum Painter LVGL Integration", "link": "/quantum_painter_lvgl" } ] }, - { "text": "HD44780 LCD Driver", "link": "/feature_hd44780" }, - { "text": "ST7565 LCD Driver", "link": "/feature_st7565" }, - { "text": "OLED Driver", "link": "/feature_oled_driver" } + { "text": "HD44780 LCD Driver", "link": "/features/hd44780" }, + { "text": "ST7565 LCD Driver", "link": "/features/st7565" }, + { "text": "OLED Driver", "link": "/features/oled_driver" } ] }, { "text": "Lighting", "items": [ - { "text": "Backlight", "link": "/feature_backlight" }, - { "text": "LED Matrix", "link": "/feature_led_matrix" }, - { "text": "RGB Lighting", "link": "/feature_rgblight" }, - { "text": "RGB Matrix", "link": "/feature_rgb_matrix" } + { "text": "Backlight", "link": "/features/backlight" }, + { "text": "LED Matrix", "link": "/features/led_matrix" }, + { "text": "RGB Lighting", "link": "/features/rgblight" }, + { "text": "RGB Matrix", "link": "/features/rgb_matrix" } ] }, - { "text": "Audio", "link": "/feature_audio" }, - { "text": "Bluetooth", "link": "/feature_bluetooth" }, - { "text": "Bootmagic Lite", "link": "/feature_bootmagic" }, + { "text": "Audio", "link": "/features/audio" }, + { "text": "Bluetooth", "link": "/features/bluetooth" }, + { "text": "Bootmagic Lite", "link": "/features/bootmagic" }, { "text": "Converters", "link": "/feature_converters" }, { "text": "Custom Matrix", "link": "/custom_matrix" }, - { "text": "DIP Switch", "link": "/feature_dip_switch" }, - { "text": "Encoders", "link": "/feature_encoders" }, - { "text": "Haptic Feedback", "link": "/feature_haptic_feedback" }, - { "text": "Joystick", "link": "/feature_joystick" }, - { "text": "LED Indicators", "link": "/feature_led_indicators" }, - { "text": "MIDI", "link": "/feature_midi" }, - { "text": "Pointing Device", "link": "/feature_pointing_device" }, - { "text": "PS/2 Mouse", "link": "/feature_ps2_mouse" }, - { "text": "Split Keyboard", "link": "/feature_split_keyboard" }, - { "text": "Stenography", "link": "/feature_stenography" } + { "text": "DIP Switch", "link": "/features/dip_switch" }, + { "text": "Encoders", "link": "/features/encoders" }, + { "text": "Haptic Feedback", "link": "/features/haptic_feedback" }, + { "text": "Joystick", "link": "/features/joystick" }, + { "text": "LED Indicators", "link": "/features/led_indicators" }, + { "text": "MIDI", "link": "/features/midi" }, + { "text": "Pointing Device", "link": "/features/pointing_device" }, + { "text": "PS/2 Mouse", "link": "/features/ps2_mouse" }, + { "text": "Split Keyboard", "link": "/features/split_keyboard" }, + { "text": "Stenography", "link": "/features/stenography" } ] }, { @@ -226,19 +226,19 @@ "text": "Drivers", "link": "hardware_drivers", "items": [ - { "text": "ADC Driver", "link": "/adc_driver" }, - { "text": "APA102 Driver", "link": "/apa102_driver" }, - { "text": "Audio Driver", "link": "/audio_driver" }, - { "text": "I2C Driver", "link": "/i2c_driver" }, - { "text": "SPI Driver", "link": "/spi_driver" }, - { "text": "WS2812 Driver", "link": "/ws2812_driver" }, - { "text": "EEPROM Driver", "link": "/eeprom_driver" }, - { "text": "Flash Driver", "link": "/flash_driver" }, - { "text": "'serial' Driver", "link": "/serial_driver" }, - { "text": "UART Driver", "link": "/uart_driver" } + { "text": "ADC Driver", "link": "/drivers/adc" }, + { "text": "APA102 Driver", "link": "/drivers/apa102" }, + { "text": "Audio Driver", "link": "/drivers/audio" }, + { "text": "EEPROM Driver", "link": "/drivers/eeprom" }, + { "text": "Flash Driver", "link": "/drivers/flash" }, + { "text": "I2C Driver", "link": "/drivers/i2c" }, + { "text": "'serial' Driver", "link": "/drivers/serial" }, + { "text": "SPI Driver", "link": "/drivers/spi" }, + { "text": "UART Driver", "link": "/drivers/uart" }, + { "text": "WS2812 Driver", "link": "/drivers/ws2812" } ] }, - { "text": "GPIO Controls", "link": "/gpio_control" }, + { "text": "GPIO Controls", "link": "/drivers/gpio" }, { "text": "Keyboard Guidelines", "link": "/hardware_keyboard_guidelines" } ] }, diff --git a/docs/cli_commands.md b/docs/cli_commands.md index 5a85356e707..7d74d8e6177 100644 --- a/docs/cli_commands.md +++ b/docs/cli_commands.md @@ -749,7 +749,7 @@ options: ## `qmk generate-rgb-breathe-table` -This command generates a lookup table (LUT) header file for the [RGB Lighting](feature_rgblight) feature's breathing animation. Place this file in your keyboard or keymap directory as `rgblight_breathe_table.h` to override the default LUT in `quantum/rgblight/`. +This command generates a lookup table (LUT) header file for the [RGB Lighting](features/rgblight) feature's breathing animation. Place this file in your keyboard or keymap directory as `rgblight_breathe_table.h` to override the default LUT in `quantum/rgblight/`. **Usage**: diff --git a/docs/config_options.md b/docs/config_options.md index 236649a0ea5..a1ca8c8d503 100644 --- a/docs/config_options.md +++ b/docs/config_options.md @@ -207,7 +207,7 @@ If you define these options you will enable the associated feature, which may in * `#define TAP_HOLD_CAPS_DELAY 80` * Sets the delay for Tap Hold keys (`LT`, `MT`) when using `KC_CAPS_LOCK` keycode, as this has some special handling on MacOS. The value is in milliseconds, and defaults to 80 ms if not defined. For macOS, you may want to set this to 200 or higher. * `#define KEY_OVERRIDE_REPEAT_DELAY 500` - * Sets the key repeat interval for [key overrides](feature_key_overrides). + * Sets the key repeat interval for [key overrides](features/key_overrides). * `#define LEGACY_MAGIC_HANDLING` * Enables magic configuration handling for advanced keycodes (such as Mod Tap and Layer Tap) @@ -217,14 +217,14 @@ If you define these options you will enable the associated feature, which may in * `#define WS2812_DI_PIN D7` * pin the DI on the WS2812 is hooked-up to * `#define RGBLIGHT_LAYERS` - * Lets you define [lighting layers](feature_rgblight#lighting-layers) that can be toggled on or off. Great for showing the current keyboard layer or caps lock state. + * Lets you define [lighting layers](features/rgblight#lighting-layers) that can be toggled on or off. Great for showing the current keyboard layer or caps lock state. * `#define RGBLIGHT_MAX_LAYERS` - * Defaults to 8. Can be expanded up to 32 if more [lighting layers](feature_rgblight#lighting-layers) are needed. + * Defaults to 8. Can be expanded up to 32 if more [lighting layers](features/rgblight#lighting-layers) are needed. * Note: Increasing the maximum will increase the firmware size and slow sync on split keyboards. * `#define RGBLIGHT_LAYER_BLINK` - * Adds ability to [blink](feature_rgblight#lighting-layer-blink) a lighting layer for a specified number of milliseconds (e.g. to acknowledge an action). + * Adds ability to [blink](features/rgblight#lighting-layer-blink) a lighting layer for a specified number of milliseconds (e.g. to acknowledge an action). * `#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF` - * If defined, then [lighting layers](feature_rgblight#overriding-rgb-lighting-onoff-status) will be shown even if RGB Light is off. + * If defined, then [lighting layers](features/rgblight#overriding-rgb-lighting-onoff-status) will be shown even if RGB Light is off. * `#define RGBLIGHT_LED_COUNT 12` * number of LEDs * `#define RGBLIGHT_SPLIT` @@ -358,7 +358,7 @@ There are a few different ways to set handedness for split keyboards (listed in * `#define SPLIT_TRANSACTION_IDS_KB .....` * `#define SPLIT_TRANSACTION_IDS_USER .....` - * Allows for custom data sync with the slave when using the QMK-provided split transport. See [custom data sync between sides](feature_split_keyboard#custom-data-sync) for more information. + * Allows for custom data sync with the slave when using the QMK-provided split transport. See [custom data sync between sides](features/split_keyboard#custom-data-sync) for more information. # The `rules.mk` File diff --git a/docs/custom_quantum_functions.md b/docs/custom_quantum_functions.md index ac21f0e0390..729f0cd0283 100644 --- a/docs/custom_quantum_functions.md +++ b/docs/custom_quantum_functions.md @@ -206,7 +206,7 @@ Similar to `matrix_scan_*`, these are called as often as the MCU can handle. To ### Example `void housekeeping_task_user(void)` implementation -This example will show you how to use `void housekeeping_task_user(void)` to turn off [RGB Light](feature_rgblight). For RGB Matrix, the [builtin](feature_rgb_matrix#additional-configh-options) `RGB_MATRIX_TIMEOUT` should be used. +This example will show you how to use `void housekeeping_task_user(void)` to turn off [RGB Light](features/rgblight). For RGB Matrix, the [builtin](features/rgb_matrix#additional-configh-options) `RGB_MATRIX_TIMEOUT` should be used. First, add the following lines to your keymap's `config.h`: diff --git a/docs/documentation_best_practices.md b/docs/documentation_best_practices.md index d41ec28f196..bc64472e241 100644 --- a/docs/documentation_best_practices.md +++ b/docs/documentation_best_practices.md @@ -69,4 +69,4 @@ This page describes my cool feature. You can use my cool feature to make coffee |KC_SUGAR||Order Sugar| ``` -Place your documentation into `docs/feature_.md`, and add that file to the appropriate place in `docs/_sidebar.json`. If you have added any keycodes be sure to add them to `docs/keycodes.md` with a link back to your feature page. +Place your documentation into `docs/features/.md`, and add that file to the appropriate place in `docs/_sidebar.json`. If you have added any keycodes be sure to add them to `docs/keycodes.md` with a link back to your feature page. diff --git a/docs/driver_installation_zadig.md b/docs/driver_installation_zadig.md index ce16ada166a..099376faeb1 100644 --- a/docs/driver_installation_zadig.md +++ b/docs/driver_installation_zadig.md @@ -8,8 +8,8 @@ We recommend the use of the [Zadig](https://zadig.akeo.ie/) utility. If you have ## Installation -Put your keyboard into bootloader mode, either by hitting the `QK_BOOT` keycode (which may be on a different layer), or by pressing the reset switch that's usually located on the underside of the board. If your keyboard has neither, try holding Escape or Space+`B` as you plug it in (see the [Bootmagic Lite](feature_bootmagic) docs for more details). Some boards use [Command](feature_command) instead of Bootmagic; in this case, you can enter bootloader mode by hitting Left Shift+Right Shift+`B` or Left Shift+Right Shift+Escape at any point while the keyboard is plugged in. -Some keyboards may have specific instructions for entering the bootloader. For example, the [Bootmagic Lite](feature_bootmagic) key (default: Escape) might be on a different key, e.g. Left Control; or the magic combination for Command (default: Left Shift+Right Shift) might require you to hold something else, e.g. Left Control+Right Control. Refer to the board's README file if you are unsure. +Put your keyboard into bootloader mode, either by hitting the `QK_BOOT` keycode (which may be on a different layer), or by pressing the reset switch that's usually located on the underside of the board. If your keyboard has neither, try holding Escape or Space+`B` as you plug it in (see the [Bootmagic Lite](features/bootmagic) docs for more details). Some boards use [Command](features/command) instead of Bootmagic; in this case, you can enter bootloader mode by hitting Left Shift+Right Shift+`B` or Left Shift+Right Shift+Escape at any point while the keyboard is plugged in. +Some keyboards may have specific instructions for entering the bootloader. For example, the [Bootmagic Lite](features/bootmagic) key (default: Escape) might be on a different key, e.g. Left Control; or the magic combination for Command (default: Left Shift+Right Shift) might require you to hold something else, e.g. Left Control+Right Control. Refer to the board's README file if you are unsure. To put a device in bootloader mode with USBaspLoader, tap the `RESET` button while holding down the `BOOT` button. Alternatively, hold `BOOT` while inserting the USB cable. diff --git a/docs/adc_driver.md b/docs/drivers/adc.md similarity index 99% rename from docs/adc_driver.md rename to docs/drivers/adc.md index a1ab5a52513..d89068c2aeb 100644 --- a/docs/adc_driver.md +++ b/docs/drivers/adc.md @@ -1,6 +1,6 @@ # ADC Driver -QMK can leverage the Analog-to-Digital Converter (ADC) on supported MCUs to measure voltages on certain pins. This can be useful for implementing things such as battery level indicators for Bluetooth keyboards, or volume controls using a potentiometer, as opposed to a [rotary encoder](feature_encoders). +QMK can leverage the Analog-to-Digital Converter (ADC) on supported MCUs to measure voltages on certain pins. This can be useful for implementing things such as battery level indicators for Bluetooth keyboards, or volume controls using a potentiometer, as opposed to a [rotary encoder](../features/encoders). This driver currently supports both AVR and a limited selection of ARM devices. The values returned are 10-bit integers (0-1023) mapped between 0V and VCC (usually 5V or 3.3V for AVR, 3.3V only for ARM), however on ARM there is more flexibility in control of operation through `#define`s if you need more precision. diff --git a/docs/apa102_driver.md b/docs/drivers/apa102.md similarity index 85% rename from docs/apa102_driver.md rename to docs/drivers/apa102.md index 0f905e3f181..88868a73b59 100644 --- a/docs/apa102_driver.md +++ b/docs/drivers/apa102.md @@ -1,10 +1,10 @@ # APA102 Driver {#apa102-driver} -This driver provides support for APA102 addressable RGB LEDs. They are similar to the [WS2812](ws2812_driver) LEDs, but have increased data and refresh rates. +This driver provides support for APA102 addressable RGB LEDs. They are similar to the [WS2812](ws2812) LEDs, but have increased data and refresh rates. ## Usage {#usage} -In most cases, the APA102 driver code is automatically included if you are using either the [RGBLight](feature_rgblight) or [RGB Matrix](feature_rgb_matrix) feature with the `apa102` driver set, and you would use those APIs instead. +In most cases, the APA102 driver code is automatically included if you are using either the [RGBLight](../features/rgblight) or [RGB Matrix](../features/rgb_matrix) feature with the `apa102` driver set, and you would use those APIs instead. However, if you need to use the driver standalone, add the following to your `rules.mk`: diff --git a/docs/audio_driver.md b/docs/drivers/audio.md similarity index 97% rename from docs/audio_driver.md rename to docs/drivers/audio.md index 4a71b4f411c..c764c97369a 100644 --- a/docs/audio_driver.md +++ b/docs/drivers/audio.md @@ -1,6 +1,6 @@ # Audio Driver {#audio-driver} -The [Audio feature](feature_audio) breaks the hardware specifics out into separate, exchangeable driver units, with a common interface to the audio-"core" - which itself handles playing songs and notes while tracking their progress in an internal state, initializing/starting/stopping the driver as needed. +The [Audio feature](../features/audio) breaks the hardware specifics out into separate, exchangeable driver units, with a common interface to the audio-"core" - which itself handles playing songs and notes while tracking their progress in an internal state, initializing/starting/stopping the driver as needed. Not all MCUs support every available driver, either the platform-support is not there (yet?) or the MCU simply does not have the required hardware peripheral. diff --git a/docs/eeprom_driver.md b/docs/drivers/eeprom.md similarity index 99% rename from docs/eeprom_driver.md rename to docs/drivers/eeprom.md index 6d13377ed8d..82630c501d1 100644 --- a/docs/eeprom_driver.md +++ b/docs/drivers/eeprom.md @@ -133,7 +133,7 @@ If your MCU does not boot after swapping to the EFL wear-leveling driver, it's l ## Wear-leveling SPI Flash Driver Configuration {#wear_leveling-flash_spi-driver-configuration} -This driver performs writes to an external SPI NOR Flash peripheral. It also requires a working configuration for the SPI NOR Flash peripheral -- see the [flash driver](flash_driver) documentation for more information. +This driver performs writes to an external SPI NOR Flash peripheral. It also requires a working configuration for the SPI NOR Flash peripheral -- see the [flash driver](flash) documentation for more information. Configurable options in your keyboard's `config.h`: diff --git a/docs/flash_driver.md b/docs/drivers/flash.md similarity index 100% rename from docs/flash_driver.md rename to docs/drivers/flash.md diff --git a/docs/gpio_control.md b/docs/drivers/gpio.md similarity index 100% rename from docs/gpio_control.md rename to docs/drivers/gpio.md diff --git a/docs/i2c_driver.md b/docs/drivers/i2c.md similarity index 99% rename from docs/i2c_driver.md rename to docs/drivers/i2c.md index ccc21137b38..10949ed59e0 100644 --- a/docs/i2c_driver.md +++ b/docs/drivers/i2c.md @@ -4,7 +4,7 @@ The I2C Master drivers used in QMK have a set of common functions to allow porta ## Usage {#usage} -In most cases, the I2C Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](feature_oled_driver). +In most cases, the I2C Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](../features/oled_driver). However, if you need to use the driver standalone, add the following to your `rules.mk`: diff --git a/docs/serial_driver.md b/docs/drivers/serial.md similarity index 98% rename from docs/serial_driver.md rename to docs/drivers/serial.md index ce2fc7a46c4..364e951b869 100644 --- a/docs/serial_driver.md +++ b/docs/drivers/serial.md @@ -1,6 +1,6 @@ # 'serial' Driver -The Serial driver powers the [Split Keyboard](feature_split_keyboard) feature. Several implementations are available that cater to the platform and capabilites of MCU in use. Note that none of the drivers support split keyboards with more than two halves. +The Serial driver powers the [Split Keyboard](../features/split_keyboard) feature. Several implementations are available that cater to the platform and capabilites of MCU in use. Note that none of the drivers support split keyboards with more than two halves. | Driver | AVR | ARM | Connection between halves | | --------------------------------------- | ------------------ | ------------------ | --------------------------------------------------------------------------------------------- | @@ -298,7 +298,7 @@ If you're having issues withe serial communication, you can enable debug message ``` ::: tip -The messages will be printed out to the `CONSOLE` output. For additional information, refer to [Debugging/Troubleshooting QMK](faq_debug). +The messages will be printed out to the `CONSOLE` output. For additional information, refer to [Debugging/Troubleshooting QMK](../faq_debug). ::: ## Alternate Functions for selected STM32 MCUs diff --git a/docs/spi_driver.md b/docs/drivers/spi.md similarity index 99% rename from docs/spi_driver.md rename to docs/drivers/spi.md index b77e2dbb46f..ddc35de8511 100644 --- a/docs/spi_driver.md +++ b/docs/drivers/spi.md @@ -4,7 +4,7 @@ The SPI Master drivers used in QMK have a set of common functions to allow porta ## Usage {#usage} -In most cases, the SPI Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](feature_oled_driver). +In most cases, the SPI Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](../features/oled_driver). However, if you need to use the driver standalone, add the following to your `rules.mk`: diff --git a/docs/uart_driver.md b/docs/drivers/uart.md similarity index 100% rename from docs/uart_driver.md rename to docs/drivers/uart.md diff --git a/docs/ws2812_driver.md b/docs/drivers/ws2812.md similarity index 98% rename from docs/ws2812_driver.md rename to docs/drivers/ws2812.md index c445e2dbf65..61addf1917e 100644 --- a/docs/ws2812_driver.md +++ b/docs/drivers/ws2812.md @@ -10,7 +10,7 @@ The LEDs can be chained together, and the remaining data is passed on to the nex ## Usage {#usage} -In most cases, the WS2812 driver code is automatically included if you are using either the [RGBLight](feature_rgblight) or [RGB Matrix](feature_rgb_matrix) feature with the `ws2812` driver set, and you would use those APIs instead. +In most cases, the WS2812 driver code is automatically included if you are using either the [RGBLight](../features/rgblight) or [RGB Matrix](../features/rgb_matrix) feature with the `ws2812` driver set, and you would use those APIs instead. However, if you need to use the driver standalone, add the following to your `rules.mk`: diff --git a/docs/easy_maker.md b/docs/easy_maker.md index 6a2f00686fd..e94477322b3 100644 --- a/docs/easy_maker.md +++ b/docs/easy_maker.md @@ -5,7 +5,7 @@ Have you ever needed an easy way to program a controller, such as a Proton C or There are different styles of Easy Maker available depending on your needs: * [Direct Pin](https://config.qmk.fm/#/?filter=ez_maker/direct) - Connect a single switch to a single pin -* Direct Pin + Backlight (Coming Soon) - Like Direct Pin but dedicates a single pin to [Backlight](feature_backlight) control +* Direct Pin + Backlight (Coming Soon) - Like Direct Pin but dedicates a single pin to [Backlight](features/backlight) control * Direct Pin + Numlock (Coming Soon) - Like Direct Pin but dedicates a single pin to the Numlock LED * Direct Pin + Capslock (Coming Soon) - Like Direct Pin but dedicates a single pin to the Capslock LED * Direct Pin + Encoder (Coming Soon) - Like Direct Pin but uses 2 pins to add a single rotary encoder diff --git a/docs/faq_build.md b/docs/faq_build.md index 7fafff10664..54ed576c708 100644 --- a/docs/faq_build.md +++ b/docs/faq_build.md @@ -66,4 +66,4 @@ Due to how EEPROM works on ARM based chips, saved settings may no longer be vali [Planck rev6 reset EEPROM](https://cdn.discordapp.com/attachments/473506116718952450/539284620861243409/planck_rev6_default.bin) can be used to force an eeprom reset. After flashing this image, flash your normal firmware again which should restore your keyboard to _normal_ working order. [Preonic rev3 reset EEPROM](https://cdn.discordapp.com/attachments/473506116718952450/537849497313738762/preonic_rev3_default.bin) -If bootmagic is enabled in any form, you should be able to do this too (see [Bootmagic docs](feature_bootmagic) and keyboard info for specifics on how to do this). +If bootmagic is enabled in any form, you should be able to do this too (see [Bootmagic docs](features/bootmagic) and keyboard info for specifics on how to do this). diff --git a/docs/faq_debug.md b/docs/faq_debug.md index e22bc5d9ced..36374974dfd 100644 --- a/docs/faq_debug.md +++ b/docs/faq_debug.md @@ -4,7 +4,7 @@ This page details various common questions people have about troubleshooting the ## Debugging {#debugging} -Your keyboard will output debug information if you have `CONSOLE_ENABLE = yes` in your `rules.mk`. By default the output is very limited, but you can turn on debug mode to increase the amount of debug output. Use the `DB_TOGG` keycode in your keymap, use the [Command](feature_command) feature to enable debug mode, or add the following code to your keymap. +Your keyboard will output debug information if you have `CONSOLE_ENABLE = yes` in your `rules.mk`. By default the output is very limited, but you can turn on debug mode to increase the amount of debug output. Use the `DB_TOGG` keycode in your keymap, use the [Command](features/command) feature to enable debug mode, or add the following code to your keymap. ```c void keyboard_post_init_user(void) { diff --git a/docs/faq_keymap.md b/docs/faq_keymap.md index 0070b6d1de1..56ccc6f6ccf 100644 --- a/docs/faq_keymap.md +++ b/docs/faq_keymap.md @@ -45,7 +45,7 @@ QMK has a couple of features which allow you to change the behavior of your keyb Refer to the EEPROM clearing methods above, which should return those keys to normal operation. If that doesn't work, look here: * [Magic Keycodes](keycodes_magic) -* [Command](feature_command) +* [Command](features/command) ## The Menu Key Isn't Working @@ -86,7 +86,7 @@ Old vintage mechanical keyboards occasionally have lock switches but modern ones ## Input Special Characters Other Than ASCII like Cédille 'Ç' -See the [Unicode](feature_unicode) feature. +See the [Unicode](features/unicode) feature. ## `Fn` Key on macOS @@ -130,7 +130,7 @@ https://github.com/tekezo/Karabiner/issues/403 ## Esc and ` on a Single Key -See the [Grave Escape](feature_grave_esc) feature. +See the [Grave Escape](features/grave_esc) feature. ## Eject on Mac OSX diff --git a/docs/feature_advanced_keycodes.md b/docs/feature_advanced_keycodes.md index 50dc0bb2815..7f5a10d1c13 100644 --- a/docs/feature_advanced_keycodes.md +++ b/docs/feature_advanced_keycodes.md @@ -160,7 +160,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return true; }; ``` -Alternatively, this can be done with [Key Overrides](feature_key_overrides#simple-example). +Alternatively, this can be done with [Key Overrides](features/key_overrides#simple-example). # Advanced topics {#advanced-topics} @@ -184,4 +184,4 @@ This page used to encompass a large set of features. We have moved many sections ## Key Overrides {#key-overrides} -* [Key Overrides](feature_key_overrides) +* [Key Overrides](features/key_overrides) diff --git a/docs/feature_converters.md b/docs/feature_converters.md index 9b2d027a665..229d1007ab4 100644 --- a/docs/feature_converters.md +++ b/docs/feature_converters.md @@ -39,7 +39,7 @@ qmk flash -c -kb keebio/bdn9/rev1 -km default -e CONVERT_TO=proton_c You can also add the same `CONVERT_TO=` to your keymap's `rules.mk`, which will accomplish the same thing. ::: tip -If you get errors about `PORTB/DDRB`, etc not being defined, you'll need to convert the keyboard's code to use the [GPIO Controls](gpio_control) that will work for both ARM and AVR. This shouldn't affect the AVR builds at all. +If you get errors about `PORTB/DDRB`, etc not being defined, you'll need to convert the keyboard's code to use the [GPIO Controls](drivers/gpio) that will work for both ARM and AVR. This shouldn't affect the AVR builds at all. ::: ### Conditional Configuration @@ -118,11 +118,11 @@ The following defaults are based on what has been implemented for STM32 boards. | Feature | Notes | |----------------------------------------------|------------------------------------------------------------------------------------------------------------------| -| [Audio](feature_audio) | Enabled | -| [RGB Lighting](feature_rgblight) | Disabled | -| [Backlight](feature_backlight) | Forces [task driven PWM](feature_backlight#software-pwm-driver) until ARM can provide automatic configuration | +| [Audio](features/audio) | Enabled | +| [RGB Lighting](features/rgblight) | Disabled | +| [Backlight](features/backlight) | Forces [task driven PWM](features/backlight#software-pwm-driver) until ARM can provide automatic configuration | | USB Host (e.g. USB-USB converter) | Not supported (USB host code is AVR specific and is not currently supported on ARM) | -| [Split keyboards](feature_split_keyboard) | Partial - heavily dependent on enabled features | +| [Split keyboards](features/split_keyboard) | Partial - heavily dependent on enabled features | ### Adafruit KB2040 {#kb2040} @@ -130,10 +130,10 @@ The following defaults are based on what has been implemented for [RP2040](platf | Feature | Notes | |----------------------------------------------|------------------------------------------------------------------------------------------------------------------| -| [RGB Lighting](feature_rgblight) | Enabled via `PIO` vendor driver | -| [Backlight](feature_backlight) | Forces [task driven PWM](feature_backlight#software-pwm-driver) until ARM can provide automatic configuration | +| [RGB Lighting](features/rgblight) | Enabled via `PIO` vendor driver | +| [Backlight](features/backlight) | Forces [task driven PWM](features/backlight#software-pwm-driver) until ARM can provide automatic configuration | | USB Host (e.g. USB-USB converter) | Not supported (USB host code is AVR specific and is not currently supported on ARM) | -| [Split keyboards](feature_split_keyboard) | Partial via `PIO` vendor driver - heavily dependent on enabled features | +| [Split keyboards](features/split_keyboard) | Partial via `PIO` vendor driver - heavily dependent on enabled features | ### SparkFun Pro Micro - RP2040, Blok, Bit-C PRO and Michi {#promicro_rp2040 } diff --git a/docs/feature_eeprom.md b/docs/feature_eeprom.md index 63026d3c102..2912407ac76 100644 --- a/docs/feature_eeprom.md +++ b/docs/feature_eeprom.md @@ -109,7 +109,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } } ``` -And lastly, you want to add the `eeconfig_init_user` function, so that when the EEPROM is reset, you can specify default values, and even custom actions. To force an EEPROM reset, use the `EE_CLR` keycode or [Bootmagic Lite](feature_bootmagic) functionallity. For example, if you want to set rgb layer indication by default, and save the default valued. +And lastly, you want to add the `eeconfig_init_user` function, so that when the EEPROM is reset, you can specify default values, and even custom actions. To force an EEPROM reset, use the `EE_CLR` keycode or [Bootmagic Lite](features/bootmagic) functionallity. For example, if you want to set rgb layer indication by default, and save the default valued. ```c void eeconfig_init_user(void) { // EEPROM is getting reset! diff --git a/docs/feature_layers.md b/docs/feature_layers.md index 77b6ef95313..fe9932fadbe 100644 --- a/docs/feature_layers.md +++ b/docs/feature_layers.md @@ -27,7 +27,7 @@ For a similar reason, the `layer` argument of `LM()` is also limited to layers 0 |:---------------:|:----------------------:|:------------------------:|:----------------:| | ❌ | ❌ | ❌ | ✅ | -Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, [Tap Dance](feature_tap_dance#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) can be used to accomplish this. +Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, [Tap Dance](features/tap_dance#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) can be used to accomplish this. ## Working with Layers {#working-with-layers} @@ -104,7 +104,7 @@ This runs code every time that the layers get changed. This can be useful for l ### Example `layer_state_set_*` Implementation -This example shows how to set the [RGB Underglow](feature_rgblight) lights based on the layer, using the Planck as an example. +This example shows how to set the [RGB Underglow](features/rgblight) lights based on the layer, using the Planck as an example. ```c layer_state_t layer_state_set_user(layer_state_t state) { diff --git a/docs/feature_macros.md b/docs/feature_macros.md index d5a830c0ef5..055bb3ff8f7 100644 --- a/docs/feature_macros.md +++ b/docs/feature_macros.md @@ -86,7 +86,7 @@ All objects have one required key: `action`. This tells QMK what the object does Only basic keycodes (prefixed by `KC_`) are supported. Do not include the `KC_` prefix when listing keycodes. * `beep` - * Play a bell if the keyboard has [audio enabled](feature_audio). + * Play a bell if the keyboard has [audio enabled](features/audio). * Example: `{"action": "beep"}` * `delay` * Pause macro playback. Duration is specified in milliseconds (ms). @@ -108,7 +108,7 @@ Only basic keycodes (prefixed by `KC_`) are supported. Do not include the `KC_` ### `SEND_STRING()` & `process_record_user` -See also: [Send String](feature_send_string) +See also: [Send String](features/send_string) Sometimes you want a key to type out words or phrases. For the most common situations, we've provided `SEND_STRING()`, which will type out a string (i.e. a sequence of characters) for you. All ASCII characters that are easily translatable to a keycode are supported (e.g. `qmk 123\n\t`). diff --git a/docs/feature_audio.md b/docs/features/audio.md similarity index 99% rename from docs/feature_audio.md rename to docs/features/audio.md index ec28860ae9f..2f5e5b2d981 100644 --- a/docs/feature_audio.md +++ b/docs/features/audio.md @@ -27,7 +27,7 @@ per speaker is - for example with a piezo buzzer - the black lead to Ground, and ## ARM based boards -for more technical details, see the notes on [Audio driver](audio_driver). +for more technical details, see the notes on [Audio driver](../drivers/audio). ### DAC (basic) @@ -196,7 +196,7 @@ These keycodes turn all of the audio functionality on and off. Turning it off m |`GUITAR_SONG` | `GUITAR_SOUND` |Plays when the guitar music mode is selected (process_music.c) | |`VIOLIN_SONG` | `VIOLIN_SOUND` |Plays when the violin music mode is selected (process_music.c) | |`MAJOR_SONG` | `MAJOR_SOUND` |Plays when the major music mode is selected (process_music.c) | -|`DEFAULT_LAYER_SONGS` | *Not defined* |Plays song when switched default layers with [`set_single_persistent_default_layer(layer)`](ref_functions.md#setting-the-persistent-default-layer)(quantum.c). | +|`DEFAULT_LAYER_SONGS` | *Not defined* |Plays song when switched default layers with [`set_single_persistent_default_layer(layer)`](../ref_functions#setting-the-persistent-default-layer)(quantum.c). | |`SENDSTRING_BELL` | *Not defined* |Plays chime when the "enter" ("\a") character is sent (send_string.c) | ## Tempo @@ -354,7 +354,7 @@ You can configure the default, min and max frequencies, the stepping and built i ## MIDI Functionality -See [MIDI](feature_midi) +See [MIDI](midi) ## Audio Keycodes diff --git a/docs/feature_auto_shift.md b/docs/features/auto_shift.md similarity index 97% rename from docs/feature_auto_shift.md rename to docs/features/auto_shift.md index 53635e39f06..45b9048f039 100644 --- a/docs/feature_auto_shift.md +++ b/docs/features/auto_shift.md @@ -294,7 +294,7 @@ Holding and releasing a Tap Hold key without pressing another key will ordinaril result in only the hold. With `retro shift` enabled this action will instead produce a shifted version of the tap keycode on release. -It does not require [Retro Tapping](tap_hold#retro-tapping) to be enabled, and +It does not require [Retro Tapping](../tap_hold#retro-tapping) to be enabled, and if both are enabled the state of `retro tapping` will only apply if the tap keycode is not matched by Auto Shift. `RETRO_TAPPING_PER_KEY` and its corresponding function, however, are checked before `retro shift` is applied. @@ -318,10 +318,10 @@ Without a value set, holds of any length without an interrupting key will produc This value (if set) must be greater than one's `TAPPING_TERM`, as the key press must be designated as a 'hold' by `process_tapping` before we send the modifier. -[Per-key tapping terms](tap_hold#tapping-term) can be used as a workaround. +[Per-key tapping terms](../tap_hold#tapping-term) can be used as a workaround. There is no such limitation in regards to `AUTO_SHIFT_TIMEOUT` for normal keys. -**Note:** Tap Holds must be added to Auto Shift, see [here.](feature_auto_shift#auto-shift-per-key) +**Note:** Tap Holds must be added to Auto Shift, see [here.](auto_shift#auto-shift-per-key) `IS_RETRO` may be helpful if one wants all Tap Holds retro shifted. ### Retro Shift and Tap Hold Configurations @@ -330,7 +330,7 @@ Tap Hold Configurations work a little differently when using Retro Shift. Referencing `TAPPING_TERM` makes little sense, as holding longer would result in shifting one of the keys. -`RETRO_SHIFT` enables [`PERMISSIVE_HOLD`-like behaviour](tap_hold#permissive-hold) (even if not explicitly enabled) on all mod-taps for which `RETRO_SHIFT` applies. +`RETRO_SHIFT` enables [`PERMISSIVE_HOLD`-like behaviour](../tap_hold#permissive-hold) (even if not explicitly enabled) on all mod-taps for which `RETRO_SHIFT` applies. ## Using Auto Shift Setup diff --git a/docs/feature_autocorrect.md b/docs/features/autocorrect.md similarity index 98% rename from docs/feature_autocorrect.md rename to docs/features/autocorrect.md index 1ad582207aa..df3f2e0fd8f 100644 --- a/docs/feature_autocorrect.md +++ b/docs/features/autocorrect.md @@ -113,7 +113,7 @@ Additionally, you can use the `AC_TOGG` keycode to toggle the on/off status for Callback function `bool process_autocorrect_user(uint16_t *keycode, keyrecord_t *record, uint8_t *typo_buffer_size, uint8_t *mods)` is available to customise incoming keycodes and handle exceptions. You can use this function to sanitise input before they are passed onto the autocorrect engine ::: tip -Sanitisation of input is required because autocorrect will only match 8-bit [basic keycodes](keycodes_basic) for typos. If valid modifier keys or 16-bit keycodes that are part of a user's word input (such as Shift + A) is passed through, they will fail typo letter detection. For example a [Mod-Tap](mod_tap) key such as `LCTL_T(KC_A)` is 16-bit and should be masked for the 8-bit `KC_A`. +Sanitisation of input is required because autocorrect will only match 8-bit [basic keycodes](../keycodes_basic) for typos. If valid modifier keys or 16-bit keycodes that are part of a user's word input (such as Shift + A) is passed through, they will fail typo letter detection. For example a [Mod-Tap](../mod_tap) key such as `LCTL_T(KC_A)` is 16-bit and should be masked for the 8-bit `KC_A`. ::: The default user callback function is found inside `quantum/process_keycode/process_autocorrect.c`. It covers most use-cases for QMK special functions and quantum keycodes, including [overriding autocorrect](#overriding-autocorrect) with a modifier other than shift. The `process_autocorrect_user` function is `weak` defined to allow user's copy inside `keymap.c` (or code files) to overwrite it. diff --git a/docs/feature_backlight.md b/docs/features/backlight.md similarity index 97% rename from docs/feature_backlight.md rename to docs/features/backlight.md index 545d7be9495..94726756fdb 100644 --- a/docs/feature_backlight.md +++ b/docs/features/backlight.md @@ -1,6 +1,6 @@ # Backlighting {#backlighting} -Many keyboards support backlit keys by way of individual LEDs placed through or underneath the keyswitches. This feature is distinct from both the [RGB Underglow](feature_rgblight) and [RGB Matrix](feature_rgb_matrix) features as it usually allows for only a single colour per switch, though you can obviously install multiple different single coloured LEDs on a keyboard. +Many keyboards support backlit keys by way of individual LEDs placed through or underneath the keyswitches. This feature is distinct from both the [RGB Underglow](rgblight) and [RGB Matrix](rgb_matrix) features as it usually allows for only a single colour per switch, though you can obviously install multiple different single coloured LEDs on a keyboard. QMK is able to control the brightness of these LEDs by switching them on and off rapidly in a certain ratio, a technique known as *Pulse Width Modulation*, or PWM. By altering the duty cycle of the PWM signal, it creates the illusion of dimming. @@ -153,7 +153,7 @@ The following `#define`s apply only to the `timer` driver: |-----------------------|-------|----------------| |`BACKLIGHT_PWM_TIMER` |`1` |The timer to use| -Note that the choice of timer may conflict with the [Audio](feature_audio) feature. +Note that the choice of timer may conflict with the [Audio](audio) feature. ## ChibiOS/ARM Configuration {#arm-configuration} diff --git a/docs/feature_bluetooth.md b/docs/features/bluetooth.md similarity index 96% rename from docs/feature_bluetooth.md rename to docs/features/bluetooth.md index 7562a75447d..1dbf15f4e10 100644 --- a/docs/feature_bluetooth.md +++ b/docs/features/bluetooth.md @@ -26,7 +26,7 @@ A Bluefruit UART friend can be converted to an SPI friend, however this [require ## Bluetooth Rules.mk Options -The currently supported Bluetooth chipsets do not support [N-Key Rollover (NKRO)](reference_glossary#n-key-rollover-nkro), so `rules.mk` must contain `NKRO_ENABLE = no`. +The currently supported Bluetooth chipsets do not support [N-Key Rollover (NKRO)](../reference_glossary#n-key-rollover-nkro), so `rules.mk` must contain `NKRO_ENABLE = no`. Add the following to your `rules.mk`: diff --git a/docs/feature_bootmagic.md b/docs/features/bootmagic.md similarity index 87% rename from docs/feature_bootmagic.md rename to docs/features/bootmagic.md index df0344ee8e9..49fae5ba450 100644 --- a/docs/feature_bootmagic.md +++ b/docs/features/bootmagic.md @@ -25,7 +25,7 @@ Using Bootmagic will **always reset** the EEPROM, so you will lose any settings ## Split Keyboards -When [handedness](feature_split_keyboard#setting-handedness) is predetermined via options like `SPLIT_HAND_PIN` or `EE_HANDS`, you might need to configure a different key between halves. To identify the correct key for the right half, examine the split key matrix defined in the `.h` file, e.g.: +When [handedness](split_keyboard#setting-handedness) is predetermined via options like `SPLIT_HAND_PIN` or `EE_HANDS`, you might need to configure a different key between halves. To identify the correct key for the right half, examine the split key matrix defined in the `.h` file, e.g.: ```c #define LAYOUT_split_3x5_2( \ @@ -80,6 +80,6 @@ You can define additional logic here. For instance, resetting the EEPROM or requ ## Addenda -To manipulate settings that were formerly configured through the now-deprecated full Bootmagic feature, see [Magic Keycodes](keycodes_magic). +To manipulate settings that were formerly configured through the now-deprecated full Bootmagic feature, see [Magic Keycodes](../keycodes_magic). -The Command feature, formerly known as Magic, also allows you to control different aspects of your keyboard. While it shares some functionality with Magic Keycodes, it also allows you to do things that Magic Keycodes cannot, such as printing version information to the console. For more information, see [Command](feature_command). +The Command feature, formerly known as Magic, also allows you to control different aspects of your keyboard. While it shares some functionality with Magic Keycodes, it also allows you to do things that Magic Keycodes cannot, such as printing version information to the console. For more information, see [Command](command). diff --git a/docs/feature_caps_word.md b/docs/features/caps_word.md similarity index 98% rename from docs/feature_caps_word.md rename to docs/features/caps_word.md index 666edecb6ec..15361aab962 100644 --- a/docs/feature_caps_word.md +++ b/docs/features/caps_word.md @@ -62,7 +62,7 @@ Next, use one the following methods to activate Caps Word: * **Custom activation**: You can activate Caps Word from code by calling `caps_word_on()`. This may be used to activate Caps Word through [a - combo](feature_combo) or [tap dance](feature_tap_dance) or any means + combo](combo) or [tap dance](tap_dance) or any means you like. ### Troubleshooting: Command {#troubleshooting-command} @@ -71,7 +71,7 @@ When using `BOTH_SHIFTS_TURNS_ON_CAPS_WORD`, you might see a compile message **"BOTH_SHIFTS_TURNS_ON_CAPS_WORD and Command should not be enabled at the same time, since both use the Left Shift + Right Shift key combination."** -Many keyboards enable the [Command feature](feature_command), which by +Many keyboards enable the [Command feature](command), which by default is also activated using the Left Shift + Right Shift key combination. To fix this conflict, please disable Command by adding in rules.mk: diff --git a/docs/feature_combo.md b/docs/features/combo.md similarity index 98% rename from docs/feature_combo.md rename to docs/features/combo.md index b49a4448049..bdb8c4b15fc 100644 --- a/docs/feature_combo.md +++ b/docs/features/combo.md @@ -18,7 +18,7 @@ combo_t key_combos[] = { This will send "Escape" if you hit the A and B keys, and Ctrl+Z when you hit the C and D keys. ## Advanced Keycodes Support -Advanced keycodes, such as [Mod-Tap](mod_tap) and [Tap Dance](feature_tap_dance) are also supported together with combos. If you use these advanced keycodes in your keymap, you will need to place the full keycode in the combo definition, e.g.: +Advanced keycodes, such as [Mod-Tap](../mod_tap) and [Tap Dance](tap_dance) are also supported together with combos. If you use these advanced keycodes in your keymap, you will need to place the full keycode in the combo definition, e.g.: ```c const uint16_t PROGMEM test_combo1[] = {LSFT_T(KC_A), LT(1, KC_B), COMBO_END}; @@ -99,7 +99,7 @@ void process_combo_event(uint16_t combo_index, bool pressed) { This will send "john.doe@example.com" if you chord E and M together, and clear the current line with Backspace and Left-Shift. You could change this to do stuff like play sounds or change settings. -It is worth noting that `COMBO_ACTION`s are not needed anymore. As of [PR#8591](https://github.com/qmk/qmk_firmware/pull/8591/), it is possible to run your own custom keycodes from combos. Just define the custom keycode, program its functionality in `process_record_user`, and define a combo with `COMBO(, )`. See the first example in [Macros](feature_macros). +It is worth noting that `COMBO_ACTION`s are not needed anymore. As of [PR#8591](https://github.com/qmk/qmk_firmware/pull/8591/), it is possible to run your own custom keycodes from combos. Just define the custom keycode, program its functionality in `process_record_user`, and define a combo with `COMBO(, )`. See the first example in [Macros](../feature_macros). ## Keycodes You can enable, disable and toggle the Combo feature on the fly. This is useful if you need to disable them temporarily, such as for a game. The following keycodes are available for use in your `keymap.c` diff --git a/docs/feature_command.md b/docs/features/command.md similarity index 95% rename from docs/feature_command.md rename to docs/features/command.md index 4aba9cfb630..7ad45103c78 100644 --- a/docs/feature_command.md +++ b/docs/features/command.md @@ -1,6 +1,6 @@ # Command -Command, formerly known as Magic, is a way to change your keyboard's behavior without having to flash or unplug it to use [Bootmagic Lite](feature_bootmagic). There is a lot of overlap between this functionality and the [Magic Keycodes](keycodes_magic). Wherever possible we encourage you to use that feature instead of Command. +Command, formerly known as Magic, is a way to change your keyboard's behavior without having to flash or unplug it to use [Bootmagic Lite](bootmagic). There is a lot of overlap between this functionality and the [Magic Keycodes](../keycodes_magic). Wherever possible we encourage you to use that feature instead of Command. On some keyboards Command is disabled by default. If this is the case, it must be explicitly enabled in your `rules.mk`: diff --git a/docs/feature_digitizer.md b/docs/features/digitizer.md similarity index 96% rename from docs/feature_digitizer.md rename to docs/features/digitizer.md index 475d5b4d51f..e5248776368 100644 --- a/docs/feature_digitizer.md +++ b/docs/features/digitizer.md @@ -1,6 +1,6 @@ # Digitizer {#digitizer} -Digitizers allow the mouse cursor to be placed at absolute coordinates, unlike the [Pointing Device](feature_pointing_device) feature which applies relative displacements. +Digitizers allow the mouse cursor to be placed at absolute coordinates, unlike the [Pointing Device](pointing_device) feature which applies relative displacements. This feature implements a stylus device with a tip switch and barrel switch (generally equivalent to the primary and secondary mouse buttons respectively). Tip pressure is not currently implemented. diff --git a/docs/feature_dip_switch.md b/docs/features/dip_switch.md similarity index 100% rename from docs/feature_dip_switch.md rename to docs/features/dip_switch.md diff --git a/docs/feature_dynamic_macros.md b/docs/features/dynamic_macros.md similarity index 100% rename from docs/feature_dynamic_macros.md rename to docs/features/dynamic_macros.md diff --git a/docs/feature_encoders.md b/docs/features/encoders.md similarity index 100% rename from docs/feature_encoders.md rename to docs/features/encoders.md diff --git a/docs/feature_grave_esc.md b/docs/features/grave_esc.md similarity index 100% rename from docs/feature_grave_esc.md rename to docs/features/grave_esc.md diff --git a/docs/feature_haptic_feedback.md b/docs/features/haptic_feedback.md similarity index 99% rename from docs/feature_haptic_feedback.md rename to docs/features/haptic_feedback.md index 16370327cbc..52667965a04 100644 --- a/docs/feature_haptic_feedback.md +++ b/docs/features/haptic_feedback.md @@ -192,11 +192,11 @@ The Haptic Exclusion is implemented as `__attribute__((weak)) bool get_haptic_en With the entry of `#define NO_HAPTIC_MOD` in config.h, the following keys will not trigger feedback: * Usual modifier keys such as Control/Shift/Alt/Gui (For example `KC_LCTL`) -* `MO()` momentary keys. See also [Layers](feature_layers). +* `MO()` momentary keys. See also [Layers](../feature_layers). * `LM()` momentary keys with mod active. * `LT()` layer tap keys, when held to activate a layer. However when tapped, and the key is quickly released, and sends a keycode, haptic feedback is still triggered. * `TT()` layer tap toggle keys, when held to activate a layer. However when tapped `TAPPING_TOGGLE` times to permanently toggle the layer, on the last tap haptic feedback is still triggered. -* `MT()` mod tap keys, when held to keep a usual modifier key pressed. However when tapped, and the key is quickly released, and sends a keycode, haptic feedback is still triggered. See also [Mod-Tap](mod_tap). +* `MT()` mod tap keys, when held to keep a usual modifier key pressed. However when tapped, and the key is quickly released, and sends a keycode, haptic feedback is still triggered. See also [Mod-Tap](../mod_tap). ### NO_HAPTIC_ALPHA With the entry of `#define NO_HAPTIC_ALPHA` in config.h, none of the alpha keys (A ... Z) will trigger a feedback. diff --git a/docs/feature_hd44780.md b/docs/features/hd44780.md similarity index 100% rename from docs/feature_hd44780.md rename to docs/features/hd44780.md diff --git a/docs/feature_joystick.md b/docs/features/joystick.md similarity index 98% rename from docs/feature_joystick.md rename to docs/features/joystick.md index 75bffa605ae..f3fd209d5a9 100644 --- a/docs/feature_joystick.md +++ b/docs/features/joystick.md @@ -1,6 +1,6 @@ # Joystick {#joystick} -This feature provides game controller input as a joystick device supporting up to 6 axes and 32 buttons. Axes can be read either from an [ADC-capable input pin](adc_driver), or can be virtual, so that its value is provided by your code. +This feature provides game controller input as a joystick device supporting up to 6 axes and 32 buttons. Axes can be read either from an [ADC-capable input pin](../drivers/adc), or can be virtual, so that its value is provided by your code. An analog device such as a [potentiometer](https://en.wikipedia.org/wiki/Potentiometer) found on an analog joystick's axes is based on a voltage divider, where adjusting the movable wiper controls the output voltage which can then be read by the microcontroller's ADC. diff --git a/docs/feature_key_lock.md b/docs/features/key_lock.md similarity index 86% rename from docs/feature_key_lock.md rename to docs/features/key_lock.md index 1a0a2dfb601..ba3b71ef06c 100644 --- a/docs/feature_key_lock.md +++ b/docs/features/key_lock.md @@ -16,8 +16,8 @@ First, enable Key Lock by setting `KEY_LOCK_ENABLE = yes` in your `rules.mk`. Th ## Caveats -Key Lock is only able to hold standard action keys and [One Shot modifier](one_shot_keys) keys (for example, if you have your Shift defined as `OSM(MOD_LSFT)`). -This does not include any of the QMK special functions (except One Shot modifiers), or shifted versions of keys such as `KC_LPRN`. If it's in the [Basic Keycodes](keycodes_basic) list, it can be held. +Key Lock is only able to hold standard action keys and [One Shot modifier](../one_shot_keys) keys (for example, if you have your Shift defined as `OSM(MOD_LSFT)`). +This does not include any of the QMK special functions (except One Shot modifiers), or shifted versions of keys such as `KC_LPRN`. If it's in the [Basic Keycodes](../keycodes_basic) list, it can be held. Switching layers will not cancel the Key Lock. The Key Lock can be cancelled by calling the `cancel_key_lock()` function. diff --git a/docs/feature_key_overrides.md b/docs/features/key_overrides.md similarity index 95% rename from docs/feature_key_overrides.md rename to docs/features/key_overrides.md index b9fbd35966a..4c568f16791 100644 --- a/docs/feature_key_overrides.md +++ b/docs/features/key_overrides.md @@ -103,7 +103,7 @@ const key_override_t **key_overrides = (const key_override_t *[]){ ``` ### Flexible macOS-friendly Grave Escape {#flexible-macos-friendly-grave-escape} -The [Grave Escape feature](feature_grave_esc) is limited in its configurability and has [bugs when used on macOS](feature_grave_esc#caveats). Key overrides can be used to achieve a similar functionality as Grave Escape, but with more customization and without bugs on macOS. +The [Grave Escape feature](grave_esc) is limited in its configurability and has [bugs when used on macOS](grave_esc#caveats). Key overrides can be used to achieve a similar functionality as Grave Escape, but with more customization and without bugs on macOS. ```c // Shift + esc = ~ @@ -224,7 +224,7 @@ The duration of the key repeat delay is controlled with the `KEY_OVERRIDE_REPEAT ## Difference to Combos {#difference-to-combos} -Note that key overrides are very different from [combos](feature_combo). Combos require that you press down several keys almost _at the same time_ and can work with any combination of non-modifier keys. Key overrides work like keyboard shortcuts (e.g. `ctrl` + `z`): They take combinations of _multiple_ modifiers and _one_ non-modifier key to then perform some custom action. Key overrides are implemented with much care to behave just like normal keyboard shortcuts would in regards to the order of pressed keys, timing, and interaction with other pressed keys. There are a number of optional settings that can be used to really fine-tune the behavior of each key override as well. Using key overrides also does not delay key input for regular key presses, which inherently happens in combos and may be undesirable. +Note that key overrides are very different from [combos](combo). Combos require that you press down several keys almost _at the same time_ and can work with any combination of non-modifier keys. Key overrides work like keyboard shortcuts (e.g. `ctrl` + `z`): They take combinations of _multiple_ modifiers and _one_ non-modifier key to then perform some custom action. Key overrides are implemented with much care to behave just like normal keyboard shortcuts would in regards to the order of pressed keys, timing, and interaction with other pressed keys. There are a number of optional settings that can be used to really fine-tune the behavior of each key override as well. Using key overrides also does not delay key input for regular key presses, which inherently happens in combos and may be undesirable. ## Solution to the problem of flashing modifiers {#neutralize-flashing-modifiers} diff --git a/docs/feature_leader_key.md b/docs/features/leader_key.md similarity index 94% rename from docs/feature_leader_key.md rename to docs/features/leader_key.md index 641c2d7ae58..a36e630a366 100644 --- a/docs/feature_leader_key.md +++ b/docs/features/leader_key.md @@ -1,6 +1,6 @@ # The Leader Key: A New Kind of Modifier {#the-leader-key} -If you're a Vim user, you probably know what a Leader key is. In contrast to [Combos](feature_combo), the Leader key allows you to hit a *sequence* of up to five keys instead, which triggers some custom functionality once complete. +If you're a Vim user, you probably know what a Leader key is. In contrast to [Combos](combo), the Leader key allows you to hit a *sequence* of up to five keys instead, which triggers some custom functionality once complete. ## Usage {#usage} @@ -86,7 +86,7 @@ Now, after you hit the leader key, you will have an infinite amount of time to s ### Strict Key Processing {#strict-key-processing} -By default, only the "tap keycode" portions of [Mod-Taps](mod_tap) and [Layer Taps](feature_layers#switching-and-toggling-layers) are added to the sequence buffer. This means if you press eg. `LT(3, KC_A)` as part of a sequence, `KC_A` will be added to the buffer, rather than the entire `LT(3, KC_A)` keycode. +By default, only the "tap keycode" portions of [Mod-Taps](../mod_tap) and [Layer Taps](../feature_layers#switching-and-toggling-layers) are added to the sequence buffer. This means if you press eg. `LT(3, KC_A)` as part of a sequence, `KC_A` will be added to the buffer, rather than the entire `LT(3, KC_A)` keycode. This gives a more expected behaviour for most users, however you may want to change this. diff --git a/docs/feature_led_indicators.md b/docs/features/led_indicators.md similarity index 98% rename from docs/feature_led_indicators.md rename to docs/features/led_indicators.md index e28c222e765..8435c69a552 100644 --- a/docs/feature_led_indicators.md +++ b/docs/features/led_indicators.md @@ -1,7 +1,7 @@ # LED Indicators ::: tip -LED indicators on split keyboards will require state information synced to the slave half (e.g. `#define SPLIT_LED_STATE_ENABLE`). See [data sync options](feature_split_keyboard#data-sync-options) for more details. +LED indicators on split keyboards will require state information synced to the slave half (e.g. `#define SPLIT_LED_STATE_ENABLE`). See [data sync options](split_keyboard#data-sync-options) for more details. ::: QMK provides methods to read 5 of the LEDs defined in the HID spec: diff --git a/docs/feature_led_matrix.md b/docs/features/led_matrix.md similarity index 99% rename from docs/feature_led_matrix.md rename to docs/features/led_matrix.md index 78afb36d2c6..fee7b139bce 100644 --- a/docs/feature_led_matrix.md +++ b/docs/features/led_matrix.md @@ -2,7 +2,7 @@ This feature allows you to use LED matrices driven by external drivers. It hooks into the backlight system so you can use the same keycodes as backlighting to control it. -If you want to use RGB LED's you should use the [RGB Matrix Subsystem](feature_rgb_matrix) instead. +If you want to use RGB LED's you should use the [RGB Matrix Subsystem](rgb_matrix) instead. ## Driver configuration {#driver-configuration} --- diff --git a/docs/feature_midi.md b/docs/features/midi.md similarity index 99% rename from docs/feature_midi.md rename to docs/features/midi.md index 89c6af05085..32c062e54d2 100644 --- a/docs/feature_midi.md +++ b/docs/features/midi.md @@ -34,7 +34,7 @@ To enable advanced MIDI, add the following to your `config.h`: If you're aiming to emulate the features of something like a Launchpad or other MIDI controller you'll need to access the internal MIDI device directly. -Because there are so many possible CC messages, not all of them are implemented as keycodes. Additionally, you might need to provide more than just two values that you would get from a keycode (pressed and released) - for example, the analog values from a fader or a potentiometer. So, you will need to implement [custom keycodes](feature_macros) if you want to use them in your keymap directly using `process_record_user()`. +Because there are so many possible CC messages, not all of them are implemented as keycodes. Additionally, you might need to provide more than just two values that you would get from a keycode (pressed and released) - for example, the analog values from a fader or a potentiometer. So, you will need to implement [custom keycodes](../feature_macros) if you want to use them in your keymap directly using `process_record_user()`. For reference of all the possible control code numbers see [MIDI Specification](#midi-specification) diff --git a/docs/feature_mouse_keys.md b/docs/features/mouse_keys.md similarity index 98% rename from docs/feature_mouse_keys.md rename to docs/features/mouse_keys.md index 240f6bf9be0..c2b3e98f424 100644 --- a/docs/feature_mouse_keys.md +++ b/docs/features/mouse_keys.md @@ -205,4 +205,4 @@ Tips: ## Use with PS/2 Mouse and Pointing Device -Mouse keys button state is shared with [PS/2 mouse](feature_ps2_mouse) and [pointing device](feature_pointing_device) so mouse keys button presses can be used for clicks and drags. +Mouse keys button state is shared with [PS/2 mouse](ps2_mouse) and [pointing device](pointing_device) so mouse keys button presses can be used for clicks and drags. diff --git a/docs/feature_oled_driver.md b/docs/features/oled_driver.md similarity index 100% rename from docs/feature_oled_driver.md rename to docs/features/oled_driver.md diff --git a/docs/feature_os_detection.md b/docs/features/os_detection.md similarity index 100% rename from docs/feature_os_detection.md rename to docs/features/os_detection.md diff --git a/docs/feature_pointing_device.md b/docs/features/pointing_device.md similarity index 98% rename from docs/feature_pointing_device.md rename to docs/features/pointing_device.md index 933202a009b..a6bf521a184 100644 --- a/docs/feature_pointing_device.md +++ b/docs/features/pointing_device.md @@ -420,7 +420,7 @@ Any pointing device with a lift/contact status can integrate inertial cursor fea ## Split Keyboard Configuration -The following configuration options are only available when using `SPLIT_POINTING_ENABLE` see [data sync options](feature_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. +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. | Setting | Description | Default | | ------------------------------------ | ----------------------------------------------------------------------------------------------------- | ------------- | @@ -434,7 +434,7 @@ The following configuration options are only available when using `SPLIT_POINTIN | `POINTING_DEVICE_INVERT_Y_RIGHT` | (Optional) Inverts the Y axis report. | _not defined_ | ::: warning -If there is a `_RIGHT` configuration option or callback, the [common configuration](feature_pointing_device#common-configuration) option will work for the left. For correct left/right detection you should setup a [handedness option](feature_split_keyboard#setting-handedness), `EE_HANDS` is usually a good option for an existing board that doesn't do handedness by hardware. +If there is a `_RIGHT` configuration option or callback, the [common configuration](pointing_device#common-configuration) option will work for the left. For correct left/right detection you should setup a [handedness option](split_keyboard#setting-handedness), `EE_HANDS` is usually a good option for an existing board that doesn't do handedness by hardware. ::: @@ -458,7 +458,7 @@ If there is a `_RIGHT` configuration option or callback, the [common configurati ## Split Keyboard Callbacks and Functions -The combined functions below are only available when using `SPLIT_POINTING_ENABLE` and `POINTING_DEVICE_COMBINED`. The 2 callbacks `pointing_device_task_combined_*` replace the single sided equivalents above. See the [combined pointing devices example](feature_pointing_device#combined-pointing-devices) +The combined functions below are only available when using `SPLIT_POINTING_ENABLE` and `POINTING_DEVICE_COMBINED`. The 2 callbacks `pointing_device_task_combined_*` replace the single sided equivalents above. See the [combined pointing devices example](pointing_device#combined-pointing-devices) | Function | Description | | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | @@ -684,7 +684,7 @@ If you are having issues with pointing device drivers debug messages can be enab ``` ::: tip -The messages will be printed out to the `CONSOLE` output. For additional information, refer to [Debugging/Troubleshooting QMK](faq_debug). +The messages will be printed out to the `CONSOLE` output. For additional information, refer to [Debugging/Troubleshooting QMK](../faq_debug). ::: diff --git a/docs/feature_programmable_button.md b/docs/features/programmable_button.md similarity index 100% rename from docs/feature_programmable_button.md rename to docs/features/programmable_button.md diff --git a/docs/feature_ps2_mouse.md b/docs/features/ps2_mouse.md similarity index 100% rename from docs/feature_ps2_mouse.md rename to docs/features/ps2_mouse.md diff --git a/docs/feature_rawhid.md b/docs/features/rawhid.md similarity index 100% rename from docs/feature_rawhid.md rename to docs/features/rawhid.md diff --git a/docs/feature_repeat_key.md b/docs/features/repeat_key.md similarity index 98% rename from docs/feature_repeat_key.md rename to docs/features/repeat_key.md index c353ec5b59b..53495e0f4d6 100644 --- a/docs/feature_repeat_key.md +++ b/docs/features/repeat_key.md @@ -172,7 +172,7 @@ uint16_t get_alt_repeat_key_keycode_user(uint16_t keycode, uint8_t mods) { #### Typing shortcuts A useful possibility is having Alternate Repeat press [a -macro](feature_macros). This way macros can be used without having to +macro](../feature_macros). This way macros can be used without having to dedicate keys to them. The following defines a couple shortcuts. * Typing K, Alt Repeat produces "`keyboard`," with the @@ -281,11 +281,8 @@ bool remember_last_key_user(uint16_t keycode, keyrecord_t* record, ``` ::: tip -See [Layer Functions](feature_layers#functions) and [Checking Modifier +See [Layer Functions](../feature_layers#functions) and [Checking Modifier State](../feature_advanced_keycodes#checking-modifier-state) for further details. ::: -State](feature_advanced_keycodes#checking-modifier-state) for further -details. - ## Handle how a key is repeated @@ -388,7 +385,7 @@ By leveraging `get_last_keycode()` in macros, it is possible to define additional, distinct "Alternate Repeat"-like keys. The following defines two keys `ALTREP2` and `ALTREP3` and implements ten shortcuts with them for common English 5-gram letter patterns, taking inspiration from -[Stenotype](feature_stenography): +[Stenotype](stenography): | Typing | Produces | Typing | Produces | diff --git a/docs/feature_rgb_matrix.md b/docs/features/rgb_matrix.md similarity index 99% rename from docs/feature_rgb_matrix.md rename to docs/features/rgb_matrix.md index b9c01dcbf5f..f7f693f239f 100644 --- a/docs/feature_rgb_matrix.md +++ b/docs/features/rgb_matrix.md @@ -2,7 +2,7 @@ This feature allows you to use RGB LED matrices driven by external drivers. It hooks into the RGBLIGHT system so you can use the same keycodes as RGBLIGHT to control it. -If you want to use single color LED's you should use the [LED Matrix Subsystem](feature_led_matrix) instead. +If you want to use single color LED's you should use the [LED Matrix Subsystem](led_matrix) instead. ## Driver configuration {#driver-configuration} --- @@ -444,7 +444,7 @@ Configure the hardware via your `config.h`: ``` ::: tip -There are additional configuration options for ARM controllers that offer increased performance over the default bitbang driver. Please see [WS2812 Driver](ws2812_driver) for more information. +There are additional configuration options for ARM controllers that offer increased performance over the default bitbang driver. Please see [WS2812 Driver](../drivers/ws2812) for more information. ::: --- @@ -619,7 +619,7 @@ All RGB keycodes are currently shared with the RGBLIGHT system: ::: warning -By default, if you have both the [RGB Light](feature_rgblight) and the RGB Matrix feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature. +By default, if you have both the [RGB Light](rgblight) and the RGB Matrix feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature. ::: ## RGB Matrix Effects {#rgb-matrix-effects} @@ -1060,7 +1060,7 @@ bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { ``` ::: tip -Split keyboards will require layer state data syncing with `#define SPLIT_LAYER_STATE_ENABLE`. See [Data Sync Options](feature_split_keyboard#data-sync-options) for more details. +Split keyboards will require layer state data syncing with `#define SPLIT_LAYER_STATE_ENABLE`. See [Data Sync Options](split_keyboard#data-sync-options) for more details. ::: #### Examples {#indicator-examples-2} @@ -1105,7 +1105,7 @@ bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { ``` ::: tip -RGB indicators on split keyboards will require state information synced to the slave half (e.g. `#define SPLIT_LAYER_STATE_ENABLE`). See [data sync options](feature_split_keyboard#data-sync-options) for more details. +RGB indicators on split keyboards will require state information synced to the slave half (e.g. `#define SPLIT_LAYER_STATE_ENABLE`). See [data sync options](split_keyboard#data-sync-options) for more details. ::: #### Indicators without RGB Matrix Effect diff --git a/docs/feature_rgblight.md b/docs/features/rgblight.md similarity index 98% rename from docs/feature_rgblight.md rename to docs/features/rgblight.md index 682d8b8cbae..ece1c104677 100644 --- a/docs/feature_rgblight.md +++ b/docs/features/rgblight.md @@ -23,7 +23,7 @@ RGBLIGHT_ENABLE = yes ``` ::: tip -There are additional configuration options for ARM controllers that offer increased performance over the default WS2812 bitbang driver. Please see [WS2812 Driver](ws2812_driver) for more information. +There are additional configuration options for ARM controllers that offer increased performance over the default WS2812 bitbang driver. Please see [WS2812 Driver](../drivers/ws2812) for more information. ::: For APA102 LEDs, add the following to your `rules.mk`: @@ -49,7 +49,7 @@ Then you should be able to use the keycodes below to change the RGB lighting to QMK uses [Hue, Saturation, and Value](https://en.wikipedia.org/wiki/HSL_and_HSV) to select colors rather than RGB. The color wheel below demonstrates how this works. -HSV Color Wheel +HSV Color Wheel Changing the **Hue** cycles around the circle.
Changing the **Saturation** moves between the inner and outer sections of the wheel, affecting the intensity of the color.
@@ -87,7 +87,7 @@ Changing the **Value** sets the overall brightness.
::: warning -By default, if you have both the RGB Light and the [RGB Matrix](feature_rgb_matrix) feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature. +By default, if you have both the RGB Light and the [RGB Matrix](rgb_matrix) feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature. ::: ## Configuration @@ -218,7 +218,7 @@ const uint8_t RGBLED_GRADIENT_RANGES[] PROGMEM = {255, 170, 127, 85, 64}; ## Lighting Layers ::: tip -**Note:** Lighting Layers is an RGB Light feature, it will not work for RGB Matrix. See [RGB Matrix Indicators](feature_rgb_matrix#indicators) for details on how to do so. +**Note:** Lighting Layers is an RGB Light feature, it will not work for RGB Matrix. See [RGB Matrix Indicators](rgb_matrix#indicators) for details on how to do so. ::: By including `#define RGBLIGHT_LAYERS` in your `config.h` file you can enable lighting layers. These make @@ -353,7 +353,7 @@ rgblight_blink_layer(2, 500); ``` ::: warning -Lighting layers on split keyboards will require layer state synced to the slave half (e.g. `#define SPLIT_LAYER_STATE_ENABLE`). See [data sync options](feature_split_keyboard#data-sync-options) for more details. +Lighting layers on split keyboards will require layer state synced to the slave half (e.g. `#define SPLIT_LAYER_STATE_ENABLE`). See [data sync options](split_keyboard#data-sync-options) for more details. ::: ### Overriding RGB Lighting on/off status diff --git a/docs/feature_secure.md b/docs/features/secure.md similarity index 97% rename from docs/feature_secure.md rename to docs/features/secure.md index 5ca9eed65fc..02ed20a470c 100644 --- a/docs/feature_secure.md +++ b/docs/features/secure.md @@ -16,7 +16,7 @@ To unlock, the user must perform a set of actions. This can optionally be config ### Automatic Locking Once unlocked, the keyboard will revert back to a locked state after the configured timeout. -The timeout can be refreshed by using the `secure_activity_event` function, for example from one of the various [hooks](custom_quantum_functions). +The timeout can be refreshed by using the `secure_activity_event` function, for example from one of the various [hooks](../custom_quantum_functions). ## Usage diff --git a/docs/feature_send_string.md b/docs/features/send_string.md similarity index 93% rename from docs/feature_send_string.md rename to docs/features/send_string.md index 97e4ccc8096..ed9311e20a5 100644 --- a/docs/feature_send_string.md +++ b/docs/features/send_string.md @@ -5,7 +5,7 @@ The Send String API is part of QMK's macro system. It allows for sequences of ke The full ASCII character set is supported, along with all of the keycodes in the Basic Keycode range (as these are the only ones that will actually be sent to the host). ::: tip -Unicode characters are **not** supported with this API -- see the [Unicode](feature_unicode) feature instead. +Unicode characters are **not** supported with this API -- see the [Unicode](unicode) feature instead. ::: ## Usage {#usage} @@ -22,12 +22,12 @@ Add the following to your `config.h`: |Define |Default |Description | |-----------------|----------------|------------------------------------------------------------------------------------------------------------| -|`SENDSTRING_BELL`|*Not defined* |If the [Audio](feature_audio) feature is enabled, the `\a` character (ASCII `BEL`) will beep the speaker.| +|`SENDSTRING_BELL`|*Not defined* |If the [Audio](audio) feature is enabled, the `\a` character (ASCII `BEL`) will beep the speaker.| |`BELL_SOUND` |`TERMINAL_SOUND`|The song to play when the `\a` character is encountered. By default, this is an eighth note of C5. | ## Keycodes {#keycodes} -The Send String functions accept C string literals, but specific keycodes can be injected with the below macros. All of the keycodes in the [Basic Keycode range](keycodes_basic) are supported (as these are the only ones that will actually be sent to the host), but with an `X_` prefix instead of `KC_`. +The Send String functions accept C string literals, but specific keycodes can be injected with the below macros. All of the keycodes in the [Basic Keycode range](../keycodes_basic) are supported (as these are the only ones that will actually be sent to the host), but with an `X_` prefix instead of `KC_`. |Macro |Description | |--------------|-------------------------------------------------------------------| @@ -48,7 +48,7 @@ The following characters are also mapped to their respective keycodes for conven ### Language Support {#language-support} -By default, Send String assumes your OS keyboard layout is set to US ANSI. If you are using a different keyboard layout, you can [override the lookup tables used to convert ASCII characters to keystrokes](reference_keymap_extras#sendstring-support). +By default, Send String assumes your OS keyboard layout is set to US ANSI. If you are using a different keyboard layout, you can [override the lookup tables used to convert ASCII characters to keystrokes](../reference_keymap_extras#sendstring-support). ## Examples {#examples} diff --git a/docs/feature_sequencer.md b/docs/features/sequencer.md similarity index 100% rename from docs/feature_sequencer.md rename to docs/features/sequencer.md diff --git a/docs/feature_space_cadet.md b/docs/features/space_cadet.md similarity index 97% rename from docs/feature_space_cadet.md rename to docs/features/space_cadet.md index cbb79e10adf..0abdaebf33a 100644 --- a/docs/feature_space_cadet.md +++ b/docs/features/space_cadet.md @@ -24,7 +24,7 @@ Firstly, in your keymap, do one of the following: ## Caveats -Space Cadet's functionality can conflict with the default Command functionality when both Shift keys are held at the same time. See the [Command feature](feature_command) for info on how to change it, or make sure that Command is disabled in your `rules.mk` with: +Space Cadet's functionality can conflict with the default Command functionality when both Shift keys are held at the same time. See the [Command feature](command) for info on how to change it, or make sure that Command is disabled in your `rules.mk` with: ```make COMMAND_ENABLE = no diff --git a/docs/feature_split_keyboard.md b/docs/features/split_keyboard.md similarity index 97% rename from docs/feature_split_keyboard.md rename to docs/features/split_keyboard.md index c39d0a7e083..6efa1c2a35c 100644 --- a/docs/feature_split_keyboard.md +++ b/docs/features/split_keyboard.md @@ -20,12 +20,12 @@ Both sides must use the same MCU family, for eg two Pro Micro-compatible control | Transport | AVR | ARM | |------------------------------|--------------------|--------------------| -| ['serial'](serial_driver) | :heavy_check_mark: | :white_check_mark: 1 | +| ['serial'](../drivers/serial) | :heavy_check_mark: | :white_check_mark: 1 | | I2C | :heavy_check_mark: | | Notes: -1. Both hardware and software limitations are detailed within the [driver documentation](serial_driver). +1. Both hardware and software limitations are detailed within the [driver documentation](../drivers/serial). ## Hardware Configuration @@ -173,10 +173,10 @@ Some controllers (e.g. Blackpill with DFU compatible bootloader) will need to be ::: ::: tip -[QMK Toolbox]() can also be used to flash EEPROM handedness files. Place the controller in bootloader mode and select menu option Tools -> EEPROM -> Set Left/Right Hand +[QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases/) can also be used to flash EEPROM handedness files. Place the controller in bootloader mode and select menu option Tools -> EEPROM -> Set Left/Right Hand ::: -This setting is not changed when re-initializing the EEPROM using the `EE_CLR` key, or using the `eeconfig_init()` function. However, if you reset the EEPROM outside of the firmware's built in options (such as flashing a file that overwrites the `EEPROM`, like how the [QMK Toolbox]()'s "Reset EEPROM" button works), you'll need to re-flash the controller with the `EEPROM` files. +This setting is not changed when re-initializing the EEPROM using the `EE_CLR` key, or using the `eeconfig_init()` function. However, if you reset the EEPROM outside of the firmware's built in options (such as flashing a file that overwrites the `EEPROM`, like how the [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases/)'s "Reset EEPROM" button works), you'll need to re-flash the controller with the `EEPROM` files. You can find the `EEPROM` files in the QMK firmware repo, [here](https://github.com/qmk/qmk_firmware/tree/master/quantum/split_common). @@ -307,7 +307,7 @@ This enables transmitting the current ST7565 on/off status to the slave side of This enables transmitting the pointing device status to the master side of the split keyboard. The purpose of this feature is to enable use pointing devices on the slave side. ::: warning -There is additional required configuration for `SPLIT_POINTING_ENABLE` outlined in the [pointing device documentation](feature_pointing_device#split-keyboard-configuration). +There is additional required configuration for `SPLIT_POINTING_ENABLE` outlined in the [pointing device documentation](pointing_device#split-keyboard-configuration). ::: ```c diff --git a/docs/feature_st7565.md b/docs/features/st7565.md similarity index 100% rename from docs/feature_st7565.md rename to docs/features/st7565.md diff --git a/docs/feature_stenography.md b/docs/features/stenography.md similarity index 98% rename from docs/feature_stenography.md rename to docs/features/stenography.md index 6827117a6b3..c6c2155a9af 100644 --- a/docs/feature_stenography.md +++ b/docs/features/stenography.md @@ -25,7 +25,7 @@ Note: Due to hardware limitations, you might not be able to run both a virtual s ::: ::: warning -Serial stenography protocols are not supported on [V-USB keyboards](compatible_microcontrollers#atmel-avr). +Serial stenography protocols are not supported on [V-USB keyboards](../compatible_microcontrollers#atmel-avr). ::: To enable stenography protocols, add the following lines to your `rules.mk`: @@ -94,7 +94,7 @@ STENO_ENABLE = yes STENO_PROTOCOL = all ``` -If you want to switch protocols programatically, as part of a custom macro for example, don't use `tap_code(QK_STENO_*)`, as `tap_code` only supports [basic keycodes](keycodes_basic). Instead, you should use `steno_set_mode(STENO_MODE_*)`, whose valid arguments are `STENO_MODE_BOLT` and `STENO_MODE_GEMINI`. +If you want to switch protocols programatically, as part of a custom macro for example, don't use `tap_code(QK_STENO_*)`, as `tap_code` only supports [basic keycodes](../keycodes_basic). Instead, you should use `steno_set_mode(STENO_MODE_*)`, whose valid arguments are `STENO_MODE_BOLT` and `STENO_MODE_GEMINI`. The default protocol is Gemini PR but the last protocol used is stored in non-volatile memory so QMK will remember your choice between reboots of your keyboard — assuming that your keyboard features (emulated) EEPROM. diff --git a/docs/feature_swap_hands.md b/docs/features/swap_hands.md similarity index 94% rename from docs/feature_swap_hands.md rename to docs/features/swap_hands.md index 7546823d841..3560fe22f09 100644 --- a/docs/feature_swap_hands.md +++ b/docs/features/swap_hands.md @@ -30,7 +30,7 @@ Note that the array indices are reversed same as the matrix and the values are o |`QK_SWAP_HANDS_TAP_TOGGLE` |`SH_TT` |Momentary swap when held, toggle when tapped | |`QK_SWAP_HANDS_ONE_SHOT` |`SH_OS` |Turn on hand swap while held or until next key press| -`SH_TT` swap-hands tap-toggle key is similar to [layer tap-toggle](feature_layers#switching-and-toggling-layers). Tapping repeatedly (5 taps by default) will toggle swap-hands on or off, like `SH_TOGG`. Tap-toggle count can be changed by defining a value for `TAPPING_TOGGLE`. +`SH_TT` swap-hands tap-toggle key is similar to [layer tap-toggle](../feature_layers#switching-and-toggling-layers). Tapping repeatedly (5 taps by default) will toggle swap-hands on or off, like `SH_TOGG`. Tap-toggle count can be changed by defining a value for `TAPPING_TOGGLE`. ## Encoder Mapping diff --git a/docs/feature_tap_dance.md b/docs/features/tap_dance.md similarity index 99% rename from docs/feature_tap_dance.md rename to docs/features/tap_dance.md index e43daf41967..3c4040db224 100644 --- a/docs/feature_tap_dance.md +++ b/docs/features/tap_dance.md @@ -17,7 +17,7 @@ Optionally, you might want to set a custom `TAPPING_TERM` time by adding somethi #define TAPPING_TERM_PER_KEY ``` -The `TAPPING_TERM` time is the maximum time allowed between taps of your Tap Dance key, and is measured in milliseconds. For example, if you used the above `#define` statement and set up a Tap Dance key that sends `Space` on single-tap and `Enter` on double-tap, then this key will send `ENT` only if you tap this key twice in less than 175ms. If you tap the key, wait more than 175ms, and tap the key again you'll end up sending `SPC SPC` instead. The `TAPPING_TERM_PER_KEY` definition is only needed if you control the tapping term through a [custom `get_tapping_term` function](tap_hold#tapping_term), which may be needed because `TAPPING_TERM` affects not just tap-dance keys. +The `TAPPING_TERM` time is the maximum time allowed between taps of your Tap Dance key, and is measured in milliseconds. For example, if you used the above `#define` statement and set up a Tap Dance key that sends `Space` on single-tap and `Enter` on double-tap, then this key will send `ENT` only if you tap this key twice in less than 175ms. If you tap the key, wait more than 175ms, and tap the key again you'll end up sending `SPC SPC` instead. The `TAPPING_TERM_PER_KEY` definition is only needed if you control the tapping term through a [custom `get_tapping_term` function](../tap_hold#tapping_term), which may be needed because `TAPPING_TERM` affects not just tap-dance keys. Next, you will want to define some tap-dance keys, which is easiest to do with the `TD()` macro. That macro takes a number which will later be used as an index into the `tap_dance_actions` array and turns it into a tap-dance keycode. @@ -33,7 +33,7 @@ After this, you'll want to use the `tap_dance_actions` array to specify what act The first option is enough for a lot of cases, that just want dual roles. For example, `ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_ENT)` will result in `Space` being sent on single-tap, `Enter` otherwise. ::: warning -Keep in mind that only [basic keycodes](keycodes_basic) are supported here. Custom keycodes are not supported. +Keep in mind that only [basic keycodes](../keycodes_basic) are supported here. Custom keycodes are not supported. ::: Similar to the first option, the second and third option are good for simple layer-switching cases. diff --git a/docs/feature_tri_layer.md b/docs/features/tri_layer.md similarity index 98% rename from docs/feature_tri_layer.md rename to docs/features/tri_layer.md index a67ec97a89f..c32e65caed0 100644 --- a/docs/feature_tri_layer.md +++ b/docs/features/tri_layer.md @@ -8,7 +8,7 @@ TRI_LAYER_ENABLE = yes Note that the "upper", "lower" and "adjust" names don't have a particular significance, they are just used to identify and clarify the behavior. Layers are processed from highest numeric value to lowest, however the values are not required to be consecutive. -For a detailed explanation of how the layer stack works, check out [Keymap Overview](keymap#keymap-and-layers). +For a detailed explanation of how the layer stack works, check out [Keymap Overview](../keymap#keymap-and-layers). ## Keycodes {#keycodes} diff --git a/docs/feature_unicode.md b/docs/features/unicode.md similarity index 98% rename from docs/feature_unicode.md rename to docs/features/unicode.md index f9295c1f572..7ed178c30d7 100644 --- a/docs/feature_unicode.md +++ b/docs/features/unicode.md @@ -31,7 +31,7 @@ Add the following to your `config.h`: ### Audio Feedback {#audio-feedback} -If you have the [Audio](feature_audio) feature enabled on your board, you can configure it to play sounds when the input mode is changed. +If you have the [Audio](audio) feature enabled on your board, you can configure it to play sounds when the input mode is changed. Add the following to your `config.h`: @@ -199,7 +199,7 @@ Emacs supports code point input with the `insert-char` command. **Mode Name:** `UNICODE_MODE_BSD` -Not currently implemented. If you're a BSD user and want to contribute support for this input mode, please [feel free](contributing)! +Not currently implemented. If you're a BSD user and want to contribute support for this input mode, please [feel free](../contributing)! ::::: diff --git a/docs/feature_wpm.md b/docs/features/wpm.md similarity index 100% rename from docs/feature_wpm.md rename to docs/features/wpm.md diff --git a/docs/flashing.md b/docs/flashing.md index c1e9f2a43d4..798331eb23d 100644 --- a/docs/flashing.md +++ b/docs/flashing.md @@ -53,7 +53,7 @@ QMK maintains [a fork of the LUFA DFU bootloader](https://github.com/qmk/lufa/tr //#define QMK_LED E6 //#define QMK_SPEAKER C6 ``` -Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](feature_bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader. +Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](features/bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader. The manufacturer and product strings are automatically pulled from `config.h`, with " Bootloader" appended to the product string. @@ -209,7 +209,7 @@ To enable the additional features, add the following defines to your `config.h`: //#define QMK_SPEAKER C6 ``` -Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](feature_bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader. +Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](features/bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader. The manufacturer and product strings are automatically pulled from `config.h`, with " Bootloader" appended to the product string. diff --git a/docs/getting_started_make_guide.md b/docs/getting_started_make_guide.md index 8a66a65c21a..59455adb30e 100644 --- a/docs/getting_started_make_guide.md +++ b/docs/getting_started_make_guide.md @@ -115,11 +115,11 @@ This allows you to send Unicode characters using `UM()` in your keyma This allows you to send Unicode characters by inputting a mnemonic corresponding to the character you want to send. You will need to maintain a mapping table in your keymap file. All possible code points (up to `0x10FFFF`) are supported. -For further details, as well as limitations, see the [Unicode page](feature_unicode). +For further details, as well as limitations, see the [Unicode page](features/unicode). `AUDIO_ENABLE` -This allows you output audio on the C6 pin (needs abstracting). See the [audio page](feature_audio) for more information. +This allows you output audio on the C6 pin (needs abstracting). See the [audio page](features/audio) for more information. `VARIABLE_TRACE` @@ -127,7 +127,7 @@ Use this to debug changes to variable values, see the [tracing variables](unit_t `KEY_LOCK_ENABLE` -This enables [key lock](feature_key_lock). +This enables [key lock](features/key_lock). `SPLIT_KEYBOARD` diff --git a/docs/hand_wire.md b/docs/hand_wire.md index 0928888f0e7..cbb91790607 100644 --- a/docs/hand_wire.md +++ b/docs/hand_wire.md @@ -88,7 +88,7 @@ Note that these methods can be combined. Prepare your lengths of wire before mo ### A note on split keyboards -If you are planning a split keyboard (e.g. Dactyl) each half will require a controller and a means of communicating between them (like a TRRS or hardwired cable). Further information can be found in the [QMK split keyboard documentation.](feature_split_keyboard) +If you are planning a split keyboard (e.g. Dactyl) each half will require a controller and a means of communicating between them (like a TRRS or hardwired cable). Further information can be found in the [QMK split keyboard documentation.](features/split_keyboard) ### Soldering diff --git a/docs/hardware_drivers.md b/docs/hardware_drivers.md index 6960bbcaa18..694d46971ac 100644 --- a/docs/hardware_drivers.md +++ b/docs/hardware_drivers.md @@ -16,20 +16,20 @@ Support for addressing pins on the ProMicro by their Arduino name rather than th ## SSD1306 OLED Driver -Support for SSD1306 based OLED displays. For more information see the [OLED Driver Feature](feature_oled_driver) page. +Support for SSD1306 based OLED displays. For more information see the [OLED Driver Feature](features/oled_driver) page. ## WS2812 -Support for WS2811/WS2812{a,b,c} LED's. For more information see the [RGB Light](feature_rgblight) page. +Support for WS2811/WS2812{a,b,c} LED's. For more information see the [RGB Light](features/rgblight) page. ## IS31FL3731 -Support for up to 2 drivers. Each driver impliments 2 charlieplex matrices to individually address LEDs using I2C. This allows up to 144 same color LEDs or 32 RGB LEDs. For more information on how to setup the driver see the [RGB Matrix](feature_rgb_matrix) page. +Support for up to 2 drivers. Each driver impliments 2 charlieplex matrices to individually address LEDs using I2C. This allows up to 144 same color LEDs or 32 RGB LEDs. For more information on how to setup the driver see the [RGB Matrix](features/rgb_matrix) page. ## IS31FL3733 -Support for up to a single driver with room for expansion. Each driver can control 192 individual LEDs or 64 RGB LEDs. For more information on how to setup the driver see the [RGB Matrix](feature_rgb_matrix) page. +Support for up to a single driver with room for expansion. Each driver can control 192 individual LEDs or 64 RGB LEDs. For more information on how to setup the driver see the [RGB Matrix](features/rgb_matrix) page. ## 24xx series external I2C EEPROM -Support for an external I2C-based EEPROM instead of using the on-chip EEPROM. For more information on how to setup the driver see the [EEPROM Driver](eeprom_driver) page. +Support for an external I2C-based EEPROM instead of using the on-chip EEPROM. For more information on how to setup the driver see the [EEPROM Driver](drivers/eeprom) page. diff --git a/docs/hardware_keyboard_guidelines.md b/docs/hardware_keyboard_guidelines.md index 728e09c8a9a..de67fa3bc39 100644 --- a/docs/hardware_keyboard_guidelines.md +++ b/docs/hardware_keyboard_guidelines.md @@ -230,7 +230,7 @@ Given the amount of functionality that QMK exposes it's very easy to confuse new ### Magic Keycodes and Command -[Magic Keycodes](keycodes_magic) and [Command](feature_command) are two related features that allow a user to control their keyboard in non-obvious ways. We recommend you think long and hard about if you're going to enable either feature, and how you will expose this functionality. Keep in mind that users who want this functionality can enable it in their personal keymaps without affecting all the novice users who may be using your keyboard as their first programmable board. +[Magic Keycodes](keycodes_magic) and [Command](features/command) are two related features that allow a user to control their keyboard in non-obvious ways. We recommend you think long and hard about if you're going to enable either feature, and how you will expose this functionality. Keep in mind that users who want this functionality can enable it in their personal keymaps without affecting all the novice users who may be using your keyboard as their first programmable board. By far the most common problem new users encounter is accidentally triggering Bootmagic while they're plugging in their keyboard. They're holding the keyboard by the bottom, unknowingly pressing in alt and spacebar, and then they find that these keys have been swapped on them. We recommend leaving this feature disabled by default, but if you do turn it on consider setting `BOOTMAGIC_KEY_SALT` to a key that is hard to press while plugging your keyboard in. diff --git a/docs/keycodes.md b/docs/keycodes.md index 38ed5ab18d4..4c91d98fa7a 100644 --- a/docs/keycodes.md +++ b/docs/keycodes.md @@ -233,7 +233,7 @@ See also: [Quantum Keycodes](quantum_keycodes#qmk-keycodes) ## Audio Keys {#audio-keys} -See also: [Audio](feature_audio) +See also: [Audio](features/audio) |Key |Aliases |Description | |-------------------------|---------|-------------------------------------------| @@ -255,7 +255,7 @@ See also: [Audio](feature_audio) ## Auto Shift {#auto-shift} -See also: [Auto Shift](feature_auto_shift) +See also: [Auto Shift](features/auto_shift) |Key |Aliases |Description | |----------------------|---------|--------------------------------------------| @@ -268,7 +268,7 @@ See also: [Auto Shift](feature_auto_shift) ## Autocorrect {#autocorrect} -See also: [Autocorrect](feature_autocorrect) +See also: [Autocorrect](features/autocorrect) |Key |Aliases |Description | |-----------------------|---------|----------------------------------------------| @@ -278,7 +278,7 @@ See also: [Autocorrect](feature_autocorrect) ## Backlighting {#backlighting} -See also: [Backlighting](feature_backlight) +See also: [Backlighting](features/backlight) | Key | Aliases | Description | |---------------------------------|-----------|-------------------------------------| @@ -292,7 +292,7 @@ See also: [Backlighting](feature_backlight) ## Bluetooth {#bluetooth} -See also: [Bluetooth](feature_bluetooth) +See also: [Bluetooth](features/bluetooth) |Key |Aliases |Description | |---------------------|---------|----------------------------------------------| @@ -302,7 +302,7 @@ See also: [Bluetooth](feature_bluetooth) ## Caps Word {#caps-word} -See also: [Caps Word](feature_caps_word) +See also: [Caps Word](features/caps_word) |Key |Aliases |Description | |---------------------|---------|------------------------------| @@ -310,7 +310,7 @@ See also: [Caps Word](feature_caps_word) ## Dynamic Macros {#dynamic-macros} -See also: [Dynamic Macros](feature_dynamic_macros) +See also: [Dynamic Macros](features/dynamic_macros) |Key |Aliases |Description | |---------------------------------|---------|--------------------------------------------------| @@ -322,7 +322,7 @@ See also: [Dynamic Macros](feature_dynamic_macros) ## Grave Escape {#grave-escape} -See also: [Grave Escape](feature_grave_esc) +See also: [Grave Escape](features/grave_esc) |Key |Aliases |Description | |-----------------|---------|------------------------------------------------------------------| @@ -330,7 +330,7 @@ See also: [Grave Escape](feature_grave_esc) ## Joystick {#joystick} -See also: [Joystick](feature_joystick) +See also: [Joystick](features/joystick) |Key |Aliases|Description| |-----------------------|-------|-----------| @@ -369,7 +369,7 @@ See also: [Joystick](feature_joystick) ## Key Lock {#key-lock} -See also: [Key Lock](feature_key_lock) +See also: [Key Lock](features/key_lock) |Key |Description | |---------|--------------------------------------------------------------| @@ -392,7 +392,7 @@ See also: [Layer Switching](feature_layers#switching-and-toggling-layers) ## Leader Key {#leader-key} -See also: [Leader Key](feature_leader_key) +See also: [Leader Key](features/leader_key) |Key |Description | |---------|------------------------| @@ -400,7 +400,7 @@ See also: [Leader Key](feature_leader_key) ## LED Matrix {#led-matrix} -See also: [LED Matrix](feature_led_matrix) +See also: [LED Matrix](features/led_matrix) |Key |Aliases |Description | |-------------------------------|---------|-----------------------------------| @@ -458,7 +458,7 @@ See also: [Magic Keycodes](keycodes_magic) ## MIDI {#midi} -See also: [MIDI](feature_midi) +See also: [MIDI](features/midi) |Key |Aliases |Description | |-------------------------------|------------------|---------------------------------| @@ -609,7 +609,7 @@ See also: [MIDI](feature_midi) ## Mouse Keys {#mouse-keys} -See also: [Mouse Keys](feature_mouse_keys) +See also: [Mouse Keys](features/mouse_keys) |Key |Aliases |Description | |----------------|---------|---------------------------| @@ -699,7 +699,7 @@ See also: [Dynamic Tapping Term](tap_hold#dynamic-tapping-term) ## RGB Lighting {#rgb-lighting} -See also: [RGB Lighting](feature_rgblight) +See also: [RGB Lighting](features/rgblight) |Key |Aliases |Description | |-------------------|----------|--------------------------------------------------------------------| @@ -724,7 +724,7 @@ See also: [RGB Lighting](feature_rgblight) ## RGB Matrix Lighting {#rgb-matrix-lighting} -See also: [RGB Matrix Lighting](feature_rgb_matrix) +See also: [RGB Matrix Lighting](features/rgb_matrix) |Key |Aliases |Description | |-------------------|----------|--------------------------------------------------------------------------------------| @@ -782,7 +782,7 @@ See also: [One Shot Keys](one_shot_keys) ## Programmable Button Support {#programmable-button} -See also: [Programmable Button](feature_programmable_button) +See also: [Programmable Button](features/programmable_button) |Key |Aliases|Description | |---------------------------|-------|----------------------| @@ -821,7 +821,7 @@ See also: [Programmable Button](feature_programmable_button) ## Repeat Key {#repeat-key} -See also: [Repeat Key](feature_repeat_key) +See also: [Repeat Key](features/repeat_key) |Keycode |Aliases |Description | |-----------------------|---------|-------------------------------------| @@ -830,7 +830,7 @@ See also: [Repeat Key](feature_repeat_key) ## Space Cadet {#space-cadet} -See also: [Space Cadet](feature_space_cadet) +See also: [Space Cadet](features/space_cadet) |Key |Aliases |Description | |----------------------------------------------|---------|----------------------------------------| @@ -844,7 +844,7 @@ See also: [Space Cadet](feature_space_cadet) ## Swap Hands {#swap-hands} -See also: [Swap Hands](feature_swap_hands) +See also: [Swap Hands](features/swap_hands) |Key |Aliases |Description | |-----------------------------|---------|----------------------------------------------------| @@ -859,7 +859,7 @@ See also: [Swap Hands](feature_swap_hands) ## Unicode Support {#unicode-support} -See also: [Unicode Support](feature_unicode) +See also: [Unicode Support](features/unicode) |Key |Aliases |Description | |----------------------------|---------|----------------------------------------------------------------| diff --git a/docs/mod_tap.md b/docs/mod_tap.md index 0008967c524..37c2ba3473b 100644 --- a/docs/mod_tap.md +++ b/docs/mod_tap.md @@ -55,7 +55,7 @@ For convenience, QMK includes some Mod-Tap shortcuts to make common combinations Currently, the `kc` argument of `MT()` is limited to the [Basic Keycode set](keycodes_basic), meaning you can't use keycodes like `LCTL()`, `KC_TILD`, or anything greater than `0xFF`. This is because QMK uses 16-bit keycodes, of which 3 bits are used for the function identifier, 1 bit for selecting right or left mods, and 4 bits to tell which mods are used, leaving only 8 bits for the keycode. Additionally, if at least one right-handed modifier is specified in a Mod-Tap, it will cause all modifiers specified to become right-handed, so it is not possible to mix and match the two - for example, Left Control and Right Shift would become Right Control and Right Shift. -Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, [Tap Dance](feature_tap_dance#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) can be used to accomplish this. +Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, [Tap Dance](features/tap_dance#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) can be used to accomplish this. You may also run into issues when using Remote Desktop Connection on Windows. Because these keycodes send key events faster than a human, Remote Desktop could miss them. To fix this, open Remote Desktop Connection, click on "Show Options", open the "Local Resources" tab, and in the keyboard section, change the drop down to "On this Computer". This will fix the issue, and allow the characters to work correctly. diff --git a/docs/newbs_building_firmware.md b/docs/newbs_building_firmware.md index d7c1157b2d5..f3afd6a8968 100644 --- a/docs/newbs_building_firmware.md +++ b/docs/newbs_building_firmware.md @@ -64,8 +64,8 @@ How to complete this step is entirely up to you. Make the one change that's been * [Basic Keycodes](keycodes_basic) * [Quantum Keycodes](quantum_keycodes) -* [Grave/Escape](feature_grave_esc) -* [Mouse keys](feature_mouse_keys) +* [Grave/Escape](features/grave_esc) +* [Mouse keys](features/mouse_keys) ::: tip While you get a feel for how keymaps work, keep each change small. Bigger changes make it harder to debug any problems that arise. diff --git a/docs/platformdev_rp2040.md b/docs/platformdev_rp2040.md index f0b006cf6ee..1269ffeeb51 100644 --- a/docs/platformdev_rp2040.md +++ b/docs/platformdev_rp2040.md @@ -4,16 +4,16 @@ The following table shows the current driver status for peripherals on RP2040 MC | System | Support | | ---------------------------------------------------------------- | ---------------------------------------------- | -| [ADC driver](adc_driver) | :heavy_check_mark: | -| [Audio](audio_driver#pwm-hardware) | :heavy_check_mark: | -| [Backlight](feature_backlight) | :heavy_check_mark: | -| [I2C driver](i2c_driver) | :heavy_check_mark: | -| [SPI driver](spi_driver) | :heavy_check_mark: | -| [WS2812 driver](ws2812_driver) | :heavy_check_mark: using `PIO` driver | -| [External EEPROMs](eeprom_driver) | :heavy_check_mark: using `I2C` or `SPI` driver | -| [EEPROM emulation](eeprom_driver#wear_leveling-configuration) | :heavy_check_mark: | -| [serial driver](serial_driver) | :heavy_check_mark: using `SIO` or `PIO` driver | -| [UART driver](uart_driver) | :heavy_check_mark: using `SIO` driver | +| [ADC driver](drivers/adc) | :heavy_check_mark: | +| [Audio](drivers/audio#pwm-hardware) | :heavy_check_mark: | +| [Backlight](features/backlight) | :heavy_check_mark: | +| [I2C driver](drivers/i2c) | :heavy_check_mark: | +| [SPI driver](drivers/spi) | :heavy_check_mark: | +| [WS2812 driver](drivers/ws2812) | :heavy_check_mark: using `PIO` driver | +| [External EEPROMs](drivers/eeprom) | :heavy_check_mark: using `I2C` or `SPI` driver | +| [EEPROM emulation](drivers/eeprom#wear_leveling-configuration) | :heavy_check_mark: | +| [serial driver](drivers/serial) | :heavy_check_mark: using `SIO` or `PIO` driver | +| [UART driver](drivers/uart) | :heavy_check_mark: using `SIO` driver | ## GPIO @@ -43,7 +43,7 @@ QMK RP2040 support builds upon ChibiOS and thus follows their convention for act | `I2C0` | `RP_I2C_USE_I2C0` | `I2CD0` | | `I2C1` | `RP_I2C_USE_I2C1` | `I2CD1` | -To configure the I2C driver please read the [ChibiOS/ARM](i2c_driver#arm-configuration) section. +To configure the I2C driver please read the [ChibiOS/ARM](drivers/i2c#arm-configuration) section. ### SPI Driver @@ -52,7 +52,7 @@ To configure the I2C driver please read the [ChibiOS/ARM](i2c_driver#arm-configu | `SPI0` | `RP_SPI_USE_SPI0` | `SPID0` | | `SPI1` | `RP_SPI_USE_SPI1` | `SPID1` | -To configure the SPI driver please read the [ChibiOS/ARM](spi_driver#chibiosarm-configuration) section. +To configure the SPI driver please read the [ChibiOS/ARM](drivers/spi#chibiosarm-configuration) section. ### UART Driver @@ -92,7 +92,7 @@ This is the default board that is chosen, unless any other RP2040 board is selec | `SPI_MISO_PIN` | `GP20` | | `SPI_MOSI_PIN` | `GP19` | | **Serial driver** | | -| `SERIAL_USART_DRIVER` ([SIO Driver](serial_driver#the-sio-driver) only) | `SIOD0` | +| `SERIAL_USART_DRIVER` ([SIO Driver](drivers/serial#the-sio-driver) only) | `SIOD0` | | `SOFT_SERIAL_PIN` | undefined, use `SERIAL_USART_TX_PIN` | | `SERIAL_USART_TX_PIN` | `GP0` | | `SERIAL_USART_RX_PIN` | `GP1` | @@ -115,9 +115,9 @@ BOARD = GENERIC_RP_RP2040 ## Split keyboard support -Split keyboards are fully supported using the [serial driver](serial_driver) in both full-duplex and half-duplex configurations. Two driver subsystems are supported by the RP2040, the hardware UART based `SIO` and the Programmable IO based `PIO` driver. +Split keyboards are fully supported using the [serial driver](drivers/serial) in both full-duplex and half-duplex configurations. Two driver subsystems are supported by the RP2040, the hardware UART based `SIO` and the Programmable IO based `PIO` driver. -| Feature | [SIO Driver](serial_driver#the-sio-driver) | [PIO Driver](serial_driver#the-pio-driver) | +| Feature | [SIO Driver](drivers/serial#the-sio-driver) | [PIO Driver](drivers/serial#the-pio-driver) | | ----------------------------- | --------------------------------------------- | --------------------------------------------- | | Half-Duplex operation | | :heavy_check_mark: | | Full-Duplex operation | :heavy_check_mark: | :heavy_check_mark: | diff --git a/docs/porting_your_keyboard_to_qmk.md b/docs/porting_your_keyboard_to_qmk.md index c91e5ca31df..eb45790128d 100644 --- a/docs/porting_your_keyboard_to_qmk.md +++ b/docs/porting_your_keyboard_to_qmk.md @@ -153,7 +153,7 @@ In the above example, * `"matrix": [0, 0]` defines the electrical position ::: tip -See also: [Split Keyboard Layout Macro](feature_split_keyboard#layout-macro) and [Matrix to Physical Layout](understanding_qmk#matrix-to-physical-layout-map). +See also: [Split Keyboard Layout Macro](features/split_keyboard#layout-macro) and [Matrix to Physical Layout](understanding_qmk#matrix-to-physical-layout-map). ::: ## Additional Configuration diff --git a/docs/pr_checklist.md b/docs/pr_checklist.md index e5ed1d67b66..f7b16e1d852 100644 --- a/docs/pr_checklist.md +++ b/docs/pr_checklist.md @@ -126,7 +126,7 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard - commented-out functions removed too - `matrix_init_board()` etc. migrated to `keyboard_pre_init_kb()`, see: [keyboard_pre_init*](custom_quantum_functions#keyboard_pre_init_-function-documentation) - prefer `CUSTOM_MATRIX = lite` if custom matrix used, allows for standard debounce, see [custom matrix 'lite'](custom_matrix#lite) - - prefer LED indicator [Configuration Options](feature_led_indicators#configuration-options) to custom `led_update_*()` implementations where possible + - prefer LED indicator [Configuration Options](features/led_indicators#configuration-options) to custom `led_update_*()` implementations where possible - hardware that's enabled at the keyboard level and requires configuration such as OLED displays or encoders should have basic functionality implemented here - `.h` - `#include "quantum.h"` appears at the top @@ -135,12 +135,12 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard - no duplication of `rules.mk` or `config.h` from keyboard - `keymaps/default/keymap.c` - `QMKBEST`/`QMKURL` example macros removed - - if using `MO(1)` and `MO(2)` keycodes together to access a third layer, the [Tri Layer](feature_tri_layer) feature should be used, rather than manually implementing this using `layer_on/off()` and `update_tri_layer()` functions in the keymap's `process_record_user()`. + - if using `MO(1)` and `MO(2)` keycodes together to access a third layer, the [Tri Layer](features/tri_layer) feature should be used, rather than manually implementing this using `layer_on/off()` and `update_tri_layer()` functions in the keymap's `process_record_user()`. - default (and via) keymaps should be "pristine" - bare minimum to be used as a "clean slate" for another user to develop their own user-specific keymap - what does pristine mean? no custom keycodes. no advanced features like tap dance or macros. basic mod taps and home row mods would be acceptable where their use is necessary - standard layouts preferred in these keymaps, if possible - - should use [encoder map feature](feature_encoders#encoder-map), rather than `encoder_update_user()` + - should use [encoder map feature](features/encoders#encoder-map), rather than `encoder_update_user()` - default keymap should not enable VIA -- the VIA integration documentation requires a keymap called `via` - submitters can add an example (or bells-and-whistles) keymap showcasing capabilities in the same PR but it shouldn't be embedded in the 'default' keymap - submitters can also have a "manufacturer-matching" keymap that mirrors existing functionality of the commercial product, if porting an existing board diff --git a/docs/ref_functions.md b/docs/ref_functions.md index 156c9ed20b1..577273c05d3 100644 --- a/docs/ref_functions.md +++ b/docs/ref_functions.md @@ -71,7 +71,7 @@ Do you want to set the default layer, so that it's retained even after you unplu To use this, you would use `set_single_persistent_default_layer(layer)`. If you have a name defined for your layer, you can use that instead (such as _QWERTY, _DVORAK or _COLEMAK). -This will set the default layer, update the persistent settings, and play a tune if you have [Audio](feature_audio) enabled on your board, and the default layer sounds set. +This will set the default layer, update the persistent settings, and play a tune if you have [Audio](features/audio) enabled on your board, and the default layer sounds set. To configure the default layer sounds, you would want to define this in your `config.h` file, like this: @@ -99,7 +99,7 @@ To reset to the bootloader use `QK_BOOTLOADER` or `QK_BOOT` keycode or `reset_ke ## Wiping the EEPROM (Persistent Storage) -If you're having issues with Audio, RGB Underglow, backlighting or keys acting weird, then you can reset the EEPROM (persistent setting storage). To force an EEPROM reset, use the [`EE_CLR` keycode](quantum_keycodes) or [Bootmagic Lite](feature_bootmagic) functionality. If neither of those are an option, then you can use a custom macro to do so. +If you're having issues with Audio, RGB Underglow, backlighting or keys acting weird, then you can reset the EEPROM (persistent setting storage). To force an EEPROM reset, use the [`EE_CLR` keycode](quantum_keycodes) or [Bootmagic Lite](features/bootmagic) functionality. If neither of those are an option, then you can use a custom macro to do so. To wipe the EEPROM, run `eeconfig_init()` from your function or macro to reset most of the settings to default. diff --git a/docs/reference_glossary.md b/docs/reference_glossary.md index cf8c8f0d75f..d24576b3330 100644 --- a/docs/reference_glossary.md +++ b/docs/reference_glossary.md @@ -36,7 +36,7 @@ An alternative keyboard layout developed by Dr. August Dvorak in the 1930's. A s ## Dynamic Macro A macro which has been recorded on the keyboard and which will be lost when the keyboard is unplugged or the computer rebooted. -* [Dynamic Macro Documentation](feature_dynamic_macros) +* [Dynamic Macro Documentation](features/dynamic_macros) ## Eclipse An IDE that is popular with many C developers. @@ -76,7 +76,7 @@ An abstraction used to allow a key to serve multiple purposes. The highest activ ## Leader Key A feature that allows you to tap the leader key followed by a sequence of 1, 2, or 3 keys to activate key presses or other quantum features. -* [Leader Key Documentation](feature_leader_key) +* [Leader Key Documentation](features/leader_key) ## LED Light Emitting Diode, the most common device used for indicators on a keyboard. @@ -101,7 +101,7 @@ A key that is held down while typing another key to modify the action of that ke ## Mousekeys A feature that lets you control your mouse cursor and click from your keyboard. -* [Mousekeys Documentation](feature_mouse_keys) +* [Mousekeys Documentation](features/mouse_keys) ## N-Key Rollover (NKRO) A term that applies to keyboards that are capable of reporting any number of key-presses at once. @@ -130,7 +130,7 @@ A 1 byte number that is sent as part of a HID report over USB that represents a ## Space Cadet Shift A special set of shift keys which allow you to type various types of braces by tapping the left or right shift one or more times. -* [Space Cadet Shift Documentation](feature_space_cadet) +* [Space Cadet Shift Documentation](features/space_cadet) ## Tap Pressing and releasing a key. In some situations you will need to distinguish between a key down and a key up event, and Tap always refers to both at once. @@ -138,7 +138,7 @@ Pressing and releasing a key. In some situations you will need to distinguish be ## Tap Dance A feature that lets you assign multiple keycodes to the same key based on how many times you press it. -* [Tap Dance Documentation](feature_tap_dance) +* [Tap Dance Documentation](features/tap_dance) ## Teensy A low-cost AVR development board that is commonly used for hand-wired builds. A teensy is often chosen despite costing a few dollars more due to its halfkay bootloader, which makes flashing very simple. @@ -149,7 +149,7 @@ A generic term for LEDs that light the underside of the board. These LEDs typica ## Unicode In the larger computer world Unicode is a set of encoding schemes for representing characters in any language. As it relates to QMK it means using various OS schemes to send unicode codepoints instead of scancodes. -* [Unicode Documentation](feature_unicode) +* [Unicode Documentation](features/unicode) ## Unit Testing A framework for running automated tests against QMK. Unit testing helps us be confident that our changes do not break anything. diff --git a/docs/reference_info_json.md b/docs/reference_info_json.md index 25d2e9d1d83..2db2cd14277 100644 --- a/docs/reference_info_json.md +++ b/docs/reference_info_json.md @@ -95,7 +95,7 @@ You can create `info.json` files at every level under `qmk_firmware/keyboards/ - * [Audio](feature_audio) + * [Audio](features/audio) * Lighting - * [Backlight](feature_backlight) - * [LED Matrix](feature_led_matrix) - * [RGB Lighting](feature_rgblight) - * [RGB Matrix](feature_rgb_matrix) + * [Backlight](features/backlight) + * [LED Matrix](features/led_matrix) + * [RGB Lighting](features/rgblight) + * [RGB Matrix](features/rgb_matrix) * [Tap-Hold Configuration](tap_hold) * [Squeezing Space from AVR](squeezing_avr) * **Learn More About Keymaps** * [Keymaps](keymap) * [Custom Functions and Keycodes](custom_quantum_functions) * Macros - * [Dynamic Macros](feature_dynamic_macros) + * [Dynamic Macros](features/dynamic_macros) * [Compiled Macros](feature_macros) - * [Tap Dance](feature_tap_dance) - * [Combos](feature_combo) + * [Tap Dance](features/tap_dance) + * [Combos](features/combo) * [Userspace](feature_userspace) - * [Key Overrides](feature_key_overrides) + * [Key Overrides](features/key_overrides) # Advanced Topics @@ -53,15 +53,15 @@ Everything below here requires a lot of foundational knowledge. Besides being ab * [info.json Reference](reference_info_json) * [Debounce API](feature_debounce_type) * **Advanced Features** - * [Unicode](feature_unicode) + * [Unicode](features/unicode) * [API](api_overview) - * [Bootmagic Lite](feature_bootmagic) + * [Bootmagic Lite](features/bootmagic) * **Hardware** * [How Keyboards Work](how_keyboards_work) * [How A Keyboard Matrix Works](how_a_matrix_works) - * [Split Keyboards](feature_split_keyboard) - * [Stenography](feature_stenography) - * [Pointing Devices](feature_pointing_device) + * [Split Keyboards](features/split_keyboard) + * [Stenography](features/stenography) + * [Pointing Devices](features/pointing_device) * **Core Development** * [Coding Conventions](coding_conventions_c) * [Compatible Microcontrollers](compatible_microcontrollers) diff --git a/docs/tap_hold.md b/docs/tap_hold.md index fe862894b45..9b7f6552cbf 100644 --- a/docs/tap_hold.md +++ b/docs/tap_hold.md @@ -497,7 +497,7 @@ Do not use `MOD_xxx` constants like `MOD_LSFT` or `MOD_RALT`, since they're 5-bi ### Retro Shift -[Auto Shift,](feature_auto_shift) has its own version of `retro tapping` called `retro shift`. It is extremely similar to `retro tapping`, but holding the key past `AUTO_SHIFT_TIMEOUT` results in the value it sends being shifted. Other configurations also affect it differently; see [here](feature_auto_shift#retro-shift) for more information. +[Auto Shift,](features/auto_shift) has its own version of `retro tapping` called `retro shift`. It is extremely similar to `retro tapping`, but holding the key past `AUTO_SHIFT_TIMEOUT` results in the value it sends being shifted. Other configurations also affect it differently; see [here](features/auto_shift#retro-shift) for more information. ## Why do we include the key record for the per key functions? From 41dbb4c86c2afd45480ed38c0d5f058eef41a92f Mon Sep 17 00:00:00 2001 From: Alex Mayer Date: Sat, 1 Jun 2024 23:19:23 -0400 Subject: [PATCH 068/519] Fix Vitamins Included Keymap Formatting (#23803) --- .../keymaps/default/keymap.c | 48 +++++++++---------- 1 file changed, 23 insertions(+), 25 deletions(-) diff --git a/keyboards/vitamins_included/keymaps/default/keymap.c b/keyboards/vitamins_included/keymaps/default/keymap.c index 12219b723ad..3fcb08b8da1 100644 --- a/keyboards/vitamins_included/keymaps/default/keymap.c +++ b/keyboards/vitamins_included/keymaps/default/keymap.c @@ -1,7 +1,5 @@ #include QMK_KEYBOARD_H -// Layer names - enum layer_names { _QWERTY, _COLEMAK, @@ -25,9 +23,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Qwerty * ,-----------------------------------------------------------------------------------. * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| + * |------+------+------+------+------+------+------+------+------+------+------+------| * | Tab | A | S | D | F | G | H | J | K | L | ; | ' | - * |------+------+------+------+------+------|------+------+------+------+------+------| + * |------+------+------+------+------+------+------+------+------+------+------+------| * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| * | Ctrl | GUI | Alt |Adjust|Lower |Space |Space |Raise | Left | Down | Up |Right | @@ -43,9 +41,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Colemak * ,-----------------------------------------------------------------------------------. * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| + * |------+------+------+------+------+------+------+------+------+------+------+------| * | Esc | A | R | S | T | D | H | N | E | I | O | ' | - * |------+------+------+------+------+------|------+------+------+------+------+------| + * |------+------+------+------+------+------+------+------+------+------+------+------| * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | @@ -61,9 +59,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Dvorak * ,-----------------------------------------------------------------------------------. * | Tab | ' | , | . | P | Y | F | G | C | R | L | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| + * |------+------+------+------+------+------+------+------+------+------+------+------| * | Esc | A | O | E | U | I | D | H | T | N | S | / | - * |------+------+------+------+------+------|------+------+------+------+------+------| + * |------+------+------+------+------+------+------+------+------+------+------+------| * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | @@ -79,30 +77,30 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Lower * ,-----------------------------------------------------------------------------------. * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * |QK_BOOT | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| - * |TGNKRO| | | | | | | Next | Vol- | Vol+ | Play | + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | BOOT | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * |TGNKRO| | | | | | | | Next | Vol- | Vol+ | Play | * `-----------------------------------------------------------------------------------' */ [_LOWER] = LAYOUT_ortho_4x12( - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, - KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, - QK_BOOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______,_______,_______, - NK_TOGG, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + QK_BOOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), _______, _______, _______, + NK_TOGG, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), /* Raise * ,-----------------------------------------------------------------------------------. * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | |TGNKRO|QK_BOOT | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | Next | Vol- | Vol+ | Play | + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | |TGNKRO| BOOT | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | Next | Vol- | Vol+ | Play | * `-----------------------------------------------------------------------------------' */ [_RAISE] = LAYOUT_ortho_4x12( @@ -115,12 +113,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Adjust (Lower + Raise) * ,-----------------------------------------------------------------------------------. * | |Qwerty|Colemk|Dvorak| | | | | | | | | - * |------+------+------+------+------+-------------+------+------+------+------+------| + * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | |Qwerty|Colemk|Dvorak| | | - * |------+------+------+------+------+------|------+------+------+------+------+------| + * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | | | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | |Audoff Audon | | | | |RGBMOD| + * | | | | | |Audoff|Audon | | | | |RGBMOD| * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( From 282253a7e0c51717234bd64159a37ee527d16dc2 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Mon, 3 Jun 2024 08:55:03 +1000 Subject: [PATCH 069/519] [docs] Add ability to redirect based on input path. (#23851) --- .../docsgen/.vitepress/theme/QMKLayout.vue | 15 +++- docs/_aliases.json | 74 +++++++++++++++++++ 2 files changed, 87 insertions(+), 2 deletions(-) create mode 100644 docs/_aliases.json diff --git a/builddefs/docsgen/.vitepress/theme/QMKLayout.vue b/builddefs/docsgen/.vitepress/theme/QMKLayout.vue index 30d0780d7c3..9d7a41f9e2d 100644 --- a/builddefs/docsgen/.vitepress/theme/QMKLayout.vue +++ b/builddefs/docsgen/.vitepress/theme/QMKLayout.vue @@ -2,11 +2,22 @@ import DefaultTheme from 'vitepress/theme' import { useRouter } from 'vitepress' import { onBeforeMount } from 'vue'; +import aliases from "../../../../docs/_aliases.json"; const router = useRouter() onBeforeMount(async () => { - if (window.location.href.includes('/#/')) { - const newUrl = window.location.href.replace(/\/#\//, '/').replace(/\?id=/, '#'); + // Convert from docsify-style to vitepress-style URLs + let newUrl = window.location.href.replace(/\/#\//, '/').replace(/\?id=/, '#'); + + // Convert any aliases + let testUrl = new URL(newUrl); + while (testUrl.pathname in aliases) { + testUrl.pathname = aliases[testUrl.pathname]; + } + newUrl = testUrl.toString(); + + // Redirect if required + if (newUrl != window.location.href) { window.history.replaceState({}, '', newUrl); await router.go(newUrl); } diff --git a/docs/_aliases.json b/docs/_aliases.json new file mode 100644 index 00000000000..a2224bd0d54 --- /dev/null +++ b/docs/_aliases.json @@ -0,0 +1,74 @@ +{ + "/adding_a_keyboard_to_qmk": "/hardware_keyboard_guidelines", + "/build_environment_setup": "/newbs_getting_started", + "/cli_dev_configuration": "/cli_configuration", + "/dynamic_macros": "/feature_dynamic_macros", + "/feature_common_shortcuts": "/feature_advanced_keycodes", + "/getting_started_build_tools": "/newbs_getting_started", + "/getting_started_getting_help": "/support", + "/glossary": "/reference_glossary", + "/key_lock": "/feature_key_lock", + "/make_instructions": "/getting_started_make_guide", + "/python_development": "/cli_development", + "/space_cadet_shift": "/feature_space_cadet_shift", + "/tap_dance": "/feature_tap_dance", + "/tutorial": "/newbs", + "/unicode": "/feature_unicode", + + "/adc_driver": "/drivers/adc", + "/apa102_driver": "/drivers/apa102", + "/audio_driver": "/drivers/audio", + "/eeprom_driver": "/drivers/eeprom", + "/feature_audio": "/features/audio", + "/feature_auto_shift": "/features/auto_shift", + "/feature_autocorrect": "/features/autocorrect", + "/feature_backlight": "/features/backlight", + "/feature_bluetooth": "/features/bluetooth", + "/feature_bootmagic": "/features/bootmagic", + "/feature_caps_word": "/features/caps_word", + "/feature_combo": "/features/combo", + "/feature_command": "/features/command", + "/feature_digitizer": "/features/digitizer", + "/feature_dip_switch": "/features/dip_switch", + "/feature_dynamic_macros": "/features/dynamic_macros", + "/feature_encoders": "/features/encoders", + "/feature_grave_esc": "/features/grave_esc", + "/feature_haptic_feedback": "/features/haptic_feedback", + "/feature_hd44780": "/features/hd44780", + "/feature_joystick": "/features/joystick", + "/feature_key_lock": "/features/key_lock", + "/feature_key_overrides": "/features/key_overrides", + "/feature_leader_key": "/features/leader_key", + "/feature_led_indicators": "/features/led_indicators", + "/feature_led_matrix": "/features/led_matrix", + "/feature_midi": "/features/midi", + "/feature_mouse_keys": "/features/mouse_keys", + "/feature_oled_driver": "/features/oled_driver", + "/feature_os_detection": "/features/os_detection", + "/feature_pointing_device": "/features/pointing_device", + "/feature_programmable_button": "/features/programmable_button", + "/feature_ps2_mouse": "/features/ps2_mouse", + "/feature_rawhid": "/features/rawhid", + "/feature_repeat_key": "/features/repeat_key", + "/feature_rgb_matrix": "/features/rgb_matrix", + "/feature_rgblight": "/features/rgblight", + "/feature_secure": "/features/secure", + "/feature_send_string": "/features/send_string", + "/feature_sequencer": "/features/sequencer", + "/feature_space_cadet": "/features/space_cadet", + "/feature_split_keyboard": "/features/split_keyboard", + "/feature_st7565": "/features/st7565", + "/feature_stenography": "/features/stenography", + "/feature_swap_hands": "/features/swap_hands", + "/feature_tap_dance": "/features/tap_dance", + "/feature_tri_layer": "/features/tri_layer", + "/feature_unicode": "/features/unicode", + "/feature_wpm": "/features/wpm", + "/flash_driver": "/drivers/flash", + "/gpio_control": "/drivers/gpio", + "/i2c_driver": "/drivers/i2c", + "/serial_driver": "/drivers/serial", + "/spi_driver": "/drivers/spi", + "/uart_driver": "/drivers/uart", + "/ws2812_driver": "/drivers/ws2812" +} From 8253697a6389aaec73f85a29dd25247b32389502 Mon Sep 17 00:00:00 2001 From: Stefan Kerkmann Date: Mon, 3 Jun 2024 14:35:46 +0200 Subject: [PATCH 070/519] [FIX] ChibiOS: USB Digitizer and Joystick IN endpoint compilation (#23854) Co-authored-by: Ryan --- tmk_core/protocol/chibios/usb_endpoints.c | 4 ++-- tmk_core/protocol/usb_descriptor.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tmk_core/protocol/chibios/usb_endpoints.c b/tmk_core/protocol/chibios/usb_endpoints.c index 37ec3c722f6..856df624260 100644 --- a/tmk_core/protocol/chibios/usb_endpoints.c +++ b/tmk_core/protocol/chibios/usb_endpoints.c @@ -57,11 +57,11 @@ usb_endpoint_in_t usb_endpoints_in[USB_ENDPOINT_IN_COUNT] = { #endif #if defined(JOYSTICK_ENABLE) && !defined(JOYSTICK_SHARED_EP) - [USB_ENDPOINT_IN_JOYSTICK] = QMK_USB_ENDPOINT_IN(USB_EP_MODE_TYPE_INTR, JOYSTICK_EPSIZE, JOYSTICK_IN_EPNUM, JOYSTICK_IN_CAPACITY, QMK_USB_REPORT_STORAGE_DEFAULT(sizeof(report_joystick_t))), + [USB_ENDPOINT_IN_JOYSTICK] = QMK_USB_ENDPOINT_IN(USB_EP_MODE_TYPE_INTR, JOYSTICK_EPSIZE, JOYSTICK_IN_EPNUM, JOYSTICK_IN_CAPACITY, NULL, QMK_USB_REPORT_STORAGE_DEFAULT(sizeof(report_joystick_t))), #endif #if defined(DIGITIZER_ENABLE) && !defined(DIGITIZER_SHARED_EP) - [USB_ENDPOINT_IN_JOYSTICK] = QMK_USB_ENDPOINT_IN(USB_EP_MODE_TYPE_INTR, DIGITIZER_EPSIZE, DIGITIZER_IN_EPNUM, DIGITIZER_IN_CAPACITY, QMK_USB_REPORT_STORAGE_DEFAULT(sizeof(report_digitizer_t))), + [USB_ENDPOINT_IN_DIGITIZER] = QMK_USB_ENDPOINT_IN(USB_EP_MODE_TYPE_INTR, DIGITIZER_EPSIZE, DIGITIZER_IN_EPNUM, DIGITIZER_IN_CAPACITY, NULL, QMK_USB_REPORT_STORAGE_DEFAULT(sizeof(report_digitizer_t))), #endif #if defined(CONSOLE_ENABLE) diff --git a/tmk_core/protocol/usb_descriptor.c b/tmk_core/protocol/usb_descriptor.c index 0e2e63ad8ee..7efd085ea32 100644 --- a/tmk_core/protocol/usb_descriptor.c +++ b/tmk_core/protocol/usb_descriptor.c @@ -990,7 +990,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor = { .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA), .EndpointSize = JOYSTICK_EPSIZE, .PollingIntervalMS = USB_POLLING_INTERVAL_MS - } + }, #endif #if defined(DIGITIZER_ENABLE) && !defined(DIGITIZER_SHARED_EP) From 6d365dd8f11cfb440a1c7e67572d3deb10f7833f Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Tue, 4 Jun 2024 12:23:25 +1000 Subject: [PATCH 071/519] Add helper `make` targets for formatting and pytest. (#23858) --- Makefile | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Makefile b/Makefile index 78d1a372bc7..5fcd6bbf0f3 100644 --- a/Makefile +++ b/Makefile @@ -465,3 +465,18 @@ distclean_userspace: clean rm -f $(QMK_USERSPACE)/*.bin $(QMK_USERSPACE)/*.hex $(QMK_USERSPACE)/*.uf2 echo 'done.' endif + +# Extra targets for formatting and/or pytest, running within the qmk/qmk_cli container to match GHA. +CONTAINER_PREAMBLE := export HOME="/tmp"; export PATH="/tmp/.local/bin:\$$PATH"; python3 -m pip install --upgrade pip; python3 -m pip install -r requirements-dev.txt + +.PHONY: format-core +format-core: + RUNTIME=docker ./util/docker_cmd.sh bash -lic "$(CONTAINER_PREAMBLE); qmk format-c --core-only -a && qmk format-python -a" + +.PHONY: pytest +pytest: + RUNTIME=docker ./util/docker_cmd.sh bash -lic "$(CONTAINER_PREAMBLE); qmk pytest" + +.PHONY: format-and-pytest +format-and-pytest: + RUNTIME=docker ./util/docker_cmd.sh bash -lic "$(CONTAINER_PREAMBLE); qmk format-c --core-only -a && qmk format-python -a && qmk pytest" From 75d11e04215edc43eeef71756a23d7f46e66c459 Mon Sep 17 00:00:00 2001 From: dexter93 Date: Tue, 4 Jun 2024 13:16:45 +0300 Subject: [PATCH 072/519] [wear_leveling] efl updates (#22489) Co-authored-by: Nick Brassel --- docs/drivers/eeprom.md | 15 +++++---- .../drivers/wear_leveling/wear_leveling_efl.c | 33 ++++++++++++++----- 2 files changed, 32 insertions(+), 16 deletions(-) diff --git a/docs/drivers/eeprom.md b/docs/drivers/eeprom.md index 82630c501d1..0ae258424f8 100644 --- a/docs/drivers/eeprom.md +++ b/docs/drivers/eeprom.md @@ -119,13 +119,14 @@ This driver performs writes to the embedded flash storage embedded in the MCU. I Configurable options in your keyboard's `config.h`: -`config.h` override | Default | Description ------------------------------------------|-------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -`#define WEAR_LEVELING_EFL_FIRST_SECTOR` | _unset_ | The first sector on the MCU to use. By default this is not defined and calculated at runtime based on the MCU. However, different flash sizes on MCUs may require custom configuration. -`#define WEAR_LEVELING_EFL_FLASH_SIZE` | _unset_ | Allows overriding the flash size available for use for wear-leveling. Under normal circumstances this is automatically calculated and should not need to be overridden. Specifying a size larger than the amount actually available in flash will usually prevent the MCU from booting. -`#define WEAR_LEVELING_LOGICAL_SIZE` | `(backing_size/2)` | Number of bytes "exposed" to the rest of QMK and denotes the size of the usable EEPROM. -`#define WEAR_LEVELING_BACKING_SIZE` | `2048` | Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size. -`#define BACKING_STORE_WRITE_SIZE` | _automatic_ | The byte width of the underlying write used on the MCU, and is usually automatically determined from the selected MCU family. If an error occurs in the auto-detection, you'll need to consult the MCU's datasheet and determine this value, specifying it directly. +`config.h` override | Default | Description +---------------------------------------------------|--------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +`#define WEAR_LEVELING_EFL_FIRST_SECTOR` | _unset_ | The first sector on the MCU to use. By default this is not defined and calculated at runtime based on the MCU. However, different flash sizes on MCUs may require custom configuration. +`#define WEAR_LEVELING_EFL_FLASH_SIZE` | _unset_ | Allows overriding the flash size available for use for wear-leveling. Under normal circumstances this is automatically calculated and should not need to be overridden. Specifying a size larger than the amount actually available in flash will usually prevent the MCU from booting. +`#define WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT` | `0` | Number of sectors to omit at the end of the flash. These sectors will not be allocated to the driver and the usable flash block will be offset, but keeping the set flash size. Useful on devices with bootloaders requiring a check flag at the end of flash to be present in order to confirm a valid, bootable firmware. +`#define WEAR_LEVELING_LOGICAL_SIZE` | `(backing_size/2)` | Number of bytes "exposed" to the rest of QMK and denotes the size of the usable EEPROM. +`#define WEAR_LEVELING_BACKING_SIZE` | `2048` | Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size. +`#define BACKING_STORE_WRITE_SIZE` | _automatic_ | The byte width of the underlying write used on the MCU, and is usually automatically determined from the selected MCU family. If an error occurs in the auto-detection, you'll need to consult the MCU's datasheet and determine this value, specifying it directly. ::: warning If your MCU does not boot after swapping to the EFL wear-leveling driver, it's likely that the flash size is incorrectly detected, usually as an MCU with larger flash and may require overriding. diff --git a/platforms/chibios/drivers/wear_leveling/wear_leveling_efl.c b/platforms/chibios/drivers/wear_leveling/wear_leveling_efl.c index 3d6ed52e5c0..f49c4a45b0b 100644 --- a/platforms/chibios/drivers/wear_leveling/wear_leveling_efl.c +++ b/platforms/chibios/drivers/wear_leveling/wear_leveling_efl.c @@ -14,11 +14,15 @@ static flash_sector_t first_sector = WEAR_LEVELING_EFL_FIRST_SECTOR; static flash_sector_t first_sector = UINT16_MAX; #endif // defined(WEAR_LEVELING_EFL_FIRST_SECTOR) +#if !defined(WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT) +# define WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT 0 +#endif // WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT + static flash_sector_t sector_count = UINT16_MAX; static BaseFlash * flash; - -static volatile bool is_issuing_read = false; -static volatile bool ecc_error_occurred = false; +static bool flash_erased_is_one; +static volatile bool is_issuing_read = false; +static volatile bool ecc_error_occurred = false; // "Automatic" detection of the flash size -- ideally ChibiOS would have this already, but alas, it doesn't. static inline uint32_t detect_flash_size(void) { @@ -51,10 +55,19 @@ bool backing_store_init(void) { uint32_t counter = 0; uint32_t flash_size = detect_flash_size(); + // Check if the hardware erase is logic 1 + flash_erased_is_one = (desc->attributes & FLASH_ATTR_ERASED_IS_ONE) ? true : false; + + if (WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT >= desc->sectors_count) { + // Last sector defined is greater than available number of sectors. Can't do anything here. Fault. + chSysHalt("Last sector intended to be used with wear_leveling is beyond available flash descriptor range"); + } + #if defined(WEAR_LEVELING_EFL_FIRST_SECTOR) // Work out how many sectors we want to use, working forwards from the first sector specified - for (flash_sector_t i = 0; i < desc->sectors_count - first_sector; ++i) { + flash_sector_t last_sector = desc->sectors_count - WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT; + for (flash_sector_t i = 0; i < last_sector - first_sector; ++i) { counter += flashGetSectorSize(flash, first_sector + i); if (counter >= (WEAR_LEVELING_BACKING_SIZE)) { sector_count = i + 1; @@ -70,9 +83,9 @@ bool backing_store_init(void) { #else // defined(WEAR_LEVELING_EFL_FIRST_SECTOR) // Work out how many sectors we want to use, working backwards from the end of the flash - flash_sector_t last_sector = desc->sectors_count; - for (flash_sector_t i = 0; i < desc->sectors_count; ++i) { - first_sector = desc->sectors_count - i - 1; + flash_sector_t last_sector = desc->sectors_count - WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT; + for (flash_sector_t i = 0; i < last_sector; ++i) { + first_sector = last_sector - i - 1; if (flashGetSectorOffset(flash, first_sector) >= flash_size) { last_sector = first_sector; continue; @@ -124,7 +137,9 @@ bool backing_store_write(uint32_t address, backing_store_int_t value) { uint32_t offset = (base_offset + address); bs_dprintf("Write "); wl_dump(offset, &value, sizeof(value)); - value = ~value; + if (flash_erased_is_one) { + value = ~value; + } return flashProgram(flash, offset, sizeof(value), (const uint8_t *)&value) == FLASH_NO_ERROR; } @@ -138,7 +153,7 @@ static backing_store_int_t backing_store_safe_read_from_location(backing_store_i backing_store_int_t value; is_issuing_read = true; ecc_error_occurred = false; - value = ~(*loc); + value = flash_erased_is_one ? ~(*loc) : (*loc); is_issuing_read = false; return value; } From a82b0628b399c35bcdf70f14cabfa0bb27f86af8 Mon Sep 17 00:00:00 2001 From: Fernando Birra Date: Tue, 4 Jun 2024 23:41:26 +0100 Subject: [PATCH 073/519] GC9xxx LCD family drivers (GC9107 and GC9A01) (#23091) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Nick Brassel Co-authored-by: jack <0x6A73@pm.me> Co-authored-by: Joel Challis Co-authored-by: フィルターペーパー <76888457+filterpaper@users.noreply.github.com> Co-authored-by: rookiebwoy <81021475+rookiebwoy@users.noreply.github.com> Fixup boardsource/equals (#23106) Fix make clean test:os_detection (#23112) Fix make clean test:os_detection (#23112)" Fixup boardsource/equals (#23106)" --- drivers/painter/gc9a01/qp_gc9a01_opcodes.h | 77 ---------- drivers/painter/gc9xxx/qp_gc9107.c | 114 +++++++++++++++ drivers/painter/gc9xxx/qp_gc9107.h | 37 +++++ drivers/painter/gc9xxx/qp_gc9107_opcodes.h | 135 ++++++++++++++++++ .../painter/{gc9a01 => gc9xxx}/qp_gc9a01.c | 78 ++++------ .../painter/{gc9a01 => gc9xxx}/qp_gc9a01.h | 0 drivers/painter/gc9xxx/qp_gc9a01_opcodes.h | 104 ++++++++++++++ drivers/painter/gc9xxx/qp_gc9xxx_opcodes.h | 55 +++++++ quantum/painter/qp.h | 6 + quantum/painter/qp_internal.c | 1 + quantum/painter/rules.mk | 16 ++- 11 files changed, 490 insertions(+), 133 deletions(-) delete mode 100644 drivers/painter/gc9a01/qp_gc9a01_opcodes.h create mode 100644 drivers/painter/gc9xxx/qp_gc9107.c create mode 100644 drivers/painter/gc9xxx/qp_gc9107.h create mode 100644 drivers/painter/gc9xxx/qp_gc9107_opcodes.h rename drivers/painter/{gc9a01 => gc9xxx}/qp_gc9a01.c (61%) rename drivers/painter/{gc9a01 => gc9xxx}/qp_gc9a01.h (100%) create mode 100644 drivers/painter/gc9xxx/qp_gc9a01_opcodes.h create mode 100644 drivers/painter/gc9xxx/qp_gc9xxx_opcodes.h diff --git a/drivers/painter/gc9a01/qp_gc9a01_opcodes.h b/drivers/painter/gc9a01/qp_gc9a01_opcodes.h deleted file mode 100644 index 828e42752b0..00000000000 --- a/drivers/painter/gc9a01/qp_gc9a01_opcodes.h +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Paul Cotter (@gr1mr3aver) -// SPDX-License-Identifier: GPL-2.0-or-later -#pragma once - -//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -// Quantum Painter GC9A01 command opcodes -//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - -//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -// Level 1 command opcodes - -#define GC9A01_GET_ID_INFO 0x04 // Get ID information -#define GC9A01_GET_STATUS 0x09 // Get status -#define GC9A01_CMD_SLEEP_ON 0x10 // Enter sleep mode -#define GC9A01_CMD_SLEEP_OFF 0x11 // Exit sleep mode -#define GC9A01_CMD_PARTIAL_ON 0x12 // Enter partial mode -#define GC9A01_CMD_PARTIAL_OFF 0x13 // Exit partial mode -#define GC9A01_CMD_INVERT_ON 0x20 // Enter inverted mode -#define GC9A01_CMD_INVERT_OFF 0x21 // Exit inverted mode -#define GC9A01_CMD_DISPLAY_OFF 0x28 // Disable display -#define GC9A01_CMD_DISPLAY_ON 0x29 // Enable display -#define GC9A01_SET_COL_ADDR 0x2A // Set column address -#define GC9A01_SET_PAGE_ADDR 0x2B // Set page address -#define GC9A01_SET_MEM 0x2C // Set memory -#define GC9A01_SET_PARTIAL_AREA 0x30 // Set partial area -#define GC9A01_SET_VSCROLL 0x33 // Set vertical scroll def -#define GC9A01_CMD_TEARING_ON 0x34 // Tearing line enabled -#define GC9A01_CMD_TEARING_OFF 0x35 // Tearing line disabled -#define GC9A01_SET_MEM_ACS_CTL 0x36 // Set mem access ctl -#define GC9A01_SET_VSCROLL_ADDR 0x37 // Set vscroll start addr -#define GC9A01_CMD_IDLE_OFF 0x38 // Exit idle mode -#define GC9A01_CMD_IDLE_ON 0x39 // Enter idle mode -#define GC9A01_SET_PIX_FMT 0x3A // Set pixel format -#define GC9A01_SET_MEM_CONT 0x3C // Set memory continue -#define GC9A01_SET_TEAR_SCANLINE 0x44 // Set tearing scanline -#define GC9A01_GET_TEAR_SCANLINE 0x45 // Get tearing scanline -#define GC9A01_SET_BRIGHTNESS 0x51 // Set brightness -#define GC9A01_SET_DISPLAY_CTL 0x53 // Set display ctl -#define GC9A01_GET_ID1 0xDA // Get ID1 -#define GC9A01_GET_ID2 0xDB // Get ID2 -#define GC9A01_GET_ID3 0xDC // Get ID3 - -//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -// Level 2 command opcodes - -#define GC9A01_SET_RGB_IF_SIG_CTL 0xB0 // RGB IF signal ctl -#define GC9A01_SET_BLANKING_PORCH_CTL 0xB5 // Set blanking porch ctl -#define GC9A01_SET_FUNCTION_CTL 0xB6 // Set function ctl -#define GC9A01_SET_TEARING_EFFECT 0xBA // Set backlight ctl 3 -#define GC9A01_SET_IF_CTL 0xF6 // Set interface control - -//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -// Level 3 command opcodes - -#define GC9A01_SET_FRAME_RATE 0xE8 // Set frame rate -#define GC9A01_SET_SPI_2DATA 0xE9 // Set frame rate -#define GC9A01_SET_POWER_CTL_1 0xC1 // Set power ctl 1 -#define GC9A01_SET_POWER_CTL_2 0xC3 // Set power ctl 2 -#define GC9A01_SET_POWER_CTL_3 0xC4 // Set power ctl 3 -#define GC9A01_SET_POWER_CTL_4 0xC9 // Set power ctl 4 -#define GC9A01_SET_POWER_CTL_7 0xA7 // Set power ctl 7 -#define GC9A01_SET_INTER_REG_ENABLE1 0xFE // Enable Inter Register 1 -#define GC9A01_SET_INTER_REG_ENABLE2 0xEF // Enable Inter Register 2 -#define GC9A01_SET_GAMMA1 0xF0 // -#define GC9A01_SET_GAMMA2 0xF1 -#define GC9A01_SET_GAMMA3 0xF2 -#define GC9A01_SET_GAMMA4 0xF3 - -//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -// MADCTL Flags -#define GC9A01_MADCTL_MY 0b10000000 -#define GC9A01_MADCTL_MX 0b01000000 -#define GC9A01_MADCTL_MV 0b00100000 -#define GC9A01_MADCTL_ML 0b00010000 -#define GC9A01_MADCTL_RGB 0b00000000 -#define GC9A01_MADCTL_BGR 0b00001000 -#define GC9A01_MADCTL_MH 0b00000100 diff --git a/drivers/painter/gc9xxx/qp_gc9107.c b/drivers/painter/gc9xxx/qp_gc9107.c new file mode 100644 index 00000000000..108344da4f2 --- /dev/null +++ b/drivers/painter/gc9xxx/qp_gc9107.c @@ -0,0 +1,114 @@ +// Copyright 2024 Fernando Birra +// SPDX-License-Identifier: GPL-2.0-or-later +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_gc9107.h" +#include "qp_gc9xxx_opcodes.h" +#include "qp_gc9107_opcodes.h" +#include "qp_tft_panel.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver storage +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +tft_panel_dc_reset_painter_device_t gc9107_drivers[GC9107_NUM_DEVICES] = {0}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Initialization +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +__attribute__((weak)) bool qp_gc9107_init(painter_device_t device, painter_rotation_t rotation) { + // A lot of these "unknown" opcodes are sourced from other OSS projects and are seemingly required for this display to function. + // clang-format off + const uint8_t gc9107_init_sequence[] = { + GC9XXX_SET_INTER_REG_ENABLE1, 5, 0, + GC9XXX_SET_INTER_REG_ENABLE2, 5, 0, + GC9107_SET_FUNCTION_CTL6, 0, 1, GC9107_ALLOW_SET_COMPLEMENT_RGB | 0x08 | GC9107_ALLOW_SET_FRAMERATE, + GC9107_SET_COMPLEMENT_RGB, 0, 1, GC9107_COMPLEMENT_WITH_LSB, + 0xAB, 0, 1, 0x0E, + GC9107_SET_FRAME_RATE, 0, 1, 0x19, + GC9XXX_SET_PIXEL_FORMAT, 0, 1, GC9107_PIXEL_FORMAT_16_BPP_IFPF, + GC9XXX_CMD_SLEEP_OFF, 120, 0, + GC9XXX_CMD_DISPLAY_ON, 20, 0 + }; + + // clang-format on + qp_comms_bulk_command_sequence(device, gc9107_init_sequence, sizeof(gc9107_init_sequence)); + + // Configure the rotation (i.e. the ordering and direction of memory writes in GRAM) + const uint8_t madctl[] = { + [QP_ROTATION_0] = GC9XXX_MADCTL_BGR, + [QP_ROTATION_90] = GC9XXX_MADCTL_BGR | GC9XXX_MADCTL_MX | GC9XXX_MADCTL_MV, + [QP_ROTATION_180] = GC9XXX_MADCTL_BGR | GC9XXX_MADCTL_MX | GC9XXX_MADCTL_MY, + [QP_ROTATION_270] = GC9XXX_MADCTL_BGR | GC9XXX_MADCTL_MV | GC9XXX_MADCTL_MY, + }; + qp_comms_command_databyte(device, GC9XXX_SET_MEM_ACS_CTL, madctl[rotation]); + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver vtable +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +const tft_panel_dc_reset_painter_driver_vtable_t gc9107_driver_vtable = { + .base = + { + .init = qp_gc9107_init, + .power = qp_tft_panel_power, + .clear = qp_tft_panel_clear, + .flush = qp_tft_panel_flush, + .pixdata = qp_tft_panel_pixdata, + .viewport = qp_tft_panel_viewport, + .palette_convert = qp_tft_panel_palette_convert_rgb565_swapped, + .append_pixels = qp_tft_panel_append_pixels_rgb565, + .append_pixdata = qp_tft_panel_append_pixdata, + }, + .num_window_bytes = 2, + .swap_window_coords = false, + .opcodes = + { + .display_on = GC9XXX_CMD_DISPLAY_ON, + .display_off = GC9XXX_CMD_DISPLAY_OFF, + .set_column_address = GC9XXX_SET_COL_ADDR, + .set_row_address = GC9XXX_SET_ROW_ADDR, + .enable_writes = GC9XXX_SET_MEM, + }, +}; + +#ifdef QUANTUM_PAINTER_GC9107_SPI_ENABLE +// Factory function for creating a handle to the GC9107 device +painter_device_t qp_gc9107_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode) { + for (uint32_t i = 0; i < GC9107_NUM_DEVICES; ++i) { + tft_panel_dc_reset_painter_device_t *driver = &gc9107_drivers[i]; + if (!driver->base.driver_vtable) { + driver->base.driver_vtable = (const painter_driver_vtable_t *)&gc9107_driver_vtable; + driver->base.comms_vtable = (const painter_comms_vtable_t *)&spi_comms_with_dc_vtable; + driver->base.native_bits_per_pixel = 16; // RGB565 + driver->base.panel_width = panel_width; + driver->base.panel_height = panel_height; + driver->base.rotation = QP_ROTATION_0; + driver->base.offset_x = 2; + driver->base.offset_y = 1; + + // SPI and other pin configuration + driver->base.comms_config = &driver->spi_dc_reset_config; + driver->spi_dc_reset_config.spi_config.chip_select_pin = chip_select_pin; + driver->spi_dc_reset_config.spi_config.divisor = spi_divisor; + driver->spi_dc_reset_config.spi_config.lsb_first = false; + driver->spi_dc_reset_config.spi_config.mode = spi_mode; + driver->spi_dc_reset_config.dc_pin = dc_pin; + driver->spi_dc_reset_config.reset_pin = reset_pin; + driver->spi_dc_reset_config.command_params_uses_command_pin = false; + + if (!qp_internal_register_device((painter_device_t)driver)) { + memset(driver, 0, sizeof(tft_panel_dc_reset_painter_device_t)); + return NULL; + } + + return (painter_device_t)driver; + } + } + return NULL; +} + +#endif // QUANTUM_PAINTER_GC9107_SPI_ENABLE diff --git a/drivers/painter/gc9xxx/qp_gc9107.h b/drivers/painter/gc9xxx/qp_gc9107.h new file mode 100644 index 00000000000..b0b08f76654 --- /dev/null +++ b/drivers/painter/gc9xxx/qp_gc9107.h @@ -0,0 +1,37 @@ +// Copyright 2024 Fernando Birra (@gr1mr3aver) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include "gpio.h" +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter GC9107 configurables (add to your keyboard's config.h) + +#ifndef GC9107_NUM_DEVICES +/** + * @def This controls the maximum number of GC9107 devices that Quantum Painter can communicate with at any one time. + * Increasing this number allows for multiple displays to be used. + */ +# define GC9107_NUM_DEVICES 1 +#endif + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter GC9107 device factories + +#ifdef QUANTUM_PAINTER_GC9107_SPI_ENABLE +/** + * Factory method for an GC9107 SPI LCD device. + * + * @param panel_width[in] the width of the display panel + * @param panel_height[in] the height of the display panel + * @param chip_select_pin[in] the GPIO pin used for SPI chip select + * @param dc_pin[in] the GPIO pin used for D/C control + * @param reset_pin[in] the GPIO pin used for RST + * @param spi_divisor[in] the SPI divisor to use when communicating with the display + * @param spi_mode[in] the SPI mode to use when communicating with the display + * @return the device handle used with all drawing routines in Quantum Painter + */ +painter_device_t qp_gc9107_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); + +#endif // QUANTUM_PAINTER_GC9107_SPI_ENABLE diff --git a/drivers/painter/gc9xxx/qp_gc9107_opcodes.h b/drivers/painter/gc9xxx/qp_gc9107_opcodes.h new file mode 100644 index 00000000000..e9b308eb49b --- /dev/null +++ b/drivers/painter/gc9xxx/qp_gc9107_opcodes.h @@ -0,0 +1,135 @@ +// Copyright 2024 Fernando Birra +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter GC9107 command opcodes +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +#define GC9107_GET_POWER_MODE 0x0A // Get power mode +#define GC9107_GET_MADCTL 0x0B // Get MADCTL +#define GC9107_GET_PIXEL_FMT 0x0C // Get pixel format +#define GC9107_GET_IMAGE_FMT 0x0D // Get image format +#define GC9107_GET_SIGNAL_MODE 0x0E // Get signal mode +#define GC9107_GET_DIAG_RESULT 0x0F // Get self-diagnostic results + +#define GC9107_SET_FRAME_RATE 0xA8 // Set frame rate +#define GC9107_SET_COMPLEMENT_RGB 0xAC // Set complement Principle RGB +#define GC9107_SET_BLANK_PORCH 0xAD // Set blank porch control, 0;front_porch[6:0],0;back_porch[6:0] +#define GC9107_SET_FUNCTION_CTL1 0xB1 // Set access to AVDD_VCL_CLK and VGH_VGL_CLK commands +#define GC9107_SET_FUNCTION_CTL2 0xB2 // Set access to VGH, VGH control commands +#define GC9107_SET_FUNCTION_CTL3 0xB3 // Set access to Gamma control commands +#define GC9107_SET_DISPLAY_INVERSION 0xB4 // Set Display Inversion control +#define GC9107_SET_FUNCTION_CTL6 0xB6 // Set access to commands SET_FRAME_RATE, SET_COMPLEMENT_RGB and SET_BLANK_PORCH +#define GC9107_SET_CUSTOM_ID_INFO 0xD3 // Set customized display id information +#define GC9107_AVDD_VCL_CLK 0xE3 // AVDD_CLK +#define GC9107_SET_VGH 0xE8 // Set VGH +#define GC9107_SET_VGL 0xE9 // Set VGL +#define GC9107_SET_VGH_VGL_CLK 0xEA // Set VGH and VGL clock divisors + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// GC9107 Parameter constants + +// Parameter values for +// GC9107_SET_PIXEL_FORMAT +#define GC9107_PIXEL_FORMAT_12_BPP_IFPF (0b001 << 0) // 12 bits per pixel +#define GC9107_PIXEL_FORMAT_16_BPP_IFPF (0b101 << 0) // 16 bits per pixel +#define GC9107_PIXEL_FORMAT_18_BPP_IFPB (0b110 << 0) // 18 bits per pixel + +// Parameter values for +// GC9107_SET_COMPLEMENT_RGB +#define GC9107_COMPLEMENT_WITH_0 0x00 // R0 <- B0 <- 0, except if data is FFh +#define GC9107_COMPLEMENT_WITH_1 0x40 // R0 <- B0 <- 1, except if data is 00h +#define GC9107_COMPLEMENT_WITH_MSB 0x80 // R0 <- R5, B0 <- B5 +#define GC9107_COMPLEMENT_WITH_LSB 0xC0 // R0 <- B0 <- G0 +// Parameter masks for +// GC9107_SET_FUNCTION_CTL1 +#define GC9107_ALLOW_AVDD_VCL_CLK 0b00001000 // Allow AVDD_VCL_CLK command +// Parameter masks for +// GC9107_SET_FUNCTION_CTL2 +#define GC9107_ALLOW_SET_VGH 0b00000001 // Allow GC9107_SET_VGH +#define GC9107_ALLOW_SET_VGL 0b00000010 // Allow GC9107_SET_VGL +#define GC9107_ALLOW_SET_VGH_VGL_CLK 0b00000100 // Allow GC9107_SET_VGH_VGL_CLK +// Parameter masks for +// GC9107_SET_FUNCTION_CTL3 +#define GC9107_ALLOW_SET_GAMMA1 0b00000001 // Allow GC9107_SET_GAMMA1 +#define GC9107_ALLOW_SET_GAMMA2 0b00000010 // Allow GC9107_SET_GAMMA2 +// Parameter mask for +// GC9107_SET_FUNCTION_CTL6 +#define GC9107_ALLOW_SET_FRAMERATE 0b000000001 // Allow GC9107_SET_FRAME_RATE +#define GC9107_ALLOW_SET_COMPLEMENT_RGB 0b000010000 // Allow GC9107_SET_COMPLEMENT_RGB +#define GC9107_ALLOW_SET_BLANK_PORCH 0b000100000 // Allow GFC9107_SET_BLANK_PORCH +// Parameter values for +// AVDD_CLK_AD part (Most significant nibble) +#define GC9107_AVDD_CLK_AD_2T 0x00 +#define GC9107_AVDD_CLK_AD_3T 0x10 +#define GC9107_AVDD_CLK_AD_4T 0x20 +#define GC9107_AVDD_CLK_AD_5T 0x30 +#define GC9107_AVDD_CLK_AD_6T 0x40 +#define GC9107_AVDD_CLK_AD_7T 0x50 +#define GC9107_AVDD_CLK_AD_8T 0x60 +#define GC9107_AVDD_CLK_AD_9T 0x70 +// Parameter values for +// VCL_CLK_AD part (Least significant nibble) +#define GC9107_VCL_CLK_AD_2T 0x00 +#define GC9107_VCL_CLK_AD_3T 0x01 +#define GC9107_VCL_CLK_AD_4T 0x02 +#define GC9107_VCL_CLK_AD_5T 0x03 +#define GC9107_VCL_CLK_AD_6T 0x04 +#define GC9107_VCL_CLK_AD_7T 0x05 +#define GC9107_VCL_CLK_AD_8T 0x06 +#define GC9107_VCL_CLK_AD_9T 0x07 +// Parameter values for +// GC9107_SET_VGH +#define GC9107_VGH_P100 0x20 // +10 V +#define GC9107_VGH_P110 0x21 // +11 V +#define GC9107_VGH_P120 0x22 // +12 V +#define GC9107_VGH_P130 0x23 // +13 V +#define GC9107_VGH_P140 0x24 // +14 V +#define GC9107_VGH_P150 0x25 // +15 V +// Parameter values for +// GC9107_SET_VGL +#define VGL_N_075 0x40 // -7.5 V +#define VGL_N_085 0x41 // -8.5 V +#define VGL_N_095 0x42 // -9.5 V +#define VGL_N_100 0x43 // -10.0 V +#define VGL_N_105 0x44 // -10.5 V +#define VGL_N_110 0x45 // -11.0 V +#define VGL_N_120 0x46 // -12.0 V +#define VGL_N_130 0x47 // -13.0 V +// Parameter masks for +// GC9107_SET_VGH_VGL_CLK (VGH Divisor) +#define GC9107_VGH_CLK_DIV_2 0x00 // Clock divisor = 2 -> 6.0 Mhz +#define GC9107_VGH_CLK_DIV_3 0x10 // Clock divisor = 3 -> 4.0 Mhz +#define GC9107_VGH_CLK_DIV_4 0x20 // Clock divisor = 4 -> 3.0 Mhz +#define GC9107_VGH_CLK_DIV_5 0x30 // Clock divisor = 5 -> 2.4 Mhz +#define GC9107_VGH_CLK_DIV_6 0x40 // Clock divisor = 6 -> 2.0 Mhz +#define GC9107_VGH_CLK_DIV_7 0x50 // Clock divisor = 7 -> 1.7 Mhz +#define GC9107_VGH_CLK_DIV_8 0x60 // Clock divisor = 8 -> 1.5 Mhz +#define GC9107_VGH_CLK_DIV_9 0x70 // Clock divisor = 9 -> 1.3 Mhz +#define GC9107_VGH_CLK_DIV_10 0x80 // Clock divisor = 10 -> 1.2 Mhz +#define GC9107_VGH_CLK_DIV_12 0x90 // Clock divisor = 12 -> 1.0 Mhz +#define GC9107_VGH_CLK_DIV_15 0xA0 // Clock divisor = 15 -> 0.8 Mhz +#define GC9107_VGH_CLK_DIV_20 0xB0 // Clock divisor = 20 -> 0.6 Mhz +#define GC9107_VGH_CLK_DIV_24 0xC0 // Clock divisor = 24 -> 0.5 Mhz +#define GC9107_VGH_CLK_DIV_30 0xD0 // Clock divisor = 30 -> 0.4 Mhz +#define GC9107_VGH_CLK_DIV_40 0xE0 // Clock divisor = 40 -> 0.3 Mhz +#define GC9107_VGH_CLK_DIV_60 0xE0 // Clock divisor = 40 -> 0.2 Mhz +// Parameter masks for +// GC9107_SET_VGH_VGL_CLK (VGL Divisor) +#define GC9107_VGL_CLK_DIV_2 0x00 // Clock divisor = 2 -> 6.0 Mhz +#define GC9107_VGL_CLK_DIV_3 0x01 // Clock divisor = 3 -> 4.0 Mhz +#define GC9107_VGL_CLK_DIV_4 0x02 // Clock divisor = 4 -> 3.0 Mhz +#define GC9107_VGL_CLK_DIV_5 0x03 // Clock divisor = 5 -> 2.4 Mhz +#define GC9107_VGL_CLK_DIV_6 0x04 // Clock divisor = 6 -> 2.0 Mhz +#define GC9107_VGL_CLK_DIV_7 0x05 // Clock divisor = 7 -> 1.7 Mhz +#define GC9107_VGL_CLK_DIV_8 0x06 // Clock divisor = 8 -> 1.5 Mhz +#define GC9107_VGL_CLK_DIV_9 0x07 // Clock divisor = 9 -> 1.3 Mhz +#define GC9107_VGL_CLK_DIV_10 0x08 // Clock divisor = 10 -> 1.2 Mhz +#define GC9107_VGL_CLK_DIV_12 0x09 // Clock divisor = 12 -> 1.0 Mhz +#define GC9107_VGL_CLK_DIV_15 0x0A // Clock divisor = 15 -> 0.8 Mhz +#define GC9107_VGL_CLK_DIV_20 0x0B // Clock divisor = 20 -> 0.6 Mhz +#define GC9107_VGL_CLK_DIV_24 0x0C // Clock divisor = 24 -> 0.5 Mhz +#define GC9107_VGL_CLK_DIV_30 0x0D // Clock divisor = 30 -> 0.4 Mhz +#define GC9107_VGL_CLK_DIV_40 0x0E // Clock divisor = 40 -> 0.3 Mhz +#define GC9107_VGL_CLK_DIV_60 0x0E // Clock divisor = 40 -> 0.2 Mhz diff --git a/drivers/painter/gc9a01/qp_gc9a01.c b/drivers/painter/gc9xxx/qp_gc9a01.c similarity index 61% rename from drivers/painter/gc9a01/qp_gc9a01.c rename to drivers/painter/gc9xxx/qp_gc9a01.c index fe6fa7a9d02..f037a4cc87b 100644 --- a/drivers/painter/gc9a01/qp_gc9a01.c +++ b/drivers/painter/gc9xxx/qp_gc9a01.c @@ -5,6 +5,7 @@ #include "qp_internal.h" #include "qp_comms.h" #include "qp_gc9a01.h" +#include "qp_gc9xxx_opcodes.h" #include "qp_gc9a01_opcodes.h" #include "qp_tft_panel.h" @@ -20,71 +21,40 @@ tft_panel_dc_reset_painter_device_t gc9a01_drivers[GC9A01_NUM_DEVICES] = {0}; __attribute__((weak)) bool qp_gc9a01_init(painter_device_t device, painter_rotation_t rotation) { // A lot of these "unknown" opcodes are sourced from other OSS projects and are seemingly required for this display to function. // clang-format off + const uint8_t gc9a01_init_sequence[] = { // Command, Delay, N, Data[N] - GC9A01_SET_INTER_REG_ENABLE2, 0, 0, - 0xEB, 0, 1, 0x14, - GC9A01_SET_INTER_REG_ENABLE1, 0, 0, - GC9A01_SET_INTER_REG_ENABLE2, 0, 0, - 0xEB, 0, 1, 0x14, + GC9XXX_SET_INTER_REG_ENABLE1, 0, 0, + GC9XXX_SET_INTER_REG_ENABLE2, 0, 0, 0x84, 0, 1, 0x40, - 0x85, 0, 1, 0xFF, - 0x86, 0, 1, 0xFF, - 0x87, 0, 1, 0xFF, - 0x88, 0, 1, 0x0A, - 0x89, 0, 1, 0x21, - 0x8a, 0, 1, 0x00, - 0x8b, 0, 1, 0x80, - 0x8c, 0, 1, 0x01, - 0x8d, 0, 1, 0x01, - 0x8e, 0, 1, 0xFF, - 0x8f, 0, 1, 0xFF, - GC9A01_SET_FUNCTION_CTL, 0, 2, 0x00, 0x20, - GC9A01_SET_PIX_FMT, 0, 1, 0x55, - 0x90, 0, 4, 0x08, 0x08, 0x08, 0x08, - 0xBD, 0, 1, 0x06, - 0xBC, 0, 1, 0x00, - 0xFF, 0, 3, 0x60, 0x01, 0x04, - GC9A01_SET_POWER_CTL_2, 0, 1, 0x13, - GC9A01_SET_POWER_CTL_3, 0, 1, 0x13, + GC9A01_SET_FUNCTION_CTL, 0, 3, 0x00, GC9A01_SOURCE_OUTPUT_SCAN_DIRECTION_S360_TO_S1 | GC9A01_GATE_OUTPUT_SCAN_DIRECTION_G1_TO_G32, GC9A01_LCD_DRIVE_LINE_240, // Only works if the previous command is present (undocumented) + GC9A01_SET_POWER_CTL_2, 0, 1, 0x20, + GC9A01_SET_POWER_CTL_3, 0, 1, 0x20, GC9A01_SET_POWER_CTL_4, 0, 1, 0x22, - 0xBE, 0, 1, 0x11, - 0xE1, 0, 2, 0x10, 0x0E, - 0xDF, 0, 3, 0x21, 0x0C, 0x02, - GC9A01_SET_GAMMA1, 0, 6, 0x45, 0x09, 0x08, 0x08, 0x26, 0x2A, - GC9A01_SET_GAMMA2, 0, 6, 0x43, 0x70, 0x72, 0x36, 0x37, 0x6F, + GC9XXX_SET_GAMMA1, 0, 6, 0x45, 0x09, 0x08, 0x08, 0x26, 0x2A, + GC9XXX_SET_GAMMA2, 0, 6, 0x43, 0x70, 0x72, 0x36, 0x37, 0x6F, GC9A01_SET_GAMMA3, 0, 6, 0x45, 0x09, 0x08, 0x08, 0x26, 0x2A, GC9A01_SET_GAMMA4, 0, 6, 0x43, 0x70, 0x72, 0x36, 0x37, 0x6F, - 0xED, 0, 2, 0x1B, 0x0B, - 0xAE, 0, 1, 0x77, - 0xCD, 0, 1, 0x63, - 0x70, 0, 9, 0x07, 0x07, 0x04, 0x0E, 0x0F, 0x09, 0x07, 0x08, 0x03, - GC9A01_SET_FRAME_RATE, 0, 1, 0x34, - 0x62, 0, 12, 0x18, 0x0D, 0x71, 0xED, 0x70, 0x70, 0x18, 0x0F, 0x71, 0xEF, 0x70, 0x70, - 0x63, 0, 12, 0x18, 0x11, 0x71, 0xF1, 0x70, 0x70, 0x18, 0x13, 0x71, 0xF3, 0x70, 0x70, - 0x64, 0, 7, 0x28, 0x29, 0xF1, 0x01, 0xF1, 0x00, 0x07, 0x66, 0, 10, 0x3C, 0x00, 0xCD, 0x67, 0x45, 0x45, 0x10, 0x00, 0x00, 0x00, 0x67, 0, 10, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x01, 0x54, 0x10, 0x32, 0x98, - 0x74, 0, 7, 0x10, 0x85, 0x80, 0x00, 0x00, 0x4E, 0x00, - 0x98, 0, 2, 0x3E, 0x07, - GC9A01_CMD_TEARING_OFF, 0, 0, - GC9A01_CMD_INVERT_OFF, 0, 0, - GC9A01_CMD_SLEEP_OFF, 120, 0, - GC9A01_CMD_DISPLAY_ON, 20, 0 + GC9XXX_CMD_TEARING_ON, 0, 0, + GC9XXX_SET_PIXEL_FORMAT, 0, 1, GC9A01_PIXEL_FORMAT_16_BPP_DBI, + GC9XXX_CMD_INVERT_ON, 0, 0, + GC9XXX_CMD_SLEEP_OFF, 120, 0, + GC9XXX_CMD_DISPLAY_ON, 20, 0 }; // clang-format on - // clang-format on qp_comms_bulk_command_sequence(device, gc9a01_init_sequence, sizeof(gc9a01_init_sequence)); // Configure the rotation (i.e. the ordering and direction of memory writes in GRAM) const uint8_t madctl[] = { - [QP_ROTATION_0] = GC9A01_MADCTL_BGR, - [QP_ROTATION_90] = GC9A01_MADCTL_BGR | GC9A01_MADCTL_MX | GC9A01_MADCTL_MV, - [QP_ROTATION_180] = GC9A01_MADCTL_BGR | GC9A01_MADCTL_MX | GC9A01_MADCTL_MY, - [QP_ROTATION_270] = GC9A01_MADCTL_BGR | GC9A01_MADCTL_MV | GC9A01_MADCTL_MY, + [QP_ROTATION_0] = GC9XXX_MADCTL_BGR, + [QP_ROTATION_90] = GC9XXX_MADCTL_BGR | GC9XXX_MADCTL_MX | GC9XXX_MADCTL_MV, + [QP_ROTATION_180] = GC9XXX_MADCTL_BGR | GC9XXX_MADCTL_MX | GC9XXX_MADCTL_MY, + [QP_ROTATION_270] = GC9XXX_MADCTL_BGR | GC9XXX_MADCTL_MV | GC9XXX_MADCTL_MY, }; - qp_comms_command_databyte(device, GC9A01_SET_MEM_ACS_CTL, madctl[rotation]); + qp_comms_command_databyte(device, GC9XXX_SET_MEM_ACS_CTL, madctl[rotation]); return true; } @@ -110,11 +80,11 @@ const tft_panel_dc_reset_painter_driver_vtable_t gc9a01_driver_vtable = { .swap_window_coords = false, .opcodes = { - .display_on = GC9A01_CMD_DISPLAY_ON, - .display_off = GC9A01_CMD_DISPLAY_OFF, - .set_column_address = GC9A01_SET_COL_ADDR, - .set_row_address = GC9A01_SET_PAGE_ADDR, - .enable_writes = GC9A01_SET_MEM, + .display_on = GC9XXX_CMD_DISPLAY_ON, + .display_off = GC9XXX_CMD_DISPLAY_OFF, + .set_column_address = GC9XXX_SET_COL_ADDR, + .set_row_address = GC9XXX_SET_ROW_ADDR, + .enable_writes = GC9XXX_SET_MEM, }, }; diff --git a/drivers/painter/gc9a01/qp_gc9a01.h b/drivers/painter/gc9xxx/qp_gc9a01.h similarity index 100% rename from drivers/painter/gc9a01/qp_gc9a01.h rename to drivers/painter/gc9xxx/qp_gc9a01.h diff --git a/drivers/painter/gc9xxx/qp_gc9a01_opcodes.h b/drivers/painter/gc9xxx/qp_gc9a01_opcodes.h new file mode 100644 index 00000000000..5853902e683 --- /dev/null +++ b/drivers/painter/gc9xxx/qp_gc9a01_opcodes.h @@ -0,0 +1,104 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// Copyright 2024 Fernando Birra +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter GC9A01 command opcodes +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +#define GC9A01_SET_MEM_CONT 0x3C // Set memory continue +#define GC9A01_SET_BRIGHTNESS 0x51 // Set brightness +#define GC9A01_SET_DISPLAY_CTL 0x53 // Set display ctl + +#define GC9A01_SET_RGB_IF_SIG_CTL 0xB0 // RGB IF signal ctl +#define GC9A01_SET_BLANKING_PORCH_CTL 0xB5 // Set blanking porch ctl +#define GC9A01_SET_FUNCTION_CTL 0xB6 // Set function ctl +#define GC9A01_SET_TEARING_EFFECT 0xBA // Set tering effect control +#define GC9A01_SET_POWER_CTL_7 0xA7 // Set power ctl 7 +#define GC9A01_SET_POWER_CTL_1 0xC1 // Set power ctl 1 +#define GC9A01_SET_POWER_CTL_2 0xC3 // Set power ctl 2 +#define GC9A01_SET_POWER_CTL_3 0xC4 // Set power ctl 3 +#define GC9A01_SET_POWER_CTL_4 0xC9 // Set power ctl 4 +#define GC9A01_SET_FRAME_RATE 0xE8 // Set frame rate +#define GC9A01_SET_SPI_2DATA 0xE9 // Set frame rate +#define GC9A01_SET_GAMMA3 0xF2 // Set gamma 3 +#define GC9A01_SET_GAMMA4 0xF3 // Set gamma 4 +#define GC9A01_SET_IF_CTL 0xF6 // Set interface control + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// GC9A01 MADCTL Flags +#define GC9A01_MADCTL_MH 0b00000100 + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// GC9A01 Parameter constants + +// Parameter values for +// GC9A01_SET_PIXEL_FORMAT +#define GC9A01_PIXEL_FORMAT_12_BPP_DBI (0b011 << 0) // 12 bits/pixel MCU interface format +#define GC9A01_PIXEL_FORMAT_16_BPP_DBI (0b101 << 0) // 16 bits/pixel MCU interface format +#define GC9A01_PIXEL_FORMAT_18_BPP_DBI (0b110 << 0) // 18 bits/pixel MCU interface format +#define GC9A01_PIXEL_FORMAT_16_BPP_DPI (0b101 << 4) // 16 bits/pixel RGB interface format +#define GC9A01_PIXEL_FORMAT_18_BPP_DPI (0b110 << 4) // 18 bits/pixel RGB interface format + +// Parameter values for +// GC9A01_SET_FUNCTION_CTL (2nd parameter) +#define GC9A01_SOURCE_OUTPUT_SCAN_DIRECTION_S1_TO_S360 0b00000000 +#define GC9A01_SOURCE_OUTPUT_SCAN_DIRECTION_S360_TO_S1 0b00100000 +#define GC9A01_GATE_OUTPUT_SCAN_DIRECTION_G1_TO_G32 0b00000000 +#define GC9A01_GATE_OUTPUT_SCAN_DIRECTION_G32_TO_G1 0b01000000 +#define GC9A01_SCAN_MODE_INTER 0x10 + +// Parameter values for +// GC9A01_SET_FUNCTION_CTL (3rd parameter) +#define GC9A01_LCD_DRIVE_LINE_16 0x01 +#define GC9A01_LCD_DRIVE_LINE_24 0x02 +#define GC9A01_LCD_DRIVE_LINE_32 0x03 +#define GC9A01_LCD_DRIVE_LINE_40 0x04 +#define GC9A01_LCD_DRIVE_LINE_48 0x05 +#define GC9A01_LCD_DRIVE_LINE_56 0x06 +#define GC9A01_LCD_DRIVE_LINE_64 0x07 +#define GC9A01_LCD_DRIVE_LINE_72 0x08 +#define GC9A01_LCD_DRIVE_LINE_80 0x09 +#define GC9A01_LCD_DRIVE_LINE_88 0x0A +#define GC9A01_LCD_DRIVE_LINE_96 0x0B +#define GC9A01_LCD_DRIVE_LINE_104 0x0C +#define GC9A01_LCD_DRIVE_LINE_112 0x0D +#define GC9A01_LCD_DRIVE_LINE_120 0x0E +#define GC9A01_LCD_DRIVE_LINE_128 0x0F +#define GC9A01_LCD_DRIVE_LINE_136 0x10 +#define GC9A01_LCD_DRIVE_LINE_144 0x11 +#define GC9A01_LCD_DRIVE_LINE_152 0x12 +#define GC9A01_LCD_DRIVE_LINE_160 0x13 +#define GC9A01_LCD_DRIVE_LINE_168 0x14 +#define GC9A01_LCD_DRIVE_LINE_176 0x15 +#define GC9A01_LCD_DRIVE_LINE_184 0x16 +#define GC9A01_LCD_DRIVE_LINE_192 0x17 +#define GC9A01_LCD_DRIVE_LINE_200 0x18 +#define GC9A01_LCD_DRIVE_LINE_208 0x19 +#define GC9A01_LCD_DRIVE_LINE_216 0x1A +#define GC9A01_LCD_DRIVE_LINE_224 0x1B +#define GC9A01_LCD_DRIVE_LINE_232 0x1C +#define GC9A01_LCD_DRIVE_LINE_240 0x1D + +// Parameter values for +// GC9A01_SET_DISPLAY_CTL +#define GC9A01_BRIGHTNESS_CONTROL_ON 0b00100000 +#define GC9A01_DIMMING_ON 0b00001000 +#define GC9A01_BACKLIGHT_ON 0b00000100 +#define GC9A01_BRIGHTNESS_CONTROL_OFF 0b00000000 +#define GC9A01_DIMMING_OFF 0b00000000 +#define GC9A01_BACKLIGHT_OFF 0b00000000 + +// Parameter values for +// GC9A01_SET_IF_CTL +#define GC9A01_DISPLAY_MODE_INTERNAL_CLOCK 0b00000000 +#define GC9A01_DISPLAY_MODE_RGB_INTERFACE 0b00000100 +#define GC9A01_DISPLAY_MODE_VSYNC_INTERFACE 0b00001000 +#define GC9A01_DSISPLAY_MODE_DISABLED 0b00001100 + +#define GC0A01_GRAM_INTERFACE_VSYNC 0b00000000 +#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 diff --git a/drivers/painter/gc9xxx/qp_gc9xxx_opcodes.h b/drivers/painter/gc9xxx/qp_gc9xxx_opcodes.h new file mode 100644 index 00000000000..7e0fbf9110b --- /dev/null +++ b/drivers/painter/gc9xxx/qp_gc9xxx_opcodes.h @@ -0,0 +1,55 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// Copyright 2024 Fernando Birra +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter GC9xxx command opcodes +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +#define GC9XXX_GET_ID_INFO 0x04 // Get ID information +#define GC9XXX_GET_STATUS 0x09 // Get status + +#define GC9XXX_CMD_SLEEP_ON 0x10 // Enter sleep mode +#define GC9XXX_CMD_SLEEP_OFF 0x11 // Exit sleep mode +#define GC9XXX_CMD_PARTIAL_ON 0x12 // Enter partial mode +#define GC9XXX_CMD_PARTIAL_OFF 0x13 // Exit partial mode + +#define GC9XXX_CMD_INVERT_OFF 0x20 // Exit inverted mode +#define GC9XXX_CMD_INVERT_ON 0x21 // Enter inverted mode +#define GC9XXX_CMD_DISPLAY_OFF 0x28 // Disable display +#define GC9XXX_CMD_DISPLAY_ON 0x29 // Enable display +#define GC9XXX_SET_COL_ADDR 0x2A // Set column address (MSB(StartCol),LSB(StartCol),MSB(EndCol),LSB(EndCol) +#define GC9XXX_SET_ROW_ADDR 0x2B // Set row address (MSB(StartRow),LSB(StartRow),MSB(EndRow),LSB(EndRow) +#define GC9XXX_SET_MEM 0x2C // Set (write) memory + +#define GC9XXX_SET_PARTIAL_AREA 0x30 // Set partial area (MSB(StartRow),LSB(StartRow),MSB(EndRow),LSB(EndRow) +#define GC9XXX_SET_VSCROLL 0x33 // Set vertical scroll MSB(TFA),LSB(TFA),MSB(VSA),LSB(VSA)+ GC9107 extra param: MSB(BFA),LSB(BFA) +#define GC9XXX_CMD_TEARING_OFF 0x34 // Tearing effect line OFF +#define GC9XXX_CMD_TEARING_ON 0x35 // Tearing effect line ON +#define GC9XXX_SET_MEM_ACS_CTL 0x36 // Set mem access ctl +#define GC9XXX_SET_VSCROLL_ADDR 0x37 // Set vscroll start addr +#define GC9XXX_CMD_IDLE_OFF 0x38 // Exit idle mode +#define GC9XXX_CMD_IDLE_ON 0x39 // Enter idle mode +#define GC9XXX_SET_PIXEL_FORMAT 0x3A // Set pixel format +#define GC9XXX_SET_TEAR_SCANLINE 0x44 // Set tearing scanline (Scanline = LS bit of Param 1 (GC9A01) + Param 2(GC9XXX)) +#define GC9XXX_GET_TEAR_SCANLINE 0x45 // Get tearing scanline (Scanline = LS bit of Param 1 (GC9A01) + Param 2(GC9XXX)) +#define GC9XXX_GET_ID1 0xDA // Get ID1 +#define GC9XXX_GET_ID2 0xDB // Get ID2 +#define GC9XXX_GET_ID3 0xDC // Get ID3 +#define GC9XXX_SET_INTER_REG_ENABLE1 0xFE // Enable Inter Register 1 +#define GC9XXX_SET_INTER_REG_ENABLE2 0xEF // Enable Inter Register 2 +#define GC9XXX_SET_GAMMA1 0xF0 // Set gamma 1 +#define GC9XXX_SET_GAMMA2 0xF1 // Set gamma 2 + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// MADCTL Flags +#define GC9XXX_MADCTL_MY 0b10000000 // Mirror Y (row address order) +#define GC9XXX_MADCTL_MX 0b01000000 // Mirror X (column address order) +#define GC9XXX_MADCTL_MV 0b00100000 // Vertical Refresh Order (bottom to top) +#define GC9XXX_MADCTL_ML 0b00010000 +#define GC9XXX_MADCTL_BGR 0b00001000 +#define GC9XXX_MADCTL_RGB 0b00000000 + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// GC9XXX Parameter constants diff --git a/quantum/painter/qp.h b/quantum/painter/qp.h index 02acbf589a3..820c418f43b 100644 --- a/quantum/painter/qp.h +++ b/quantum/painter/qp.h @@ -539,6 +539,12 @@ int16_t qp_drawtext_recolor(painter_device_t device, uint16_t x, uint16_t y, pai # define GC9A01_NUM_DEVICES 0 #endif // QUANTUM_PAINTER_GC9A01_ENABLE +#ifdef QUANTUM_PAINTER_GC9107_ENABLE +# include "qp_gc9107.h" +#else // QUANTUM_PAINTER_GC9107_ENABLE +# define GC9107_NUM_DEVICES 0 +#endif // QUANTUM_PAINTER_GC9107_ENABLE + #ifdef QUANTUM_PAINTER_SSD1351_ENABLE # include "qp_ssd1351.h" #else // QUANTUM_PAINTER_SSD1351_ENABLE diff --git a/quantum/painter/qp_internal.c b/quantum/painter/qp_internal.c index 1f0f9817967..7d4a6430afe 100644 --- a/quantum/painter/qp_internal.c +++ b/quantum/painter/qp_internal.c @@ -16,6 +16,7 @@ enum { + (ST7789_NUM_DEVICES) // ST7789 + (ST7735_NUM_DEVICES) // ST7735 + (GC9A01_NUM_DEVICES) // GC9A01 + + (GC9107_NUM_DEVICES) // GC9107 + (SSD1351_NUM_DEVICES) // SSD1351 + (SH1106_NUM_DEVICES) // SH1106 }; diff --git a/quantum/painter/rules.mk b/quantum/painter/rules.mk index d991a6d7423..7b2ab702ee1 100644 --- a/quantum/painter/rules.mk +++ b/quantum/painter/rules.mk @@ -14,6 +14,7 @@ VALID_QUANTUM_PAINTER_DRIVERS := \ st7735_spi \ st7789_spi \ gc9a01_spi \ + gc9107_spi \ ssd1351_spi \ sh1106_i2c \ sh1106_spi @@ -131,10 +132,21 @@ define handle_quantum_painter_driver OPT_DEFS += -DQUANTUM_PAINTER_GC9A01_ENABLE -DQUANTUM_PAINTER_GC9A01_SPI_ENABLE COMMON_VPATH += \ $(DRIVER_PATH)/painter/tft_panel \ - $(DRIVER_PATH)/painter/gc9a01 + $(DRIVER_PATH)/painter/gc9xxx SRC += \ $(DRIVER_PATH)/painter/tft_panel/qp_tft_panel.c \ - $(DRIVER_PATH)/painter/gc9a01/qp_gc9a01.c + $(DRIVER_PATH)/painter/gc9xxx/qp_gc9a01.c + + else ifeq ($$(strip $$(CURRENT_PAINTER_DRIVER)),gc9107_spi) + QUANTUM_PAINTER_NEEDS_COMMS_SPI := yes + QUANTUM_PAINTER_NEEDS_COMMS_SPI_DC_RESET := yes + OPT_DEFS += -DQUANTUM_PAINTER_GC9107_ENABLE -DQUANTUM_PAINTER_GC9107_SPI_ENABLE + COMMON_VPATH += \ + $(DRIVER_PATH)/painter/tft_panel \ + $(DRIVER_PATH)/painter/gc9xxx + SRC += \ + $(DRIVER_PATH)/painter/tft_panel/qp_tft_panel.c \ + $(DRIVER_PATH)/painter/gc9xxx/qp_gc9107.c else ifeq ($$(strip $$(CURRENT_PAINTER_DRIVER)),ssd1351_spi) QUANTUM_PAINTER_NEEDS_COMMS_SPI := yes From a4da5f219fe0f202a07afa045fc0c08f6ce1f86b Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Wed, 5 Jun 2024 12:20:57 +1000 Subject: [PATCH 074/519] Fixup build failures. (#23869) --- keyboards/matrix/m12og/rev2/rev2.c | 12 ++++++------ keyboards/mechwild/mokulua/info.json | 5 +++++ keyboards/planck/rev4/keyboard.json | 3 +++ keyboards/planck/rev5/keyboard.json | 3 +++ 4 files changed, 17 insertions(+), 6 deletions(-) create mode 100644 keyboards/mechwild/mokulua/info.json diff --git a/keyboards/matrix/m12og/rev2/rev2.c b/keyboards/matrix/m12og/rev2/rev2.c index bf6129c8063..e64640b2d2d 100644 --- a/keyboards/matrix/m12og/rev2/rev2.c +++ b/keyboards/matrix/m12og/rev2/rev2.c @@ -4,12 +4,12 @@ #include "quantum.h" -void matrix_init_user(void) { - gpio_set_pin_output(C6); - gpio_set_pin_output(B2); - gpio_set_pin_output(B1); - - matrix_init_user(); +void matrix_init_kb(void) { + gpio_set_pin_output(C6); + gpio_set_pin_output(B2); + gpio_set_pin_output(B1); + + matrix_init_user(); } bool led_update_kb(led_t led_state) { diff --git a/keyboards/mechwild/mokulua/info.json b/keyboards/mechwild/mokulua/info.json new file mode 100644 index 00000000000..9f75b9c218b --- /dev/null +++ b/keyboards/mechwild/mokulua/info.json @@ -0,0 +1,5 @@ +{ + "build": { + "lto": true + } +} diff --git a/keyboards/planck/rev4/keyboard.json b/keyboards/planck/rev4/keyboard.json index 725a297b2f2..655c48e7dd5 100644 --- a/keyboards/planck/rev4/keyboard.json +++ b/keyboards/planck/rev4/keyboard.json @@ -8,6 +8,9 @@ "pid": "0xAE01", "device_version": "0.0.4" }, + "build": { + "lto": true + }, "features": { "audio": true, "bootmagic": true, diff --git a/keyboards/planck/rev5/keyboard.json b/keyboards/planck/rev5/keyboard.json index f816d23e9b0..debf8dcdfca 100644 --- a/keyboards/planck/rev5/keyboard.json +++ b/keyboards/planck/rev5/keyboard.json @@ -8,6 +8,9 @@ "pid": "0xAE01", "device_version": "0.0.5" }, + "build": { + "lto": true + }, "features": { "audio": true, "bootmagic": true, From 260e9a546ebfa3f6f0f32038c99751122f53d131 Mon Sep 17 00:00:00 2001 From: Kim Viberti <45943577+ilkimo@users.noreply.github.com> Date: Thu, 6 Jun 2024 04:09:44 +0200 Subject: [PATCH 075/519] Fix documentation error (#23872) Co-authored-by: Nick Brassel Co-authored-by: Ryan --- docs/features/swap_hands.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/features/swap_hands.md b/docs/features/swap_hands.md index 3560fe22f09..0090ce77a9d 100644 --- a/docs/features/swap_hands.md +++ b/docs/features/swap_hands.md @@ -1,6 +1,6 @@ # Swap-Hands Action -The swap-hands action allows support for one-handed typing without requiring a separate layer. Set `SWAP_HANDS_ENABLE` in the Makefile and define a `hand_swap_config` entry in your keymap. Now whenever the `ACTION_SWAP_HANDS` command key is pressed the keyboard is mirrored. For instance, to type "Hello, World" on QWERTY you would type `^Ge^s^s^w^c W^wr^sd` +The swap-hands action allows support for one-handed typing without requiring a separate layer. Set `SWAP_HANDS_ENABLE = yes` in your keymap's `rules.mk` (creating it if needed), and define a `hand_swap_config` entry in your keymap. Now whenever the `ACTION_SWAP_HANDS` command key is pressed the keyboard is mirrored. For instance, to type "Hello, World" on QWERTY you would type `^Ge^s^s^w^c W^wr^sd` ## Configuration From 950d7653708965bb37f3b4919db041ab98d42f69 Mon Sep 17 00:00:00 2001 From: "Syenasweta a.k.a. Nashrullah Ali Fauzi" Date: Fri, 7 Jun 2024 08:17:21 +0700 Subject: [PATCH 076/519] Add SyenaKeyboards Elaruus (#23870) * add syenakeyboard elaruus * add syenakeyboards elaruus * add syenakeyboards elaruus * add syenakeyboards elaruus * add syenakeyboards/elaruus * add syenakeyboards elaruus * add syenakeyboards elaruus * add syenakeyboards elaruus * Update keyboards/syenakeyboards/elaruus/keyboard.json Co-authored-by: jack <0x6a73@protonmail.com> * Update keyboards/syenakeyboards/elaruus/keymaps/default/keymap.c Co-authored-by: jack <0x6a73@protonmail.com> * Update keyboards/syenakeyboards/elaruus/keymaps/via/keymap.c Co-authored-by: jack <0x6a73@protonmail.com> --------- Co-authored-by: Syenasweta Co-authored-by: jack <0x6a73@protonmail.com> --- .../syenakeyboards/elaruus/keyboard.json | 31 +++++++++++++++++++ .../elaruus/keymaps/default/keymap.c | 16 ++++++++++ .../elaruus/keymaps/via/keymap.c | 16 ++++++++++ .../elaruus/keymaps/via/rules.mk | 1 + keyboards/syenakeyboards/elaruus/readme.md | 25 +++++++++++++++ 5 files changed, 89 insertions(+) create mode 100644 keyboards/syenakeyboards/elaruus/keyboard.json create mode 100644 keyboards/syenakeyboards/elaruus/keymaps/default/keymap.c create mode 100644 keyboards/syenakeyboards/elaruus/keymaps/via/keymap.c create mode 100644 keyboards/syenakeyboards/elaruus/keymaps/via/rules.mk create mode 100644 keyboards/syenakeyboards/elaruus/readme.md diff --git a/keyboards/syenakeyboards/elaruus/keyboard.json b/keyboards/syenakeyboards/elaruus/keyboard.json new file mode 100644 index 00000000000..535a46eb7cb --- /dev/null +++ b/keyboards/syenakeyboards/elaruus/keyboard.json @@ -0,0 +1,31 @@ +{ + "manufacturer": "Syenasweta", + "keyboard_name": "SyenaKeyboards Elaruus", + "maintainer": "syenasweta", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true + }, + "matrix_pins": { + "cols": ["GP21", "GP19"], + "rows": ["GP10"] + }, + "processor": "RP2040", + "url": "https://github.com/syenasweta/syenakeyboards", + "usb": { + "device_version": "1.0.0", + "pid": "0x6172", + "vid": "0x5373" + }, + "layouts": { + "LAYOUT_ortho_1x2": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0} + ] + } + } +} diff --git a/keyboards/syenakeyboards/elaruus/keymaps/default/keymap.c b/keyboards/syenakeyboards/elaruus/keymaps/default/keymap.c new file mode 100644 index 00000000000..329ad7f77ef --- /dev/null +++ b/keyboards/syenakeyboards/elaruus/keymaps/default/keymap.c @@ -0,0 +1,16 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_1x2( + LT(1,KC_LEFT), LT(2,KC_RIGHT) + ), + [1] = LAYOUT_ortho_1x2( + _______, KC_UP + ), + [2] = LAYOUT_ortho_1x2( + KC_DOWN, _______ + ) +}; diff --git a/keyboards/syenakeyboards/elaruus/keymaps/via/keymap.c b/keyboards/syenakeyboards/elaruus/keymaps/via/keymap.c new file mode 100644 index 00000000000..329ad7f77ef --- /dev/null +++ b/keyboards/syenakeyboards/elaruus/keymaps/via/keymap.c @@ -0,0 +1,16 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_1x2( + LT(1,KC_LEFT), LT(2,KC_RIGHT) + ), + [1] = LAYOUT_ortho_1x2( + _______, KC_UP + ), + [2] = LAYOUT_ortho_1x2( + KC_DOWN, _______ + ) +}; diff --git a/keyboards/syenakeyboards/elaruus/keymaps/via/rules.mk b/keyboards/syenakeyboards/elaruus/keymaps/via/rules.mk new file mode 100644 index 00000000000..036bd6d1c3e --- /dev/null +++ b/keyboards/syenakeyboards/elaruus/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/syenakeyboards/elaruus/readme.md b/keyboards/syenakeyboards/elaruus/readme.md new file mode 100644 index 00000000000..4d95dd6cf08 --- /dev/null +++ b/keyboards/syenakeyboards/elaruus/readme.md @@ -0,0 +1,25 @@ +# SyenaKeyboards Elaruus + +![SyenaKeyboards Elaruus](https://i.imgur.com/6qU13gi.jpeg) + +Elaruus is ortholinear 1x2 mechanical keyboard with two switch for everythinks. The default functions are `left`, `right`. Elaruus is supported by QMK Firmware and VIA. + +* Keyboard Maintainer: [Syenasweta](https://github.com/syenasweta) +* Hardware Supported: RP2040 +* Hardware Availability: [Tokopedia (Syenasweta)](https://tokopedia.link/Ak0c4uqpbKb) + +Make example for this keyboard (after setting up your build environment): + + make syenakeyboards/elaruus:default + +Flashing example for this keyboard: + + make syenakeyboards/elaruss: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 1 ways: + +* **Bootmagic reset**: Hold down the top left key (assigned to `left` by default) and plug in the keyboard. From e7a08ef1a99b407f7326e146239d785e552c9aba Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 7 Jun 2024 14:25:20 +0100 Subject: [PATCH 077/519] Fix broken link in PR checklist (#23877) --- docs/pr_checklist.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pr_checklist.md b/docs/pr_checklist.md index f7b16e1d852..e0b0810aef7 100644 --- a/docs/pr_checklist.md +++ b/docs/pr_checklist.md @@ -88,7 +88,7 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard - RGB Matrix Configuration - Run `qmk format-json` on this file before submitting your PR. Be sure to append the `-i` flag to directly modify the file, or paste the outputted code into the file. - `readme.md` - - must follow the [template](https://github.com/qmk/qmk_firmware/blob/master/data/templates/keyboard/readme) + - must follow the [template](https://github.com/qmk/qmk_firmware/blob/master/data/templates/keyboard/readme.md) - flash command is present, and has `:flash` at end - valid hardware availability link (unless handwired) -- private groupbuys are okay, but one-off prototypes will be questioned. If open-source, a link to files should be provided. - clear instructions on how to reset the board into bootloader mode From 333f8bf0d7a4f3efd56a60a5328d15b1e0be4942 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Sat, 8 Jun 2024 18:08:53 -0700 Subject: [PATCH 078/519] Add STM32F405RG ld script for tinyuf2 (#23885) --- .../boards/common/ld/STM32F405xG_tinyuf2.ld | 89 +++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 platforms/chibios/boards/common/ld/STM32F405xG_tinyuf2.ld diff --git a/platforms/chibios/boards/common/ld/STM32F405xG_tinyuf2.ld b/platforms/chibios/boards/common/ld/STM32F405xG_tinyuf2.ld new file mode 100644 index 00000000000..1ee4aa1a06c --- /dev/null +++ b/platforms/chibios/boards/common/ld/STM32F405xG_tinyuf2.ld @@ -0,0 +1,89 @@ +/* + ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + + 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 + + http://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. +*/ + +/* + * STM32F405xG memory setup. + * Note: Use of ram1 and ram2 is mutually exclusive with use of ram0. + */ +MEMORY +{ + flash0 (rx) : org = 0x08000000 + 64k, len = 1M - 64k /* tinyuf2 bootloader requires app to be located at 64k offset for this MCU */ + flash1 (rx) : org = 0x00000000, len = 0 + flash2 (rx) : org = 0x00000000, len = 0 + flash3 (rx) : org = 0x00000000, len = 0 + flash4 (rx) : org = 0x00000000, len = 0 + flash5 (rx) : org = 0x00000000, len = 0 + flash6 (rx) : org = 0x00000000, len = 0 + flash7 (rx) : org = 0x00000000, len = 0 + ram0 (wx) : org = 0x20000000, len = 128k /* SRAM1 + SRAM2 */ + ram1 (wx) : org = 0x20000000, len = 112k /* SRAM1 */ + ram2 (wx) : org = 0x2001C000, len = 16k /* SRAM2 */ + ram3 (wx) : org = 0x00000000, len = 0 + ram4 (wx) : org = 0x10000000, len = 64k /* CCM SRAM */ + ram5 (wx) : org = 0x40024000, len = 4k /* BCKP SRAM */ + ram6 (wx) : org = 0x00000000, len = 0 + ram7 (wx) : org = 0x00000000, len = 0 +} + +/* For each data/text section two region are defined, a virtual region + and a load region (_LMA suffix).*/ + +/* Flash region to be used for exception vectors.*/ +REGION_ALIAS("VECTORS_FLASH", flash0); +REGION_ALIAS("VECTORS_FLASH_LMA", flash0); + +/* Flash region to be used for constructors and destructors.*/ +REGION_ALIAS("XTORS_FLASH", flash0); +REGION_ALIAS("XTORS_FLASH_LMA", flash0); + +/* Flash region to be used for code text.*/ +REGION_ALIAS("TEXT_FLASH", flash0); +REGION_ALIAS("TEXT_FLASH_LMA", flash0); + +/* Flash region to be used for read only data.*/ +REGION_ALIAS("RODATA_FLASH", flash0); +REGION_ALIAS("RODATA_FLASH_LMA", flash0); + +/* Flash region to be used for various.*/ +REGION_ALIAS("VARIOUS_FLASH", flash0); +REGION_ALIAS("VARIOUS_FLASH_LMA", flash0); + +/* Flash region to be used for RAM(n) initialization data.*/ +REGION_ALIAS("RAM_INIT_FLASH_LMA", flash0); + +/* RAM region to be used for Main stack. This stack accommodates the processing + of all exceptions and interrupts.*/ +REGION_ALIAS("MAIN_STACK_RAM", ram0); + +/* RAM region to be used for the process stack. This is the stack used by + the main() function.*/ +REGION_ALIAS("PROCESS_STACK_RAM", ram0); + +/* RAM region to be used for data segment.*/ +REGION_ALIAS("DATA_RAM", ram0); +REGION_ALIAS("DATA_RAM_LMA", flash0); + +/* RAM region to be used for BSS segment.*/ +REGION_ALIAS("BSS_RAM", ram0); + +/* RAM region to be used for the default heap.*/ +REGION_ALIAS("HEAP_RAM", ram0); + +/* Generic rules inclusion.*/ +INCLUDE rules.ld + +/* TinyUF2 bootloader reset support */ +_board_dfu_dbl_tap = ORIGIN(ram0) + 64k - 4; /* this is based off the linker file for tinyuf2 */ From 4926f0de8b9b05a2c3435a12b9b70f97e606b57c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=83=95=E3=82=A3=E3=83=AB=E3=82=BF=E3=83=BC=E3=83=9A?= =?UTF-8?q?=E3=83=BC=E3=83=91=E3=83=BC?= <76888457+filterpaper@users.noreply.github.com> Date: Mon, 10 Jun 2024 01:57:08 +0800 Subject: [PATCH 079/519] [Keyboard] Fixup mt/mt84 (#23883) --- keyboards/mt/mt84/config.h | 18 +++--------------- keyboards/mt/mt84/keyboard.json | 1 - keyboards/mt/mt84/keymaps/default/keymap.c | 18 +++--------------- keyboards/mt/mt84/keymaps/via/keymap.c | 18 +++--------------- keyboards/mt/mt84/mt84.c | 18 +++--------------- 5 files changed, 12 insertions(+), 61 deletions(-) diff --git a/keyboards/mt/mt84/config.h b/keyboards/mt/mt84/config.h index 9b115d527d5..4a6ed1492ea 100644 --- a/keyboards/mt/mt84/config.h +++ b/keyboards/mt/mt84/config.h @@ -1,18 +1,6 @@ - /* Copyright 2020 MT <704340378@qq.com> - * - * 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 . - */ +// Copyright 2020 MaiKong<704340378@qq.com> +// SPDX-License-Identifier: GPL-2.0+ + #pragma once #define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND diff --git a/keyboards/mt/mt84/keyboard.json b/keyboards/mt/mt84/keyboard.json index 8833f77ed98..a76336e7edd 100644 --- a/keyboards/mt/mt84/keyboard.json +++ b/keyboards/mt/mt84/keyboard.json @@ -43,7 +43,6 @@ "hue_wave": true, "pixel_rain": true, "pixel_flow": true, - "pixel_fractal": true, "solid_reactive_simple": true, "solid_reactive": true, "solid_reactive_wide": true, diff --git a/keyboards/mt/mt84/keymaps/default/keymap.c b/keyboards/mt/mt84/keymaps/default/keymap.c index e3c7fa8b879..2b3371257c6 100644 --- a/keyboards/mt/mt84/keymaps/default/keymap.c +++ b/keyboards/mt/mt84/keymaps/default/keymap.c @@ -1,18 +1,6 @@ - /* Copyright 2020 mt<704340378@qq.com> - * - * 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 . - */ +// Copyright 2020 MaiKong<704340378@qq.com> +// SPDX-License-Identifier: GPL-2.0 + #include QMK_KEYBOARD_H diff --git a/keyboards/mt/mt84/keymaps/via/keymap.c b/keyboards/mt/mt84/keymaps/via/keymap.c index 6906ddf9fe3..906ed635ad0 100644 --- a/keyboards/mt/mt84/keymaps/via/keymap.c +++ b/keyboards/mt/mt84/keymaps/via/keymap.c @@ -1,18 +1,6 @@ - /* Copyright 2020 MaiKong<704340378@qq.com> - * - * 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 . - */ +// Copyright 2020 MaiKong<704340378@qq.com> +// SPDX-License-Identifier: GPL-2.0+ + #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { diff --git a/keyboards/mt/mt84/mt84.c b/keyboards/mt/mt84/mt84.c index 276c92fc065..f7e1503cea4 100644 --- a/keyboards/mt/mt84/mt84.c +++ b/keyboards/mt/mt84/mt84.c @@ -1,18 +1,6 @@ - /* Copyright 2020 MT<704340378@qq.com> - * - * 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 . - */ +// Copyright 2020 MaiKong<704340378@qq.com> +// SPDX-License-Identifier: GPL-2.0+ + #include "quantum.h" #ifdef RGB_MATRIX_ENABLE From 9dc183afe43ef37dcda66a23d2e151ed629abbf5 Mon Sep 17 00:00:00 2001 From: Alex Mayer Date: Sun, 9 Jun 2024 13:57:45 -0400 Subject: [PATCH 080/519] Fix Tri-Layer Keycode Descriptions (#23888) --- docs/features/tri_layer.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/features/tri_layer.md b/docs/features/tri_layer.md index c32e65caed0..8c34fc65b34 100644 --- a/docs/features/tri_layer.md +++ b/docs/features/tri_layer.md @@ -14,8 +14,8 @@ For a detailed explanation of how the layer stack works, check out [Keymap Overv | Keycode | Alias | Description | |----------------------|-----------|---------------------------------------------------------------------------------------------------------| -| `QK_TRI_LAYER_LOWER` | `TL_LOWR` | Momentarily enables the "lower" layer. Enables the "adjust" layer if the "upper" layer is also enabled" | -| `QK_TRI_LAYER_UPPER` | `TL_UPPR` | Momentarily enables the "upper" layer. Enables the "adjust" layer if the "lower" layer is also enabled" | +| `QK_TRI_LAYER_LOWER` | `TL_LOWR` | Momentarily enables the "lower" layer. Enables the "adjust" layer if the "upper" layer is also enabled. | +| `QK_TRI_LAYER_UPPER` | `TL_UPPR` | Momentarily enables the "upper" layer. Enables the "adjust" layer if the "lower" layer is also enabled. | ## Configuration From e484a3a17926dae6abc37e9997b78043ff383efd Mon Sep 17 00:00:00 2001 From: Alabahuy Date: Mon, 10 Jun 2024 02:47:48 +0700 Subject: [PATCH 081/519] [Keyboard] add jaykeeb jk60 (#23876) --- keyboards/jaykeeb/jk60/keyboard.json | 585 ++++++++++++++++++ .../jaykeeb/jk60/keymaps/default/keymap.c | 22 + keyboards/jaykeeb/jk60/keymaps/via/keymap.c | 21 + keyboards/jaykeeb/jk60/keymaps/via/rules.mk | 1 + keyboards/jaykeeb/jk60/matrix_diagram.md | 24 + keyboards/jaykeeb/jk60/readme.md | 27 + 6 files changed, 680 insertions(+) create mode 100644 keyboards/jaykeeb/jk60/keyboard.json create mode 100644 keyboards/jaykeeb/jk60/keymaps/default/keymap.c create mode 100644 keyboards/jaykeeb/jk60/keymaps/via/keymap.c create mode 100644 keyboards/jaykeeb/jk60/keymaps/via/rules.mk create mode 100644 keyboards/jaykeeb/jk60/matrix_diagram.md create mode 100644 keyboards/jaykeeb/jk60/readme.md diff --git a/keyboards/jaykeeb/jk60/keyboard.json b/keyboards/jaykeeb/jk60/keyboard.json new file mode 100644 index 00000000000..99eb3d4a381 --- /dev/null +++ b/keyboards/jaykeeb/jk60/keyboard.json @@ -0,0 +1,585 @@ +{ + "manufacturer": "Jaykeeb Studio", + "keyboard_name": "JK60", + "maintainer": "Alabahuy", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["GP16", "GP3", "GP15", "GP14", "GP13", "GP12", "GP11", "GP10", "GP9", "GP8", "GP7", "GP6", "GP5", "GP4"], + "rows": ["GP29", "GP0", "GP2", "GP18", "GP19"] + }, + "indicators": { + "caps_lock": "GP17", + "on_state": 0 + }, + "processor": "RP2040", + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x7760", + "vid": "0x414C" + }, + "community_layouts": ["60_ansi", "60_ansi_split_bs_rshift", "60_ansi_tsangan", "60_tsangan_hhkb", "60_ansi_wkl", "60_ansi_wkl_split_bs_rshift", "60_hhkb"], + "layouts": { + "LAYOUT_all": { + "layout": [ + {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "1", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "2", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "3", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "4", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "5", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "6", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "7", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "8", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "9", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": "0", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "-", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "=", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0}, + {"label": "Delete", "matrix": [1, 13], "x": 14, "y": 0}, + + {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1}, + {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1}, + {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1}, + {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1}, + {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1}, + {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1}, + {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1}, + {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1}, + {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1}, + {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1}, + {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1}, + {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1}, + {"label": "\\", "matrix": [2, 13], "x": 13.5, "y": 1, "w": 1.5}, + + {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2}, + {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2}, + {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2}, + {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2}, + {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2}, + {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2}, + {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2}, + {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2}, + {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2}, + {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2}, + {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2}, + {"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + + {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, + {"label": "\\", "matrix": [3, 1], "x": 1.25, "y": 3}, + {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3}, + {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3}, + {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3}, + {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3}, + {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3}, + {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3}, + {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3}, + {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3}, + {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3}, + {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3}, + {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3}, + + {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, + {"label": "GUI", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, + {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, + {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, + {"label": "Alt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25}, + {"label": "GUI", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25}, + {"label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25}, + {"label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25} + ] + }, + "LAYOUT_60_ansi": { + "layout": [ + {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "1", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "2", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "3", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "4", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "5", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "6", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "7", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "8", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "9", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": "0", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "-", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "=", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2}, + + {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1}, + {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1}, + {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1}, + {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1}, + {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1}, + {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1}, + {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1}, + {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1}, + {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1}, + {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1}, + {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1}, + {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1}, + {"label": "\\", "matrix": [2, 13], "x": 13.5, "y": 1, "w": 1.5}, + + {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2}, + {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2}, + {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2}, + {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2}, + {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2}, + {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2}, + {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2}, + {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2}, + {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2}, + {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2}, + {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2}, + {"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + + {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3}, + {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3}, + {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3}, + {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3}, + {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3}, + {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3}, + {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3}, + {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3}, + {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3}, + {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3}, + {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75}, + + {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, + {"label": "GUI", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, + {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, + {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, + {"label": "Alt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25}, + {"label": "GUI", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25}, + {"label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25}, + {"label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25} + ] + }, + "LAYOUT_60_ansi_split_bs_rshift": { + "layout": [ + {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "1", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "2", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "3", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "4", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "5", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "6", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "7", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "8", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "9", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": "0", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "-", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "=", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0}, + {"label": "Delete", "matrix": [1, 13], "x": 14, "y": 0}, + + {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1}, + {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1}, + {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1}, + {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1}, + {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1}, + {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1}, + {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1}, + {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1}, + {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1}, + {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1}, + {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1}, + {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1}, + {"label": "\\", "matrix": [2, 13], "x": 13.5, "y": 1, "w": 1.5}, + + {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2}, + {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2}, + {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2}, + {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2}, + {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2}, + {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2}, + {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2}, + {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2}, + {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2}, + {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2}, + {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2}, + {"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + + {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3}, + {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3}, + {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3}, + {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3}, + {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3}, + {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3}, + {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3}, + {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3}, + {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3}, + {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3}, + {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3}, + + {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, + {"label": "GUI", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, + {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, + {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, + {"label": "Alt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25}, + {"label": "GUI", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25}, + {"label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25}, + {"label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25} + ] + }, + "LAYOUT_60_ansi_tsangan": { + "layout": [ + {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "1", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "2", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "3", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "4", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "5", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "6", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "7", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "8", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "9", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": "0", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "-", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "=", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2}, + + {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1}, + {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1}, + {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1}, + {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1}, + {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1}, + {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1}, + {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1}, + {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1}, + {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1}, + {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1}, + {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1}, + {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1}, + {"label": "\\", "matrix": [2, 13], "x": 13.5, "y": 1, "w": 1.5}, + + {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2}, + {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2}, + {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2}, + {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2}, + {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2}, + {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2}, + {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2}, + {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2}, + {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2}, + {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2}, + {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2}, + {"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + + {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3}, + {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3}, + {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3}, + {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3}, + {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3}, + {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3}, + {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3}, + {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3}, + {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3}, + {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3}, + {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75}, + + {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"label": "GUI", "matrix": [4, 1], "x": 1.5, "y": 4}, + {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"label": "Alt", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"label": "GUI", "matrix": [4, 11], "x": 12.5, "y": 4}, + {"label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_tsangan_hhkb": { + "layout": [ + {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "1", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "2", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "3", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "4", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "5", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "6", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "7", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "8", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "9", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": "0", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "-", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "=", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0}, + {"label": "Delete", "matrix": [1, 13], "x": 14, "y": 0}, + + {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1}, + {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1}, + {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1}, + {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1}, + {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1}, + {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1}, + {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1}, + {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1}, + {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1}, + {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1}, + {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1}, + {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1}, + {"label": "\\", "matrix": [2, 13], "x": 13.5, "y": 1, "w": 1.5}, + + {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2}, + {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2}, + {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2}, + {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2}, + {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2}, + {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2}, + {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2}, + {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2}, + {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2}, + {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2}, + {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2}, + {"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + + {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3}, + {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3}, + {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3}, + {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3}, + {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3}, + {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3}, + {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3}, + {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3}, + {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3}, + {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3}, + {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3}, + + {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"label": "GUI", "matrix": [4, 1], "x": 1.5, "y": 4}, + {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"label": "Alt", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"label": "GUI", "matrix": [4, 11], "x": 12.5, "y": 4}, + {"label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_ansi_wkl": { + "layout": [ + {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "1", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "2", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "3", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "4", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "5", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "6", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "7", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "8", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "9", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": "0", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "-", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "=", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2}, + + {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1}, + {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1}, + {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1}, + {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1}, + {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1}, + {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1}, + {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1}, + {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1}, + {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1}, + {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1}, + {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1}, + {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1}, + {"label": "\\", "matrix": [2, 13], "x": 13.5, "y": 1, "w": 1.5}, + + {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2}, + {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2}, + {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2}, + {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2}, + {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2}, + {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2}, + {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2}, + {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2}, + {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2}, + {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2}, + {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2}, + {"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + + {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3}, + {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3}, + {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3}, + {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3}, + {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3}, + {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3}, + {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3}, + {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3}, + {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3}, + {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3}, + {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75}, + + {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"label": "Alt", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_ansi_wkl_split_bs_rshift": { + "layout": [ + {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "1", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "2", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "3", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "4", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "5", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "6", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "7", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "8", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "9", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": "0", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "-", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "=", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0}, + {"label": "Delete", "matrix": [1, 13], "x": 14, "y": 0}, + + {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1}, + {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1}, + {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1}, + {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1}, + {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1}, + {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1}, + {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1}, + {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1}, + {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1}, + {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1}, + {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1}, + {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1}, + {"label": "\\", "matrix": [2, 13], "x": 13.5, "y": 1, "w": 1.5}, + + {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2}, + {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2}, + {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2}, + {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2}, + {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2}, + {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2}, + {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2}, + {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2}, + {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2}, + {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2}, + {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2}, + {"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + + {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3}, + {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3}, + {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3}, + {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3}, + {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3}, + {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3}, + {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3}, + {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3}, + {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3}, + {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3}, + {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3}, + + {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"label": "Alt", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_hhkb": { + "layout": [ + {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "1", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "2", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "3", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "4", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "5", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "6", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "7", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "8", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "9", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": "0", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "-", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "=", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0}, + {"label": "Delete", "matrix": [1, 13], "x": 14, "y": 0}, + + {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1}, + {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1}, + {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1}, + {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1}, + {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1}, + {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1}, + {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1}, + {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1}, + {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1}, + {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1}, + {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1}, + {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1}, + {"label": "\\", "matrix": [2, 13], "x": 13.5, "y": 1, "w": 1.5}, + + {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2}, + {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2}, + {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2}, + {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2}, + {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2}, + {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2}, + {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2}, + {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2}, + {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2}, + {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2}, + {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2}, + {"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + + {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3}, + {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3}, + {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3}, + {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3}, + {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3}, + {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3}, + {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3}, + {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3}, + {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3}, + {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3}, + {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3}, + + {"label": "GUI", "matrix": [4, 1], "x": 1.5, "y": 4}, + {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"label": "Alt", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"label": "GUI", "matrix": [4, 11], "x": 12.5, "y": 4} + ] + } + } +} diff --git a/keyboards/jaykeeb/jk60/keymaps/default/keymap.c b/keyboards/jaykeeb/jk60/keymaps/default/keymap.c new file mode 100644 index 00000000000..449fccc1686 --- /dev/null +++ b/keyboards/jaykeeb/jk60/keymaps/default/keymap.c @@ -0,0 +1,22 @@ +// Copyright 2024 Alabahuy +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_60_ansi( + 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_BSPC, + 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_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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL + ), + + [1] = LAYOUT_60_ansi( + KC_GRV, 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_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, + _______, _______, _______, QK_BOOT, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/jaykeeb/jk60/keymaps/via/keymap.c b/keyboards/jaykeeb/jk60/keymaps/via/keymap.c new file mode 100644 index 00000000000..dccacd7127e --- /dev/null +++ b/keyboards/jaykeeb/jk60/keymaps/via/keymap.c @@ -0,0 +1,21 @@ +// Copyright 2024 Alabahuy +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_BSPC, KC_DEL, + 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_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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL + ), + [1] = LAYOUT_all( + KC_GRV, 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_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, + _______, _______, _______, QK_BOOT, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/jaykeeb/jk60/keymaps/via/rules.mk b/keyboards/jaykeeb/jk60/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/jaykeeb/jk60/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/jaykeeb/jk60/matrix_diagram.md b/keyboards/jaykeeb/jk60/matrix_diagram.md new file mode 100644 index 00000000000..89cd664562c --- /dev/null +++ b/keyboards/jaykeeb/jk60/matrix_diagram.md @@ -0,0 +1,24 @@ +# Matrix Diagram for Jaykeeb JK60 + +``` + ┌───────┐ + 2u Backspace │0D │ + └───────┘ +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ +│00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │1D │ +├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ +│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2D │ +├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ +│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ +├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ +│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │ +├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤ +│40 │41 │42 │46 │4A │4B │4C │4D │ +└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ +┌────────┐ ┌──────────┐ +│30 │ 2.25u LShift │3C │ 2.75u RShift +└────────┘ └──────────┘ +┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐ +│40 │41 │42 │46 │4B │4C │4D │ Tsangan/WKL/HHKB +└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ +``` diff --git a/keyboards/jaykeeb/jk60/readme.md b/keyboards/jaykeeb/jk60/readme.md new file mode 100644 index 00000000000..f38abe1550a --- /dev/null +++ b/keyboards/jaykeeb/jk60/readme.md @@ -0,0 +1,27 @@ +# JK60 + +![jk60]( https://i.imgur.com/394cDVG.png ) + +Layout 60% support multi layout and keyboard case existing + +* Keyboard Maintainer: [Alabahuy](https://github.com/Alabahuy) +* Hardware Supported: JK60 PCB, RP2040 +* Hardware Availability: Private GB + +Make example for this keyboard (after setting up your build environment): + + make jaykeeb/jk60:default + +Flashing example for this keyboard: + + make jaykeeb/jk60: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 From df4538d894d8e5c1321c239ecbe4293a4ec3ee2d Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 10 Jun 2024 06:14:48 +1000 Subject: [PATCH 082/519] Fix Iris/Irispad keymaps (#23856) --- keyboards/keebio/iris/keymaps/default/keymap.json | 2 +- keyboards/keebio/irispad/keymaps/default/keymap.json | 2 +- keyboards/keebio/irispad/keymaps/via/keymap.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/keebio/iris/keymaps/default/keymap.json b/keyboards/keebio/iris/keymaps/default/keymap.json index 8b141d992fd..623c532a303 100644 --- a/keyboards/keebio/iris/keymaps/default/keymap.json +++ b/keyboards/keebio/iris/keymaps/default/keymap.json @@ -1,6 +1,6 @@ { "config": { "features": {"tri_layer": true} }, - "keyboard": "keebio/iris", + "keyboard": "keebio/iris/rev8", "keymap": "default", "layout": "LAYOUT", "layers": [ diff --git a/keyboards/keebio/irispad/keymaps/default/keymap.json b/keyboards/keebio/irispad/keymaps/default/keymap.json index fd0dc3bb5ee..e9c52fa99fd 100644 --- a/keyboards/keebio/irispad/keymaps/default/keymap.json +++ b/keyboards/keebio/irispad/keymaps/default/keymap.json @@ -1,6 +1,6 @@ { "config": { "features": {"encoder_map": true, "tri_layer": true} }, - "keyboard": "keebio/irispad", + "keyboard": "keebio/irispad/rev8", "keymap": "default", "layout": "LAYOUT", "layers": [ diff --git a/keyboards/keebio/irispad/keymaps/via/keymap.json b/keyboards/keebio/irispad/keymaps/via/keymap.json index 97fc085b92e..bf681822f6d 100644 --- a/keyboards/keebio/irispad/keymaps/via/keymap.json +++ b/keyboards/keebio/irispad/keymaps/via/keymap.json @@ -1,6 +1,6 @@ { "config": { "features": {"encoder_map": true, "via": true} }, - "keyboard": "keebio/irispad", + "keyboard": "keebio/irispad/rev8", "keymap": "via", "layout": "LAYOUT", "layers": [ From 8b5cdfabf5d05958a607efa174e64377d36e4b64 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 10 Jun 2024 01:23:25 +0100 Subject: [PATCH 083/519] Re-implement `eeprom_write_qword` as define (#23890) --- platforms/eeprom.h | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/platforms/eeprom.h b/platforms/eeprom.h index 8e69eecc4cb..067fa016164 100644 --- a/platforms/eeprom.h +++ b/platforms/eeprom.h @@ -22,9 +22,14 @@ void eeprom_update_dword(uint32_t *__p, uint32_t __value); void eeprom_update_block(const void *__src, void *__dst, size_t __n); #endif -static inline void eeprom_write_qword(uint64_t *__p, uint64_t __value) { - eeprom_update_block(&__value, __p, sizeof(uint64_t)); -} +// While newer avr-libc versions may have an implementation +// use preprocessor as to not cause conflicts +#undef eeprom_write_qword +#define eeprom_write_qword(__p, __value) \ + do { \ + uint64_t tmp = __value; \ + eeprom_update_block(&tmp, __p, sizeof(uint64_t)); \ + } while (0) #if defined(EEPROM_CUSTOM) # ifndef EEPROM_SIZE From 354a2e40cf8348d043d39b34ca63223f6b5b689c Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 11 Jun 2024 13:25:51 +1000 Subject: [PATCH 084/519] splitkb/kyria: remove `CONVERT_TO` at keyboard level (#23857) --- keyboards/splitkb/kyria/info.json | 1 - .../splitkb/kyria/rev1/base/keyboard.json | 25 ++++++++++++-- keyboards/splitkb/kyria/rev1/config.h | 30 ++-------------- keyboards/splitkb/kyria/rev1/info.json | 17 ---------- .../splitkb/kyria/rev1/proton_c/config.h | 17 ++++++++++ .../splitkb/kyria/rev1/proton_c/keyboard.json | 23 ++++++++++++- .../splitkb/kyria/rev1/proton_c/rules.mk | 1 - .../splitkb/kyria/rev2/base/keyboard.json | 34 +++++++++++++++++-- keyboards/splitkb/kyria/rev2/config.h | 31 ++--------------- keyboards/splitkb/kyria/rev2/info.json | 23 ------------- .../splitkb/kyria/rev2/proton_c/config.h | 17 ++++++++++ .../splitkb/kyria/rev2/proton_c/keyboard.json | 32 ++++++++++++++++- .../splitkb/kyria/rev2/proton_c/rules.mk | 1 - keyboards/splitkb/kyria/rev3/config.h | 7 ++-- keyboards/splitkb/kyria/rev3/keyboard.json | 4 +-- 15 files changed, 149 insertions(+), 114 deletions(-) create mode 100644 keyboards/splitkb/kyria/rev1/proton_c/config.h create mode 100644 keyboards/splitkb/kyria/rev2/proton_c/config.h diff --git a/keyboards/splitkb/kyria/info.json b/keyboards/splitkb/kyria/info.json index f70e8e3bb22..050e12f2ff5 100644 --- a/keyboards/splitkb/kyria/info.json +++ b/keyboards/splitkb/kyria/info.json @@ -6,7 +6,6 @@ "vid": "0x8D1D", "device_version": "1.0.0" }, - "development_board": "elite_c", "split": { "enabled": true }, diff --git a/keyboards/splitkb/kyria/rev1/base/keyboard.json b/keyboards/splitkb/kyria/rev1/base/keyboard.json index 9f75b9c218b..df92d71ad13 100644 --- a/keyboards/splitkb/kyria/rev1/base/keyboard.json +++ b/keyboards/splitkb/kyria/rev1/base/keyboard.json @@ -1,5 +1,26 @@ { - "build": { - "lto": true + "development_board": "elite_c", + "matrix_pins": { + "cols": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], + "rows": ["B4", "E6", "D7", "D4"] + }, + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "C6", "pin_b": "B5"} + ] + }, + "split": { + "soft_serial_pin": "D2", + "encoder": { + "right": { + "rotary": [ + {"pin_a": "B5", "pin_b": "C6"} + ] + } + } + }, + "ws2812": { + "pin": "D3" } } diff --git a/keyboards/splitkb/kyria/rev1/config.h b/keyboards/splitkb/kyria/rev1/config.h index 4f130293e22..615d93496dd 100644 --- a/keyboards/splitkb/kyria/rev1/config.h +++ b/keyboards/splitkb/kyria/rev1/config.h @@ -17,31 +17,5 @@ along with this program. If not, see . #pragma once -/* - * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. - */ - -#if defined(CONVERT_TO_PROTON_C) -# define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. -# define SERIAL_USART_PIN_SWAP // Swap TX and RX pins if keyboard is master halve. -# define SERIAL_USART_DRIVER SD1 // USART driver of TX pin. default: SD1 -# define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7 -# define SERIAL_USART_TX_PIN D3 -# define SERIAL_USART_RX_PIN D2 - -# define WS2812_DI_PIN PAL_LINE(GPIOA, 3) -# define WS2812_PWM_DRIVER PWMD2 // default: PWMD2 -# define WS2812_PWM_CHANNEL 4 // default: 2 -# define WS2812_PWM_PAL_MODE 1 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 2 -# define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM2 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. -# define WS2812_PWM_DMA_CHANNEL 2 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. -# define WS2812_PWM_DMAMUX_ID STM32_DMAMUX1_TIM2_UP // DMAMUX configuration for TIMx_UP -- only required if your MCU has a DMAMUX peripheral, see the respective reference manual for the appropriate values for your MCU. -#else -# define WS2812_DI_PIN D3 -# define SOFT_SERIAL_PIN D2 -#endif - -#ifdef OLED_ENABLE -# define OLED_DISPLAY_128X64 -# define SPLIT_OLED_ENABLE -#endif +#define OLED_DISPLAY_128X64 +#define SPLIT_OLED_ENABLE diff --git a/keyboards/splitkb/kyria/rev1/info.json b/keyboards/splitkb/kyria/rev1/info.json index 3d84b37b311..1e21c609782 100644 --- a/keyboards/splitkb/kyria/rev1/info.json +++ b/keyboards/splitkb/kyria/rev1/info.json @@ -23,24 +23,7 @@ "sleep": true, "split_count": [10, 10] }, - "matrix_pins": { - "cols": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"], - "rows": ["B4", "E6", "D7", "D4"] - }, - "diode_direction": "COL2ROW", - "encoder": { - "rotary": [ - {"pin_a": "C6", "pin_b": "B5"} - ] - }, "split": { - "encoder": { - "right": { - "rotary": [ - {"pin_a": "B5", "pin_b": "C6"} - ] - } - }, "transport": { "sync": { "matrix_state": true diff --git a/keyboards/splitkb/kyria/rev1/proton_c/config.h b/keyboards/splitkb/kyria/rev1/proton_c/config.h new file mode 100644 index 00000000000..df2eb96ae22 --- /dev/null +++ b/keyboards/splitkb/kyria/rev1/proton_c/config.h @@ -0,0 +1,17 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. +#define SERIAL_USART_PIN_SWAP // Swap TX and RX pins if keyboard is master halve. +#define SERIAL_USART_DRIVER SD1 // USART driver of TX pin. default: SD1 +#define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7 +#define SERIAL_USART_TX_PIN A9 +#define SERIAL_USART_RX_PIN A10 + +#define WS2812_PWM_CHANNEL 4 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM2 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. +#define WS2812_PWM_DMA_CHANNEL 2 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. +#define WS2812_PWM_DMAMUX_ID STM32_DMAMUX1_TIM2_UP // DMAMUX configuration for TIMx_UP -- only required if your MCU has a DMAMUX peripheral, see the respective reference manual for the appropriate values for your MCU. diff --git a/keyboards/splitkb/kyria/rev1/proton_c/keyboard.json b/keyboards/splitkb/kyria/rev1/proton_c/keyboard.json index 6cc38d4a212..a7181fef8df 100644 --- a/keyboards/splitkb/kyria/rev1/proton_c/keyboard.json +++ b/keyboards/splitkb/kyria/rev1/proton_c/keyboard.json @@ -1,5 +1,26 @@ { + "development_board": "proton_c", + "matrix_pins": { + "cols": ["B9", "B15", "B14", "B13", "B8", "A0", "A1", "A2"], + "rows": ["B1", "B2", "B3", "B5"] + }, + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "B4", "pin_b": "B0"} + ] + }, + "split": { + "encoder": { + "right": { + "rotary": [ + {"pin_a": "B0", "pin_b": "B4"} + ] + } + } + }, "ws2812": { - "driver": "pwm" + "driver": "pwm", + "pin": "A3" } } diff --git a/keyboards/splitkb/kyria/rev1/proton_c/rules.mk b/keyboards/splitkb/kyria/rev1/proton_c/rules.mk index a58b20c575c..c6e29883213 100644 --- a/keyboards/splitkb/kyria/rev1/proton_c/rules.mk +++ b/keyboards/splitkb/kyria/rev1/proton_c/rules.mk @@ -1,2 +1 @@ SERIAL_DRIVER = usart -CONVERT_TO = proton_c diff --git a/keyboards/splitkb/kyria/rev2/base/keyboard.json b/keyboards/splitkb/kyria/rev2/base/keyboard.json index 9f75b9c218b..8de0f335cc5 100644 --- a/keyboards/splitkb/kyria/rev2/base/keyboard.json +++ b/keyboards/splitkb/kyria/rev2/base/keyboard.json @@ -1,5 +1,35 @@ { - "build": { - "lto": true + "development_board": "elite_c", + "matrix_pins": { + "cols": ["B2", "B6", "B5", "B4", "E6", "D7", "C6", "D4"], + "rows": ["F6", "F7", "B1", "B3"] + }, + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "F4", "pin_b": "F5"} + ] + }, + "split": { + "handedness": { + "matrix_grid": ["E6", "B3"] + }, + "soft_serial_pin": "D2", + "encoder": { + "right": { + "rotary": [ + {"pin_a": "F5", "pin_b": "F4"} + ] + } + }, + "matrix_pins": { + "right": { + "cols": ["B4", "B5", "B6", "B2", "B3", "B1", "F7", "F6"], + "rows": ["D4", "C6", "D7", "E6"] + } + } + }, + "ws2812": { + "pin": "D3" } } diff --git a/keyboards/splitkb/kyria/rev2/config.h b/keyboards/splitkb/kyria/rev2/config.h index 54d8f0985ae..fb9e7bb9590 100644 --- a/keyboards/splitkb/kyria/rev2/config.h +++ b/keyboards/splitkb/kyria/rev2/config.h @@ -19,34 +19,7 @@ along with this program. If not, see . // Side detection // col 4 row 3 on right-hand-side -#define SPLIT_HAND_MATRIX_GRID E6, B3 // row first because the board is col2row #define MATRIX_MASKED // actual mask is defined by `matrix_mask` in `rev2.c` -/* - * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. - */ - -#if defined(CONVERT_TO_PROTON_C) -# define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. -# define SERIAL_USART_PIN_SWAP // Swap TX and RX pins if keyboard is master halve. -# define SERIAL_USART_DRIVER SD1 // USART driver of TX pin. default: SD1 -# define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7 -# define SERIAL_USART_TX_PIN D3 -# define SERIAL_USART_RX_PIN D2 - -# define WS2812_DI_PIN PAL_LINE(GPIOA, 3) -# define WS2812_PWM_DRIVER PWMD2 // default: PWMD2 -# define WS2812_PWM_CHANNEL 4 // default: 2 -# define WS2812_PWM_PAL_MODE 1 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 2 -# define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM2 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. -# define WS2812_PWM_DMA_CHANNEL 2 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. -# define WS2812_PWM_DMAMUX_ID STM32_DMAMUX1_TIM2_UP // DMAMUX configuration for TIMx_UP -- only required if your MCU has a DMAMUX peripheral, see the respective reference manual for the appropriate values for your MCU. -#else -# define WS2812_DI_PIN D3 -# define SOFT_SERIAL_PIN D2 -#endif - -#ifdef OLED_ENABLE -# define OLED_DISPLAY_128X64 -# define SPLIT_OLED_ENABLE -#endif +#define OLED_DISPLAY_128X64 +#define SPLIT_OLED_ENABLE diff --git a/keyboards/splitkb/kyria/rev2/info.json b/keyboards/splitkb/kyria/rev2/info.json index 80f801e3d15..d1507a26b0d 100644 --- a/keyboards/splitkb/kyria/rev2/info.json +++ b/keyboards/splitkb/kyria/rev2/info.json @@ -23,30 +23,7 @@ "sleep": true, "split_count": [10, 10] }, - "matrix_pins": { - "cols": ["B2", "B6", "B5", "B4", "E6", "D7", "C6", "D4"], - "rows": ["F6", "F7", "B1", "B3"] - }, - "diode_direction": "COL2ROW", - "encoder": { - "rotary": [ - {"pin_a": "F4", "pin_b": "F5"} - ] - }, "split": { - "encoder": { - "right": { - "rotary": [ - {"pin_a": "F5", "pin_b": "F4"} - ] - } - }, - "matrix_pins": { - "right": { - "cols": ["B4", "B5", "B6", "B2", "B3", "B1", "F7", "F6"], - "rows": ["D4", "C6", "D7", "E6"] - } - }, "transport": { "sync": { "matrix_state": true diff --git a/keyboards/splitkb/kyria/rev2/proton_c/config.h b/keyboards/splitkb/kyria/rev2/proton_c/config.h new file mode 100644 index 00000000000..df2eb96ae22 --- /dev/null +++ b/keyboards/splitkb/kyria/rev2/proton_c/config.h @@ -0,0 +1,17 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. +#define SERIAL_USART_PIN_SWAP // Swap TX and RX pins if keyboard is master halve. +#define SERIAL_USART_DRIVER SD1 // USART driver of TX pin. default: SD1 +#define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7 +#define SERIAL_USART_TX_PIN A9 +#define SERIAL_USART_RX_PIN A10 + +#define WS2812_PWM_CHANNEL 4 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM2 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. +#define WS2812_PWM_DMA_CHANNEL 2 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. +#define WS2812_PWM_DMAMUX_ID STM32_DMAMUX1_TIM2_UP // DMAMUX configuration for TIMx_UP -- only required if your MCU has a DMAMUX peripheral, see the respective reference manual for the appropriate values for your MCU. diff --git a/keyboards/splitkb/kyria/rev2/proton_c/keyboard.json b/keyboards/splitkb/kyria/rev2/proton_c/keyboard.json index 6cc38d4a212..43a3d532f22 100644 --- a/keyboards/splitkb/kyria/rev2/proton_c/keyboard.json +++ b/keyboards/splitkb/kyria/rev2/proton_c/keyboard.json @@ -1,5 +1,35 @@ { + "development_board": "proton_c", + "matrix_pins": { + "cols": ["B15", "B9", "B0", "B1", "B2", "B3", "B4", "B5"], + "rows": ["A0", "B8", "B13", "B14"] + }, + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "A2", "pin_b": "A1"} + ] + }, + "split": { + "handedness": { + "matrix_grid": ["B2", "B14"] + }, + "encoder": { + "right": { + "rotary": [ + {"pin_a": "A1", "pin_b": "A2"} + ] + } + }, + "matrix_pins": { + "right": { + "cols": ["B1", "B0", "B9", "B15", "B14", "B13", "B8", "A0"], + "rows": ["B5", "B4", "B3", "B2"] + } + } + }, "ws2812": { - "driver": "pwm" + "driver": "pwm", + "pin": "A3" } } diff --git a/keyboards/splitkb/kyria/rev2/proton_c/rules.mk b/keyboards/splitkb/kyria/rev2/proton_c/rules.mk index a58b20c575c..c6e29883213 100644 --- a/keyboards/splitkb/kyria/rev2/proton_c/rules.mk +++ b/keyboards/splitkb/kyria/rev2/proton_c/rules.mk @@ -1,2 +1 @@ SERIAL_DRIVER = usart -CONVERT_TO = proton_c diff --git a/keyboards/splitkb/kyria/rev3/config.h b/keyboards/splitkb/kyria/rev3/config.h index b0a64320c60..7938384a781 100644 --- a/keyboards/splitkb/kyria/rev3/config.h +++ b/keyboards/splitkb/kyria/rev3/config.h @@ -20,8 +20,5 @@ // but can't yet be given a value #define SPLIT_HAND_PIN B5 -// Not yet available in `info.json` -#ifdef OLED_ENABLE -# define OLED_DISPLAY_128X64 -# define SPLIT_OLED_ENABLE -#endif +#define OLED_DISPLAY_128X64 +#define SPLIT_OLED_ENABLE diff --git a/keyboards/splitkb/kyria/rev3/keyboard.json b/keyboards/splitkb/kyria/rev3/keyboard.json index 4a426cb2060..750f87ae4b3 100644 --- a/keyboards/splitkb/kyria/rev3/keyboard.json +++ b/keyboards/splitkb/kyria/rev3/keyboard.json @@ -1,14 +1,12 @@ { "keyboard_name": "Kyria rev3", + "development_board": "elite_c", "usb": { "pid": "0xCF44" }, "bootmagic": { "matrix": [0, 6] }, - "build": { - "lto": true - }, "features": { "mousekey": true, "bootmagic": true, From 8041a88f5d39709548bdb44908afe0548651d640 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 12 Jun 2024 10:50:25 +1000 Subject: [PATCH 085/519] Slight clarification of LED/RGB Matrix custom effect docs (#23897) --- docs/features/led_matrix.md | 21 ++++++++++----------- docs/features/rgb_matrix.md | 12 ++++++------ 2 files changed, 16 insertions(+), 17 deletions(-) diff --git a/docs/features/led_matrix.md b/docs/features/led_matrix.md index fee7b139bce..164cbc0f5fc 100644 --- a/docs/features/led_matrix.md +++ b/docs/features/led_matrix.md @@ -300,18 +300,11 @@ These modes introduce additional logic that can increase firmware size. ## Custom LED Matrix Effects {#custom-led-matrix-effects} -By setting `LED_MATRIX_CUSTOM_USER` (and/or `LED_MATRIX_CUSTOM_KB`) in `rules.mk`, new effects can be defined directly from userspace, without having to edit any QMK core files. +By setting `LED_MATRIX_CUSTOM_USER = yes` in `rules.mk`, new effects can be defined directly from your keymap or userspace, without having to edit any QMK core files. To declare new effects, create a `led_matrix_user.inc` file in the user keymap directory or userspace folder. -To declare new effects, create a new `led_matrix_user/kb.inc` that looks something like this: - -`led_matrix_user.inc` should go in the root of the keymap directory. -`led_matrix_kb.inc` should go in the root of the keyboard directory. - -To use custom effects in your code, simply prepend `LED_MATRIX_CUSTOM_` to the effect name specified in `LED_MATRIX_EFFECT()`. For example, an effect declared as `LED_MATRIX_EFFECT(my_cool_effect)` would be referenced with: - -```c -led_matrix_mode(led_MATRIX_CUSTOM_my_cool_effect); -``` +::: tip +Hardware maintainers who want to limit custom effects to a specific keyboard can create a `led_matrix_kb.inc` file in the root of the keyboard directory, and add `LED_MATRIX_CUSTOM_KB = yes` to the keyboard level `rules.mk`. +::: ```c // !!! DO NOT ADD #pragma once !!! // @@ -356,6 +349,12 @@ static bool my_cool_effect2(effect_params_t* params) { #endif // LED_MATRIX_CUSTOM_EFFECT_IMPLS ``` +To switch to your custom effect programmatically, simply call `led_matrix_mode()` and prepend `LED_MATRIX_CUSTOM_` to the effect name your specified in `LED_MATRIX_EFFECT()`. For example, an effect declared as `LED_MATRIX_EFFECT(my_cool_effect)` would be referenced with: + +```c +led_matrix_mode(LED_MATRIX_CUSTOM_my_cool_effect); +``` + For inspiration and examples, check out the built-in effects under `quantum/led_matrix/animations/`. diff --git a/docs/features/rgb_matrix.md b/docs/features/rgb_matrix.md index f7f693f239f..448d1cdfb56 100644 --- a/docs/features/rgb_matrix.md +++ b/docs/features/rgb_matrix.md @@ -807,12 +807,6 @@ By setting `RGB_MATRIX_CUSTOM_USER = yes` in `rules.mk`, new effects can be defi Hardware maintainers who want to limit custom effects to a specific keyboard can create a `rgb_matrix_kb.inc` file in the root of the keyboard directory, and add `RGB_MATRIX_CUSTOM_KB = yes` to the keyboard level `rules.mk`. ::: -To use custom effects in your code, simply prepend `RGB_MATRIX_CUSTOM_` to the effect name specified in `RGB_MATRIX_EFFECT()`. For example, an effect declared as `RGB_MATRIX_EFFECT(my_cool_effect)` would be referenced with: - -```c -rgb_matrix_mode(RGB_MATRIX_CUSTOM_my_cool_effect); -``` - ```c // !!! DO NOT ADD #pragma once !!! // @@ -856,6 +850,12 @@ static bool my_cool_effect2(effect_params_t* params) { #endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS ``` +To switch to your custom effect programmatically, simply call `rgb_matrix_mode()` and prepend `RGB_MATRIX_CUSTOM_` to the effect name you specified in `RGB_MATRIX_EFFECT()`. For example, an effect declared as `RGB_MATRIX_EFFECT(my_cool_effect)` would be referenced with: + +```c +rgb_matrix_mode(RGB_MATRIX_CUSTOM_my_cool_effect); +``` + For inspiration and examples, check out the built-in effects under `quantum/rgb_matrix/animations/`. From b826877c40b64be023fda2879a268d5fa6aa610e Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 12 Jun 2024 04:00:23 +0100 Subject: [PATCH 086/519] Decouple VIA from STM32 L0/L1 EEPROM implementation (#23901) --- platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.h b/platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.h index 616d7ccbeee..c1d801f2250 100644 --- a/platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.h +++ b/platforms/chibios/drivers/eeprom/eeprom_stm32_L0_L1.h @@ -20,7 +20,7 @@ The size used by the STM32 L0/L1 EEPROM driver. */ #ifndef STM32_ONBOARD_EEPROM_SIZE -# ifdef VIA_ENABLE +# ifdef DYNAMIC_KEYMAP_ENABLE # define STM32_ONBOARD_EEPROM_SIZE 1024 # else # include "eeconfig.h" From 031ca3b40bbfae7f1d65e9ece0fab8fdfd9ee8ed Mon Sep 17 00:00:00 2001 From: 4pplet Date: Wed, 12 Jun 2024 09:11:50 +0200 Subject: [PATCH 087/519] [Keyboard] Fix settings for 4pplet/waffling60 (#23862) --- keyboards/4pplet/waffling60/rev_e/keyboard.json | 3 ++- keyboards/4pplet/waffling60/rev_e_ansi/keyboard.json | 3 ++- keyboards/4pplet/waffling60/rev_e_iso/keyboard.json | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/keyboards/4pplet/waffling60/rev_e/keyboard.json b/keyboards/4pplet/waffling60/rev_e/keyboard.json index 3a75cf3d06a..4cd2501bbd4 100644 --- a/keyboards/4pplet/waffling60/rev_e/keyboard.json +++ b/keyboards/4pplet/waffling60/rev_e/keyboard.json @@ -15,7 +15,8 @@ "console": false, "extrakey": true, "key_lock": true, - "mousekey": false, + "mousekey": true, + "encoder": true, "nkro": true, "rgblight": true }, diff --git a/keyboards/4pplet/waffling60/rev_e_ansi/keyboard.json b/keyboards/4pplet/waffling60/rev_e_ansi/keyboard.json index c2514700ff0..a1b5d0e11eb 100644 --- a/keyboards/4pplet/waffling60/rev_e_ansi/keyboard.json +++ b/keyboards/4pplet/waffling60/rev_e_ansi/keyboard.json @@ -15,7 +15,8 @@ "console": false, "extrakey": true, "key_lock": true, - "mousekey": false, + "mousekey": true, + "encoder": true, "nkro": true, "rgblight": true }, diff --git a/keyboards/4pplet/waffling60/rev_e_iso/keyboard.json b/keyboards/4pplet/waffling60/rev_e_iso/keyboard.json index e53dcab891c..a9bfad4d629 100644 --- a/keyboards/4pplet/waffling60/rev_e_iso/keyboard.json +++ b/keyboards/4pplet/waffling60/rev_e_iso/keyboard.json @@ -16,6 +16,7 @@ "extrakey": true, "key_lock": true, "mousekey": true, + "encoder": true, "nkro": true, "rgblight": true }, From bdd10ef8e7855ed6a5ed4253df731d8978bc1aa2 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Wed, 12 Jun 2024 17:43:09 +1000 Subject: [PATCH 088/519] Remove VIA_ENABLE from default keymaps. (#23903) --- .../keychron/q9_plus/ansi_encoder/keymaps/default/rules.mk | 1 - .../zed65/no_backlight/wearhaus66/keymaps/default/rules.mk | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/keyboards/keychron/q9_plus/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q9_plus/ansi_encoder/keymaps/default/rules.mk index f1adcab005e..ee325681483 100755 --- a/keyboards/keychron/q9_plus/ansi_encoder/keymaps/default/rules.mk +++ b/keyboards/keychron/q9_plus/ansi_encoder/keymaps/default/rules.mk @@ -1,2 +1 @@ -VIA_ENABLE = yes ENCODER_MAP_ENABLE = yes diff --git a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/default/rules.mk b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/default/rules.mk index 43061db1dd4..4da205a168c 100644 --- a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/default/rules.mk +++ b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keymaps/default/rules.mk @@ -1,2 +1 @@ -VIA_ENABLE = yes -LTO_ENABLE = yes \ No newline at end of file +LTO_ENABLE = yes From e69d30a9e915cfed7c4abe07eecb82831747f180 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Thu, 13 Jun 2024 09:48:24 +1000 Subject: [PATCH 089/519] VIA keymap deprecation notice. (#23905) --- docs/ChangeLog/20240526.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/ChangeLog/20240526.md b/docs/ChangeLog/20240526.md index b5e5b3b6938..b311f869c43 100644 --- a/docs/ChangeLog/20240526.md +++ b/docs/ChangeLog/20240526.md @@ -109,6 +109,16 @@ Essentially, changes were made in the internals of how QMK interacts with USB fo Compliance checks were run against QMK firmwares for the most popular ARM microcontrollers, as well as suspend/resume tests. As far as we can tell, a whole host of hard-to-reproduce issues are mitigated by this change. +## Deprecation Notices + +In line with the [notice period](support_deprecation_policy#how-much-advance-notice-will-be-given), deprecation notices for larger items are listed here. + +### Migration of VIA keymaps to VIA team control + +The QMK team has been in discussion with the VIA maintainers and all VIA-related keymaps in the `qmk_firmware` repository will transition to a `qmk_userspace`-style repository under the VIA team's control at the end of the next breaking changes period. This allows the VIA team to support many more custom keyboard configurations, as well as reduces the turnaround time for any changes to the VIA protocol they wish to make. + +At the end of the breaking changes cycle ending 2024-08-25, VIA-enabled keymaps will no longer be accepted into the QMK repository. At the time of migration, any open PRs against `qmk_firmware` which include new VIA-related keymaps will be subsequently be asked to remove those keymaps and instead raise a PR against the userspace repository containing all VIA keymaps. + ## Full changelist {#full-changelist} Core: From 7247039742fb81cbf1e443c23a8070afb5961762 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Thu, 13 Jun 2024 11:55:52 +1000 Subject: [PATCH 090/519] Fixup docs. (#23906) --- docs/ChangeLog/20240526.md | 2 +- docs/_sidebar.json | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/ChangeLog/20240526.md b/docs/ChangeLog/20240526.md index b311f869c43..f7efbc64271 100644 --- a/docs/ChangeLog/20240526.md +++ b/docs/ChangeLog/20240526.md @@ -111,7 +111,7 @@ Compliance checks were run against QMK firmwares for the most popular ARM microc ## Deprecation Notices -In line with the [notice period](support_deprecation_policy#how-much-advance-notice-will-be-given), deprecation notices for larger items are listed here. +In line with the [notice period](../support_deprecation_policy#how-much-advance-notice-will-be-given), deprecation notices for larger items are listed here. ### Migration of VIA keymaps to VIA team control diff --git a/docs/_sidebar.json b/docs/_sidebar.json index b41719e4b32..2f64607deae 100644 --- a/docs/_sidebar.json +++ b/docs/_sidebar.json @@ -212,7 +212,8 @@ "text": "Most Recent ChangeLog", "link": "/ChangeLog/20240526" }, - { "text": "Past Breaking Changes", "link": "/breaking_changes_history" } + { "text": "Past Breaking Changes", "link": "/breaking_changes_history" }, + { "text": "Deprecation Policy", "link": "/support_deprecation_policy" } ] }, From fa403562500e1229256ea355d36a8bf4c7967021 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 13 Jun 2024 02:59:37 +0100 Subject: [PATCH 091/519] Ensure documentation pull requests build (#23908) --- .github/workflows/docs.yml | 36 ++++++++---------------------------- docs/public/.nojekyll | 0 docs/public/CNAME | 1 + 3 files changed, 9 insertions(+), 28 deletions(-) create mode 100644 docs/public/.nojekyll create mode 100644 docs/public/CNAME diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 25311019c6c..0fdd2c7b37d 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -7,7 +7,6 @@ on: push: branches: - master - - vitepress paths: - 'builddefs/docsgen/**' - 'tmk_core/**' @@ -15,6 +14,11 @@ on: - 'platforms/**' - 'docs/**' - '.github/workflows/docs.yml' + pull_request: + paths: + - 'builddefs/docsgen/**' + - 'docs/**' + - '.github/workflows/docs.yml' defaults: run: @@ -25,9 +29,6 @@ jobs: runs-on: ubuntu-latest container: ghcr.io/qmk/qmk_cli - # protect against those who develop with their fork on master - if: github.repository == 'qmk/qmk_firmware' || (github.repository == 'tzarc/qmk_firmware' && github.ref == 'refs/heads/vitepress') - steps: - uses: actions/checkout@v4 with: @@ -35,10 +36,10 @@ jobs: - name: Install dependencies run: | - apt-get update && apt-get install -y rsync doxygen curl + apt-get update && apt-get install -y rsync doxygen # install nvm touch $HOME/.bashrc - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash + wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash - name: Install node run: | @@ -46,29 +47,15 @@ jobs: nvm install 20 nvm use 20 corepack enable - npm install -g moxygen - name: Build docs run: | source $HOME/.bashrc nvm use 20 qmk --verbose generate-docs - touch '.build/docs/.nojekyll' - - - name: Set CNAME - if: github.repository == 'qmk/qmk_firmware' - run: | - # Override target CNAME - echo 'docs.qmk.fm' > .build/docs/CNAME - - - name: Override CNAME - if: github.repository == 'tzarc/qmk_firmware' - run: | - # Temporarily override target CNAME during development - echo 'vitepress.qmk.fm' > .build/docs/CNAME - name: Deploy - if: github.repository == 'qmk/qmk_firmware' + if: ${{ github.event_name == 'push' && github.repository == 'qmk/qmk_firmware' }} uses: JamesIves/github-pages-deploy-action@v4.6.1 with: token: ${{ secrets.GITHUB_TOKEN }} @@ -76,10 +63,3 @@ jobs: folder: .build/docs git-config-name: QMK Bot git-config-email: hello@qmk.fm - - - name: Deploy - if: github.repository == 'tzarc/qmk_firmware' - uses: JamesIves/github-pages-deploy-action@v4.6.1 - with: - branch: gh-pages - folder: .build/docs diff --git a/docs/public/.nojekyll b/docs/public/.nojekyll new file mode 100644 index 00000000000..e69de29bb2d diff --git a/docs/public/CNAME b/docs/public/CNAME new file mode 100644 index 00000000000..06276c90c40 --- /dev/null +++ b/docs/public/CNAME @@ -0,0 +1 @@ +docs.qmk.fm From be9dfe65dd9cbc9f58e7c55894220b6708a22da7 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 13 Jun 2024 12:55:47 +1000 Subject: [PATCH 092/519] Add API reference section for LED/RGB Matrix docs (#23902) --- docs/features/led_matrix.md | 339 ++++++++++++++++++++++---- docs/features/rgb_matrix.md | 471 +++++++++++++++++++++++++++++++----- 2 files changed, 696 insertions(+), 114 deletions(-) diff --git a/docs/features/led_matrix.md b/docs/features/led_matrix.md index 164cbc0f5fc..3e3c17d2c1c 100644 --- a/docs/features/led_matrix.md +++ b/docs/features/led_matrix.md @@ -380,55 +380,6 @@ For inspiration and examples, check out the built-in effects under `quantum/led_ The EEPROM for it is currently shared with the RGB Matrix system (it's generally assumed only one feature would be used at a time). -### Direct Operation {#direct-operation} -|Function |Description | -|--------------------------------------------|-------------| -|`led_matrix_set_value_all(v)` |Set all of the LEDs to the given value, where `v` is between 0 and 255 (not written to EEPROM) | -|`led_matrix_set_value(index, v)` |Set a single LED to the given value, where `v` is between 0 and 255, and `index` is between 0 and `LED_MATRIX_LED_COUNT` (not written to EEPROM) | - -### Disable/Enable Effects {#disable-enable-effects} -|Function |Description | -|--------------------------------------------|-------------| -|`led_matrix_toggle()` |Toggle effect range LEDs between on and off | -|`led_matrix_toggle_noeeprom()` |Toggle effect range LEDs between on and off (not written to EEPROM) | -|`led_matrix_enable()` |Turn effect range LEDs on, based on their previous state | -|`led_matrix_enable_noeeprom()` |Turn effect range LEDs on, based on their previous state (not written to EEPROM) | -|`led_matrix_disable()` |Turn effect range LEDs off, based on their previous state | -|`led_matrix_disable_noeeprom()` |Turn effect range LEDs off, based on their previous state (not written to EEPROM) | - -### Change Effect Mode {#change-effect-mode} -|Function |Description | -|--------------------------------------------|-------------| -|`led_matrix_mode(mode)` |Set the mode, if LED animations are enabled | -|`led_matrix_mode_noeeprom(mode)` |Set the mode, if LED animations are enabled (not written to EEPROM) | -|`led_matrix_step()` |Change the mode to the next LED animation in the list of enabled LED animations | -|`led_matrix_step_noeeprom()` |Change the mode to the next LED animation in the list of enabled LED animations (not written to EEPROM) | -|`led_matrix_step_reverse()` |Change the mode to the previous LED animation in the list of enabled LED animations | -|`led_matrix_step_reverse_noeeprom()` |Change the mode to the previous LED animation in the list of enabled LED animations (not written to EEPROM) | -|`led_matrix_increase_speed()` |Increase the speed of the animations | -|`led_matrix_increase_speed_noeeprom()` |Increase the speed of the animations (not written to EEPROM) | -|`led_matrix_decrease_speed()` |Decrease the speed of the animations | -|`led_matrix_decrease_speed_noeeprom()` |Decrease the speed of the animations (not written to EEPROM) | -|`led_matrix_set_speed(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 | -|`led_matrix_set_speed_noeeprom(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 (not written to EEPROM) | - -### Change Value {#change-value} -|Function |Description | -|--------------------------------------------|-------------| -|`led_matrix_increase_val()` |Increase the value for effect range LEDs. This wraps around at maximum value | -|`led_matrix_increase_val_noeeprom()` |Increase the value for effect range LEDs. This wraps around at maximum value (not written to EEPROM) | -|`led_matrix_decrease_val()` |Decrease the value for effect range LEDs. This wraps around at minimum value | -|`led_matrix_decrease_val_noeeprom()` |Decrease the value for effect range LEDs. This wraps around at minimum value (not written to EEPROM) | - -### Query Current Status {#query-current-status} -|Function |Description | -|---------------------------------|---------------------------| -|`led_matrix_is_enabled()` |Gets current on/off status | -|`led_matrix_get_mode()` |Gets current mode | -|`led_matrix_get_val()` |Gets current val | -|`led_matrix_get_speed()` |Gets current speed | -|`led_matrix_get_suspend_state()` |Gets current suspend state | - ## Callbacks {#callbacks} ### Indicators {#indicators} @@ -452,3 +403,293 @@ void led_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { return false; } ``` + +## API {#api} + +### `void led_matrix_toggle(void)` {#api-led-matrix-toggle} + +Toggle LED Matrix on or off. + +--- + +### `void led_matrix_toggle_noeeprom(void)` {#api-led-matrix-toggle-noeeprom} + +Toggle LED Matrix on or off. New state is not written to EEPROM. + +--- + +### `void led_matrix_enable(void)` {#api-led-matrix-enable} + +Turn LED Matrix on. + +--- + +### `void led_matrix_enable_noeeprom(void)` {#api-led-matrix-enable-noeeprom} + +Turn LED Matrix on. New state is not written to EEPROM. + +--- + +### `void led_matrix_disable(void)` {#api-led-matrix-disable} + +Turn LED Matrix off. + +--- + +### `void led_matrix_disable_noeeprom(void)` {#api-led-matrix-disable-noeeprom} + +Turn LED Matrix off. New state is not written to EEPROM. + +--- + +### `bool led_matrix_is_enabled(void)` {#api-led-matrix-is-enabled} + +Get the current enabled state of LED Matrix. + +#### Return Value {#api-led-matrix-is-enabled-return} + +`true` if LED Matrix is enabled. + +--- + +### `void led_matrix_set_value(uint8_t index, uint8_t v)` {#led-matrix-set-value} + +Set the brightness of a single LED. + +This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame. + +#### Arguments {#api-led-matrix-set-value-arguments} + + - `uint8_t index` + The LED index, from 0 to `LED_MATRIX_LED_COUNT - 1`. + - `uint8_t v` + The brightness value to set. + +--- + +### `void led_matrix_set_value_all(uint8_t v)` {#api-led-matrix-set-value-all} + +Set the brightness of all LEDs. + +This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame. + +#### Arguments {#api-led-matrix-set-value-all-arguments} + + - `uint8_t v` + The brightness value to set. + +--- + +### `void led_matrix_mode(uint8_t mode)` {#api-led-matrix-mode} + +Set the currently running effect. + +#### Arguments {#api-led-matrix-mode-arguments} + + - `uint8_t mode` + The effect to switch to. + +--- + +### `void led_matrix_mode_noeeprom(uint8_t mode)` {#api-led-matrix-mode-noeeprom} + +Set the currently running effect. New state is not written to EEPROM. + +#### Arguments {#api-led-matrix-mode-noeeprom-arguments} + + - `uint8_t mode` + The effect to switch to. + +--- + +### `void led_matrix_step(void)` {#api-led-matrix-step} + +Move to the next enabled effect. + +--- + +### `void led_matrix_step_noeeprom(void)` {#api-led-matrix-step-noeeprom} + +Move to the next enabled effect. New state is not written to EEPROM. + +--- + +### `void led_matrix_step_reverse(void)` {#api-led-matrix-step-reverse} + +Move to the previous enabled effect. + +--- + +### `void led_matrix_step_reverse_noeeprom(void)` {#api-led-matrix-step-reverse} + +Move to the previous enabled effect. New state is not written to EEPROM. + +--- + +### `uint8_t led_matrix_get_mode(void)` {#api-led-matrix-get-mode} + +Get the currently running effect. + +#### Return Value {#api-led-matrix-get-mode-return} + +The index of the currently running effect. + +--- + +### `void val_matrix_increase_val(void)` {#api-led-matrix-increase-val} + +Increase the global effect brightness. + +--- + +### `void led_matrix_increase_val_noeeprom(void)` {#api-led-matrix-increase-val-noeeprom} + +Increase the global effect brightness. New state is not written to EEPROM. + +--- + +### `void led_matrix_decrease_val(void)` {#api-led-matrix-decrease-val} + +Decrease the global effect brightness. + +--- + +### `void led_matrix_decrease_val_noeeprom(void)` {#api-led-matrix-decrease-val-noeeprom} + +Decrease the global effect brightness. New state is not written to EEPROM. + +--- + +### `uint8_t led_matrix_get_val(void)` {#api-led-matrix-get-val} + +Get the current global effect brightness. + +#### Return Value {#api-led-matrix-get-val-return} + +The current brightness value, from 0 to 255. + +--- + +### `void led_matrix_increase_speed(void)` {#api-led-matrix-increase-speed} + +Increase the effect speed. + +--- + +### `void led_matrix_increase_speed_noeeprom(void)` {#api-led-matrix-increase-speed-noeeprom} + +Increase the effect speed. New state is not written to EEPROM. + +--- + +### `void led_matrix_decrease_speed(void)` {#api-led-matrix-decrease-speed} + +Decrease the effect speed. + +--- + +### `void led_matrix_decrease_speed_noeeprom(void)` {#api-led-matrix-decrease-speed-noeeprom} + +Decrease the effect speed. New state is not written to EEPROM. + +--- + +### `void led_matrix_set_speed(uint8_t speed)` {#api-led-matrix-set-speed} + +Set the effect speed. + +#### Arguments {#api-led-matrix-set-speed-arguments} + + - `uint8_t speed` + The new speed to set, from 0 to 255. + +--- + +### `void led_matrix_set_speed_noeeprom(uint8_t speed)` {#api-led-matrix-set-speed-noeeprom} + +Set the effect speed. New state is not written to EEPROM. + +#### Arguments {#api-led-matrix-set-speed-noeeprom-arguments} + + - `uint8_t speed` + The new speed to set, from 0 to 255. + +--- + +### `uint8_t led_matrix_get_speed(void)` {#api-led-matrix-get-speed} + +Get the current effect speed. + +#### Return Value {#api-led-matrix-get-speed-return} + +The current effect speed, from 0 to 255. + +--- + +### `void led_matrix_reload_from_eeprom(void)` {#api-led-matrix-reload-from-eeprom} + +Reload the effect configuration (enabled, mode and brightness) from EEPROM. + +--- + +### `bool led_matrix_get_suspend_state(void)` {#api-led-matrix-get-suspend-state} + +Get the current suspend state of LED Matrix. + +#### Return Value {#api-led-matrix-get-suspend-state-return} + +`true` if LED Matrix is currently in the suspended state. + +--- + +### `bool led_matrix_indicators_kb(void)` {#api-led-matrix-indicators-kb} + +Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs. + +#### Return Value {#api-led-matrix-indicators-kb-return} + +Currently unused. + +--- + +### `bool led_matrix_indicators_user(void)` {#api-led-matrix-indicators-user} + +Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs. + +#### Return Value {#api-led-matrix-indicators-user-return} + +`true` to continue running the keyboard-level callback. + +--- + +### `bool led_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)` {#api-led-matrix-indicators-advanced-kb} + +Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs. + +### Arguments {#api-led-matrix-indicators-advanced-kb-arguments} + + - `uint8_t led_min` + The index of the first LED in this batch. + - `uint8_t led_max` + The index of the last LED in this batch. + +#### Return Value {#api-led-matrix-indicators-advanced-kb-return} + +Currently unused. + +--- + +### `bool led_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)` {#api-led-matrix-indicators-advanced-user} + +Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs. + +### Arguments {#api-led-matrix-indicators-advanced-user-arguments} + + - `uint8_t led_min` + The index of the first LED in this batch. + - `uint8_t led_max` + The index of the last LED in this batch. + +#### Return Value {#api-led-matrix-indicators-advanced-user-return} + +`true` to continue running the keyboard-level callback. diff --git a/docs/features/rgb_matrix.md b/docs/features/rgb_matrix.md index 448d1cdfb56..60250c2c9c8 100644 --- a/docs/features/rgb_matrix.md +++ b/docs/features/rgb_matrix.md @@ -914,71 +914,6 @@ These are defined in [`color.h`](https://github.com/qmk/qmk_firmware/blob/master The EEPROM for it is currently shared with the LED Matrix system (it's generally assumed only one feature would be used at a time). -## Functions {#functions} - -### Direct Operation {#direct-operation} -|Function |Description | -|--------------------------------------------|-------------| -|`rgb_matrix_set_color_all(r, g, b)` |Set all of the LEDs to the given RGB value, where `r`/`g`/`b` are between 0 and 255 (not written to EEPROM) | -|`rgb_matrix_set_color(index, r, g, b)` |Set a single LED to the given RGB value, where `r`/`g`/`b` are between 0 and 255, and `index` is between 0 and `RGB_MATRIX_LED_COUNT` (not written to EEPROM) | - -### Disable/Enable Effects {#disable-enable-effects} -|Function |Description | -|--------------------------------------------|-------------| -|`rgb_matrix_toggle()` |Toggle effect range LEDs between on and off | -|`rgb_matrix_toggle_noeeprom()` |Toggle effect range LEDs between on and off (not written to EEPROM) | -|`rgb_matrix_enable()` |Turn effect range LEDs on, based on their previous state | -|`rgb_matrix_enable_noeeprom()` |Turn effect range LEDs on, based on their previous state (not written to EEPROM) | -|`rgb_matrix_disable()` |Turn effect range LEDs off, based on their previous state | -|`rgb_matrix_disable_noeeprom()` |Turn effect range LEDs off, based on their previous state (not written to EEPROM) | - -### Change Effect Mode {#change-effect-mode} -|Function |Description | -|--------------------------------------------|-------------| -|`rgb_matrix_mode(mode)` |Set the mode, if RGB animations are enabled | -|`rgb_matrix_mode_noeeprom(mode)` |Set the mode, if RGB animations are enabled (not written to EEPROM) | -|`rgb_matrix_step()` |Change the mode to the next RGB animation in the list of enabled RGB animations | -|`rgb_matrix_step_noeeprom()` |Change the mode to the next RGB animation in the list of enabled RGB animations (not written to EEPROM) | -|`rgb_matrix_step_reverse()` |Change the mode to the previous RGB animation in the list of enabled RGB animations | -|`rgb_matrix_step_reverse_noeeprom()` |Change the mode to the previous RGB animation in the list of enabled RGB animations (not written to EEPROM) | -|`rgb_matrix_increase_speed()` |Increase the speed of the animations | -|`rgb_matrix_increase_speed_noeeprom()` |Increase the speed of the animations (not written to EEPROM) | -|`rgb_matrix_decrease_speed()` |Decrease the speed of the animations | -|`rgb_matrix_decrease_speed_noeeprom()` |Decrease the speed of the animations (not written to EEPROM) | -|`rgb_matrix_set_speed(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 | -|`rgb_matrix_set_speed_noeeprom(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 (not written to EEPROM) | -|`rgb_matrix_reload_from_eeprom()` |Reload the effect configuration (enabled, mode and color) from EEPROM | - -### Change Color {#change-color} -|Function |Description | -|--------------------------------------------|-------------| -|`rgb_matrix_increase_hue()` |Increase the hue for effect range LEDs. This wraps around at maximum hue | -|`rgb_matrix_increase_hue_noeeprom()` |Increase the hue for effect range LEDs. This wraps around at maximum hue (not written to EEPROM) | -|`rgb_matrix_decrease_hue()` |Decrease the hue for effect range LEDs. This wraps around at minimum hue | -|`rgb_matrix_decrease_hue_noeeprom()` |Decrease the hue for effect range LEDs. This wraps around at minimum hue (not written to EEPROM) | -|`rgb_matrix_increase_sat()` |Increase the saturation for effect range LEDs. This wraps around at maximum saturation | -|`rgb_matrix_increase_sat_noeeprom()` |Increase the saturation for effect range LEDs. This wraps around at maximum saturation (not written to EEPROM) | -|`rgb_matrix_decrease_sat()` |Decrease the saturation for effect range LEDs. This wraps around at minimum saturation | -|`rgb_matrix_decrease_sat_noeeprom()` |Decrease the saturation for effect range LEDs. This wraps around at minimum saturation (not written to EEPROM) | -|`rgb_matrix_increase_val()` |Increase the value for effect range LEDs. This wraps around at maximum value | -|`rgb_matrix_increase_val_noeeprom()` |Increase the value for effect range LEDs. This wraps around at maximum value (not written to EEPROM) | -|`rgb_matrix_decrease_val()` |Decrease the value for effect range LEDs. This wraps around at minimum value | -|`rgb_matrix_decrease_val_noeeprom()` |Decrease the value for effect range LEDs. This wraps around at minimum value (not written to EEPROM) | -|`rgb_matrix_sethsv(h, s, v)` |Set LEDs to the given HSV value where `h`/`s`/`v` are between 0 and 255 | -|`rgb_matrix_sethsv_noeeprom(h, s, v)` |Set LEDs to the given HSV value where `h`/`s`/`v` are between 0 and 255 (not written to EEPROM) | - -### Query Current Status {#query-current-status} -|Function |Description | -|---------------------------------|---------------------------| -|`rgb_matrix_is_enabled()` |Gets current on/off status | -|`rgb_matrix_get_mode()` |Gets current mode | -|`rgb_matrix_get_hue()` |Gets current hue | -|`rgb_matrix_get_sat()` |Gets current sat | -|`rgb_matrix_get_val()` |Gets current val | -|`rgb_matrix_get_hsv()` |Gets hue, sat, and val and returns a [`HSV` structure](https://github.com/qmk/qmk_firmware/blob/7ba6456c0b2e041bb9f97dbed265c5b8b4b12192/quantum/color.h#L56-L61)| -|`rgb_matrix_get_speed()` |Gets current speed | -|`rgb_matrix_get_suspend_state()` |Gets current suspend state | - ## Callbacks {#callbacks} ### Indicators {#indicators} @@ -1117,3 +1052,409 @@ void keyboard_post_init_user(void) { rgb_matrix_sethsv_noeeprom(HSV_OFF); } ``` + +## API {#api} + +### `void rgb_matrix_toggle(void)` {#api-rgb-matrix-toggle} + +Toggle RGB Matrix on or off. + +--- + +### `void rgb_matrix_toggle_noeeprom(void)` {#api-rgb-matrix-toggle-noeeprom} + +Toggle RGB Matrix on or off. New state is not written to EEPROM. + +--- + +### `void rgb_matrix_enable(void)` {#api-rgb-matrix-enable} + +Turn RGB Matrix on. + +--- + +### `void rgb_matrix_enable_noeeprom(void)` {#api-rgb-matrix-enable-noeeprom} + +Turn RGB Matrix on. New state is not written to EEPROM. + +--- + +### `void rgb_matrix_disable(void)` {#api-rgb-matrix-disable} + +Turn RGB Matrix off. + +--- + +### `void rgb_matrix_disable_noeeprom(void)` {#api-rgb-matrix-disable-noeeprom} + +Turn RGB Matrix off. New state is not written to EEPROM. + +--- + +### `bool rgb_matrix_is_enabled(void)` {#api-rgb-matrix-is-enabled} + +Get the current enabled state of RGB Matrix. + +#### Return Value {#api-rgb-matrix-is-enabled-return} + +`true` if RGB Matrix is enabled. + +--- + +### `void rgb_matrix_set_color(uint8_t index, uint8_t r, uint8_t g, uint8_t b)` {#api-rgb-matrix-set-color} + +Set the color of a single LED. + +This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame. + +#### Arguments {#api-rgb-matrix-set-color-arguments} + + - `uint8_t index` + The LED index, from 0 to `RGB_MATRIX_LED_COUNT - 1`. + - `uint8_t r` + The red value to set. + - `uint8_t g` + The green value to set. + - `uint8_t b` + The blue value to set. + +--- + +### `void rgb_matrix_set_color_all(uint8_t r, uint8_t g, uint8_t b)` {#api-rgb-matrix-set-color-all} + +Set the color of all LEDs. + +This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame. + +#### Arguments {#api-rgb-matrix-set-color-all-arguments} + + - `uint8_t r` + The red value to set. + - `uint8_t g` + The green value to set. + - `uint8_t b` + The blue value to set. + +--- + +### `void rgb_matrix_mode(uint8_t mode)` {#api-rgb-matrix-mode} + +Set the currently running effect. + +#### Arguments {#api-rgb-matrix-mode-arguments} + + - `uint8_t mode` + The effect to switch to. + +--- + +### `void rgb_matrix_mode_noeeprom(uint8_t mode)` {#api-rgb-matrix-mode-noeeprom} + +Set the currently running effect. New state is not written to EEPROM. + +#### Arguments {#api-rgb-matrix-mode-noeeprom-arguments} + + - `uint8_t mode` + The effect to switch to. + +--- + +### `void rgb_matrix_step(void)` {#api-rgb-matrix-step} + +Move to the next enabled effect. + +--- + +### `void rgb_matrix_step_noeeprom(void)` {#api-rgb-matrix-step-noeeprom} + +Move to the next enabled effect. New state is not written to EEPROM. + +--- + +### `void rgb_matrix_step_reverse(void)` {#api-rgb-matrix-step-reverse} + +Move to the previous enabled effect. + +--- + +### `void rgb_matrix_step_reverse_noeeprom(void)` {#api-rgb-matrix-step-reverse} + +Move to the previous enabled effect. New state is not written to EEPROM. + +--- + +### `uint8_t rgb_matrix_get_mode(void)` {#api-rgb-matrix-get-mode} + +Get the currently running effect. + +#### Return Value {#api-rgb-matrix-get-mode-return} + +The index of the currently running effect. + +--- + +### `void rgb_matrix_increase_hue(void)` {#api-rgb-matrix-increase-hue} + +Increase the global effect hue. + +--- + +### `void rgb_matrix_increase_hue_noeeprom(void)` {#api-rgb-matrix-increase-hue-noeeprom} + +Increase the global effect hue. New state is not written to EEPROM. + +--- + +### `void rgb_matrix_decrease_hue(void)` {#api-rgb-matrix-decrease-hue} + +Decrease the global effect hue. + +--- + +### `void rgb_matrix_decrease_hue_noeeprom(void)` {#api-rgb-matrix-decrease-hue-noeeprom} + +Decrease the global effect hue. New state is not written to EEPROM. + +--- + +### `uint8_t rgb_matrix_get_hue(void)` {#api-rgb-matrix-get-hue} + +Get the current global effect hue. + +#### Return Value {#api-rgb-matrix-get-hue-return} + +The current hue value, from 0 to 255. + +--- + +### `void rgb_matrix_increase_sat(void)` {#api-rgb-matrix-increase-sat} + +Increase the global effect saturation. + +--- + +### `void rgb_matrix_increase_sat_noeeprom(void)` {#api-rgb-matrix-increase-sat-noeeprom} + +Increase the global effect saturation. New state is not written to EEPROM. + +--- + +### `void rgb_matrix_decrease_sat(void)` {#api-rgb-matrix-decrease-sat} + +Decrease the global effect saturation. + +--- + +### `void rgb_matrix_decrease_sat_noeeprom(void)` {#api-rgb-matrix-decrease-sat-noeeprom} + +Decrease the global effect saturation. New state is not written to EEPROM. + +--- + +### `uint8_t rgb_matrix_get_sat(void)` {#api-rgb-matrix-get-sat} + +Get the current global effect saturation. + +#### Return Value {#api-rgb-matrix-get-sat-return} + +The current saturation value, from 0 to 255. + +--- + +### `void rgb_matrix_increase_val(void)` {#api-rgb-matrix-increase-val} + +Increase the global effect value (brightness). + +--- + +### `void rgb_matrix_increase_val_noeeprom(void)` {#api-rgb-matrix-increase-val-noeeprom} + +Increase the global effect value (brightness). New state is not written to EEPROM. + +--- + +### `void rgb_matrix_decrease_val(void)` {#api-rgb-matrix-decrease-val} + +Decrease the global effect value (brightness). + +--- + +### `void rgb_matrix_decrease_val_noeeprom(void)` {#api-rgb-matrix-decrease-val-noeeprom} + +Decrease the global effect value (brightness). New state is not written to EEPROM. + +--- + +### `uint8_t rgb_matrix_get_val(void)` {#api-rgb-matrix-get-val} + +Get the current global effect value (brightness). + +#### Return Value {#api-rgb-matrix-get-val-return} + +The current brightness value, from 0 to 255. + +--- + +### `void rgb_matrix_increase_speed(void)` {#api-rgb-matrix-increase-speed} + +Increase the effect speed. + +--- + +### `void rgb_matrix_increase_speed_noeeprom(void)` {#api-rgb-matrix-increase-speed-noeeprom} + +Increase the effect speed. New state is not written to EEPROM. + +--- + +### `void rgb_matrix_decrease_speed(void)` {#api-rgb-matrix-decrease-speed} + +Decrease the effect speed. + +--- + +### `void rgb_matrix_decrease_speed_noeeprom(void)` {#api-rgb-matrix-decrease-speed-noeeprom} + +Decrease the effect speed. New state is not written to EEPROM. + +--- + +### `void rgb_matrix_set_speed(uint8_t speed)` {#api-rgb-matrix-set-speed} + +Set the effect speed. + +#### Arguments {#api-rgb-matrix-set-speed-arguments} + + - `uint8_t speed` + The new speed to set, from 0 to 255. + +--- + +### `void rgb_matrix_set_speed_noeeprom(uint8_t speed)` {#api-rgb-matrix-set-speed-noeeprom} + +Set the effect speed. New state is not written to EEPROM. + +#### Arguments {#api-rgb-matrix-set-speed-noeeprom-arguments} + + - `uint8_t speed` + The new speed to set, from 0 to 255. + +--- + +### `uint8_t rgb_matrix_get_speed(void)` {#api-rgb-matrix-get-speed} + +Get the current effect speed. + +#### Return Value {#api-rgb-matrix-get-speed-return} + +The current effect speed, from 0 to 255. + +--- + +### `void rgb_matrix_sethsv(uint8_t h, uint8_t s, uint8_t v)` {#api-rgb-matrix-sethsv} + +Set the global effect hue, saturation, and value (brightness). + +### Arguments {#api-rgb-matrix-sethsv-arguments} + + - `uint8_t h` + The hue to set, from 0 to 255. + - `uint8_t s` + The saturation to set, from 0 to 255. + - `uint8_t v` + The value (brightness) to set, from 0 to 255. + +--- + +### `void rgb_matrix_sethsv_noeeprom(uint8_t h, uint8_t s, uint8_t v)` {#api-rgb-matrix-sethsv-noeeprom} + +Set the global effect hue, saturation, and value (brightness). New state is not written to EEPROM. + +#### Arguments {#api-rgb-matrix-sethsv-noeeprom-arguments} + + - `uint8_t h` + The hue to set, from 0 to 255. + - `uint8_t s` + The saturation to set, from 0 to 255. + - `uint8_t v` + The value (brightness) to set, from 0 to 255. + +--- + +### `HSV rgb_matrix_get_hsv(void)` {#api-rgb-matrix-get-hsv} + +Get the current global effect hue, saturation, and value (brightness). + +#### Return Value {#api-rgb-matrix-get-hsv-return} + +The current effect HSV as an `HSV` struct. + +--- + +### `void rgb_matrix_reload_from_eeprom(void)` {#api-rgb-matrix-reload-from-eeprom} + +Reload the effect configuration (enabled, mode and color) from EEPROM. + +--- + +### `bool rgb_matrix_get_suspend_state(void)` {#api-rgb-matrix-get-suspend-state} + +Get the current suspend state of RGB Matrix. + +#### Return Value {#api-rgb-matrix-get-suspend-state-return} + +`true` if RGB Matrix is currently in the suspended state. + +--- + +### `bool rgb_matrix_indicators_kb(void)` {#api-rgb-matrix-indicators-kb} + +Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs. + +#### Return Value {#api-rgb-matrix-indicators-kb-return} + +Currently unused. + +--- + +### `bool rgb_matrix_indicators_user(void)` {#api-rgb-matrix-indicators-user} + +Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs. + +#### Return Value {#api-rgb-matrix-indicators-user-return} + +`true` to continue running the keyboard-level callback. + +--- + +### `bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)` {#api-rgb-matrix-indicators-advanced-kb} + +Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs. + +### Arguments {#api-rgb-matrix-indicators-advanced-kb-arguments} + + - `uint8_t led_min` + The index of the first LED in this batch. + - `uint8_t led_max` + The index of the last LED in this batch. + +#### Return Value {#api-rgb-matrix-indicators-advanced-kb-return} + +Currently unused. + +--- + +### `bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)` {#api-rgb-matrix-indicators-advanced-user} + +Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs. + +### Arguments {#api-rgb-matrix-indicators-advanced-user-arguments} + + - `uint8_t led_min` + The index of the first LED in this batch. + - `uint8_t led_max` + The index of the last LED in this batch. + +#### Return Value {#api-rgb-matrix-indicators-advanced-user-return} + +`true` to continue running the keyboard-level callback. From 942c2a8d5acfebe73cc1dafd9b0044cb1cc7e911 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 13 Jun 2024 13:31:03 +1000 Subject: [PATCH 093/519] Fix nonunique anchors (#23910) --- docs/features/led_matrix.md | 2 +- docs/features/rgb_matrix.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/features/led_matrix.md b/docs/features/led_matrix.md index 3e3c17d2c1c..f6587f7b3ea 100644 --- a/docs/features/led_matrix.md +++ b/docs/features/led_matrix.md @@ -520,7 +520,7 @@ Move to the previous enabled effect. --- -### `void led_matrix_step_reverse_noeeprom(void)` {#api-led-matrix-step-reverse} +### `void led_matrix_step_reverse_noeeprom(void)` {#api-led-matrix-step-reverse-noeeprom} Move to the previous enabled effect. New state is not written to EEPROM. diff --git a/docs/features/rgb_matrix.md b/docs/features/rgb_matrix.md index 60250c2c9c8..a42f0a0f736 100644 --- a/docs/features/rgb_matrix.md +++ b/docs/features/rgb_matrix.md @@ -1177,7 +1177,7 @@ Move to the previous enabled effect. --- -### `void rgb_matrix_step_reverse_noeeprom(void)` {#api-rgb-matrix-step-reverse} +### `void rgb_matrix_step_reverse_noeeprom(void)` {#api-rgb-matrix-step-reverse-noeeprom} Move to the previous enabled effect. New state is not written to EEPROM. From c4a74be7f02ec64033638e93a49924df20fb2e57 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 13 Jun 2024 21:59:46 +1000 Subject: [PATCH 094/519] Add process_keycode handlers for new RGB Matrix and Underglow keycodes (#23896) --- quantum/process_keycode/process_rgb_matrix.c | 101 +++++++++++++++++++ quantum/process_keycode/process_rgb_matrix.h | 10 ++ quantum/process_keycode/process_underglow.c | 91 +++++++++++++++++ quantum/process_keycode/process_underglow.h | 10 ++ 4 files changed, 212 insertions(+) create mode 100644 quantum/process_keycode/process_rgb_matrix.c create mode 100644 quantum/process_keycode/process_rgb_matrix.h create mode 100644 quantum/process_keycode/process_underglow.c create mode 100644 quantum/process_keycode/process_underglow.h diff --git a/quantum/process_keycode/process_rgb_matrix.c b/quantum/process_keycode/process_rgb_matrix.c new file mode 100644 index 00000000000..fd2aa1a0c73 --- /dev/null +++ b/quantum/process_keycode/process_rgb_matrix.c @@ -0,0 +1,101 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "process_rgb_matrix.h" +#include "rgb_matrix.h" +#include "action_util.h" +#include "keycodes.h" +#include "modifiers.h" + +bool process_rgb_matrix(uint16_t keycode, keyrecord_t *record) { +#ifdef RGB_TRIGGER_ON_KEYDOWN + if (record->event.pressed) { +#else + if (!record->event.pressed) { +#endif + bool shifted = get_mods() & MOD_MASK_SHIFT; + switch (keycode) { + case QK_RGB_MATRIX_ON: + rgb_matrix_enable(); + return false; + case QK_RGB_MATRIX_OFF: + rgb_matrix_disable(); + return false; + case QK_RGB_MATRIX_TOGGLE: + rgb_matrix_toggle(); + return false; + case QK_RGB_MATRIX_MODE_NEXT: + if (shifted) { + rgb_matrix_step_reverse(); + } else { + rgb_matrix_step(); + } + return false; + case QK_RGB_MATRIX_MODE_PREVIOUS: + if (shifted) { + rgb_matrix_step(); + } else { + rgb_matrix_step_reverse(); + } + return false; + case QK_RGB_MATRIX_HUE_UP: + if (shifted) { + rgb_matrix_decrease_hue(); + } else { + rgb_matrix_increase_hue(); + } + return false; + case QK_RGB_MATRIX_HUE_DOWN: + if (shifted) { + rgb_matrix_increase_hue(); + } else { + rgb_matrix_decrease_hue(); + } + return false; + case QK_RGB_MATRIX_SATURATION_UP: + if (shifted) { + rgb_matrix_decrease_sat(); + } else { + rgb_matrix_increase_sat(); + } + return false; + case QK_RGB_MATRIX_SATURATION_DOWN: + if (shifted) { + rgb_matrix_increase_sat(); + } else { + rgb_matrix_decrease_sat(); + } + return false; + case QK_RGB_MATRIX_VALUE_UP: + if (shifted) { + rgb_matrix_decrease_val(); + } else { + rgb_matrix_increase_val(); + } + return false; + case QK_RGB_MATRIX_VALUE_DOWN: + if (shifted) { + rgb_matrix_increase_val(); + } else { + rgb_matrix_decrease_val(); + } + return false; + case QK_RGB_MATRIX_SPEED_UP: + if (shifted) { + rgb_matrix_decrease_speed(); + } else { + rgb_matrix_increase_speed(); + } + return false; + case QK_RGB_MATRIX_SPEED_DOWN: + if (shifted) { + rgb_matrix_increase_speed(); + } else { + rgb_matrix_decrease_speed(); + } + return false; + } + } + + return true; +} diff --git a/quantum/process_keycode/process_rgb_matrix.h b/quantum/process_keycode/process_rgb_matrix.h new file mode 100644 index 00000000000..a02bf57b5f3 --- /dev/null +++ b/quantum/process_keycode/process_rgb_matrix.h @@ -0,0 +1,10 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include +#include +#include "action.h" + +bool process_rgb_matrix(uint16_t keycode, keyrecord_t *record); diff --git a/quantum/process_keycode/process_underglow.c b/quantum/process_keycode/process_underglow.c new file mode 100644 index 00000000000..779672ac076 --- /dev/null +++ b/quantum/process_keycode/process_underglow.c @@ -0,0 +1,91 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "process_underglow.h" +#include "rgblight.h" +#include "action_util.h" +#include "keycodes.h" +#include "modifiers.h" + +bool process_underglow(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + uint8_t shifted = get_mods() & MOD_MASK_SHIFT; + switch (keycode) { + case QK_UNDERGLOW_TOGGLE: + rgblight_toggle(); + return false; + case QK_UNDERGLOW_MODE_NEXT: + if (shifted) { + rgblight_step_reverse(); + } else { + rgblight_step(); + } + return false; + case QK_UNDERGLOW_MODE_PREVIOUS: + if (shifted) { + rgblight_step(); + } else { + rgblight_step_reverse(); + } + return false; + case QK_UNDERGLOW_HUE_UP: + if (shifted) { + rgblight_decrease_hue(); + } else { + rgblight_increase_hue(); + } + return false; + case QK_UNDERGLOW_HUE_DOWN: + if (shifted) { + rgblight_increase_hue(); + } else { + rgblight_decrease_hue(); + } + return false; + case QK_UNDERGLOW_SATURATION_UP: + if (shifted) { + rgblight_decrease_sat(); + } else { + rgblight_increase_sat(); + } + return false; + case QK_UNDERGLOW_SATURATION_DOWN: + if (shifted) { + rgblight_increase_sat(); + } else { + rgblight_decrease_sat(); + } + return false; + case QK_UNDERGLOW_VALUE_UP: + if (shifted) { + rgblight_decrease_val(); + } else { + rgblight_increase_val(); + } + return false; + case QK_UNDERGLOW_VALUE_DOWN: + if (shifted) { + rgblight_increase_hue(); + } else { + rgblight_decrease_hue(); + } + return false; + case QK_UNDERGLOW_SPEED_UP: + if (shifted) { + rgblight_decrease_speed(); + } else { + rgblight_increase_speed(); + } + return false; + case QK_UNDERGLOW_SPEED_DOWN: + if (shifted) { + rgblight_increase_speed(); + } else { + rgblight_decrease_speed(); + } + return false; + } + } + + return true; +} diff --git a/quantum/process_keycode/process_underglow.h b/quantum/process_keycode/process_underglow.h new file mode 100644 index 00000000000..b409cafbb89 --- /dev/null +++ b/quantum/process_keycode/process_underglow.h @@ -0,0 +1,10 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include +#include +#include "action.h" + +bool process_underglow(uint16_t keycode, keyrecord_t *record); From 55538b2e1e743ec1a209e61880d52bb5d2156669 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 13 Jun 2024 22:19:45 +1000 Subject: [PATCH 095/519] APA102: API rework (#23355) --- docs/drivers/apa102.md | 51 +++++++++++++++++++++++------ drivers/led/apa102.c | 25 ++++++++++---- drivers/led/apa102.h | 15 ++------- quantum/rgblight/rgblight_drivers.c | 8 +++++ 4 files changed, 70 insertions(+), 29 deletions(-) diff --git a/docs/drivers/apa102.md b/docs/drivers/apa102.md index 88868a73b59..197b18869e8 100644 --- a/docs/drivers/apa102.md +++ b/docs/drivers/apa102.md @@ -26,20 +26,51 @@ Add the following to your `config.h`: ## API {#api} -### `void apa102_setleds(rgb_led_t *start_led, uint16_t num_leds)` +### `void apa102_init(void)` {#api-apa102-init} -Send RGB data to the APA102 LED chain. - -#### Arguments {#api-apa102-setleds-arguments} - - - `rgb_led_t *start_led` - A pointer to the LED array. - - `uint16_t num_leds` - The length of the LED array. +Initialize the LED driver. This function should be called first. --- -### `void apa102_set_brightness(uint8_t brightness)` +### `void apa102_set_color(uint16_t index, uint8_t red, uint8_t green, uint8_t blue)` {#api-apa102-set-color} + +Set the color of a single LED. This function does not immediately update the LEDs; call `apa102_flush()` after you are finished. + +#### Arguments {#api-apa102-set-color-arguments} + + - `uint16_t index` + The LED index in the APA102 chain. + - `uint8_t red` + The red value to set. + - `uint8_t green` + The green value to set. + - `uint8_t blue` + The blue value to set. + +--- + +### `void apa102_set_color_all(uint8_t red, uint8_t green, uint8_t blue)` {#api-apa102-set-color-all} + +Set the color of all LEDs. + +#### Arguments {#api-apa102-set-color-all-arguments} + + - `uint8_t red` + The red value to set. + - `uint8_t green` + The green value to set. + - `uint8_t blue` + The blue value to set. + +--- + +### `void apa102_flush(void)` {#api-apa102-flush} + +Flush the PWM values to the LED chain. + +--- + +### `void apa102_set_brightness(uint8_t brightness)` {#api-apa102-set-brightness} Set the global brightness. diff --git a/drivers/led/apa102.c b/drivers/led/apa102.c index b171b07b12c..0cf0ecb4018 100644 --- a/drivers/led/apa102.c +++ b/drivers/led/apa102.c @@ -53,7 +53,8 @@ io_wait; \ } while (0) -uint8_t apa102_led_brightness = APA102_DEFAULT_BRIGHTNESS; +rgb_led_t apa102_leds[APA102_LED_COUNT]; +uint8_t apa102_led_brightness = APA102_DEFAULT_BRIGHTNESS; static void apa102_send_byte(uint8_t byte) { APA102_SEND_BIT(byte, 7); @@ -121,14 +122,24 @@ void apa102_init(void) { gpio_set_pin_output(APA102_CI_PIN); } -void apa102_setleds(rgb_led_t *start_led, uint16_t num_leds) { - rgb_led_t *end = start_led + num_leds; +void apa102_set_color(uint16_t index, uint8_t red, uint8_t green, uint8_t blue) { + apa102_leds[index].r = red; + apa102_leds[index].g = green; + apa102_leds[index].b = blue; +} - apa102_start_frame(); - for (rgb_led_t *led = start_led; led < end; led++) { - apa102_send_frame(led->r, led->g, led->b, apa102_led_brightness); +void apa102_set_color_all(uint8_t red, uint8_t green, uint8_t blue) { + for (uint16_t i = 0; i < APA102_LED_COUNT; i++) { + apa102_set_color(i, red, green, blue); } - apa102_end_frame(num_leds); +} + +void apa102_flush(void) { + apa102_start_frame(); + for (uint8_t i = 0; i < APA102_LED_COUNT; i++) { + apa102_send_frame(apa102_leds[i].r, apa102_leds[i].g, apa102_leds[i].b, apa102_led_brightness); + } + apa102_end_frame(APA102_LED_COUNT); } void apa102_set_brightness(uint8_t brightness) { diff --git a/drivers/led/apa102.h b/drivers/led/apa102.h index 5e2f78658be..42f1344f0c9 100644 --- a/drivers/led/apa102.h +++ b/drivers/led/apa102.h @@ -32,17 +32,8 @@ #define APA102_MAX_BRIGHTNESS 31 void apa102_init(void); - -/* User Interface - * - * Input: - * start_led: An array of GRB data describing the LED colors - * num_leds: The number of LEDs to write - * - * The functions will perform the following actions: - * - Set the data-out pin as output - * - Send out the LED data - */ -void apa102_setleds(rgb_led_t *start_led, uint16_t num_leds); +void apa102_set_color(uint16_t index, uint8_t red, uint8_t green, uint8_t blue); +void apa102_set_color_all(uint8_t red, uint8_t green, uint8_t blue); +void apa102_flush(void); void apa102_set_brightness(uint8_t brightness); diff --git a/quantum/rgblight/rgblight_drivers.c b/quantum/rgblight/rgblight_drivers.c index 8902b8f842e..76e9031aec9 100644 --- a/quantum/rgblight/rgblight_drivers.c +++ b/quantum/rgblight/rgblight_drivers.c @@ -14,6 +14,14 @@ const rgblight_driver_t rgblight_driver = { #elif defined(RGBLIGHT_APA102) # include "apa102.h" +// Temporary shim +static void apa102_setleds(rgb_led_t *ledarray, uint16_t number_of_leds) { + for (uint16_t i = 0; i < number_of_leds; i++) { + apa102_set_color(i, ledarray[i].r, ledarray[i].g, ledarray[i].b); + } + apa102_flush(); +} + const rgblight_driver_t rgblight_driver = { .init = apa102_init, .setleds = apa102_setleds, From 4a4eda4c3ca96a57d44fc1cb5d4d5ef536839d2f Mon Sep 17 00:00:00 2001 From: Danny Date: Thu, 13 Jun 2024 09:00:42 -0400 Subject: [PATCH 096/519] Add missing encode enable for BAMFK-1 (#23821) Add missing encode enable --- keyboards/keebio/bamfk1/keyboard.json | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/keebio/bamfk1/keyboard.json b/keyboards/keebio/bamfk1/keyboard.json index 09e7edbd185..babc74f780e 100644 --- a/keyboards/keebio/bamfk1/keyboard.json +++ b/keyboards/keebio/bamfk1/keyboard.json @@ -4,6 +4,7 @@ "maintainer": "nooges", "bootloader": "atmel-dfu", "encoder": { + "enabled": true, "rotary": [ {"pin_a": "C7", "pin_b": "B5"}, {"pin_a": "D7", "pin_b": "D4"} From caf13bb9db0ffa29c25ec55d5cff5c12770f97b9 Mon Sep 17 00:00:00 2001 From: Danny Date: Thu, 13 Jun 2024 18:36:26 -0400 Subject: [PATCH 097/519] Fix order of RGB LEDs to correct one for Iris CE (#23914) --- keyboards/keebio/iris_ce/rev1/keyboard.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/keebio/iris_ce/rev1/keyboard.json b/keyboards/keebio/iris_ce/rev1/keyboard.json index c9fc160001a..6086f948b1c 100644 --- a/keyboards/keebio/iris_ce/rev1/keyboard.json +++ b/keyboards/keebio/iris_ce/rev1/keyboard.json @@ -118,11 +118,11 @@ {"matrix": [8, 5], "x": 144, "y": 43, "flags": 4}, {"matrix": [8, 4], "x": 160, "y": 42, "flags": 4}, {"matrix": [8, 3], "x": 176, "y": 40, "flags": 4}, - {"x": 184, "y": 50, "flags": 2}, {"matrix": [8, 2], "x": 192, "y": 42, "flags": 4}, {"matrix": [8, 1], "x": 208, "y": 45, "flags": 4}, - {"x": 216, "y": 43, "flags": 2}, {"matrix": [8, 0], "x": 224, "y": 45, "flags": 4}, + {"x": 216, "y": 43, "flags": 2}, + {"x": 184, "y": 50, "flags": 2}, {"matrix": [9, 2], "x": 168, "y": 47, "flags": 4}, {"matrix": [9, 3], "x": 152, "y": 58, "flags": 4}, {"x": 144, "y": 58, "flags": 2}, @@ -215,4 +215,4 @@ ] } } -} \ No newline at end of file +} From cd565a95a02509c84010974273815f8f81e9b03b Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 14 Jun 2024 00:23:57 +0100 Subject: [PATCH 098/519] Remove suggestion of creating issues for unsupported keyboards. (#23918) --- docs/configurator_step_by_step.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/configurator_step_by_step.md b/docs/configurator_step_by_step.md index 4da9ea04a28..d0ac268bba8 100644 --- a/docs/configurator_step_by_step.md +++ b/docs/configurator_step_by_step.md @@ -16,7 +16,9 @@ I'll say that again because it's important: **MAKE SURE YOU SELECT THE RIGHT VERSION!** ::: -If your keyboard has been advertised to be powered by QMK but is not in the list, chances are a developer hasn't gotten to it yet or we haven't had a chance to merge it in yet. File an issue at [qmk_firmware](https://github.com/qmk/qmk_firmware/issues) requesting to support that particular keyboard, if there is no active [Pull Request](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+is%3Apr+label%3Akeyboard) for it. There are also QMK powered keyboards that are in their manufacturer's own GitHub accounts. Double check for that as well. +Unfortunately if your keyboard has been advertised to be powered by QMK but is not in the list, you will **not** be able to use Configurator to customize your keyboard. + +Chances are a developer hasn't gotten round to adding support or we haven't had a chance to merge it in yet. If there is no active [Pull Request](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+is%3Apr+label%3Akeyboard), contact the manufacturer and encourage them to add support. ## Step 2: Select Your Keyboard Layout From c92becc57ed94f2106f703b7955e61ad31e0dcfa Mon Sep 17 00:00:00 2001 From: adophoxia <100170946+adophoxia@users.noreply.github.com> Date: Thu, 13 Jun 2024 21:10:23 -0700 Subject: [PATCH 099/519] [Keyboard] Enable dip switch for Keychron Q4 (#23889) --- keyboards/keychron/q4/info.json | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/keychron/q4/info.json b/keyboards/keychron/q4/info.json index 59f6caef923..4b9f246b4c8 100644 --- a/keyboards/keychron/q4/info.json +++ b/keyboards/keychron/q4/info.json @@ -5,6 +5,7 @@ "bootloader": "stm32-dfu", "diode_direction": "ROW2COL", "dip_switch": { + "enabled": true, "matrix_grid": [ [4, 4] ] }, "dynamic_keymap": { From 4e8b740dd70cf79e6ade39a75442ff8f4e4e0872 Mon Sep 17 00:00:00 2001 From: Myriam Date: Fri, 14 Jun 2024 09:34:06 +0200 Subject: [PATCH 100/519] fix keymap for kprepublic bm60hsrgb_iso (#23733) Co-authored-by: Duncan Sutherland Co-authored-by: Ryan --- .../kprepublic/bm60hsrgb_iso/rev2/keymaps/default/keymap.c | 4 ++-- keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/via/keymap.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/default/keymap.c b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/default/keymap.c index 52610f04d64..3b7ca14c98e 100644 --- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/default/keymap.c @@ -20,8 +20,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_60_iso_arrow( QK_GESC, 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_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT, - KC_LSFT, KC_SPC, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH, + 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_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_60_iso_arrow( diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/via/keymap.c b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/via/keymap.c index d9a22d3bacf..4dcbb20f844 100644 --- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/via/keymap.c @@ -20,8 +20,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_60_iso_arrow( QK_GESC, 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_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT, - KC_LSFT, KC_SPC, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH, + 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_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_60_iso_arrow( From 0594121b683832b3fd5161374c6b6b1d1627b5b9 Mon Sep 17 00:00:00 2001 From: ai03 Date: Fri, 14 Jun 2024 13:26:00 -0700 Subject: [PATCH 101/519] [Keyboard] Add Altair-X (#23879) Co-authored-by: jack <0x6a73@protonmail.com> Co-authored-by: Drashna Jaelre --- keyboards/ai03/altair_x/config.h | 12 ++ keyboards/ai03/altair_x/keyboard.json | 104 ++++++++++++++++++ .../ai03/altair_x/keymaps/default/keymap.c | 29 +++++ keyboards/ai03/altair_x/keymaps/via/keymap.c | 29 +++++ keyboards/ai03/altair_x/keymaps/via/rules.mk | 1 + keyboards/ai03/altair_x/readme.md | 19 ++++ keyboards/ai03/altair_x/rules.mk | 1 + 7 files changed, 195 insertions(+) create mode 100644 keyboards/ai03/altair_x/config.h create mode 100644 keyboards/ai03/altair_x/keyboard.json create mode 100644 keyboards/ai03/altair_x/keymaps/default/keymap.c create mode 100644 keyboards/ai03/altair_x/keymaps/via/keymap.c create mode 100644 keyboards/ai03/altair_x/keymaps/via/rules.mk create mode 100644 keyboards/ai03/altair_x/readme.md create mode 100644 keyboards/ai03/altair_x/rules.mk diff --git a/keyboards/ai03/altair_x/config.h b/keyboards/ai03/altair_x/config.h new file mode 100644 index 00000000000..c54b35498b5 --- /dev/null +++ b/keyboards/ai03/altair_x/config.h @@ -0,0 +1,12 @@ +/* Copyright 2024 ai03 Design Studio */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +/* VBUS-routed pin for upstream detection */ +#define USB_VBUS_PIN GP0 + +/* RP2040- and hardware-specific config */ +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U +#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/ai03/altair_x/keyboard.json b/keyboards/ai03/altair_x/keyboard.json new file mode 100644 index 00000000000..d1448ab8c2f --- /dev/null +++ b/keyboards/ai03/altair_x/keyboard.json @@ -0,0 +1,104 @@ +{ + "manufacturer": "ai03 Design Studio", + "keyboard_name": "Altair-X", + "maintainer": "ai03_2725", + "bootloader": "rp2040", + "build": { + "debounce_type": "asym_eager_defer_pk" + }, + "diode_direction": "COL2ROW", + "dynamic_keymap": { + "layer_count": 6 + }, + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["GP20", "GP19", "GP18", "GP17", "GP16", "GP21", "GP9"], + "rows": ["GP26", "GP27", "GP28", "GP10"] + }, + "processor": "RP2040", + "split": { + "bootmagic": { + "matrix": [4, 0] + }, + "enabled": true, + "handedness": { + "pin": "GP8" + }, + "matrix_pins": { + "right": { + "cols": ["GP15", "GP21", "GP9", "GP13", "GP10", "GP11", "GP12"], + "rows": ["GP16", "GP20", "GP28", "GP14"] + } + }, + "soft_serial_pin": "GP29" + }, + "url": "https://ai03.com/", + "usb": { + "device_version": "0.0.1", + "pid": "0x0023", + "vid": "0xA103" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.38}, + {"matrix": [0, 1], "x": 1, "y": 0.38}, + {"matrix": [0, 2], "x": 2, "y": 0.13}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0.13}, + {"matrix": [0, 5], "x": 5, "y": 0.25}, + {"matrix": [0, 6], "x": 6, "y": 0.5}, + {"matrix": [4, 0], "x": 7.75, "y": 0.5}, + {"matrix": [4, 1], "x": 8.75, "y": 0.25}, + {"matrix": [4, 2], "x": 9.75, "y": 0.13}, + {"matrix": [4, 3], "x": 10.75, "y": 0}, + {"matrix": [4, 4], "x": 11.75, "y": 0.13}, + {"matrix": [4, 5], "x": 12.75, "y": 0.38}, + {"matrix": [4, 6], "x": 13.75, "y": 0.38}, + {"matrix": [1, 0], "x": 0, "y": 1.38}, + {"matrix": [1, 1], "x": 1, "y": 1.38}, + {"matrix": [1, 2], "x": 2, "y": 1.13}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1.13}, + {"matrix": [1, 5], "x": 5, "y": 1.25}, + {"matrix": [1, 6], "x": 6, "y": 1.5}, + {"matrix": [5, 0], "x": 7.75, "y": 1.5}, + {"matrix": [5, 1], "x": 8.75, "y": 1.25}, + {"matrix": [5, 2], "x": 9.75, "y": 1.13}, + {"matrix": [5, 3], "x": 10.75, "y": 1}, + {"matrix": [5, 4], "x": 11.75, "y": 1.13}, + {"matrix": [5, 5], "x": 12.75, "y": 1.38}, + {"matrix": [5, 6], "x": 13.75, "y": 1.38}, + {"matrix": [2, 0], "x": 0, "y": 2.38}, + {"matrix": [2, 1], "x": 1, "y": 2.38}, + {"matrix": [2, 2], "x": 2, "y": 2.13}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2.13}, + {"matrix": [2, 5], "x": 5, "y": 2.25}, + {"matrix": [2, 6], "x": 6, "y": 2.5}, + {"matrix": [6, 0], "x": 7.75, "y": 2.5}, + {"matrix": [6, 1], "x": 8.75, "y": 2.25}, + {"matrix": [6, 2], "x": 9.75, "y": 2.13}, + {"matrix": [6, 3], "x": 10.75, "y": 2}, + {"matrix": [6, 4], "x": 11.75, "y": 2.13}, + {"matrix": [6, 5], "x": 12.75, "y": 2.38}, + {"matrix": [6, 6], "x": 13.75, "y": 2.38}, + {"matrix": [3, 3], "x": 2.71, "y": 3.13}, + {"matrix": [3, 4], "x": 3.73, "y": 3.16}, + {"matrix": [3, 5], "x": 4.74, "y": 3.36}, + {"matrix": [3, 6], "x": 5.75, "y": 3.72}, + {"matrix": [7, 0], "x": 8, "y": 3.72}, + {"matrix": [7, 1], "x": 9.02, "y": 3.36}, + {"matrix": [7, 2], "x": 10.03, "y": 3.18}, + {"matrix": [7, 3], "x": 11.05, "y": 3.13} + ] + } + } +} diff --git a/keyboards/ai03/altair_x/keymaps/default/keymap.c b/keyboards/ai03/altair_x/keymaps/default/keymap.c new file mode 100644 index 00000000000..8eb350993da --- /dev/null +++ b/keyboards/ai03/altair_x/keymaps/default/keymap.c @@ -0,0 +1,29 @@ +/* Copyright 2024 ai03 Design Studio */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, XXXXXXX, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(2), KC_TAB, KC_DEL + ), + + [1] = LAYOUT( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + _______, KC_GRV, KC_LBRC, KC_LCBR, KC_LPRN, KC_MINS, _______, _______, KC_EQL, KC_RPRN, KC_RCBR, KC_RBRC, KC_BSLS, _______, + _______, KC_TILD, _______, _______, _______, KC_UNDS, _______, _______, KC_PLUS, _______, _______, _______, KC_PIPE, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [2] = LAYOUT( + _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, + _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ) + +}; diff --git a/keyboards/ai03/altair_x/keymaps/via/keymap.c b/keyboards/ai03/altair_x/keymaps/via/keymap.c new file mode 100644 index 00000000000..8eb350993da --- /dev/null +++ b/keyboards/ai03/altair_x/keymaps/via/keymap.c @@ -0,0 +1,29 @@ +/* Copyright 2024 ai03 Design Studio */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, XXXXXXX, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(2), KC_TAB, KC_DEL + ), + + [1] = LAYOUT( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + _______, KC_GRV, KC_LBRC, KC_LCBR, KC_LPRN, KC_MINS, _______, _______, KC_EQL, KC_RPRN, KC_RCBR, KC_RBRC, KC_BSLS, _______, + _______, KC_TILD, _______, _______, _______, KC_UNDS, _______, _______, KC_PLUS, _______, _______, _______, KC_PIPE, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [2] = LAYOUT( + _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, + _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ) + +}; diff --git a/keyboards/ai03/altair_x/keymaps/via/rules.mk b/keyboards/ai03/altair_x/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/ai03/altair_x/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/ai03/altair_x/readme.md b/keyboards/ai03/altair_x/readme.md new file mode 100644 index 00000000000..221a4615562 --- /dev/null +++ b/keyboards/ai03/altair_x/readme.md @@ -0,0 +1,19 @@ +# Altair-X + +![altair-x](https://i.imgur.com/regfKQC.png) + +ai03's third-generation ergonomic keyboard, 4-row variant + +* Keyboard Maintainer: [ai03](https://github.com/ai03-2725) +* Hardware Supported: Altair-X keyboard PCB +* Hardware Availability: Group buy + +Make example for this keyboard (after setting up your build environment): + + make ai03/altair_x:default + +Flashing example for this keyboard: + + make ai03/altair_x: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/ai03/altair_x/rules.mk b/keyboards/ai03/altair_x/rules.mk new file mode 100644 index 00000000000..161ec22b16e --- /dev/null +++ b/keyboards/ai03/altair_x/rules.mk @@ -0,0 +1 @@ +SERIAL_DRIVER = vendor From aec7569a046a79d0b2483357005d662e18f729be Mon Sep 17 00:00:00 2001 From: ai03 Date: Fri, 14 Jun 2024 13:26:21 -0700 Subject: [PATCH 102/519] [Keyboard] Add Altair (#23878) Co-authored-by: jack <0x6a73@protonmail.com> Co-authored-by: Drashna Jaelre --- keyboards/ai03/altair/config.h | 12 ++ keyboards/ai03/altair/keyboard.json | 118 ++++++++++++++++++ .../ai03/altair/keymaps/default/keymap.c | 24 ++++ keyboards/ai03/altair/keymaps/via/keymap.c | 24 ++++ keyboards/ai03/altair/keymaps/via/rules.mk | 1 + keyboards/ai03/altair/readme.md | 19 +++ keyboards/ai03/altair/rules.mk | 1 + 7 files changed, 199 insertions(+) create mode 100644 keyboards/ai03/altair/config.h create mode 100644 keyboards/ai03/altair/keyboard.json create mode 100644 keyboards/ai03/altair/keymaps/default/keymap.c create mode 100644 keyboards/ai03/altair/keymaps/via/keymap.c create mode 100644 keyboards/ai03/altair/keymaps/via/rules.mk create mode 100644 keyboards/ai03/altair/readme.md create mode 100644 keyboards/ai03/altair/rules.mk diff --git a/keyboards/ai03/altair/config.h b/keyboards/ai03/altair/config.h new file mode 100644 index 00000000000..c54b35498b5 --- /dev/null +++ b/keyboards/ai03/altair/config.h @@ -0,0 +1,12 @@ +/* Copyright 2024 ai03 Design Studio */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +/* VBUS-routed pin for upstream detection */ +#define USB_VBUS_PIN GP0 + +/* RP2040- and hardware-specific config */ +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U +#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 diff --git a/keyboards/ai03/altair/keyboard.json b/keyboards/ai03/altair/keyboard.json new file mode 100644 index 00000000000..9626716cde3 --- /dev/null +++ b/keyboards/ai03/altair/keyboard.json @@ -0,0 +1,118 @@ +{ + "manufacturer": "ai03 Design Studio", + "keyboard_name": "Altair", + "maintainer": "ai03_2725", + "bootloader": "rp2040", + "build": { + "debounce_type": "asym_eager_defer_pk" + }, + "diode_direction": "COL2ROW", + "dynamic_keymap": { + "layer_count": 6 + }, + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["GP20", "GP19", "GP18", "GP17", "GP16", "GP21", "GP9"], + "rows": ["GP11", "GP26", "GP27", "GP28", "GP10"] + }, + "processor": "RP2040", + "split": { + "bootmagic": { + "matrix": [5, 0] + }, + "enabled": true, + "handedness": { + "pin": "GP8" + }, + "matrix_pins": { + "right": { + "cols": ["GP15", "GP21", "GP9", "GP13", "GP10", "GP11", "GP12"], + "rows": ["GP5", "GP16", "GP20", "GP28", "GP14"] + } + }, + "soft_serial_pin": "GP29" + }, + "url": "https://ai03.com/", + "usb": { + "device_version": "0.0.1", + "pid": "0x0022", + "vid": "0xA103" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.38}, + {"matrix": [0, 1], "x": 1, "y": 0.38}, + {"matrix": [0, 2], "x": 2, "y": 0.13}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0.13}, + {"matrix": [0, 5], "x": 5, "y": 0.25}, + {"matrix": [0, 6], "x": 6, "y": 0.5}, + {"matrix": [5, 0], "x": 7.75, "y": 0.5}, + {"matrix": [5, 1], "x": 8.75, "y": 0.25}, + {"matrix": [5, 2], "x": 9.75, "y": 0.13}, + {"matrix": [5, 3], "x": 10.75, "y": 0}, + {"matrix": [5, 4], "x": 11.75, "y": 0.13}, + {"matrix": [5, 5], "x": 12.75, "y": 0.38}, + {"matrix": [5, 6], "x": 13.75, "y": 0.38}, + {"matrix": [1, 0], "x": 0, "y": 1.38}, + {"matrix": [1, 1], "x": 1, "y": 1.38}, + {"matrix": [1, 2], "x": 2, "y": 1.13}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1.13}, + {"matrix": [1, 5], "x": 5, "y": 1.25}, + {"matrix": [1, 6], "x": 6, "y": 1.5}, + {"matrix": [6, 0], "x": 7.75, "y": 1.5}, + {"matrix": [6, 1], "x": 8.75, "y": 1.25}, + {"matrix": [6, 2], "x": 9.75, "y": 1.13}, + {"matrix": [6, 3], "x": 10.75, "y": 1}, + {"matrix": [6, 4], "x": 11.75, "y": 1.13}, + {"matrix": [6, 5], "x": 12.75, "y": 1.38}, + {"matrix": [6, 6], "x": 13.75, "y": 1.38}, + {"matrix": [2, 0], "x": 0, "y": 2.38}, + {"matrix": [2, 1], "x": 1, "y": 2.38}, + {"matrix": [2, 2], "x": 2, "y": 2.13}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2.13}, + {"matrix": [2, 5], "x": 5, "y": 2.25}, + {"matrix": [2, 6], "x": 6, "y": 2.5}, + {"matrix": [7, 0], "x": 7.75, "y": 2.5}, + {"matrix": [7, 1], "x": 8.75, "y": 2.25}, + {"matrix": [7, 2], "x": 9.75, "y": 2.13}, + {"matrix": [7, 3], "x": 10.75, "y": 2}, + {"matrix": [7, 4], "x": 11.75, "y": 2.13}, + {"matrix": [7, 5], "x": 12.75, "y": 2.38}, + {"matrix": [7, 6], "x": 13.75, "y": 2.38}, + {"matrix": [3, 0], "x": 0, "y": 3.38}, + {"matrix": [3, 1], "x": 1, "y": 3.38}, + {"matrix": [3, 2], "x": 2, "y": 3.13}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3.13}, + {"matrix": [3, 5], "x": 5, "y": 3.25}, + {"matrix": [3, 6], "x": 6, "y": 3.5}, + {"matrix": [8, 0], "x": 7.75, "y": 3.5}, + {"matrix": [8, 1], "x": 8.75, "y": 3.25}, + {"matrix": [8, 2], "x": 9.75, "y": 3.13}, + {"matrix": [8, 3], "x": 10.75, "y": 3}, + {"matrix": [8, 4], "x": 11.75, "y": 3.13}, + {"matrix": [8, 5], "x": 12.75, "y": 3.38}, + {"matrix": [8, 6], "x": 13.75, "y": 3.38}, + {"matrix": [4, 3], "x": 2.71, "y": 4.13}, + {"matrix": [4, 4], "x": 3.73, "y": 4.16}, + {"matrix": [4, 5], "x": 4.74, "y": 4.36}, + {"matrix": [4, 6], "x": 5.75, "y": 4.72}, + {"matrix": [9, 0], "x": 8, "y": 4.72}, + {"matrix": [9, 1], "x": 9.02, "y": 4.36}, + {"matrix": [9, 2], "x": 10.03, "y": 4.18}, + {"matrix": [9, 3], "x": 11.05, "y": 4.13} + ] + } + } +} diff --git a/keyboards/ai03/altair/keymaps/default/keymap.c b/keyboards/ai03/altair/keymaps/default/keymap.c new file mode 100644 index 00000000000..038b2b823dd --- /dev/null +++ b/keyboards/ai03/altair/keymaps/default/keymap.c @@ -0,0 +1,24 @@ +/* Copyright 2024 ai03 Design Studio */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#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_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_CAPS, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LPRN, KC_RPRN, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_GRV, KC_PSCR, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(1), KC_TAB, KC_DEL + ), + + [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, _______, + _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, + _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ) + +}; diff --git a/keyboards/ai03/altair/keymaps/via/keymap.c b/keyboards/ai03/altair/keymaps/via/keymap.c new file mode 100644 index 00000000000..038b2b823dd --- /dev/null +++ b/keyboards/ai03/altair/keymaps/via/keymap.c @@ -0,0 +1,24 @@ +/* Copyright 2024 ai03 Design Studio */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#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_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_CAPS, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LPRN, KC_RPRN, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_GRV, KC_PSCR, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(1), KC_TAB, KC_DEL + ), + + [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, _______, + _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, + _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ) + +}; diff --git a/keyboards/ai03/altair/keymaps/via/rules.mk b/keyboards/ai03/altair/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/ai03/altair/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/ai03/altair/readme.md b/keyboards/ai03/altair/readme.md new file mode 100644 index 00000000000..959759d9454 --- /dev/null +++ b/keyboards/ai03/altair/readme.md @@ -0,0 +1,19 @@ +# Altair + +![altair](https://i.imgur.com/O9UXaCO.png) + +ai03's third-generation ergonomic keyboard, 5-row variant + +* Keyboard Maintainer: [ai03](https://github.com/ai03-2725) +* Hardware Supported: Altair keyboard PCB +* Hardware Availability: Group buy + +Make example for this keyboard (after setting up your build environment): + + make ai03/altair:default + +Flashing example for this keyboard: + + make ai03/altair: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/ai03/altair/rules.mk b/keyboards/ai03/altair/rules.mk new file mode 100644 index 00000000000..161ec22b16e --- /dev/null +++ b/keyboards/ai03/altair/rules.mk @@ -0,0 +1 @@ +SERIAL_DRIVER = vendor From d4654ab8934f795bbfc294f5b128a94aaa645a78 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 15 Jun 2024 07:58:13 +1000 Subject: [PATCH 103/519] Various keyboard fixes (#23919) --- .../eason/meow65/{info.json => keyboard.json} | 0 keyboards/eason/meow65/rules.mk | 1 - .../marek128b/ergosplit44/keyboard.json | 94 ++++++------ .../rev3_4rows/{info.json => keyboard.json} | 0 .../rev3_5rows/{info.json => keyboard.json} | 0 .../irispad/rev8/{info.json => keyboard.json} | 0 keyboards/meetlab/kalice/keyboard.json | 142 +++++++++--------- .../moky/moky67/{info.json => keyboard.json} | 0 keyboards/moky/moky67/rules.mk | 1 - .../75/iso/{info.json => keyboard.json} | 0 keyboards/projectd/75/iso/rules.mk | 1 - .../h4ckb0ard/{info.json => keyboard.json} | 0 keyboards/rot13labs/h4ckb0ard/rules.mk | 1 - .../sleepy_keeb/{info.json => keyboard.json} | 0 .../sleepy_craft_studios/sleepy_keeb/rules.mk | 1 - .../smart68/{info.json => keyboard.json} | 0 keyboards/smart68/rules.mk | 1 - .../cycle7/{info.json => keyboard.json} | 0 keyboards/vertex/cycle7/rules.mk | 1 - .../{info.json => keyboard.json} | 0 keyboards/viktus/tx_roundup_pad/rules.mk | 1 - 21 files changed, 118 insertions(+), 126 deletions(-) rename keyboards/eason/meow65/{info.json => keyboard.json} (100%) delete mode 100644 keyboards/eason/meow65/rules.mk rename keyboards/helix/rev3_4rows/{info.json => keyboard.json} (100%) rename keyboards/helix/rev3_5rows/{info.json => keyboard.json} (100%) rename keyboards/keebio/irispad/rev8/{info.json => keyboard.json} (100%) rename keyboards/moky/moky67/{info.json => keyboard.json} (100%) delete mode 100644 keyboards/moky/moky67/rules.mk rename keyboards/projectd/75/iso/{info.json => keyboard.json} (100%) delete mode 100644 keyboards/projectd/75/iso/rules.mk rename keyboards/rot13labs/h4ckb0ard/{info.json => keyboard.json} (100%) delete mode 100644 keyboards/rot13labs/h4ckb0ard/rules.mk rename keyboards/sleepy_craft_studios/sleepy_keeb/{info.json => keyboard.json} (100%) delete mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb/rules.mk rename keyboards/smart68/{info.json => keyboard.json} (100%) delete mode 100644 keyboards/smart68/rules.mk rename keyboards/vertex/cycle7/{info.json => keyboard.json} (100%) delete mode 100644 keyboards/vertex/cycle7/rules.mk rename keyboards/viktus/tx_roundup_pad/{info.json => keyboard.json} (100%) delete mode 100644 keyboards/viktus/tx_roundup_pad/rules.mk diff --git a/keyboards/eason/meow65/info.json b/keyboards/eason/meow65/keyboard.json similarity index 100% rename from keyboards/eason/meow65/info.json rename to keyboards/eason/meow65/keyboard.json diff --git a/keyboards/eason/meow65/rules.mk b/keyboards/eason/meow65/rules.mk deleted file mode 100644 index 6e7633bfe01..00000000000 --- a/keyboards/eason/meow65/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/handwired/marek128b/ergosplit44/keyboard.json b/keyboards/handwired/marek128b/ergosplit44/keyboard.json index 8e0c71fc06f..f9a88576a7d 100644 --- a/keyboards/handwired/marek128b/ergosplit44/keyboard.json +++ b/keyboards/handwired/marek128b/ergosplit44/keyboard.json @@ -107,57 +107,57 @@ "layouts": { "LAYOUT": { "layout": [ - {"label":"tab", "matrix": [0, 0],"x":0, "y":1.25}, - {"label":"Q", "matrix": [0, 1],"x":1, "y":1.25}, - {"label":"W", "matrix": [0, 2],"x":2, "y":0.75}, - {"label":"E", "matrix": [0, 3],"x":3, "y":0.5}, - {"label":"R", "matrix": [0, 4],"x":4, "y":0.75}, - {"label":"T", "matrix": [0, 5],"x":5, "y":1}, - - {"label":"Y", "matrix": [0, 6],"x":9.75, "y":1}, - {"label":"U", "matrix": [0, 7],"x":10.75, "y":0.75}, - {"label":"I", "matrix": [0, 8],"x":11.75, "y":0.5}, - {"label":"O", "matrix": [0, 9],"x":12.75, "y":0.75}, - {"label":"P", "matrix": [0, 10],"x":13.75, "y":1.25}, - {"label":"\u00dc", "matrix": [0, 11],"x":14.75, "y":1.25}, + {"matrix": [0, 0],"x": 0, "y": 0.75}, + {"matrix": [0, 1],"x": 1, "y": 0.75}, + {"matrix": [0, 2],"x": 2, "y": 0.25}, + {"matrix": [0, 3],"x": 3, "y": 0}, + {"matrix": [0, 4],"x": 4, "y": 0.25}, + {"matrix": [0, 5],"x": 5, "y": 0.5}, - {"label":"back-space", "matrix": [1, 0],"x":0, "y":2.25}, - {"label":"A", "matrix": [1, 1],"x":1, "y":2.25}, - {"label":"S", "matrix": [1, 2],"x":2, "y":1.75}, - {"label":"D", "matrix": [1, 3],"x":3, "y":1.5}, - {"label":"F", "matrix": [1, 4],"x":4, "y":1.75}, - {"label":"G", "matrix": [1, 5],"x":5, "y":2}, + {"matrix": [0, 6],"x": 8, "y": 0.5}, + {"matrix": [0, 7],"x": 9, "y": 0.25}, + {"matrix": [0, 8],"x": 10, "y": 0}, + {"matrix": [0, 9],"x": 11, "y": 0.25}, + {"matrix": [0, 10],"x": 12, "y": 0.75}, + {"matrix": [0, 11],"x": 13, "y": 0.75}, - {"label":"H", "matrix": [1, 6],"x":9.75, "y":2}, - {"label":"J", "matrix": [1, 7],"x":10.75, "y":1.75}, - {"label":"K", "matrix": [1, 8],"x":11.75, "y":1.5}, - {"label":"L", "matrix": [1, 9],"x":12.75, "y":1.75}, - {"label":"\u00d6", "matrix": [1, 10],"x":13.75, "y":2.25}, - {"label":"\u00c4", "matrix": [1, 11],"x":14.75, "y":2.25}, - - {"label":"shift", "matrix": [2, 0],"x":0, "y":3.25}, - {"label":"Z", "matrix": [2, 1],"x":1, "y":3.25}, - {"label":"X", "matrix": [2, 2],"x":2, "y":2.75}, - {"label":"C", "matrix": [2, 3],"x":3, "y":2.5}, - {"label":"V", "matrix": [2, 4],"x":4, "y":2.75}, - {"label":"B", "matrix": [2, 5],"x":5, "y":3}, - - {"label":"N", "matrix": [2, 6],"x":9.75, "y":3}, - {"label":"M", "matrix": [2, 7],"x":10.75, "y":2.75}, - {"label":"<", "matrix": [2, 8],"x":11.75, "y":2.5}, - {"label":":", "matrix": [2, 9],"x":12.75, "y":2.75}, - {"label":"_", "matrix": [2, 10],"x":13.75, "y":3.25}, - {"label":"Shift", "matrix": [2, 11],"x":14.75, "y":3.25}, + {"matrix": [1, 0],"x": 0, "y": 1.75}, + {"matrix": [1, 1],"x": 1, "y": 1.75}, + {"matrix": [1, 2],"x": 2, "y": 1.25}, + {"matrix": [1, 3],"x": 3, "y": 1}, + {"matrix": [1, 4],"x": 4, "y": 1.25}, + {"matrix": [1, 5],"x": 5, "y": 1.5}, - {"label":"L2", "matrix": [3, 2],"x":-3.5, "y":4.5}, - {"label":"Alt", "matrix": [3, 3],"x":-2.25, "y":7.25}, - {"label":"Strg", "matrix": [3, 4],"x":-1.0, "y":7.25}, - {"label":"Space", "matrix": [3, 5],"x":0, "y":7}, + {"matrix": [1, 6],"x": 8, "y": 1.5}, + {"matrix": [1, 7],"x": 9, "y": 1.25}, + {"matrix": [1, 8],"x": 10, "y": 1}, + {"matrix": [1, 9],"x": 11, "y": 1.25}, + {"matrix": [1, 10],"x": 12, "y": 1.75}, + {"matrix": [1, 11],"x": 13, "y": 1.75}, - {"label":"Space", "matrix": [3, 6],"x":-1.0, "y":8.5}, - {"label":"Strg", "matrix": [3, 7],"x":0, "y":8.75}, - {"label":"AltGr", "matrix": [3, 8],"x":1.25, "y":8.75}, - {"label":"L1", "matrix": [3, 9],"x":2.5, "y":5.75} + {"matrix": [2, 0],"x": 0, "y": 2.75}, + {"matrix": [2, 1],"x": 1, "y": 2.75}, + {"matrix": [2, 2],"x": 2, "y": 2.25}, + {"matrix": [2, 3],"x": 3, "y": 2}, + {"matrix": [2, 4],"x": 4, "y": 2.25}, + {"matrix": [2, 5],"x": 5, "y": 2.5}, + + {"matrix": [2, 6],"x": 8, "y": 2.5}, + {"matrix": [2, 7],"x": 9, "y": 2.25}, + {"matrix": [2, 8],"x": 10, "y": 2}, + {"matrix": [2, 9],"x": 11, "y": 2.25}, + {"matrix": [2, 10],"x": 12, "y": 2.75}, + {"matrix": [2, 11],"x": 13, "y": 2.75}, + + {"matrix": [3, 2],"x": 2.5, "y": 4}, + {"matrix": [3, 3],"x": 3.5, "y": 4}, + {"matrix": [3, 4],"x": 4.5, "y": 4}, + {"matrix": [3, 5],"x": 5.5, "y": 4}, + + {"matrix": [3, 6],"x": 7.5, "y": 4}, + {"matrix": [3, 7],"x": 8.5, "y": 4}, + {"matrix": [3, 8],"x": 9.5, "y": 4}, + {"matrix": [3, 9],"x": 10.5, "y": 4} ] } } diff --git a/keyboards/helix/rev3_4rows/info.json b/keyboards/helix/rev3_4rows/keyboard.json similarity index 100% rename from keyboards/helix/rev3_4rows/info.json rename to keyboards/helix/rev3_4rows/keyboard.json diff --git a/keyboards/helix/rev3_5rows/info.json b/keyboards/helix/rev3_5rows/keyboard.json similarity index 100% rename from keyboards/helix/rev3_5rows/info.json rename to keyboards/helix/rev3_5rows/keyboard.json diff --git a/keyboards/keebio/irispad/rev8/info.json b/keyboards/keebio/irispad/rev8/keyboard.json similarity index 100% rename from keyboards/keebio/irispad/rev8/info.json rename to keyboards/keebio/irispad/rev8/keyboard.json diff --git a/keyboards/meetlab/kalice/keyboard.json b/keyboards/meetlab/kalice/keyboard.json index 5cb46eb9cf5..5e53fe49049 100644 --- a/keyboards/meetlab/kalice/keyboard.json +++ b/keyboards/meetlab/kalice/keyboard.json @@ -44,77 +44,77 @@ "layouts": { "LAYOUT": { "layout": [ - {"matrix": [0, 0], "x": 0.45, "y": 0}, - {"matrix": [0, 1], "x": 1.75, "y": 0}, - {"matrix": [0, 2], "x": 2.75, "y": 0}, - {"matrix": [0, 3], "x": 3.75, "y": 0}, - {"matrix": [0, 4], "x": 4.75, "y": 0}, - {"matrix": [0, 5], "x": 5.75, "y": 0}, - {"matrix": [0, 6], "x": 6.75, "y": 0}, - {"matrix": [0, 7], "x": 7.75, "y": 0}, - {"matrix": [0, 8], "x": 8.75, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 13.75, "y": 0}, - {"matrix": [0, 14], "x": 14.75, "y": 0, "w": 2}, - {"matrix": [0, 15], "x": 16.75, "y": 0}, - {"matrix": [1, 0], "x": 0.3, "y": 1}, - {"matrix": [1, 1], "x": 1.5, "y": 1, "w": 1.5}, - {"matrix": [1, 2], "x": 3, "y": 1}, - {"matrix": [1, 3], "x": 4, "y": 1}, - {"matrix": [1, 4], "x": 5, "y": 1}, - {"matrix": [1, 5], "x": 6, "y": 1}, - {"matrix": [1, 6], "x": 7, "y": 1}, - {"matrix": [1, 7], "x": 8, "y": 1}, - {"matrix": [1, 8], "x": 9, "y": 1}, - {"matrix": [1, 9], "x": 10, "y": 1}, - {"matrix": [1, 10], "x": 11, "y": 1}, - {"matrix": [1, 11], "x": 12, "y": 1}, - {"matrix": [1, 12], "x": 13, "y": 1}, - {"matrix": [1, 13], "x": 14, "y": 1}, - {"matrix": [1, 14], "x": 15, "y": 1, "w": 1.5}, - {"matrix": [1, 15], "x": 16.5, "y": 1}, - {"matrix": [2, 0], "x": 0.15, "y": 2}, - {"matrix": [2, 1], "x": 1.4, "y": 2, "w": 1.75}, - {"matrix": [2, 2], "x": 3.15, "y": 2}, - {"matrix": [2, 3], "x": 4.15, "y": 2}, - {"matrix": [2, 4], "x": 5.15, "y": 2}, - {"matrix": [2, 5], "x": 6.15, "y": 2}, - {"matrix": [2, 6], "x": 7.15, "y": 2}, - {"matrix": [2, 7], "x": 8.15, "y": 2}, - {"matrix": [2, 8], "x": 9.15, "y": 2}, - {"matrix": [2, 9], "x": 10.15, "y": 2}, - {"matrix": [2, 10], "x": 11.15, "y": 2}, - {"matrix": [2, 11], "x": 12.15, "y": 2}, - {"matrix": [2, 12], "x": 13.15, "y": 2}, - {"matrix": [2, 13], "x": 14.15, "y": 2, "w": 2.25}, - {"matrix": [2, 15], "x": 16.4, "y": 2}, - {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25}, - {"matrix": [3, 2], "x": 3.5, "y": 3}, - {"matrix": [3, 3], "x": 4.5, "y": 3}, - {"matrix": [3, 4], "x": 5.5, "y": 3}, - {"matrix": [3, 5], "x": 6.5, "y": 3}, - {"matrix": [3, 6], "x": 7.5, "y": 3}, - {"matrix": [3, 7], "x": 8.5, "y": 3}, - {"matrix": [3, 8], "x": 9.5, "y": 3}, - {"matrix": [3, 9], "x": 10.5, "y": 3}, - {"matrix": [3, 10], "x": 11.5, "y": 3}, - {"matrix": [3, 11], "x": 12.5, "y": 3}, - {"matrix": [3, 12], "x": 13.5, "y": 3}, - {"matrix": [3, 13], "x": 14.5, "y": 3, "w": 1.75}, - {"matrix": [3, 14], "x": 16.25, "y": 3}, - {"matrix": [4, 0], "x": 1.25, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 3.75, "y": 4, "w": 1.5}, - {"matrix": [4, 3], "x": 5.25, "y": 4, "w": 2.25}, - {"matrix": [4, 10], "x": 7.5, "y": 4, "w": 2.75}, - {"matrix": [4, 11], "x": 10.25, "y": 4, "w": 1.5}, - {"matrix": [4, 12], "x": 14, "y": 4, "w": 1.25}, - {"matrix": [4, 13], "x": 15.25, "y": 4}, - {"matrix": [4, 14], "x": 16.25, "y": 4}, - {"matrix": [4, 15], "x": 17.25, "y": 4} + {"matrix": [0, 0], "x": 0.3, "y": 0}, + {"matrix": [0, 1], "x": 1.6, "y": 0}, + {"matrix": [0, 2], "x": 2.6, "y": 0}, + {"matrix": [0, 3], "x": 3.6, "y": 0}, + {"matrix": [0, 4], "x": 4.6, "y": 0}, + {"matrix": [0, 5], "x": 5.6, "y": 0}, + {"matrix": [0, 6], "x": 6.6, "y": 0}, + {"matrix": [0, 7], "x": 7.6, "y": 0}, + {"matrix": [0, 8], "x": 8.6, "y": 0}, + {"matrix": [0, 9], "x": 9.6, "y": 0}, + {"matrix": [0, 10], "x": 10.6, "y": 0}, + {"matrix": [0, 11], "x": 11.6, "y": 0}, + {"matrix": [0, 12], "x": 12.6, "y": 0}, + {"matrix": [0, 13], "x": 13.6, "y": 0}, + {"matrix": [0, 14], "x": 14.6, "y": 0, "w": 2}, + {"matrix": [0, 15], "x": 16.6, "y": 0}, + {"matrix": [1, 0], "x": 0.15, "y": 1}, + {"matrix": [1, 1], "x": 1.35, "y": 1, "w": 1.5}, + {"matrix": [1, 2], "x": 2.85, "y": 1}, + {"matrix": [1, 3], "x": 3.85, "y": 1}, + {"matrix": [1, 4], "x": 4.85, "y": 1}, + {"matrix": [1, 5], "x": 5.85, "y": 1}, + {"matrix": [1, 6], "x": 6.85, "y": 1}, + {"matrix": [1, 7], "x": 7.85, "y": 1}, + {"matrix": [1, 8], "x": 8.85, "y": 1}, + {"matrix": [1, 9], "x": 9.85, "y": 1}, + {"matrix": [1, 10], "x": 10.85, "y": 1}, + {"matrix": [1, 11], "x": 11.85, "y": 1}, + {"matrix": [1, 12], "x": 12.85, "y": 1}, + {"matrix": [1, 13], "x": 13.85, "y": 1}, + {"matrix": [1, 14], "x": 14.85, "y": 1, "w": 1.5}, + {"matrix": [1, 15], "x": 16.35, "y": 1}, + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75}, + {"matrix": [2, 2], "x": 3, "y": 2}, + {"matrix": [2, 3], "x": 4, "y": 2}, + {"matrix": [2, 4], "x": 5, "y": 2}, + {"matrix": [2, 5], "x": 6, "y": 2}, + {"matrix": [2, 6], "x": 7, "y": 2}, + {"matrix": [2, 7], "x": 8, "y": 2}, + {"matrix": [2, 8], "x": 9, "y": 2}, + {"matrix": [2, 9], "x": 10, "y": 2}, + {"matrix": [2, 10], "x": 11, "y": 2}, + {"matrix": [2, 11], "x": 12, "y": 2}, + {"matrix": [2, 12], "x": 13, "y": 2}, + {"matrix": [2, 13], "x": 14, "y": 2, "w": 2.25}, + {"matrix": [2, 15], "x": 16.25, "y": 2}, + {"matrix": [3, 1], "x": 1.1, "y": 3, "w": 2.25}, + {"matrix": [3, 2], "x": 3.35, "y": 3}, + {"matrix": [3, 3], "x": 4.35, "y": 3}, + {"matrix": [3, 4], "x": 5.35, "y": 3}, + {"matrix": [3, 5], "x": 6.35, "y": 3}, + {"matrix": [3, 6], "x": 7.35, "y": 3}, + {"matrix": [3, 7], "x": 8.35, "y": 3}, + {"matrix": [3, 8], "x": 9.35, "y": 3}, + {"matrix": [3, 9], "x": 10.35, "y": 3}, + {"matrix": [3, 10], "x": 11.35, "y": 3}, + {"matrix": [3, 11], "x": 12.35, "y": 3}, + {"matrix": [3, 12], "x": 13.35, "y": 3}, + {"matrix": [3, 13], "x": 14.35, "y": 3, "w": 1.75}, + {"matrix": [3, 14], "x": 16.1, "y": 3}, + {"matrix": [4, 0], "x": 1.1, "y": 4, "w": 1.25}, + {"matrix": [4, 1], "x": 2.35, "y": 4, "w": 1.25}, + {"matrix": [4, 2], "x": 3.6, "y": 4, "w": 1.5}, + {"matrix": [4, 3], "x": 5.1, "y": 4, "w": 2.25}, + {"matrix": [4, 10], "x": 7.35, "y": 4, "w": 2.75}, + {"matrix": [4, 11], "x": 10.1, "y": 4, "w": 1.5}, + {"matrix": [4, 12], "x": 13.85, "y": 4, "w": 1.25}, + {"matrix": [4, 13], "x": 15.1, "y": 4}, + {"matrix": [4, 14], "x": 16.1, "y": 4}, + {"matrix": [4, 15], "x": 17.1, "y": 4} ] } } diff --git a/keyboards/moky/moky67/info.json b/keyboards/moky/moky67/keyboard.json similarity index 100% rename from keyboards/moky/moky67/info.json rename to keyboards/moky/moky67/keyboard.json diff --git a/keyboards/moky/moky67/rules.mk b/keyboards/moky/moky67/rules.mk deleted file mode 100644 index 7ff128fa692..00000000000 --- a/keyboards/moky/moky67/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/projectd/75/iso/info.json b/keyboards/projectd/75/iso/keyboard.json similarity index 100% rename from keyboards/projectd/75/iso/info.json rename to keyboards/projectd/75/iso/keyboard.json diff --git a/keyboards/projectd/75/iso/rules.mk b/keyboards/projectd/75/iso/rules.mk deleted file mode 100644 index 6e7633bfe01..00000000000 --- a/keyboards/projectd/75/iso/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/rot13labs/h4ckb0ard/info.json b/keyboards/rot13labs/h4ckb0ard/keyboard.json similarity index 100% rename from keyboards/rot13labs/h4ckb0ard/info.json rename to keyboards/rot13labs/h4ckb0ard/keyboard.json diff --git a/keyboards/rot13labs/h4ckb0ard/rules.mk b/keyboards/rot13labs/h4ckb0ard/rules.mk deleted file mode 100644 index 7ff128fa692..00000000000 --- a/keyboards/rot13labs/h4ckb0ard/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb/info.json b/keyboards/sleepy_craft_studios/sleepy_keeb/keyboard.json similarity index 100% rename from keyboards/sleepy_craft_studios/sleepy_keeb/info.json rename to keyboards/sleepy_craft_studios/sleepy_keeb/keyboard.json diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb/rules.mk b/keyboards/sleepy_craft_studios/sleepy_keeb/rules.mk deleted file mode 100644 index 6e7633bfe01..00000000000 --- a/keyboards/sleepy_craft_studios/sleepy_keeb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/smart68/info.json b/keyboards/smart68/keyboard.json similarity index 100% rename from keyboards/smart68/info.json rename to keyboards/smart68/keyboard.json diff --git a/keyboards/smart68/rules.mk b/keyboards/smart68/rules.mk deleted file mode 100644 index 6e7633bfe01..00000000000 --- a/keyboards/smart68/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/vertex/cycle7/info.json b/keyboards/vertex/cycle7/keyboard.json similarity index 100% rename from keyboards/vertex/cycle7/info.json rename to keyboards/vertex/cycle7/keyboard.json diff --git a/keyboards/vertex/cycle7/rules.mk b/keyboards/vertex/cycle7/rules.mk deleted file mode 100644 index 6e7633bfe01..00000000000 --- a/keyboards/vertex/cycle7/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/viktus/tx_roundup_pad/info.json b/keyboards/viktus/tx_roundup_pad/keyboard.json similarity index 100% rename from keyboards/viktus/tx_roundup_pad/info.json rename to keyboards/viktus/tx_roundup_pad/keyboard.json diff --git a/keyboards/viktus/tx_roundup_pad/rules.mk b/keyboards/viktus/tx_roundup_pad/rules.mk deleted file mode 100644 index 6e7633bfe01..00000000000 --- a/keyboards/viktus/tx_roundup_pad/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank From 0262161914133e6abfc306e675dbac3ba816a6ee Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Sat, 15 Jun 2024 19:37:47 +1000 Subject: [PATCH 104/519] [CLI] Don't `exit()` when certain exceptions occur. (#23442) --- lib/python/qmk/cli/find.py | 3 +++ .../qmk/cli/generate/autocorrect_data.py | 12 +++++------ lib/python/qmk/cli/mass_compile.py | 3 +++ lib/python/qmk/cli/userspace/compile.py | 3 +++ lib/python/qmk/cli/userspace/list.py | 3 +++ lib/python/qmk/cli/via2json.py | 10 +++++++-- lib/python/qmk/commands.py | 3 ++- lib/python/qmk/info.py | 3 ++- lib/python/qmk/json_schema.py | 6 ++++-- lib/python/qmk/util.py | 21 +++++++++++++++++++ 10 files changed, 55 insertions(+), 12 deletions(-) diff --git a/lib/python/qmk/cli/find.py b/lib/python/qmk/cli/find.py index 8f3a29c90ce..bfed91e22cd 100644 --- a/lib/python/qmk/cli/find.py +++ b/lib/python/qmk/cli/find.py @@ -2,6 +2,7 @@ """ from milc import cli from qmk.search import filter_help, search_keymap_targets +from qmk.util import maybe_exit_config @cli.argument( @@ -19,6 +20,8 @@ from qmk.search import filter_help, search_keymap_targets def find(cli): """Search through all keyboards and keymaps for a given search criteria. """ + maybe_exit_config(should_exit=False, should_reraise=True) + targets = search_keymap_targets([('all', cli.config.find.keymap)], cli.args.filter) for target in sorted(targets, key=lambda t: (t.keyboard, t.keymap)): print(f'{target}') diff --git a/lib/python/qmk/cli/generate/autocorrect_data.py b/lib/python/qmk/cli/generate/autocorrect_data.py index b11c66d95d2..01a29b46fe9 100644 --- a/lib/python/qmk/cli/generate/autocorrect_data.py +++ b/lib/python/qmk/cli/generate/autocorrect_data.py @@ -27,7 +27,6 @@ Example: For full documentation, see QMK Docs """ -import sys import textwrap from typing import Any, Dict, Iterator, List, Tuple @@ -38,6 +37,7 @@ from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.keymap import keymap_completer, locate_keymap from qmk.path import normpath +from qmk.util import maybe_exit KC_A = 4 KC_SPC = 0x2c @@ -88,16 +88,16 @@ def parse_file(file_name: str) -> List[Tuple[str, str]]: # Check that `typo` is valid. if not (all([c in TYPO_CHARS for c in typo])): cli.log.error('{fg_red}Error:%d:{fg_reset} Typo "{fg_cyan}%s{fg_reset}" has characters other than a-z, \' and :.', line_number, typo) - sys.exit(1) + maybe_exit(1) for other_typo in typos: if typo in other_typo or other_typo in typo: cli.log.error('{fg_red}Error:%d:{fg_reset} Typos may not be substrings of one another, otherwise the longer typo would never trigger: "{fg_cyan}%s{fg_reset}" vs. "{fg_cyan}%s{fg_reset}".', line_number, typo, other_typo) - sys.exit(1) + maybe_exit(1) if len(typo) < 5: cli.log.warning('{fg_yellow}Warning:%d:{fg_reset} It is suggested that typos are at least 5 characters long to avoid false triggers: "{fg_cyan}%s{fg_reset}"', line_number, typo) if len(typo) > 127: cli.log.error('{fg_red}Error:%d:{fg_reset} Typo exceeds 127 chars: "{fg_cyan}%s{fg_reset}"', line_number, typo) - sys.exit(1) + maybe_exit(1) check_typo_against_dictionary(typo, line_number, correct_words) @@ -136,7 +136,7 @@ def parse_file_lines(file_name: str) -> Iterator[Tuple[int, str, str]]: tokens = [token.strip() for token in line.split('->', 1)] if len(tokens) != 2 or not tokens[0]: print(f'Error:{line_number}: Invalid syntax: "{line}"') - sys.exit(1) + maybe_exit(1) typo, correction = tokens typo = typo.lower() # Force typos to lowercase. @@ -237,7 +237,7 @@ def encode_link(link: Dict[str, Any]) -> List[int]: byte_offset = link['byte_offset'] if not (0 <= byte_offset <= 0xffff): cli.log.error('{fg_red}Error:{fg_reset} The autocorrection table is too large, a node link exceeds 64KB limit. Try reducing the autocorrection dict to fewer entries.') - sys.exit(1) + maybe_exit(1) return [byte_offset & 255, byte_offset >> 8] diff --git a/lib/python/qmk/cli/mass_compile.py b/lib/python/qmk/cli/mass_compile.py index 7db704d6c25..d13afc61432 100755 --- a/lib/python/qmk/cli/mass_compile.py +++ b/lib/python/qmk/cli/mass_compile.py @@ -12,6 +12,7 @@ from qmk.constants import QMK_FIRMWARE from qmk.commands import find_make, get_make_parallel_args, build_environment from qmk.search import search_keymap_targets, search_make_targets from qmk.build_targets import BuildTarget, JsonKeymapBuildTarget +from qmk.util import maybe_exit_config def mass_compile_targets(targets: List[BuildTarget], clean: bool, dry_run: bool, no_temp: bool, parallel: int, **env): @@ -100,6 +101,8 @@ all: {keyboard_safe}_{keymap_name}_binary def mass_compile(cli): """Compile QMK Firmware against all keyboards. """ + maybe_exit_config(should_exit=False, should_reraise=True) + if len(cli.args.builds) > 0: json_like_targets = list([Path(p) for p in filter(lambda e: Path(e).exists() and Path(e).suffix == '.json', cli.args.builds)]) make_like_targets = list(filter(lambda e: Path(e) not in json_like_targets, cli.args.builds)) diff --git a/lib/python/qmk/cli/userspace/compile.py b/lib/python/qmk/cli/userspace/compile.py index fb320a16f0d..e8cdf6cd971 100644 --- a/lib/python/qmk/cli/userspace/compile.py +++ b/lib/python/qmk/cli/userspace/compile.py @@ -9,6 +9,7 @@ from qmk.userspace import UserspaceDefs from qmk.build_targets import JsonKeymapBuildTarget from qmk.search import search_keymap_targets from qmk.cli.mass_compile import mass_compile_targets +from qmk.util import maybe_exit_config @cli.argument('-t', '--no-temp', arg_only=True, action='store_true', help="Remove temporary files during build.") @@ -22,6 +23,8 @@ def userspace_compile(cli): cli.log.error('Could not determine QMK userspace location. Please run `qmk doctor` or `qmk userspace-doctor` to diagnose.') return False + maybe_exit_config(should_exit=False, should_reraise=True) + userspace = UserspaceDefs(QMK_USERSPACE / 'qmk.json') build_targets = [] diff --git a/lib/python/qmk/cli/userspace/list.py b/lib/python/qmk/cli/userspace/list.py index a63f669dd7b..8689c80a769 100644 --- a/lib/python/qmk/cli/userspace/list.py +++ b/lib/python/qmk/cli/userspace/list.py @@ -10,6 +10,7 @@ from qmk.build_targets import BuildTarget from qmk.keyboard import is_all_keyboards, keyboard_folder from qmk.keymap import is_keymap_target from qmk.search import search_keymap_targets +from qmk.util import maybe_exit_config @cli.argument('-e', '--expand', arg_only=True, action='store_true', help="Expands any use of `all` for either keyboard or keymap.") @@ -19,6 +20,8 @@ def userspace_list(cli): cli.log.error('Could not determine QMK userspace location. Please run `qmk doctor` or `qmk userspace-doctor` to diagnose.') return False + maybe_exit_config(should_exit=False, should_reraise=True) + userspace = UserspaceDefs(QMK_USERSPACE / 'qmk.json') if cli.args.expand: diff --git a/lib/python/qmk/cli/via2json.py b/lib/python/qmk/cli/via2json.py index 77823b5d9d7..73c9a61b3d3 100755 --- a/lib/python/qmk/cli/via2json.py +++ b/lib/python/qmk/cli/via2json.py @@ -69,7 +69,7 @@ def _via_to_keymap(via_backup, keyboard_data, keymap_layout): layout_data = keyboard_data['layouts'].get(keymap_layout) if not layout_data: cli.log.error(f'LAYOUT macro {keymap_layout} is not a valid one for keyboard {cli.args.keyboard}!') - exit(1) + return None layout_data = layout_data['layout'] sorting_hat = list() @@ -118,7 +118,7 @@ def via2json(cli): keymap_layout = cli.args.layout if cli.args.layout else _find_via_layout_macro(cli.args.keyboard) if not keymap_layout: cli.log.error(f"Couldn't find LAYOUT macro for keyboard {cli.args.keyboard}. Please specify it with the '-l' argument.") - exit(1) + return False # Load the VIA backup json with cli.args.filename.open('r') as fd: @@ -126,9 +126,15 @@ def via2json(cli): # Generate keyboard metadata keyboard_data = info_json(cli.args.keyboard) + if not keyboard_data: + cli.log.error(f'LAYOUT macro {keymap_layout} is not a valid one for keyboard {cli.args.keyboard}!') + return False # Get keycode array keymap_data = _via_to_keymap(via_backup, keyboard_data, keymap_layout) + if not keymap_data: + cli.log.error(f'Could not extract valid keycode data from VIA backup matching keyboard {cli.args.keyboard}!') + return False # Convert macros macro_data = list() diff --git a/lib/python/qmk/commands.py b/lib/python/qmk/commands.py index d95ff5f923e..3db8353bfda 100644 --- a/lib/python/qmk/commands.py +++ b/lib/python/qmk/commands.py @@ -11,6 +11,7 @@ import jsonschema from qmk.constants import QMK_USERSPACE, HAS_QMK_USERSPACE from qmk.json_schema import json_load, validate from qmk.keyboard import keyboard_alias_definitions +from qmk.util import maybe_exit def find_make(): @@ -52,7 +53,7 @@ def parse_configurator_json(configurator_file): except jsonschema.ValidationError as e: cli.log.error(f'Invalid JSON keymap: {configurator_file} : {e.message}') - exit(1) + maybe_exit(1) keyboard = user_keymap['keyboard'] aliases = keyboard_alias_definitions() diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index ffc9d57d682..833271c09cc 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -14,6 +14,7 @@ from qmk.keyboard import config_h, rules_mk from qmk.commands import parse_configurator_json from qmk.makefile import parse_rules_mk_file from qmk.math import compute +from qmk.util import maybe_exit true_values = ['1', 'on', 'yes'] false_values = ['0', 'off', 'no'] @@ -208,7 +209,7 @@ def _validate(keyboard, info_data): except jsonschema.ValidationError as e: json_path = '.'.join([str(p) for p in e.absolute_path]) cli.log.error('Invalid API data: %s: %s: %s', keyboard, json_path, e.message) - exit(1) + maybe_exit(1) def info_json(keyboard): diff --git a/lib/python/qmk/json_schema.py b/lib/python/qmk/json_schema.py index 1d5f863807f..b11a0ed7ea1 100644 --- a/lib/python/qmk/json_schema.py +++ b/lib/python/qmk/json_schema.py @@ -11,6 +11,8 @@ from copy import deepcopy from milc import cli +from qmk.util import maybe_exit + def _dict_raise_on_duplicates(ordered_pairs): """Reject duplicate keys.""" @@ -38,10 +40,10 @@ def _json_load_impl(json_file, strict=True): except (json.decoder.JSONDecodeError, hjson.HjsonDecodeError) as e: cli.log.error('Invalid JSON encountered attempting to load {fg_cyan}%s{fg_reset}:\n\t{fg_red}%s', json_file, e) - exit(1) + maybe_exit(1) except Exception as e: cli.log.error('Unknown error attempting to load {fg_cyan}%s{fg_reset}:\n\t{fg_red}%s', json_file, e) - exit(1) + maybe_exit(1) def json_load(json_file, strict=True): diff --git a/lib/python/qmk/util.py b/lib/python/qmk/util.py index db7debd5788..0145ab13541 100644 --- a/lib/python/qmk/util.py +++ b/lib/python/qmk/util.py @@ -2,9 +2,30 @@ """ import contextlib import multiprocessing +import sys from milc import cli +maybe_exit_should_exit = True +maybe_exit_reraise = False + + +# Controls whether or not early `exit()` calls should be made +def maybe_exit(rc): + if maybe_exit_should_exit: + sys.exit(rc) + if maybe_exit_reraise: + e = sys.exception() + if e: + raise e + + +def maybe_exit_config(should_exit: bool = True, should_reraise: bool = False): + global maybe_exit_should_exit + global maybe_exit_reraise + maybe_exit_should_exit = should_exit + maybe_exit_reraise = should_reraise + @contextlib.contextmanager def parallelize(): From ad82c4703a4a2e0e5c8d266b2df9e89836b76587 Mon Sep 17 00:00:00 2001 From: David Hoelscher Date: Sat, 15 Jun 2024 23:46:22 -0500 Subject: [PATCH 105/519] [Keyboard] ErgoStrafer RGB (#22936) * adding ergostrafer rgb * removing comment --- keyboards/custommk/ergostrafer_rgb/config.h | 28 +++ keyboards/custommk/ergostrafer_rgb/halconf.h | 30 +++ keyboards/custommk/ergostrafer_rgb/info.json | 189 ++++++++++++++++++ .../ergostrafer_rgb/keymaps/default/keymap.c | 21 ++ .../ergostrafer_rgb/keymaps/default/rules.mk | 1 + .../ergostrafer_rgb/keymaps/via/config.h | 6 + .../ergostrafer_rgb/keymaps/via/keymap.c | 19 ++ .../ergostrafer_rgb/keymaps/via/rules.mk | 2 + keyboards/custommk/ergostrafer_rgb/mcuconf.h | 31 +++ keyboards/custommk/ergostrafer_rgb/readme.md | 27 +++ keyboards/custommk/ergostrafer_rgb/rules.mk | 1 + 11 files changed, 355 insertions(+) create mode 100644 keyboards/custommk/ergostrafer_rgb/config.h create mode 100644 keyboards/custommk/ergostrafer_rgb/halconf.h create mode 100644 keyboards/custommk/ergostrafer_rgb/info.json create mode 100644 keyboards/custommk/ergostrafer_rgb/keymaps/default/keymap.c create mode 100644 keyboards/custommk/ergostrafer_rgb/keymaps/default/rules.mk create mode 100644 keyboards/custommk/ergostrafer_rgb/keymaps/via/config.h create mode 100644 keyboards/custommk/ergostrafer_rgb/keymaps/via/keymap.c create mode 100644 keyboards/custommk/ergostrafer_rgb/keymaps/via/rules.mk create mode 100644 keyboards/custommk/ergostrafer_rgb/mcuconf.h create mode 100644 keyboards/custommk/ergostrafer_rgb/readme.md create mode 100644 keyboards/custommk/ergostrafer_rgb/rules.mk diff --git a/keyboards/custommk/ergostrafer_rgb/config.h b/keyboards/custommk/ergostrafer_rgb/config.h new file mode 100644 index 00000000000..cba40b36d40 --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/config.h @@ -0,0 +1,28 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +// FRAM configuration +#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN B7 +#define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 4 // 48MHz / 4 = 12MHz; max supported by MB85R64 is 20MHz + +// SPI configuration +#define SPI_DRIVER SPID1 +#define SPI_SCK_PIN B3 +#define SPI_MOSI_PIN B5 +#define SPI_MISO_PIN B4 + +// Audio configuration +#define AUDIO_PIN B8 +#define AUDIO_PWM_DRIVER PWMD4 +#define AUDIO_PWM_CHANNEL 3 +#define AUDIO_PWM_PAL_MODE 2 +#define AUDIO_STATE_TIMER GPTD5 +#define AUDIO_INIT_DELAY + +#define WS2812_PWM_DRIVER PWMD1 +#define WS2812_PWM_CHANNEL 3 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_DMA_STREAM STM32_DMA2_STREAM5 +#define WS2812_DMA_CHANNEL 6 diff --git a/keyboards/custommk/ergostrafer_rgb/halconf.h b/keyboards/custommk/ergostrafer_rgb/halconf.h new file mode 100644 index 00000000000..6791d829f9b --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/halconf.h @@ -0,0 +1,30 @@ +/* Copyright 2024 customMK + * + * 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 . + */ + +#pragma once + +#define HAL_USE_PWM TRUE + +#define HAL_USE_SPI TRUE + +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD + +#define SERIAL_BUFFERS_SIZE 256 + +// This enables interrupt-driven mode +#define SPI_USE_WAIT TRUE + +#include_next diff --git a/keyboards/custommk/ergostrafer_rgb/info.json b/keyboards/custommk/ergostrafer_rgb/info.json new file mode 100644 index 00000000000..ac058be1a40 --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/info.json @@ -0,0 +1,189 @@ +{ + "manufacturer": "customMK", + "keyboard_name": "ErgoStrafer RGB", + "maintainer": "customMK", + "bootloader": "stm32-dfu", + "diode_direction": "ROW2COL", + "dynamic_keymap": { + "layer_count": 32 + }, + "eeprom": { + "driver": "spi" + }, + "encoder": { + "rotary": [ + {"pin_a": "A8", "pin_b": "A4", "resolution": 2}, + {"pin_a": "B12", "pin_b": "B14", "resolution": 2}, + {"pin_a": "B15", "pin_b": "A15", "resolution": 2} + ] + }, + "features": { + "audio": true, + "bootmagic": true, + "encoder": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "matrix_pins": { + "cols": ["B0", "A1", "A2", "A3", "A6", "B6", "B10"], + "rows": ["C13", "C14", "C15", "B1", "A7", "A5"] + }, + "processor": "STM32F411", + "qmk": { + "tap_keycode_delay": 10 + }, + "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, + "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_fractal": 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 + }, + "center_point": [112, 112], + "driver": "ws2812", + "layout": [ + {"matrix": [0, 1], "x": 32, "y": 45, "flags": 4}, + {"matrix": [0, 2], "x": 57, "y": 40, "flags": 4}, + {"matrix": [0, 3], "x": 83, "y": 38, "flags": 4}, + {"matrix": [0, 4], "x": 109, "y": 40, "flags": 4}, + {"matrix": [0, 5], "x": 134, "y": 45, "flags": 4}, + {"x": 136, "y": 18, "flags": 4}, + {"matrix": [0, 0], "x": 167, "y": 11, "flags": 4}, + {"matrix": [1, 0], "x": 170, "y": 33, "flags": 4}, + {"matrix": [2, 0], "x": 174, "y": 54, "flags": 4}, + {"x": 195, "y": 57, "flags": 4}, + {"x": 211, "y": 81, "flags": 4}, + {"x": 193, "y": 90, "flags": 4}, + {"matrix": [0, 6], "x": 171, "y": 90, "flags": 4}, + {"matrix": [2, 5], "x": 143, "y": 90, "flags": 4}, + {"matrix": [1, 5], "x": 140, "y": 67, "flags": 4}, + {"matrix": [1, 4], "x": 118, "y": 61, "flags": 4}, + {"matrix": [2, 3], "x": 95, "y": 58, "flags": 4}, + {"matrix": [1, 3], "x": 71, "y": 58, "flags": 4}, + {"matrix": [1, 2], "x": 48, "y": 61, "flags": 4}, + {"matrix": [1, 1], "x": 26, "y": 67, "flags": 4}, + {"matrix": [3, 0], "x": 0, "y": 90, "flags": 4}, + {"matrix": [2, 1], "x": 23, "y": 90, "flags": 4}, + {"matrix": [2, 2], "x": 52, "y": 87, "flags": 4}, + {"matrix": [3, 3], "x": 83, "y": 85, "flags": 4}, + {"matrix": [2, 4], "x": 114, "y": 87, "flags": 4}, + {"matrix": [3, 5], "x": 139, "y": 113, "flags": 4}, + {"matrix": [1, 6], "x": 167, "y": 114, "flags": 4}, + {"x": 207, "y": 112, "flags": 4}, + {"matrix": [5, 6], "x": 224, "y": 146, "flags": 4}, + {"matrix": [3, 6], "x": 184, "y": 147, "flags": 4}, + {"matrix": [2, 6], "x": 156, "y": 147, "flags": 4}, + {"matrix": [4, 5], "x": 127, "y": 135, "flags": 4}, + {"matrix": [3, 4], "x": 111, "y": 112, "flags": 4}, + {"matrix": [4, 3], "x": 83, "y": 112, "flags": 4}, + {"matrix": [3, 2], "x": 55, "y": 112, "flags": 4}, + {"matrix": [3, 1], "x": 20, "y": 114, "flags": 4}, + {"matrix": [4, 1], "x": 15, "y": 138, "flags": 4}, + {"matrix": [5, 1], "x": 14, "y": 162, "flags": 4}, + {"matrix": [4, 2], "x": 52, "y": 137, "flags": 4}, + {"matrix": [5, 3], "x": 83, "y": 139, "flags": 4}, + {"x": 83, "y": 164, "flags": 4}, + {"x": 104, "y": 144, "flags": 4}, + {"matrix": [5, 5], "x": 121, "y": 173, "flags": 4}, + {"matrix": [4, 6], "x": 167, "y": 173, "flags": 4} + ], + "max_brightness": 120, + "sat_steps": 8, + "speed_steps": 10, + "val_steps": 8 + }, + "url": "https://shop.custommk.com/collections/ergostrafer/products/ergostrafer", + "usb": { + "device_version": "1.0.0", + "pid": "0xFAB9", + "vid": "0xF35B" + }, + "ws2812": { + "driver": "pwm", + "pin": "A10" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"label": "F9", "matrix": [0, 0], "x": 7.5, "y": 0}, + {"label": "7", "matrix": [0, 1], "x": 1.5, "y": 1.25}, + {"label": "8", "matrix": [0, 2], "x": 2.5, "y": 1.25}, + {"label": "9", "matrix": [0, 3], "x": 3.5, "y": 1.25}, + {"label": "0", "matrix": [0, 4], "x": 4.5, "y": 1.25}, + {"label": "-", "matrix": [0, 5], "x": 5.5, "y": 1.25}, + {"label": "T", "matrix": [0, 6], "x": 7.25, "y": 3.25, "w": 1.5}, + {"label": "PrtScr", "matrix": [1, 0], "x": 7.5, "y": 1}, + {"label": "1", "matrix": [1, 1], "x": 1, "y": 2.25}, + {"label": "2", "matrix": [1, 2], "x": 2, "y": 2.25}, + {"label": "3", "matrix": [1, 3], "x": 3, "y": 2.25}, + {"label": "5", "matrix": [1, 4], "x": 5, "y": 2.25}, + {"label": "6", "matrix": [1, 5], "x": 6, "y": 2.25}, + {"label": "G", "matrix": [1, 6], "x": 7.25, "y": 4.25, "w": 1.5}, + {"label": "F5", "matrix": [2, 0], "x": 7.5, "y": 2}, + {"label": "Tab", "matrix": [2, 1], "x": 1, "y": 3.5}, + {"label": "Q", "matrix": [2, 2], "x": 2.5, "y": 3.4}, + {"label": "4", "matrix": [2, 3], "x": 4, "y": 2.25}, + {"label": "E", "matrix": [2, 4], "x": 4.5, "y": 3.4}, + {"label": "R", "matrix": [2, 5], "x": 6, "y": 3.3}, + {"label": "B", "matrix": [2, 6], "x": 6.5, "y": 5.75, "w": 1.5}, + {"label": "Caps Lock", "matrix": [3, 0], "x": 0, "y": 3.5}, + {"label": "L Alt", "matrix": [3, 1], "x": 0.25, "y": 4.75, "w": 1.5}, + {"label": "A", "matrix": [3, 2], "x": 2.5, "y": 4.5}, + {"label": "W", "matrix": [3, 3], "x": 3.5, "y": 3.4}, + {"label": "D", "matrix": [3, 4], "x": 4.5, "y": 4.5}, + {"label": "F", "matrix": [3, 5], "x": 6, "y": 4.3}, + {"label": "P", "matrix": [3, 6], "x": 8, "y": 5.75}, + {"label": "L Shift", "matrix": [4, 1], "x": 0.25, "y": 5.75, "w": 1.5}, + {"label": "Z", "matrix": [4, 2], "x": 2.5, "y": 5.6}, + {"label": "S", "matrix": [4, 3], "x": 3.5, "y": 4.5}, + {"label": "V", "matrix": [4, 5], "x": 5, "y": 5.75, "w": 1.5}, + {"label": "Space", "matrix": [4, 6], "x": 6.5, "y": 6.85, "w": 1.75}, + {"label": "L Ctrl Duck", "matrix": [5, 1], "x": 0.25, "y": 6.75, "w": 1.5}, + {"label": "X", "matrix": [5, 3], "x": 3.5, "y": 5.6}, + {"label": "C", "matrix": [5, 5], "x": 4.75, "y": 6.85, "w": 1.75}, + {"label": "L Ctrl", "matrix": [5, 6], "x": 9.5, "y": 5.75} + ] + } + } +} \ No newline at end of file diff --git a/keyboards/custommk/ergostrafer_rgb/keymaps/default/keymap.c b/keyboards/custommk/ergostrafer_rgb/keymaps/default/keymap.c new file mode 100644 index 00000000000..71a83d4868a --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/keymaps/default/keymap.c @@ -0,0 +1,21 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_F9, KC_7, KC_8, KC_9, KC_0, KC_MINUS, KC_T, + KC_PSCR, KC_1, KC_2, KC_3, KC_5, KC_6, KC_G, + KC_F5, KC_TAB, KC_Q, KC_4, KC_E, KC_R, KC_B, + KC_CAPS, KC_LALT, KC_A, KC_W, KC_D, KC_F, KC_P, + KC_LSFT, KC_Z, KC_S, KC_V, KC_SPC, + KC_LCTL, KC_X, KC_C, KC_LCTL + ) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) } +}; +#endif \ No newline at end of file diff --git a/keyboards/custommk/ergostrafer_rgb/keymaps/default/rules.mk b/keyboards/custommk/ergostrafer_rgb/keymaps/default/rules.mk new file mode 100644 index 00000000000..a40474b4d5c --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/custommk/ergostrafer_rgb/keymaps/via/config.h b/keyboards/custommk/ergostrafer_rgb/keymaps/via/config.h new file mode 100644 index 00000000000..c2dca382777 --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/keymaps/via/config.h @@ -0,0 +1,6 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define DYNAMIC_KEYMAP_MACRO_COUNT 128 diff --git a/keyboards/custommk/ergostrafer_rgb/keymaps/via/keymap.c b/keyboards/custommk/ergostrafer_rgb/keymaps/via/keymap.c new file mode 100644 index 00000000000..cddbb912c40 --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/keymaps/via/keymap.c @@ -0,0 +1,19 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_F9, KC_7, KC_8, KC_9, KC_0, KC_MINUS, KC_T, + KC_PSCR, KC_1, KC_2, KC_3, KC_5, KC_6, KC_G, + KC_F5, KC_TAB, KC_Q, KC_4, KC_E, KC_R, KC_B, + KC_CAPS, KC_LALT, KC_A, KC_W, KC_D, KC_F, KC_P, + KC_LSFT, KC_Z, KC_S, KC_V, KC_SPC, + KC_LCTL, KC_X, KC_C, KC_LCTL + ) +}; + +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) } +}; \ No newline at end of file diff --git a/keyboards/custommk/ergostrafer_rgb/keymaps/via/rules.mk b/keyboards/custommk/ergostrafer_rgb/keymaps/via/rules.mk new file mode 100644 index 00000000000..4253f570f0b --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/custommk/ergostrafer_rgb/mcuconf.h b/keyboards/custommk/ergostrafer_rgb/mcuconf.h new file mode 100644 index 00000000000..8151abdcba3 --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/mcuconf.h @@ -0,0 +1,31 @@ +/* Copyright 2024 customMK + * + * 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 . + */ + +#pragma once + +#include_next + +// Used for audio +#undef STM32_PWM_USE_TIM4 +#define STM32_PWM_USE_TIM4 TRUE + +// Used for FRAM +#undef STM32_SPI_USE_SPI1 +#define STM32_SPI_USE_SPI1 TRUE + +// Used for RGB matrix +#undef STM32_PWM_USE_TIM1 +#define STM32_PWM_USE_TIM1 TRUE \ No newline at end of file diff --git a/keyboards/custommk/ergostrafer_rgb/readme.md b/keyboards/custommk/ergostrafer_rgb/readme.md new file mode 100644 index 00000000000..4536a9841e3 --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/readme.md @@ -0,0 +1,27 @@ +# ergostrafer rgb + +![ergostrafer rgb](https://i.imgur.com/3LZImFwh.jpeg) + +ErgoStrafer RGB is a gaming mechanical keyboard with per-key RGB LEDs that reproduces the layout of the discontinued SteelSeries Merc Stealth a.k.a. Zboard. + +* Keyboard Maintainer: [customMK](https://github.com/customMK) +* Hardware Supported: ErgoStrafer RGB +* Hardware Availability: [customMK](https://shop.custommk.com/collections/ergostrafer/products/ergostrafer) + +Make example for this keyboard (after setting up your build environment): + + make custommk/ergostrafer_rgb:default + +Flashing example for this keyboard: + + make custommk/ergostrafer_rgb: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 (the "Load" key in the top right corner) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/custommk/ergostrafer_rgb/rules.mk b/keyboards/custommk/ergostrafer_rgb/rules.mk new file mode 100644 index 00000000000..72f75f4367e --- /dev/null +++ b/keyboards/custommk/ergostrafer_rgb/rules.mk @@ -0,0 +1 @@ +AUDIO_DRIVER = pwm_hardware From 7ac1a34a346aed7118018f4f562a1cfdd651a087 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Sun, 16 Jun 2024 19:53:03 +1000 Subject: [PATCH 106/519] [CLI] Older python compat. (#23933) --- lib/python/qmk/util.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/python/qmk/util.py b/lib/python/qmk/util.py index 0145ab13541..b73fab89d12 100644 --- a/lib/python/qmk/util.py +++ b/lib/python/qmk/util.py @@ -15,7 +15,7 @@ def maybe_exit(rc): if maybe_exit_should_exit: sys.exit(rc) if maybe_exit_reraise: - e = sys.exception() + e = sys.exc_info()[1] if e: raise e From 3c868b9316ea9415288f55c0041c4d25e3e489ae Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 16 Jun 2024 22:52:47 +1000 Subject: [PATCH 107/519] `ergodox_ez/base`: Add missing `features` object (#23935) --- keyboards/ergodox_ez/base/keyboard.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/keyboards/ergodox_ez/base/keyboard.json b/keyboards/ergodox_ez/base/keyboard.json index be1433ccbaf..5e0f54e40b4 100644 --- a/keyboards/ergodox_ez/base/keyboard.json +++ b/keyboards/ergodox_ez/base/keyboard.json @@ -2,5 +2,11 @@ "keyboard_name": "ErgoDox EZ", "usb": { "pid": "0x4974" + }, + "features": { + "bootmagic": false, + "mousekey": true, + "extrakey": true, + "nkro": true } } From 751fbd75d3faaadbd4ea276b4922d1686c656b62 Mon Sep 17 00:00:00 2001 From: Danny Date: Sun, 16 Jun 2024 14:16:05 -0400 Subject: [PATCH 108/519] Add Chiri CE (#23926) * Add Chiri CE * Add more layers for dynamic keymap * Move EEPROM clear * Convert to keymap.json * Change bootmagic matrix position --- keyboards/keebio/chiri_ce/info.json | 8 + .../chiri_ce/keymaps/default/keymap.json | 32 +++ .../keebio/chiri_ce/keymaps/via/keymap.json | 32 +++ keyboards/keebio/chiri_ce/readme.md | 25 +++ keyboards/keebio/chiri_ce/rev1/config.h | 16 ++ keyboards/keebio/chiri_ce/rev1/keyboard.json | 189 ++++++++++++++++++ keyboards/keebio/chiri_ce/rev1/rules.mk | 1 + 7 files changed, 303 insertions(+) create mode 100644 keyboards/keebio/chiri_ce/info.json create mode 100644 keyboards/keebio/chiri_ce/keymaps/default/keymap.json create mode 100644 keyboards/keebio/chiri_ce/keymaps/via/keymap.json create mode 100644 keyboards/keebio/chiri_ce/readme.md create mode 100644 keyboards/keebio/chiri_ce/rev1/config.h create mode 100644 keyboards/keebio/chiri_ce/rev1/keyboard.json create mode 100644 keyboards/keebio/chiri_ce/rev1/rules.mk diff --git a/keyboards/keebio/chiri_ce/info.json b/keyboards/keebio/chiri_ce/info.json new file mode 100644 index 00000000000..64fa5a05caf --- /dev/null +++ b/keyboards/keebio/chiri_ce/info.json @@ -0,0 +1,8 @@ +{ + "manufacturer": "Keebio", + "maintainer": "Keebio", + "url": "https://keeb.io", + "usb": { + "vid": "0xCB10" + } +} diff --git a/keyboards/keebio/chiri_ce/keymaps/default/keymap.json b/keyboards/keebio/chiri_ce/keymaps/default/keymap.json new file mode 100644 index 00000000000..18c9e441e07 --- /dev/null +++ b/keyboards/keebio/chiri_ce/keymaps/default/keymap.json @@ -0,0 +1,32 @@ +{ + "config": { "features": {"tri_layer": true} }, + "keyboard": "keebio/chiri_ce/rev1", + "keymap": "default", + "layout": "LAYOUT", + "layers": [ + [ + "KC_TAB" , "KC_Q" , "KC_W" , "KC_E" , "KC_R" , "KC_T" , "KC_Y" , "KC_U" , "KC_I" , "KC_O" , "KC_P" , "KC_DEL" , + "KC_LCTL", "KC_A" , "KC_S" , "KC_D" , "KC_F" , "KC_G" , "KC_H" , "KC_J" , "KC_K" , "KC_L" , "KC_SCLN", "KC_QUOT", + "KC_LSFT", "KC_Z" , "KC_X" , "KC_C" , "KC_V" , "KC_B" , "QK_GESC", "KC_BSPC", "KC_N" , "KC_M" , "KC_COMM", "KC_DOT" , "KC_SLSH", "KC_RSFT", + "KC_LGUI", "TL_LOWR", "KC_ENT" , "KC_SPC" , "TL_UPPR", "KC_RALT" + ], + [ + "KC_GRV" , "KC_1" , "KC_2" , "KC_3" , "KC_4" , "KC_5" , "KC_6" , "KC_7" , "KC_8" , "KC_9" , "KC_0" , "KC_BSPC", + "KC_ESC" , "KC_LEFT", "KC_DOWN", "KC_UP" , "KC_RGHT", "KC_LBRC", "KC_RBRC", "KC_P4" , "KC_P5" , "KC_P6" , "KC_PLUS", "KC_PIPE", + "RGB_MOD", "_______", "_______", "_______", "_______", "KC_LCBR", "KC_LPRN", "KC_RPRN", "KC_RCBR", "KC_P1" , "KC_P2" , "KC_P3" , "KC_MINS", "_______", + "_______", "_______", "KC_DEL" , "KC_DEL" , "_______", "KC_P0" + ], + [ + "RGB_TOG", "KC_EXLM", "KC_AT" , "KC_HASH", "KC_DLR" , "KC_PERC", "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "QK_BOOT", + "RGB_MOD", "KC_MPRV", "KC_MNXT", "KC_VOLU", "KC_PGUP", "KC_UNDS", "KC_EQL" , "KC_HOME", "RGB_HUI", "RGB_SAI", "RGB_VAI", "KC_BSLS", + "KC_MUTE", "KC_MSTP", "KC_MPLY", "KC_VOLD", "KC_PGDN", "KC_MINS", "KC_LPRN", "_______", "KC_PLUS", "KC_END" , "RGB_HUD", "RGB_SAD", "RGB_VAD", "_______", + "_______", "_______", "_______", "_______", "_______", "_______" + ], + [ + "KC_F12" , "KC_F1" , "KC_F2" , "KC_F3" , "KC_F4" , "KC_F5" , "KC_F6" , "KC_F7" , "KC_F8" , "KC_F9" , "KC_F10" , "KC_F11" , + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "EE_CLR" , "QK_BOOT", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "QK_BOOT", "EE_CLR" , "_______", + "_______", "_______", "_______", "_______", "_______", "_______" + ] + ] +} diff --git a/keyboards/keebio/chiri_ce/keymaps/via/keymap.json b/keyboards/keebio/chiri_ce/keymaps/via/keymap.json new file mode 100644 index 00000000000..e8db1835451 --- /dev/null +++ b/keyboards/keebio/chiri_ce/keymaps/via/keymap.json @@ -0,0 +1,32 @@ +{ + "config": { "features": {"tri_layer": true, "via": true} }, + "keyboard": "keebio/chiri_ce/rev1", + "keymap": "via", + "layout": "LAYOUT", + "layers": [ + [ + "KC_TAB" , "KC_Q" , "KC_W" , "KC_E" , "KC_R" , "KC_T" , "KC_Y" , "KC_U" , "KC_I" , "KC_O" , "KC_P" , "KC_DEL" , + "KC_LCTL", "KC_A" , "KC_S" , "KC_D" , "KC_F" , "KC_G" , "KC_H" , "KC_J" , "KC_K" , "KC_L" , "KC_SCLN", "KC_QUOT", + "KC_LSFT", "KC_Z" , "KC_X" , "KC_C" , "KC_V" , "KC_B" , "QK_GESC", "KC_BSPC", "KC_N" , "KC_M" , "KC_COMM", "KC_DOT" , "KC_SLSH", "KC_RSFT", + "KC_LGUI", "TL_LOWR", "KC_ENT" , "KC_SPC" , "TL_UPPR", "KC_RALT" + ], + [ + "KC_GRV" , "KC_1" , "KC_2" , "KC_3" , "KC_4" , "KC_5" , "KC_6" , "KC_7" , "KC_8" , "KC_9" , "KC_0" , "KC_BSPC", + "KC_ESC" , "KC_LEFT", "KC_DOWN", "KC_UP" , "KC_RGHT", "KC_LBRC", "KC_RBRC", "KC_P4" , "KC_P5" , "KC_P6" , "KC_PLUS", "KC_PIPE", + "RGB_MOD", "_______", "_______", "_______", "_______", "KC_LCBR", "KC_LPRN", "KC_RPRN", "KC_RCBR", "KC_P1" , "KC_P2" , "KC_P3" , "KC_MINS", "_______", + "_______", "_______", "KC_DEL" , "KC_DEL" , "_______", "KC_P0" + ], + [ + "RGB_TOG", "KC_EXLM", "KC_AT" , "KC_HASH", "KC_DLR" , "KC_PERC", "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "QK_BOOT", + "RGB_MOD", "KC_MPRV", "KC_MNXT", "KC_VOLU", "KC_PGUP", "KC_UNDS", "KC_EQL" , "KC_HOME", "RGB_HUI", "RGB_SAI", "RGB_VAI", "KC_BSLS", + "KC_MUTE", "KC_MSTP", "KC_MPLY", "KC_VOLD", "KC_PGDN", "KC_MINS", "KC_LPRN", "_______", "KC_PLUS", "KC_END" , "RGB_HUD", "RGB_SAD", "RGB_VAD", "_______", + "_______", "_______", "_______", "_______", "_______", "_______" + ], + [ + "KC_F12" , "KC_F1" , "KC_F2" , "KC_F3" , "KC_F4" , "KC_F5" , "KC_F6" , "KC_F7" , "KC_F8" , "KC_F9" , "KC_F10" , "KC_F11" , + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "EE_CLR" , "QK_BOOT", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "QK_BOOT", "EE_CLR" , "_______", + "_______", "_______", "_______", "_______", "_______", "_______" + ] + ] +} diff --git a/keyboards/keebio/chiri_ce/readme.md b/keyboards/keebio/chiri_ce/readme.md new file mode 100644 index 00000000000..5bc70c0199c --- /dev/null +++ b/keyboards/keebio/chiri_ce/readme.md @@ -0,0 +1,25 @@ +# Chiri CE (Compact Edition) + +A split ergo 3x6 keyboard with 4 thumb keys made and sold by Keebio. Outer columns can be broken off to convert it to 3x5 layout. [More info at Keebio](https://keeb.io). + +* Keyboard Maintainer: [Bakingpy/nooges](https://github.com/nooges) +* Hardware Supported: Chiri CE PCBs w/RP2040 microcontroller +* Hardware Availability: [Keebio](https://keeb.io) + +Make example for this keyboard (after setting up your build environment): + + make keebio/chiri_ce/rev1:default + +Example of flashing this keyboard: + + make keebio/chiri_ce/rev1: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 the top left (for left half) or top right (for right half) and plug in the keyboard +* **Physical reset button**: Press and hold the button on the back of the PCB for at least 1 second and let go +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/keebio/chiri_ce/rev1/config.h b/keyboards/keebio/chiri_ce/rev1/config.h new file mode 100644 index 00000000000..b1eb9da4e9b --- /dev/null +++ b/keyboards/keebio/chiri_ce/rev1/config.h @@ -0,0 +1,16 @@ +// Copyright 2024 Danny Nguyen (danny@keeb.io) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define SPLIT_HAND_PIN GP4 +#define USB_VBUS_PIN GP0 +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_TX_PIN GP12 +#define SERIAL_USART_RX_PIN GP13 +#define SERIAL_USART_PIN_SWAP +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U +#define I2C_DRIVER I2CD2 +#define I2C1_SDA_PIN GP10 +#define I2C1_SCL_PIN GP11 diff --git a/keyboards/keebio/chiri_ce/rev1/keyboard.json b/keyboards/keebio/chiri_ce/rev1/keyboard.json new file mode 100644 index 00000000000..8b46dd7d6d4 --- /dev/null +++ b/keyboards/keebio/chiri_ce/rev1/keyboard.json @@ -0,0 +1,189 @@ +{ + "keyboard_name": "Chiri CE Rev. 1", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "dynamic_keymap": { + "layer_count": 6 + }, + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "rgb_matrix": true + }, + "matrix_pins": { + "cols": ["GP29", "GP28", "GP27", "GP2", "GP3", "GP14"], + "rows": ["GP19", "GP20", "GP7", "GP26"] + }, + "processor": "RP2040", + "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, + "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_fractal": 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 + }, + "driver": "ws2812", + "layout": [ + {"matrix": [0, 5], "x": 80, "y": 3, "flags": 4}, + {"matrix": [0, 4], "x": 64, "y": 5, "flags": 4}, + {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 32, "y": 2, "flags": 4}, + {"matrix": [0, 1], "x": 16, "y": 5, "flags": 4}, + {"matrix": [1, 1], "x": 16, "y": 18, "flags": 4}, + {"matrix": [1, 2], "x": 32, "y": 15, "flags": 4}, + {"matrix": [1, 3], "x": 48, "y": 13, "flags": 4}, + {"matrix": [1, 4], "x": 64, "y": 15, "flags": 4}, + {"matrix": [1, 5], "x": 80, "y": 17, "flags": 4}, + {"matrix": [2, 5], "x": 80, "y": 30, "flags": 4}, + {"matrix": [2, 4], "x": 64, "y": 28, "flags": 4}, + {"matrix": [2, 3], "x": 48, "y": 27, "flags": 4}, + {"matrix": [2, 2], "x": 32, "y": 28, "flags": 4}, + {"matrix": [2, 1], "x": 16, "y": 32, "flags": 4}, + {"matrix": [3, 2], "x": 56, "y": 47, "flags": 4}, + {"matrix": [3, 3], "x": 72, "y": 58, "flags": 4}, + {"matrix": [3, 4], "x": 90, "y": 64, "flags": 4}, + {"matrix": [3, 5], "x": 98, "y": 52, "flags": 4}, + {"matrix": [2, 0], "x": 0, "y": 32, "flags": 4}, + {"matrix": [1, 0], "x": 0, "y": 18, "flags": 4}, + {"matrix": [0, 0], "x": 0, "y": 5, "flags": 4}, + {"matrix": [4, 5], "x": 144, "y": 3, "flags": 4}, + {"matrix": [4, 4], "x": 160, "y": 5, "flags": 4}, + {"matrix": [4, 3], "x": 176, "y": 0, "flags": 4}, + {"matrix": [4, 2], "x": 192, "y": 2, "flags": 4}, + {"matrix": [4, 1], "x": 208, "y": 5, "flags": 4}, + {"matrix": [5, 1], "x": 208, "y": 18, "flags": 4}, + {"matrix": [5, 2], "x": 192, "y": 15, "flags": 4}, + {"matrix": [5, 3], "x": 176, "y": 13, "flags": 4}, + {"matrix": [5, 4], "x": 160, "y": 15, "flags": 4}, + {"matrix": [5, 5], "x": 144, "y": 17, "flags": 4}, + {"matrix": [6, 5], "x": 144, "y": 30, "flags": 4}, + {"matrix": [6, 4], "x": 160, "y": 28, "flags": 4}, + {"matrix": [6, 3], "x": 176, "y": 27, "flags": 4}, + {"matrix": [6, 2], "x": 192, "y": 28, "flags": 4}, + {"matrix": [6, 1], "x": 208, "y": 32, "flags": 4}, + {"matrix": [7, 2], "x": 168, "y": 47, "flags": 4}, + {"matrix": [7, 3], "x": 152, "y": 58, "flags": 4}, + {"matrix": [7, 4], "x": 134, "y": 64, "flags": 4}, + {"matrix": [7, 5], "x": 126, "y": 52, "flags": 4}, + {"matrix": [6, 0], "x": 224, "y": 32, "flags": 4}, + {"matrix": [5, 0], "x": 224, "y": 18, "flags": 4}, + {"matrix": [4, 0], "x": 224, "y": 5, "flags": 4} + ], + "max_brightness": 200, + "split_count": [22, 22], + "sleep": true + }, + "split": { + "bootmagic": { + "matrix": [4, 0] + }, + "enabled": true, + "matrix_pins": { + "right": { + "cols": ["GP29", "GP28", "GP2", "GP27", "GP18", "GP7"], + "rows": ["GP24", "GP23", "GP21", "GP3"] + } + }, + "transport": { + "sync_matrix_state": true + } + }, + "usb": { + "device_version": "1.0.0", + "pid": "0x1546" + }, + "ws2812": { + "driver": "vendor", + "pin": "GP25" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.375}, + {"matrix": [0, 1], "x": 1, "y": 0.375}, + {"matrix": [0, 2], "x": 2, "y": 0.125}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0.125}, + {"matrix": [0, 5], "x": 5, "y": 0.25}, + {"matrix": [4, 5], "x": 9, "y": 0.25}, + {"matrix": [4, 4], "x": 10, "y": 0.125}, + {"matrix": [4, 3], "x": 11, "y": 0}, + {"matrix": [4, 2], "x": 12, "y": 0.125}, + {"matrix": [4, 1], "x": 13, "y": 0.375}, + {"matrix": [4, 0], "x": 14, "y": 0.375}, + {"matrix": [1, 0], "x": 0, "y": 1.375}, + {"matrix": [1, 1], "x": 1, "y": 1.375}, + {"matrix": [1, 2], "x": 2, "y": 1.125}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1.125}, + {"matrix": [1, 5], "x": 5, "y": 1.25}, + {"matrix": [5, 5], "x": 9, "y": 1.25}, + {"matrix": [5, 4], "x": 10, "y": 1.125}, + {"matrix": [5, 3], "x": 11, "y": 1}, + {"matrix": [5, 2], "x": 12, "y": 1.125}, + {"matrix": [5, 1], "x": 13, "y": 1.375}, + {"matrix": [5, 0], "x": 14, "y": 1.375}, + {"matrix": [2, 0], "x": 0, "y": 2.375}, + {"matrix": [2, 1], "x": 1, "y": 2.375}, + {"matrix": [2, 2], "x": 2, "y": 2.125}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2.125}, + {"matrix": [2, 5], "x": 5, "y": 2.25}, + {"matrix": [3, 5], "x": 6.15, "y": 2.75}, + {"matrix": [7, 5], "x": 7.85, "y": 2.75}, + {"matrix": [6, 5], "x": 9, "y": 2.25}, + {"matrix": [6, 4], "x": 10, "y": 2.125}, + {"matrix": [6, 3], "x": 11, "y": 2}, + {"matrix": [6, 2], "x": 12, "y": 2.125}, + {"matrix": [6, 1], "x": 13, "y": 2.375}, + {"matrix": [6, 0], "x": 14, "y": 2.375}, + {"matrix": [3, 2], "x": 3.5, "y": 3.25}, + {"matrix": [3, 3], "x": 4.5, "y": 3.375}, + {"matrix": [3, 4], "x": 5.6, "y": 3.75}, + {"matrix": [7, 4], "x": 8.4, "y": 3.75}, + {"matrix": [7, 3], "x": 9.5, "y": 3.375}, + {"matrix": [7, 2], "x": 10.5, "y": 3.25} + ] + } + } +} diff --git a/keyboards/keebio/chiri_ce/rev1/rules.mk b/keyboards/keebio/chiri_ce/rev1/rules.mk new file mode 100644 index 00000000000..161ec22b16e --- /dev/null +++ b/keyboards/keebio/chiri_ce/rev1/rules.mk @@ -0,0 +1 @@ +SERIAL_DRIVER = vendor From 089a819179fe5a5eb25b8dc3fd595c9b6c485349 Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 17 Jun 2024 06:57:37 +1000 Subject: [PATCH 109/519] keyboard.json schema: set minimum value for `key_unit` (#23937) * keyboard.json schema: set minimum value for `key_unit` * Fix invalid `matrix_size` in keyboard.json * Fix bad layout for silverbullet44 --- data/schemas/definitions.jsonschema | 3 +- data/schemas/keyboard.jsonschema | 8 ++--- keyboards/hazel/bad_wings/config.h | 3 ++ keyboards/hazel/bad_wings/keyboard.json | 4 --- keyboards/keychron/q1v2/config.h | 3 ++ keyboards/keychron/q1v2/info.json | 4 --- keyboards/mechlovin/olly/jf/rev1/config.h | 7 ++++ .../mechlovin/olly/jf/rev1/keyboard.json | 4 --- keyboards/silverbullet44/keyboard.json | 34 +++++++++---------- keyboards/snes_macropad/config.h | 3 ++ keyboards/snes_macropad/keyboard.json | 4 --- keyboards/zsa/voyager/config.h | 3 ++ keyboards/zsa/voyager/keyboard.json | 4 --- 13 files changed, 42 insertions(+), 42 deletions(-) create mode 100644 keyboards/mechlovin/olly/jf/rev1/config.h diff --git a/data/schemas/definitions.jsonschema b/data/schemas/definitions.jsonschema index a1fdd2dcc68..ef44915244c 100644 --- a/data/schemas/definitions.jsonschema +++ b/data/schemas/definitions.jsonschema @@ -40,7 +40,8 @@ "pattern": "^[0-9a-z_/\\-]+\\.json$" }, "key_unit": { - "type": "number" + "type": "number", + "minimum": 0 }, "keyboard": { "type": "string", diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index b699f862770..e5802fe07dd 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -515,8 +515,8 @@ "minimum": 0 } }, - "x": {"$ref": "qmk.definitions.v1#/key_unit"}, - "y": {"$ref": "qmk.definitions.v1#/key_unit"}, + "x": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "y": {"$ref": "qmk.definitions.v1#/unsigned_int"}, "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"} } } @@ -601,8 +601,8 @@ "minimum": 0 } }, - "x": {"$ref": "qmk.definitions.v1#/key_unit"}, - "y": {"$ref": "qmk.definitions.v1#/key_unit"}, + "x": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "y": {"$ref": "qmk.definitions.v1#/unsigned_int"}, "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"} } } diff --git a/keyboards/hazel/bad_wings/config.h b/keyboards/hazel/bad_wings/config.h index 47301728357..b69628e7fc4 100644 --- a/keyboards/hazel/bad_wings/config.h +++ b/keyboards/hazel/bad_wings/config.h @@ -3,6 +3,9 @@ #pragma once +#define MATRIX_COLS 8 +#define MATRIX_ROWS 5 + #define SPI_SCK_PIN GP2 #define SPI_MOSI_PIN GP3 #define SPI_MISO_PIN GP4 diff --git a/keyboards/hazel/bad_wings/keyboard.json b/keyboards/hazel/bad_wings/keyboard.json index fef514c539f..983b8c4fc3d 100644 --- a/keyboards/hazel/bad_wings/keyboard.json +++ b/keyboards/hazel/bad_wings/keyboard.json @@ -10,10 +10,6 @@ }, "processor": "RP2040", "bootloader": "rp2040", - "matrix_size": { - "cols": 8, - "rows": 5 - }, "diode_direction": "COL2ROW", "features": { "bootmagic": true, diff --git a/keyboards/keychron/q1v2/config.h b/keyboards/keychron/q1v2/config.h index 326e60e3c0b..2e93d80e4e2 100644 --- a/keyboards/keychron/q1v2/config.h +++ b/keyboards/keychron/q1v2/config.h @@ -16,6 +16,9 @@ #pragma once +#define MATRIX_COLS 16 +#define MATRIX_ROWS 6 + /* RGB Matrix Driver Configuration */ #define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO #define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND diff --git a/keyboards/keychron/q1v2/info.json b/keyboards/keychron/q1v2/info.json index ed718006e36..7eb7038696c 100644 --- a/keyboards/keychron/q1v2/info.json +++ b/keyboards/keychron/q1v2/info.json @@ -32,10 +32,6 @@ "custom": true, "custom_lite": true }, - "matrix_size": { - "cols": 16, - "rows": 6 - }, "diode_direction": "ROW2COL", "rgb_matrix": { "driver": "snled27351", diff --git a/keyboards/mechlovin/olly/jf/rev1/config.h b/keyboards/mechlovin/olly/jf/rev1/config.h new file mode 100644 index 00000000000..9aa7e1c1d32 --- /dev/null +++ b/keyboards/mechlovin/olly/jf/rev1/config.h @@ -0,0 +1,7 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define MATRIX_COLS 19 +#define MATRIX_ROWS 6 diff --git a/keyboards/mechlovin/olly/jf/rev1/keyboard.json b/keyboards/mechlovin/olly/jf/rev1/keyboard.json index 69f092af07e..1b8fa4a19ad 100644 --- a/keyboards/mechlovin/olly/jf/rev1/keyboard.json +++ b/keyboards/mechlovin/olly/jf/rev1/keyboard.json @@ -16,10 +16,6 @@ "rows": ["D5", "D6", "A5", "A4", "A3", "A6"], "custom_lite": true }, - "matrix_size": { - "cols": 19, - "rows": 6 - }, "backlight": { "pin": "D4", "breathing": true diff --git a/keyboards/silverbullet44/keyboard.json b/keyboards/silverbullet44/keyboard.json index 793ec229e4b..a58aed88206 100644 --- a/keyboards/silverbullet44/keyboard.json +++ b/keyboards/silverbullet44/keyboard.json @@ -92,29 +92,29 @@ {"matrix": [5, 1], "x": 16, "y": 1.75}, {"matrix": [5, 0], "x": 17, "y": 2.375}, - {"matrix": [2, 0], "x": 12, "y": 2.5}, - {"matrix": [2, 1], "x": 13, "y": 2.25}, - {"matrix": [2, 2], "x": 14, "y": 2}, - {"matrix": [2, 3], "x": 15, "y": 2.25}, - {"matrix": [2, 4], "x": 16, "y": 2.75}, - {"matrix": [2, 5], "x": 17, "y": 3.375}, + {"matrix": [2, 0], "x": 0, "y": 3.375}, + {"matrix": [2, 1], "x": 1, "y": 2.75}, + {"matrix": [2, 2], "x": 2, "y": 2.25}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2.25}, + {"matrix": [2, 5], "x": 5, "y": 2.5}, - {"matrix": [6, 5], "x": 0, "y": 3.375}, - {"matrix": [6, 4], "x": 1, "y": 2.75}, - {"matrix": [6, 3], "x": 2, "y": 2.25}, - {"matrix": [6, 2], "x": 3, "y": 2}, - {"matrix": [6, 1], "x": 4, "y": 2.25}, - {"matrix": [6, 0], "x": 5, "y": 2.5}, + {"matrix": [6, 5], "x": 12, "y": 2.5}, + {"matrix": [6, 4], "x": 13, "y": 2.25}, + {"matrix": [6, 3], "x": 14, "y": 2}, + {"matrix": [6, 2], "x": 15, "y": 2.25}, + {"matrix": [6, 1], "x": 16, "y": 2.75}, + {"matrix": [6, 0], "x": 17, "y": 3.375}, {"matrix": [3, 2], "x": 4, "y": 3.25, "h": 1.25}, {"matrix": [3, 3], "x": 5, "y": 3.5}, - {"matrix": [3, 4], "x": -0.5, "y": 3.5, "h": 1.5}, - {"matrix": [3, 5], "x": 7, "y": 3.25, "h": 1.5}, + {"matrix": [3, 4], "x": 6, "y": 3.25, "h": 1.5}, + {"matrix": [3, 5], "x": 7, "y": 3.5, "h": 1.5}, - {"matrix": [7, 5], "x": -3, "y": 3.5, "h": 1.5}, - {"matrix": [7, 4], "x": -2, "y": 3.5, "h": 1.5}, + {"matrix": [7, 5], "x": 10, "y": 3.5, "h": 1.5}, + {"matrix": [7, 4], "x": 11, "y": 3.25, "h": 1.5}, {"matrix": [7, 3], "x": 12, "y": 3.5}, - {"matrix": [7, 2], "x": 13, "y": 3.25, "w": 1.25} + {"matrix": [7, 2], "x": 13, "y": 3.25, "h": 1.25} ] } } diff --git a/keyboards/snes_macropad/config.h b/keyboards/snes_macropad/config.h index c5edeb55f1d..a8f0c7fc457 100644 --- a/keyboards/snes_macropad/config.h +++ b/keyboards/snes_macropad/config.h @@ -3,6 +3,9 @@ #pragma once +#define MATRIX_COLS 4 +#define MATRIX_ROWS 6 + #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/snes_macropad/keyboard.json b/keyboards/snes_macropad/keyboard.json index 3483fe8f539..91ee3323573 100644 --- a/keyboards/snes_macropad/keyboard.json +++ b/keyboards/snes_macropad/keyboard.json @@ -19,10 +19,6 @@ "driver": "vendor" }, "processor": "RP2040", - "matrix_size": { - "cols": 4, - "rows": 6 - }, "url": "", "usb": { "device_version": "1.0.0", diff --git a/keyboards/zsa/voyager/config.h b/keyboards/zsa/voyager/config.h index 630c01fc809..27460c59104 100644 --- a/keyboards/zsa/voyager/config.h +++ b/keyboards/zsa/voyager/config.h @@ -4,6 +4,9 @@ #pragma once +#define MATRIX_COLS 7 +#define MATRIX_ROWS 12 + #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC diff --git a/keyboards/zsa/voyager/keyboard.json b/keyboards/zsa/voyager/keyboard.json index 3a7e7865ea9..3c5f2931ef4 100644 --- a/keyboards/zsa/voyager/keyboard.json +++ b/keyboards/zsa/voyager/keyboard.json @@ -27,10 +27,6 @@ "matrix": [0, 1] }, "diode_direction": "ROW2COL", - "matrix_size": { - "cols": 7, - "rows": 12 - }, "mousekey": { "delay": 0, "interval": 20, From 4864d5afca09cbd4b0bfc7e7cef505ad602b0c9c Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 17 Jun 2024 14:47:33 +1000 Subject: [PATCH 110/519] Mechwild OBE/Waka60: Fix build warnings (#23929) --- keyboards/mechwild/obe/f401/base/keyboard.json | 1 + keyboards/mechwild/obe/f401/eeprom/keyboard.json | 5 +++++ keyboards/mechwild/obe/f401/eeprom/rules.mk | 1 - keyboards/mechwild/obe/f401/{keyboard.json => info.json} | 0 keyboards/mechwild/obe/f401/rules.mk | 1 + keyboards/mechwild/obe/f411/base/keyboard.json | 1 + keyboards/mechwild/obe/f411/eeprom/keyboard.json | 5 +++++ keyboards/mechwild/obe/f411/eeprom/rules.mk | 1 - keyboards/mechwild/obe/f411/{keyboard.json => info.json} | 0 keyboards/mechwild/obe/f411/rules.mk | 1 + keyboards/mechwild/obe/rules.mk | 2 +- keyboards/mechwild/waka60/f401/base/keyboard.json | 1 + keyboards/mechwild/waka60/f401/{ => eeprom}/config.h | 0 keyboards/mechwild/waka60/f401/eeprom/keyboard.json | 5 +++++ keyboards/mechwild/waka60/f401/eeprom/rules.mk | 1 - keyboards/mechwild/waka60/f401/{keyboard.json => info.json} | 0 keyboards/mechwild/waka60/f401/rules.mk | 1 + keyboards/mechwild/waka60/f411/base/keyboard.json | 1 + keyboards/mechwild/waka60/f411/{ => eeprom}/config.h | 0 keyboards/mechwild/waka60/f411/eeprom/keyboard.json | 5 +++++ keyboards/mechwild/waka60/f411/eeprom/rules.mk | 1 - keyboards/mechwild/waka60/f411/{keyboard.json => info.json} | 0 keyboards/mechwild/waka60/f411/rules.mk | 1 + keyboards/mechwild/waka60/rules.mk | 2 +- 24 files changed, 30 insertions(+), 6 deletions(-) create mode 100644 keyboards/mechwild/obe/f401/base/keyboard.json create mode 100644 keyboards/mechwild/obe/f401/eeprom/keyboard.json delete mode 100644 keyboards/mechwild/obe/f401/eeprom/rules.mk rename keyboards/mechwild/obe/f401/{keyboard.json => info.json} (100%) create mode 100644 keyboards/mechwild/obe/f401/rules.mk create mode 100644 keyboards/mechwild/obe/f411/base/keyboard.json create mode 100644 keyboards/mechwild/obe/f411/eeprom/keyboard.json delete mode 100644 keyboards/mechwild/obe/f411/eeprom/rules.mk rename keyboards/mechwild/obe/f411/{keyboard.json => info.json} (100%) create mode 100644 keyboards/mechwild/obe/f411/rules.mk create mode 100644 keyboards/mechwild/waka60/f401/base/keyboard.json rename keyboards/mechwild/waka60/f401/{ => eeprom}/config.h (100%) create mode 100644 keyboards/mechwild/waka60/f401/eeprom/keyboard.json delete mode 100644 keyboards/mechwild/waka60/f401/eeprom/rules.mk rename keyboards/mechwild/waka60/f401/{keyboard.json => info.json} (100%) create mode 100644 keyboards/mechwild/waka60/f401/rules.mk create mode 100644 keyboards/mechwild/waka60/f411/base/keyboard.json rename keyboards/mechwild/waka60/f411/{ => eeprom}/config.h (100%) create mode 100644 keyboards/mechwild/waka60/f411/eeprom/keyboard.json delete mode 100644 keyboards/mechwild/waka60/f411/eeprom/rules.mk rename keyboards/mechwild/waka60/f411/{keyboard.json => info.json} (100%) create mode 100644 keyboards/mechwild/waka60/f411/rules.mk diff --git a/keyboards/mechwild/obe/f401/base/keyboard.json b/keyboards/mechwild/obe/f401/base/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/mechwild/obe/f401/base/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/mechwild/obe/f401/eeprom/keyboard.json b/keyboards/mechwild/obe/f401/eeprom/keyboard.json new file mode 100644 index 00000000000..12d3baee141 --- /dev/null +++ b/keyboards/mechwild/obe/f401/eeprom/keyboard.json @@ -0,0 +1,5 @@ +{ + "eeprom": { + "driver": "i2c" + } +} diff --git a/keyboards/mechwild/obe/f401/eeprom/rules.mk b/keyboards/mechwild/obe/f401/eeprom/rules.mk deleted file mode 100644 index 44adba039b5..00000000000 --- a/keyboards/mechwild/obe/f401/eeprom/rules.mk +++ /dev/null @@ -1 +0,0 @@ -EEPROM_DRIVER = i2c diff --git a/keyboards/mechwild/obe/f401/keyboard.json b/keyboards/mechwild/obe/f401/info.json similarity index 100% rename from keyboards/mechwild/obe/f401/keyboard.json rename to keyboards/mechwild/obe/f401/info.json diff --git a/keyboards/mechwild/obe/f401/rules.mk b/keyboards/mechwild/obe/f401/rules.mk new file mode 100644 index 00000000000..8709dbb4de3 --- /dev/null +++ b/keyboards/mechwild/obe/f401/rules.mk @@ -0,0 +1 @@ +DEFAULT_FOLDER = mechwild/obe/f401/base diff --git a/keyboards/mechwild/obe/f411/base/keyboard.json b/keyboards/mechwild/obe/f411/base/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/mechwild/obe/f411/base/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/mechwild/obe/f411/eeprom/keyboard.json b/keyboards/mechwild/obe/f411/eeprom/keyboard.json new file mode 100644 index 00000000000..12d3baee141 --- /dev/null +++ b/keyboards/mechwild/obe/f411/eeprom/keyboard.json @@ -0,0 +1,5 @@ +{ + "eeprom": { + "driver": "i2c" + } +} diff --git a/keyboards/mechwild/obe/f411/eeprom/rules.mk b/keyboards/mechwild/obe/f411/eeprom/rules.mk deleted file mode 100644 index 44adba039b5..00000000000 --- a/keyboards/mechwild/obe/f411/eeprom/rules.mk +++ /dev/null @@ -1 +0,0 @@ -EEPROM_DRIVER = i2c diff --git a/keyboards/mechwild/obe/f411/keyboard.json b/keyboards/mechwild/obe/f411/info.json similarity index 100% rename from keyboards/mechwild/obe/f411/keyboard.json rename to keyboards/mechwild/obe/f411/info.json diff --git a/keyboards/mechwild/obe/f411/rules.mk b/keyboards/mechwild/obe/f411/rules.mk new file mode 100644 index 00000000000..e24fe605094 --- /dev/null +++ b/keyboards/mechwild/obe/f411/rules.mk @@ -0,0 +1 @@ +DEFAULT_FOLDER = mechwild/obe/f411/base diff --git a/keyboards/mechwild/obe/rules.mk b/keyboards/mechwild/obe/rules.mk index 8fb92c3a6b6..8709dbb4de3 100644 --- a/keyboards/mechwild/obe/rules.mk +++ b/keyboards/mechwild/obe/rules.mk @@ -1 +1 @@ -DEFAULT_FOLDER = mechwild/obe/f401 +DEFAULT_FOLDER = mechwild/obe/f401/base diff --git a/keyboards/mechwild/waka60/f401/base/keyboard.json b/keyboards/mechwild/waka60/f401/base/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/mechwild/waka60/f401/base/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/mechwild/waka60/f401/config.h b/keyboards/mechwild/waka60/f401/eeprom/config.h similarity index 100% rename from keyboards/mechwild/waka60/f401/config.h rename to keyboards/mechwild/waka60/f401/eeprom/config.h diff --git a/keyboards/mechwild/waka60/f401/eeprom/keyboard.json b/keyboards/mechwild/waka60/f401/eeprom/keyboard.json new file mode 100644 index 00000000000..12d3baee141 --- /dev/null +++ b/keyboards/mechwild/waka60/f401/eeprom/keyboard.json @@ -0,0 +1,5 @@ +{ + "eeprom": { + "driver": "i2c" + } +} diff --git a/keyboards/mechwild/waka60/f401/eeprom/rules.mk b/keyboards/mechwild/waka60/f401/eeprom/rules.mk deleted file mode 100644 index 44adba039b5..00000000000 --- a/keyboards/mechwild/waka60/f401/eeprom/rules.mk +++ /dev/null @@ -1 +0,0 @@ -EEPROM_DRIVER = i2c diff --git a/keyboards/mechwild/waka60/f401/keyboard.json b/keyboards/mechwild/waka60/f401/info.json similarity index 100% rename from keyboards/mechwild/waka60/f401/keyboard.json rename to keyboards/mechwild/waka60/f401/info.json diff --git a/keyboards/mechwild/waka60/f401/rules.mk b/keyboards/mechwild/waka60/f401/rules.mk new file mode 100644 index 00000000000..a0d74c14eb1 --- /dev/null +++ b/keyboards/mechwild/waka60/f401/rules.mk @@ -0,0 +1 @@ +DEFAULT_FOLDER = mechwild/waka60/f401/base diff --git a/keyboards/mechwild/waka60/f411/base/keyboard.json b/keyboards/mechwild/waka60/f411/base/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/mechwild/waka60/f411/base/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/mechwild/waka60/f411/config.h b/keyboards/mechwild/waka60/f411/eeprom/config.h similarity index 100% rename from keyboards/mechwild/waka60/f411/config.h rename to keyboards/mechwild/waka60/f411/eeprom/config.h diff --git a/keyboards/mechwild/waka60/f411/eeprom/keyboard.json b/keyboards/mechwild/waka60/f411/eeprom/keyboard.json new file mode 100644 index 00000000000..12d3baee141 --- /dev/null +++ b/keyboards/mechwild/waka60/f411/eeprom/keyboard.json @@ -0,0 +1,5 @@ +{ + "eeprom": { + "driver": "i2c" + } +} diff --git a/keyboards/mechwild/waka60/f411/eeprom/rules.mk b/keyboards/mechwild/waka60/f411/eeprom/rules.mk deleted file mode 100644 index 44adba039b5..00000000000 --- a/keyboards/mechwild/waka60/f411/eeprom/rules.mk +++ /dev/null @@ -1 +0,0 @@ -EEPROM_DRIVER = i2c diff --git a/keyboards/mechwild/waka60/f411/keyboard.json b/keyboards/mechwild/waka60/f411/info.json similarity index 100% rename from keyboards/mechwild/waka60/f411/keyboard.json rename to keyboards/mechwild/waka60/f411/info.json diff --git a/keyboards/mechwild/waka60/f411/rules.mk b/keyboards/mechwild/waka60/f411/rules.mk new file mode 100644 index 00000000000..0dd69ff65f7 --- /dev/null +++ b/keyboards/mechwild/waka60/f411/rules.mk @@ -0,0 +1 @@ +DEFAULT_FOLDER = mechwild/waka60/f411/base diff --git a/keyboards/mechwild/waka60/rules.mk b/keyboards/mechwild/waka60/rules.mk index d3be506b167..a0d74c14eb1 100644 --- a/keyboards/mechwild/waka60/rules.mk +++ b/keyboards/mechwild/waka60/rules.mk @@ -1 +1 @@ -DEFAULT_FOLDER = mechwild/waka60/f401 +DEFAULT_FOLDER = mechwild/waka60/f401/base From 3f44231d2d7889beb87f67035d884daae72eb6f5 Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 17 Jun 2024 20:12:26 +1000 Subject: [PATCH 111/519] Strip decimals from RGB Matrix layout positions (#23943) --- keyboards/cipulot/ec_980c/keyboard.json | 6 +- .../kd87a_bfg_edition/keyboard.json | 54 +++--- keyboards/doio/kb38/keyboard.json | 76 ++++---- .../handwired/alcor_dactyl/keyboard.json | 4 +- keyboards/input_club/k_type/k_type.c | 20 +-- keyboards/kbdfans/kbd75rgb/kbd75rgb.c | 8 +- keyboards/kbdfans/kbdpad/mk3/keyboard.json | 30 ++-- keyboards/keebio/bamfk4/bamfk4.c | 16 +- keyboards/meletrix/zoom98/keyboard.json | 22 +-- .../65/projectd_65_ansi/keyboard.json | 58 +++---- keyboards/projectd/75/ansi/keyboard.json | 160 ++++++++--------- keyboards/projectd/75/iso/keyboard.json | 162 +++++++++--------- keyboards/rot13labs/h4ckb0ard/keyboard.json | 56 +++--- keyboards/skeletonkbd/frost68/keyboard.json | 136 +++++++-------- keyboards/theone/keyboard.json | 50 +++--- 15 files changed, 429 insertions(+), 429 deletions(-) diff --git a/keyboards/cipulot/ec_980c/keyboard.json b/keyboards/cipulot/ec_980c/keyboard.json index 6d3cb22719c..35946fa623f 100644 --- a/keyboards/cipulot/ec_980c/keyboard.json +++ b/keyboards/cipulot/ec_980c/keyboard.json @@ -35,9 +35,9 @@ }, "driver": "ws2812", "layout": [ - {"matrix": [0, 15], "x": 16.25, "y": 1, "flags": 4}, - {"matrix": [0, 16], "x": 17.25, "y": 1, "flags": 4}, - {"matrix": [0, 17], "x": 18.25, "y": 1, "flags": 4} + {"matrix": [0, 15], "x": 16, "y": 1, "flags": 4}, + {"matrix": [0, 16], "x": 17, "y": 1, "flags": 4}, + {"matrix": [0, 17], "x": 18, "y": 1, "flags": 4} ], "led_count": 3, "max_brightness": 255 diff --git a/keyboards/darkproject/kd87a_bfg_edition/keyboard.json b/keyboards/darkproject/kd87a_bfg_edition/keyboard.json index 856dbea6488..1e0d7f5e8b8 100644 --- a/keyboards/darkproject/kd87a_bfg_edition/keyboard.json +++ b/keyboards/darkproject/kd87a_bfg_edition/keyboard.json @@ -139,41 +139,41 @@ { "flags": 4, "matrix": [2, 5], "x": 175, "y": 25 }, { "flags": 8, "matrix": [2, 1], "x": 0, "y": 35 }, - { "flags": 4, "matrix": [1, 2], "x": 17.5, "y": 35 }, - { "flags": 4, "matrix": [2, 2], "x": 27.5, "y": 35 }, - { "flags": 4, "matrix": [3, 2], "x": 37.5, "y": 35 }, - { "flags": 4, "matrix": [4, 2], "x": 47.5, "y": 35 }, - { "flags": 4, "matrix": [4, 3], "x": 57.5, "y": 35 }, - { "flags": 4, "matrix": [5, 3], "x": 67.5, "y": 35 }, - { "flags": 4, "matrix": [5, 2], "x": 77.5, "y": 35 }, - { "flags": 4, "matrix": [6, 2], "x": 87.5, "y": 35 }, - { "flags": 4, "matrix": [7, 2], "x": 97.5, "y": 35 }, - { "flags": 4, "matrix": [8, 2], "x": 107.5, "y": 35 }, - { "flags": 4, "matrix": [8, 3], "x": 117.5, "y": 35 }, - { "flags": 4, "matrix": [10, 4], "x": 127.5, "y": 35 }, + { "flags": 4, "matrix": [1, 2], "x": 17, "y": 35 }, + { "flags": 4, "matrix": [2, 2], "x": 27, "y": 35 }, + { "flags": 4, "matrix": [3, 2], "x": 37, "y": 35 }, + { "flags": 4, "matrix": [4, 2], "x": 47, "y": 35 }, + { "flags": 4, "matrix": [4, 3], "x": 57, "y": 35 }, + { "flags": 4, "matrix": [5, 3], "x": 67, "y": 35 }, + { "flags": 4, "matrix": [5, 2], "x": 77, "y": 35 }, + { "flags": 4, "matrix": [6, 2], "x": 87, "y": 35 }, + { "flags": 4, "matrix": [7, 2], "x": 97, "y": 35 }, + { "flags": 4, "matrix": [8, 2], "x": 107, "y": 35 }, + { "flags": 4, "matrix": [8, 3], "x": 117, "y": 35 }, + { "flags": 4, "matrix": [10, 4], "x": 127, "y": 35 }, { "flags": 4, "matrix": [0, 0], "x": 0, "y": 45 }, - { "flags": 4, "matrix": [1, 4], "x": 22.5, "y": 45 }, - { "flags": 4, "matrix": [2, 4], "x": 32.5, "y": 45 }, - { "flags": 4, "matrix": [3, 4], "x": 42.5, "y": 45 }, - { "flags": 4, "matrix": [4, 4], "x": 52.5, "y": 45 }, - { "flags": 4, "matrix": [4, 5], "x": 62.5, "y": 45 }, - { "flags": 4, "matrix": [5, 5], "x": 72.5, "y": 45 }, - { "flags": 4, "matrix": [5, 4], "x": 82.5, "y": 45 }, - { "flags": 4, "matrix": [6, 4], "x": 92.5, "y": 45 }, - { "flags": 4, "matrix": [7, 4], "x": 102.5, "y": 45 }, - { "flags": 4, "matrix": [8, 5], "x": 112.5, "y": 45 }, - { "flags": 4, "matrix": [9, 1], "x": 122.5, "y": 45 }, + { "flags": 4, "matrix": [1, 4], "x": 22, "y": 45 }, + { "flags": 4, "matrix": [2, 4], "x": 32, "y": 45 }, + { "flags": 4, "matrix": [3, 4], "x": 42, "y": 45 }, + { "flags": 4, "matrix": [4, 4], "x": 52, "y": 45 }, + { "flags": 4, "matrix": [4, 5], "x": 62, "y": 45 }, + { "flags": 4, "matrix": [5, 5], "x": 72, "y": 45 }, + { "flags": 4, "matrix": [5, 4], "x": 82, "y": 45 }, + { "flags": 4, "matrix": [6, 4], "x": 92, "y": 45 }, + { "flags": 4, "matrix": [7, 4], "x": 102, "y": 45 }, + { "flags": 4, "matrix": [8, 5], "x": 112, "y": 45 }, + { "flags": 4, "matrix": [9, 1], "x": 122, "y": 45 }, { "flags": 4, "matrix": [3, 5], "x": 165, "y": 45 }, { "flags": 4, "matrix": [0, 6], "x": 0, "y": 55 }, - { "flags": 4, "matrix": [9, 0], "x": 12.5, "y": 55 }, + { "flags": 4, "matrix": [9, 0], "x": 12, "y": 55 }, { "flags": 4, "matrix": [9, 3], "x": 25, "y": 55 }, - { "flags": 4, "matrix": [9, 4], "x": 37.5, "y": 55 }, + { "flags": 4, "matrix": [9, 4], "x": 37, "y": 55 }, { "flags": 4, "matrix": [9, 5], "x": 100, "y": 55 }, - { "flags": 4, "matrix": [9, 2], "x": 112.5, "y": 55 }, + { "flags": 4, "matrix": [9, 2], "x": 112, "y": 55 }, { "flags": 4, "matrix": [8, 4], "x": 125, "y": 55 }, - { "flags": 4, "matrix": [0, 4], "x": 137.5, "y": 55 }, + { "flags": 4, "matrix": [0, 4], "x": 137, "y": 55 }, { "flags": 4, "matrix": [0, 3], "x": 155, "y": 55 }, { "flags": 4, "matrix": [7, 3], "x": 165, "y": 55 }, { "flags": 4, "matrix": [0, 5], "x": 175, "y": 55 } diff --git a/keyboards/doio/kb38/keyboard.json b/keyboards/doio/kb38/keyboard.json index 7e978b2be8b..a46f1a6a450 100644 --- a/keyboards/doio/kb38/keyboard.json +++ b/keyboards/doio/kb38/keyboard.json @@ -48,54 +48,54 @@ "driver": "ws2812", "layout": [ {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0}, - {"flags": 4, "matrix": [0, 1], "x": 62.2, "y": 0}, - {"flags": 4, "matrix": [0, 2], "x": 99.6, "y": 0}, - {"flags": 4, "matrix": [0, 3], "x": 124.4, "y": 0}, - {"flags": 4, "matrix": [0, 4], "x": 149.3, "y": 0}, - {"flags": 4, "matrix": [0, 5], "x": 174.2, "y": 0}, - {"flags": 4, "matrix": [0, 6], "x": 199.1, "y": 0}, + {"flags": 4, "matrix": [0, 1], "x": 62, "y": 0}, + {"flags": 4, "matrix": [0, 2], "x": 99, "y": 0}, + {"flags": 4, "matrix": [0, 3], "x": 124, "y": 0}, + {"flags": 4, "matrix": [0, 4], "x": 149, "y": 0}, + {"flags": 4, "matrix": [0, 5], "x": 174, "y": 0}, + {"flags": 4, "matrix": [0, 6], "x": 199, "y": 0}, {"flags": 4, "matrix": [0, 7], "x": 224, "y": 0}, - {"flags": 4, "matrix": [1, 0], "x": 0, "y": 12.8}, - {"flags": 4, "matrix": [1, 1], "x": 24.9, "y": 12.8}, - {"flags": 4, "matrix": [1, 2], "x": 49.8, "y": 12.8}, - {"flags": 4, "matrix": [1, 3], "x": 74.6, "y": 12.8}, - {"flags": 4, "matrix": [1, 4], "x": 99.6, "y": 12.8}, - {"flags": 4, "matrix": [1, 5], "x": 124.4, "y": 12.8}, - {"flags": 4, "matrix": [1, 6], "x": 149.3, "y": 12.8}, + {"flags": 4, "matrix": [1, 0], "x": 0, "y": 12}, + {"flags": 4, "matrix": [1, 1], "x": 24, "y": 12}, + {"flags": 4, "matrix": [1, 2], "x": 49, "y": 12}, + {"flags": 4, "matrix": [1, 3], "x": 74, "y": 12}, + {"flags": 4, "matrix": [1, 4], "x": 99, "y": 12}, + {"flags": 4, "matrix": [1, 5], "x": 124, "y": 12}, + {"flags": 4, "matrix": [1, 6], "x": 149, "y": 12}, - {"flags": 4, "matrix": [2, 0], "x": 0, "y": 25.6}, - {"flags": 4, "matrix": [2, 1], "x": 24.9, "y": 25.6}, - {"flags": 4, "matrix": [2, 2], "x": 49.8, "y": 25.6}, - {"flags": 4, "matrix": [2, 3], "x": 74.6, "y": 32}, - {"flags": 4, "matrix": [2, 4], "x": 90, "y": 25.6}, - {"flags": 4, "matrix": [2, 5], "x": 124.4, "y": 25.6}, - {"flags": 4, "matrix": [2, 6], "x": 149.3, "y": 25.6}, + {"flags": 4, "matrix": [2, 0], "x": 0, "y": 25}, + {"flags": 4, "matrix": [2, 1], "x": 24, "y": 25}, + {"flags": 4, "matrix": [2, 2], "x": 49, "y": 25}, + {"flags": 4, "matrix": [2, 3], "x": 74, "y": 32}, + {"flags": 4, "matrix": [2, 4], "x": 90, "y": 25}, + {"flags": 4, "matrix": [2, 5], "x": 124, "y": 25}, + {"flags": 4, "matrix": [2, 6], "x": 149, "y": 25}, - {"flags": 4, "matrix": [3, 0], "x": 0, "y": 38.4}, - {"flags": 4, "matrix": [3, 1], "x": 24.9, "y": 38.4}, - {"flags": 4, "matrix": [3, 2], "x": 49.8, "y": 38.4}, - {"flags": 4, "matrix": [3, 3], "x": 99.6, "y": 38.4}, - {"flags": 4, "matrix": [3, 4], "x": 124.4, "y": 38.4}, - {"flags": 4, "matrix": [3, 5], "x": 149.3, "y": 38.4}, + {"flags": 4, "matrix": [3, 0], "x": 0, "y": 38}, + {"flags": 4, "matrix": [3, 1], "x": 24, "y": 38}, + {"flags": 4, "matrix": [3, 2], "x": 49, "y": 38}, + {"flags": 4, "matrix": [3, 3], "x": 99, "y": 38}, + {"flags": 4, "matrix": [3, 4], "x": 124, "y": 38}, + {"flags": 4, "matrix": [3, 5], "x": 149, "y": 38}, - {"flags": 4, "matrix": [4, 0], "x": 0, "y": 51.2}, - {"flags": 4, "matrix": [4, 1], "x": 24.9, "y": 51.2}, - {"flags": 4, "matrix": [4, 2], "x": 49.8, "y": 51.2}, - {"flags": 4, "matrix": [4, 3], "x": 74.6, "y": 57.6}, - {"flags": 4, "matrix": [4, 5], "x": 124.4, "y": 51.2}, + {"flags": 4, "matrix": [4, 0], "x": 0, "y": 51}, + {"flags": 4, "matrix": [4, 1], "x": 24, "y": 51}, + {"flags": 4, "matrix": [4, 2], "x": 49, "y": 51}, + {"flags": 4, "matrix": [4, 3], "x": 74, "y": 57}, + {"flags": 4, "matrix": [4, 5], "x": 124, "y": 51}, - {"flags": 4, "matrix": [5, 0], "x": 12.5, "y": 64}, - {"flags": 4, "matrix": [5, 1], "x": 49.8, "y": 64}, - {"flags": 4, "matrix": [5, 2], "x": 99.6, "y": 64}, - {"flags": 4, "matrix": [5, 3], "x": 124.4, "y": 64}, - {"flags": 4, "matrix": [5, 4], "x": 149.3, "y": 64}, + {"flags": 4, "matrix": [5, 0], "x": 12, "y": 64}, + {"flags": 4, "matrix": [5, 1], "x": 49, "y": 64}, + {"flags": 4, "matrix": [5, 2], "x": 99, "y": 64}, + {"flags": 4, "matrix": [5, 3], "x": 124, "y": 64}, + {"flags": 4, "matrix": [5, 4], "x": 149, "y": 64}, {"flags": 2, "x": 224, "y": 64}, - {"flags": 2, "x": 74.6, "y": 64}, + {"flags": 2, "x": 74, "y": 64}, {"flags": 2, "x": 0, "y": 64}, {"flags": 2, "x": 0, "y": 0}, - {"flags": 2, "x": 74.6, "y": 0}, + {"flags": 2, "x": 74, "y": 0}, {"flags": 2, "x": 224, "y": 0} ], "max_brightness": 200, diff --git a/keyboards/handwired/alcor_dactyl/keyboard.json b/keyboards/handwired/alcor_dactyl/keyboard.json index 65f1f804aa9..c179278c097 100644 --- a/keyboards/handwired/alcor_dactyl/keyboard.json +++ b/keyboards/handwired/alcor_dactyl/keyboard.json @@ -29,8 +29,8 @@ "rgb_matrix": { "driver": "ws2812", "layout": [ - {"x": 0, "y": 0.375}, - {"x": 16.5, "y": 0.38} + {"x": 0, "y": 0}, + {"x": 16, "y": 0} ], "split_count": [1, 1] }, diff --git a/keyboards/input_club/k_type/k_type.c b/keyboards/input_club/k_type/k_type.c index 85bdc7ea739..c719208af12 100644 --- a/keyboards/input_club/k_type/k_type.c +++ b/keyboards/input_club/k_type/k_type.c @@ -166,19 +166,19 @@ led_config_t g_led_config = { }, { // LED Index to Physical Position // Key LED - { 0, 0 }, { 26.35, 0 }, { 39.53, 0 }, { 52.71, 0 }, { 65.88, 0 }, { 79.06, 0 }, { 92.24, 0 }, { 105.41, 0 }, { 118.59, 0 }, { 131.77, 0 }, { 144.94, 0 }, { 158.12, 0 }, { 171.29, 0 }, { 197.65, 0 }, { 210.82, 0 }, { 224, 0 }, + { 0, 0 }, { 26, 0 }, { 39, 0 }, { 52, 0 }, { 65, 0 }, { 79, 0 }, { 92, 0 }, { 105, 0 }, { 118, 0 }, { 131, 0 }, { 144, 0 }, { 158, 0 }, { 171, 0 }, { 197, 0 }, { 210, 0 }, { 224, 0 }, - { 0, 21.33 }, { 13.18, 21.33 }, { 26.35, 21.33 }, { 39.53, 21.33 }, { 52.71, 21.33 }, { 65.88, 21.33 }, { 79.06, 21.33 }, { 92.24, 21.33 }, { 105.41, 21.33 }, { 118.59, 21.33 }, { 131.77, 21.33 }, { 144.94, 21.33 }, { 158.12, 21.33 }, { 171.29, 21.33 }, { 197.65, 21.33 }, { 210.82, 21.33 }, { 224, 21.33 }, - { 0, 32 }, { 13.18, 32 }, { 26.35, 32 }, { 39.53, 32 }, { 52.71, 32 }, { 65.88, 32 }, { 79.06, 32 }, { 92.24, 32 }, { 105.41, 32 }, { 118.59, 32 }, { 131.77, 32 }, { 144.94, 32 }, { 158.12, 32 }, { 171.29, 32 }, { 197.65, 32 }, { 210.82, 32 }, { 224, 32 }, - { 0, 42.67 }, { 13.18, 42.67 }, { 26.35, 42.67 }, { 39.53, 42.67 }, { 52.71, 42.67 }, { 65.88, 42.67 }, { 79.06, 42.67 }, { 92.24, 42.67 }, { 105.41, 42.67 }, { 118.59, 42.67 }, { 131.77, 42.67 }, { 144.94, 42.67 }, { 171.29, 42.67 }, - { 0, 53.33 }, { 26.35, 53.33 }, { 39.53, 53.33 }, { 52.71, 53.33 }, { 65.88, 53.33 }, { 79.06, 53.33 }, { 92.24, 53.33 }, { 105.41, 53.33 }, { 118.59, 53.33 }, { 131.77, 53.33 }, { 144.94, 53.33 }, { 171.29, 53.33 }, { 210.82, 53.33 }, - { 0, 64 }, { 13.18, 64 }, { 26.35, 64 }, { 79.06, 64 }, { 131.77, 64 }, { 144.94, 64 }, { 158.12, 64 }, { 171.29, 64 }, { 197.65, 64 }, { 210.82, 64 }, { 224, 64 }, + { 0, 21 }, { 13, 21 }, { 26, 21 }, { 39, 21 }, { 52, 21 }, { 65, 21 }, { 79, 21 }, { 92, 21 }, { 105, 21 }, { 118, 21 }, { 131, 21 }, { 144, 21 }, { 158, 21 }, { 171, 21 }, { 197, 21 }, { 210, 21 }, { 224, 21 }, + { 0, 32 }, { 13, 32 }, { 26, 32 }, { 39, 32 }, { 52, 32 }, { 65, 32 }, { 79, 32 }, { 92, 32 }, { 105, 32 }, { 118, 32 }, { 131, 32 }, { 144, 32 }, { 158, 32 }, { 171, 32 }, { 197, 32 }, { 210, 32 }, { 224, 32 }, + { 0, 42 }, { 13, 42 }, { 26, 42 }, { 39, 42 }, { 52, 42 }, { 65, 42 }, { 79, 42 }, { 92, 42 }, { 105, 42 }, { 118, 42 }, { 131, 42 }, { 144, 42 }, { 171, 42 }, + { 0, 53 }, { 26, 53 }, { 39, 53 }, { 52, 53 }, { 65, 53 }, { 79, 53 }, { 92, 53 }, { 105, 53 }, { 118, 53 }, { 131, 53 }, { 144, 53 }, { 171, 53 }, { 210, 53 }, + { 0, 64 }, { 13, 64 }, { 26, 64 }, { 79, 64 }, { 131, 64 }, { 144, 64 }, { 158, 64 }, { 171, 64 }, { 197, 64 }, { 210, 64 }, { 224, 64 }, // Underglow LED - { 224, 64 }, { 206.77, 64 }, { 189.54, 64 }, { 172.31, 64 }, { 155.08, 64 }, { 137.85, 64 }, { 120.61, 64 }, { 103.38, 64 }, { 86.15, 64 }, { 68.92, 64 }, { 51.69, 64 }, { 34.46, 64 }, { 17.23, 64 }, { 0, 64 }, - { 0, 42.67 }, { 0, 21.33 }, - { 0, 0 }, { 17.23, 0 }, { 34.46, 0 }, { 51.69, 0 }, { 68.92, 0 }, { 86.15, 0 }, { 103.38, 0 }, { 120.61, 0 }, { 137.85, 0 }, { 155.08, 0 }, { 172.31, 0 }, { 189.54, 0 }, { 206.77, 0 }, { 224, 0 }, - { 224, 21.33 }, { 224, 42.67 } + { 224, 64 }, { 206, 64 }, { 189, 64 }, { 172, 64 }, { 155, 64 }, { 137, 64 }, { 120, 64 }, { 103, 64 }, { 86, 64 }, { 68, 64 }, { 51, 64 }, { 34, 64 }, { 17, 64 }, { 0, 64 }, + { 0, 42 }, { 0, 21 }, + { 0, 0 }, { 17, 0 }, { 34, 0 }, { 51, 0 }, { 68, 0 }, { 86, 0 }, { 103, 0 }, { 120, 0 }, { 137, 0 }, { 155, 0 }, { 172, 0 }, { 189, 0 }, { 206, 0 }, { 224, 0 }, + { 224, 21 }, { 224, 42 } }, { // LED Index to Flag //Key LED diff --git a/keyboards/kbdfans/kbd75rgb/kbd75rgb.c b/keyboards/kbdfans/kbd75rgb/kbd75rgb.c index 8e39dad6d23..622ca83b681 100644 --- a/keyboards/kbdfans/kbd75rgb/kbd75rgb.c +++ b/keyboards/kbdfans/kbd75rgb/kbd75rgb.c @@ -26,10 +26,10 @@ led_config_t g_led_config = { { { 83, 82, 81, NO_LED, NO_LED, 80, NO_LED, NO_LED, 79, 78, 77, 76, NO_LED,75 ,74} }, { {0, 0}, {15, 0}, {30, 0},{45, 0}, {60, 0}, {75, 0}, {90, 0}, {105, 0}, {120, 0}, {135, 0}, {150, 0}, {165, 0}, {180, 0}, {195, 0}, {210, 0}, {224, 0}, - {224, 12.8}, {218, 12.8},{192, 12.8},{176, 12.8},{160, 12.8},{144, 12.8},{128, 12.8},{112, 12.8},{96, 12.8},{80, 12.8},{64, 12.8},{48, 12.8},{32, 12.8},{16, 12.8},{0, 12.8}, - {0, 25.6},{16, 25.6}, {32, 25.6}, {48, 25.6}, {64, 25.6}, {80, 25.6}, {96, 25.6}, {112, 25.6}, {128, 25.6}, {144, 25.6}, {160, 25.6},{176, 25.6}, {192, 25.6}, {218, 25.6}, {224, 25.6}, -{224, 38.4},{200, 38.4},{176, 38.4},{160, 38.4},{144, 38.4},{128, 38.4},{112, 38.4},{96, 38.4},{80, 38.4},{64, 38.4},{48, 38.4},{32, 38.4},{16, 38.4},{0, 38.4}, - {0, 51.2},{16, 51.2}, {32, 51.2}, {48, 51.2}, {64, 51.2}, {80, 51.2}, {96, 51.2}, {112, 51.2}, {128, 51.2}, {144, 51.2}, {160, 51.2}, {189, 51.2}, {218, 51.2}, {224, 51.2}, + {224, 12}, {218, 12},{192, 12},{176, 12},{160, 12},{144, 12},{128, 12},{112, 12},{96, 12},{80, 12},{64, 12},{48, 12},{32, 12},{16, 12},{0, 12}, + {0, 25},{16, 25}, {32, 25}, {48, 25}, {64, 25}, {80, 25}, {96, 25}, {112, 25}, {128, 25}, {144, 25}, {160, 25},{176, 25}, {192, 25}, {218, 25}, {224, 25}, +{224, 38},{200, 38},{176, 38},{160, 38},{144, 38},{128, 38},{112, 38},{96, 38},{80, 38},{64, 38},{48, 38},{32, 38},{16, 38},{0, 38}, + {0, 51},{16, 51}, {32, 51}, {48, 51}, {64, 51}, {80, 51}, {96, 51}, {112, 51}, {128, 51}, {144, 51}, {160, 51}, {189, 51}, {218, 51}, {224, 51}, {224, 64},{218, 64},{192, 64},{176, 64},{160, 64},{144, 64}, {80, 64}, {32, 64},{16, 64},{0, 64} }, { 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, diff --git a/keyboards/kbdfans/kbdpad/mk3/keyboard.json b/keyboards/kbdfans/kbdpad/mk3/keyboard.json index 735dd3e4ef4..7c741f7633a 100644 --- a/keyboards/kbdfans/kbdpad/mk3/keyboard.json +++ b/keyboards/kbdfans/kbdpad/mk3/keyboard.json @@ -65,23 +65,23 @@ {"flags": 4, "matrix": [0, 1], "x": 75, "y": 0}, {"flags": 4, "matrix": [0, 2], "x": 150, "y": 0}, {"flags": 4, "matrix": [0, 3], "x": 224, "y": 0}, - {"flags": 4, "matrix": [1, 3], "x": 224, "y": 12.8}, - {"flags": 4, "matrix": [1, 2], "x": 150, "y": 12.8}, - {"flags": 4, "matrix": [1, 1], "x": 75, "y": 12.8}, - {"flags": 4, "matrix": [1, 0], "x": 0, "y": 12.8}, - {"flags": 4, "matrix": [2, 0], "x": 0, "y": 25.6}, - {"flags": 4, "matrix": [2, 1], "x": 75, "y": 25.6}, - {"flags": 4, "matrix": [2, 2], "x": 150, "y": 25.6}, + {"flags": 4, "matrix": [1, 3], "x": 224, "y": 12}, + {"flags": 4, "matrix": [1, 2], "x": 150, "y": 12}, + {"flags": 4, "matrix": [1, 1], "x": 75, "y": 12}, + {"flags": 4, "matrix": [1, 0], "x": 0, "y": 12}, + {"flags": 4, "matrix": [2, 0], "x": 0, "y": 25}, + {"flags": 4, "matrix": [2, 1], "x": 75, "y": 25}, + {"flags": 4, "matrix": [2, 2], "x": 150, "y": 25}, {"flags": 4, "matrix": [2, 3], "x": 224, "y": 32}, - {"flags": 4, "matrix": [3, 2], "x": 150, "y": 38.4}, - {"flags": 4, "matrix": [3, 1], "x": 75, "y": 38.4}, - {"flags": 4, "matrix": [3, 0], "x": 0, "y": 38.4}, - {"flags": 4, "matrix": [4, 0], "x": 0, "y": 51.2}, - {"flags": 4, "matrix": [4, 1], "x": 75, "y": 51.2}, - {"flags": 4, "matrix": [4, 2], "x": 150, "y": 51.24}, - {"flags": 4, "matrix": [4, 3], "x": 224, "y": 57.6}, + {"flags": 4, "matrix": [3, 2], "x": 150, "y": 38}, + {"flags": 4, "matrix": [3, 1], "x": 75, "y": 38}, + {"flags": 4, "matrix": [3, 0], "x": 0, "y": 38}, + {"flags": 4, "matrix": [4, 0], "x": 0, "y": 51}, + {"flags": 4, "matrix": [4, 1], "x": 75, "y": 51}, + {"flags": 4, "matrix": [4, 2], "x": 150, "y": 51}, + {"flags": 4, "matrix": [4, 3], "x": 224, "y": 57}, {"flags": 4, "matrix": [5, 2], "x": 150, "y": 64}, - {"flags": 4, "matrix": [5, 0], "x": 37.5, "y": 64} + {"flags": 4, "matrix": [5, 0], "x": 37, "y": 64} ], "max_brightness": 128, "sleep": true diff --git a/keyboards/keebio/bamfk4/bamfk4.c b/keyboards/keebio/bamfk4/bamfk4.c index 52fe61e39e9..757bc03f722 100644 --- a/keyboards/keebio/bamfk4/bamfk4.c +++ b/keyboards/keebio/bamfk4/bamfk4.c @@ -10,16 +10,16 @@ led_config_t g_led_config = { { }, { // LED Index to Physical Position //through switch - { 26.6, 10 }, { 4.3, 10 }, { 3.8, 49.3 }, { 23.3, 49.3 }, - { 69.4, 49.3 }, { 68.9, 10 }, { 90.6, 10 }, { 89.5, 49.3 }, - { 134, 49.3 }, { 132.9, 10 }, { 155.7, 10 }, { 155.1, 49.3 }, - { 199.6, 49.3 }, { 199.6, 10 }, { 219.1, 10 }, { 219.1, 49.3 }, + { 26, 10 }, { 4, 10 }, { 3, 49 }, { 23, 49 }, + { 69, 49 }, { 68, 10 }, { 90, 10 }, { 89, 49 }, + { 134, 49 }, { 132, 10 }, { 155, 10 }, { 155, 49 }, + { 199, 49 }, { 199, 10 }, { 219, 10 }, { 219, 49 }, //underglow - { 218, 62.2 }, { 188.7, 62.2 }, { 159.5, 62.2 }, { 123.7, 62.2 }, //bottom right - { 100.3, 62.2 }, { 59.1, 62.2 }, { 35.3, 62.2 }, { 5.4, 62.2 }, //bottom left - { 6, 6.4 }, { 35.3, 6.4 }, { 59.1, 6.4 }, { 100.3, 6.4 }, //top left - { 123.7, 6.4 }, { 159.5, 6.4 }, { 188.7, 6.4 }, { 218, 6.4 } //top right + { 218, 62 }, { 188, 62 }, { 159, 62 }, { 123, 62 }, //bottom right + { 100, 62 }, { 59, 62 }, { 35, 62 }, { 5, 62 }, //bottom left + { 6, 6 }, { 35, 6 }, { 59, 6 }, { 100, 6 }, //top left + { 123, 6 }, { 159, 6 }, { 188, 6 }, { 218, 6 } //top right }, { // LED Index to Flag 4, 4, 4, 4, diff --git a/keyboards/meletrix/zoom98/keyboard.json b/keyboards/meletrix/zoom98/keyboard.json index e58d80f216e..b7d56729503 100644 --- a/keyboards/meletrix/zoom98/keyboard.json +++ b/keyboards/meletrix/zoom98/keyboard.json @@ -78,17 +78,17 @@ { "matrix": [6, 2], "x": 0, "y": 3, "flags": 4 }, { "matrix": [8, 1], "x": 0, "y": 4, "flags": 4 }, { "matrix": [8, 2], "x": 0, "y": 4, "flags": 4 }, - { "matrix": [1, 8], "x": 20.5, "y": 0, "flags": 4 }, - { "matrix": [1, 7], "x": 20.5, "y": 0, "flags": 4 }, - { "matrix": [3, 8], "x": 20.5, "y": 1, "flags": 4 }, - { "matrix": [3, 7], "x": 20.5, "y": 1, "flags": 4 }, - { "matrix": [5, 8], "x": 20.5, "y": 2, "flags": 4 }, - { "matrix": [5, 7], "x": 20.5, "y": 2, "flags": 4 }, - { "matrix": [7, 8], "x": 20.5, "y": 3, "flags": 4 }, - { "matrix": [7, 7], "x": 20.5, "y": 3, "flags": 4 }, - { "matrix": [9, 8], "x": 20.5, "y": 4, "flags": 4 }, - { "matrix": [9, 7], "x": 20.5, "y": 4, "flags": 4 }, - { "matrix": [6, 0], "x": 0, "y": 3.25, "flags": 1 } + { "matrix": [1, 8], "x": 20, "y": 0, "flags": 4 }, + { "matrix": [1, 7], "x": 20, "y": 0, "flags": 4 }, + { "matrix": [3, 8], "x": 20, "y": 1, "flags": 4 }, + { "matrix": [3, 7], "x": 20, "y": 1, "flags": 4 }, + { "matrix": [5, 8], "x": 20, "y": 2, "flags": 4 }, + { "matrix": [5, 7], "x": 20, "y": 2, "flags": 4 }, + { "matrix": [7, 8], "x": 20, "y": 3, "flags": 4 }, + { "matrix": [7, 7], "x": 20, "y": 3, "flags": 4 }, + { "matrix": [9, 8], "x": 20, "y": 4, "flags": 4 }, + { "matrix": [9, 7], "x": 20, "y": 4, "flags": 4 }, + { "matrix": [6, 0], "x": 0, "y": 3, "flags": 1 } ] }, "matrix_pins": { diff --git a/keyboards/projectd/65/projectd_65_ansi/keyboard.json b/keyboards/projectd/65/projectd_65_ansi/keyboard.json index 5d75389e2a0..32a95f965eb 100644 --- a/keyboards/projectd/65/projectd_65_ansi/keyboard.json +++ b/keyboards/projectd/65/projectd_65_ansi/keyboard.json @@ -118,43 +118,43 @@ { "flags": 4, "matrix": [7, 5], "x": 135, "y": 10 }, { "flags": 4, "matrix": [7, 3], "x": 150, "y": 10 }, { "flags": 1, "matrix": [2, 1], "x": 0, "y": 20 }, - { "flags": 4, "matrix": [1, 2], "x": 17.5, "y": 20 }, - { "flags": 4, "matrix": [2, 2], "x": 27.5, "y": 20 }, - { "flags": 4, "matrix": [3, 2], "x": 37.5, "y": 20 }, - { "flags": 4, "matrix": [4, 2], "x": 47.5, "y": 20 }, - { "flags": 4, "matrix": [4, 3], "x": 57.5, "y": 20 }, - { "flags": 4, "matrix": [5, 3], "x": 67.5, "y": 20 }, - { "flags": 4, "matrix": [5, 2], "x": 77.5, "y": 20 }, - { "flags": 4, "matrix": [6, 2], "x": 87.5, "y": 20 }, - { "flags": 4, "matrix": [7, 2], "x": 97.5, "y": 20 }, - { "flags": 4, "matrix": [8, 2], "x": 107.5, "y": 20 }, - { "flags": 4, "matrix": [8, 3], "x": 117.5, "y": 20 }, - { "flags": 4, "matrix": [8, 4], "x": 127.5, "y": 20 }, + { "flags": 4, "matrix": [1, 2], "x": 17, "y": 20 }, + { "flags": 4, "matrix": [2, 2], "x": 27, "y": 20 }, + { "flags": 4, "matrix": [3, 2], "x": 37, "y": 20 }, + { "flags": 4, "matrix": [4, 2], "x": 47, "y": 20 }, + { "flags": 4, "matrix": [4, 3], "x": 57, "y": 20 }, + { "flags": 4, "matrix": [5, 3], "x": 67, "y": 20 }, + { "flags": 4, "matrix": [5, 2], "x": 77, "y": 20 }, + { "flags": 4, "matrix": [6, 2], "x": 87, "y": 20 }, + { "flags": 4, "matrix": [7, 2], "x": 97, "y": 20 }, + { "flags": 4, "matrix": [8, 2], "x": 107, "y": 20 }, + { "flags": 4, "matrix": [8, 3], "x": 117, "y": 20 }, + { "flags": 4, "matrix": [8, 4], "x": 127, "y": 20 }, { "flags": 4, "matrix": [2, 6], "x": 150, "y": 20 }, { "flags": 4, "matrix": [0, 0], "x": 0, "y": 30 }, - { "flags": 4, "matrix": [1, 4], "x": 22.5, "y": 30 }, - { "flags": 4, "matrix": [2, 4], "x": 32.5, "y": 30 }, - { "flags": 4, "matrix": [3, 4], "x": 42.5, "y": 30 }, - { "flags": 4, "matrix": [4, 4], "x": 52.5, "y": 30 }, - { "flags": 4, "matrix": [4, 5], "x": 62.5, "y": 30 }, - { "flags": 4, "matrix": [5, 5], "x": 72.5, "y": 30 }, - { "flags": 4, "matrix": [5, 4], "x": 82.5, "y": 30 }, - { "flags": 4, "matrix": [6, 4], "x": 92.5, "y": 30 }, - { "flags": 4, "matrix": [7, 4], "x": 102.5, "y": 30 }, - { "flags": 4, "matrix": [8, 5], "x": 112.5, "y": 30 }, - { "flags": 4, "matrix": [0, 7], "x": 122.5, "y": 30 }, + { "flags": 4, "matrix": [1, 4], "x": 22, "y": 30 }, + { "flags": 4, "matrix": [2, 4], "x": 32, "y": 30 }, + { "flags": 4, "matrix": [3, 4], "x": 42, "y": 30 }, + { "flags": 4, "matrix": [4, 4], "x": 52, "y": 30 }, + { "flags": 4, "matrix": [4, 5], "x": 62, "y": 30 }, + { "flags": 4, "matrix": [5, 5], "x": 72, "y": 30 }, + { "flags": 4, "matrix": [5, 4], "x": 82, "y": 30 }, + { "flags": 4, "matrix": [6, 4], "x": 92, "y": 30 }, + { "flags": 4, "matrix": [7, 4], "x": 102, "y": 30 }, + { "flags": 4, "matrix": [8, 5], "x": 112, "y": 30 }, + { "flags": 4, "matrix": [0, 7], "x": 122, "y": 30 }, { "flags": 4, "matrix": [1, 6], "x": 140, "y": 30 }, { "flags": 4, "matrix": [6, 3], "x": 150, "y": 30 }, { "flags": 4, "matrix": [0, 6], "x": 0, "y": 40 }, - { "flags": 4, "matrix": [0, 5], "x": 12.5, "y": 40 }, + { "flags": 4, "matrix": [0, 5], "x": 12, "y": 40 }, { "flags": 4, "matrix": [0, 2], "x": 25, "y": 40 }, - { "flags": 4, "x": 61.5, "y": 40 }, - { "flags": 4, "x": 62.5, "y": 40 }, + { "flags": 4, "x": 61, "y": 40 }, + { "flags": 4, "x": 62, "y": 40 }, { "flags": 4, "matrix": [0, 1], "x": 65, "y": 40 }, - { "flags": 4, "x": 67.5, "y": 40 }, - { "flags": 4, "x": 68.5, "y": 40 }, + { "flags": 4, "x": 67, "y": 40 }, + { "flags": 4, "x": 68, "y": 40 }, { "flags": 4, "matrix": [3, 6], "x": 100, "y": 40 }, - { "flags": 4, "matrix": [3, 3], "x": 112.5, "y": 40 }, + { "flags": 4, "matrix": [3, 3], "x": 112, "y": 40 }, { "flags": 4, "matrix": [0, 3], "x": 130, "y": 40 }, { "flags": 4, "matrix": [1, 5], "x": 140, "y": 40 }, { "flags": 4, "matrix": [2, 5], "x": 150, "y": 40 } diff --git a/keyboards/projectd/75/ansi/keyboard.json b/keyboards/projectd/75/ansi/keyboard.json index 2296c639373..d94db22bfc0 100644 --- a/keyboards/projectd/75/ansi/keyboard.json +++ b/keyboards/projectd/75/ansi/keyboard.json @@ -88,97 +88,97 @@ "driver": "aw20216s", "layout": [ { "flags": 4, "matrix": [1, 3], "x": 0, "y": 0 }, - { "flags": 4, "matrix": [2, 6], "x": 12.5, "y": 0 }, - { "flags": 4, "matrix": [3, 6], "x": 22.5, "y": 0 }, - { "flags": 4, "matrix": [3, 1], "x": 32.5, "y": 0 }, - { "flags": 4, "matrix": [3, 3], "x": 42.5, "y": 0 }, + { "flags": 4, "matrix": [2, 6], "x": 12, "y": 0 }, + { "flags": 4, "matrix": [3, 6], "x": 22, "y": 0 }, + { "flags": 4, "matrix": [3, 1], "x": 32, "y": 0 }, + { "flags": 4, "matrix": [3, 3], "x": 42, "y": 0 }, { "flags": 4, "matrix": [0, 7], "x": 55, "y": 0 }, { "flags": 4, "matrix": [6, 3], "x": 65, "y": 0 }, { "flags": 4, "matrix": [7, 1], "x": 75, "y": 0 }, { "flags": 4, "matrix": [7, 6], "x": 85, "y": 0 }, - { "flags": 4, "matrix": [10, 6], "x": 97.5, "y": 0 }, - { "flags": 4, "matrix": [10, 7], "x": 107.5, "y": 0 }, - { "flags": 4, "matrix": [10, 3], "x": 117.5, "y": 0 }, - { "flags": 4, "matrix": [10, 5], "x": 127.5, "y": 0 }, + { "flags": 4, "matrix": [10, 6], "x": 97, "y": 0 }, + { "flags": 4, "matrix": [10, 7], "x": 107, "y": 0 }, + { "flags": 4, "matrix": [10, 3], "x": 117, "y": 0 }, + { "flags": 4, "matrix": [10, 5], "x": 127, "y": 0 }, { "flags": 4, "matrix": [9, 7], "x": 140, "y": 0 }, { "flags": 4, "matrix": [6, 5], "x": 155, "y": 0 }, - { "flags": 4, "matrix": [1, 6], "x": 0, "y": 12.5 }, - { "flags": 4, "matrix": [1, 7], "x": 10, "y": 12.5 }, - { "flags": 4, "matrix": [2, 7], "x": 20, "y": 12.5 }, - { "flags": 4, "matrix": [3, 7], "x": 30, "y": 12.5 }, - { "flags": 4, "matrix": [4, 7], "x": 40, "y": 12.5 }, - { "flags": 4, "matrix": [4, 6], "x": 50, "y": 12.5 }, - { "flags": 4, "matrix": [5, 6], "x": 60, "y": 12.5 }, - { "flags": 4, "matrix": [5, 7], "x": 70, "y": 12.5 }, - { "flags": 4, "matrix": [6, 7], "x": 80, "y": 12.5 }, - { "flags": 4, "matrix": [7, 7], "x": 90, "y": 12.5 }, - { "flags": 4, "matrix": [8, 7], "x": 100, "y": 12.5 }, - { "flags": 4, "matrix": [8, 6], "x": 110, "y": 12.5 }, - { "flags": 4, "matrix": [6, 6], "x": 120, "y": 12.5 }, - { "flags": 4, "matrix": [10, 1], "x": 130, "y": 12.5 }, - { "flags": 4, "matrix": [0, 2], "x": 155, "y": 12.5 }, + { "flags": 4, "matrix": [1, 6], "x": 0, "y": 12 }, + { "flags": 4, "matrix": [1, 7], "x": 10, "y": 12 }, + { "flags": 4, "matrix": [2, 7], "x": 20, "y": 12 }, + { "flags": 4, "matrix": [3, 7], "x": 30, "y": 12 }, + { "flags": 4, "matrix": [4, 7], "x": 40, "y": 12 }, + { "flags": 4, "matrix": [4, 6], "x": 50, "y": 12 }, + { "flags": 4, "matrix": [5, 6], "x": 60, "y": 12 }, + { "flags": 4, "matrix": [5, 7], "x": 70, "y": 12 }, + { "flags": 4, "matrix": [6, 7], "x": 80, "y": 12 }, + { "flags": 4, "matrix": [7, 7], "x": 90, "y": 12 }, + { "flags": 4, "matrix": [8, 7], "x": 100, "y": 12 }, + { "flags": 4, "matrix": [8, 6], "x": 110, "y": 12 }, + { "flags": 4, "matrix": [6, 6], "x": 120, "y": 12 }, + { "flags": 4, "matrix": [10, 1], "x": 130, "y": 12 }, + { "flags": 4, "matrix": [0, 2], "x": 155, "y": 12 }, - { "flags": 4, "matrix": [1, 1], "x": 0, "y": 22.5 }, - { "flags": 4, "matrix": [1, 0], "x": 15, "y": 22.5 }, - { "flags": 4, "matrix": [2, 0], "x": 25, "y": 22.5 }, - { "flags": 4, "matrix": [3, 0], "x": 35, "y": 22.5 }, - { "flags": 4, "matrix": [4, 0], "x": 45, "y": 22.5 }, - { "flags": 4, "matrix": [4, 1], "x": 55, "y": 22.5 }, - { "flags": 4, "matrix": [5, 1], "x": 65, "y": 22.5 }, - { "flags": 4, "matrix": [5, 0], "x": 75, "y": 22.5 }, - { "flags": 4, "matrix": [6, 0], "x": 85, "y": 22.5 }, - { "flags": 4, "matrix": [7, 0], "x": 95, "y": 22.5 }, - { "flags": 4, "matrix": [8, 0], "x": 105, "y": 22.5 }, - { "flags": 4, "matrix": [8, 1], "x": 115, "y": 22.5 }, - { "flags": 4, "matrix": [6, 1], "x": 125, "y": 22.5 }, - { "flags": 4, "matrix": [10, 2], "x": 135, "y": 22.5 }, - { "flags": 4, "matrix": [1, 5], "x": 155, "y": 22.5 }, + { "flags": 4, "matrix": [1, 1], "x": 0, "y": 22 }, + { "flags": 4, "matrix": [1, 0], "x": 15, "y": 22 }, + { "flags": 4, "matrix": [2, 0], "x": 25, "y": 22 }, + { "flags": 4, "matrix": [3, 0], "x": 35, "y": 22 }, + { "flags": 4, "matrix": [4, 0], "x": 45, "y": 22 }, + { "flags": 4, "matrix": [4, 1], "x": 55, "y": 22 }, + { "flags": 4, "matrix": [5, 1], "x": 65, "y": 22 }, + { "flags": 4, "matrix": [5, 0], "x": 75, "y": 22 }, + { "flags": 4, "matrix": [6, 0], "x": 85, "y": 22 }, + { "flags": 4, "matrix": [7, 0], "x": 95, "y": 22 }, + { "flags": 4, "matrix": [8, 0], "x": 105, "y": 22 }, + { "flags": 4, "matrix": [8, 1], "x": 115, "y": 22 }, + { "flags": 4, "matrix": [6, 1], "x": 125, "y": 22 }, + { "flags": 4, "matrix": [10, 2], "x": 135, "y": 22 }, + { "flags": 4, "matrix": [1, 5], "x": 155, "y": 22 }, - { "flags": 8, "matrix": [2, 1], "x": 0, "y": 32.5 }, - { "flags": 4, "matrix": [1, 2], "x": 17.5, "y": 32.5 }, - { "flags": 4, "matrix": [2, 2], "x": 27.5, "y": 32.5 }, - { "flags": 4, "matrix": [3, 2], "x": 37.5, "y": 32.5 }, - { "flags": 4, "matrix": [4, 2], "x": 47.5, "y": 32.5 }, - { "flags": 4, "matrix": [4, 3], "x": 57.5, "y": 32.5 }, - { "flags": 4, "matrix": [5, 3], "x": 67.5, "y": 32.5 }, - { "flags": 4, "matrix": [5, 2], "x": 77.5, "y": 32.5 }, - { "flags": 4, "matrix": [6, 2], "x": 87.5, "y": 32.5 }, - { "flags": 4, "matrix": [7, 2], "x": 97.5, "y": 32.5 }, - { "flags": 4, "matrix": [8, 2], "x": 107.5, "y": 32.5 }, - { "flags": 4, "matrix": [8, 3], "x": 117.5, "y": 32.5 }, - { "flags": 4, "matrix": [10, 4], "x": 127.5, "y": 32.5 }, - { "flags": 4, "matrix": [2, 5], "x": 155, "y": 32.5 }, + { "flags": 8, "matrix": [2, 1], "x": 0, "y": 32 }, + { "flags": 4, "matrix": [1, 2], "x": 17, "y": 32 }, + { "flags": 4, "matrix": [2, 2], "x": 27, "y": 32 }, + { "flags": 4, "matrix": [3, 2], "x": 37, "y": 32 }, + { "flags": 4, "matrix": [4, 2], "x": 47, "y": 32 }, + { "flags": 4, "matrix": [4, 3], "x": 57, "y": 32 }, + { "flags": 4, "matrix": [5, 3], "x": 67, "y": 32 }, + { "flags": 4, "matrix": [5, 2], "x": 77, "y": 32 }, + { "flags": 4, "matrix": [6, 2], "x": 87, "y": 32 }, + { "flags": 4, "matrix": [7, 2], "x": 97, "y": 32 }, + { "flags": 4, "matrix": [8, 2], "x": 107, "y": 32 }, + { "flags": 4, "matrix": [8, 3], "x": 117, "y": 32 }, + { "flags": 4, "matrix": [10, 4], "x": 127, "y": 32 }, + { "flags": 4, "matrix": [2, 5], "x": 155, "y": 32 }, - { "flags": 4, "matrix": [0, 0], "x": 0, "y": 42.5 }, - { "flags": 4, "matrix": [1, 4], "x": 22.5, "y": 42.5 }, - { "flags": 4, "matrix": [2, 4], "x": 32.5, "y": 42.5 }, - { "flags": 4, "matrix": [3, 4], "x": 42.5, "y": 42.5 }, - { "flags": 4, "matrix": [4, 4], "x": 52.5, "y": 42.5 }, - { "flags": 4, "matrix": [4, 5], "x": 62.5, "y": 42.5 }, - { "flags": 4, "matrix": [5, 5], "x": 72.5, "y": 42.5 }, - { "flags": 4, "matrix": [5, 4], "x": 82.5, "y": 42.5 }, - { "flags": 4, "matrix": [6, 4], "x": 92.5, "y": 42.5 }, - { "flags": 4, "matrix": [7, 4], "x": 102.5, "y": 42.5 }, - { "flags": 4, "matrix": [8, 5], "x": 112.5, "y": 42.5 }, - { "flags": 4, "matrix": [9, 1], "x": 122.5, "y": 42.5 }, - { "flags": 4, "matrix": [3, 5], "x": 142.5, "y": 45 }, - { "flags": 4, "matrix": [7, 5], "x": 155, "y": 42.5 }, + { "flags": 4, "matrix": [0, 0], "x": 0, "y": 42 }, + { "flags": 4, "matrix": [1, 4], "x": 22, "y": 42 }, + { "flags": 4, "matrix": [2, 4], "x": 32, "y": 42 }, + { "flags": 4, "matrix": [3, 4], "x": 42, "y": 42 }, + { "flags": 4, "matrix": [4, 4], "x": 52, "y": 42 }, + { "flags": 4, "matrix": [4, 5], "x": 62, "y": 42 }, + { "flags": 4, "matrix": [5, 5], "x": 72, "y": 42 }, + { "flags": 4, "matrix": [5, 4], "x": 82, "y": 42 }, + { "flags": 4, "matrix": [6, 4], "x": 92, "y": 42 }, + { "flags": 4, "matrix": [7, 4], "x": 102, "y": 42 }, + { "flags": 4, "matrix": [8, 5], "x": 112, "y": 42 }, + { "flags": 4, "matrix": [9, 1], "x": 122, "y": 42 }, + { "flags": 4, "matrix": [3, 5], "x": 142, "y": 45 }, + { "flags": 4, "matrix": [7, 5], "x": 155, "y": 42 }, - { "flags": 4, "matrix": [0, 6], "x": 0, "y": 52.5 }, - { "flags": 4, "matrix": [9, 0], "x": 12.5, "y": 52.5 }, - { "flags": 4, "matrix": [9, 3], "x": 25, "y": 52.5 }, - { "flags": 4, "x": 61.5, "y": 52.5 }, - { "flags": 4, "x": 62.5, "y": 52.5 }, - { "flags": 4, "matrix": [9, 4], "x": 65, "y": 52.5 }, - { "flags": 4, "x": 67.5, "y": 52.5 }, - { "flags": 4, "x": 68.5, "y": 52.5 }, - { "flags": 4, "matrix": [9, 5], "x": 100, "y": 52.5 }, - { "flags": 4, "matrix": [9, 2], "x": 110, "y": 52.5 }, - { "flags": 4, "matrix": [0, 4], "x": 120, "y": 52.5 }, - { "flags": 4, "matrix": [0, 3], "x": 132.5, "y": 52.5 }, - { "flags": 4, "matrix": [7, 3], "x": 142.5, "y": 52.5 }, - { "flags": 4, "matrix": [0, 5], "x": 152.5, "y": 52.5 } + { "flags": 4, "matrix": [0, 6], "x": 0, "y": 52 }, + { "flags": 4, "matrix": [9, 0], "x": 12, "y": 52 }, + { "flags": 4, "matrix": [9, 3], "x": 25, "y": 52 }, + { "flags": 4, "x": 61, "y": 52 }, + { "flags": 4, "x": 62, "y": 52 }, + { "flags": 4, "matrix": [9, 4], "x": 65, "y": 52 }, + { "flags": 4, "x": 67, "y": 52 }, + { "flags": 4, "x": 68, "y": 52 }, + { "flags": 4, "matrix": [9, 5], "x": 100, "y": 52 }, + { "flags": 4, "matrix": [9, 2], "x": 110, "y": 52 }, + { "flags": 4, "matrix": [0, 4], "x": 120, "y": 52 }, + { "flags": 4, "matrix": [0, 3], "x": 132, "y": 52 }, + { "flags": 4, "matrix": [7, 3], "x": 142, "y": 52 }, + { "flags": 4, "matrix": [0, 5], "x": 152, "y": 52 } ], "sleep": true }, diff --git a/keyboards/projectd/75/iso/keyboard.json b/keyboards/projectd/75/iso/keyboard.json index d8615000316..d42e8c4b339 100644 --- a/keyboards/projectd/75/iso/keyboard.json +++ b/keyboards/projectd/75/iso/keyboard.json @@ -82,98 +82,98 @@ "sleep": true, "layout": [ { "flags": 4, "matrix": [1, 3], "x": 0, "y": 0 }, - { "flags": 4, "matrix": [2, 6], "x": 12.5, "y": 0 }, - { "flags": 4, "matrix": [3, 6], "x": 22.5, "y": 0 }, - { "flags": 4, "matrix": [3, 1], "x": 32.5, "y": 0 }, - { "flags": 4, "matrix": [3, 3], "x": 42.5, "y": 0 }, + { "flags": 4, "matrix": [2, 6], "x": 12, "y": 0 }, + { "flags": 4, "matrix": [3, 6], "x": 22, "y": 0 }, + { "flags": 4, "matrix": [3, 1], "x": 32, "y": 0 }, + { "flags": 4, "matrix": [3, 3], "x": 42, "y": 0 }, { "flags": 4, "matrix": [0, 7], "x": 55, "y": 0 }, { "flags": 4, "matrix": [6, 3], "x": 65, "y": 0 }, { "flags": 4, "matrix": [7, 1], "x": 75, "y": 0 }, { "flags": 4, "matrix": [7, 6], "x": 85, "y": 0 }, - { "flags": 4, "matrix": [10, 6], "x": 97.5, "y": 0 }, - { "flags": 4, "matrix": [10, 7], "x": 107.5, "y": 0 }, - { "flags": 4, "matrix": [10, 3], "x": 117.5, "y": 0 }, - { "flags": 4, "matrix": [10, 5], "x": 127.5, "y": 0 }, + { "flags": 4, "matrix": [10, 6], "x": 97, "y": 0 }, + { "flags": 4, "matrix": [10, 7], "x": 107, "y": 0 }, + { "flags": 4, "matrix": [10, 3], "x": 117, "y": 0 }, + { "flags": 4, "matrix": [10, 5], "x": 127, "y": 0 }, { "flags": 4, "matrix": [9, 7], "x": 140, "y": 0 }, { "flags": 4, "matrix": [6, 5], "x": 155, "y": 0 }, - { "flags": 4, "matrix": [1, 6], "x": 0, "y": 12.5 }, - { "flags": 4, "matrix": [1, 7], "x": 10, "y": 12.5 }, - { "flags": 4, "matrix": [2, 7], "x": 20, "y": 12.5 }, - { "flags": 4, "matrix": [3, 7], "x": 30, "y": 12.5 }, - { "flags": 4, "matrix": [4, 7], "x": 40, "y": 12.5 }, - { "flags": 4, "matrix": [4, 6], "x": 50, "y": 12.5 }, - { "flags": 4, "matrix": [5, 6], "x": 60, "y": 12.5 }, - { "flags": 4, "matrix": [5, 7], "x": 70, "y": 12.5 }, - { "flags": 4, "matrix": [6, 7], "x": 80, "y": 12.5 }, - { "flags": 4, "matrix": [7, 7], "x": 90, "y": 12.5 }, - { "flags": 4, "matrix": [8, 7], "x": 100, "y": 12.5 }, - { "flags": 4, "matrix": [8, 6], "x": 110, "y": 12.5 }, - { "flags": 4, "matrix": [6, 6], "x": 120, "y": 12.5 }, - { "flags": 4, "matrix": [10, 1], "x": 130, "y": 12.5 }, - { "flags": 4, "matrix": [0, 2], "x": 155, "y": 12.5 }, + { "flags": 4, "matrix": [1, 6], "x": 0, "y": 12 }, + { "flags": 4, "matrix": [1, 7], "x": 10, "y": 12 }, + { "flags": 4, "matrix": [2, 7], "x": 20, "y": 12 }, + { "flags": 4, "matrix": [3, 7], "x": 30, "y": 12 }, + { "flags": 4, "matrix": [4, 7], "x": 40, "y": 12 }, + { "flags": 4, "matrix": [4, 6], "x": 50, "y": 12 }, + { "flags": 4, "matrix": [5, 6], "x": 60, "y": 12 }, + { "flags": 4, "matrix": [5, 7], "x": 70, "y": 12 }, + { "flags": 4, "matrix": [6, 7], "x": 80, "y": 12 }, + { "flags": 4, "matrix": [7, 7], "x": 90, "y": 12 }, + { "flags": 4, "matrix": [8, 7], "x": 100, "y": 12 }, + { "flags": 4, "matrix": [8, 6], "x": 110, "y": 12 }, + { "flags": 4, "matrix": [6, 6], "x": 120, "y": 12 }, + { "flags": 4, "matrix": [10, 1], "x": 130, "y": 12 }, + { "flags": 4, "matrix": [0, 2], "x": 155, "y": 12 }, - { "flags": 4, "matrix": [1, 1], "x": 0, "y": 22.5 }, - { "flags": 4, "matrix": [1, 0], "x": 15, "y": 22.5 }, - { "flags": 4, "matrix": [2, 0], "x": 25, "y": 22.5 }, - { "flags": 4, "matrix": [3, 0], "x": 35, "y": 22.5 }, - { "flags": 4, "matrix": [4, 0], "x": 45, "y": 22.5 }, - { "flags": 4, "matrix": [4, 1], "x": 55, "y": 22.5 }, - { "flags": 4, "matrix": [5, 1], "x": 65, "y": 22.5 }, - { "flags": 4, "matrix": [5, 0], "x": 75, "y": 22.5 }, - { "flags": 4, "matrix": [6, 0], "x": 85, "y": 22.5 }, - { "flags": 4, "matrix": [7, 0], "x": 95, "y": 22.5 }, - { "flags": 4, "matrix": [8, 0], "x": 105, "y": 22.5 }, - { "flags": 4, "matrix": [8, 1], "x": 115, "y": 22.5 }, - { "flags": 4, "matrix": [6, 1], "x": 125, "y": 22.5 }, - { "flags": 4, "matrix": [1, 5], "x": 155.5, "y": 22.5 }, + { "flags": 4, "matrix": [1, 1], "x": 0, "y": 22 }, + { "flags": 4, "matrix": [1, 0], "x": 15, "y": 22 }, + { "flags": 4, "matrix": [2, 0], "x": 25, "y": 22 }, + { "flags": 4, "matrix": [3, 0], "x": 35, "y": 22 }, + { "flags": 4, "matrix": [4, 0], "x": 45, "y": 22 }, + { "flags": 4, "matrix": [4, 1], "x": 55, "y": 22 }, + { "flags": 4, "matrix": [5, 1], "x": 65, "y": 22 }, + { "flags": 4, "matrix": [5, 0], "x": 75, "y": 22 }, + { "flags": 4, "matrix": [6, 0], "x": 85, "y": 22 }, + { "flags": 4, "matrix": [7, 0], "x": 95, "y": 22 }, + { "flags": 4, "matrix": [8, 0], "x": 105, "y": 22 }, + { "flags": 4, "matrix": [8, 1], "x": 115, "y": 22 }, + { "flags": 4, "matrix": [6, 1], "x": 125, "y": 22 }, + { "flags": 4, "matrix": [1, 5], "x": 155, "y": 22 }, - { "flags": 8, "matrix": [2, 1], "x": 0, "y": 32.5 }, - { "flags": 4, "matrix": [1, 2], "x": 17.5, "y": 32.5 }, - { "flags": 4, "matrix": [2, 2], "x": 27.5, "y": 32.5 }, - { "flags": 4, "matrix": [3, 2], "x": 37.5, "y": 32.5 }, - { "flags": 4, "matrix": [4, 2], "x": 47.5, "y": 32.5 }, - { "flags": 4, "matrix": [4, 3], "x": 57.5, "y": 32.5 }, - { "flags": 4, "matrix": [5, 3], "x": 67.5, "y": 32.5 }, - { "flags": 4, "matrix": [5, 2], "x": 77.5, "y": 32.5 }, - { "flags": 4, "matrix": [6, 2], "x": 87.5, "y": 32.5 }, - { "flags": 4, "matrix": [7, 2], "x": 97.5, "y": 32.5 }, - { "flags": 4, "matrix": [8, 2], "x": 107.5, "y": 32.5 }, - { "flags": 4, "matrix": [8, 3], "x": 117.5, "y": 32.5 }, - { "flags": 4, "matrix": [10, 2], "x": 127.5, "y": 32.5 }, - { "flags": 4, "matrix": [10, 4], "x": 137.5, "y": 22.5 }, - { "flags": 4, "matrix": [2, 5], "x": 155.5, "y": 32.5 }, + { "flags": 8, "matrix": [2, 1], "x": 0, "y": 32 }, + { "flags": 4, "matrix": [1, 2], "x": 17, "y": 32 }, + { "flags": 4, "matrix": [2, 2], "x": 27, "y": 32 }, + { "flags": 4, "matrix": [3, 2], "x": 37, "y": 32 }, + { "flags": 4, "matrix": [4, 2], "x": 47, "y": 32 }, + { "flags": 4, "matrix": [4, 3], "x": 57, "y": 32 }, + { "flags": 4, "matrix": [5, 3], "x": 67, "y": 32 }, + { "flags": 4, "matrix": [5, 2], "x": 77, "y": 32 }, + { "flags": 4, "matrix": [6, 2], "x": 87, "y": 32 }, + { "flags": 4, "matrix": [7, 2], "x": 97, "y": 32 }, + { "flags": 4, "matrix": [8, 2], "x": 107, "y": 32 }, + { "flags": 4, "matrix": [8, 3], "x": 117, "y": 32 }, + { "flags": 4, "matrix": [10, 2], "x": 127, "y": 32 }, + { "flags": 4, "matrix": [10, 4], "x": 137, "y": 22 }, + { "flags": 4, "matrix": [2, 5], "x": 155, "y": 32 }, - { "flags": 4, "matrix": [0, 0], "x": 0, "y": 42.5 }, - { "flags": 4, "matrix": [0, 1], "x": 12.5, "y": 42.5 }, - { "flags": 4, "matrix": [1, 4], "x": 22.5, "y": 42.5 }, - { "flags": 4, "matrix": [2, 4], "x": 32.5, "y": 42.5 }, - { "flags": 4, "matrix": [3, 4], "x": 42.5, "y": 42.5 }, - { "flags": 4, "matrix": [4, 4], "x": 52.5, "y": 42.5 }, - { "flags": 4, "matrix": [4, 5], "x": 62.5, "y": 42.5 }, - { "flags": 4, "matrix": [5, 5], "x": 72.5, "y": 42.5 }, - { "flags": 4, "matrix": [5, 4], "x": 82.5, "y": 42.5 }, - { "flags": 4, "matrix": [6, 4], "x": 92.5, "y": 42.5 }, - { "flags": 4, "matrix": [7, 4], "x": 102.5, "y": 42.5 }, - { "flags": 4, "matrix": [8, 5], "x": 112.5, "y": 42.5 }, - { "flags": 4, "matrix": [9, 1], "x": 122.5, "y": 42.5 }, - { "flags": 4, "matrix": [3, 5], "x": 142.5, "y": 45 }, - { "flags": 4, "matrix": [7, 5], "x": 155, "y": 42.5 }, + { "flags": 4, "matrix": [0, 0], "x": 0, "y": 42 }, + { "flags": 4, "matrix": [0, 1], "x": 12, "y": 42 }, + { "flags": 4, "matrix": [1, 4], "x": 22, "y": 42 }, + { "flags": 4, "matrix": [2, 4], "x": 32, "y": 42 }, + { "flags": 4, "matrix": [3, 4], "x": 42, "y": 42 }, + { "flags": 4, "matrix": [4, 4], "x": 52, "y": 42 }, + { "flags": 4, "matrix": [4, 5], "x": 62, "y": 42 }, + { "flags": 4, "matrix": [5, 5], "x": 72, "y": 42 }, + { "flags": 4, "matrix": [5, 4], "x": 82, "y": 42 }, + { "flags": 4, "matrix": [6, 4], "x": 92, "y": 42 }, + { "flags": 4, "matrix": [7, 4], "x": 102, "y": 42 }, + { "flags": 4, "matrix": [8, 5], "x": 112, "y": 42 }, + { "flags": 4, "matrix": [9, 1], "x": 122, "y": 42 }, + { "flags": 4, "matrix": [3, 5], "x": 142, "y": 45 }, + { "flags": 4, "matrix": [7, 5], "x": 155, "y": 42 }, - { "flags": 4, "matrix": [0, 6], "x": 0, "y": 52.5 }, - { "flags": 4, "matrix": [9, 0], "x": 12.5, "y": 52.5 }, - { "flags": 4, "matrix": [9, 3], "x": 25, "y": 52.5 }, - { "flags": 4, "x": 61.5, "y": 52.5 }, - { "flags": 4, "x": 62.5, "y": 52.5 }, - { "flags": 4, "matrix": [9, 4], "x": 65, "y": 52.5 }, - { "flags": 4, "x": 67.5, "y": 52.5 }, - { "flags": 4, "x": 68.5, "y": 52.5 }, - { "flags": 4, "matrix": [9, 5], "x": 100, "y": 52.5 }, - { "flags": 4, "matrix": [9, 2], "x": 110, "y": 52.5 }, - { "flags": 4, "matrix": [0, 4], "x": 120, "y": 52.5 }, - { "flags": 4, "matrix": [0, 3], "x": 132.5, "y": 52.5 }, - { "flags": 4, "matrix": [7, 3], "x": 142.5, "y": 52.5 }, - { "flags": 4, "matrix": [0, 5], "x": 152.5, "y": 52.5 } + { "flags": 4, "matrix": [0, 6], "x": 0, "y": 52 }, + { "flags": 4, "matrix": [9, 0], "x": 12, "y": 52 }, + { "flags": 4, "matrix": [9, 3], "x": 25, "y": 52 }, + { "flags": 4, "x": 61, "y": 52 }, + { "flags": 4, "x": 62, "y": 52 }, + { "flags": 4, "matrix": [9, 4], "x": 65, "y": 52 }, + { "flags": 4, "x": 67, "y": 52 }, + { "flags": 4, "x": 68, "y": 52 }, + { "flags": 4, "matrix": [9, 5], "x": 100, "y": 52 }, + { "flags": 4, "matrix": [9, 2], "x": 110, "y": 52 }, + { "flags": 4, "matrix": [0, 4], "x": 120, "y": 52 }, + { "flags": 4, "matrix": [0, 3], "x": 132, "y": 52 }, + { "flags": 4, "matrix": [7, 3], "x": 142, "y": 52 }, + { "flags": 4, "matrix": [0, 5], "x": 152, "y": 52 } ] }, "url": "", diff --git a/keyboards/rot13labs/h4ckb0ard/keyboard.json b/keyboards/rot13labs/h4ckb0ard/keyboard.json index 0ffe5be40de..4ac783774de 100644 --- a/keyboards/rot13labs/h4ckb0ard/keyboard.json +++ b/keyboards/rot13labs/h4ckb0ard/keyboard.json @@ -67,38 +67,38 @@ {"flags": 4, "matrix": [0, 0], "x": 11, "y": 0}, {"flags": 4, "matrix": [1, 0], "x": 0, "y": 1}, - {"flags": 4, "matrix": [1, 1], "x": 1.25, "y": 1}, - {"flags": 4, "matrix": [1, 2], "x": 2.25, "y": 1}, - {"flags": 4, "matrix": [1, 3], "x": 3.25, "y": 1}, - {"flags": 4, "matrix": [1, 4], "x": 4.25, "y": 1}, - {"flags": 4, "matrix": [1, 5], "x": 5.25, "y": 1}, - {"flags": 4, "matrix": [1, 6], "x": 6.25, "y": 1}, - {"flags": 4, "matrix": [1, 7], "x": 7.25, "y": 1}, - {"flags": 4, "matrix": [1, 8], "x": 8.25, "y": 1}, - {"flags": 4, "matrix": [1, 9], "x": 9.25, "y": 1}, - {"flags": 4, "matrix": [1, 11], "x": 10.25, "y": 1}, + {"flags": 4, "matrix": [1, 1], "x": 1, "y": 1}, + {"flags": 4, "matrix": [1, 2], "x": 2, "y": 1}, + {"flags": 4, "matrix": [1, 3], "x": 3, "y": 1}, + {"flags": 4, "matrix": [1, 4], "x": 4, "y": 1}, + {"flags": 4, "matrix": [1, 5], "x": 5, "y": 1}, + {"flags": 4, "matrix": [1, 6], "x": 6, "y": 1}, + {"flags": 4, "matrix": [1, 7], "x": 7, "y": 1}, + {"flags": 4, "matrix": [1, 8], "x": 8, "y": 1}, + {"flags": 4, "matrix": [1, 9], "x": 9, "y": 1}, + {"flags": 4, "matrix": [1, 11], "x": 10, "y": 1}, {"flags": 4, "matrix": [2, 11], "x": 0, "y": 2}, - {"flags": 4, "matrix": [2, 10], "x": 1.75, "y": 2}, - {"flags": 4, "matrix": [2, 8], "x": 2.75, "y": 2}, - {"flags": 4, "matrix": [2, 7], "x": 3.75, "y": 2}, - {"flags": 4, "matrix": [2, 6], "x": 4.75, "y": 2}, - {"flags": 4, "matrix": [2, 5], "x": 5.75, "y": 2}, - {"flags": 4, "matrix": [2, 4], "x": 6.75, "y": 2}, - {"flags": 4, "matrix": [2, 3], "x": 7.75, "y": 2}, - {"flags": 4, "matrix": [2, 2], "x": 8.75, "y": 2}, - {"flags": 4, "matrix": [2, 1], "x": 10.5, "y": 2}, - {"flags": 4, "matrix": [2, 0], "x": 11.5, "y": 2}, + {"flags": 4, "matrix": [2, 10], "x": 1, "y": 2}, + {"flags": 4, "matrix": [2, 8], "x": 2, "y": 2}, + {"flags": 4, "matrix": [2, 7], "x": 3, "y": 2}, + {"flags": 4, "matrix": [2, 6], "x": 4, "y": 2}, + {"flags": 4, "matrix": [2, 5], "x": 5, "y": 2}, + {"flags": 4, "matrix": [2, 4], "x": 6, "y": 2}, + {"flags": 4, "matrix": [2, 3], "x": 7, "y": 2}, + {"flags": 4, "matrix": [2, 2], "x": 8, "y": 2}, + {"flags": 4, "matrix": [2, 1], "x": 10, "y": 2}, + {"flags": 4, "matrix": [2, 0], "x": 11, "y": 2}, {"flags": 4, "matrix": [3, 0], "x": 0, "y": 3}, - {"flags": 4, "matrix": [3, 1], "x": 1.25, "y": 3}, - {"flags": 4, "matrix": [3, 2], "x": 2.5, "y": 3}, - {"flags": 4, "matrix": [3, 4], "x": 3.5, "y": 3}, - {"flags": 4, "matrix": [3, 6], "x": 5.75, "y": 3}, - {"flags": 4, "matrix": [3, 8], "x": 8.5, "y": 3}, - {"flags": 4, "matrix": [3, 9], "x": 9.5, "y": 3}, - {"flags": 4, "matrix": [3, 10], "x": 10.5, "y": 3}, - {"flags": 4, "matrix": [3, 11], "x": 11.5, "y": 3} + {"flags": 4, "matrix": [3, 1], "x": 1, "y": 3}, + {"flags": 4, "matrix": [3, 2], "x": 2, "y": 3}, + {"flags": 4, "matrix": [3, 4], "x": 3, "y": 3}, + {"flags": 4, "matrix": [3, 6], "x": 5, "y": 3}, + {"flags": 4, "matrix": [3, 8], "x": 8, "y": 3}, + {"flags": 4, "matrix": [3, 9], "x": 9, "y": 3}, + {"flags": 4, "matrix": [3, 10], "x": 10, "y": 3}, + {"flags": 4, "matrix": [3, 11], "x": 11, "y": 3} ], "max_brightness": 100 diff --git a/keyboards/skeletonkbd/frost68/keyboard.json b/keyboards/skeletonkbd/frost68/keyboard.json index 0411a3826d5..28b819e0d01 100644 --- a/keyboards/skeletonkbd/frost68/keyboard.json +++ b/keyboards/skeletonkbd/frost68/keyboard.json @@ -76,74 +76,74 @@ }, "driver": "ws2812", "layout": [ - {"matrix": [0, 0], "x": 33.1, "y": 3.7, "flags": 4}, - {"matrix": [0, 1], "x": 45.7, "y": 3.7, "flags": 4}, - {"matrix": [0, 2], "x": 58.3, "y": 2.4, "flags": 4}, - {"matrix": [0, 3], "x": 71.1, "y": 6.4, "flags": 4}, - {"matrix": [0, 4], "x": 83.4, "y": 10.4, "flags": 4}, - {"matrix": [0, 5], "x": 95.7, "y": 14.3, "flags": 4}, - {"matrix": [0, 6], "x": 108, "y": 18.3, "flags": 4}, - {"matrix": [1, 5], "x": 99.3, "y": 35, "flags": 4}, - {"matrix": [1, 4], "x": 86.9, "y": 31, "flags": 4}, - {"matrix": [1, 3], "x": 74.6, "y": 27, "flags": 4}, - {"matrix": [1, 2], "x": 62.3, "y": 23.1, "flags": 4}, - {"matrix": [1, 1], "x": 49.2, "y": 22.7, "flags": 4}, - {"matrix": [1, 0], "x": 33.5, "y": 22.7, "flags": 1}, - {"matrix": [2, 0], "x": 32.3, "y": 41.8, "flags": 1}, - {"matrix": [2, 1], "x": 49.7, "y": 41.8, "flags": 4}, - {"matrix": [2, 2], "x": 62.7, "y": 42.7, "flags": 4}, - {"matrix": [2, 3], "x": 75.1, "y": 46.7, "flags": 4}, - {"matrix": [2, 4], "x": 87.4, "y": 50.6, "flags": 4}, - {"matrix": [2, 5], "x": 99.7, "y": 54.6, "flags": 4}, - {"matrix": [3, 5], "x": 103.3, "y": 75.2, "flags": 4}, - {"matrix": [3, 4], "x": 90.9, "y": 71.2, "flags": 4}, - {"matrix": [3, 3], "x": 78.6, "y": 67.3, "flags": 4}, - {"matrix": [3, 2], "x": 66.3, "y": 63.3, "flags": 4}, - {"matrix": [3, 1], "x": 53.3, "y": 60.8, "flags": 4}, - {"matrix": [3, 0], "x": 32.8, "y": 60.8, "flags": 1}, - {"matrix": [4, 0], "x": 28.1, "y": 79.9, "flags": 1}, - {"matrix": [4, 1], "x": 47, "y": 79.9, "flags": 1}, - {"matrix": [4, 3], "x": 80.6, "y": 87.4, "flags": 4}, - {"matrix": [4, 5], "x": 100.6, "y": 93.8, "flags": 4}, - {"matrix": [4, 7], "x": 140.2, "y": 90.4, "flags": 4}, - {"matrix": [4, 10], "x": 166.4, "y": 82.5, "flags": 1}, - {"matrix": [4, 12], "x": 195.7, "y": 79.9, "flags": 1}, - {"matrix": [4, 13], "x": 211.4, "y": 79.9, "flags": 4}, - {"matrix": [4, 14], "x": 224, "y": 79.9, "flags": 4}, - {"matrix": [4, 15], "x": 236.6, "y": 79.9, "flags": 4}, - {"matrix": [3, 14], "x": 224, "y": 60.8, "flags": 4}, - {"matrix": [3, 13], "x": 206.7, "y": 60.8, "flags": 1}, - {"matrix": [3, 12], "x": 189.4, "y": 60.8, "flags": 4}, - {"matrix": [3, 11], "x": 176.8, "y": 60.8, "flags": 4}, - {"matrix": [3, 10], "x": 163.7, "y": 63.3, "flags": 4}, - {"matrix": [3, 9], "x": 151.4, "y": 67.3, "flags": 4}, - {"matrix": [3, 8], "x": 139.1, "y": 71.2, "flags": 4}, - {"matrix": [3, 7], "x": 126.8, "y": 75.2, "flags": 4}, - {"matrix": [2, 7], "x": 130.3, "y": 54.6, "flags": 4}, - {"matrix": [2, 8], "x": 142.6, "y": 50.6, "flags": 4}, - {"matrix": [2, 9], "x": 155, "y": 46.7, "flags": 4}, - {"matrix": [2, 10], "x": 167.3, "y": 42.7, "flags": 4}, - {"matrix": [2, 11], "x": 180.4, "y": 41.8, "flags": 4}, - {"matrix": [2, 12], "x": 193, "y": 41.8, "flags": 4}, - {"matrix": [2, 13], "x": 213.4, "y": 41.8, "flags": 4}, - {"matrix": [2, 15], "x": 236.6, "y": 39.6, "flags": 4}, - {"matrix": [1, 15], "x": 235.3, "y": 20.5, "flags": 4}, - {"matrix": [1, 14], "x": 217.4, "y": 22.7, "flags": 4}, - {"matrix": [1, 13], "x": 201.6, "y": 22.7, "flags": 4}, - {"matrix": [1, 12], "x": 189, "y": 22.7, "flags": 4}, - {"matrix": [1, 11], "x": 176.4, "y": 22, "flags": 4}, - {"matrix": [1, 10], "x": 163.4, "y": 24.5, "flags": 4}, - {"matrix": [1, 9], "x": 151.1, "y": 28.4, "flags": 4}, - {"matrix": [1, 8], "x": 138.7, "y": 32.4, "flags": 4}, - {"matrix": [1, 7], "x": 126.4, "y": 36.4, "flags": 4}, - {"matrix": [0, 7], "x": 128.1, "y": 16.3, "flags": 4}, - {"matrix": [0, 8], "x": 140.5, "y": 12.4, "flags": 4}, - {"matrix": [0, 9], "x": 152.8, "y": 8.4, "flags": 4}, - {"matrix": [0, 10], "x": 165.1, "y": 4.4, "flags": 4}, - {"matrix": [0, 11], "x": 178.2, "y": 2.9, "flags": 4}, - {"matrix": [0, 12], "x": 190.8, "y": 3.7, "flags": 4}, - {"matrix": [0, 14], "x": 209.7, "y": 3.7, "flags": 1}, - {"matrix": [0, 15], "x": 233.9, "y": 1.5, "flags": 4} + {"matrix": [0, 0], "x": 33, "y": 3, "flags": 4}, + {"matrix": [0, 1], "x": 45, "y": 3, "flags": 4}, + {"matrix": [0, 2], "x": 58, "y": 2, "flags": 4}, + {"matrix": [0, 3], "x": 71, "y": 6, "flags": 4}, + {"matrix": [0, 4], "x": 83, "y": 10, "flags": 4}, + {"matrix": [0, 5], "x": 95, "y": 14, "flags": 4}, + {"matrix": [0, 6], "x": 108, "y": 18, "flags": 4}, + {"matrix": [1, 5], "x": 99, "y": 35, "flags": 4}, + {"matrix": [1, 4], "x": 86, "y": 31, "flags": 4}, + {"matrix": [1, 3], "x": 74, "y": 27, "flags": 4}, + {"matrix": [1, 2], "x": 62, "y": 23, "flags": 4}, + {"matrix": [1, 1], "x": 49, "y": 22, "flags": 4}, + {"matrix": [1, 0], "x": 33, "y": 22, "flags": 1}, + {"matrix": [2, 0], "x": 32, "y": 41, "flags": 1}, + {"matrix": [2, 1], "x": 49, "y": 41, "flags": 4}, + {"matrix": [2, 2], "x": 62, "y": 42, "flags": 4}, + {"matrix": [2, 3], "x": 75, "y": 46, "flags": 4}, + {"matrix": [2, 4], "x": 87, "y": 50, "flags": 4}, + {"matrix": [2, 5], "x": 99, "y": 54, "flags": 4}, + {"matrix": [3, 5], "x": 103, "y": 75, "flags": 4}, + {"matrix": [3, 4], "x": 90, "y": 71, "flags": 4}, + {"matrix": [3, 3], "x": 78, "y": 67, "flags": 4}, + {"matrix": [3, 2], "x": 66, "y": 63, "flags": 4}, + {"matrix": [3, 1], "x": 53, "y": 60, "flags": 4}, + {"matrix": [3, 0], "x": 32, "y": 60, "flags": 1}, + {"matrix": [4, 0], "x": 28, "y": 79, "flags": 1}, + {"matrix": [4, 1], "x": 47, "y": 79, "flags": 1}, + {"matrix": [4, 3], "x": 80, "y": 87, "flags": 4}, + {"matrix": [4, 5], "x": 100, "y": 93, "flags": 4}, + {"matrix": [4, 7], "x": 140, "y": 90, "flags": 4}, + {"matrix": [4, 10], "x": 166, "y": 82, "flags": 1}, + {"matrix": [4, 12], "x": 195, "y": 79, "flags": 1}, + {"matrix": [4, 13], "x": 211, "y": 79, "flags": 4}, + {"matrix": [4, 14], "x": 224, "y": 79, "flags": 4}, + {"matrix": [4, 15], "x": 236, "y": 79, "flags": 4}, + {"matrix": [3, 14], "x": 224, "y": 60, "flags": 4}, + {"matrix": [3, 13], "x": 206, "y": 60, "flags": 1}, + {"matrix": [3, 12], "x": 189, "y": 60, "flags": 4}, + {"matrix": [3, 11], "x": 176, "y": 60, "flags": 4}, + {"matrix": [3, 10], "x": 163, "y": 63, "flags": 4}, + {"matrix": [3, 9], "x": 151, "y": 67, "flags": 4}, + {"matrix": [3, 8], "x": 139, "y": 71, "flags": 4}, + {"matrix": [3, 7], "x": 126, "y": 75, "flags": 4}, + {"matrix": [2, 7], "x": 130, "y": 54, "flags": 4}, + {"matrix": [2, 8], "x": 142, "y": 50, "flags": 4}, + {"matrix": [2, 9], "x": 155, "y": 46, "flags": 4}, + {"matrix": [2, 10], "x": 167, "y": 42, "flags": 4}, + {"matrix": [2, 11], "x": 180, "y": 41, "flags": 4}, + {"matrix": [2, 12], "x": 193, "y": 41, "flags": 4}, + {"matrix": [2, 13], "x": 213, "y": 41, "flags": 4}, + {"matrix": [2, 15], "x": 236, "y": 39, "flags": 4}, + {"matrix": [1, 15], "x": 235, "y": 20, "flags": 4}, + {"matrix": [1, 14], "x": 217, "y": 22, "flags": 4}, + {"matrix": [1, 13], "x": 201, "y": 22, "flags": 4}, + {"matrix": [1, 12], "x": 189, "y": 22, "flags": 4}, + {"matrix": [1, 11], "x": 176, "y": 22, "flags": 4}, + {"matrix": [1, 10], "x": 163, "y": 24, "flags": 4}, + {"matrix": [1, 9], "x": 151, "y": 28, "flags": 4}, + {"matrix": [1, 8], "x": 138, "y": 32, "flags": 4}, + {"matrix": [1, 7], "x": 126, "y": 36, "flags": 4}, + {"matrix": [0, 7], "x": 128, "y": 16, "flags": 4}, + {"matrix": [0, 8], "x": 140, "y": 12, "flags": 4}, + {"matrix": [0, 9], "x": 152, "y": 8, "flags": 4}, + {"matrix": [0, 10], "x": 165, "y": 4, "flags": 4}, + {"matrix": [0, 11], "x": 178, "y": 2, "flags": 4}, + {"matrix": [0, 12], "x": 190, "y": 3, "flags": 4}, + {"matrix": [0, 14], "x": 209, "y": 3, "flags": 1}, + {"matrix": [0, 15], "x": 233, "y": 1, "flags": 4} ], "max_brightness": 118, "react_on_keyup": true, diff --git a/keyboards/theone/keyboard.json b/keyboards/theone/keyboard.json index 0f1d8e021cc..3b4fc99d052 100644 --- a/keyboards/theone/keyboard.json +++ b/keyboards/theone/keyboard.json @@ -115,31 +115,31 @@ {"matrix": [2, 13], "x": 135, "y": 20, "flags": 4}, {"matrix": [1, 16], "x": 152, "y": 20, "flags": 4}, {"matrix": [2, 16], "x": 152, "y": 30, "flags": 4}, - {"matrix": [3, 13], "x": 127.5, "y": 30, "flags": 4}, - {"matrix": [3, 11], "x": 117.5, "y": 30, "flags": 4}, - {"matrix": [3, 10], "x": 107.5, "y": 30, "flags": 4}, - {"matrix": [3, 9], "x": 97.5, "y": 30, "flags": 4}, - {"matrix": [3, 8], "x": 87.5, "y": 30, "flags": 4}, - {"matrix": [3, 7], "x": 77.5, "y": 30, "flags": 4}, - {"matrix": [3, 6], "x": 67.5, "y": 30, "flags": 4}, - {"matrix": [3, 5], "x": 57.5, "y": 30, "flags": 4}, - {"matrix": [3, 4], "x": 47.5, "y": 30, "flags": 4}, - {"matrix": [3, 3], "x": 37.5, "y": 30, "flags": 4}, - {"matrix": [3, 2], "x": 27.5, "y": 30, "flags": 4}, - {"matrix": [3, 1], "x": 17.5, "y": 30, "flags": 4}, + {"matrix": [3, 13], "x": 127, "y": 30, "flags": 4}, + {"matrix": [3, 11], "x": 117, "y": 30, "flags": 4}, + {"matrix": [3, 10], "x": 107, "y": 30, "flags": 4}, + {"matrix": [3, 9], "x": 97, "y": 30, "flags": 4}, + {"matrix": [3, 8], "x": 87, "y": 30, "flags": 4}, + {"matrix": [3, 7], "x": 77, "y": 30, "flags": 4}, + {"matrix": [3, 6], "x": 67, "y": 30, "flags": 4}, + {"matrix": [3, 5], "x": 57, "y": 30, "flags": 4}, + {"matrix": [3, 4], "x": 47, "y": 30, "flags": 4}, + {"matrix": [3, 3], "x": 37, "y": 30, "flags": 4}, + {"matrix": [3, 2], "x": 27, "y": 30, "flags": 4}, + {"matrix": [3, 1], "x": 17, "y": 30, "flags": 4}, {"matrix": [3, 0], "x": 0, "y": 30, "flags": 4}, {"matrix": [4, 0], "x": 0, "y": 40, "flags": 4}, - {"matrix": [4, 2], "x": 22.5, "y": 40, "flags": 4}, - {"matrix": [4, 3], "x": 32.5, "y": 40, "flags": 4}, - {"matrix": [4, 4], "x": 42.5, "y": 40, "flags": 4}, - {"matrix": [4, 5], "x": 52.5, "y": 40, "flags": 4}, - {"matrix": [4, 6], "x": 62.5, "y": 40, "flags": 4}, - {"matrix": [4, 7], "x": 72.5, "y": 40, "flags": 4}, - {"matrix": [4, 8], "x": 82.5, "y": 40, "flags": 4}, - {"matrix": [4, 9], "x": 92.5, "y": 40, "flags": 4}, - {"matrix": [4, 10], "x": 102.5, "y": 40, "flags": 4}, - {"matrix": [4, 11], "x": 112.5, "y": 40, "flags": 4}, - {"matrix": [4, 13], "x": 122.5, "y": 40, "flags": 4}, + {"matrix": [4, 2], "x": 22, "y": 40, "flags": 4}, + {"matrix": [4, 3], "x": 32, "y": 40, "flags": 4}, + {"matrix": [4, 4], "x": 42, "y": 40, "flags": 4}, + {"matrix": [4, 5], "x": 52, "y": 40, "flags": 4}, + {"matrix": [4, 6], "x": 62, "y": 40, "flags": 4}, + {"matrix": [4, 7], "x": 72, "y": 40, "flags": 4}, + {"matrix": [4, 8], "x": 82, "y": 40, "flags": 4}, + {"matrix": [4, 9], "x": 92, "y": 40, "flags": 4}, + {"matrix": [4, 10], "x": 102, "y": 40, "flags": 4}, + {"matrix": [4, 11], "x": 112, "y": 40, "flags": 4}, + {"matrix": [4, 13], "x": 122, "y": 40, "flags": 4}, {"matrix": [4, 14], "x": 142, "y": 42, "flags": 4}, {"matrix": [5, 15], "x": 152, "y": 52, "flags": 4}, {"matrix": [5, 14], "x": 142, "y": 52, "flags": 4}, @@ -147,9 +147,9 @@ {"matrix": [5, 12], "x": 120, "y": 50, "flags": 4}, {"matrix": [5, 10], "x": 110, "y": 50, "flags": 4}, {"matrix": [5, 9], "x": 100, "y": 50, "flags": 4}, - {"matrix": [5, 6], "x": 37.5, "y": 50, "flags": 4}, + {"matrix": [5, 6], "x": 37, "y": 50, "flags": 4}, {"matrix": [5, 2], "x": 25, "y": 50, "flags": 4}, - {"matrix": [5, 1], "x": 12.5, "y": 50, "flags": 4}, + {"matrix": [5, 1], "x": 12, "y": 50, "flags": 4}, {"matrix": [5, 0], "x": 0, "y": 50, "flags": 4} ], "max_brightness": 130, From 51acd35e6f2196ca1d9a1328be92355b128d8239 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 17 Jun 2024 19:22:47 +0100 Subject: [PATCH 112/519] Implement data driven serial driver (#23923) --- data/mappings/info_rules.hjson | 1 + data/schemas/keyboard.jsonschema | 10 ++++++++++ docs/reference_info_json.md | 4 ++++ 3 files changed, 15 insertions(+) diff --git a/data/mappings/info_rules.hjson b/data/mappings/info_rules.hjson index 97611bcf587..384bc87b783 100644 --- a/data/mappings/info_rules.hjson +++ b/data/mappings/info_rules.hjson @@ -41,6 +41,7 @@ "RGB_MATRIX_DRIVER": {"info_key": "rgb_matrix.driver"}, "RGBLIGHT_DRIVER": {"info_key": "rgblight.driver"}, "SECURE_ENABLE": {"info_key": "secure.enabled", "value_type": "bool"}, + "SERIAL_DRIVER": {"info_key": "split.serial.driver"}, "SPLIT_KEYBOARD": {"info_key": "split.enabled", "value_type": "bool"}, "SPLIT_TRANSPORT": {"info_key": "split.transport.protocol", "to_c": false}, "STENO_ENABLE": {"info_key": "stenography.enabled", "value_type": "bool"}, diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index e5802fe07dd..5b63acf8e80 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -799,6 +799,16 @@ "minimum": 0, "maximum": 5 }, + "serial": { + "type": "object", + "additionalProperties": false, + "properties": { + "driver": { + "type": "string", + "enum": ["bitbang", "usart", "vendor"] + } + } + }, "transport": { "type": "object", "additionalProperties": false, diff --git a/docs/reference_info_json.md b/docs/reference_info_json.md index 2db2cd14277..a7a6caff799 100644 --- a/docs/reference_info_json.md +++ b/docs/reference_info_json.md @@ -732,6 +732,10 @@ Configures the [Split Keyboard](features/split_keyboard) feature. * `matrix_pins` * `right` * See [Matrix](#matrix) config. + * `serial` + * `driver` + * The driver to use. Must be one of `bitbang`, `usart`, `vendor`. + * Default: `"bitbang"` * `soft_serial_pin` * The GPIO pin to use (`serial` transport protocol only). * `soft_serial_speed` From baa564bddfa0b1bfc7689bc42ec3d1cd7abb7a13 Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 18 Jun 2024 05:23:45 +1000 Subject: [PATCH 113/519] Remove references to bootloadHID flashing page in keyboard readmes (#23942) * Remove references to bootloadHID flashing page in keyboard readmes * Remove bootloadHID flashing page --- docs/_aliases.json | 1 + docs/_sidebar.json | 8 +-- docs/flashing_bootloadhid.md | 74 ----------------------- keyboards/amag23/readme.md | 2 +- keyboards/ares/readme.md | 2 +- keyboards/bfake/readme.md | 2 +- keyboards/db/db63/readme.md | 2 +- keyboards/donutcables/budget96/readme.md | 2 +- keyboards/eve/meteor/readme.md | 2 +- keyboards/exclusive/e6v2/le_bmc/readme.md | 2 +- keyboards/exclusive/e6v2/oe_bmc/readme.md | 2 +- keyboards/exent/readme.md | 2 +- keyboards/facew/readme.md | 2 +- keyboards/foxlab/time80/readme.md | 6 +- keyboards/ft/mars65/readme.md | 2 +- keyboards/ft/mars80/readme.md | 2 +- keyboards/gray_studio/hb85/readme.md | 2 +- keyboards/j80/readme.md | 2 +- keyboards/jaykeeb/skyline/readme.md | 2 +- keyboards/jc65/v32a/readme.md | 2 +- keyboards/kbdfans/kbdpad/mk1/readme.md | 2 +- keyboards/keychron/q2/readme.md | 2 +- keyboards/keychron/q4/readme.md | 2 +- keyboards/keychron/q60/readme.md | 2 +- keyboards/keychron/q65/readme.md | 2 +- keyboards/keychron/v2/readme.md | 2 +- keyboards/keychron/v4/readme.md | 2 +- keyboards/keychron/v7/readme.md | 2 +- keyboards/keychron/v8/readme.md | 2 +- keyboards/kira/kira80/readme.md | 2 +- keyboards/kprepublic/jj40/rev1/readme.md | 2 +- keyboards/kprepublic/jj4x4/readme.md | 2 +- keyboards/kprepublic/jj50/rev1/readme.md | 2 +- keyboards/leeku/finger65/readme.md | 2 +- keyboards/mechkeys/mechmini/v1/readme.md | 2 +- keyboards/mehkee96/readme.md | 2 +- keyboards/mt/mt40/readme.md | 2 +- keyboards/mt/split75/readme.md | 2 +- keyboards/oddforge/vea/readme.md | 2 +- keyboards/panc60/readme.md | 2 +- keyboards/pearl/readme.md | 2 +- keyboards/percent/canoe/readme.md | 2 +- keyboards/percent/skog/readme.md | 2 +- keyboards/percent/skog_lite/readme.md | 2 +- keyboards/singa/readme.md | 2 +- keyboards/spiderisland/split78/readme.md | 2 +- keyboards/tgr/910/readme.md | 2 +- keyboards/tgr/910ce/readme.md | 2 +- keyboards/tgr/alice/readme.md | 2 +- keyboards/tgr/jane/v2/readme.md | 2 +- keyboards/tgr/jane/v2ce/readme.md | 2 +- keyboards/tgr/tris/readme.md | 2 +- keyboards/unikorn/readme.md | 2 +- keyboards/winkeyless/b87/readme.md | 2 +- keyboards/winkeyless/bface/readme.md | 2 +- keyboards/winkeyless/bmini/readme.md | 2 +- keyboards/winkeyless/bminiex/readme.md | 2 +- keyboards/ymdk/bface/readme.md | 2 +- keyboards/ymdk/np21/readme.md | 2 +- keyboards/ymdk/sp64/readme.md | 2 +- keyboards/ymdk/ymd75/rev1/readme.md | 2 +- keyboards/ymdk/ymd75/rev2/readme.md | 2 +- keyboards/ymdk/ymd96/readme.md | 2 +- 63 files changed, 63 insertions(+), 144 deletions(-) delete mode 100644 docs/flashing_bootloadhid.md diff --git a/docs/_aliases.json b/docs/_aliases.json index a2224bd0d54..f06e032215c 100644 --- a/docs/_aliases.json +++ b/docs/_aliases.json @@ -4,6 +4,7 @@ "/cli_dev_configuration": "/cli_configuration", "/dynamic_macros": "/feature_dynamic_macros", "/feature_common_shortcuts": "/feature_advanced_keycodes", + "/flashing_bootloadhid": "/flashing", "/getting_started_build_tools": "/newbs_getting_started", "/getting_started_getting_help": "/support", "/glossary": "/reference_glossary", diff --git a/docs/_sidebar.json b/docs/_sidebar.json index 2f64607deae..5935865a7ad 100644 --- a/docs/_sidebar.json +++ b/docs/_sidebar.json @@ -64,13 +64,7 @@ "text": "Development Environments", "items": [{ "text": "Docker Guide", "link": "/getting_started_docker" }] }, - { - "text": "Flashing", - "items": [ - { "text": "Flashing", "link": "/flashing" }, - { "text": "Flashing ATmega32A (ps2avrgb)", "link": "/flashing_bootloadhid" } - ] - }, + { "text": "Flashing", "link": "/flashing" }, { "text": "IDEs", "items": [ diff --git a/docs/flashing_bootloadhid.md b/docs/flashing_bootloadhid.md deleted file mode 100644 index 2d1696c6e74..00000000000 --- a/docs/flashing_bootloadhid.md +++ /dev/null @@ -1,74 +0,0 @@ -# BootloadHID Flashing Instructions and Bootloader Information - -ps2avr(GB) boards use an ATmega32A microcontroller and a different bootloader. It is not flashable using the regular QMK methods. - -General flashing sequence: - -1. Enter the bootloader using any of the following methods: - * Tap the `QK_BOOT` keycode (may not work on all devices) - * Hold the salt key while plugging the keyboard in (usually documented within keyboard readme) -2. Wait for the OS to detect the device -3. Flash a .hex file -4. Reset the device into application mode (may be done automatically) - -## bootloadHID Flashing Target - -::: tip -Using the QMK installation script, detailed [here](newbs_getting_started), the required bootloadHID tools should be automatically installed. -::: - -To flash via the command line, use the target `:bootloadhid` by executing the following command: - -``` -make ::bootloadhid -``` - -## GUI Flashing - -### Windows -1. Download [HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash). -2. Place your keyboard into reset. -3. Ensure the configured VendorID is `16c0` and ProductID is `05df` -4. Press the `Find Device` button and ensure that your keyboard is found. -5. Press the `Open .hex File` button and locate the `.hex` file you created. -6. Press the `Flash Device` button and wait for the process to complete. - -## Command Line Flashing - -1. Place your keyboard into reset. -2. Flash the board by typing `bootloadHID -r` followed by the path to your `.hex` file. - -### Windows Manual Installation -For MSYS2: -1. Download the BootloadHID firmware package from https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz. -2. Extract contents using a compatible tool, for example 7-Zip. -3. Add to the MSYS path by copying `commandline/bootloadHID.exe` from the extracted archive to your MSYS2 installation, typically `C:\msys64\usr\bin`. - -For native Windows flashing, the `bootloadHID.exe` can be used outside of the MSYS2 environment. - -### Linux Manual Installation -1. Install libusb development dependency: - ``` - # This depends on OS - for Debian the following works - sudo apt-get install libusb-dev - ``` -2. Download the BootloadHID firmware package: - ``` - wget https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz -O - | tar -xz -C /tmp - ``` -3. Build the bootloadHID executable: - ``` - cd /tmp/bootloadHID.2012-12-08/commandline/ - make - sudo cp bootloadHID /usr/local/bin - ``` - -### MacOS Manual Installation -1. Install Homebrew by typing the following: - ``` - /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" - ``` -2. Install the following packages: - ``` - brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb - ``` diff --git a/keyboards/amag23/readme.md b/keyboards/amag23/readme.md index 30791a5cfb8..70fb7f8b2c7 100644 --- a/keyboards/amag23/readme.md +++ b/keyboards/amag23/readme.md @@ -15,7 +15,7 @@ Make example for this keyboard (after setting up your build environment): make amag23:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make amag23:default:flash diff --git a/keyboards/ares/readme.md b/keyboards/ares/readme.md index a1e04ecf91e..b443489406c 100644 --- a/keyboards/ares/readme.md +++ b/keyboards/ares/readme.md @@ -8,7 +8,7 @@ Make example for this keyboard (after setting up your build environment): make ares:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make ares:default:flash diff --git a/keyboards/bfake/readme.md b/keyboards/bfake/readme.md index df319cd7c51..ced1bd0e81f 100644 --- a/keyboards/bfake/readme.md +++ b/keyboards/bfake/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make bfake:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make bfake:default:flash diff --git a/keyboards/db/db63/readme.md b/keyboards/db/db63/readme.md index e886bed0a1a..09ea46a3ce2 100644 --- a/keyboards/db/db63/readme.md +++ b/keyboards/db/db63/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make db/db63:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make db/db63:default:flash diff --git a/keyboards/donutcables/budget96/readme.md b/keyboards/donutcables/budget96/readme.md index 9cdb3a01bf6..b082c2af0ff 100644 --- a/keyboards/donutcables/budget96/readme.md +++ b/keyboards/donutcables/budget96/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make donutcables/budget96:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make donutcables/budget96:default:flash diff --git a/keyboards/eve/meteor/readme.md b/keyboards/eve/meteor/readme.md index 69d5a35ece7..43bc0991184 100644 --- a/keyboards/eve/meteor/readme.md +++ b/keyboards/eve/meteor/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make eve/meteor:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make eve/meteor:default:flash diff --git a/keyboards/exclusive/e6v2/le_bmc/readme.md b/keyboards/exclusive/e6v2/le_bmc/readme.md index d999982671b..ada5a64a608 100644 --- a/keyboards/exclusive/e6v2/le_bmc/readme.md +++ b/keyboards/exclusive/e6v2/le_bmc/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make exclusive/e6v2/le_bmc:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make exclusive/e6v2/le_bmc:default:flash diff --git a/keyboards/exclusive/e6v2/oe_bmc/readme.md b/keyboards/exclusive/e6v2/oe_bmc/readme.md index c259728edf1..95d1f85c0a0 100644 --- a/keyboards/exclusive/e6v2/oe_bmc/readme.md +++ b/keyboards/exclusive/e6v2/oe_bmc/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make exclusive/e6v2/oe_bmc:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make exclusive/e6v2/oe_bmc:default:flash diff --git a/keyboards/exent/readme.md b/keyboards/exent/readme.md index d30bed91a57..dbdf69ae96e 100644 --- a/keyboards/exent/readme.md +++ b/keyboards/exent/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make exent:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](flashing_bootloadhid.md)) +Flashing example for this keyboard: make exent:default:flash diff --git a/keyboards/facew/readme.md b/keyboards/facew/readme.md index a852a4f46dc..6c392a32e2a 100644 --- a/keyboards/facew/readme.md +++ b/keyboards/facew/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make facew:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make facew:default:flash diff --git a/keyboards/foxlab/time80/readme.md b/keyboards/foxlab/time80/readme.md index 58ad5604008..9f04a07dd68 100644 --- a/keyboards/foxlab/time80/readme.md +++ b/keyboards/foxlab/time80/readme.md @@ -15,13 +15,11 @@ Make example for this keyboard (after setting up your build environment): make foxlab/time80:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make foxlab/time80:default:flash -**Reset Key**: There are no reset switches or pads. Follow this -[guide](https://docs.qmk.fm/#/flashing_bootloadhid) -to have it flashed for the first time. Remember to add a `QK_BOOT` +**Reset Key**: There are no reset switches or pads. Remember to add a `QK_BOOT` key on your keymap for future endeavors. 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/ft/mars65/readme.md b/keyboards/ft/mars65/readme.md index 6853994ee43..55373214f89 100644 --- a/keyboards/ft/mars65/readme.md +++ b/keyboards/ft/mars65/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make ft/mars65:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make ft/mars65:default:flash diff --git a/keyboards/ft/mars80/readme.md b/keyboards/ft/mars80/readme.md index 3d108300bb7..f4aa3b5f774 100644 --- a/keyboards/ft/mars80/readme.md +++ b/keyboards/ft/mars80/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make ft/mars80:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make ft/mars80:default:flash diff --git a/keyboards/gray_studio/hb85/readme.md b/keyboards/gray_studio/hb85/readme.md index 523f774c83d..4307e61b571 100644 --- a/keyboards/gray_studio/hb85/readme.md +++ b/keyboards/gray_studio/hb85/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make gray_studio/hb85:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make gray_studio/hb85:default:flash diff --git a/keyboards/j80/readme.md b/keyboards/j80/readme.md index 44ed46fe450..8ce90cca746 100644 --- a/keyboards/j80/readme.md +++ b/keyboards/j80/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make j80:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make j80:default:flash diff --git a/keyboards/jaykeeb/skyline/readme.md b/keyboards/jaykeeb/skyline/readme.md index 92291310e04..6f58ba33def 100644 --- a/keyboards/jaykeeb/skyline/readme.md +++ b/keyboards/jaykeeb/skyline/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make jaykeeb/skyline:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make jaykeeb/skyline:default:flash diff --git a/keyboards/jc65/v32a/readme.md b/keyboards/jc65/v32a/readme.md index 8a139ca6644..6695793f935 100644 --- a/keyboards/jc65/v32a/readme.md +++ b/keyboards/jc65/v32a/readme.md @@ -16,7 +16,7 @@ Make example for this keyboard (after setting up your build environment): make jc65/v32a:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make jc65/v32a:default:flash diff --git a/keyboards/kbdfans/kbdpad/mk1/readme.md b/keyboards/kbdfans/kbdpad/mk1/readme.md index 27194e683f4..43d0ebf8776 100644 --- a/keyboards/kbdfans/kbdpad/mk1/readme.md +++ b/keyboards/kbdfans/kbdpad/mk1/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make kbdfans/kbdpad/mk1:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make kbdfans/kbdpad/mk1:default:flash diff --git a/keyboards/keychron/q2/readme.md b/keyboards/keychron/q2/readme.md index 69a2d892ff0..3abd7280ca4 100644 --- a/keyboards/keychron/q2/readme.md +++ b/keyboards/keychron/q2/readme.md @@ -17,7 +17,7 @@ Make example for this keyboard (after setting up your build environment): make keychron/q2/jis:default make keychron/q2/jis_encoder:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make keychron/q2/ansi:default:flash make keychron/q2/ansi_encoder:default:flash diff --git a/keyboards/keychron/q4/readme.md b/keyboards/keychron/q4/readme.md index 711eeadbb4d..de4c6927138 100644 --- a/keyboards/keychron/q4/readme.md +++ b/keyboards/keychron/q4/readme.md @@ -16,7 +16,7 @@ Make example for this keyboard (after setting up your build environment): make keychron/q4/ansi/v2:default make keychron/q4/iso:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make keychron/q4/ansi/v1:default:flash make keychron/q4/ansi/v2:default:flash diff --git a/keyboards/keychron/q60/readme.md b/keyboards/keychron/q60/readme.md index 6e546ae1e15..7ef775c7bee 100644 --- a/keyboards/keychron/q60/readme.md +++ b/keyboards/keychron/q60/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make keychron/q60/ansi:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make keychron/q60/ansi:default:flash diff --git a/keyboards/keychron/q65/readme.md b/keyboards/keychron/q65/readme.md index 1a2a27dc752..708ed013e00 100644 --- a/keyboards/keychron/q65/readme.md +++ b/keyboards/keychron/q65/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make keychron/q65/ansi_encoder:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make keychron/q65/ansi_encoder:default:flash diff --git a/keyboards/keychron/v2/readme.md b/keyboards/keychron/v2/readme.md index 7836a457fbd..4d3de284da8 100644 --- a/keyboards/keychron/v2/readme.md +++ b/keyboards/keychron/v2/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make keychron/v2/ansi:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make keychron/v2/ansi:default:flash diff --git a/keyboards/keychron/v4/readme.md b/keyboards/keychron/v4/readme.md index 62846a5e70a..e35f47a4489 100644 --- a/keyboards/keychron/v4/readme.md +++ b/keyboards/keychron/v4/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make keychron/v4/ansi:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make keychron/v4/ansi:default:flash diff --git a/keyboards/keychron/v7/readme.md b/keyboards/keychron/v7/readme.md index 2a156494429..fb44a0fc5f9 100644 --- a/keyboards/keychron/v7/readme.md +++ b/keyboards/keychron/v7/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make keychron/v7/ansi:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make keychron/v7/ansi:default:flash diff --git a/keyboards/keychron/v8/readme.md b/keyboards/keychron/v8/readme.md index 9d37ba16161..8473f4fc980 100644 --- a/keyboards/keychron/v8/readme.md +++ b/keyboards/keychron/v8/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make keychron/v8/ansi:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make keychron/v8/ansi:default:flash diff --git a/keyboards/kira/kira80/readme.md b/keyboards/kira/kira80/readme.md index c9816a12462..e6d4d78d723 100644 --- a/keyboards/kira/kira80/readme.md +++ b/keyboards/kira/kira80/readme.md @@ -13,7 +13,7 @@ Make example for this keyboard (after setting up your build environment): make kira/kira80:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make kira/kira80:default:flash diff --git a/keyboards/kprepublic/jj40/rev1/readme.md b/keyboards/kprepublic/jj40/rev1/readme.md index 49f644849e9..96ee7dc099e 100644 --- a/keyboards/kprepublic/jj40/rev1/readme.md +++ b/keyboards/kprepublic/jj40/rev1/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make kprepublic/jj40/rev1:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make kprepublic/jj40/rev1:default:flash diff --git a/keyboards/kprepublic/jj4x4/readme.md b/keyboards/kprepublic/jj4x4/readme.md index b6e58661682..37853ac36a8 100644 --- a/keyboards/kprepublic/jj4x4/readme.md +++ b/keyboards/kprepublic/jj4x4/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make kprepublic/jj4x4:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make kprepublic/jj4x4:default:flash diff --git a/keyboards/kprepublic/jj50/rev1/readme.md b/keyboards/kprepublic/jj50/rev1/readme.md index 643dfc54da3..ff276b1c711 100644 --- a/keyboards/kprepublic/jj50/rev1/readme.md +++ b/keyboards/kprepublic/jj50/rev1/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make kprepublic/jj50/rev1:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make kprepublic/jj50/rev1:default:flash diff --git a/keyboards/leeku/finger65/readme.md b/keyboards/leeku/finger65/readme.md index c27ce5d4893..715fa76fe2a 100644 --- a/keyboards/leeku/finger65/readme.md +++ b/keyboards/leeku/finger65/readme.md @@ -9,7 +9,7 @@ Make example for this keyboard (after setting up your build environment): make leeku/finger65:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make leeku/finger65:default:flash diff --git a/keyboards/mechkeys/mechmini/v1/readme.md b/keyboards/mechkeys/mechmini/v1/readme.md index d6b88d9c048..7e789115a58 100644 --- a/keyboards/mechkeys/mechmini/v1/readme.md +++ b/keyboards/mechkeys/mechmini/v1/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make mechkeys/mechmini/v1:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make mechkeys/mechmini/v1:default:flash diff --git a/keyboards/mehkee96/readme.md b/keyboards/mehkee96/readme.md index ff1a6e201a4..852061cc18d 100644 --- a/keyboards/mehkee96/readme.md +++ b/keyboards/mehkee96/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make mehkee96:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make mehkee96:default:flash diff --git a/keyboards/mt/mt40/readme.md b/keyboards/mt/mt40/readme.md index 632cefdb731..e24b856140c 100644 --- a/keyboards/mt/mt40/readme.md +++ b/keyboards/mt/mt40/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make mt/mt40:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make mt/mt40:default:flash diff --git a/keyboards/mt/split75/readme.md b/keyboards/mt/split75/readme.md index 360ad552398..68ecd81bf21 100644 --- a/keyboards/mt/split75/readme.md +++ b/keyboards/mt/split75/readme.md @@ -15,7 +15,7 @@ Make example for this keyboard (after setting up your build environment): make mt/split75:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make mt/split75:default:flash diff --git a/keyboards/oddforge/vea/readme.md b/keyboards/oddforge/vea/readme.md index 872fb90d3ab..488f3cc1a21 100644 --- a/keyboards/oddforge/vea/readme.md +++ b/keyboards/oddforge/vea/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make oddforge/vea:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make oddforge/vea:default:flash diff --git a/keyboards/panc60/readme.md b/keyboards/panc60/readme.md index 52dcc4ccea1..e07ace93a10 100644 --- a/keyboards/panc60/readme.md +++ b/keyboards/panc60/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make panc60:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make panc60:default:flash diff --git a/keyboards/pearl/readme.md b/keyboards/pearl/readme.md index 1f78a5540a5..289e11b017f 100644 --- a/keyboards/pearl/readme.md +++ b/keyboards/pearl/readme.md @@ -11,7 +11,7 @@ Make example for this keyboard (after setting up your build environment): make pearl:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make pearl:default:flash diff --git a/keyboards/percent/canoe/readme.md b/keyboards/percent/canoe/readme.md index a4a40939398..b5048e62d80 100644 --- a/keyboards/percent/canoe/readme.md +++ b/keyboards/percent/canoe/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make percent/canoe:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make percent/canoe:default:flash diff --git a/keyboards/percent/skog/readme.md b/keyboards/percent/skog/readme.md index 9f76110cde6..af2832220d5 100644 --- a/keyboards/percent/skog/readme.md +++ b/keyboards/percent/skog/readme.md @@ -8,7 +8,7 @@ Make example for this keyboard (after setting up your build environment): make percent/skog:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make percent/skog:default:flash diff --git a/keyboards/percent/skog_lite/readme.md b/keyboards/percent/skog_lite/readme.md index 72ca7972541..d40eec01fd2 100644 --- a/keyboards/percent/skog_lite/readme.md +++ b/keyboards/percent/skog_lite/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make percent/skog_lite:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make percent/skog_lite:default:flash diff --git a/keyboards/singa/readme.md b/keyboards/singa/readme.md index e3b87092ec0..d700090ce1d 100644 --- a/keyboards/singa/readme.md +++ b/keyboards/singa/readme.md @@ -13,7 +13,7 @@ Make example for this keyboard (after setting up your build environment): make singa:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make singa:default:flash diff --git a/keyboards/spiderisland/split78/readme.md b/keyboards/spiderisland/split78/readme.md index 84db8f0ffa3..e7e96f3d96e 100644 --- a/keyboards/spiderisland/split78/readme.md +++ b/keyboards/spiderisland/split78/readme.md @@ -16,7 +16,7 @@ Make example for this keyboard (after setting up your build environment): make spiderisland/split78:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make spiderisland/split78:default:flash diff --git a/keyboards/tgr/910/readme.md b/keyboards/tgr/910/readme.md index 63e86380b87..9d3efefbb94 100644 --- a/keyboards/tgr/910/readme.md +++ b/keyboards/tgr/910/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make tgr/910:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make tgr/910:default:flash diff --git a/keyboards/tgr/910ce/readme.md b/keyboards/tgr/910ce/readme.md index 6df25c8f8cc..6d9bb71ceff 100644 --- a/keyboards/tgr/910ce/readme.md +++ b/keyboards/tgr/910ce/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make tgr/910ce:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make tgr/910ce:default:flash diff --git a/keyboards/tgr/alice/readme.md b/keyboards/tgr/alice/readme.md index a08aaf71ba6..d9b01aef64b 100644 --- a/keyboards/tgr/alice/readme.md +++ b/keyboards/tgr/alice/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make tgr/alice:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make tgr/alice:default:flash diff --git a/keyboards/tgr/jane/v2/readme.md b/keyboards/tgr/jane/v2/readme.md index 5c5a2d92d3c..dac3e8429f0 100644 --- a/keyboards/tgr/jane/v2/readme.md +++ b/keyboards/tgr/jane/v2/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make tgr/jane:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make tgr/jane:default:flash diff --git a/keyboards/tgr/jane/v2ce/readme.md b/keyboards/tgr/jane/v2ce/readme.md index 20e949caa57..7580270d8d3 100644 --- a/keyboards/tgr/jane/v2ce/readme.md +++ b/keyboards/tgr/jane/v2ce/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make tgr/jane/v2ce:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make tgr/jane/v2ce:default:flash diff --git a/keyboards/tgr/tris/readme.md b/keyboards/tgr/tris/readme.md index 8c3433700b8..c9cc1990696 100644 --- a/keyboards/tgr/tris/readme.md +++ b/keyboards/tgr/tris/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make tris:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make tris:default:flash diff --git a/keyboards/unikorn/readme.md b/keyboards/unikorn/readme.md index 1383e18518c..89690374c90 100644 --- a/keyboards/unikorn/readme.md +++ b/keyboards/unikorn/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make unikorn:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make unikorn:default:flash diff --git a/keyboards/winkeyless/b87/readme.md b/keyboards/winkeyless/b87/readme.md index b1df3439b14..9e19e546cc4 100644 --- a/keyboards/winkeyless/b87/readme.md +++ b/keyboards/winkeyless/b87/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make winkeyless/b87:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make winkeyless/b87:default:flash diff --git a/keyboards/winkeyless/bface/readme.md b/keyboards/winkeyless/bface/readme.md index ab39a97db08..119fdf44ae2 100644 --- a/keyboards/winkeyless/bface/readme.md +++ b/keyboards/winkeyless/bface/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make winkeyless/bface:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make winkeyless/bface:default:flash diff --git a/keyboards/winkeyless/bmini/readme.md b/keyboards/winkeyless/bmini/readme.md index 5b19e030902..1d98de56bbd 100644 --- a/keyboards/winkeyless/bmini/readme.md +++ b/keyboards/winkeyless/bmini/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make winkeyless/bmini:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make winkeyless/bmini:default:flash diff --git a/keyboards/winkeyless/bminiex/readme.md b/keyboards/winkeyless/bminiex/readme.md index 31a9e2608f3..df07082a8f8 100644 --- a/keyboards/winkeyless/bminiex/readme.md +++ b/keyboards/winkeyless/bminiex/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make winkeyless/bminiex:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make winkeyless/bminiex:default:flash diff --git a/keyboards/ymdk/bface/readme.md b/keyboards/ymdk/bface/readme.md index d99d4f9fb0d..e2404f7faba 100644 --- a/keyboards/ymdk/bface/readme.md +++ b/keyboards/ymdk/bface/readme.md @@ -13,7 +13,7 @@ Make example for this keyboard (after setting up your build environment): make ymdk/bface:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make ymdk/bface:default:flash diff --git a/keyboards/ymdk/np21/readme.md b/keyboards/ymdk/np21/readme.md index e9eaad9b7be..bbebea5880d 100644 --- a/keyboards/ymdk/np21/readme.md +++ b/keyboards/ymdk/np21/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make ymdk/np21:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make ymdk/np21:default:flash diff --git a/keyboards/ymdk/sp64/readme.md b/keyboards/ymdk/sp64/readme.md index ce547f1e0ce..3421e434efc 100644 --- a/keyboards/ymdk/sp64/readme.md +++ b/keyboards/ymdk/sp64/readme.md @@ -8,7 +8,7 @@ Make example for this keyboard (after setting up your build environment): make ymdk/sp64:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make ymdk/sp64:default:flash diff --git a/keyboards/ymdk/ymd75/rev1/readme.md b/keyboards/ymdk/ymd75/rev1/readme.md index e4784d4eb98..1583c17d8fc 100644 --- a/keyboards/ymdk/ymd75/rev1/readme.md +++ b/keyboards/ymdk/ymd75/rev1/readme.md @@ -12,7 +12,7 @@ Make example for this keyboard (after setting up your build environment): make ymdk/ymd75/rev1:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make ymdk/ymd75/rev1:default:flash diff --git a/keyboards/ymdk/ymd75/rev2/readme.md b/keyboards/ymdk/ymd75/rev2/readme.md index 7d70ed3a50a..7437488c195 100644 --- a/keyboards/ymdk/ymd75/rev2/readme.md +++ b/keyboards/ymdk/ymd75/rev2/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make ymdk/ymd75/rev2:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make ymdk/ymd75/rev2:default:flash diff --git a/keyboards/ymdk/ymd96/readme.md b/keyboards/ymdk/ymd96/readme.md index 6a967a49c25..ff6d61e5ae2 100644 --- a/keyboards/ymdk/ymd96/readme.md +++ b/keyboards/ymdk/ymd96/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): make ymdk/ymd96:default -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) +Flashing example for this keyboard: make ymdk/ymd96:default:flash From dafc46f1d11134bee65a4b21a404f8e79d7b8402 Mon Sep 17 00:00:00 2001 From: lizaoreo Date: Mon, 17 Jun 2024 15:30:57 -0400 Subject: [PATCH 114/519] Update RGB matrix indicator example (#23947) Changed the example in indicator-examples-2 to use a compound literal, otherwise the code fails to compile. --- docs/features/rgb_matrix.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/features/rgb_matrix.md b/docs/features/rgb_matrix.md index a42f0a0f736..aef766ebd24 100644 --- a/docs/features/rgb_matrix.md +++ b/docs/features/rgb_matrix.md @@ -1007,9 +1007,9 @@ bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { HSV hsv = {0, 255, 255}; if (layer_state_is(layer_state, 2)) { - hsv = {130, 255, 255}; + hsv = (HSV){130, 255, 255}; } else { - hsv = {30, 255, 255}; + hsv = (HSV){30, 255, 255}; } if (hsv.v > rgb_matrix_get_val()) { From 938badc3b0a8b71647e2463241f2e3fe8578f32a Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 17 Jun 2024 21:51:53 +0100 Subject: [PATCH 115/519] Generate keymap dd keycodes to header (#20273) --- builddefs/build_keyboard.mk | 7 +++- lib/python/qmk/cli/__init__.py | 1 + lib/python/qmk/cli/generate/keymap_h.py | 51 +++++++++++++++++++++++++ lib/python/qmk/keymap.py | 34 ++--------------- 4 files changed, 61 insertions(+), 32 deletions(-) create mode 100644 lib/python/qmk/cli/generate/keymap_h.py diff --git a/builddefs/build_keyboard.mk b/builddefs/build_keyboard.mk index f0788e55c99..ebc52a93090 100644 --- a/builddefs/build_keyboard.mk +++ b/builddefs/build_keyboard.mk @@ -212,7 +212,12 @@ $(INTERMEDIATE_OUTPUT)/src/config.h: $(KEYMAP_JSON) $(eval CMD=$(QMK_BIN) generate-config-h --quiet --output $(KEYMAP_H) $(KEYMAP_JSON)) @$(BUILD_CMD) -generated-files: $(INTERMEDIATE_OUTPUT)/src/config.h $(INTERMEDIATE_OUTPUT)/src/keymap.c +$(INTERMEDIATE_OUTPUT)/src/keymap.h: $(KEYMAP_JSON) + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-keymap-h --quiet --output $(INTERMEDIATE_OUTPUT)/src/keymap.h $(KEYMAP_JSON)) + @$(BUILD_CMD) + +generated-files: $(INTERMEDIATE_OUTPUT)/src/config.h $(INTERMEDIATE_OUTPUT)/src/keymap.c $(INTERMEDIATE_OUTPUT)/src/keymap.h endif diff --git a/lib/python/qmk/cli/__init__.py b/lib/python/qmk/cli/__init__.py index 6d05a5fc21c..b656909f853 100644 --- a/lib/python/qmk/cli/__init__.py +++ b/lib/python/qmk/cli/__init__.py @@ -58,6 +58,7 @@ subcommands = [ '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', 'qmk.cli.generate.rules_mk', diff --git a/lib/python/qmk/cli/generate/keymap_h.py b/lib/python/qmk/cli/generate/keymap_h.py new file mode 100644 index 00000000000..a3aaa405c0f --- /dev/null +++ b/lib/python/qmk/cli/generate/keymap_h.py @@ -0,0 +1,51 @@ +from argcomplete.completers import FilesCompleter + +from milc import cli + +import qmk.path +from qmk.commands import dump_lines +from qmk.commands import parse_configurator_json +from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE + + +def _generate_keycodes_function(keymap_json): + """Generates keymap level keycodes. + """ + lines = [] + lines.append('enum keymap_keycodes {') + + for index, item in enumerate(keymap_json.get('keycodes', [])): + key = item["key"] + if index == 0: + lines.append(f' {key} = QK_USER_0,') + else: + lines.append(f' {key},') + + lines.append('};') + + for item in keymap_json.get('keycodes', []): + key = item["key"] + for alias in item.get("aliases", []): + lines.append(f'#define {alias} {key}') + + return lines + + +@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('filename', type=qmk.path.FileType('r'), arg_only=True, completer=FilesCompleter('.json'), help='Configurator JSON file') +@cli.subcommand('Creates a keymap.h from a QMK Configurator export.') +def generate_keymap_h(cli): + """Creates a keymap.h from a QMK Configurator export + """ + if cli.args.output and cli.args.output.name == '-': + cli.args.output = None + + keymap_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '#pragma once', '// clang-format off'] + + keymap_json = parse_configurator_json(cli.args.filename) + + if 'keycodes' in keymap_json and keymap_json['keycodes'] is not None: + keymap_h_lines += _generate_keycodes_function(keymap_json) + + dump_lines(cli.args.output, keymap_h_lines, cli.args.quiet) diff --git a/lib/python/qmk/keymap.py b/lib/python/qmk/keymap.py index b7bf897377c..ca76f1b2888 100644 --- a/lib/python/qmk/keymap.py +++ b/lib/python/qmk/keymap.py @@ -19,6 +19,9 @@ from qmk.info import info_json # The `keymap.c` template to use when a keyboard doesn't have its own DEFAULT_KEYMAP_C = """#include QMK_KEYBOARD_H +#if __has_include("keymap.h") +# include "keymap.h" +#endif __INCLUDES__ /* THIS FILE WAS GENERATED! @@ -26,8 +29,6 @@ __INCLUDES__ * This file was generated by qmk json2c. You may or may not want to * edit it directly. */ -__KEYCODE_OUTPUT_GOES_HERE__ - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { __KEYMAP_GOES_HERE__ }; @@ -125,29 +126,6 @@ def _generate_macros_function(keymap_json): return macro_txt -def _generate_keycodes_function(keymap_json): - """Generates keymap level keycodes. - """ - lines = [] - lines.append('enum keymap_keycodes {') - - for index, item in enumerate(keymap_json.get('keycodes', [])): - key = item["key"] - if index == 0: - lines.append(f' {key} = QK_USER_0,') - else: - lines.append(f' {key},') - - lines.append('};') - - for item in keymap_json.get('keycodes', []): - key = item["key"] - for alias in item.get("aliases", []): - lines.append(f'#define {alias} {key}') - - return lines - - def template_json(keyboard): """Returns a `keymap.json` template for a keyboard. @@ -350,12 +328,6 @@ def generate_c(keymap_json): hostlang = f'#include "keymap_{keymap_json["host_language"]}.h"\n#include "sendstring_{keymap_json["host_language"]}.h"\n' new_keymap = new_keymap.replace('__INCLUDES__', hostlang) - keycodes = '' - if 'keycodes' in keymap_json and keymap_json['keycodes'] is not None: - keycodes_txt = _generate_keycodes_function(keymap_json) - keycodes = '\n'.join(keycodes_txt) - new_keymap = new_keymap.replace('__KEYCODE_OUTPUT_GOES_HERE__', keycodes) - return new_keymap From 53a0cdc4467fb688faa2708fe75daa26686e918d Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 18 Jun 2024 03:44:22 +0100 Subject: [PATCH 116/519] Implement data driven joysticks (#22947) --- data/mappings/info_config.hjson | 5 +++ data/mappings/info_rules.hjson | 2 + data/schemas/keyboard.jsonschema | 30 +++++++++++++++ .../battleship_gamepad/battleship_gamepad.c | 6 --- .../handwired/battleship_gamepad/config.h | 21 ---------- .../battleship_gamepad/keyboard.json | 8 ++++ .../handwired/battleship_gamepad/rules.mk | 1 - lib/python/qmk/cli/generate/keyboard_c.py | 38 ++++++++++++++++++- lib/python/qmk/constants.py | 2 + lib/python/qmk/info.py | 15 +++++++- 10 files changed, 97 insertions(+), 31 deletions(-) delete mode 100644 keyboards/handwired/battleship_gamepad/config.h delete mode 100644 keyboards/handwired/battleship_gamepad/rules.mk diff --git a/data/mappings/info_config.hjson b/data/mappings/info_config.hjson index b61ca040714..4f731b60113 100644 --- a/data/mappings/info_config.hjson +++ b/data/mappings/info_config.hjson @@ -72,6 +72,11 @@ "LED_KANA_PIN": {"info_key": "indicators.kana"}, "LED_PIN_ON_STATE": {"info_key": "indicators.on_state", "value_type": "int"}, + // Joystick + "JOYSTICK_AXIS_COUNT": {"info_key": "joystick.axis_count", "value_type": "int"}, + "JOYSTICK_AXIS_RESOLUTION": {"info_key": "joystick.axis_resolution", "value_type": "int"}, + "JOYSTICK_BUTTON_COUNT": {"info_key": "joystick.button_count", "value_type": "int"}, + // Leader Key "LEADER_PER_KEY_TIMING": {"info_key": "leader_key.timing", "value_type": "flag"}, "LEADER_KEY_STRICT_KEY_PROCESSING": {"info_key": "leader_key.strict_processing", "value_type": "flag"}, diff --git a/data/mappings/info_rules.hjson b/data/mappings/info_rules.hjson index 384bc87b783..64972af63b0 100644 --- a/data/mappings/info_rules.hjson +++ b/data/mappings/info_rules.hjson @@ -25,6 +25,8 @@ "ENCODER_DRIVER": {"info_key": "encoder.driver"}, "FIRMWARE_FORMAT": {"info_key": "build.firmware_format"}, "HAPTIC_DRIVER": {"info_key": "haptic.driver"}, + "JOYSTICK_DRIVER": {"info_key": "joystick.driver"}, + "JOYSTICK_ENABLE": {"info_key": "joystick.enabled", "value_type": "bool"}, "KEYBOARD_SHARED_EP": {"info_key": "usb.shared_endpoint.keyboard", "value_type": "bool"}, "LAYOUTS": {"info_key": "community_layouts", "value_type": "list"}, "LED_MATRIX_DRIVER": {"info_key": "led_matrix.driver"}, diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 5b63acf8e80..e758c325c77 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -342,6 +342,36 @@ "on_state": {"$ref": "qmk.definitions.v1#/bit"} } }, + "joystick": { + "type": "object", + "properties": { + "enabled": {"type": "boolean"}, + "driver": {"type": "string"}, + "button_count": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "axis_resolution": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "axes": { + "type": "object", + "propertyNames": {"enum": ["x", "y", "z", "rx", "ry", "rz"]} + "additionalProperties": { + "oneOf": [ + { + "type": "object", + "properties": { + "input_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"}, + "low": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "rest": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "high": {"$ref": "qmk.definitions.v1#/unsigned_int"} + } + }, + { + "type": "string", + "enum": ["virtual"] + } + ] + } + } + } + }, "keycodes": {"$ref": "qmk.definitions.v1#/keycode_decl_array"}, "layout_aliases": { "type": "object", diff --git a/keyboards/handwired/battleship_gamepad/battleship_gamepad.c b/keyboards/handwired/battleship_gamepad/battleship_gamepad.c index cccc03a2872..7b5e65a9907 100644 --- a/keyboards/handwired/battleship_gamepad/battleship_gamepad.c +++ b/keyboards/handwired/battleship_gamepad/battleship_gamepad.c @@ -16,12 +16,6 @@ #include "quantum.h" -/* joystick config */ -joystick_config_t joystick_axes[JOYSTICK_AXIS_COUNT] = { - [0] = JOYSTICK_AXIS_IN(F5, 1023, 512, 0), - [1] = JOYSTICK_AXIS_IN(F4, 0, 512, 1023) -}; - /* joystick button code (thumbstick pressed) */ void keyboard_pre_init_kb(void) { gpio_set_pin_input_high(F6); diff --git a/keyboards/handwired/battleship_gamepad/config.h b/keyboards/handwired/battleship_gamepad/config.h deleted file mode 100644 index b785c80aadf..00000000000 --- a/keyboards/handwired/battleship_gamepad/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2021 Andrew Braini - * - * 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 . - */ - -#pragma once - -/* joystick configuration */ -#define JOYSTICK_BUTTON_COUNT 25 -#define JOYSTICK_AXIS_RESOLUTION 10 diff --git a/keyboards/handwired/battleship_gamepad/keyboard.json b/keyboards/handwired/battleship_gamepad/keyboard.json index 28327418758..8350f31fddb 100644 --- a/keyboards/handwired/battleship_gamepad/keyboard.json +++ b/keyboards/handwired/battleship_gamepad/keyboard.json @@ -13,6 +13,14 @@ "rows": ["B6", "B2", "B3", "B1", "F7"] }, "diode_direction": "COL2ROW", + "joystick": { + "button_count": 25, + "axis_resolution": 10, + "axes": { + "x": {"input_pin": "F5", "low": 1023, "rest": 512, "high": 0}, + "y": {"input_pin": "F4", "low": 0, "rest": 512, "high": 1023} + } + }, "processor": "atmega32u4", "bootloader": "caterina", "features": { diff --git a/keyboards/handwired/battleship_gamepad/rules.mk b/keyboards/handwired/battleship_gamepad/rules.mk deleted file mode 100644 index c5ab560bca9..00000000000 --- a/keyboards/handwired/battleship_gamepad/rules.mk +++ /dev/null @@ -1 +0,0 @@ -JOYSTICK_DRIVER = analog diff --git a/lib/python/qmk/cli/generate/keyboard_c.py b/lib/python/qmk/cli/generate/keyboard_c.py index 5a6c9674860..228b320942a 100755 --- a/lib/python/qmk/cli/generate/keyboard_c.py +++ b/lib/python/qmk/cli/generate/keyboard_c.py @@ -6,7 +6,7 @@ from qmk.info import info_json from qmk.commands import dump_lines from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.path import normpath -from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE +from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, JOYSTICK_AXES def _gen_led_configs(info_data): @@ -91,6 +91,41 @@ def _gen_matrix_mask(info_data): return lines +def _gen_joystick_axes(info_data): + """Convert info.json content to joystick_axes + """ + if 'axes' not in info_data.get('joystick', {}): + return [] + + axes = info_data['joystick']['axes'] + axes_keys = list(axes.keys()) + + lines = [] + lines.append('#ifdef JOYSTICK_ENABLE') + lines.append('joystick_config_t joystick_axes[JOYSTICK_AXIS_COUNT] = {') + + # loop over all available axes - injecting virtual axis for those not specified + for index, cur in enumerate(JOYSTICK_AXES): + # bail out if we have generated all requested axis + if len(axes_keys) == 0: + break + + axis = 'virtual' + if cur in axes: + axis = axes[cur] + axes_keys.remove(cur) + + if axis == 'virtual': + lines.append(f" [{index}] = JOYSTICK_AXIS_VIRTUAL,") + else: + lines.append(f" [{index}] = JOYSTICK_AXIS_IN({axis['input_pin']}, {axis['low']}, {axis['rest']}, {axis['high']}),") + + lines.append('};') + lines.append('#endif') + + return lines + + @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") @cli.argument('-kb', '--keyboard', arg_only=True, type=keyboard_folder, completer=keyboard_completer, required=True, help='Keyboard to generate keyboard.c for.') @@ -105,6 +140,7 @@ def generate_keyboard_c(cli): keyboard_h_lines.extend(_gen_led_configs(kb_info_json)) keyboard_h_lines.extend(_gen_matrix_mask(kb_info_json)) + keyboard_h_lines.extend(_gen_joystick_axes(kb_info_json)) # Show the results dump_lines(cli.args.output, keyboard_h_lines, cli.args.quiet) diff --git a/lib/python/qmk/constants.py b/lib/python/qmk/constants.py index 90e4452f2b9..b6f46180b29 100644 --- a/lib/python/qmk/constants.py +++ b/lib/python/qmk/constants.py @@ -320,3 +320,5 @@ LICENSE_TEXTS = [ you may not use this file except in compliance with the License. """]), ] + +JOYSTICK_AXES = ['x', 'y', 'z', 'rx', 'ry', 'rz'] diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index 833271c09cc..091a11854c0 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -7,7 +7,7 @@ from dotty_dict import dotty from milc import cli -from qmk.constants import COL_LETTERS, ROW_LETTERS, CHIBIOS_PROCESSORS, LUFA_PROCESSORS, VUSB_PROCESSORS +from qmk.constants import COL_LETTERS, ROW_LETTERS, CHIBIOS_PROCESSORS, LUFA_PROCESSORS, VUSB_PROCESSORS, JOYSTICK_AXES from qmk.c_parse import find_layouts, parse_config_h_file, find_led_config from qmk.json_schema import deep_update, json_load, validate from qmk.keyboard import config_h, rules_mk @@ -249,8 +249,9 @@ def info_json(keyboard): info_data = _extract_rules_mk(info_data, rules_mk(str(keyboard))) info_data = _extract_config_h(info_data, config_h(str(keyboard))) - # Ensure that we have matrix row and column counts + # Ensure that we have various calculated values info_data = _matrix_size(info_data) + info_data = _joystick_axis_count(info_data) # Merge in data from info_data = _extract_led_config(info_data, str(keyboard)) @@ -800,6 +801,16 @@ def _matrix_size(info_data): return info_data +def _joystick_axis_count(info_data): + """Add info_data['joystick.axis_count'] if required + """ + if 'axes' in info_data.get('joystick', {}): + axes_keys = info_data['joystick']['axes'].keys() + info_data['joystick']['axis_count'] = max(JOYSTICK_AXES.index(a) for a in axes_keys) + 1 if axes_keys else 0 + + return info_data + + def _check_matrix(info_data): """Check the matrix to ensure that row/column count is consistent. """ From 0a5b8928202078a7a64b7fadf11b0fc25a26b4a6 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 20 Jun 2024 04:43:23 +1000 Subject: [PATCH 117/519] [CLI] Force `dump_lines()` to always use Unix line endings (#23954) --- lib/python/qmk/commands.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/python/qmk/commands.py b/lib/python/qmk/commands.py index 3db8353bfda..873380c28b7 100644 --- a/lib/python/qmk/commands.py +++ b/lib/python/qmk/commands.py @@ -102,7 +102,9 @@ def dump_lines(output_file, lines, quiet=True): output_file.parent.mkdir(parents=True, exist_ok=True) if output_file.exists(): output_file.replace(output_file.parent / (output_file.name + '.bak')) - output_file.write_text(generated, encoding='utf-8') + with open(output_file, 'w', encoding='utf-8', newline='\n') as f: + f.write(generated) + # output_file.write_text(generated, encoding='utf-8', newline='\n') # `newline` needs Python 3.10 if not quiet: cli.log.info(f'Wrote {output_file.name} to {output_file}.') From 4fdde75333acce3c15eb1b733f7c29798804ed82 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 20 Jun 2024 02:59:29 +0100 Subject: [PATCH 118/519] Update 'qmk import-kbfirmware' to use 'keyboard.json' (#23960) --- lib/python/qmk/importers.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/python/qmk/importers.py b/lib/python/qmk/importers.py index 8c449a71940..35a38e8572b 100644 --- a/lib/python/qmk/importers.py +++ b/lib/python/qmk/importers.py @@ -102,7 +102,7 @@ def import_keyboard(info_data, keymap_data=None): # And validate some more as everything is optional if not all(key in info_data for key in ['keyboard_name', 'layouts']): - raise ValueError('invalid info.json') + raise ValueError('invalid json config') kb_name = info_data['keyboard_name'] @@ -115,7 +115,7 @@ def import_keyboard(info_data, keymap_data=None): # TODO: if supports community then grab that instead keymap_data = _gen_dummy_keymap(kb_name, info_data) - keyboard_info = kb_folder / 'info.json' + keyboard_json = kb_folder / 'keyboard.json' keyboard_keymap = kb_folder / 'keymaps' / 'default' / 'keymap.json' # begin with making the deepest folder in the tree @@ -136,10 +136,10 @@ def import_keyboard(info_data, keymap_data=None): for file in list(TEMPLATE.iterdir()): replace_placeholders(file, kb_folder / file.name, tokens) - temp = json_load(keyboard_info) + temp = json_load(keyboard_json) deep_update(temp, info_data) - keyboard_info.write_text(json.dumps(temp, cls=InfoJSONEncoder, sort_keys=True)) + keyboard_json.write_text(json.dumps(temp, cls=InfoJSONEncoder, sort_keys=True)) keyboard_keymap.write_text(json.dumps(keymap_data, cls=KeymapJSONEncoder, sort_keys=True)) return kb_name From a6ef34cd169f77f68788f9f0a8384a1143cdd122 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Thu, 20 Jun 2024 01:08:57 -0700 Subject: [PATCH 119/519] [Keyboard] fixes for ZSA Voyager (#23912) --- keyboards/zsa/voyager/ld/voyager.ld | 8 ++++---- keyboards/zsa/voyager/voyager.c | 5 ++--- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/keyboards/zsa/voyager/ld/voyager.ld b/keyboards/zsa/voyager/ld/voyager.ld index 0619983beb0..bfaed9df653 100644 --- a/keyboards/zsa/voyager/ld/voyager.ld +++ b/keyboards/zsa/voyager/ld/voyager.ld @@ -15,11 +15,11 @@ */ /* - * STM32F303xC memory setup. + * STM32F303xB memory setup. */ MEMORY { - flash0 (rx) : org = 0x08002000, len = 256k - 0x2000 + flash0 (rx) : org = 0x08002000, len = 128k - 0x2000 flash1 (rx) : org = 0x00000000, len = 0 flash2 (rx) : org = 0x00000000, len = 0 flash3 (rx) : org = 0x00000000, len = 0 @@ -27,7 +27,7 @@ MEMORY flash5 (rx) : org = 0x00000000, len = 0 flash6 (rx) : org = 0x00000000, len = 0 flash7 (rx) : org = 0x00000000, len = 0 - ram0 (wx) : org = 0x20000000, len = 40k + ram0 (wx) : org = 0x20000000, len = 32k ram1 (wx) : org = 0x00000000, len = 0 ram2 (wx) : org = 0x00000000, len = 0 ram3 (wx) : org = 0x00000000, len = 0 @@ -82,4 +82,4 @@ REGION_ALIAS("BSS_RAM", ram0); REGION_ALIAS("HEAP_RAM", ram0); /* Generic rules inclusion.*/ -INCLUDE rules.ld \ No newline at end of file +INCLUDE rules.ld diff --git a/keyboards/zsa/voyager/voyager.c b/keyboards/zsa/voyager/voyager.c index d70f1be3eff..3255f25a979 100644 --- a/keyboards/zsa/voyager/voyager.c +++ b/keyboards/zsa/voyager/voyager.c @@ -12,7 +12,6 @@ bool is_launching = false; #if defined(DEFERRED_EXEC_ENABLE) # if defined(DYNAMIC_MACRO_ENABLE) deferred_token dynamic_macro_token = INVALID_DEFERRED_TOKEN; - static uint32_t dynamic_macro_led(uint32_t trigger_time, void *cb_arg) { static bool led_state = true; if (!is_launching) { @@ -22,8 +21,8 @@ static uint32_t dynamic_macro_led(uint32_t trigger_time, void *cb_arg) { return 100; } -void dynamic_macro_record_start_user(void) { - if (my_token == INVALID_DEFERRED_TOKEN) { +void dynamic_macro_record_start_user(int8_t direction) { + if (dynamic_macro_token == INVALID_DEFERRED_TOKEN) { STATUS_LED_3(true); dynamic_macro_token = defer_exec(100, dynamic_macro_led, NULL); } From 751a6b5bc4404e8398b360a925cb95e17be848d8 Mon Sep 17 00:00:00 2001 From: Amir Date: Fri, 21 Jun 2024 02:42:16 +0330 Subject: [PATCH 120/519] add farsi keymap extras (#23650) --- .../extras/keycodes_farsi_0.0.1.hjson | 616 ++++++++++++++++++ docs/reference_keymap_extras.md | 1 + quantum/keymap_extras/keymap_farsi.h | 171 +++++ 3 files changed, 788 insertions(+) create mode 100644 data/constants/keycodes/extras/keycodes_farsi_0.0.1.hjson create mode 100644 quantum/keymap_extras/keymap_farsi.h diff --git a/data/constants/keycodes/extras/keycodes_farsi_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_farsi_0.0.1.hjson new file mode 100644 index 00000000000..d59b6fab264 --- /dev/null +++ b/data/constants/keycodes/extras/keycodes_farsi_0.0.1.hjson @@ -0,0 +1,616 @@ +{ + "aliases": { +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ │ ۱ │ ۲ │ ۳ │ ۴ │ ۵ │ ۶ │ ۷ │ ۸ │ ۹ │ ۰ │ - │ = │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ ض │ ص │ ث │ ق │ ف │ غ │ ع │ ه │ خ │ ح │ ج │ چ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ ش │ س │ ی │ ب │ ل │ ا │ ت │ ن │ م │ ک │ گ │ \ │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ + * │ │ < │ ظ │ ط │ ز │ ر │ ذ │ د │ پ │ و │ . │ / │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ + "KC_GRV": { + "key": "FA_ZWJ", + "label": "(zero-width joiner)", + } + "KC_1": { + "key": "FA_1A", + "label": "۱", + } + "KC_2": { + "key": "FA_2A", + "label": "۲", + } + "KC_3": { + "key": "FA_3A", + "label": "۳", + } + "KC_4": { + "key": "FA_4A", + "label": "۴", + } + "KC_5": { + "key": "FA_5A", + "label": "۵", + } + "KC_6": { + "key": "FA_6A", + "label": "۶", + } + "KC_7": { + "key": "FA_7A", + "label": "۷", + } + "KC_8": { + "key": "FA_8A", + "label": "۸", + } + "KC_9": { + "key": "FA_9A", + "label": "۹", + } + "KC_0": { + "key": "FA_0A", + "label": "۰", + } + "KC_MINS": { + "key": "FA_MINS", + "label": "-", + } + "KC_EQL": { + "key": "FA_EQL", + "label": "=", + } + "KC_Q": { + "key": "FA_ZAD", + "label": "ض", + } + "KC_W": { + "key": "FA_SAD", + "label": "ص", + } + "KC_E": { + "key": "FA_SE", + "label": "ث", + } + "KC_R": { + "key": "FA_QAF", + "label": "ق", + } + "KC_T": { + "key": "FA_FE", + "label": "ف", + } + "KC_Y": { + "key": "FA_GHYN", + "label": "غ", + } + "KC_U": { + "key": "FA_EYN", + "label": "ع", + } + "KC_I": { + "key": "FA_HE", + "label": "ه", + } + "KC_O": { + "key": "FA_KHE", + "label": "خ", + } + "KC_P": { + "key": "FA_HEJ", + "label": "ح", + } + "KC_LBRC": { + "key": "FA_JIM", + "label": "ج", + } + "KC_RBRC": { + "key": "FA_CHE", + "label": "چ", + } + "KC_A": { + "key": "FA_SHIN", + "label": "ش", + } + "KC_S": { + "key": "FA_SIN", + "label": "س", + } + "KC_D": { + "key": "FA_YE", + "label": "ی", + } + "KC_F": { + "key": "FA_BE", + "label": "ب", + } + "KC_G": { + "key": "FA_LAM", + "label": "ل", + } + "KC_H": { + "key": "FA_ALEF", + "label": "ا", + } + "KC_J": { + "key": "FA_TE", + "label": "ت", + } + "KC_K": { + "key": "FA_NOON", + "label": "ن", + } + "KC_L": { + "key": "FA_MIM", + "label": "م", + } + "KC_SCLN": { + "key": "FA_KAF", + "label": "ک", + } + "KC_QUOT": { + "key": "FA_GAF", + "label": "گ", + } + "KC_BSLS": { + "key": "FA_BSLS", + "label": "\\", + } + "KC_LT": { + "key": "FA_LT", + "label": "<", + } + "KC_Z": { + "key": "FA_ZA", + "label": "ظ", + } + "KC_X": { + "key": "FA_TA", + "label": "ط", + } + "KC_C": { + "key": "FA_ZE", + "label": "ز", + } + "KC_V": { + "key": "FA_RE", + "label": "ر", + } + "KC_B": { + "key": "FA_ZAL", + "label": "ذ", + } + "KC_N": { + "key": "FA_DAL", + "label": "د", + } + "KC_M": { + "key": "FA_PE", + "label": "پ", + } + "KC_COMM": { + "key": "FA_WAW", + "label": "و", + } + "KC_DOT": { + "key": "FA_DOT", + "label": ".", + } + "KC_SLSH": { + "key": "FA_SLSH", + "label": "/", + } + "KC_SPC": { + "key": "FA_SPC", + "label": " ", + } +/* Shifted symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ÷ │ ! │ ٬ │ ٫ │ ﷼ │ ٪ │ × │ ، │ * │ ) │ ( │ ـ │ + │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ ْ │ ٌ │ ٍ │ ً │ ُ │ ِ │ َ │ ّ │ ] │ [ │ } │ { │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ ؤ │ ئ │ ي │ إ │ أ │ آ │ ة │ » │ « │ : │ ؛ │ | │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ + * │ │ > │ ك │ ٓ │ ژ │ ٰ │ │ ٔ │ ء │ │ │ ؟ │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ + "S(FA_ZWJ)": { + "key": "FA_DIV", + "label": "÷", + } + "S(FA_1A)": { + "key": "FA_EXLM", + "label": "!", + } + "S(FA_2A)": { + "key": "FA_THS", + "label": "٬", + } + "S(FA_3A)": { + "key": "FA_DECS", + "label": "٫", + } + "S(FA_4A)": { + "key": "FA_RIAL", + "label": "﷼", + } + "S(FA_5A)": { + "key": "FA_PRCA", + "label": "٪", + } + "S(FA_6A)": { + "key": "FA_MUL", + "label": "×", + } + "S(FA_7A)": { + "key": "FA_COMA", + "label": "،", + } + "S(FA_8A)": { + "key": "FA_ASTR", + "label": "*", + } + "S(FA_9A)": { + "key": "FA_RPRN", + "label": ")", + } + "S(FA_0A)": { + "key": "FA_LPRN", + "label": "(", + } + "S(FA_MINS)": { + "key": "FA_TATW", + "label": "ـ", + } + "S(FA_EQL)": { + "key": "FA_PLUS", + "label": "+", + } + "S(FA_ZAD)": { + "key": "FA_SUK", + "label": "ْ", + } + "S(FA_SAD)": { + "key": "FA_DMTN", + "label": "ٌ", + } + "S(FA_SE)": { + "key": "FA_KSTN", + "label": "ٍ", + } + "S(FA_QAF)": { + "key": "FA_FTHN", + "label": "ً", + } + "S(FA_FE)": { + "key": "FA_DMM", + "label": "ُ", + } + "S(FA_GHYN)": { + "key": "FA_KAS", + "label": "ِ", + } + "S(FA_EYN)": { + "key": "FA_FAT", + "label": "َ", + } + "S(FA_HE)": { + "key": "FA_TSDD", + "label": "", + } + "S(FA_KHE)": { + "key": "FA_RBRC", + "label": "]", + } + "S(FA_HEJ)": { + "key": "FA_LBRC", + "label": "[", + } + "S(FA_JIM)": { + "key": "FA_RCBR", + "label": "}", + } + "S(FA_CHE)": { + "key": "FA_LCBR", + "label": "{", + } + "S(FA_SHIN)": { + "key": "FA_HMZV", + "label": "ؤ", + } + "S(FA_SIN)": { + "key": "FA_HMZY", + "label": "ئ", + } + "S(FA_YE)": { + "key": "FA_YEA", + "label": "ي", + } + "S(FA_BE)": { + "key": "FA_HMZU", + "label": "إ", + } + "S(FA_LAM)": { + "key": "FA_HMZO", + "label": "أ", + } + "S(FA_ALEF)": { + "key": "FA_MALF", + "label": "آ", + } + "S(FA_TE)": { + "key": "FA_TEHM", + "label": "ة", + } + "S(FA_NOON)": { + "key": "FA_RQOT", + "label": "»", + } + "S(FA_MIM)": { + "key": "FA_LQOT", + "label": "«", + } + "S(FA_KAF)": { + "key": "FA_COLN", + "label": ":", + } + "S(FA_GAF)": { + "key": "FA_SCLA", + "label": "؛", + } + "S(FA_LT)": { + "key": "FA_GT", + "label": ">", + } + "S(FA_ZA)": { + "key": "FA_KAFA", + "label": "ك", + } + "S(FA_TA)": { + "key": "FA_MADO", + "label": "ٓ", + } + "S(FA_ZE)": { + "key": "FA_JEH", + "label": "ژ", + } + "S(FA_RE)": { + "key": "FA_SUPA", + "label": "ٰ", + } + "S(FA_ZAL)": { + "key": "FA_ZWNJ", + "label": "(zero-width non-joiner)", + } + "S(FA_DAL)": { + "key": "FA_HMZA", + "label": "ٔ", + } + "S(FA_PE)": { + "key": "FA_HMZ", + "label": "ء", + } + "S(FA_SLSH)": { + "key": "FA_QSA", + "label": "؟", + } +/* AltGr symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ~ │ ` │ @ │ # │ $ │ % │ ^ │ & │ • │ │ │ _ │ − │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ ° │ │ € │ │ │ │ │ │ │ │ │ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ │ │ ى │ │ │ ٱ │ │ ﴾ │ ﴿ │ ; │ " │ ‐ │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ + * │ │ | │ │ │ │ ٖ │ │ ٕ │ … │ , │ ' │ ? │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ + "ALGR(FA_ZWJ)": { + "key": "FA_TILD", + "label": "~", + } + "ALGR(FA_1A)": { + "key": "FA_GRV", + "label": "`", + } + "ALGR(FA_2A)": { + "key": "FA_AT", + "label": "@", + } + "ALGR(FA_3A)": { + "key": "FA_HASH", + "label": "#", + } + "ALGR(FA_4A)": { + "key": "FA_DLR", + "label": "$", + } + "ALGR(FA_5A)": { + "key": "FA_PERC", + "label": "%", + } + "ALGR(FA_6A)": { + "key": "FA_CIRC", + "label": "^", + } + "ALGR(FA_7A)": { + "key": "FA_AMPR", + "label": "&", + } + "ALGR(FA_8A)": { + "key": "FA_BULT", + "label": "•", + } + "ALGR(FA_9A)": { + "key": "FA_LRM", + "label": "(left-to-right mark)", + } + "ALGR(FA_0A)": { + "key": "FA_RLM", + "label": "(right-to-left mark)", + } + "ALGR(FA_MINS)": { + "key": "FA_UNDS", + "label": "_", + } + "ALGR(FA_EQL)": { + "key": "FA_DMNS", + "label": "− (dead)", + } + "ALGR(FA_ZAD)": { + "key": "FA_DEG", + "label": "°", + } + "ALGR(FA_SE)": { + "key": "FA_EURO", + "label": "€", + } + "ALGR(FA_HE)": { + "key": "FA_LRO", + "label": "(left-to-right override)", + } + "ALGR(FA_KHE)": { + "key": "FA_RLO", + "label": "(right-to-left override)", + } + "ALGR(FA_HEJ)": { + "key": "FA_PDF", + "label": "(pop directional formatting)", + } + "ALGR(FA_JIM)": { + "key": "FA_LRE", + "label": "(left-to-right embedding)", + } + "ALGR(FA_CHE)": { + "key": "FA_RLE", + "label": "(right-to-left embedding)", + } + "ALGR(FA_YE)": { + "key": "FA_ALFM", + "label": "ى", + } + "ALGR(FA_ALEF)": { + "key": "FA_ALFW", + "label": "ٱ", + } + "ALGR(FA_NOON)": { + "key": "FA_LORP", + "label": "﴾", + } + "ALGR(FA_MIM)": { + "key": "FA_RORP", + "label": "﴿", + } + "ALGR(FA_KAF)": { + "key": "FA_SCLN", + "label": ";", + } + "ALGR(FA_GAF)": { + "key": "FA_DQT", + "label": "\"", + } + "ALGR(FA_BSLS)": { + "key": "FA_MINA", + "label": "-", + } + "ALGR(FA_ZA)": { + "key": "FA_PIPE", + "label": "|", + } + "ALGR(FA_RA)": { + "key": "FA_SUBA", + "label": "ٖ", + } + "ALGR(FA_DAL)": { + "key": "FA_HMZB", + "label": "ء", + } + "ALGR(FA_PE)": { + "key": "FA_ELLP", + "label": "…", + } + "ALGR(FA_WAW)": { + "key": "FA_COMM", + "label": ",", + } + "ALGR(FA_DOT)": { + "key": "FA_QUOT", + "label": "'", + } + "ALGR(FA_SLSH)": { + "key": "FA_QUES", + "label": "?", + } +/* Shift+AltGr symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ │ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ + * │ │ ¦ │ │ │ │ │ │ │ │ │ │ │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ + "S(ALGR(FA_1A))": { + "key": "FA_1", + "label": "1", + } + "S(ALGR(FA_2A))": { + "key": "FA_2", + "label": "2", + } + "S(ALGR(FA_3A))": { + "key": "FA_3", + "label": "3", + } + "S(ALGR(FA_4A))": { + "key": "FA_4", + "label": "4", + } + "S(ALGR(FA_5A))": { + "key": "FA_5", + "label": "5", + } + "S(ALGR(FA_6A))": { + "key": "FA_6", + "label": "6", + } + "S(ALGR(FA_7A))": { + "key": "FA_7", + "label": "7", + } + "S(ALGR(FA_8A))": { + "key": "FA_8", + "label": "8", + } + "S(ALGR(FA_9A))": { + "key": "FA_9", + "label": "9", + } + "S(ALGR(FA_0A))": { + "key": "FA_0", + "label": "0", + } + "S(ALGR(FA_LT))": { + "key": "FA_BRKP", + "label": "¦", + } + "S(ALGR(FA_SPC))": { + "key": "FA_NNBS", + "label": "(narrow non-breaking space)", + } + } +} diff --git a/docs/reference_keymap_extras.md b/docs/reference_keymap_extras.md index 191e0d4ea8d..d45183b6c6a 100644 --- a/docs/reference_keymap_extras.md +++ b/docs/reference_keymap_extras.md @@ -33,6 +33,7 @@ These headers are located in [`quantum/keymap_extras/`](https://github.com/qmk/q |English (US International) |`keymap_us_international.h` |`sendstring_us_international.h` | |English (US International, Linux)|`keymap_us_international_linux.h`| | |Estonian |`keymap_estonian.h` |`sendstring_estonian.h` | +|Farsi |`keymap_farsi.h` | | |Finnish |`keymap_finnish.h` |`sendstring_finnish.h` | |French |`keymap_french.h` |`sendstring_french.h` | |French (AFNOR) |`keymap_french_afnor.h` |`sendstring_french_afnor.h` | diff --git a/quantum/keymap_extras/keymap_farsi.h b/quantum/keymap_extras/keymap_farsi.h new file mode 100644 index 00000000000..d2689175131 --- /dev/null +++ b/quantum/keymap_extras/keymap_farsi.h @@ -0,0 +1,171 @@ +// Copyright 2024 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" +*******************************************************************************/ + +#pragma once +#include "keycodes.h" +// clang-format off + +// Aliases +#define FA_ZWJ KC_GRV // (zero-width joiner) +#define FA_1A KC_1 // ۱ +#define FA_2A KC_2 // ۲ +#define FA_3A KC_3 // ۳ +#define FA_4A KC_4 // ۴ +#define FA_5A KC_5 // ۵ +#define FA_6A KC_6 // ۶ +#define FA_7A KC_7 // ۷ +#define FA_8A KC_8 // ۸ +#define FA_9A KC_9 // ۹ +#define FA_0A KC_0 // ۰ +#define FA_MINS KC_MINS // - +#define FA_EQL KC_EQL // = +#define FA_ZAD KC_Q // ض +#define FA_SAD KC_W // ص +#define FA_SE KC_E // ث +#define FA_QAF KC_R // ق +#define FA_FE KC_T // ف +#define FA_GHYN KC_Y // غ +#define FA_EYN KC_U // ع +#define FA_HE KC_I // ه +#define FA_KHE KC_O // خ +#define FA_HEJ KC_P // ح +#define FA_JIM KC_LBRC // ج +#define FA_CHE KC_RBRC // چ +#define FA_SHIN KC_A // ش +#define FA_SIN KC_S // س +#define FA_YE KC_D // ی +#define FA_BE KC_F // ب +#define FA_LAM KC_G // ل +#define FA_ALEF KC_H // ا +#define FA_TE KC_J // ت +#define FA_NOON KC_K // ن +#define FA_MIM KC_L // م +#define FA_KAF KC_SCLN // ک +#define FA_GAF KC_QUOT // گ +#define FA_BSLS KC_BSLS // (backslash) +#define FA_LT KC_LT // < +#define FA_ZA KC_Z // ظ +#define FA_TA KC_X // ط +#define FA_ZE KC_C // ز +#define FA_RE KC_V // ر +#define FA_ZAL KC_B // ذ +#define FA_DAL KC_N // د +#define FA_PE KC_M // پ +#define FA_WAW KC_COMM // و +#define FA_DOT KC_DOT // . +#define FA_SLSH KC_SLSH // / +#define FA_SPC KC_SPC // +#define FA_DIV S(FA_ZWJ) // ÷ +#define FA_EXLM S(FA_1A) // ! +#define FA_THS S(FA_2A) // ٬ +#define FA_DECS S(FA_3A) // ٫ +#define FA_RIAL S(FA_4A) // ﷼ +#define FA_PRCA S(FA_5A) // ٪ +#define FA_MUL S(FA_6A) // × +#define FA_COMA S(FA_7A) // ، +#define FA_ASTR S(FA_8A) // * +#define FA_RPRN S(FA_9A) // ) +#define FA_LPRN S(FA_0A) // ( +#define FA_TATW S(FA_MINS) // ـ +#define FA_PLUS S(FA_EQL) // + +#define FA_SUK S(FA_ZAD) // ْ +#define FA_DMTN S(FA_SAD) // ٌ +#define FA_KSTN S(FA_SE) // ٍ +#define FA_FTHN S(FA_QAF) // ً +#define FA_DMM S(FA_FE) // ُ +#define FA_KAS S(FA_GHYN) // ِ +#define FA_FAT S(FA_EYN) // َ +#define FA_TSDD S(FA_HE) // +#define FA_RBRC S(FA_KHE) // ] +#define FA_LBRC S(FA_HEJ) // [ +#define FA_RCBR S(FA_JIM) // } +#define FA_LCBR S(FA_CHE) // { +#define FA_HMZV S(FA_SHIN) // ؤ +#define FA_HMZY S(FA_SIN) // ئ +#define FA_YEA S(FA_YE) // ي +#define FA_HMZU S(FA_BE) // إ +#define FA_HMZO S(FA_LAM) // أ +#define FA_MALF S(FA_ALEF) // آ +#define FA_TEHM S(FA_TE) // ة +#define FA_RQOT S(FA_NOON) // » +#define FA_LQOT S(FA_MIM) // « +#define FA_COLN S(FA_KAF) // : +#define FA_SCLA S(FA_GAF) // ؛ +#define FA_GT S(FA_LT) // > +#define FA_KAFA S(FA_ZA) // ك +#define FA_MADO S(FA_TA) // ٓ +#define FA_JEH S(FA_ZE) // ژ +#define FA_SUPA S(FA_RE) // ٰ +#define FA_ZWNJ S(FA_ZAL) // (zero-width non-joiner) +#define FA_HMZA S(FA_DAL) // ٔ +#define FA_HMZ S(FA_PE) // ء +#define FA_QSA S(FA_SLSH) // ؟ +#define FA_TILD ALGR(FA_ZWJ) // ~ +#define FA_GRV ALGR(FA_1A) // ` +#define FA_AT ALGR(FA_2A) // @ +#define FA_HASH ALGR(FA_3A) // # +#define FA_DLR ALGR(FA_4A) // $ +#define FA_PERC ALGR(FA_5A) // % +#define FA_CIRC ALGR(FA_6A) // ^ +#define FA_AMPR ALGR(FA_7A) // & +#define FA_BULT ALGR(FA_8A) // • +#define FA_LRM ALGR(FA_9A) // (left-to-right mark) +#define FA_RLM ALGR(FA_0A) // (right-to-left mark) +#define FA_UNDS ALGR(FA_MINS) // _ +#define FA_DMNS ALGR(FA_EQL) // − (dead) +#define FA_DEG ALGR(FA_ZAD) // ° +#define FA_EURO ALGR(FA_SE) // € +#define FA_LRO ALGR(FA_HE) // (left-to-right override) +#define FA_RLO ALGR(FA_KHE) // (right-to-left override) +#define FA_PDF ALGR(FA_HEJ) // (pop directional formatting) +#define FA_LRE ALGR(FA_JIM) // (left-to-right embedding) +#define FA_RLE ALGR(FA_CHE) // (right-to-left embedding) +#define FA_ALFM ALGR(FA_YE) // ى +#define FA_ALFW ALGR(FA_ALEF) // ٱ +#define FA_LORP ALGR(FA_NOON) // ﴾ +#define FA_RORP ALGR(FA_MIM) // ﴿ +#define FA_SCLN ALGR(FA_KAF) // ; +#define FA_DQT ALGR(FA_GAF) // " +#define FA_MINA ALGR(FA_BSLS) // - +#define FA_PIPE ALGR(FA_ZA) // | +#define FA_SUBA ALGR(FA_RA) // ٖ +#define FA_HMZB ALGR(FA_DAL) // ء +#define FA_ELLP ALGR(FA_PE) // … +#define FA_COMM ALGR(FA_WAW) // , +#define FA_QUOT ALGR(FA_DOT) // ' +#define FA_QUES ALGR(FA_SLSH) // ? +#define FA_1 S(ALGR(FA_1A)) // 1 +#define FA_2 S(ALGR(FA_2A)) // 2 +#define FA_3 S(ALGR(FA_3A)) // 3 +#define FA_4 S(ALGR(FA_4A)) // 4 +#define FA_5 S(ALGR(FA_5A)) // 5 +#define FA_6 S(ALGR(FA_6A)) // 6 +#define FA_7 S(ALGR(FA_7A)) // 7 +#define FA_8 S(ALGR(FA_8A)) // 8 +#define FA_9 S(ALGR(FA_9A)) // 9 +#define FA_0 S(ALGR(FA_0A)) // 0 +#define FA_BRKP S(ALGR(FA_LT)) // ¦ +#define FA_NNBS S(ALGR(FA_SPC)) // (narrow non-breaking space) + From aa11ef5bcf012960081e9f8e23cc9c6025161142 Mon Sep 17 00:00:00 2001 From: Kevin Horvat Date: Sat, 22 Jun 2024 02:53:59 +0200 Subject: [PATCH 121/519] Fix leftover reference to previous AW20216S EN pin definition (#23974) --- keyboards/gmmk/numpad/numpad.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/keyboards/gmmk/numpad/numpad.c b/keyboards/gmmk/numpad/numpad.c index cdbc4b871a8..87446d8f497 100644 --- a/keyboards/gmmk/numpad/numpad.c +++ b/keyboards/gmmk/numpad/numpad.c @@ -107,12 +107,14 @@ led_config_t g_led_config = {{ 2, 2, 2, 2, 2, 2, 2 } }; -# ifdef AW20216S_PW_EN_PIN_1 +# ifdef AW20216S_PW_EN_PIN -void keyboard_pre_init_user(void) { +void keyboard_pre_init_kb(void) { wait_ms(2000); gpio_set_pin_output(AW20216S_PW_EN_PIN); gpio_write_pin_high(AW20216S_PW_EN_PIN); + + keyboard_pre_init_user(); } # endif From e5c80fc6b3a812faae3f5fe676e572d5c505b4f7 Mon Sep 17 00:00:00 2001 From: Danny Date: Fri, 21 Jun 2024 23:27:15 -0400 Subject: [PATCH 122/519] Update what's powering QMK docs (#23977) --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index f0e49a08e95..5025b40d959 100644 --- a/readme.md +++ b/readme.md @@ -12,7 +12,7 @@ This is a keyboard firmware based on the [tmk\_keyboard firmware](https://github * [See the official documentation on docs.qmk.fm](https://docs.qmk.fm) -The docs are powered by [Docsify](https://docsify.js.org/) and hosted on [GitHub](/docs/). They are also viewable offline; see [Previewing the Documentation](https://docs.qmk.fm/#/contributing?id=previewing-the-documentation) for more details. +The docs are powered by [VitePress](https://vitepress.dev/) and hosted on [GitHub](/docs/). They are also viewable offline; see [Previewing the Documentation](https://docs.qmk.fm/#/contributing?id=previewing-the-documentation) for more details. You can request changes by making a fork and opening a [pull request](https://github.com/qmk/qmk_firmware/pulls), or by clicking the "Edit this page" link at the bottom of any page. From 6f03d20a92b01d656fe911aa025186056aefb9e9 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 22 Jun 2024 04:27:57 +0100 Subject: [PATCH 123/519] Fix 'qmk import-kbfirmware' WS2812 config (#23976) --- lib/python/qmk/importers.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/python/qmk/importers.py b/lib/python/qmk/importers.py index 35a38e8572b..3e7f305a433 100644 --- a/lib/python/qmk/importers.py +++ b/lib/python/qmk/importers.py @@ -181,9 +181,17 @@ def import_kbfirmware(kbfirmware_data): info_data['indicators.scroll_lock'] = kbf_data['keyboard.pins.scroll'] if kbf_data['keyboard.pins.rgb']: - info_data['rgblight.animations.all'] = True + info_data['rgblight.animations'] = { # Comment here is to force multiline formatting + "breathing": True, + "rainbow_mood": True, + "rainbow_swirl": True, + "snake": True, + "knight": True, + "static_gradient": True, + "twinkle": True + } info_data['rgblight.led_count'] = kbf_data['keyboard.settings.rgbNum'] - info_data['rgblight.pin'] = kbf_data['keyboard.pins.rgb'] + info_data['ws2812.pin'] = kbf_data['keyboard.pins.rgb'] if kbf_data['keyboard.pins.led']: info_data['backlight.levels'] = kbf_data['keyboard.settings.backlightLevels'] From 7aa2ce2b38e7cf38f148d0781eae525d72260b8b Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 22 Jun 2024 05:45:04 +0100 Subject: [PATCH 124/519] Update documentation suggestion in top level readme (#23978) --- docs/contributing.md | 4 +++- readme.md | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/docs/contributing.md b/docs/contributing.md index 14025c2c505..43b2214d09d 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -105,7 +105,9 @@ enum my_keycodes { Before opening a pull request, you can preview your changes if you have set up the development environment by running this command from the `qmk_firmware/` folder: - qmk docs +``` +qmk docs +``` and navigating to `http://localhost:5173/`. diff --git a/readme.md b/readme.md index 5025b40d959..5501089e861 100644 --- a/readme.md +++ b/readme.md @@ -12,9 +12,9 @@ This is a keyboard firmware based on the [tmk\_keyboard firmware](https://github * [See the official documentation on docs.qmk.fm](https://docs.qmk.fm) -The docs are powered by [VitePress](https://vitepress.dev/) and hosted on [GitHub](/docs/). They are also viewable offline; see [Previewing the Documentation](https://docs.qmk.fm/#/contributing?id=previewing-the-documentation) for more details. +The docs are powered by [VitePress](https://vitepress.dev/). They are also viewable offline; see [Previewing the Documentation](https://docs.qmk.fm/#/contributing?id=previewing-the-documentation) for more details. -You can request changes by making a fork and opening a [pull request](https://github.com/qmk/qmk_firmware/pulls), or by clicking the "Edit this page" link at the bottom of any page. +You can request changes by making a fork and opening a [pull request](https://github.com/qmk/qmk_firmware/pulls). ## Supported Keyboards From 99aa4f5191ae0e120503385869b3b24baeaf223a Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 22 Jun 2024 09:10:12 +0100 Subject: [PATCH 125/519] Migrate `led_update_kb` implementations to DD (#23980) --- keyboards/aeboards/ext65/rev1/keyboard.json | 5 ++ keyboards/aeboards/ext65/rev1/rev1.c | 19 ++----- keyboards/aeboards/ext65/rev2/keyboard.json | 5 ++ keyboards/aeboards/ext65/rev2/rev2.c | 15 ------ keyboards/heliar/wm1_hotswap/keyboard.json | 6 +++ keyboards/heliar/wm1_hotswap/wm1_hotswap.c | 39 -------------- keyboards/hineybush/h10/h10.c | 34 ------------- keyboards/hineybush/h10/keyboard.json | 4 ++ keyboards/hineybush/h60/h60.c | 31 ----------- keyboards/hineybush/h60/keyboard.json | 4 ++ keyboards/hineybush/h87a/h87a.c | 16 ------ keyboards/hineybush/h87a/keyboard.json | 5 ++ keyboards/hineybush/h88/h88.c | 16 ------ keyboards/hineybush/h88/keyboard.json | 5 ++ keyboards/hineybush/physix/keyboard.json | 4 ++ keyboards/hineybush/physix/physix.c | 49 ------------------ keyboards/kc60se/kc60se.c | 30 ----------- keyboards/kc60se/keyboard.json | 4 ++ .../classy_tkl/rev_a/keyboard.json | 4 ++ .../masterworks/classy_tkl/rev_a/rev_a.c | 42 --------------- keyboards/matrix/cain_re/cain_re.c | 40 --------------- keyboards/matrix/cain_re/config.h | 24 --------- keyboards/matrix/cain_re/keyboard.json | 5 ++ keyboards/matrix/m12og/rev2/keyboard.json | 6 +++ keyboards/matrix/m12og/rev2/rev2.c | 23 --------- keyboards/quad_h/lb75/keyboard.json | 5 ++ keyboards/quad_h/lb75/lb75.c | 39 -------------- keyboards/rmi_kb/wete/v1/keyboard.json | 6 +++ keyboards/rmi_kb/wete/v1/v1.c | 35 ------------- .../switchplate/southpaw_65/keyboard.json | 4 ++ .../switchplate/southpaw_65/southpaw_65.c | 30 ----------- .../southpaw_fullsize/keyboard.json | 6 +++ .../southpaw_fullsize/southpaw_fullsize.c | 51 ------------------- .../westfoxtrot/cypher/rev1/keyboard.json | 5 ++ keyboards/westfoxtrot/cypher/rev1/rev1.c | 31 ----------- .../westfoxtrot/cypher/rev5/keyboard.json | 5 ++ keyboards/westfoxtrot/cypher/rev5/rev5.c | 31 ----------- keyboards/westfoxtrot/prophet/keyboard.json | 3 ++ keyboards/westfoxtrot/prophet/prophet.c | 11 +--- 39 files changed, 96 insertions(+), 601 deletions(-) delete mode 100644 keyboards/heliar/wm1_hotswap/wm1_hotswap.c delete mode 100644 keyboards/hineybush/h10/h10.c delete mode 100644 keyboards/hineybush/h60/h60.c delete mode 100644 keyboards/hineybush/physix/physix.c delete mode 100644 keyboards/kc60se/kc60se.c delete mode 100644 keyboards/masterworks/classy_tkl/rev_a/rev_a.c delete mode 100644 keyboards/matrix/cain_re/cain_re.c delete mode 100644 keyboards/matrix/cain_re/config.h delete mode 100644 keyboards/matrix/m12og/rev2/rev2.c delete mode 100644 keyboards/quad_h/lb75/lb75.c delete mode 100644 keyboards/rmi_kb/wete/v1/v1.c delete mode 100644 keyboards/switchplate/southpaw_65/southpaw_65.c delete mode 100644 keyboards/switchplate/southpaw_fullsize/southpaw_fullsize.c delete mode 100644 keyboards/westfoxtrot/cypher/rev1/rev1.c delete mode 100644 keyboards/westfoxtrot/cypher/rev5/rev5.c diff --git a/keyboards/aeboards/ext65/rev1/keyboard.json b/keyboards/aeboards/ext65/rev1/keyboard.json index c254a671421..1d105505e53 100644 --- a/keyboards/aeboards/ext65/rev1/keyboard.json +++ b/keyboards/aeboards/ext65/rev1/keyboard.json @@ -13,6 +13,11 @@ "extrakey": true, "nkro": true }, + "indicators": { + "caps_lock": "D3", + "num_lock": "D5", + "scroll_lock": "D2" + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "diode_direction": "COL2ROW", diff --git a/keyboards/aeboards/ext65/rev1/rev1.c b/keyboards/aeboards/ext65/rev1/rev1.c index 344a2bcb322..fc8280a5e4e 100644 --- a/keyboards/aeboards/ext65/rev1/rev1.c +++ b/keyboards/aeboards/ext65/rev1/rev1.c @@ -16,23 +16,10 @@ #include "quantum.h" -void keyboard_pre_init_user(void) { - // Call the keyboard pre init code. - // Set our LED pins as output - gpio_set_pin_output(D5); - gpio_set_pin_output(D3); - gpio_set_pin_output(D2); - gpio_set_pin_output(D1); -} +void keyboard_pre_init_kb(void) { + gpio_set_pin_output(D1); -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(D5, led_state.num_lock); - gpio_write_pin(D3, led_state.caps_lock); - gpio_write_pin(D2, led_state.scroll_lock); - } - return res; + keyboard_pre_init_user(); } layer_state_t layer_state_set_kb(layer_state_t state) { diff --git a/keyboards/aeboards/ext65/rev2/keyboard.json b/keyboards/aeboards/ext65/rev2/keyboard.json index 0ab50f92582..ab7cceeefb3 100644 --- a/keyboards/aeboards/ext65/rev2/keyboard.json +++ b/keyboards/aeboards/ext65/rev2/keyboard.json @@ -22,6 +22,11 @@ "levels": 6, "breathing": true }, + "indicators": { + "caps_lock": "B3", + "num_lock": "B4", + "scroll_lock": "A15" + }, "rgblight": { "led_count": 24, "animations": { diff --git a/keyboards/aeboards/ext65/rev2/rev2.c b/keyboards/aeboards/ext65/rev2/rev2.c index 5922b601cd1..7b8ebb00875 100644 --- a/keyboards/aeboards/ext65/rev2/rev2.c +++ b/keyboards/aeboards/ext65/rev2/rev2.c @@ -69,26 +69,11 @@ bool oled_task_kb(void) { #else void keyboard_pre_init_kb(void) { - // Call the keyboard pre init code. - // Set our LED pins as output - gpio_set_pin_output(B4); - gpio_set_pin_output(B3); - gpio_set_pin_output(A15); gpio_set_pin_output(A14); keyboard_pre_init_user(); } -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - gpio_write_pin(B4, led_state.num_lock); - gpio_write_pin(B3, led_state.caps_lock); - gpio_write_pin(A15, led_state.scroll_lock); - } - return res; -} - layer_state_t layer_state_set_kb(layer_state_t state) { switch (get_highest_layer(state)) { case 1: diff --git a/keyboards/heliar/wm1_hotswap/keyboard.json b/keyboards/heliar/wm1_hotswap/keyboard.json index 3fa1a8e6cb8..789a3c7d2b6 100644 --- a/keyboards/heliar/wm1_hotswap/keyboard.json +++ b/keyboards/heliar/wm1_hotswap/keyboard.json @@ -25,6 +25,12 @@ "backlight": { "pin": "B7" }, + "indicators": { + "caps_lock": "D6", + "num_lock": "D7", + "scroll_lock": "D4", + "on_state": 0 + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "layouts": { diff --git a/keyboards/heliar/wm1_hotswap/wm1_hotswap.c b/keyboards/heliar/wm1_hotswap/wm1_hotswap.c deleted file mode 100644 index d2d10b0b1f1..00000000000 --- a/keyboards/heliar/wm1_hotswap/wm1_hotswap.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2019 HELIAR MK - * - * 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 . - */ - -#include "quantum.h" - - -void keyboard_pre_init_kb(void) -{ - gpio_set_pin_output(D7); - gpio_write_pin_high(D7); - gpio_set_pin_output(D6); - gpio_write_pin_high(D6); - gpio_set_pin_output(D4); - gpio_write_pin_high(D4); -} - -bool led_update_kb(led_t led_state) { - - if (led_update_user(led_state)){ - gpio_write_pin(D7, !led_state.num_lock); - gpio_write_pin(D6, !led_state.caps_lock); - gpio_write_pin(D4, !led_state.scroll_lock); - } - - return true; -} diff --git a/keyboards/hineybush/h10/h10.c b/keyboards/hineybush/h10/h10.c deleted file mode 100644 index 2170a8b2d7b..00000000000 --- a/keyboards/hineybush/h10/h10.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright 2020 hineybush - * - * 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 . - */ - -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - gpio_set_pin_output(F7); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(F7, !led_state.num_lock); - } - return true; -} diff --git a/keyboards/hineybush/h10/keyboard.json b/keyboards/hineybush/h10/keyboard.json index 73205f85ffc..63a109f4843 100644 --- a/keyboards/hineybush/h10/keyboard.json +++ b/keyboards/hineybush/h10/keyboard.json @@ -32,6 +32,10 @@ "pin": "B7", "breathing": true }, + "indicators": { + "caps_lock": "F7", + "on_state": 0 + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "community_layouts": ["ortho_6x4", "numpad_6x4"], diff --git a/keyboards/hineybush/h60/h60.c b/keyboards/hineybush/h60/h60.c deleted file mode 100644 index 472b99d8ba1..00000000000 --- a/keyboards/hineybush/h60/h60.c +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2020 hineybush - * - * 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 . - */ - -#include "quantum.h" - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - gpio_set_pin_output(C6); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(C6, !led_state.caps_lock); - } - return true; -} - diff --git a/keyboards/hineybush/h60/keyboard.json b/keyboards/hineybush/h60/keyboard.json index 8a019d42da3..ea058b6d646 100644 --- a/keyboards/hineybush/h60/keyboard.json +++ b/keyboards/hineybush/h60/keyboard.json @@ -34,6 +34,10 @@ "pin": "B7", "levels": 12 }, + "indicators": { + "caps_lock": "C6", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/hineybush/h87a/h87a.c b/keyboards/hineybush/h87a/h87a.c index f2d0c62813e..8c10b68ca0e 100644 --- a/keyboards/hineybush/h87a/h87a.c +++ b/keyboards/hineybush/h87a/h87a.c @@ -15,22 +15,6 @@ */ #include "quantum.h" -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - gpio_set_pin_output(D5); - gpio_set_pin_output(E6); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(D5, !led_state.caps_lock); - gpio_write_pin(E6, !led_state.scroll_lock); - } - return true; -} - void eeconfig_init_kb(void) { // EEPROM is getting reset! rgblight_enable(); // Enable RGB by default rgblight_sethsv(0, 255, 128); // Set default HSV - red hue, full saturation, medium brightness diff --git a/keyboards/hineybush/h87a/keyboard.json b/keyboards/hineybush/h87a/keyboard.json index e9096201d92..987d1a60fdb 100644 --- a/keyboards/hineybush/h87a/keyboard.json +++ b/keyboards/hineybush/h87a/keyboard.json @@ -35,6 +35,11 @@ "backlight": { "pin": "B7" }, + "indicators": { + "caps_lock": "D5", + "scroll_lock": "E6", + "on_state": 0 + }, "ws2812": { "pin": "D3" }, diff --git a/keyboards/hineybush/h88/h88.c b/keyboards/hineybush/h88/h88.c index a916609d75e..7c634467511 100644 --- a/keyboards/hineybush/h88/h88.c +++ b/keyboards/hineybush/h88/h88.c @@ -15,22 +15,6 @@ */ #include "quantum.h" -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - gpio_set_pin_output(D5); - gpio_set_pin_output(E6); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(D5, !led_state.caps_lock); - gpio_write_pin(E6, !led_state.scroll_lock); - } - return true; -} - void eeconfig_init_kb(void) { // EEPROM is getting reset! rgblight_enable(); // Enable RGB by default rgblight_sethsv(0, 255, 128); // Set default HSV - red hue, full saturation, medium brightness diff --git a/keyboards/hineybush/h88/keyboard.json b/keyboards/hineybush/h88/keyboard.json index e74a3f36234..b1bb8423035 100644 --- a/keyboards/hineybush/h88/keyboard.json +++ b/keyboards/hineybush/h88/keyboard.json @@ -35,6 +35,11 @@ "backlight": { "pin": "B7" }, + "indicators": { + "caps_lock": "D5", + "scroll_lock": "E6", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/hineybush/physix/keyboard.json b/keyboards/hineybush/physix/keyboard.json index b7b1c05393e..79a0bea7aba 100644 --- a/keyboards/hineybush/physix/keyboard.json +++ b/keyboards/hineybush/physix/keyboard.json @@ -33,6 +33,10 @@ "pin": "B7", "breathing": true }, + "indicators": { + "caps_lock": "D3", + "scroll_lock": "D5" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/hineybush/physix/physix.c b/keyboards/hineybush/physix/physix.c deleted file mode 100644 index cd920a72b30..00000000000 --- a/keyboards/hineybush/physix/physix.c +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2019 hineybush - * - * 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 . - */ - -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - gpio_set_pin_output(D3); - gpio_set_pin_output(D5); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here - bool res = led_update_user(led_state); - if(res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - // In this example the pins are inverted, setting - // it low/0 turns it on, and high/1 turns the LED off. - // This behavior depends on whether the LED is between the pin - // and VCC or the pin and GND. - gpio_write_pin(D3, led_state.caps_lock); - gpio_write_pin(D5, led_state.scroll_lock); - } - return res; - return led_update_user(led_state); -} - - - diff --git a/keyboards/kc60se/kc60se.c b/keyboards/kc60se/kc60se.c deleted file mode 100644 index a7d60079b2e..00000000000 --- a/keyboards/kc60se/kc60se.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2017 Blake C. Lewis - * - * 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 . - */ - -#include "quantum.h" - -void matrix_init_kb(void){ - gpio_set_pin_output(B2); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(B2, !led_state.caps_lock); - } - return res; -} - diff --git a/keyboards/kc60se/keyboard.json b/keyboards/kc60se/keyboard.json index b7123b5749d..c8bdf24a4b8 100644 --- a/keyboards/kc60se/keyboard.json +++ b/keyboards/kc60se/keyboard.json @@ -27,6 +27,10 @@ "pin": "F5", "levels": 6 }, + "indicators": { + "caps_lock": "B2", + "on_state": 0 + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "community_layouts": ["60_ansi", "60_ansi_split_bs_rshift", "60_iso", "60_iso_split_bs_rshift"], diff --git a/keyboards/masterworks/classy_tkl/rev_a/keyboard.json b/keyboards/masterworks/classy_tkl/rev_a/keyboard.json index d3e723d413d..889aa6d3f90 100644 --- a/keyboards/masterworks/classy_tkl/rev_a/keyboard.json +++ b/keyboards/masterworks/classy_tkl/rev_a/keyboard.json @@ -22,6 +22,10 @@ "resync": true } }, + "indicators": { + "caps_lock": "B5", + "scroll_lock": "B6" + }, "matrix_pins": { "cols": ["B4", "D7", "D6", "D4", "C6", "D5", "D3", "D2", "D1", "D0", "B7", "B3", "B2", "B1", "B0", "E6", "F7"], "rows": ["C7", "F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/masterworks/classy_tkl/rev_a/rev_a.c b/keyboards/masterworks/classy_tkl/rev_a/rev_a.c deleted file mode 100644 index 6e01c217d2d..00000000000 --- a/keyboards/masterworks/classy_tkl/rev_a/rev_a.c +++ /dev/null @@ -1,42 +0,0 @@ -/* Copyright 2020 Mathias Andersson - * - * 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 . - */ -#include "quantum.h" - -#define CAPS_PIN B5 -#define SCROLL_PIN B6 - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - - gpio_set_pin_output(CAPS_PIN); - gpio_set_pin_output(SCROLL_PIN); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(CAPS_PIN, led_state.caps_lock); - gpio_write_pin(SCROLL_PIN, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/matrix/cain_re/cain_re.c b/keyboards/matrix/cain_re/cain_re.c deleted file mode 100644 index 6dc24f22926..00000000000 --- a/keyboards/matrix/cain_re/cain_re.c +++ /dev/null @@ -1,40 +0,0 @@ -/** - * cain_re.c - * - Copyright 2020 astro - - 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 . - */ - -#include "quantum.h" - -void matrix_init_kb(void) -{ - gpio_set_pin_output(NUM_PIN); - gpio_set_pin_output(CAPS_PIN); - gpio_set_pin_output(SCROLL_PIN); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) -{ - bool res = led_update_user(led_state); - if (res) { - gpio_write_pin(NUM_PIN, led_state.num_lock); - gpio_write_pin(CAPS_PIN, led_state.caps_lock); - gpio_write_pin(SCROLL_PIN, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/matrix/cain_re/config.h b/keyboards/matrix/cain_re/config.h deleted file mode 100644 index 9469d689d0c..00000000000 --- a/keyboards/matrix/cain_re/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/** - * config.h - * - Copyright 2020 astro - - 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 . - */ - -#pragma once - -#define CAPS_PIN D3 -#define NUM_PIN F7 -#define SCROLL_PIN B0 diff --git a/keyboards/matrix/cain_re/keyboard.json b/keyboards/matrix/cain_re/keyboard.json index 02c6cbbeb56..7d93e806c25 100644 --- a/keyboards/matrix/cain_re/keyboard.json +++ b/keyboards/matrix/cain_re/keyboard.json @@ -8,6 +8,11 @@ "pid": "0x0106", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "D3", + "num_lock": "F7", + "scroll_lock": "B0" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/matrix/m12og/rev2/keyboard.json b/keyboards/matrix/m12og/rev2/keyboard.json index 42df6a75e87..45fcffe9eb6 100644 --- a/keyboards/matrix/m12og/rev2/keyboard.json +++ b/keyboards/matrix/m12og/rev2/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x8712", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "C6", + "num_lock": "B1", + "scroll_lock": "B2", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/matrix/m12og/rev2/rev2.c b/keyboards/matrix/m12og/rev2/rev2.c deleted file mode 100644 index e64640b2d2d..00000000000 --- a/keyboards/matrix/m12og/rev2/rev2.c +++ /dev/null @@ -1,23 +0,0 @@ -/** - * rev2.c - */ - -#include "quantum.h" - -void matrix_init_kb(void) { - gpio_set_pin_output(C6); - gpio_set_pin_output(B2); - gpio_set_pin_output(B1); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - gpio_write_pin(B1, !led_state.num_lock); - gpio_write_pin(C6, !led_state.caps_lock); - gpio_write_pin(B2, !led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/quad_h/lb75/keyboard.json b/keyboards/quad_h/lb75/keyboard.json index 0a51d4f47f4..e88ba4b3a4e 100644 --- a/keyboards/quad_h/lb75/keyboard.json +++ b/keyboards/quad_h/lb75/keyboard.json @@ -33,6 +33,11 @@ "pin": "B7", "levels": 5 }, + "indicators": { + "caps_lock": "B1", + "scroll_lock": "B2", + "on_state": 0 + }, "ws2812": { "pin": "B0" }, diff --git a/keyboards/quad_h/lb75/lb75.c b/keyboards/quad_h/lb75/lb75.c deleted file mode 100644 index ef716092b9f..00000000000 --- a/keyboards/quad_h/lb75/lb75.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2019 Ryota Goto - * - * 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 . - */ -#include "quantum.h" - - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - - gpio_set_pin_output(B1); - gpio_set_pin_output(B2); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - - if(res) { - gpio_write_pin(B1, !led_state.caps_lock); - gpio_write_pin(B2, !led_state.scroll_lock); - } - - return res; -} - diff --git a/keyboards/rmi_kb/wete/v1/keyboard.json b/keyboards/rmi_kb/wete/v1/keyboard.json index 8e8059c103d..c9a54f76c20 100644 --- a/keyboards/rmi_kb/wete/v1/keyboard.json +++ b/keyboards/rmi_kb/wete/v1/keyboard.json @@ -35,6 +35,12 @@ "levels": 24, "breathing": true }, + "indicators": { + "caps_lock": "B3", + "num_lock": "A14", + "scroll_lock": "A15", + "on_state": 0 + }, "rgblight": { "led_count": 24, "animations": { diff --git a/keyboards/rmi_kb/wete/v1/v1.c b/keyboards/rmi_kb/wete/v1/v1.c deleted file mode 100644 index 34a09174684..00000000000 --- a/keyboards/rmi_kb/wete/v1/v1.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright 2020 Ramon Imbao - * - * 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 . - */ - -#include "quantum.h" - -void keyboard_pre_init_user(void) { - // Initialize indicator LED pins - gpio_set_pin_output(A14); // Num Lock - gpio_set_pin_output(A15); // Scroll Lock - gpio_set_pin_output(B3); // Caps Lock -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - gpio_write_pin(A14, !led_state.num_lock); - gpio_write_pin(A15, !led_state.scroll_lock); - gpio_write_pin(B3, !led_state.caps_lock); - } - - return res; -} diff --git a/keyboards/switchplate/southpaw_65/keyboard.json b/keyboards/switchplate/southpaw_65/keyboard.json index e4090e49c72..72c4c71097e 100644 --- a/keyboards/switchplate/southpaw_65/keyboard.json +++ b/keyboards/switchplate/southpaw_65/keyboard.json @@ -29,6 +29,10 @@ "pin": "B5", "levels": 10 }, + "indicators": { + "caps_lock": "B6", + "on_state": 0 + }, "rgblight": { "led_count": 9, "animations": { diff --git a/keyboards/switchplate/southpaw_65/southpaw_65.c b/keyboards/switchplate/southpaw_65/southpaw_65.c deleted file mode 100644 index dfe3665928b..00000000000 --- a/keyboards/switchplate/southpaw_65/southpaw_65.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2019 - * - * 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 . - */ -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(B6); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(B6, !led_state.caps_lock); - } - return res; -} diff --git a/keyboards/switchplate/southpaw_fullsize/keyboard.json b/keyboards/switchplate/southpaw_fullsize/keyboard.json index ad897821c35..84942ccfa46 100644 --- a/keyboards/switchplate/southpaw_fullsize/keyboard.json +++ b/keyboards/switchplate/southpaw_fullsize/keyboard.json @@ -31,6 +31,12 @@ "backlight": { "pin": "B7" }, + "indicators": { + "caps_lock": "D4", + "num_lock": "D3", + "scroll_lock": "D5", + "on_state": 0 + }, "processor": "at90usb1286", "bootloader": "atmel-dfu", "layouts": { diff --git a/keyboards/switchplate/southpaw_fullsize/southpaw_fullsize.c b/keyboards/switchplate/southpaw_fullsize/southpaw_fullsize.c deleted file mode 100644 index 3d77e8722e6..00000000000 --- a/keyboards/switchplate/southpaw_fullsize/southpaw_fullsize.c +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright 2020 Ryota Goto - * - * 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 . - */ - -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - -#define INDICATOR_NUM D3 -#define INDICATOR_CAPS D4 -#define INDICATOR_SCR D5 - - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - - // D3 Numlock, D4 Capslock, D5 Scrlock - gpio_set_pin_output(INDICATOR_NUM); - gpio_set_pin_output(INDICATOR_CAPS); - gpio_set_pin_output(INDICATOR_SCR); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here - bool res = led_update_user(led_state); - if (res) - { - gpio_write_pin(INDICATOR_NUM, !led_state.num_lock); - gpio_write_pin(INDICATOR_CAPS, !led_state.caps_lock); - gpio_write_pin(INDICATOR_SCR, !led_state.scroll_lock); - } - return res; -} - diff --git a/keyboards/westfoxtrot/cypher/rev1/keyboard.json b/keyboards/westfoxtrot/cypher/rev1/keyboard.json index 09294d169c2..30dcc625de0 100644 --- a/keyboards/westfoxtrot/cypher/rev1/keyboard.json +++ b/keyboards/westfoxtrot/cypher/rev1/keyboard.json @@ -31,6 +31,11 @@ "levels": 5, "breathing": true }, + "indicators": { + "caps_lock": "F1", + "num_lock": "F4", + "scroll_lock": "F5" + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "layouts": { diff --git a/keyboards/westfoxtrot/cypher/rev1/rev1.c b/keyboards/westfoxtrot/cypher/rev1/rev1.c deleted file mode 100644 index eeaa7b4a4cf..00000000000 --- a/keyboards/westfoxtrot/cypher/rev1/rev1.c +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2019 westfoxtrot - * - * 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 . - */ -#include "quantum.h" - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - // In this example the pins are inverted, setting - // it low/0 turns it on, and high/1 turns the LED off. - // This behavior depends on whether the LED is between the pin - // and VCC or the pin and GND. - gpio_write_pin(F4, led_state.num_lock); - gpio_write_pin(F1, led_state.caps_lock); - gpio_write_pin(F5, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/westfoxtrot/cypher/rev5/keyboard.json b/keyboards/westfoxtrot/cypher/rev5/keyboard.json index fbb487534d5..278ff94b06e 100644 --- a/keyboards/westfoxtrot/cypher/rev5/keyboard.json +++ b/keyboards/westfoxtrot/cypher/rev5/keyboard.json @@ -33,6 +33,11 @@ "levels": 5, "breathing": true }, + "indicators": { + "caps_lock": "D5", + "num_lock": "D3", + "scroll_lock": "D2" + }, "rgblight": { "hue_steps": 12, "saturation_steps": 25, diff --git a/keyboards/westfoxtrot/cypher/rev5/rev5.c b/keyboards/westfoxtrot/cypher/rev5/rev5.c deleted file mode 100644 index 37ca9cf3c16..00000000000 --- a/keyboards/westfoxtrot/cypher/rev5/rev5.c +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2019 westfoxtrot - * - * 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 . - */ -#include "quantum.h" - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - // In this example the pins are inverted, setting - // it low/0 turns it on, and high/1 turns the LED off. - // This behavior depends on whether the LED is between the pin - // and VCC or the pin and GND. - gpio_write_pin(D3, led_state.num_lock); - gpio_write_pin(D5, led_state.caps_lock); - gpio_write_pin(D2, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/westfoxtrot/prophet/keyboard.json b/keyboards/westfoxtrot/prophet/keyboard.json index 049f5cd7fc5..f82c6da14dd 100644 --- a/keyboards/westfoxtrot/prophet/keyboard.json +++ b/keyboards/westfoxtrot/prophet/keyboard.json @@ -17,6 +17,9 @@ "nkro": true, "sleep_led": true }, + "indicators": { + "caps_lock": "B13" + }, "qmk": { "locking": { "enabled": true, diff --git a/keyboards/westfoxtrot/prophet/prophet.c b/keyboards/westfoxtrot/prophet/prophet.c index 3ef0a3f9288..b33ecf90b41 100644 --- a/keyboards/westfoxtrot/prophet/prophet.c +++ b/keyboards/westfoxtrot/prophet/prophet.c @@ -1,16 +1,9 @@ #include "quantum.h" -void keyboard_pre_init_kb (void) { +void keyboard_pre_init_kb(void) { gpio_set_pin_output(B12); - gpio_set_pin_output(B13); -} -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(B13, led_state.caps_lock); - } - return res; + keyboard_pre_init_user(); } __attribute__((weak)) layer_state_t layer_state_set_user(layer_state_t state) { From cb39df273de782be1145dc5184bfd47d823531d5 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 22 Jun 2024 09:10:58 +0100 Subject: [PATCH 126/519] Remove deprecated `led_set_user` (#23979) --- docs/features/led_indicators.md | 7 +------ keyboards/converter/usb_usb/custom_matrix.cpp | 1 - keyboards/sirius/unigo66/custom_matrix.cpp | 1 - quantum/led.c | 11 +++-------- quantum/led.h | 3 --- 5 files changed, 4 insertions(+), 19 deletions(-) diff --git a/docs/features/led_indicators.md b/docs/features/led_indicators.md index 8435c69a552..211fda25815 100644 --- a/docs/features/led_indicators.md +++ b/docs/features/led_indicators.md @@ -21,9 +21,8 @@ There are three ways to get the lock LED state: The `host_keyboard_led_state()` may reflect an updated state before `led_update_user()` is called. ::: -Two deprecated functions that provide the LED state as `uint8_t`: +Deprecated functions that provide the LED state as `uint8_t`: -* `uint8_t led_set_user(uint8_t usb_led)` * `uint8_t host_keyboard_leds()` ## Configuration Options @@ -50,10 +49,6 @@ When the configuration options do not provide enough flexibility, the following Both receives LED state as a struct parameter. Returning `true` in `led_update_user()` will allow the keyboard level code in `led_update_kb()` to run as well. Returning `false` will override the keyboard level code, depending on how the keyboard level function is set up. -::: tip -This boolean return type of `led_update_user` allows for overriding keyboard LED controls, and is thus recommended over the void `led_set_user` function. -::: - ### Example of keyboard LED update implementation This is a template indicator function that can be implemented on keyboard level code: diff --git a/keyboards/converter/usb_usb/custom_matrix.cpp b/keyboards/converter/usb_usb/custom_matrix.cpp index ca0855a82b9..e1ef6955707 100644 --- a/keyboards/converter/usb_usb/custom_matrix.cpp +++ b/keyboards/converter/usb_usb/custom_matrix.cpp @@ -229,7 +229,6 @@ extern "C" { if (kbd2.isReady()) kbd2.SetReport(0, 0, 2, 0, 1, &usb_led); if (kbd3.isReady()) kbd3.SetReport(0, 0, 2, 0, 1, &usb_led); if (kbd4.isReady()) kbd4.SetReport(0, 0, 2, 0, 1, &usb_led); - led_set_user(usb_led); led_update_kb((led_t){.raw = usb_led}); } } diff --git a/keyboards/sirius/unigo66/custom_matrix.cpp b/keyboards/sirius/unigo66/custom_matrix.cpp index 25648a5f78e..879a0e7c153 100644 --- a/keyboards/sirius/unigo66/custom_matrix.cpp +++ b/keyboards/sirius/unigo66/custom_matrix.cpp @@ -216,7 +216,6 @@ extern "C" kbd2.SetReport(0, 0, 2, 0, 1, &usb_led); kbd3.SetReport(0, 0, 2, 0, 1, &usb_led); kbd4.SetReport(0, 0, 2, 0, 1, &usb_led); - led_set_user(usb_led); led_update_kb((led_t){.raw = usb_led}); } diff --git a/quantum/led.c b/quantum/led.c index e2b59851099..aec3edc8235 100644 --- a/quantum/led.c +++ b/quantum/led.c @@ -56,19 +56,15 @@ static void handle_backlight_caps_lock(led_t led_state) { #endif static uint32_t last_led_modification_time = 0; -uint32_t last_led_activity_time(void) { + +uint32_t last_led_activity_time(void) { return last_led_modification_time; } + uint32_t last_led_activity_elapsed(void) { return timer_elapsed32(last_led_modification_time); } -/** \brief Lock LED set callback - keymap/user level - * - * \deprecated Use led_update_user() instead. - */ -__attribute__((weak)) void led_set_user(uint8_t usb_led) {} - /** \brief Lock LED update callback - keymap/user level * * \return True if led_update_kb() should run its own code, false otherwise. @@ -146,7 +142,6 @@ __attribute__((weak)) void led_set(uint8_t usb_led) { handle_backlight_caps_lock((led_t)usb_led); #endif - led_set_user(usb_led); led_update_kb((led_t)usb_led); } diff --git a/quantum/led.h b/quantum/led.h index b9fad670aeb..669e93e1944 100644 --- a/quantum/led.h +++ b/quantum/led.h @@ -48,9 +48,6 @@ void led_wakeup(void); void led_task(void); -/* Deprecated callbacks */ -void led_set_user(uint8_t usb_led); - /* Callbacks */ bool led_update_user(led_t led_state); bool led_update_kb(led_t led_state); From 17498fa48a8c5c0ac439e59d0db12a41954d4fb0 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 22 Jun 2024 12:14:07 +0100 Subject: [PATCH 127/519] Migrate `led_update_kb` implementations to DD (#23981) --- keyboards/ai03/vega/keyboard.json | 5 +++ keyboards/ai03/vega/vega.c | 37 ---------------- keyboards/bioi/g60/g60.c | 28 ------------ keyboards/bioi/g60/keyboard.json | 4 ++ keyboards/bioi/morgan65/keyboard.json | 4 ++ keyboards/bioi/morgan65/morgan65.c | 28 ------------ keyboards/bioi/s65/keyboard.json | 4 ++ keyboards/bioi/s65/s65.c | 27 ------------ keyboards/clueboard/2x1800/2019/2019.c | 14 ------ keyboards/clueboard/2x1800/2019/keyboard.json | 6 +++ keyboards/duck/orion/v3/keyboard.json | 6 +++ keyboards/duck/orion/v3/matrix.c | 13 ------ keyboards/duck/orion/v3/v3.c | 39 ----------------- keyboards/ealdin/quadrant/keyboard.json | 3 ++ keyboards/ealdin/quadrant/quadrant.c | 13 ------ .../jtallbean/split_65/keyboard.json | 3 ++ .../handwired/jtallbean/split_65/split_65.c | 43 ------------------- .../handwired/prime_exl_plus/keyboard.json | 4 ++ .../handwired/prime_exl_plus/prime_exl_plus.c | 19 +------- .../ibm/model_m/ashpil_usbc/ashpil_usbc.c | 36 ---------------- .../ibm/model_m/ashpil_usbc/keyboard.json | 6 +++ keyboards/ibm/model_m/teensypp/keyboard.json | 6 +++ keyboards/ibm/model_m/teensypp/teensypp.c | 36 ---------------- keyboards/ibm/model_m/yugo_m/keyboard.json | 6 +++ keyboards/ibm/model_m/yugo_m/yugo_m.c | 35 --------------- keyboards/jels/jels88/jels88.c | 38 ---------------- keyboards/jels/jels88/keyboard.json | 4 ++ .../kbdfans/bella/soldered/keyboard.json | 4 ++ keyboards/kbdfans/bella/soldered/soldered.c | 28 ------------ keyboards/kbdfans/maja_soldered/keyboard.json | 4 ++ .../kbdfans/maja_soldered/maja_soldered.c | 29 ------------- keyboards/kopibeng/mnk88/mnk88.c | 36 ---------------- keyboards/kopibeng/xt8x/xt8x.c | 15 ------- keyboards/mc_76k/keyboard.json | 4 ++ keyboards/mc_76k/mc_76k.c | 34 --------------- keyboards/viktus/sp111/keyboard.json | 5 +++ keyboards/viktus/sp111/sp111.c | 18 -------- keyboards/wilba_tech/wt69_a/keyboard.json | 3 ++ keyboards/wilba_tech/wt69_a/wt69_a.c | 30 ------------- keyboards/wilba_tech/wt70_jb/keyboard.json | 3 ++ keyboards/wilba_tech/wt70_jb/wt70_jb.c | 13 ------ keyboards/wuque/ikki68/ikki68.c | 30 ------------- keyboards/wuque/ikki68/keyboard.json | 4 ++ keyboards/ymdk/yd60mq/info.json | 4 ++ keyboards/ymdk/yd60mq/yd60mq.c | 21 --------- 45 files changed, 94 insertions(+), 658 deletions(-) delete mode 100644 keyboards/ai03/vega/vega.c delete mode 100644 keyboards/bioi/g60/g60.c delete mode 100644 keyboards/bioi/morgan65/morgan65.c delete mode 100644 keyboards/bioi/s65/s65.c delete mode 100644 keyboards/duck/orion/v3/v3.c delete mode 100644 keyboards/handwired/jtallbean/split_65/split_65.c delete mode 100644 keyboards/ibm/model_m/ashpil_usbc/ashpil_usbc.c delete mode 100644 keyboards/ibm/model_m/teensypp/teensypp.c delete mode 100644 keyboards/ibm/model_m/yugo_m/yugo_m.c delete mode 100644 keyboards/jels/jels88/jels88.c delete mode 100755 keyboards/kbdfans/bella/soldered/soldered.c delete mode 100755 keyboards/kbdfans/maja_soldered/maja_soldered.c delete mode 100644 keyboards/kopibeng/mnk88/mnk88.c delete mode 100644 keyboards/mc_76k/mc_76k.c delete mode 100644 keyboards/wilba_tech/wt69_a/wt69_a.c delete mode 100644 keyboards/wuque/ikki68/ikki68.c delete mode 100644 keyboards/ymdk/yd60mq/yd60mq.c diff --git a/keyboards/ai03/vega/keyboard.json b/keyboards/ai03/vega/keyboard.json index a58fa4fcaef..bc220cc7a12 100644 --- a/keyboards/ai03/vega/keyboard.json +++ b/keyboards/ai03/vega/keyboard.json @@ -22,6 +22,11 @@ "resync": true } }, + "indicators": { + "caps_lock": "B7", + "scroll_lock": "A5", + "on_state": 0 + }, "matrix_pins": { "cols": ["B5", "A3", "A9", "A8", "B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6"], "rows": ["A1", "A2", "B3", "A15", "A10"] diff --git a/keyboards/ai03/vega/vega.c b/keyboards/ai03/vega/vega.c deleted file mode 100644 index 44ded2c85c4..00000000000 --- a/keyboards/ai03/vega/vega.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2020 ai03 - * - * 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 . - */ - -#include "quantum.h" - -void matrix_init_kb(void) { - // Initialize indicator LEDs to output - - gpio_set_pin_output(B7); // Caps - gpio_set_pin_output(A5); // Slck - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - - bool res = led_update_user(led_state); - - if(res) { - gpio_write_pin(B7, !led_state.caps_lock); - gpio_write_pin(A5, !led_state.scroll_lock); - } - return res; -} \ No newline at end of file diff --git a/keyboards/bioi/g60/g60.c b/keyboards/bioi/g60/g60.c deleted file mode 100644 index 3fdfef8897a..00000000000 --- a/keyboards/bioi/g60/g60.c +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2019 Basic I/O Instruments(Scott Wei) -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 . -*/ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(F0); - gpio_write_pin_high(F0); - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(F0, !led_state.caps_lock); - } - return true; -} diff --git a/keyboards/bioi/g60/keyboard.json b/keyboards/bioi/g60/keyboard.json index 8d3dd587707..b98aee8273f 100644 --- a/keyboards/bioi/g60/keyboard.json +++ b/keyboards/bioi/g60/keyboard.json @@ -35,6 +35,10 @@ "pin": "B7", "levels": 12 }, + "indicators": { + "caps_lock": "F0", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/bioi/morgan65/keyboard.json b/keyboards/bioi/morgan65/keyboard.json index 8f83237f82f..5606233f2ad 100644 --- a/keyboards/bioi/morgan65/keyboard.json +++ b/keyboards/bioi/morgan65/keyboard.json @@ -35,6 +35,10 @@ "pin": "B6", "levels": 12 }, + "indicators": { + "caps_lock": "F0", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/bioi/morgan65/morgan65.c b/keyboards/bioi/morgan65/morgan65.c deleted file mode 100644 index 3fdfef8897a..00000000000 --- a/keyboards/bioi/morgan65/morgan65.c +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2019 Basic I/O Instruments(Scott Wei) -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 . -*/ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(F0); - gpio_write_pin_high(F0); - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(F0, !led_state.caps_lock); - } - return true; -} diff --git a/keyboards/bioi/s65/keyboard.json b/keyboards/bioi/s65/keyboard.json index c55852f31cc..56d53b54cf5 100644 --- a/keyboards/bioi/s65/keyboard.json +++ b/keyboards/bioi/s65/keyboard.json @@ -35,6 +35,10 @@ "pin": "B6", "levels": 12 }, + "indicators": { + "caps_lock": "F0", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/bioi/s65/s65.c b/keyboards/bioi/s65/s65.c deleted file mode 100644 index e632f31eeb6..00000000000 --- a/keyboards/bioi/s65/s65.c +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2019 Basic I/O Instruments(Scott Wei) -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 . -*/ - -#include "quantum.h" -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(F0); - gpio_write_pin_high(F0); - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(F0, !led_state.caps_lock); - } - return true; -} diff --git a/keyboards/clueboard/2x1800/2019/2019.c b/keyboards/clueboard/2x1800/2019/2019.c index 8b0ba6a71e1..3fe170af998 100644 --- a/keyboards/clueboard/2x1800/2019/2019.c +++ b/keyboards/clueboard/2x1800/2019/2019.c @@ -18,9 +18,6 @@ void matrix_init_kb(void) { // Set our LED pins as output gpio_set_pin_output(D6); - gpio_set_pin_output(B4); - gpio_set_pin_output(B5); - gpio_set_pin_output(B6); // Set our Tilt Sensor pins as input gpio_set_pin_input_high(SHAKE_PIN_A); @@ -133,17 +130,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { return process_record_user(keycode, record); } -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(B4, !led_state.num_lock); - gpio_write_pin(B5, !led_state.caps_lock); - gpio_write_pin(B6, !led_state.scroll_lock); - } - - return res; -} - __attribute__((weak)) bool encoder_update_keymap(uint8_t index, bool clockwise) { return true; } __attribute__((weak)) bool encoder_update_user(uint8_t index, bool clockwise) { return encoder_update_keymap(index, clockwise); } diff --git a/keyboards/clueboard/2x1800/2019/keyboard.json b/keyboards/clueboard/2x1800/2019/keyboard.json index 6f33a11ca75..31ff448d17e 100644 --- a/keyboards/clueboard/2x1800/2019/keyboard.json +++ b/keyboards/clueboard/2x1800/2019/keyboard.json @@ -32,6 +32,12 @@ {"pin_a": "A1", "pin_b": "A0"} ] }, + "indicators": { + "caps_lock": "B5", + "num_lock": "B4", + "scroll_lock": "B6", + "on_state": 0 + }, "layout_aliases": { "LAYOUT": "LAYOUT_all" }, diff --git a/keyboards/duck/orion/v3/keyboard.json b/keyboards/duck/orion/v3/keyboard.json index 280cd8b07f8..ba479aa0a29 100644 --- a/keyboards/duck/orion/v3/keyboard.json +++ b/keyboards/duck/orion/v3/keyboard.json @@ -16,6 +16,12 @@ "bootmagic": { "matrix": [4, 10] }, + "indicators": { + "caps_lock": "B0", + "num_lock": "B4", + "scroll_lock": "D7", + "on_state": 0 + }, "rgblight": { "led_count": 18, "animations": { diff --git a/keyboards/duck/orion/v3/matrix.c b/keyboards/duck/orion/v3/matrix.c index 1dd07a65670..acd4fe0349a 100644 --- a/keyboards/duck/orion/v3/matrix.c +++ b/keyboards/duck/orion/v3/matrix.c @@ -53,20 +53,7 @@ __attribute__ ((weak)) void matrix_scan_user(void) { } -void indicator_init_ports(void) { - - // Num LED - gpio_set_pin_output(B4); - - // Caps Lock - gpio_set_pin_output(B0); - - // Scroll Lock - gpio_set_pin_output(D7); -} - void matrix_init(void) { - indicator_init_ports(); unselect_cols(); init_rows(); diff --git a/keyboards/duck/orion/v3/v3.c b/keyboards/duck/orion/v3/v3.c deleted file mode 100644 index c0ca9ddd06a..00000000000 --- a/keyboards/duck/orion/v3/v3.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2019 MechMerlin - * - * 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 . - */ -#include "quantum.h" -#include "indicator_leds.h" - -// Alphas PB1 -// Navigation Cluster: PB2 -// Number Row, Mods: PB3 -// Function Row: PE6 - -// Other than using RGB or LED matrix, QMK cannot turn on specific zones -// of backlight LEDs. Unfortunately, Duck PCBs do not follow this design -// and instead use multiple pins connected to each of these zones. QMK is -// only able to control them ALL with the current default mechanisms. - -// Locking indicator LEDs -// The Duck Orion V3 has 3 locking indicator LEDs and are located to the right -// of the Escape key. -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(B0, !led_state.caps_lock); - gpio_write_pin(B4, !led_state.num_lock); - gpio_write_pin(D7, !led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/ealdin/quadrant/keyboard.json b/keyboards/ealdin/quadrant/keyboard.json index 9f7a6143d2f..7a8bcf0db23 100644 --- a/keyboards/ealdin/quadrant/keyboard.json +++ b/keyboards/ealdin/quadrant/keyboard.json @@ -34,6 +34,9 @@ {"pin_a": "D5", "pin_b": "F1"} ] }, + "indicators": { + "caps_lock": "F0" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/ealdin/quadrant/quadrant.c b/keyboards/ealdin/quadrant/quadrant.c index 23be00b96f0..328c92e02e3 100644 --- a/keyboards/ealdin/quadrant/quadrant.c +++ b/keyboards/ealdin/quadrant/quadrant.c @@ -52,16 +52,3 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { } return true; } - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(F0); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(F0, led_state.caps_lock); - } - return true; -} diff --git a/keyboards/handwired/jtallbean/split_65/keyboard.json b/keyboards/handwired/jtallbean/split_65/keyboard.json index c8be82da8d4..b6560fb03a1 100644 --- a/keyboards/handwired/jtallbean/split_65/keyboard.json +++ b/keyboards/handwired/jtallbean/split_65/keyboard.json @@ -27,6 +27,9 @@ "rows": ["F4", "F1", "F0", "C7", "B6"] }, "diode_direction": "COL2ROW", + "indicators": { + "caps_lock": "B0" + }, "split": { "enabled": true, "soft_serial_pin": "D0", diff --git a/keyboards/handwired/jtallbean/split_65/split_65.c b/keyboards/handwired/jtallbean/split_65/split_65.c deleted file mode 100644 index b75b12137f9..00000000000 --- a/keyboards/handwired/jtallbean/split_65/split_65.c +++ /dev/null @@ -1,43 +0,0 @@ -/* Copyright 2020 jtallbean - * - * 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 . - */ - -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - - // Set our LED pins as output - gpio_set_pin_output(B0); - gpio_write_pin_low(B0); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here - - bool res = led_update_user(led_state); - if(res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - gpio_write_pin(B0, led_state.caps_lock); - } - return res; -} diff --git a/keyboards/handwired/prime_exl_plus/keyboard.json b/keyboards/handwired/prime_exl_plus/keyboard.json index 43825a0ad88..a234bceb02a 100644 --- a/keyboards/handwired/prime_exl_plus/keyboard.json +++ b/keyboards/handwired/prime_exl_plus/keyboard.json @@ -8,6 +8,10 @@ "pid": "0x6579", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "B0", + "num_lock": "B1" + }, "rgblight": { "led_count": 10, "animations": { diff --git a/keyboards/handwired/prime_exl_plus/prime_exl_plus.c b/keyboards/handwired/prime_exl_plus/prime_exl_plus.c index 1865b6c5025..164c954b8bd 100644 --- a/keyboards/handwired/prime_exl_plus/prime_exl_plus.c +++ b/keyboards/handwired/prime_exl_plus/prime_exl_plus.c @@ -16,32 +16,17 @@ #include "quantum.h" void matrix_init_kb(void) { - // set CapsLock LED to output and low - gpio_set_pin_output(B0); - gpio_write_pin_low(B0); - // set NumLock LED to output and low - gpio_set_pin_output(B1); - gpio_write_pin_low(B1); - // set ScrollLock LED to output and low gpio_set_pin_output(B2); gpio_write_pin_low(B2); -} -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(B1, led_state.num_lock); - gpio_write_pin(B0, led_state.caps_lock); - //gpio_write_pin(B2, led_state.scroll_lock); - } - return res; + matrix_init_user(); } //function for layer indicator LED layer_state_t layer_state_set_kb(layer_state_t state) { if (get_highest_layer(state) == 1) { - gpio_write_pin_high(B2); + gpio_write_pin_high(B2); } else { gpio_write_pin_low(B2); } diff --git a/keyboards/ibm/model_m/ashpil_usbc/ashpil_usbc.c b/keyboards/ibm/model_m/ashpil_usbc/ashpil_usbc.c deleted file mode 100644 index 8bdcfe070ae..00000000000 --- a/keyboards/ibm/model_m/ashpil_usbc/ashpil_usbc.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2019 ashpil - * - * 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 . - */ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - /* Setting status LEDs pins to output and +5V (off) */ - gpio_set_pin_output(D5); - gpio_set_pin_output(D6); - gpio_set_pin_output(D7); - gpio_write_pin_high(D5); - gpio_write_pin_high(D6); - gpio_write_pin_high(D7); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(D5, !led_state.num_lock); - gpio_write_pin(D6, !led_state.caps_lock); - gpio_write_pin(D7, !led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/ibm/model_m/ashpil_usbc/keyboard.json b/keyboards/ibm/model_m/ashpil_usbc/keyboard.json index 451589017e4..a43e16a04c3 100644 --- a/keyboards/ibm/model_m/ashpil_usbc/keyboard.json +++ b/keyboards/ibm/model_m/ashpil_usbc/keyboard.json @@ -16,6 +16,12 @@ "mousekey": false, "nkro": false }, + "indicators": { + "caps_lock": "D6", + "num_lock": "D5", + "scroll_lock": "D7", + "on_state": 0 + }, "matrix_pins": { "cols": ["E6", "E7", "F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "A0", "A1", "A2", "A3", "A4", "A5"], "rows": ["C7", "C6", "C5", "C4", "C3", "C2", "C1", "C0"] diff --git a/keyboards/ibm/model_m/teensypp/keyboard.json b/keyboards/ibm/model_m/teensypp/keyboard.json index 4464a299f6d..e77c43483b0 100644 --- a/keyboards/ibm/model_m/teensypp/keyboard.json +++ b/keyboards/ibm/model_m/teensypp/keyboard.json @@ -8,6 +8,12 @@ "pid": "0x0000", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "B6", + "num_lock": "B4", + "scroll_lock": "B5", + "on_state": 0 + }, "matrix_pins": { "cols": ["C7", "C6", "C5", "C4", "C3", "C2", "C1", "C0", "E1", "E0", "D7", "D6", "D5", "D4", "D3", "D2"], "rows": ["F7", "F6", "F5", "F4", "F3", "F2", "F1", "F0"] diff --git a/keyboards/ibm/model_m/teensypp/teensypp.c b/keyboards/ibm/model_m/teensypp/teensypp.c deleted file mode 100644 index aac85424bf7..00000000000 --- a/keyboards/ibm/model_m/teensypp/teensypp.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2019 iw0rm3r - * - * 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 . - */ -#include "quantum.h" - -void led_init_ports(void) { - /* Setting status LEDs pins to output and +5V (off) */ - gpio_set_pin_output(B4); - gpio_set_pin_output(B5); - gpio_set_pin_output(B6); - gpio_write_pin_high(B4); - gpio_write_pin_high(B5); - gpio_write_pin_high(B6); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(B4, !led_state.num_lock); - gpio_write_pin(B6, !led_state.caps_lock); - gpio_write_pin(B5, !led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/ibm/model_m/yugo_m/keyboard.json b/keyboards/ibm/model_m/yugo_m/keyboard.json index 968c637b783..10fe637f03a 100644 --- a/keyboards/ibm/model_m/yugo_m/keyboard.json +++ b/keyboards/ibm/model_m/yugo_m/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "indicators": { + "caps_lock": "A1", + "num_lock": "A2", + "scroll_lock": "A0", + "on_state": 0 + }, "matrix_pins": { "cols": ["A9", "A8", "B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3"], "rows": ["B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"] diff --git a/keyboards/ibm/model_m/yugo_m/yugo_m.c b/keyboards/ibm/model_m/yugo_m/yugo_m.c deleted file mode 100644 index a725a3657bc..00000000000 --- a/keyboards/ibm/model_m/yugo_m/yugo_m.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright 2020 Nidzo Tomic - * - * 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 . - */ -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - // Set our LED pins as output - gpio_set_pin_output(A2); - gpio_set_pin_output(A1); - gpio_set_pin_output(A0); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(A2, !led_state.num_lock); - gpio_write_pin(A1, !led_state.caps_lock); - gpio_write_pin(A0, !led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/jels/jels88/jels88.c b/keyboards/jels/jels88/jels88.c deleted file mode 100644 index ceb187ab176..00000000000 --- a/keyboards/jels/jels88/jels88.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2021 Joah Nelson (Jels) - * - * 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 . - */ - -// not much here ... just indicator LEDs - -#include "quantum.h" - -// LED indicator pins -#define CAPS_LED D5 -#define SCROLL_LED D4 - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(CAPS_LED); - gpio_set_pin_output(SCROLL_LED); - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - gpio_write_pin(CAPS_LED, led_state.caps_lock); - gpio_write_pin(SCROLL_LED, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/jels/jels88/keyboard.json b/keyboards/jels/jels88/keyboard.json index ee9b64ed6ae..e4d2c6e2737 100644 --- a/keyboards/jels/jels88/keyboard.json +++ b/keyboards/jels/jels88/keyboard.json @@ -23,6 +23,10 @@ "resync": true } }, + "indicators": { + "caps_lock": "D5", + "scroll_lock": "D4" + }, "matrix_pins": { "cols": ["C7", "C6", "F7", "F6", "F5", "F4", "B1", "D2", "D3"], "rows": ["B3", "B2", "D1", "D0", "E6", "B0", "F0", "F1", "B5", "B4", "D7", "D6"] diff --git a/keyboards/kbdfans/bella/soldered/keyboard.json b/keyboards/kbdfans/bella/soldered/keyboard.json index 31d8e9ffb7a..aa5d9159800 100644 --- a/keyboards/kbdfans/bella/soldered/keyboard.json +++ b/keyboards/kbdfans/bella/soldered/keyboard.json @@ -31,6 +31,10 @@ "backlight": { "pin": "B7" }, + "indicators": { + "caps_lock": "E6", + "on_state": 0 + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "layouts": { diff --git a/keyboards/kbdfans/bella/soldered/soldered.c b/keyboards/kbdfans/bella/soldered/soldered.c deleted file mode 100755 index bfe9f8f5d44..00000000000 --- a/keyboards/kbdfans/bella/soldered/soldered.c +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2020 dztech - * - * 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 . - */ -#include "quantum.h" -void matrix_init_kb(void) { - gpio_set_pin_output(E6); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(E6, !led_state.caps_lock); - } - return res; -} diff --git a/keyboards/kbdfans/maja_soldered/keyboard.json b/keyboards/kbdfans/maja_soldered/keyboard.json index bf73f04d8a4..f182ef97d13 100644 --- a/keyboards/kbdfans/maja_soldered/keyboard.json +++ b/keyboards/kbdfans/maja_soldered/keyboard.json @@ -31,6 +31,10 @@ "backlight": { "pin": "B5" }, + "indicators": { + "caps_lock": "D4", + "on_state": 0 + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "debounce": 3, diff --git a/keyboards/kbdfans/maja_soldered/maja_soldered.c b/keyboards/kbdfans/maja_soldered/maja_soldered.c deleted file mode 100755 index 41d80e2cc8c..00000000000 --- a/keyboards/kbdfans/maja_soldered/maja_soldered.c +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 dztech kbdfans - * - * 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 . - */ -#include "quantum.h" - -void matrix_init_kb(void) { - gpio_set_pin_output(D4); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(D4, !led_state.caps_lock); - } - return res; -} diff --git a/keyboards/kopibeng/mnk88/mnk88.c b/keyboards/kopibeng/mnk88/mnk88.c deleted file mode 100644 index efe32f8bfd5..00000000000 --- a/keyboards/kopibeng/mnk88/mnk88.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2021 Samuel Lu - * - * 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 . - */ - -#include "quantum.h" - -void matrix_init_kb(void) { - - gpio_set_pin_output(LED_CAPS_LOCK_PIN); - gpio_set_pin_output(LED_SCROLL_LOCK_PIN); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - - bool res = led_update_user(led_state); - - if(res) { - gpio_write_pin(LED_CAPS_LOCK_PIN, led_state.caps_lock); - gpio_write_pin(LED_SCROLL_LOCK_PIN, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/kopibeng/xt8x/xt8x.c b/keyboards/kopibeng/xt8x/xt8x.c index 2c4f246b6a2..03342c40af3 100644 --- a/keyboards/kopibeng/xt8x/xt8x.c +++ b/keyboards/kopibeng/xt8x/xt8x.c @@ -17,26 +17,11 @@ #include "quantum.h" void matrix_init_kb(void) { - // Initialize indicator LEDs to output - - gpio_set_pin_output(LED_CAPS_LOCK_PIN); // Caps - gpio_set_pin_output(LED_SCROLL_LOCK_PIN); // Scroll lock gpio_set_pin_output(INDICATOR_PIN_0); // Layer indicator on F13 matrix_init_user(); } -bool led_update_kb(led_t led_state) { - - bool res = led_update_user(led_state); - - if(res) { - gpio_write_pin(LED_CAPS_LOCK_PIN, led_state.caps_lock); - gpio_write_pin(LED_SCROLL_LOCK_PIN, led_state.scroll_lock); - } - return res; -} - __attribute__((weak)) layer_state_t layer_state_set_user(layer_state_t state) { gpio_write_pin(INDICATOR_PIN_0, layer_state_cmp(state, 1)); return state; diff --git a/keyboards/mc_76k/keyboard.json b/keyboards/mc_76k/keyboard.json index 049483bed99..18aef48d01c 100644 --- a/keyboards/mc_76k/keyboard.json +++ b/keyboards/mc_76k/keyboard.json @@ -22,6 +22,10 @@ "resync": true } }, + "indicators": { + "caps_lock": "D2", + "on_state": 0 + }, "matrix_pins": { "cols": ["D5", "D3", "D4", "B1", "D6", "D7", "B4", "B5", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["C7", "C6", "B6", "B0", "D1", "D0"] diff --git a/keyboards/mc_76k/mc_76k.c b/keyboards/mc_76k/mc_76k.c deleted file mode 100644 index 44d2374b1c2..00000000000 --- a/keyboards/mc_76k/mc_76k.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright 2020 Yiancar-Designs - * - * 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 . - */ - -#include "quantum.h" - -void keyboard_pre_init_kb (void) { - gpio_set_pin_output(D2); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - // In this example the pins are inverted, setting - // it low/0 turns it on, and high/1 turns the LED off. - // This behavior depends on whether the LED is between the pin - // and VCC or the pin and GND. - gpio_write_pin(D2, !led_state.caps_lock); - } - return res; -} diff --git a/keyboards/viktus/sp111/keyboard.json b/keyboards/viktus/sp111/keyboard.json index 8cf65a5522a..91a70c284be 100644 --- a/keyboards/viktus/sp111/keyboard.json +++ b/keyboards/viktus/sp111/keyboard.json @@ -17,6 +17,11 @@ "mousekey": true, "nkro": true }, + "indicators": { + "caps_lock": "F1", + "num_lock": "F0", + "scroll_lock": "F4" + }, "qmk": { "locking": { "enabled": true, diff --git a/keyboards/viktus/sp111/sp111.c b/keyboards/viktus/sp111/sp111.c index 1626683804f..c2162429c13 100644 --- a/keyboards/viktus/sp111/sp111.c +++ b/keyboards/viktus/sp111/sp111.c @@ -22,21 +22,3 @@ void keyboard_pre_init_kb(void) { keyboard_pre_init_user(); } - -void matrix_init_kb(void) { - gpio_set_pin_output(F0); - gpio_set_pin_output(F1); - gpio_set_pin_output(F4); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - gpio_write_pin(F0, led_state.num_lock); - gpio_write_pin(F1, led_state.caps_lock); - gpio_write_pin(F4, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/wilba_tech/wt69_a/keyboard.json b/keyboards/wilba_tech/wt69_a/keyboard.json index bbe65178506..d41f8fc90e0 100644 --- a/keyboards/wilba_tech/wt69_a/keyboard.json +++ b/keyboards/wilba_tech/wt69_a/keyboard.json @@ -20,6 +20,9 @@ "resync": true } }, + "indicators": { + "caps_lock": "F1" + }, "matrix_pins": { "cols": ["B7", "B0", "F5", "D5", "B1", "B2", "B3", "D3", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["F0", "E6", "F4", "F6", "F7"] diff --git a/keyboards/wilba_tech/wt69_a/wt69_a.c b/keyboards/wilba_tech/wt69_a/wt69_a.c deleted file mode 100644 index 842b62a4d12..00000000000 --- a/keyboards/wilba_tech/wt69_a/wt69_a.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2018 Jason Williams (Wilba) - * - * 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 . - */ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(F1); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(F1, led_state.caps_lock); - } - return true; -} diff --git a/keyboards/wilba_tech/wt70_jb/keyboard.json b/keyboards/wilba_tech/wt70_jb/keyboard.json index bfa27f225be..f9228106009 100644 --- a/keyboards/wilba_tech/wt70_jb/keyboard.json +++ b/keyboards/wilba_tech/wt70_jb/keyboard.json @@ -8,6 +8,9 @@ "pid": "0x001F", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "F1" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/wilba_tech/wt70_jb/wt70_jb.c b/keyboards/wilba_tech/wt70_jb/wt70_jb.c index ae9b5dcbec0..ad480ece227 100644 --- a/keyboards/wilba_tech/wt70_jb/wt70_jb.c +++ b/keyboards/wilba_tech/wt70_jb/wt70_jb.c @@ -17,19 +17,6 @@ bool g_first_execution = false; -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(F1); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(F1, led_state.caps_lock); - } - return true; -} - // This is some magic so that PCBs flashed with VIA firmware at the factory // will start with an RGB test pattern. Not relevant for non-VIA firmware. #ifdef VIA_ENABLE diff --git a/keyboards/wuque/ikki68/ikki68.c b/keyboards/wuque/ikki68/ikki68.c deleted file mode 100644 index 382ec00251b..00000000000 --- a/keyboards/wuque/ikki68/ikki68.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2020 wuquestudio - * - * 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 . - */ - -#include "quantum.h" - -void matrix_init_kb(void) { - gpio_set_pin_output(C6); - - matrix_init_user(); -} -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(C6, !led_state.caps_lock); - } - return res; -} diff --git a/keyboards/wuque/ikki68/keyboard.json b/keyboards/wuque/ikki68/keyboard.json index c6070e74fa5..d666b0b5dec 100644 --- a/keyboards/wuque/ikki68/keyboard.json +++ b/keyboards/wuque/ikki68/keyboard.json @@ -8,6 +8,10 @@ "pid": "0x0003", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "C6", + "on_state": 0 + }, "ws2812": { "pin": "E2" }, diff --git a/keyboards/ymdk/yd60mq/info.json b/keyboards/ymdk/yd60mq/info.json index 4152ed6e077..1af04be687d 100644 --- a/keyboards/ymdk/yd60mq/info.json +++ b/keyboards/ymdk/yd60mq/info.json @@ -32,6 +32,10 @@ "pin": "B7", "levels": 5 }, + "indicators": { + "caps_lock": "F4", + "on_state": 0 + }, "ws2812": { "pin": "E2" }, diff --git a/keyboards/ymdk/yd60mq/yd60mq.c b/keyboards/ymdk/yd60mq/yd60mq.c deleted file mode 100644 index 40c899c46f8..00000000000 --- a/keyboards/ymdk/yd60mq/yd60mq.c +++ /dev/null @@ -1,21 +0,0 @@ -#include "quantum.h" - -__attribute__((weak)) -void matrix_init_kb(void){ - gpio_set_pin_output(F4); - gpio_write_pin_high(F4); -} - -__attribute__((weak)) -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - // In this example the pins are inverted, setting - // it low/0 turns it on, and high/1 turns the LED off. - // This behavior depends on whether the LED is between the pin - // and VCC or the pin and GND. - gpio_write_pin(F4, !led_state.caps_lock); - } - return res; -} From 7824e7ed9ba3e79103625b6f038033eb3f5c5320 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 22 Jun 2024 12:14:17 +0100 Subject: [PATCH 128/519] Migrate `led_update_kb` implementations to DD (#23983) --- keyboards/acheron/austin/austin.c | 18 --------- keyboards/acheron/austin/keyboard.json | 5 +++ keyboards/cheshire/curiosity/curiosity.c | 17 -------- keyboards/cheshire/curiosity/keyboard.json | 6 +++ keyboards/doppelganger/doppelganger.c | 14 +------ keyboards/doppelganger/keyboard.json | 4 ++ .../exclusive/e85/soldered/keyboard.json | 4 ++ keyboards/exclusive/e85/soldered/soldered.c | 32 --------------- keyboards/ghs/rar/keyboard.json | 4 ++ keyboards/ghs/rar/rar.c | 36 ----------------- .../gray_studio/think65/solder/keyboard.json | 4 ++ keyboards/gray_studio/think65/solder/solder.c | 36 ----------------- keyboards/ilumkb/volcano660/keyboard.json | 6 +++ keyboards/ilumkb/volcano660/volcano660.c | 34 ---------------- keyboards/jae/j01/j01.c | 38 ------------------ keyboards/jae/j01/keyboard.json | 4 ++ keyboards/kkatano/wallaby/keyboard.json | 4 ++ keyboards/kkatano/wallaby/wallaby.c | 25 ------------ keyboards/kkatano/yurei/keyboard.json | 4 ++ keyboards/kkatano/yurei/yurei.c | 25 ------------ keyboards/marksard/leftover30/keyboard.json | 4 ++ keyboards/marksard/leftover30/leftover30.c | 37 ------------------ keyboards/noxary/220/220.c | 34 ---------------- keyboards/noxary/220/keyboard.json | 3 ++ keyboards/noxary/268_2/268_2.c | 30 -------------- keyboards/noxary/268_2/keyboard.json | 3 ++ keyboards/noxary/280/280.c | 37 ------------------ keyboards/noxary/280/keyboard.json | 4 ++ keyboards/ortho5by12/keyboard.json | 4 ++ keyboards/ortho5by12/ortho5by12.c | 30 -------------- keyboards/percent/canoe_gen2/canoe_gen2.c | 15 ------- keyboards/percent/canoe_gen2/keyboard.json | 4 ++ keyboards/pom_keyboards/tnln95/keyboard.json | 4 ++ keyboards/pom_keyboards/tnln95/tnln95.c | 35 ----------------- keyboards/projectkb/alice/alice.c | 20 ---------- keyboards/projectkb/alice/rev1/config.h | 4 -- keyboards/projectkb/alice/rev1/keyboard.json | 5 +++ keyboards/projectkb/alice/rev2/config.h | 4 -- keyboards/projectkb/alice/rev2/keyboard.json | 5 +++ keyboards/rubi/keyboard.json | 3 ++ keyboards/rubi/rubi.c | 9 ----- keyboards/team0110/p1800fl/keyboard.json | 5 +++ keyboards/team0110/p1800fl/p1800fl.c | 28 ------------- keyboards/tkc/osav2/keyboard.json | 5 +++ keyboards/tkc/osav2/osav2.c | 33 ---------------- keyboards/tr60w/keyboard.json | 6 +++ keyboards/tr60w/tr60w.c | 11 ------ keyboards/wolfmarkclub/wm1/keyboard.json | 5 +++ keyboards/wolfmarkclub/wm1/wm1.c | 16 -------- keyboards/wsk/g4m3ralpha/g4m3ralpha.c | 39 ------------------- keyboards/wsk/g4m3ralpha/keyboard.json | 5 +++ keyboards/yushakobo/navpad/navpad_prefs.c | 4 -- 52 files changed, 111 insertions(+), 660 deletions(-) delete mode 100644 keyboards/acheron/austin/austin.c delete mode 100644 keyboards/cheshire/curiosity/curiosity.c delete mode 100644 keyboards/exclusive/e85/soldered/soldered.c delete mode 100644 keyboards/ghs/rar/rar.c delete mode 100644 keyboards/gray_studio/think65/solder/solder.c delete mode 100644 keyboards/ilumkb/volcano660/volcano660.c delete mode 100644 keyboards/jae/j01/j01.c delete mode 100644 keyboards/kkatano/wallaby/wallaby.c delete mode 100644 keyboards/kkatano/yurei/yurei.c delete mode 100644 keyboards/marksard/leftover30/leftover30.c delete mode 100644 keyboards/noxary/220/220.c delete mode 100644 keyboards/noxary/268_2/268_2.c delete mode 100644 keyboards/noxary/280/280.c delete mode 100644 keyboards/ortho5by12/ortho5by12.c delete mode 100644 keyboards/pom_keyboards/tnln95/tnln95.c delete mode 100644 keyboards/projectkb/alice/alice.c delete mode 100644 keyboards/team0110/p1800fl/p1800fl.c delete mode 100644 keyboards/tkc/osav2/osav2.c delete mode 100644 keyboards/tr60w/tr60w.c delete mode 100644 keyboards/wsk/g4m3ralpha/g4m3ralpha.c diff --git a/keyboards/acheron/austin/austin.c b/keyboards/acheron/austin/austin.c deleted file mode 100644 index 9a69d1c0865..00000000000 --- a/keyboards/acheron/austin/austin.c +++ /dev/null @@ -1,18 +0,0 @@ -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(A0); - gpio_set_pin_output(A1); - gpio_set_pin_output(A2); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(A2, led_state.num_lock); - gpio_write_pin(A0, led_state.caps_lock); - gpio_write_pin(A1, led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/acheron/austin/keyboard.json b/keyboards/acheron/austin/keyboard.json index bee675472c9..a3df5dd75d3 100755 --- a/keyboards/acheron/austin/keyboard.json +++ b/keyboards/acheron/austin/keyboard.json @@ -33,6 +33,11 @@ "levels": 6, "breathing": true }, + "indicators": { + "caps_lock": "A0", + "num_lock": "A2", + "scroll_lock": "A1" + }, "processor": "STM32F072", "bootloader": "stm32-dfu", "layouts": { diff --git a/keyboards/cheshire/curiosity/curiosity.c b/keyboards/cheshire/curiosity/curiosity.c deleted file mode 100644 index 2813cff9b4a..00000000000 --- a/keyboards/cheshire/curiosity/curiosity.c +++ /dev/null @@ -1,17 +0,0 @@ -#include "quantum.h" - -void matrix_init_board(void){ - gpio_set_pin_output(A8); - gpio_set_pin_output(A9); - gpio_set_pin_output(A10); -} - -bool led_update_kb(led_t led_state) { - bool runDefault = led_update_user(led_state); - if (runDefault) { - gpio_write_pin(A8, !led_state.num_lock); - gpio_write_pin(A9, !led_state.caps_lock); - gpio_write_pin(A10, !led_state.scroll_lock); - } - return runDefault; -} diff --git a/keyboards/cheshire/curiosity/keyboard.json b/keyboards/cheshire/curiosity/keyboard.json index 679f2a45d1a..b408a5b6e95 100644 --- a/keyboards/cheshire/curiosity/keyboard.json +++ b/keyboards/cheshire/curiosity/keyboard.json @@ -7,6 +7,12 @@ "pid": "0x0FAD", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "A9", + "num_lock": "A8", + "scroll_lock": "A10", + "on_state": 0 + }, "rgblight": { "led_count": 14, "animations": { diff --git a/keyboards/doppelganger/doppelganger.c b/keyboards/doppelganger/doppelganger.c index 4a62fdf45f1..de0e2cc7556 100644 --- a/keyboards/doppelganger/doppelganger.c +++ b/keyboards/doppelganger/doppelganger.c @@ -16,21 +16,9 @@ #include "quantum.h" void keyboard_pre_init_kb(void) { - gpio_set_pin_output(C6); gpio_set_pin_output(B0); -} -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - // In this example the pins are inverted, setting - // it low/0 turns it on, and high/1 turns the LED off. - // This behavior depends on whether the LED is between the pin - // and VCC or the pin and GND. - gpio_write_pin(C6, !led_state.caps_lock); - } - return res; + keyboard_pre_init_user(); } __attribute__((weak)) layer_state_t layer_state_set_user(layer_state_t state) { diff --git a/keyboards/doppelganger/keyboard.json b/keyboards/doppelganger/keyboard.json index 9ea2241a807..ccba77fdfa5 100644 --- a/keyboards/doppelganger/keyboard.json +++ b/keyboards/doppelganger/keyboard.json @@ -8,6 +8,10 @@ "pid": "0x4447", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "C6", + "on_state": 0 + }, "matrix_pins": { "cols": ["F4", "F0", "B7", "B3", "B2", "B1", "D5", "D3", "D2"], "rows": ["E6", "F1", "C7", "F7", "F6"] diff --git a/keyboards/exclusive/e85/soldered/keyboard.json b/keyboards/exclusive/e85/soldered/keyboard.json index 8b4ebbfc575..dfd6d18826b 100644 --- a/keyboards/exclusive/e85/soldered/keyboard.json +++ b/keyboards/exclusive/e85/soldered/keyboard.json @@ -18,6 +18,10 @@ "levels": 6, "breathing": true }, + "indicators": { + "caps_lock": "C7", + "scroll_lock": "B5" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/exclusive/e85/soldered/soldered.c b/keyboards/exclusive/e85/soldered/soldered.c deleted file mode 100644 index bdee95c26c6..00000000000 --- a/keyboards/exclusive/e85/soldered/soldered.c +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright 2020 VashtaNerada - * - * 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 . - */ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(C7); - gpio_set_pin_output(B5); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(C7, led_state.caps_lock); - gpio_write_pin(B5, led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/ghs/rar/keyboard.json b/keyboards/ghs/rar/keyboard.json index 22b133c8f99..96184abe6a6 100644 --- a/keyboards/ghs/rar/keyboard.json +++ b/keyboards/ghs/rar/keyboard.json @@ -8,6 +8,10 @@ "pid": "0x0001", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "B1", + "scroll_lock": "B3" + }, "rgblight": { "led_count": 17, "animations": { diff --git a/keyboards/ghs/rar/rar.c b/keyboards/ghs/rar/rar.c deleted file mode 100644 index 591932c99c2..00000000000 --- a/keyboards/ghs/rar/rar.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2020 Gone Hacking Studio - * - * 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 . - */ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - // Set our LED pins as output. - gpio_set_pin_output(B1); - gpio_set_pin_output(B3); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - - if (res) { - gpio_write_pin(B1, led_state.caps_lock); - gpio_write_pin(B3, led_state.scroll_lock); - } - - return res; -} diff --git a/keyboards/gray_studio/think65/solder/keyboard.json b/keyboards/gray_studio/think65/solder/keyboard.json index 9706e8b4b49..09096a854e5 100644 --- a/keyboards/gray_studio/think65/solder/keyboard.json +++ b/keyboards/gray_studio/think65/solder/keyboard.json @@ -41,6 +41,10 @@ "nkro": false, "rgblight": true }, + "indicators": { + "caps_lock": "C7", + "on_state": 0 + }, "matrix_pins": { "cols": ["D1", "D0", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "F0", "F1", "B6", "F4", "F5", "F6"], "rows": ["B0", "B1", "B2", "B3", "E6"] diff --git a/keyboards/gray_studio/think65/solder/solder.c b/keyboards/gray_studio/think65/solder/solder.c deleted file mode 100644 index 84267b9db07..00000000000 --- a/keyboards/gray_studio/think65/solder/solder.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2019 MechMerlin - * - * 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 . - */ -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - - gpio_set_pin_output(C7); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(C7, !led_state.caps_lock); - } - return true; -} diff --git a/keyboards/ilumkb/volcano660/keyboard.json b/keyboards/ilumkb/volcano660/keyboard.json index 297b28a5f92..fa74e46fedb 100644 --- a/keyboards/ilumkb/volcano660/keyboard.json +++ b/keyboards/ilumkb/volcano660/keyboard.json @@ -32,6 +32,12 @@ "pin": "B7", "levels": 5 }, + "indicators": { + "caps_lock": "D2", + "num_lock": "D0", + "scroll_lock": "D1", + "on_state": 0 + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "community_layouts": [ diff --git a/keyboards/ilumkb/volcano660/volcano660.c b/keyboards/ilumkb/volcano660/volcano660.c deleted file mode 100644 index 5e6d67c9ba9..00000000000 --- a/keyboards/ilumkb/volcano660/volcano660.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright 2020 dztech - * - * 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 . - */ -#include "quantum.h" - -void matrix_init_kb(void) { - gpio_set_pin_output(D0); - gpio_set_pin_output(D1); - gpio_set_pin_output(D2); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(D0, !led_state.num_lock); - gpio_write_pin(D2, !led_state.caps_lock); - gpio_write_pin(D1, !led_state.scroll_lock); - - } - return res; -} diff --git a/keyboards/jae/j01/j01.c b/keyboards/jae/j01/j01.c deleted file mode 100644 index 4d3f8ced46c..00000000000 --- a/keyboards/jae/j01/j01.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright Evy Dekkers - * - * 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 . - */ - -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - - matrix_init_user(); - gpio_set_pin_output(E6); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(E6, !led_state.caps_lock); - } - - return true; -} diff --git a/keyboards/jae/j01/keyboard.json b/keyboards/jae/j01/keyboard.json index 56a5062c94c..fd16f2a46e7 100644 --- a/keyboards/jae/j01/keyboard.json +++ b/keyboards/jae/j01/keyboard.json @@ -33,6 +33,10 @@ "levels": 4, "breathing": true }, + "indicators": { + "caps_lock": "E6", + "on_state": 0 + }, "bootmagic": { "matrix": [0, 2] }, diff --git a/keyboards/kkatano/wallaby/keyboard.json b/keyboards/kkatano/wallaby/keyboard.json index ee475a54bc0..636fdba0422 100644 --- a/keyboards/kkatano/wallaby/keyboard.json +++ b/keyboards/kkatano/wallaby/keyboard.json @@ -22,6 +22,10 @@ "resync": true } }, + "indicators": { + "caps_lock": "B6", + "scroll_lock": "B7" + }, "matrix_pins": { "cols": ["D5", "C7", "C6", "D4", "D0", "E6", "F0", "F1", "F4", "F5", "F6", "F7", "D7", "D6", "D1", "D2", "D3"], "rows": ["B5", "B4", "B3", "B2", "B1", "B0"] diff --git a/keyboards/kkatano/wallaby/wallaby.c b/keyboards/kkatano/wallaby/wallaby.c deleted file mode 100644 index de2583903bb..00000000000 --- a/keyboards/kkatano/wallaby/wallaby.c +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright 2020 Koichi Katano - * - * 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 . - */ - -#include "quantum.h" - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(B6, led_state.caps_lock); - gpio_write_pin(B7, led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/kkatano/yurei/keyboard.json b/keyboards/kkatano/yurei/keyboard.json index 7bf08957872..59084920da6 100644 --- a/keyboards/kkatano/yurei/keyboard.json +++ b/keyboards/kkatano/yurei/keyboard.json @@ -22,6 +22,10 @@ "resync": true } }, + "indicators": { + "caps_lock": "B6", + "scroll_lock": "B7" + }, "matrix_pins": { "cols": ["D5", "C7", "C6", "D4", "D0", "E6", "F0", "F1", "F4", "F5", "F6", "F7", "D7", "D6", "D1", "D2", "D3"], "rows": ["B5", "B4", "B3", "B2", "B1", "B0"] diff --git a/keyboards/kkatano/yurei/yurei.c b/keyboards/kkatano/yurei/yurei.c deleted file mode 100644 index 283726a884f..00000000000 --- a/keyboards/kkatano/yurei/yurei.c +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright 2019 Koichi Katano - * - * 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 . - */ - -#include "quantum.h" - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(B6, led_state.caps_lock); - gpio_write_pin(B7, led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/marksard/leftover30/keyboard.json b/keyboards/marksard/leftover30/keyboard.json index 546b3dbdd33..ae2250a5f2c 100644 --- a/keyboards/marksard/leftover30/keyboard.json +++ b/keyboards/marksard/leftover30/keyboard.json @@ -33,6 +33,10 @@ {"pin_a": "F4", "pin_b": "F5"} ] }, + "indicators": { + "caps_lock": "D1", + "num_lock": "D2" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/marksard/leftover30/leftover30.c b/keyboards/marksard/leftover30/leftover30.c deleted file mode 100644 index cea0de703ab..00000000000 --- a/keyboards/marksard/leftover30/leftover30.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2020 marksard - * - * 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 . - */ - -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - -void keyboard_pre_init_user(void) { - /* Set CAPSLOCK indicator pin as output */ - gpio_set_pin_output(D1); - /* Set NUMLOCK indicator pin as output */ - gpio_set_pin_output(D2); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(D2, led_state.num_lock); - gpio_write_pin(D1, led_state.caps_lock); - } - return res; -} diff --git a/keyboards/noxary/220/220.c b/keyboards/noxary/220/220.c deleted file mode 100644 index c5affa4344d..00000000000 --- a/keyboards/noxary/220/220.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright 2020 Rozakiin - * - * 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 . - */ -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - gpio_set_pin_output(C6); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(C6, led_state.num_lock); - } - return true; -} \ No newline at end of file diff --git a/keyboards/noxary/220/keyboard.json b/keyboards/noxary/220/keyboard.json index 75d71aac8a3..35653169998 100644 --- a/keyboards/noxary/220/keyboard.json +++ b/keyboards/noxary/220/keyboard.json @@ -32,6 +32,9 @@ "pin": "B7", "breathing": true }, + "indicators": { + "num_lock": "C6" + }, "processor": "atmega32u2", "bootloader": "atmel-dfu", "community_layouts": ["ortho_6x4"], diff --git a/keyboards/noxary/268_2/268_2.c b/keyboards/noxary/268_2/268_2.c deleted file mode 100644 index 56b42d2343d..00000000000 --- a/keyboards/noxary/268_2/268_2.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2018 Rozakiin - * - * 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 . - */ -#include "quantum.h" - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - gpio_set_pin_output(B0); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(B0, led_state.caps_lock); - } - return true; -} diff --git a/keyboards/noxary/268_2/keyboard.json b/keyboards/noxary/268_2/keyboard.json index c724d07a493..08daee6d639 100644 --- a/keyboards/noxary/268_2/keyboard.json +++ b/keyboards/noxary/268_2/keyboard.json @@ -31,6 +31,9 @@ "backlight": { "pin": "B7" }, + "indicators": { + "caps_lock": "B0" + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "community_layouts": ["65_ansi_blocker"], diff --git a/keyboards/noxary/280/280.c b/keyboards/noxary/280/280.c deleted file mode 100644 index 0f29df178f4..00000000000 --- a/keyboards/noxary/280/280.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2019 %YOUR_NAME% - * - * 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 . - */ -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - gpio_set_pin_output(D5); - gpio_set_pin_output(D0); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(D5, led_state.caps_lock); - gpio_write_pin(D0, led_state.scroll_lock); - } - return true; -} \ No newline at end of file diff --git a/keyboards/noxary/280/keyboard.json b/keyboards/noxary/280/keyboard.json index 17acb96cdf4..4bd9257152f 100644 --- a/keyboards/noxary/280/keyboard.json +++ b/keyboards/noxary/280/keyboard.json @@ -32,6 +32,10 @@ "pin": "B7", "breathing": true }, + "indicators": { + "caps_lock": "D5", + "scroll_lock": "D0" + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "layouts": { diff --git a/keyboards/ortho5by12/keyboard.json b/keyboards/ortho5by12/keyboard.json index 49ce4944175..5bcd1e00fcd 100644 --- a/keyboards/ortho5by12/keyboard.json +++ b/keyboards/ortho5by12/keyboard.json @@ -22,6 +22,10 @@ "resync": true } }, + "indicators": { + "caps_lock": "C5", + "num_lock": "C4" + }, "matrix_pins": { "cols": ["C2", "D0", "D1", "D4", "C3", "C1"], "rows": ["B5", "B1", "B2", "B3", "B4", "C0", "D5", "D6", "D7", "B0"] diff --git a/keyboards/ortho5by12/ortho5by12.c b/keyboards/ortho5by12/ortho5by12.c deleted file mode 100644 index d0d9ce9102d..00000000000 --- a/keyboards/ortho5by12/ortho5by12.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2019 Takuya Urakawa (dm9records.com) - * - * 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 . - */ -#include "quantum.h" - -void matrix_init_kb(void) { - gpio_set_pin_output(C4); - gpio_set_pin_output(C5); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(C4, led_state.num_lock); - gpio_write_pin(C5, led_state.caps_lock); - } - return res; -} diff --git a/keyboards/percent/canoe_gen2/canoe_gen2.c b/keyboards/percent/canoe_gen2/canoe_gen2.c index ea091c34744..435083a269d 100644 --- a/keyboards/percent/canoe_gen2/canoe_gen2.c +++ b/keyboards/percent/canoe_gen2/canoe_gen2.c @@ -17,21 +17,6 @@ along with this program. If not, see . #include "quantum.h" -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(E6); - gpio_write_pin_high(E6); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(E6, !led_state.caps_lock); - } - - return true; -} - #ifdef RGB_MATRIX_ENABLE void suspend_power_down_kb(void) { rgb_matrix_set_suspend_state(true); diff --git a/keyboards/percent/canoe_gen2/keyboard.json b/keyboards/percent/canoe_gen2/keyboard.json index 0b6ece2613c..85fbfd28b9d 100644 --- a/keyboards/percent/canoe_gen2/keyboard.json +++ b/keyboards/percent/canoe_gen2/keyboard.json @@ -22,6 +22,10 @@ "resync": true } }, + "indicators": { + "caps_lock": "E6", + "on_state": 0 + }, "ws2812": { "pin": "B7" }, diff --git a/keyboards/pom_keyboards/tnln95/keyboard.json b/keyboards/pom_keyboards/tnln95/keyboard.json index c92ac5b38f1..09b3f71f7c0 100644 --- a/keyboards/pom_keyboards/tnln95/keyboard.json +++ b/keyboards/pom_keyboards/tnln95/keyboard.json @@ -37,6 +37,10 @@ "levels": 10, "breathing": true }, + "indicators": { + "caps_lock": "B2", + "num_lock": "B1" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/pom_keyboards/tnln95/tnln95.c b/keyboards/pom_keyboards/tnln95/tnln95.c deleted file mode 100644 index b8ab8ff7a7e..00000000000 --- a/keyboards/pom_keyboards/tnln95/tnln95.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright 2020 Nguyen Minh Hoang - * - * 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 . - */ -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(B1); - gpio_set_pin_output(B2); - /* I will add function to these later */ - // gpio_set_pin_output(B3); - // gpio_set_pin_output(E2); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(B1, led_state.num_lock); - gpio_write_pin(B2, led_state.caps_lock); - } - return res; -} diff --git a/keyboards/projectkb/alice/alice.c b/keyboards/projectkb/alice/alice.c deleted file mode 100644 index 8ec5f16736f..00000000000 --- a/keyboards/projectkb/alice/alice.c +++ /dev/null @@ -1,20 +0,0 @@ -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(INDICATOR_PIN_0); - gpio_set_pin_output(INDICATOR_PIN_1); - gpio_set_pin_output(INDICATOR_PIN_2); - - keyboard_pre_init_user(); -} - - -bool led_update_kb(led_t led_state) { - bool runDefault = led_update_user(led_state); - if (runDefault) { - gpio_write_pin(INDICATOR_PIN_0, !led_state.num_lock); - gpio_write_pin(INDICATOR_PIN_1, !led_state.caps_lock); - gpio_write_pin(INDICATOR_PIN_2, !led_state.scroll_lock); - } - return runDefault; -} diff --git a/keyboards/projectkb/alice/rev1/config.h b/keyboards/projectkb/alice/rev1/config.h index 66d3b75731b..b8c68bc65d4 100644 --- a/keyboards/projectkb/alice/rev1/config.h +++ b/keyboards/projectkb/alice/rev1/config.h @@ -26,10 +26,6 @@ along with this program. If not, see . #define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PIN B13 -#define INDICATOR_PIN_0 A0 -#define INDICATOR_PIN_1 A1 -#define INDICATOR_PIN_2 A2 - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/projectkb/alice/rev1/keyboard.json b/keyboards/projectkb/alice/rev1/keyboard.json index 7e957d7ff41..01eee1300be 100644 --- a/keyboards/projectkb/alice/rev1/keyboard.json +++ b/keyboards/projectkb/alice/rev1/keyboard.json @@ -15,6 +15,11 @@ "resync": true } }, + "indicators": { + "caps_lock": "A1", + "num_lock": "A0", + "scroll_lock": "A2" + }, "rgblight": { "led_count": 14, "animations": { diff --git a/keyboards/projectkb/alice/rev2/config.h b/keyboards/projectkb/alice/rev2/config.h index 3e786c18056..b8c68bc65d4 100644 --- a/keyboards/projectkb/alice/rev2/config.h +++ b/keyboards/projectkb/alice/rev2/config.h @@ -26,10 +26,6 @@ along with this program. If not, see . #define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PIN B13 -#define INDICATOR_PIN_0 A9 -#define INDICATOR_PIN_1 A8 -#define INDICATOR_PIN_2 B12 - /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/projectkb/alice/rev2/keyboard.json b/keyboards/projectkb/alice/rev2/keyboard.json index 639fc268779..0e34b7104f9 100644 --- a/keyboards/projectkb/alice/rev2/keyboard.json +++ b/keyboards/projectkb/alice/rev2/keyboard.json @@ -15,6 +15,11 @@ "resync": true } }, + "indicators": { + "caps_lock": "A8", + "num_lock": "A9", + "scroll_lock": "B12" + }, "rgblight": { "led_count": 14, "animations": { diff --git a/keyboards/rubi/keyboard.json b/keyboards/rubi/keyboard.json index cb94b586156..555376b533b 100644 --- a/keyboards/rubi/keyboard.json +++ b/keyboards/rubi/keyboard.json @@ -22,6 +22,9 @@ "resync": true } }, + "indicators": { + "caps_lock": "C6" + }, "matrix_pins": { "cols": ["B3", "B2", "B1", "F7"], "rows": ["F0", "F1", "F4", "F5", "F6"] diff --git a/keyboards/rubi/rubi.c b/keyboards/rubi/rubi.c index 89bf9caa6d4..4f0536397f0 100644 --- a/keyboards/rubi/rubi.c +++ b/keyboards/rubi/rubi.c @@ -63,12 +63,3 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { return process_record_user_oled(keycode, record); } - - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - gpio_write_pin(C6, led_state.num_lock); - } - return true; -} diff --git a/keyboards/team0110/p1800fl/keyboard.json b/keyboards/team0110/p1800fl/keyboard.json index a56864cd36a..681482db5bc 100644 --- a/keyboards/team0110/p1800fl/keyboard.json +++ b/keyboards/team0110/p1800fl/keyboard.json @@ -34,6 +34,11 @@ "levels": 5, "breathing": true }, + "indicators": { + "caps_lock": "D5", + "num_lock": "D3", + "scroll_lock": "C6" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/team0110/p1800fl/p1800fl.c b/keyboards/team0110/p1800fl/p1800fl.c deleted file mode 100644 index 9f47b8a5c44..00000000000 --- a/keyboards/team0110/p1800fl/p1800fl.c +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2020 marhalloweenvt - * - * 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 . - */ - -#include "quantum.h" - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(D3, led_state.num_lock); - gpio_write_pin(D5, led_state.caps_lock); - gpio_write_pin(C6, led_state.scroll_lock); - } - return res; -} - diff --git a/keyboards/tkc/osav2/keyboard.json b/keyboards/tkc/osav2/keyboard.json index 118eedfc850..ef4c7897978 100644 --- a/keyboards/tkc/osav2/keyboard.json +++ b/keyboards/tkc/osav2/keyboard.json @@ -50,6 +50,11 @@ "pin": "D6", "breathing": true }, + "indicators": { + "caps_lock": "C6", + "num_lock": "C7", + "scroll_lock": "B6" + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "community_layouts": ["alice", "alice_split_bs"], diff --git a/keyboards/tkc/osav2/osav2.c b/keyboards/tkc/osav2/osav2.c deleted file mode 100644 index 99660464865..00000000000 --- a/keyboards/tkc/osav2/osav2.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2019 jrfhoutx - * - * 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 . - */ -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(C7); - gpio_set_pin_output(C6); - gpio_set_pin_output(B6); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(C7, led_state.num_lock); - gpio_write_pin(C6, led_state.caps_lock); - gpio_write_pin(B6, led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/tr60w/keyboard.json b/keyboards/tr60w/keyboard.json index 60c01bdcfc6..dc71e3ad7aa 100644 --- a/keyboards/tr60w/keyboard.json +++ b/keyboards/tr60w/keyboard.json @@ -32,6 +32,12 @@ "backlight": { "pin": "B7" }, + "indicators": { + "caps_lock": "B2", + "num_lock": "B1", + "scroll_lock": "B3", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/tr60w/tr60w.c b/keyboards/tr60w/tr60w.c deleted file mode 100644 index ebf48cb1c7b..00000000000 --- a/keyboards/tr60w/tr60w.c +++ /dev/null @@ -1,11 +0,0 @@ -#include "quantum.h" - -bool led_update_kb(led_t led_state) { - bool runDefault = led_update_user(led_state); - if (runDefault) { - gpio_write_pin(B1, !led_state.num_lock); - gpio_write_pin(B2, !led_state.caps_lock); - gpio_write_pin(B3, !led_state.scroll_lock); - } - return runDefault; -} diff --git a/keyboards/wolfmarkclub/wm1/keyboard.json b/keyboards/wolfmarkclub/wm1/keyboard.json index 56c062e1024..0cea5546c8a 100644 --- a/keyboards/wolfmarkclub/wm1/keyboard.json +++ b/keyboards/wolfmarkclub/wm1/keyboard.json @@ -27,6 +27,11 @@ "resync": true } }, + "indicators": { + "caps_lock": "B1", + "num_lock": "B0", + "scroll_lock": "C5" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/wolfmarkclub/wm1/wm1.c b/keyboards/wolfmarkclub/wm1/wm1.c index 9c4fb090c88..83c4c8bb458 100644 --- a/keyboards/wolfmarkclub/wm1/wm1.c +++ b/keyboards/wolfmarkclub/wm1/wm1.c @@ -4,19 +4,3 @@ void bootloader_jump(void) { // This board doesn't use the "standard" stm32duino bootloader, and no information is available regarding how to enter bootloader mode. All we can do here is reset. NVIC_SystemReset(); } - -void matrix_init_kb(void) { - gpio_set_pin_output(B1); // Top Indicator LED - gpio_set_pin_output(B0); // Middle Indicator LED - gpio_set_pin_output(C5); // Bottom Indicator LED - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(B1, led_state.caps_lock); - gpio_write_pin(B0, led_state.num_lock); - gpio_write_pin(C5, led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/wsk/g4m3ralpha/g4m3ralpha.c b/keyboards/wsk/g4m3ralpha/g4m3ralpha.c deleted file mode 100644 index 3c039a173fe..00000000000 --- a/keyboards/wsk/g4m3ralpha/g4m3ralpha.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2020 Worldspawn - * - * 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 . - */ - -#include "quantum.h" - - -void matrix_init_kb(void) { - gpio_set_pin_output(D3); - gpio_write_pin_low(D3); - gpio_set_pin_output(D2); - gpio_write_pin_low(D2); - gpio_set_pin_output(D0); - gpio_write_pin_low(D0); - - matrix_init_user(); -}; - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(D3, led_state.num_lock); - gpio_write_pin(D0, led_state.caps_lock); - gpio_write_pin(D2, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/wsk/g4m3ralpha/keyboard.json b/keyboards/wsk/g4m3ralpha/keyboard.json index fcb2f26f5fd..b5cdb7ce101 100644 --- a/keyboards/wsk/g4m3ralpha/keyboard.json +++ b/keyboards/wsk/g4m3ralpha/keyboard.json @@ -8,6 +8,11 @@ "pid": "0x56D9", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "D0", + "num_lock": "D3", + "scroll_lock": "D2" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/yushakobo/navpad/navpad_prefs.c b/keyboards/yushakobo/navpad/navpad_prefs.c index 08b7464cf95..c7b3881621a 100644 --- a/keyboards/yushakobo/navpad/navpad_prefs.c +++ b/keyboards/yushakobo/navpad/navpad_prefs.c @@ -37,10 +37,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { return true; } -bool led_update_kb(led_t led_state) { - return led_update_user(led_state); -} - #ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } From 191c8cca33f07096022bab85b75d8eb1b92e9e2e Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 23 Jun 2024 12:57:50 +1000 Subject: [PATCH 129/519] `handwired/symmetric70_proto`: add `keyboard.json` (#23966) --- .../handwired/symmetric70_proto/promicro/base/keyboard.json | 1 + .../handwired/symmetric70_proto/promicro/fast/keyboard.json | 1 + .../handwired/symmetric70_proto/promicro/normal/keyboard.json | 1 + keyboards/handwired/symmetric70_proto/promicro/rules.mk | 2 +- .../handwired/symmetric70_proto/proton_c/base/keyboard.json | 1 + .../handwired/symmetric70_proto/proton_c/fast/keyboard.json | 1 + .../handwired/symmetric70_proto/proton_c/normal/keyboard.json | 1 + keyboards/handwired/symmetric70_proto/proton_c/rules.mk | 2 +- 8 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 keyboards/handwired/symmetric70_proto/promicro/base/keyboard.json create mode 100644 keyboards/handwired/symmetric70_proto/promicro/fast/keyboard.json create mode 100644 keyboards/handwired/symmetric70_proto/promicro/normal/keyboard.json create mode 100644 keyboards/handwired/symmetric70_proto/proton_c/base/keyboard.json create mode 100644 keyboards/handwired/symmetric70_proto/proton_c/fast/keyboard.json create mode 100644 keyboards/handwired/symmetric70_proto/proton_c/normal/keyboard.json diff --git a/keyboards/handwired/symmetric70_proto/promicro/base/keyboard.json b/keyboards/handwired/symmetric70_proto/promicro/base/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/handwired/symmetric70_proto/promicro/base/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/handwired/symmetric70_proto/promicro/fast/keyboard.json b/keyboards/handwired/symmetric70_proto/promicro/fast/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/handwired/symmetric70_proto/promicro/fast/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/handwired/symmetric70_proto/promicro/normal/keyboard.json b/keyboards/handwired/symmetric70_proto/promicro/normal/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/handwired/symmetric70_proto/promicro/normal/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/handwired/symmetric70_proto/promicro/rules.mk b/keyboards/handwired/symmetric70_proto/promicro/rules.mk index 6e7633bfe01..7aa985b3f1d 100644 --- a/keyboards/handwired/symmetric70_proto/promicro/rules.mk +++ b/keyboards/handwired/symmetric70_proto/promicro/rules.mk @@ -1 +1 @@ -# This file intentionally left blank +DEFAULT_FOLDER = handwired/symmetric70_proto/promicro/base diff --git a/keyboards/handwired/symmetric70_proto/proton_c/base/keyboard.json b/keyboards/handwired/symmetric70_proto/proton_c/base/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/handwired/symmetric70_proto/proton_c/base/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/handwired/symmetric70_proto/proton_c/fast/keyboard.json b/keyboards/handwired/symmetric70_proto/proton_c/fast/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/handwired/symmetric70_proto/proton_c/fast/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/handwired/symmetric70_proto/proton_c/normal/keyboard.json b/keyboards/handwired/symmetric70_proto/proton_c/normal/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/handwired/symmetric70_proto/proton_c/normal/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/handwired/symmetric70_proto/proton_c/rules.mk b/keyboards/handwired/symmetric70_proto/proton_c/rules.mk index 6e7633bfe01..28c4536e4bf 100644 --- a/keyboards/handwired/symmetric70_proto/proton_c/rules.mk +++ b/keyboards/handwired/symmetric70_proto/proton_c/rules.mk @@ -1 +1 @@ -# This file intentionally left blank +DEFAULT_FOLDER = handwired/symmetric70_proto/proton_c/base From e96d6d9bd43a83c5d9ada75014bc9ef90abc8f40 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 23 Jun 2024 13:08:57 +1000 Subject: [PATCH 130/519] Migrate RGB Matrix layout for two boards (#23963) --- keyboards/doio/kb30/kb30.c | 28 ---------- keyboards/doio/kb30/keyboard.json | 45 ++++++++++++++- keyboards/work_louder/work_board/info.json | 56 ++++++++++++++++++- keyboards/work_louder/work_board/work_board.c | 19 ------- 4 files changed, 99 insertions(+), 49 deletions(-) diff --git a/keyboards/doio/kb30/kb30.c b/keyboards/doio/kb30/kb30.c index 53a4546e062..671f49e8aba 100644 --- a/keyboards/doio/kb30/kb30.c +++ b/keyboards/doio/kb30/kb30.c @@ -17,34 +17,6 @@ #include "quantum.h" - -#ifdef RGB_MATRIX_ENABLE - - led_config_t g_led_config = { { - // Key Matrix to LED Index - { 0, 1, 2, 3, 4, 5, 6}, - { 7, 8, 9, 10, 11, 12, 13}, - { 14, 15, 16, 17, 18, 19, NO_LED }, - { 20, 21, 22, 23, NO_LED, 24, NO_LED}, - { 25, 26, 27, 28, 29, NO_LED, NO_LED}, - { 30, 31, 32, 33, 34, 35} -}, { -{0,0}, {37,0}, {75,0}, {112,0}, {149,0}, {187,0}, {224,0}, -{0,16}, {37,16}, {75,16}, {112,16}, {149,16}, {187,16}, {224,16}, -{0,32}, {37,32}, {75,32}, {112,32}, {149,32}, {187,32}, -{0,48}, {37,48}, {75,48}, {112,48}, {187,48}, -{0,64}, {37,64}, {65,64}, {112,64}, {149,64}, -{187,64}, {173,64}, {186,64}, {198,64}, {211,64},{224,64}, -}, { - 4,4,4,4,4,4,4, - 4,4,4,4,4,4,4, - 4,4,4,4,4,4, - 4,4,4,4,4, - 4,4,4,4,4, - 4,4,4,4,4,4 -} }; -#endif - /* OLED */ #ifdef OLED_ENABLE uint16_t startup_timer = 0; diff --git a/keyboards/doio/kb30/keyboard.json b/keyboards/doio/kb30/keyboard.json index b14eab1c33a..388df2d9e36 100644 --- a/keyboards/doio/kb30/keyboard.json +++ b/keyboards/doio/kb30/keyboard.json @@ -46,7 +46,50 @@ }, "driver": "ws2812", "max_brightness": 200, - "sleep": true + "sleep": true, + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4}, + {"matrix": [0, 1], "x": 37, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 75, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 112, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 149, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 187, "y": 0, "flags": 4}, + {"matrix": [0, 6], "x": 224, "y": 0, "flags": 4}, + + {"matrix": [1, 0], "x": 0, "y": 16, "flags": 4}, + {"matrix": [1, 1], "x": 37, "y": 16, "flags": 4}, + {"matrix": [1, 2], "x": 75, "y": 16, "flags": 4}, + {"matrix": [1, 3], "x": 112, "y": 16, "flags": 4}, + {"matrix": [1, 4], "x": 149, "y": 16, "flags": 4}, + {"matrix": [1, 5], "x": 187, "y": 16, "flags": 4}, + {"matrix": [1, 6], "x": 224, "y": 16, "flags": 4}, + + {"matrix": [2, 0], "x": 0, "y": 32, "flags": 4}, + {"matrix": [2, 1], "x": 37, "y": 32, "flags": 4}, + {"matrix": [2, 2], "x": 75, "y": 32, "flags": 4}, + {"matrix": [2, 3], "x": 112, "y": 32, "flags": 4}, + {"matrix": [2, 4], "x": 149, "y": 32, "flags": 4}, + {"matrix": [2, 5], "x": 187, "y": 32, "flags": 4}, + + {"matrix": [3, 0], "x": 0, "y": 48, "flags": 4}, + {"matrix": [3, 1], "x": 37, "y": 48, "flags": 4}, + {"matrix": [3, 2], "x": 75, "y": 48, "flags": 4}, + {"matrix": [3, 3], "x": 112, "y": 48, "flags": 4}, + {"matrix": [3, 5], "x": 187, "y": 48, "flags": 4}, + + {"matrix": [4, 0], "x": 18, "y": 64, "flags": 4}, + {"matrix": [4, 1], "x": 75, "y": 64, "flags": 4}, + {"matrix": [4, 2], "x": 149, "y": 64, "flags": 4}, + {"matrix": [4, 3], "x": 187, "y": 64, "flags": 4}, + {"matrix": [4, 4], "x": 224, "y": 64, "flags": 4}, + + {"x": 224, "y": 56, "flags": 2}, + {"x": 112, "y": 56, "flags": 2}, + {"x": 0, "y": 56, "flags": 2}, + {"x": 0, "y": 8, "flags": 2}, + {"x": 112, "y": 8, "flags": 2}, + {"x": 224, "y": 8, "flags": 2} + ] }, "features": { "bootmagic": true, diff --git a/keyboards/work_louder/work_board/info.json b/keyboards/work_louder/work_board/info.json index dc412fdabd1..0e97efa9a47 100644 --- a/keyboards/work_louder/work_board/info.json +++ b/keyboards/work_louder/work_board/info.json @@ -58,7 +58,61 @@ }, "driver": "ws2812", "max_brightness": 120, - "sleep": true + "sleep": true, + "layout": [ + {"matrix": [3, 11], "x": 223, "y": 63, "flags": 1}, + {"matrix": [3, 10], "x": 203, "y": 63, "flags": 1}, + {"matrix": [3, 9], "x": 183, "y": 63, "flags": 1}, + {"matrix": [3, 8], "x": 162, "y": 63, "flags": 1}, + {"matrix": [3, 7], "x": 142, "y": 63, "flags": 1}, + {"matrix": [3, 6], "x": 122, "y": 63, "flags": 4}, + {"x": 112, "y": 63, "flags": 4}, + {"matrix": [3, 5], "x": 101, "y": 63, "flags": 4}, + {"matrix": [3, 4], "x": 81, "y": 63, "flags": 1}, + {"matrix": [3, 3], "x": 61, "y": 63, "flags": 1}, + {"matrix": [3, 2], "x": 40, "y": 63, "flags": 1}, + {"matrix": [3, 1], "x": 20, "y": 63, "flags": 1}, + {"matrix": [3, 0], "x": 0, "y": 63, "flags": 1}, + + {"matrix": [2, 0], "x": 0, "y": 42, "flags": 1}, + {"matrix": [2, 1], "x": 20, "y": 42, "flags": 4}, + {"matrix": [2, 2], "x": 40, "y": 42, "flags": 4}, + {"matrix": [2, 3], "x": 61, "y": 42, "flags": 4}, + {"matrix": [2, 4], "x": 81, "y": 42, "flags": 4}, + {"matrix": [2, 5], "x": 101, "y": 42, "flags": 4}, + {"matrix": [2, 6], "x": 122, "y": 42, "flags": 4}, + {"matrix": [2, 7], "x": 142, "y": 42, "flags": 4}, + {"matrix": [2, 8], "x": 162, "y": 42, "flags": 4}, + {"matrix": [2, 9], "x": 183, "y": 42, "flags": 4}, + {"matrix": [2, 10], "x": 203, "y": 42, "flags": 4}, + {"matrix": [2, 11], "x": 223, "y": 42, "flags": 1}, + + {"matrix": [1, 11], "x": 223, "y": 21, "flags": 1}, + {"matrix": [1, 10], "x": 203, "y": 21, "flags": 4}, + {"matrix": [1, 9], "x": 183, "y": 21, "flags": 4}, + {"matrix": [1, 8], "x": 162, "y": 21, "flags": 4}, + {"matrix": [1, 7], "x": 142, "y": 21, "flags": 4}, + {"matrix": [1, 6], "x": 122, "y": 21, "flags": 4}, + {"matrix": [1, 5], "x": 101, "y": 21, "flags": 4}, + {"matrix": [1, 4], "x": 81, "y": 21, "flags": 4}, + {"matrix": [1, 3], "x": 61, "y": 21, "flags": 4}, + {"matrix": [1, 2], "x": 40, "y": 21, "flags": 4}, + {"matrix": [1, 1], "x": 20, "y": 21, "flags": 4}, + {"matrix": [1, 0], "x": 0, "y": 21, "flags": 1}, + + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1}, + {"matrix": [0, 1], "x": 20, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 40, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 61, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 81, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 101, "y": 0, "flags": 4}, + {"matrix": [0, 6], "x": 122, "y": 0, "flags": 4}, + {"matrix": [0, 7], "x": 142, "y": 0, "flags": 4}, + {"matrix": [0, 8], "x": 162, "y": 0, "flags": 4}, + {"matrix": [0, 9], "x": 183, "y": 0, "flags": 4}, + {"matrix": [0, 10], "x": 203, "y": 0, "flags": 4}, + {"matrix": [0, 11], "x": 223, "y": 0, "flags": 1}, + ] }, "matrix_pins": { "cols": ["D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "E6"], diff --git a/keyboards/work_louder/work_board/work_board.c b/keyboards/work_louder/work_board/work_board.c index 975c7aa794c..ef36b3171f2 100644 --- a/keyboards/work_louder/work_board/work_board.c +++ b/keyboards/work_louder/work_board/work_board.c @@ -67,25 +67,6 @@ bool oled_task_kb(void) { #endif #ifdef RGB_MATRIX_ENABLE -// clang-format off -led_config_t g_led_config = { { - { 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48 }, - { 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25 }, - { 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 }, - { 12, 11, 10, 9, 8, 7, 5, 4, 3, 2, 1, 0} -}, { - { 223, 63 }, { 203, 63 }, { 183, 63 }, { 162, 63 }, { 142, 63 }, { 122, 63 }, { 112, 63 }, { 101, 63 }, { 81, 63 }, { 61, 63 }, { 40, 63 }, { 20, 63 }, { 0, 63 }, - { 0, 42 }, { 20, 42 }, { 40, 42 }, { 61, 42 }, { 81, 42 }, { 101, 42 }, { 122, 42 }, { 142, 42 }, { 162, 42 }, { 183, 42 }, { 203, 42 }, { 223, 42 }, - { 223, 21 }, { 203, 21 }, { 183, 21 }, { 162, 21 }, { 142, 21 }, { 122, 21 }, { 101, 21 }, { 81, 21 }, { 61, 21 }, { 40, 21 }, { 20, 21 }, { 0, 21 }, - { 0, 0 }, { 20, 0 }, { 40, 0 }, { 61, 0 }, { 81, 0 }, { 101, 0 }, { 122, 0 }, { 142, 0 }, { 162, 0 }, { 183, 0 }, { 203, 0 }, { 223, 0 } -}, { - 1, 1, 1, 1, 1, 4,4,4, 1, 1, 1, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1 -} }; -// clang-format on - # ifdef VIA_ENABLE bool via_layout_2u = false; From f0471dd5b4e737726540d5e86f2666726808a1ba Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 23 Jun 2024 09:02:13 +0100 Subject: [PATCH 131/519] Remove skipped schema files (#23987) --- data/schemas/false.jsonschema | 1 - data/schemas/true.jsonschema | 1 - 2 files changed, 2 deletions(-) delete mode 100644 data/schemas/false.jsonschema delete mode 100644 data/schemas/true.jsonschema diff --git a/data/schemas/false.jsonschema b/data/schemas/false.jsonschema deleted file mode 100644 index c508d5366f7..00000000000 --- a/data/schemas/false.jsonschema +++ /dev/null @@ -1 +0,0 @@ -false diff --git a/data/schemas/true.jsonschema b/data/schemas/true.jsonschema deleted file mode 100644 index 27ba77ddaf6..00000000000 --- a/data/schemas/true.jsonschema +++ /dev/null @@ -1 +0,0 @@ -true From d5e0562a7043bf372c3f349420dd765ee3a9653d Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 24 Jun 2024 04:33:26 +1000 Subject: [PATCH 132/519] Rename layouts containing keyboard name (#23930) --- keyboards/boardrun/classic/keyboard.json | 5 ++++- keyboards/boardrun/classic/keymaps/default/keymap.c | 4 ++-- keyboards/boardrun/classic/keymaps/via/keymap.c | 8 ++++---- keyboards/deltasplit75/keymaps/default/keymap.c | 4 ++-- keyboards/deltasplit75/v2/keyboard.json | 5 ++++- keyboards/doro67/multi/keyboard.json | 3 ++- keyboards/doro67/multi/keymaps/default_multi/keymap.c | 4 ++-- keyboards/flehrad/tradestation/keyboard.json | 5 ++++- keyboards/handwired/concertina/64key/keyboard.json | 5 ++++- .../handwired/concertina/64key/keymaps/default/keymap.c | 8 ++++---- keyboards/handwired/dactyl/keyboard.json | 5 ++++- keyboards/handwired/dactyl/keymaps/default/keymap.c | 6 +++--- keyboards/handwired/dactyl/keymaps/dvorak/keymap.c | 6 +++--- keyboards/handwired/dactyl/keymaps/erincalling/keymap.c | 6 +++--- keyboards/handwired/owlet60/keyboard.json | 6 ++++-- keyboards/handwired/owlet60/keymaps/default/keymap.c | 4 ++-- keyboards/handwired/owlet60/keymaps/oled_testing/keymap.c | 4 ++-- keyboards/handwired/pterodactyl/keyboard.json | 5 ++++- keyboards/handwired/pterodactyl/keymaps/default/keymap.c | 6 +++--- .../handwired/pterodactyl/keymaps/default/keymap.json | 2 +- keyboards/mode/m80v1/m80s/keyboard.json | 5 ++++- keyboards/mode/m80v1/m80s/keymaps/default/keymap.c | 4 ++-- keyboards/mode/m80v1/m80s/keymaps/via/keymap.c | 8 ++++---- keyboards/mode/m80v2/m80v2s/keyboard.json | 5 ++++- keyboards/mode/m80v2/m80v2s/keymaps/default/keymap.c | 8 ++++---- keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c | 8 ++++---- keyboards/reviung/reviung34/keyboard.json | 8 +++++--- keyboards/reviung/reviung34/keymaps/default/keymap.c | 8 ++++---- keyboards/reviung/reviung34/keymaps/default_2u/keymap.c | 8 ++++---- keyboards/reviung/reviung34/keymaps/default_jp/keymap.c | 8 ++++---- keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c | 8 ++++---- .../reviung/reviung34/keymaps/default_rgb2u/keymap.c | 8 ++++---- keyboards/reviung/reviung34/keymaps/via/keymap.c | 8 ++++---- 33 files changed, 112 insertions(+), 83 deletions(-) diff --git a/keyboards/boardrun/classic/keyboard.json b/keyboards/boardrun/classic/keyboard.json index 4831131f18f..be21483c8e3 100644 --- a/keyboards/boardrun/classic/keyboard.json +++ b/keyboards/boardrun/classic/keyboard.json @@ -52,8 +52,11 @@ "diode_direction": "COL2ROW", "processor": "atmega32u4", "bootloader": "atmel-dfu", + "layout_aliases": { + "LAYOUT_classic": "LAYOUT" + }, "layouts": { - "LAYOUT_classic": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1.5}, {"matrix": [0, 1], "x": 1.5, "y": 0}, diff --git a/keyboards/boardrun/classic/keymaps/default/keymap.c b/keyboards/boardrun/classic/keymaps/default/keymap.c index 8f7df2f5bdc..a3b4df90863 100644 --- a/keyboards/boardrun/classic/keymaps/default/keymap.c +++ b/keyboards/boardrun/classic/keymaps/default/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | LGUI | DEL | ~` | LALT | SPACE | | FN | SPACE | | LEFT | DOWN | UP | RIGHT | * '--------------------------------------------------------------------------------------------------------------------' */ - [_CLASSIC] = LAYOUT_classic( + [_CLASSIC] = LAYOUT( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | RGUI | | | RALT | | | | | | | | * '--------------------------------------------------------------------------------------------------------------------' */ - [_FNCLASSIC] = LAYOUT_classic( + [_FNCLASSIC] = LAYOUT( QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, KC_APP, _______, QK_BOOT, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, KC_CAPS, _______, KC_SCRL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RCTL, diff --git a/keyboards/boardrun/classic/keymaps/via/keymap.c b/keyboards/boardrun/classic/keymaps/via/keymap.c index 0994e925ea9..67c388bb047 100644 --- a/keyboards/boardrun/classic/keymaps/via/keymap.c +++ b/keyboards/boardrun/classic/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | LGUI | DEL | ~` | LALT | SPACE | | MO | SPACE | | LEFT | DOWN | UP | RIGHT | * '--------------------------------------------------------------------------------------------------------------------' */ - [0] = LAYOUT_classic( + [0] = LAYOUT( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | | | | | | | * '--------------------------------------------------------------------------------------------------------------------' */ - [1] = LAYOUT_classic( + [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_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [2] = LAYOUT_classic( + [2] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -67,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [3] = LAYOUT_classic( + [3] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/deltasplit75/keymaps/default/keymap.c b/keyboards/deltasplit75/keymaps/default/keymap.c index 36031d57aef..8bbd3e82faa 100644 --- a/keyboards/deltasplit75/keymaps/default/keymap.c +++ b/keyboards/deltasplit75/keymaps/default/keymap.c @@ -7,7 +7,7 @@ // entirely and just use numbers. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - LAYOUT_v2( + 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_INS, KC_HOME, KC_PGUP, 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_DEL, KC_END, KC_PGDN, 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_SCRL, @@ -16,7 +16,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - LAYOUT_v2( + LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/deltasplit75/v2/keyboard.json b/keyboards/deltasplit75/v2/keyboard.json index d175633d71e..4d3d42ad046 100644 --- a/keyboards/deltasplit75/v2/keyboard.json +++ b/keyboards/deltasplit75/v2/keyboard.json @@ -36,8 +36,11 @@ "resync": true } }, + "layout_aliases": { + "LAYOUT_v2": "LAYOUT_all" + }, "layouts": { - "LAYOUT_v2": { + "LAYOUT_all": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/doro67/multi/keyboard.json b/keyboards/doro67/multi/keyboard.json index 81f2940b362..a3a652e40b8 100644 --- a/keyboards/doro67/multi/keyboard.json +++ b/keyboards/doro67/multi/keyboard.json @@ -34,6 +34,7 @@ "bootloader": "atmel-dfu", "community_layouts": ["65_ansi_blocker"], "layout_aliases": { + "LAYOUT_multi": "LAYOUT_all", "LAYOUT_ansi": "LAYOUT_65_ansi_blocker" }, "layouts": { @@ -188,7 +189,7 @@ {"matrix": [4, 14], "x": 15, "y": 4} ] }, - "LAYOUT_multi": { + "LAYOUT_all": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/doro67/multi/keymaps/default_multi/keymap.c b/keyboards/doro67/multi/keymaps/default_multi/keymap.c index 918ac3936bd..1b58b0c2d67 100644 --- a/keyboards/doro67/multi/keymaps/default_multi/keymap.c +++ b/keyboards/doro67/multi/keymaps/default_multi/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * │LCtl│LGui│LAlt│ Space │Spc │ Space │RAl│Fn │RCt│ ← │ ↓ │ → │ * └────┴────┴────┴──────────┴────┴────────┴───┴───┴───┴───┴───┴───┘ */ - [0] = LAYOUT_multi( + [0] = LAYOUT_all( 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_GRV, KC_INS, 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_DEL, 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_PGUP, @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * │ │ │ │ │ │ │ │ │ │ │ │ │ * └────┴────┴────┴──────────┴────┴────────┴───┴───┴───┴───┴───┴───┘ */ - [1] = LAYOUT_multi( + [1] = LAYOUT_all( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, BL_TOGG, BL_STEP, BL_DOWN, BL_UP, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/flehrad/tradestation/keyboard.json b/keyboards/flehrad/tradestation/keyboard.json index 24a1e07dd45..757325ceaf8 100644 --- a/keyboards/flehrad/tradestation/keyboard.json +++ b/keyboards/flehrad/tradestation/keyboard.json @@ -30,8 +30,11 @@ "processor": "atmega32u4", "bootloader": "caterina", "community_layouts": ["ortho_4x4"], + "layout_aliases": { + "LAYOUT_tradestation": "LAYOUT_4x2u" + }, "layouts": { - "LAYOUT_tradestation": { + "LAYOUT_4x2u": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1.125, "y": 0}, diff --git a/keyboards/handwired/concertina/64key/keyboard.json b/keyboards/handwired/concertina/64key/keyboard.json index 71719c8505f..dedc240d3f4 100644 --- a/keyboards/handwired/concertina/64key/keyboard.json +++ b/keyboards/handwired/concertina/64key/keyboard.json @@ -29,8 +29,11 @@ "diode_direction": "COL2ROW", "processor": "atmega32u4", "bootloader": "caterina", + "layout_aliases": { + "LAYOUT_64key": "LAYOUT" + }, "layouts": { - "LAYOUT_64key": { + "LAYOUT": { "layout": [ {"matrix": [2, 2], "x": 2.5, "y": 0.4}, {"matrix": [2, 1], "x": 3.5, "y": 0}, diff --git a/keyboards/handwired/concertina/64key/keymaps/default/keymap.c b/keyboards/handwired/concertina/64key/keymaps/default/keymap.c index aced9d13c68..c9f63844400 100644 --- a/keyboards/handwired/concertina/64key/keymaps/default/keymap.c +++ b/keyboards/handwired/concertina/64key/keymaps/default/keymap.c @@ -43,7 +43,7 @@ tap_dance_action_t tap_dance_actions[] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[_QWERTY] = LAYOUT_64key( +[_QWERTY] = LAYOUT( SC_LSPO, KC_MINS, KC_EQL, KC_VOLD, KC_VOLU, SC_RSPC, SC_LCPO, KC_LGUI, KC_LNG1, KC_ENT, KC_MUTE, TD(PNX), LAYER_N, SC_RCPC, SC_LAPO, KC_SPC, SLQ, SRQ, KC_ESC, SC_RAPC, @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PGDN, KC_DOWN ), -[_COLEMAK] = LAYOUT_64key( +[_COLEMAK] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -67,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______ ), -[_GAMING] = LAYOUT_64key( +[_GAMING] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DOWN, KC_PGDN ), -[_NUMERIC] = LAYOUT_64key( +[_NUMERIC] = LAYOUT( _______, _______, _______, KC_ACL1, KC_ACL2, _______, _______, _______, LAYER_C, _______, KC_ACL0, _______, _______, _______, _______, _______, _______, KC_SLEP, _______, _______, diff --git a/keyboards/handwired/dactyl/keyboard.json b/keyboards/handwired/dactyl/keyboard.json index 339119e6fd4..58baf228ca4 100644 --- a/keyboards/handwired/dactyl/keyboard.json +++ b/keyboards/handwired/dactyl/keyboard.json @@ -22,8 +22,11 @@ "tapping": { "toggle": 1 }, + "layout_aliases": { + "LAYOUT_dactyl": "LAYOUT" + }, "layouts": { - "LAYOUT_dactyl": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/handwired/dactyl/keymaps/default/keymap.c b/keyboards/handwired/dactyl/keymaps/default/keymap.c index 33a3d727d13..669f3585300 100644 --- a/keyboards/handwired/dactyl/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | |ace | End | | PgDn | | | * `--------------------' `--------------------' */ -[BASE] = LAYOUT_dactyl( // layer 0 : default +[BASE] = LAYOUT( // layer 0 : default // left hand KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_DEL, KC_Q, KC_W, KC_E, KC_R, KC_T, @@ -74,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `--------------------' `--------------------' */ // SYMBOLS -[SYMB] = LAYOUT_dactyl( +[SYMB] = LAYOUT( // left hand VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, @@ -116,7 +116,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * */ // MEDIA AND MOUSE -[MDIA] = LAYOUT_dactyl( +[MDIA] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, diff --git a/keyboards/handwired/dactyl/keymaps/dvorak/keymap.c b/keyboards/handwired/dactyl/keymaps/dvorak/keymap.c index ad962a1d1b8..59cb7b34f82 100644 --- a/keyboards/handwired/dactyl/keymaps/dvorak/keymap.c +++ b/keyboards/handwired/dactyl/keymaps/dvorak/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | |ace | End | | PgDn | | | * `--------------------' `--------------------' */ -[BASE] = LAYOUT_dactyl( // layer 0 : default +[BASE] = LAYOUT( // layer 0 : default // left hand KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_DEL, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, @@ -74,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `--------------------' `--------------------' */ // SYMBOLS -[SYMB] = LAYOUT_dactyl( +[SYMB] = LAYOUT( // left hand VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, @@ -116,7 +116,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * */ // MEDIA AND MOUSE -[MDIA] = LAYOUT_dactyl( +[MDIA] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, diff --git a/keyboards/handwired/dactyl/keymaps/erincalling/keymap.c b/keyboards/handwired/dactyl/keymaps/erincalling/keymap.c index d25bd6acd4e..74f3d4afa0c 100644 --- a/keyboards/handwired/dactyl/keymaps/erincalling/keymap.c +++ b/keyboards/handwired/dactyl/keymaps/erincalling/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |Space | | LGui | | RGui | | | * `--------------------' `--------------------' */ -[BASE] = LAYOUT_dactyl( // layer 0 : default +[BASE] = LAYOUT( // layer 0 : default // left hand KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, @@ -74,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `--------------------' `--------------------' */ // SYMBOLS -[CONT] = LAYOUT_dactyl( +[CONT] = LAYOUT( // left hand KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, @@ -116,7 +116,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * */ // QWERTY -[QWER] = LAYOUT_dactyl( +[QWER] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRNS, KC_A, KC_S, KC_D, KC_F, KC_G, diff --git a/keyboards/handwired/owlet60/keyboard.json b/keyboards/handwired/owlet60/keyboard.json index 8108f51985d..fad204e6fa6 100644 --- a/keyboards/handwired/owlet60/keyboard.json +++ b/keyboards/handwired/owlet60/keyboard.json @@ -42,11 +42,13 @@ "debounce": 9, "community_layouts": ["alice", "alice_split_bs"], "layout_aliases": { + "LAYOUT_owlet60_full_bsp": "LAYOUT_full_bs", + "LAYOUT_owlet60_split_bsp": "LAYOUT_split_bs", "LAYOUT_owlet60_60_percent_full_bsp": "LAYOUT_alice", "LAYOUT_owlet60_60_percent_split_bsp": "LAYOUT_alice_split_bs" }, "layouts": { - "LAYOUT_owlet60_full_bsp": { + "LAYOUT_full_bs": { "layout": [ {"matrix": [0, 0], "x": 0.5, "y": 0}, @@ -132,7 +134,7 @@ {"matrix": [3, 7], "x": 18, "y": 4} ] }, - "LAYOUT_owlet60_split_bsp": { + "LAYOUT_split_bs": { "layout": [ {"matrix": [0, 0], "x": 0.5, "y": 0}, diff --git a/keyboards/handwired/owlet60/keymaps/default/keymap.c b/keyboards/handwired/owlet60/keymaps/default/keymap.c index b0924eb0552..e3068fd11f1 100644 --- a/keyboards/handwired/owlet60/keymaps/default/keymap.c +++ b/keyboards/handwired/owlet60/keymaps/default/keymap.c @@ -16,7 +16,7 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_owlet60_full_bsp( + [0] = LAYOUT_full_bs( KC_1, 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_BSPC, KC_PGUP, KC_2, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, KC_3, 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_HOME, @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1),KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT ), - [1] = LAYOUT_owlet60_full_bsp( + [1] = LAYOUT_full_bs( KC_NO, KC_GRV, 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_DEL, RGB_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_MOD, KC_NO, KC_NO,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,KC_NO, KC_NO, RGB_VAI, diff --git a/keyboards/handwired/owlet60/keymaps/oled_testing/keymap.c b/keyboards/handwired/owlet60/keymaps/oled_testing/keymap.c index 4531a3c3f63..76a8d7c8c9e 100644 --- a/keyboards/handwired/owlet60/keymaps/oled_testing/keymap.c +++ b/keyboards/handwired/owlet60/keymaps/oled_testing/keymap.c @@ -16,7 +16,7 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_owlet60_full_bsp( + [0] = LAYOUT_full_bs( KC_1, 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_BSPC, KC_PGUP, KC_2, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, KC_3, 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_HOME, @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1),KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT ), - [1] = LAYOUT_owlet60_full_bsp( + [1] = LAYOUT_full_bs( KC_NO, KC_GRV, 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_DEL, RGB_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_MOD, KC_NO, KC_NO,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,KC_NO, KC_NO, RGB_VAI, diff --git a/keyboards/handwired/pterodactyl/keyboard.json b/keyboards/handwired/pterodactyl/keyboard.json index fac20aeebe1..751db2aff3a 100644 --- a/keyboards/handwired/pterodactyl/keyboard.json +++ b/keyboards/handwired/pterodactyl/keyboard.json @@ -26,8 +26,11 @@ "bluetooth": { "driver": "bluefruit_le" }, + "layout_aliases": { + "LAYOUT_pterodactyl": "LAYOUT" + }, "layouts": { - "LAYOUT_pterodactyl": { + "LAYOUT": { "layout": [ {"matrix": [0, 11], "x": 0, "y": 0}, {"matrix": [0, 10], "x": 1, "y": 0}, diff --git a/keyboards/handwired/pterodactyl/keymaps/default/keymap.c b/keyboards/handwired/pterodactyl/keymaps/default/keymap.c index fd8fc812888..61d650c76b0 100644 --- a/keyboards/handwired/pterodactyl/keymaps/default/keymap.c +++ b/keyboards/handwired/pterodactyl/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | |ace | End | | PgDn | | | * `--------------------' `--------------------' */ -[_BL] = LAYOUT_pterodactyl( // layer 0 : default +[_BL] = LAYOUT( // layer 0 : default // left hand KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_DEL, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `--------------------' `--------------------' */ // SYMBOLS -[_SYMB] = LAYOUT_pterodactyl( +[_SYMB] = LAYOUT( // left hand KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, @@ -99,7 +99,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * */ // MEDIA AND MOUSE -[_MDIA] = LAYOUT_pterodactyl( +[_MDIA] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, diff --git a/keyboards/handwired/pterodactyl/keymaps/default/keymap.json b/keyboards/handwired/pterodactyl/keymaps/default/keymap.json index 2c84da113c0..181b32b8c3a 100644 --- a/keyboards/handwired/pterodactyl/keymaps/default/keymap.json +++ b/keyboards/handwired/pterodactyl/keymaps/default/keymap.json @@ -4,7 +4,7 @@ "author": "Marcus Young", "keyboard": "handwired/pterodactyl", "keymap": "default", - "layout": "LAYOUT_pterodactyl", + "layout": "LAYOUT", "layers": [ [ "KC_EQL", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_7", "KC_8", "KC_9", "KC_0", "KC_MINS", diff --git a/keyboards/mode/m80v1/m80s/keyboard.json b/keyboards/mode/m80v1/m80s/keyboard.json index 27622de022b..25bfd3c70a7 100644 --- a/keyboards/mode/m80v1/m80s/keyboard.json +++ b/keyboards/mode/m80v1/m80s/keyboard.json @@ -29,8 +29,11 @@ "diode_direction": "COL2ROW", "processor": "STM32F072", "bootloader": "stm32-dfu", + "layout_aliases": { + "LAYOUT_eighty_m80s": "LAYOUT_tkl_ansi_split_bs_rshift" + }, "layouts": { - "LAYOUT_eighty_m80s": { + "LAYOUT_tkl_ansi_split_bs_rshift": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, diff --git a/keyboards/mode/m80v1/m80s/keymaps/default/keymap.c b/keyboards/mode/m80v1/m80s/keymaps/default/keymap.c index 8d13c6bb71a..bfb7ea3c4ca 100644 --- a/keyboards/mode/m80v1/m80s/keymaps/default/keymap.c +++ b/keyboards/mode/m80v1/m80s/keymaps/default/keymap.c @@ -23,7 +23,7 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_eighty_m80s( + [_BASE] = LAYOUT_tkl_ansi_split_bs_rshift( 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_BSPC, KC_MUTE, KC_VOLD, KC_VOLU, 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, @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [_FN1] = LAYOUT_eighty_m80s( + [_FN1] = LAYOUT_tkl_ansi_split_bs_rshift( QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/mode/m80v1/m80s/keymaps/via/keymap.c b/keyboards/mode/m80v1/m80s/keymaps/via/keymap.c index ef862d3b523..6aca52256af 100644 --- a/keyboards/mode/m80v1/m80s/keymaps/via/keymap.c +++ b/keyboards/mode/m80v1/m80s/keymaps/via/keymap.c @@ -25,7 +25,7 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_eighty_m80s( + [_BASE] = LAYOUT_tkl_ansi_split_bs_rshift( 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_BSPC, KC_MUTE, KC_VOLD, KC_VOLU, 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, @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [_FN1] = LAYOUT_eighty_m80s( + [_FN1] = LAYOUT_tkl_ansi_split_bs_rshift( QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - [_FN2] = LAYOUT_eighty_m80s( + [_FN2] = LAYOUT_tkl_ansi_split_bs_rshift( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - [_FN3] = LAYOUT_eighty_m80s( + [_FN3] = LAYOUT_tkl_ansi_split_bs_rshift( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/mode/m80v2/m80v2s/keyboard.json b/keyboards/mode/m80v2/m80v2s/keyboard.json index 8ab060668c9..d8b4c8ee854 100644 --- a/keyboards/mode/m80v2/m80v2s/keyboard.json +++ b/keyboards/mode/m80v2/m80v2s/keyboard.json @@ -33,8 +33,11 @@ }, "processor": "STM32F072", "bootloader": "stm32-dfu", + "layout_aliases": { + "LAYOUT_m80v2s": "LAYOUT_tkl_ansi_split_bs_lshift_rshift" + }, "layouts": { - "LAYOUT_m80v2s": { + "LAYOUT_tkl_ansi_split_bs_lshift_rshift": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, diff --git a/keyboards/mode/m80v2/m80v2s/keymaps/default/keymap.c b/keyboards/mode/m80v2/m80v2s/keymaps/default/keymap.c index 9a110cc2bcc..6b8a7d449b3 100755 --- a/keyboards/mode/m80v2/m80v2s/keymaps/default/keymap.c +++ b/keyboards/mode/m80v2/m80v2s/keymaps/default/keymap.c @@ -18,7 +18,7 @@ along with this program. If not, see . #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_m80v2s( + [0] = LAYOUT_tkl_ansi_split_bs_lshift_rshift( 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_BSPC, KC_MUTE, KC_VOLD , KC_VOLU , 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 , @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_BSLS, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, MO(1) , KC_UP , KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RGUI, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT_m80v2s( + [1] = LAYOUT_tkl_ansi_split_bs_lshift_rshift( QK_BOOT , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [2] = LAYOUT_m80v2s( + [2] = LAYOUT_tkl_ansi_split_bs_lshift_rshift( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [3] = LAYOUT_m80v2s( + [3] = LAYOUT_tkl_ansi_split_bs_lshift_rshift( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c b/keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c index 9a110cc2bcc..6b8a7d449b3 100755 --- a/keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c +++ b/keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c @@ -18,7 +18,7 @@ along with this program. If not, see . #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_m80v2s( + [0] = LAYOUT_tkl_ansi_split_bs_lshift_rshift( 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_BSPC, KC_MUTE, KC_VOLD , KC_VOLU , 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 , @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_BSLS, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, MO(1) , KC_UP , KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RGUI, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT_m80v2s( + [1] = LAYOUT_tkl_ansi_split_bs_lshift_rshift( QK_BOOT , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [2] = LAYOUT_m80v2s( + [2] = LAYOUT_tkl_ansi_split_bs_lshift_rshift( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [3] = LAYOUT_m80v2s( + [3] = LAYOUT_tkl_ansi_split_bs_lshift_rshift( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/reviung/reviung34/keyboard.json b/keyboards/reviung/reviung34/keyboard.json index 26f520d4ccf..8b354c00df3 100755 --- a/keyboards/reviung/reviung34/keyboard.json +++ b/keyboards/reviung/reviung34/keyboard.json @@ -33,10 +33,12 @@ "split_3x5_2" ], "layout_aliases": { - "LAYOUT_split_3x5_2": "LAYOUT_reviung34" + "LAYOUT_split_3x5_2": "LAYOUT_2x1u_left", + "LAYOUT_reviung34": "LAYOUT_2x1u_left", + "LAYOUT_reviung34_2u": "LAYOUT_1x2u_left", }, "layouts": { - "LAYOUT_reviung34": { + "LAYOUT_2x1u_left": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, @@ -81,7 +83,7 @@ {"matrix": [3, 8], "x": 6, "y": 3, "w": 2} ] }, - "LAYOUT_reviung34_2u": { + "LAYOUT_1x2u_left": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/reviung/reviung34/keymaps/default/keymap.c b/keyboards/reviung/reviung34/keymaps/default/keymap.c index 004518b4646..3dd7f73e731 100755 --- a/keyboards/reviung/reviung34/keymaps/default/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default/keymap.c @@ -35,28 +35,28 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_reviung34( + [_BASE] = LAYOUT_2x1u_left( CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, KC_TAB, KC_BSPC, LOWER, RA_SP ), - [_LOWER] = LAYOUT_reviung34( + [_LOWER] = LAYOUT_2x1u_left( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, _______, _______, _______, _______ ), - [_RAISE] = LAYOUT_reviung34( + [_RAISE] = LAYOUT_2x1u_left( 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, _______, _______, _______, _______ ), - [_ADJUST] = LAYOUT_reviung34( + [_ADJUST] = LAYOUT_2x1u_left( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c b/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c index 2b7a46a639e..44013b2d1fb 100755 --- a/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c @@ -35,28 +35,28 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_reviung34_2u( + [_BASE] = LAYOUT_1x2u_left( CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, KC_TAB, LOWER, RA_SP ), - [_LOWER] = LAYOUT_reviung34_2u( + [_LOWER] = LAYOUT_1x2u_left( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, _______, _______, _______ ), - [_RAISE] = LAYOUT_reviung34_2u( + [_RAISE] = LAYOUT_1x2u_left( 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, _______, _______, _______ ), - [_ADJUST] = LAYOUT_reviung34_2u( + [_ADJUST] = LAYOUT_1x2u_left( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c b/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c index 72aa2bcc00a..b5abe38ea6d 100755 --- a/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c @@ -36,28 +36,28 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_reviung34( + [_BASE] = LAYOUT_2x1u_left( CT_Q, JP_W, JP_E, JP_R, JP_T, JP_Y, JP_U, JP_I, JP_O, JP_P, JP_A, JP_S, JP_D, JP_F, JP_G, JP_H, JP_J, JP_K, JP_L, KC_ENT, SF_Z, AL_X, JP_C, JP_V, JP_B, JP_N, JP_M, CT_CM, AL_DT, SF_SS, KC_TAB, KC_BSPC, LOWER, RA_SP ), - [_LOWER] = LAYOUT_reviung34( + [_LOWER] = LAYOUT_2x1u_left( JP_EXLM, JP_AT, JP_HASH, JP_DLR, JP_PERC, JP_CIRC, JP_AMPR, JP_ASTR, JP_LPRN, JP_RPRN, JP_UNDS, JP_PLUS, JP_LCBR, JP_RCBR, JP_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, JP_SCLN, KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, JP_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, _______, _______, _______, _______ ), - [_RAISE] = LAYOUT_reviung34( + [_RAISE] = LAYOUT_2x1u_left( JP_1, JP_2, JP_3, JP_4, JP_5, JP_6, JP_7, JP_8, JP_9, JP_0, JP_MINS, JP_EQL, JP_LBRC, JP_RBRC, JP_YEN, JP_BSLS, XXXXXXX, JP_GRV, JP_TILD, JP_COLN, KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, JP_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, _______, _______, _______, _______ ), - [_ADJUST] = LAYOUT_reviung34( + [_ADJUST] = LAYOUT_2x1u_left( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c b/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c index e94006e6f11..b798ab3122b 100755 --- a/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c @@ -35,28 +35,28 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_reviung34( + [_BASE] = LAYOUT_2x1u_left( CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, LO_TB, KC_BSPC, KC_SPC, RAISE ), - [_LOWER] = LAYOUT_reviung34( + [_LOWER] = LAYOUT_2x1u_left( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, _______, _______, _______, _______ ), - [_RAISE] = LAYOUT_reviung34( + [_RAISE] = LAYOUT_2x1u_left( 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, _______, KC_DEL, _______, _______ ), - [_ADJUST] = LAYOUT_reviung34( + [_ADJUST] = LAYOUT_2x1u_left( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c b/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c index cc567d6b696..5ad92caf3ac 100755 --- a/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c @@ -34,28 +34,28 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_reviung34_2u( + [_BASE] = LAYOUT_1x2u_left( CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, LOWER, KC_SPC, RAISE ), - [_LOWER] = LAYOUT_reviung34_2u( + [_LOWER] = LAYOUT_1x2u_left( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, _______, _______, _______ ), - [_RAISE] = LAYOUT_reviung34_2u( + [_RAISE] = LAYOUT_1x2u_left( 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, _______, _______, _______ ), - [_ADJUST] = LAYOUT_reviung34_2u( + [_ADJUST] = LAYOUT_1x2u_left( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, diff --git a/keyboards/reviung/reviung34/keymaps/via/keymap.c b/keyboards/reviung/reviung34/keymaps/via/keymap.c index 004518b4646..3dd7f73e731 100644 --- a/keyboards/reviung/reviung34/keymaps/via/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/via/keymap.c @@ -35,28 +35,28 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_reviung34( + [_BASE] = LAYOUT_2x1u_left( CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, KC_TAB, KC_BSPC, LOWER, RA_SP ), - [_LOWER] = LAYOUT_reviung34( + [_LOWER] = LAYOUT_2x1u_left( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, _______, _______, _______, _______ ), - [_RAISE] = LAYOUT_reviung34( + [_RAISE] = LAYOUT_2x1u_left( 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, _______, _______, _______, _______ ), - [_ADJUST] = LAYOUT_reviung34( + [_ADJUST] = LAYOUT_2x1u_left( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, From 03e688e91f28d73416ada41c6db209c04d18cba7 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Mon, 24 Jun 2024 12:29:30 +1000 Subject: [PATCH 133/519] Add support for userspace to docker build commands. (#23988) --- lib/python/qmk/cli/__init__.py | 1 + lib/python/qmk/cli/userspace/path.py | 8 +++ lib/python/qmk/tests/test_cli_commands.py | 2 +- util/docker_build.sh | 84 +---------------------- util/docker_cmd.sh | 30 ++++++-- 5 files changed, 35 insertions(+), 90 deletions(-) create mode 100755 lib/python/qmk/cli/userspace/path.py diff --git a/lib/python/qmk/cli/__init__.py b/lib/python/qmk/cli/__init__.py index 6d05a5fc21c..b504aa5f8c6 100644 --- a/lib/python/qmk/cli/__init__.py +++ b/lib/python/qmk/cli/__init__.py @@ -86,6 +86,7 @@ subcommands = [ 'qmk.cli.userspace.compile', 'qmk.cli.userspace.doctor', 'qmk.cli.userspace.list', + 'qmk.cli.userspace.path', 'qmk.cli.userspace.remove', 'qmk.cli.via2json', ] diff --git a/lib/python/qmk/cli/userspace/path.py b/lib/python/qmk/cli/userspace/path.py new file mode 100755 index 00000000000..df4648e8c7d --- /dev/null +++ b/lib/python/qmk/cli/userspace/path.py @@ -0,0 +1,8 @@ +from milc import cli +from qmk.constants import QMK_USERSPACE + + +@cli.subcommand('Detected path to QMK Userspace.', hidden=True) +def userspace_path(cli): + print(QMK_USERSPACE) + return diff --git a/lib/python/qmk/tests/test_cli_commands.py b/lib/python/qmk/tests/test_cli_commands.py index 1725e3ea792..8b50d1c340d 100644 --- a/lib/python/qmk/tests/test_cli_commands.py +++ b/lib/python/qmk/tests/test_cli_commands.py @@ -249,7 +249,7 @@ def test_c2json_nocpp_stdin(): def test_clean(): result = check_subcommand('clean', '-a') check_returncode(result) - assert result.stdout.count('done') == 2 + assert (result.stdout.count('done') == 2 and 'userspace' not in result.stdout) or (result.stdout.count('done') == 3 and 'userspace' in result.stdout) def test_generate_api(): diff --git a/util/docker_build.sh b/util/docker_build.sh index 828b5751af5..2234fc96f67 100755 --- a/util/docker_build.sh +++ b/util/docker_build.sh @@ -1,85 +1,3 @@ #!/bin/sh -# NOTE: This script uses tabs for indentation -errcho() { - echo "$@" >&2 -} - -USAGE="Usage: $0 [keyboard[:keymap[:target]]]" - -# Check preconditions -for arg; do - if [ "$arg" = "--help" ]; then - echo "$USAGE" - exit 0 - fi -done -if [ $# -gt 1 ]; then - errcho "$USAGE" - exit 1 -fi - -# Allow $RUNTIME to be overridden by the user as an environment variable -# Else check if either podman or docker exit and set them as runtime -# if none are found error out -if [ -z "$RUNTIME" ]; then - if command -v podman >/dev/null 2>&1; then - RUNTIME="podman" - elif command -v docker >/dev/null 2>&1; then - RUNTIME="docker" - else - errcho "Error: no compatible container runtime found." - errcho "Either podman or docker are required." - errcho "See https://podman.io/getting-started/installation" - errcho "or https://docs.docker.com/install/#supported-platforms" - errcho "for installation instructions." - exit 2 - fi -fi - - -# Determine arguments -if [ $# -eq 0 ]; then - printf "keyboard=" && read -r keyboard - [ -n "$keyboard" ] && printf "keymap=" && read -r keymap - [ -n "$keymap" ] && printf "target=" && read -r target -else - IFS=':' read -r keyboard keymap target x <<-EOF - $1 - EOF - if [ -n "$x" ]; then - errcho "$USAGE" - exit 1 - fi -fi -if [ -z "$keyboard" ]; then - keyboard=all -fi -if [ -n "$target" ]; then - # IF we are using docker on non Linux and docker-machine isn't working print an error - # ELSE set usb_args - if [ ! "$(uname)" = "Linux" ] && [ "$RUNTIME" = "docker" ] && ! docker-machine active >/dev/null 2>&1; then - errcho "Error: target requires docker-machine to work on your platform" - errcho "See http://gw.tnode.com/docker/docker-machine-with-usb-support-on-windows-macos" - errcho "Consider flashing with QMK Toolbox (https://github.com/qmk/qmk_toolbox) instead" - exit 3 - else - usb_args="--privileged -v /dev:/dev" - fi -fi -dir=$(pwd -W 2>/dev/null) || dir=$PWD # Use Windows path if on Windows - -if [ "$RUNTIME" = "docker" ]; then - uid_arg="--user $(id -u):$(id -g)" -fi - -# Run container and build firmware -"$RUNTIME" run --rm -it $usb_args \ - $uid_arg \ - -w /qmk_firmware \ - -v "$dir":/qmk_firmware \ - -e ALT_GET_KEYBOARDS=true \ - -e SKIP_GIT="$SKIP_GIT" \ - -e MAKEFLAGS="$MAKEFLAGS" \ - ghcr.io/qmk/qmk_cli \ - make "$keyboard${keymap:+:$keymap}${target:+:$target}" +./util/docker_cmd.sh make "$@" diff --git a/util/docker_cmd.sh b/util/docker_cmd.sh index 4a82890603b..18725db0689 100755 --- a/util/docker_cmd.sh +++ b/util/docker_cmd.sh @@ -1,4 +1,5 @@ #!/bin/sh +# vim: set ft=sh ts=4 sw=4 noexpandtab # NOTE: This script uses tabs for indentation errcho() { @@ -37,13 +38,26 @@ fi # IF we are using docker on non Linux and docker-machine isn't working print an error # ELSE set usb_args if [ ! "$(uname)" = "Linux" ] && [ "$RUNTIME" = "docker" ] && ! docker-machine active >/dev/null 2>&1; then - errcho "Error: target requires docker-machine to work on your platform" - errcho "See http://gw.tnode.com/docker/docker-machine-with-usb-support-on-windows-macos" - exit 3 + errcho "Error: target requires docker-machine to work on your platform" + errcho "See http://gw.tnode.com/docker/docker-machine-with-usb-support-on-windows-macos" + exit 3 else - usb_args="--privileged -v /dev:/dev" + usb_args="--privileged -v /dev:/dev" +fi + +qmk_firmware_dir=$(pwd -W 2>/dev/null) || qmk_firmware_dir=$PWD # Use Windows path if on Windows +qmk_userspace_dir="" +userspace_docker_args="" + +if [ -n "$QMK_USERSPACE" ] && [ -e "$QMK_USERSPACE/qmk.json" ]; then + qmk_userspace_dir=$(cd "$QMK_USERSPACE" && pwd -W 2>/dev/null) || qmk_userspace_dir=$QMK_USERSPACE # Use Windows path if on Windows +elif [ -n "$(which qmk 2>/dev/null)" ] && [ -n "$(qmk userspace-path)" ]; then + qmk_userspace_dir=$(cd "$(qmk userspace-path)" && pwd -W 2>/dev/null) || qmk_userspace_dir=$(qmk userspace-path) # Use Windows path if on Windows +fi + +if [ -n "$qmk_userspace_dir" ]; then + userspace_docker_args="-v $qmk_userspace_dir:/qmk_userspace:z -e QMK_USERSPACE=/qmk_userspace" fi -dir=$(pwd -W 2>/dev/null) || dir=$PWD # Use Windows path if on Windows if [ "$RUNTIME" = "docker" ]; then uid_arg="--user $(id -u):$(id -g)" @@ -54,6 +68,10 @@ fi $usb_args \ $uid_arg \ -w /qmk_firmware \ - -v "$dir":/qmk_firmware \ + -v "$qmk_firmware_dir":/qmk_firmware:z \ + $userspace_docker_args \ + -e SKIP_GIT="$SKIP_GIT" \ + -e SKIP_VERSION="$SKIP_VERSION" \ + -e MAKEFLAGS="$MAKEFLAGS" \ ghcr.io/qmk/qmk_cli \ "$@" From 378dbd32bdb362befabd63a481cae67d978a4568 Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 24 Jun 2024 18:19:48 +1000 Subject: [PATCH 134/519] `custommk/ergostrafer_rgb`: move to keyboard.json (#23990) --- .../custommk/ergostrafer_rgb/{info.json => keyboard.json} | 3 +++ keyboards/custommk/ergostrafer_rgb/rules.mk | 1 - 2 files changed, 3 insertions(+), 1 deletion(-) rename keyboards/custommk/ergostrafer_rgb/{info.json => keyboard.json} (99%) delete mode 100644 keyboards/custommk/ergostrafer_rgb/rules.mk diff --git a/keyboards/custommk/ergostrafer_rgb/info.json b/keyboards/custommk/ergostrafer_rgb/keyboard.json similarity index 99% rename from keyboards/custommk/ergostrafer_rgb/info.json rename to keyboards/custommk/ergostrafer_rgb/keyboard.json index ac058be1a40..a0b0645e987 100644 --- a/keyboards/custommk/ergostrafer_rgb/info.json +++ b/keyboards/custommk/ergostrafer_rgb/keyboard.json @@ -4,6 +4,9 @@ "maintainer": "customMK", "bootloader": "stm32-dfu", "diode_direction": "ROW2COL", + "audio": { + "driver": "pwm_hardware" + }, "dynamic_keymap": { "layer_count": 32 }, diff --git a/keyboards/custommk/ergostrafer_rgb/rules.mk b/keyboards/custommk/ergostrafer_rgb/rules.mk deleted file mode 100644 index 72f75f4367e..00000000000 --- a/keyboards/custommk/ergostrafer_rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -AUDIO_DRIVER = pwm_hardware From a2176f6a039b5f92ba4cb473f7a2de560b57dd86 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 25 Jun 2024 03:25:05 +0100 Subject: [PATCH 135/519] Migrate `led_update_kb` implementations to DD (#23985) --- keyboards/bear_face/info.json | 3 ++ keyboards/bear_face/v1/v1.c | 34 ---------------- keyboards/bear_face/v2/v2.c | 34 ---------------- keyboards/dztech/bocc/bocc.c | 29 -------------- keyboards/dztech/bocc/keyboard.json | 4 ++ keyboards/evyd13/gh80_3700/gh80_3700.c | 14 ++----- keyboards/evyd13/gh80_3700/keyboard.json | 4 ++ keyboards/exclusive/e85/hotswap/hotswap.c | 32 --------------- keyboards/exclusive/e85/hotswap/keyboard.json | 4 ++ keyboards/fjlabs/bolsa65/bolsa65.c | 28 ------------- keyboards/fjlabs/bolsa65/keyboard.json | 3 ++ keyboards/flx/virgo/keyboard.json | 5 +++ keyboards/flx/virgo/virgo.c | 34 ---------------- keyboards/handwired/colorlice/colorlice.c | 15 ------- keyboards/handwired/colorlice/keyboard.json | 6 +++ keyboards/handwired/evk/v1_3/v1_3.c | 9 ----- keyboards/handwired/retro_refit/keyboard.json | 6 +++ keyboards/handwired/retro_refit/retro_refit.c | 12 ------ keyboards/handwired/selene/keyboard.json | 5 +++ keyboards/handwired/selene/selene.c | 18 +-------- keyboards/handwired/selene/selene.h | 23 ----------- keyboards/handwired/z150/config.h | 38 ------------------ keyboards/handwired/z150/keyboard.json | 6 +++ keyboards/handwired/z150/z150.c | 39 ------------------- keyboards/kabedon/kabedon980/kabedon980.c | 8 ---- keyboards/kabedon/kabedon980/keyboard.json | 4 ++ keyboards/noxary/x268/keyboard.json | 3 ++ keyboards/noxary/x268/x268.c | 34 ---------------- keyboards/punk75/config.h | 20 ---------- keyboards/punk75/keyboard.json | 4 ++ keyboards/punk75/keymaps/default/keymap.c | 2 +- keyboards/punk75/keymaps/via/keymap.c | 2 +- keyboards/punk75/punk75.c | 32 --------------- keyboards/redscarf_i/keyboard.json | 4 ++ keyboards/redscarf_i/redscarf_i.c | 10 +---- keyboards/sneakbox/aliceclone/aliceclone.c | 36 ----------------- keyboards/sneakbox/aliceclone/keyboard.json | 5 +++ .../yiancardesigns/barleycorn/barleycorn.c | 37 ------------------ .../yiancardesigns/barleycorn/keyboard.json | 4 ++ 39 files changed, 77 insertions(+), 533 deletions(-) delete mode 100644 keyboards/bear_face/v1/v1.c delete mode 100644 keyboards/bear_face/v2/v2.c delete mode 100644 keyboards/dztech/bocc/bocc.c delete mode 100644 keyboards/exclusive/e85/hotswap/hotswap.c delete mode 100644 keyboards/fjlabs/bolsa65/bolsa65.c delete mode 100644 keyboards/flx/virgo/virgo.c delete mode 100644 keyboards/handwired/selene/selene.h delete mode 100644 keyboards/handwired/z150/config.h delete mode 100644 keyboards/handwired/z150/z150.c delete mode 100644 keyboards/kabedon/kabedon980/kabedon980.c delete mode 100644 keyboards/noxary/x268/x268.c delete mode 100644 keyboards/punk75/config.h delete mode 100644 keyboards/punk75/punk75.c delete mode 100644 keyboards/sneakbox/aliceclone/aliceclone.c delete mode 100644 keyboards/yiancardesigns/barleycorn/barleycorn.c diff --git a/keyboards/bear_face/info.json b/keyboards/bear_face/info.json index ad12468d56f..ad5b1dd7d9d 100644 --- a/keyboards/bear_face/info.json +++ b/keyboards/bear_face/info.json @@ -24,6 +24,9 @@ "resync": true } }, + "indicators": { + "caps_lock": "F7" + }, "matrix_pins": { "cols": ["B5", "C7", "C6", "F0", "E6", "B7", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4"], "rows": ["F5", "F6", "F4", "F1", "B0", "B6"] diff --git a/keyboards/bear_face/v1/v1.c b/keyboards/bear_face/v1/v1.c deleted file mode 100644 index b64a63f0b43..00000000000 --- a/keyboards/bear_face/v1/v1.c +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2020 chemicalwill - -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 . -*/ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - //Sets LED pin as output - gpio_set_pin_output(F7); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - // Caps Lock LED indicator toggling code here - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(F7, led_state.caps_lock); - } - return res; -} diff --git a/keyboards/bear_face/v2/v2.c b/keyboards/bear_face/v2/v2.c deleted file mode 100644 index b64a63f0b43..00000000000 --- a/keyboards/bear_face/v2/v2.c +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2020 chemicalwill - -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 . -*/ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - //Sets LED pin as output - gpio_set_pin_output(F7); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - // Caps Lock LED indicator toggling code here - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(F7, led_state.caps_lock); - } - return res; -} diff --git a/keyboards/dztech/bocc/bocc.c b/keyboards/dztech/bocc/bocc.c deleted file mode 100644 index 646a7861f83..00000000000 --- a/keyboards/dztech/bocc/bocc.c +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 dztech - * - * 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 . - */ -#include "quantum.h" - -void matrix_init_kb(void) { - gpio_set_pin_output(E6); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(E6, !led_state.caps_lock); - } - return res; -} diff --git a/keyboards/dztech/bocc/keyboard.json b/keyboards/dztech/bocc/keyboard.json index 7e40fde49cb..a6208b2bf7c 100644 --- a/keyboards/dztech/bocc/keyboard.json +++ b/keyboards/dztech/bocc/keyboard.json @@ -33,6 +33,10 @@ "pin": "B7", "levels": 5 }, + "indicators": { + "caps_lock": "E6", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/evyd13/gh80_3700/gh80_3700.c b/keyboards/evyd13/gh80_3700/gh80_3700.c index 6d903e48e1c..8c4c81fe643 100644 --- a/keyboards/evyd13/gh80_3700/gh80_3700.c +++ b/keyboards/evyd13/gh80_3700/gh80_3700.c @@ -15,24 +15,16 @@ */ #include "quantum.h" -void led_init_ports(void) { - gpio_set_pin_output(E6); +void keyboard_pre_init_kb(void) { gpio_set_pin_output(B1); gpio_set_pin_output(D0); gpio_set_pin_output(D1); gpio_set_pin_output(F0); - gpio_write_pin_high(E6); gpio_write_pin_high(B1); gpio_write_pin_high(D0); gpio_write_pin_high(D1); gpio_write_pin_high(F0); + + keyboard_pre_init_user(); } - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(E6, !led_state.num_lock); - } - - return true; -} \ No newline at end of file diff --git a/keyboards/evyd13/gh80_3700/keyboard.json b/keyboards/evyd13/gh80_3700/keyboard.json index fa11a482df0..a647f461188 100644 --- a/keyboards/evyd13/gh80_3700/keyboard.json +++ b/keyboards/evyd13/gh80_3700/keyboard.json @@ -23,6 +23,10 @@ "resync": true } }, + "indicators": { + "num_lock": "E6", + "on_state": 0 + }, "matrix_pins": { "cols": ["B0", "D7", "D6", "D4"], "rows": ["B3", "C7", "C6", "B6", "B5", "B4"] diff --git a/keyboards/exclusive/e85/hotswap/hotswap.c b/keyboards/exclusive/e85/hotswap/hotswap.c deleted file mode 100644 index 18ca30b44cd..00000000000 --- a/keyboards/exclusive/e85/hotswap/hotswap.c +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright 2020 MechMerlin - * - * 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 . - */ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(C7); - gpio_set_pin_output(B5); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(C7, led_state.caps_lock); - gpio_write_pin(B5, led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/exclusive/e85/hotswap/keyboard.json b/keyboards/exclusive/e85/hotswap/keyboard.json index 4bd8e738829..7fcd61c8433 100644 --- a/keyboards/exclusive/e85/hotswap/keyboard.json +++ b/keyboards/exclusive/e85/hotswap/keyboard.json @@ -18,6 +18,10 @@ "levels": 6, "breathing": true }, + "indicators": { + "caps_lock": "C7", + "scroll_lock": "B5" + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/fjlabs/bolsa65/bolsa65.c b/keyboards/fjlabs/bolsa65/bolsa65.c deleted file mode 100644 index 669404192c0..00000000000 --- a/keyboards/fjlabs/bolsa65/bolsa65.c +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2020 -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 . -*/ -#include "quantum.h" - -void matrix_init_kb(void) { - // Initialize indicator LEDs to output - gpio_set_pin_output(F7); // Caps - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(F7, led_state.caps_lock); - } - return res; -} diff --git a/keyboards/fjlabs/bolsa65/keyboard.json b/keyboards/fjlabs/bolsa65/keyboard.json index dfa47e90bb5..63281ae9f6d 100644 --- a/keyboards/fjlabs/bolsa65/keyboard.json +++ b/keyboards/fjlabs/bolsa65/keyboard.json @@ -8,6 +8,9 @@ "pid": "0x0001", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "F7" + }, "matrix_pins": { "cols": ["C7", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5"], "rows": ["F1", "F0", "F6", "F5", "F4"] diff --git a/keyboards/flx/virgo/keyboard.json b/keyboards/flx/virgo/keyboard.json index 8396ce51daa..996425282d7 100644 --- a/keyboards/flx/virgo/keyboard.json +++ b/keyboards/flx/virgo/keyboard.json @@ -30,6 +30,11 @@ "pin": "B7", "levels": 5 }, + "indicators": { + "caps_lock": "E6", + "scroll_lock": "B2", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/flx/virgo/virgo.c b/keyboards/flx/virgo/virgo.c deleted file mode 100644 index 2f875531d0f..00000000000 --- a/keyboards/flx/virgo/virgo.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright 2019 MechMerlin - * Edits etc 2020 Flexerm - * - * 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 . - */ -#include "quantum.h" - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - - gpio_set_pin_output(E6); - gpio_set_pin_output(B2); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(E6, !led_state.caps_lock); - gpio_write_pin(B2, !led_state.scroll_lock); - } - return true; -} diff --git a/keyboards/handwired/colorlice/colorlice.c b/keyboards/handwired/colorlice/colorlice.c index ede3fba82fb..92914b79bc6 100644 --- a/keyboards/handwired/colorlice/colorlice.c +++ b/keyboards/handwired/colorlice/colorlice.c @@ -51,18 +51,3 @@ void suspend_wakeup_init_kb(void) suspend_wakeup_init_user(); } #endif - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - // In this example the pins are inverted, setting - // it low/0 turns it on, and high/1 turns the LED off. - // This behavior depends on whether the LED is between the pin - // and VCC or the pin and GND. - gpio_write_pin(B2, !led_state.num_lock); - gpio_write_pin(C6, !led_state.caps_lock); - gpio_write_pin(B7, !led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/handwired/colorlice/keyboard.json b/keyboards/handwired/colorlice/keyboard.json index 77f5ded0970..4ccc10527c1 100644 --- a/keyboards/handwired/colorlice/keyboard.json +++ b/keyboards/handwired/colorlice/keyboard.json @@ -65,6 +65,12 @@ "build": { "lto": true }, + "indicators": { + "caps_lock": "C6", + "num_lock": "B2", + "scroll_lock": "B7", + "on_state": 0 + }, "features": { "bootmagic": true, "command": false, diff --git a/keyboards/handwired/evk/v1_3/v1_3.c b/keyboards/handwired/evk/v1_3/v1_3.c index a568ba3f866..575bf337591 100644 --- a/keyboards/handwired/evk/v1_3/v1_3.c +++ b/keyboards/handwired/evk/v1_3/v1_3.c @@ -33,12 +33,3 @@ __attribute__((weak)) layer_state_t layer_state_set_user(layer_state_t state) { gpio_write_pin(D5, layer_state_cmp(state, 1)); return state; } - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - gpio_write_pin(D4, led_state.caps_lock); - } - return res; -} diff --git a/keyboards/handwired/retro_refit/keyboard.json b/keyboards/handwired/retro_refit/keyboard.json index 1e7812d578f..7acdb48b44d 100644 --- a/keyboards/handwired/retro_refit/keyboard.json +++ b/keyboards/handwired/retro_refit/keyboard.json @@ -23,6 +23,12 @@ "resync": true } }, + "indicators": { + "caps_lock": "D0", + "num_lock": "D1", + "scroll_lock": "C6", + "on_state": 0 + }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "D2", "D3", "C7", "D5"], "rows": ["D4", "D7", "B4", "B5", "B6", "F7", "F6", "F5", "F4", "F1", "F0"] diff --git a/keyboards/handwired/retro_refit/retro_refit.c b/keyboards/handwired/retro_refit/retro_refit.c index b62d94d7418..08e8e1d528e 100644 --- a/keyboards/handwired/retro_refit/retro_refit.c +++ b/keyboards/handwired/retro_refit/retro_refit.c @@ -1,5 +1,4 @@ #include "quantum.h" -#include "led.h" void matrix_init_kb(void) { // put your keyboard start-up code here @@ -11,14 +10,3 @@ void matrix_init_kb(void) { matrix_init_user(); }; - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(D0, !led_state.caps_lock); - gpio_write_pin(D1, !led_state.num_lock); - gpio_write_pin(C6, !led_state.scroll_lock); - - } - return res; -} \ No newline at end of file diff --git a/keyboards/handwired/selene/keyboard.json b/keyboards/handwired/selene/keyboard.json index 592b51aaf40..34eec11664e 100644 --- a/keyboards/handwired/selene/keyboard.json +++ b/keyboards/handwired/selene/keyboard.json @@ -8,6 +8,11 @@ "pid": "0x0001", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "A2", + "num_lock": "A0", + "scroll_lock": "A1" + }, "rgblight": { "led_count": 50 }, diff --git a/keyboards/handwired/selene/selene.c b/keyboards/handwired/selene/selene.c index b0924c06f49..3d0ef667cf1 100644 --- a/keyboards/handwired/selene/selene.c +++ b/keyboards/handwired/selene/selene.c @@ -15,24 +15,8 @@ */ -#include "selene.h" - -void matrix_init_kb(void){ - gpio_set_pin_output(NUM_LOCK_PIN); - gpio_set_pin_output(CAPS_LOCK_PIN); - gpio_set_pin_output(SCROLL_LOCK_PIN); -} +#include "quantum.h" void keyboard_post_init_user(void) { rgblight_setrgb(0xff, 0xff, 0xff); } - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(NUM_LOCK_PIN, led_state.num_lock); - gpio_write_pin(CAPS_LOCK_PIN, led_state.caps_lock); - gpio_write_pin(SCROLL_LOCK_PIN, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/handwired/selene/selene.h b/keyboards/handwired/selene/selene.h deleted file mode 100644 index bcd4215e366..00000000000 --- a/keyboards/handwired/selene/selene.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Bpendragon - * - * 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 . - */ - -#pragma once - -#include "quantum.h" - -#define NUM_LOCK_PIN A0 -#define CAPS_LOCK_PIN A2 -#define SCROLL_LOCK_PIN A1 diff --git a/keyboards/handwired/z150/config.h b/keyboards/handwired/z150/config.h deleted file mode 100644 index 7a054266ea4..00000000000 --- a/keyboards/handwired/z150/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2020 DmNosachev - -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 . -*/ - -#pragma once - -#define NUM_LOCK_LED_PIN B5 -#define SCROLL_LOCK_LED_PIN B4 -#define CAPS_LOCK_LED_PIN B3 - -/* - * 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 diff --git a/keyboards/handwired/z150/keyboard.json b/keyboards/handwired/z150/keyboard.json index 0658bb52339..38c92a6537d 100644 --- a/keyboards/handwired/z150/keyboard.json +++ b/keyboards/handwired/z150/keyboard.json @@ -16,6 +16,12 @@ "mousekey": true, "nkro": false }, + "indicators": { + "caps_lock": "B3", + "num_lock": "B5", + "scroll_lock": "B4", + "on_state": 0 + }, "matrix_pins": { "cols": ["B11", "B10", "B1", "B0", "A7", "A6", "A5", "A4"], "rows": ["B13", "B14", "B15", "A8", "A9", "A3", "A10", "A1", "A2", "A15", "A0"] diff --git a/keyboards/handwired/z150/z150.c b/keyboards/handwired/z150/z150.c deleted file mode 100644 index ab6709eed75..00000000000 --- a/keyboards/handwired/z150/z150.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2020 DmNosachev - * - * 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 . - */ - -#include "quantum.h" - -void matrix_init_kb(void) { - gpio_set_pin_output(NUM_LOCK_LED_PIN); - gpio_set_pin_output(CAPS_LOCK_LED_PIN); - gpio_set_pin_output(SCROLL_LOCK_LED_PIN); - - gpio_write_pin_low(NUM_LOCK_LED_PIN); - gpio_write_pin_low(CAPS_LOCK_LED_PIN); - gpio_write_pin_low(SCROLL_LOCK_LED_PIN); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(NUM_LOCK_LED_PIN, !led_state.num_lock); - gpio_write_pin(CAPS_LOCK_LED_PIN, !led_state.caps_lock); - gpio_write_pin(SCROLL_LOCK_LED_PIN, !led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/kabedon/kabedon980/kabedon980.c b/keyboards/kabedon/kabedon980/kabedon980.c deleted file mode 100644 index 7024a2eaa99..00000000000 --- a/keyboards/kabedon/kabedon980/kabedon980.c +++ /dev/null @@ -1,8 +0,0 @@ -#include "quantum.h" - - bool led_update_kb(led_t led_state) { - if (led_update_user(led_state)) { - gpio_write_pin(E6, !led_state.caps_lock); - } - return true; -} diff --git a/keyboards/kabedon/kabedon980/keyboard.json b/keyboards/kabedon/kabedon980/keyboard.json index cf9def2b8fe..b8e100ceac0 100644 --- a/keyboards/kabedon/kabedon980/keyboard.json +++ b/keyboards/kabedon/kabedon980/keyboard.json @@ -8,6 +8,10 @@ "pid": "0x3938", "device_version": "0.0.1" }, + "indicators": { + "caps_lock": "E6", + "on_state": 0 + }, "rgblight": { "saturation_steps": 8, "brightness_steps": 8, diff --git a/keyboards/noxary/x268/keyboard.json b/keyboards/noxary/x268/keyboard.json index f5a991deff5..7ca5799de24 100644 --- a/keyboards/noxary/x268/keyboard.json +++ b/keyboards/noxary/x268/keyboard.json @@ -32,6 +32,9 @@ "backlight": { "pin": "B7" }, + "indicators": { + "caps_lock": "B0" + }, "rgblight": { "hue_steps": 16, "saturation_steps": 16, diff --git a/keyboards/noxary/x268/x268.c b/keyboards/noxary/x268/x268.c deleted file mode 100644 index 67d6dff89df..00000000000 --- a/keyboards/noxary/x268/x268.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright 2020 Rozakiin - * - * 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 . - */ -#include "quantum.h" - -// Optional override functions below. -// You can leave any or all of these undefined. -// These are only required if you want to perform custom actions. - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - gpio_set_pin_output(B0); - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - if(led_update_user(led_state)) { - gpio_write_pin(B0, led_state.caps_lock); - } - return true; -} diff --git a/keyboards/punk75/config.h b/keyboards/punk75/config.h deleted file mode 100644 index 321865330c7..00000000000 --- a/keyboards/punk75/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2020 dsanchezseco - -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 . -*/ - -#pragma once - -#define LED A0 diff --git a/keyboards/punk75/keyboard.json b/keyboards/punk75/keyboard.json index dd084a147c4..c7082e564fb 100644 --- a/keyboards/punk75/keyboard.json +++ b/keyboards/punk75/keyboard.json @@ -32,6 +32,10 @@ {"pin_a": "B1", "pin_b": "B0"} ] }, + "indicators": { + "caps_lock": "A0", + "on_state": 0 + }, "processor": "atmega32a", "bootloader": "usbasploader", "community_layouts": ["ortho_5x15"], diff --git a/keyboards/punk75/keymaps/default/keymap.c b/keyboards/punk75/keymaps/default/keymap.c index 9a6ef29307e..57f00e1e615 100644 --- a/keyboards/punk75/keymaps/default/keymap.c +++ b/keyboards/punk75/keymaps/default/keymap.c @@ -74,7 +74,7 @@ void led_keypress_update(pin_t led_pin, uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) { // Update LED state - led_keypress_update(LED, keycode, record); + led_keypress_update(LED_CAPS_LOCK_PIN, keycode, record); return true; } diff --git a/keyboards/punk75/keymaps/via/keymap.c b/keyboards/punk75/keymaps/via/keymap.c index 72ef91fd370..214135b55de 100644 --- a/keyboards/punk75/keymaps/via/keymap.c +++ b/keyboards/punk75/keymaps/via/keymap.c @@ -69,7 +69,7 @@ void led_keypress_update(pin_t led_pin, uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) { // Update LED state - led_keypress_update(LED, keycode, record); + led_keypress_update(LED_CAPS_LOCK_PIN, keycode, record); return true; } diff --git a/keyboards/punk75/punk75.c b/keyboards/punk75/punk75.c deleted file mode 100644 index 8d9d09d43c4..00000000000 --- a/keyboards/punk75/punk75.c +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright 2020 dsanchezseco - * - * 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 . - */ - -#include "quantum.h" - -void matrix_init_kb(void) { - // Set our LED pin as output - gpio_set_pin_output(LED); - - matrix_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(LED, !led_state.caps_lock); - } - return res; -} diff --git a/keyboards/redscarf_i/keyboard.json b/keyboards/redscarf_i/keyboard.json index 0a268169ef1..6a186dff0bb 100644 --- a/keyboards/redscarf_i/keyboard.json +++ b/keyboards/redscarf_i/keyboard.json @@ -25,6 +25,10 @@ "backlight": { "pin": "B5" }, + "indicators": { + "num_lock": "F7", + "on_state": 0 + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "community_layouts": ["ortho_5x4", "ortho_6x4", "numpad_5x4", "numpad_6x4"], diff --git a/keyboards/redscarf_i/redscarf_i.c b/keyboards/redscarf_i/redscarf_i.c index 949bc362ad2..7544b89d176 100644 --- a/keyboards/redscarf_i/redscarf_i.c +++ b/keyboards/redscarf_i/redscarf_i.c @@ -18,21 +18,13 @@ void keyboard_pre_init_kb(void) { // initialize top row leds - gpio_set_pin_output(F7); gpio_set_pin_output(F6); gpio_set_pin_output(F5); // and then turn them off - gpio_write_pin_high(F7); gpio_write_pin_high(F6); gpio_write_pin_high(F5); -} -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(F7, !led_state.num_lock); - } - return res; + keyboard_pre_init_user(); } layer_state_t layer_state_set_kb(layer_state_t state) { diff --git a/keyboards/sneakbox/aliceclone/aliceclone.c b/keyboards/sneakbox/aliceclone/aliceclone.c deleted file mode 100644 index 74d19e515c1..00000000000 --- a/keyboards/sneakbox/aliceclone/aliceclone.c +++ /dev/null @@ -1,36 +0,0 @@ -/* -Copyright 2020 Bryan Ong - -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 . -*/ - -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - gpio_set_pin_output(D7); - gpio_set_pin_output(D6); - gpio_set_pin_output(D4); - - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - gpio_write_pin(D7, led_state.num_lock); - gpio_write_pin(D6, led_state.caps_lock); - gpio_write_pin(D4, led_state.scroll_lock); - } - return res; -} diff --git a/keyboards/sneakbox/aliceclone/keyboard.json b/keyboards/sneakbox/aliceclone/keyboard.json index 869b8bd20b6..bb0cd8e4b85 100644 --- a/keyboards/sneakbox/aliceclone/keyboard.json +++ b/keyboards/sneakbox/aliceclone/keyboard.json @@ -36,6 +36,11 @@ "bootmagic": { "matrix": [2, 0] }, + "indicators": { + "caps_lock": "D6", + "num_lock": "D7", + "scroll_lock": "D4" + }, "processor": "atmega32u4", "bootloader": "atmel-dfu", "community_layouts": ["alice", "alice_split_bs"], diff --git a/keyboards/yiancardesigns/barleycorn/barleycorn.c b/keyboards/yiancardesigns/barleycorn/barleycorn.c deleted file mode 100644 index c73c1559c20..00000000000 --- a/keyboards/yiancardesigns/barleycorn/barleycorn.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2020 Yiancar - * - * 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 . - */ -#include "quantum.h" - -void keyboard_pre_init_kb(void) { - // Set our LED pins as output - gpio_set_pin_output(B5); - gpio_set_pin_output(C0); - keyboard_pre_init_user(); -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if(res) { - // gpio_write_pin sets the pin high for 1 and low for 0. - // In this example the pins are inverted, setting - // it low/0 turns it on, and high/1 turns the LED off. - // This behavior depends on whether the LED is between the pin - // and VCC or the pin and GND. - gpio_write_pin(B5, led_state.caps_lock); - gpio_write_pin(C0, led_state.num_lock); - } - return res; -} diff --git a/keyboards/yiancardesigns/barleycorn/keyboard.json b/keyboards/yiancardesigns/barleycorn/keyboard.json index a1676840a55..cf041b96c57 100644 --- a/keyboards/yiancardesigns/barleycorn/keyboard.json +++ b/keyboards/yiancardesigns/barleycorn/keyboard.json @@ -19,6 +19,10 @@ "resync": true } }, + "indicators": { + "caps_lock": "B5", + "num_lock": "C0" + }, "processor": "atmega328p", "bootloader": "usbasploader", "layouts": { From 0b572a1be60b3e14c4a3b9e69637022861f20935 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 25 Jun 2024 07:38:56 +0100 Subject: [PATCH 136/519] Remove some redundant 'blank' files (#23995) --- keyboards/4pplet/yakiimo/rev_a/config.h | 0 keyboards/kinesis/stapelberg/config.h | 11 ----------- keyboards/mechstudio/chapter1/rules.mk | 1 - 3 files changed, 12 deletions(-) delete mode 100644 keyboards/4pplet/yakiimo/rev_a/config.h delete mode 100644 keyboards/kinesis/stapelberg/config.h delete mode 100644 keyboards/mechstudio/chapter1/rules.mk diff --git a/keyboards/4pplet/yakiimo/rev_a/config.h b/keyboards/4pplet/yakiimo/rev_a/config.h deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/keyboards/kinesis/stapelberg/config.h b/keyboards/kinesis/stapelberg/config.h deleted file mode 100644 index c0c78135ba1..00000000000 --- a/keyboards/kinesis/stapelberg/config.h +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright 2023 QMK -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* don't know if this should be defined at the board or top level. Assuming board -#define MOUSEKEY_DELAY 100 -#define MOUSEKEY_INTERVAL 20 -#define MOUSEKEY_MAX_SPEED 3 -#define MOUSEKEY_TIME_TO_MAX 10 -*/ diff --git a/keyboards/mechstudio/chapter1/rules.mk b/keyboards/mechstudio/chapter1/rules.mk deleted file mode 100644 index 6e7633bfe01..00000000000 --- a/keyboards/mechstudio/chapter1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank From cebe521b11347453156765055b54d81de188f1aa Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 26 Jun 2024 02:34:24 +0100 Subject: [PATCH 137/519] Fix docker_cmd.sh when userspace is not configured (#23997) --- lib/python/qmk/cli/userspace/path.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/python/qmk/cli/userspace/path.py b/lib/python/qmk/cli/userspace/path.py index df4648e8c7d..d0c1b544fb7 100755 --- a/lib/python/qmk/cli/userspace/path.py +++ b/lib/python/qmk/cli/userspace/path.py @@ -4,5 +4,5 @@ from qmk.constants import QMK_USERSPACE @cli.subcommand('Detected path to QMK Userspace.', hidden=True) def userspace_path(cli): - print(QMK_USERSPACE) + print(QMK_USERSPACE or '') return From 17ae6f9b53a7b2c747d2897b8c177034bfd721a4 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 26 Jun 2024 13:47:36 +1000 Subject: [PATCH 138/519] `helix/pico` and `rev2`: add `keyboard.json`s (#23964) --- keyboards/helix/pico/back/keyboard.json | 1 + keyboards/helix/pico/base/keyboard.json | 1 + keyboards/helix/pico/qmk_conf/keyboard.json | 6 ++++++ keyboards/helix/pico/qmk_conf/rules.mk | 2 -- keyboards/helix/pico/rules.mk | 2 ++ keyboards/helix/pico/sc/keyboard.json | 1 + keyboards/helix/pico/under/keyboard.json | 1 + keyboards/helix/rev2/back/keyboard.json | 1 + keyboards/helix/rev2/base/keyboard.json | 1 + keyboards/helix/rev2/qmk_conf/keyboard.json | 1 + keyboards/helix/rev2/rules.mk | 2 ++ keyboards/helix/rev2/sc/keyboard.json | 1 + keyboards/helix/rev2/under/keyboard.json | 1 + keyboards/helix/rules.mk | 15 --------------- 14 files changed, 19 insertions(+), 17 deletions(-) create mode 100644 keyboards/helix/pico/back/keyboard.json create mode 100644 keyboards/helix/pico/base/keyboard.json create mode 100644 keyboards/helix/pico/qmk_conf/keyboard.json delete mode 100644 keyboards/helix/pico/qmk_conf/rules.mk create mode 100644 keyboards/helix/pico/sc/keyboard.json create mode 100644 keyboards/helix/pico/under/keyboard.json create mode 100644 keyboards/helix/rev2/back/keyboard.json create mode 100644 keyboards/helix/rev2/base/keyboard.json create mode 100644 keyboards/helix/rev2/qmk_conf/keyboard.json create mode 100644 keyboards/helix/rev2/sc/keyboard.json create mode 100644 keyboards/helix/rev2/under/keyboard.json diff --git a/keyboards/helix/pico/back/keyboard.json b/keyboards/helix/pico/back/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/helix/pico/back/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/helix/pico/base/keyboard.json b/keyboards/helix/pico/base/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/helix/pico/base/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/helix/pico/qmk_conf/keyboard.json b/keyboards/helix/pico/qmk_conf/keyboard.json new file mode 100644 index 00000000000..ddb72203421 --- /dev/null +++ b/keyboards/helix/pico/qmk_conf/keyboard.json @@ -0,0 +1,6 @@ +{ + "features": { + "audio": true, + "extrakey": true + } +} diff --git a/keyboards/helix/pico/qmk_conf/rules.mk b/keyboards/helix/pico/qmk_conf/rules.mk deleted file mode 100644 index 08ca8e094d9..00000000000 --- a/keyboards/helix/pico/qmk_conf/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -EXTRAKEY_ENABLE = yes # Audio control and System control -AUDIO_ENABLE = yes # Audio output diff --git a/keyboards/helix/pico/rules.mk b/keyboards/helix/pico/rules.mk index e18b8fb0c45..449df9caa64 100644 --- a/keyboards/helix/pico/rules.mk +++ b/keyboards/helix/pico/rules.mk @@ -3,3 +3,5 @@ LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) LED_ANIMATIONS = yes # LED animations IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) + +DEFAULT_FOLDER = helix/pico/base diff --git a/keyboards/helix/pico/sc/keyboard.json b/keyboards/helix/pico/sc/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/helix/pico/sc/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/helix/pico/under/keyboard.json b/keyboards/helix/pico/under/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/helix/pico/under/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/helix/rev2/back/keyboard.json b/keyboards/helix/rev2/back/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/helix/rev2/back/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/helix/rev2/base/keyboard.json b/keyboards/helix/rev2/base/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/helix/rev2/base/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/helix/rev2/qmk_conf/keyboard.json b/keyboards/helix/rev2/qmk_conf/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/helix/rev2/qmk_conf/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/helix/rev2/rules.mk b/keyboards/helix/rev2/rules.mk index e827ae111f1..4f830403f41 100644 --- a/keyboards/helix/rev2/rules.mk +++ b/keyboards/helix/rev2/rules.mk @@ -7,3 +7,5 @@ LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) LED_ANIMATIONS = yes # LED animations IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) + +DEFAULT_FOLDER = helix/rev2/base diff --git a/keyboards/helix/rev2/sc/keyboard.json b/keyboards/helix/rev2/sc/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/helix/rev2/sc/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/helix/rev2/under/keyboard.json b/keyboards/helix/rev2/under/keyboard.json new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/keyboards/helix/rev2/under/keyboard.json @@ -0,0 +1 @@ +{} diff --git a/keyboards/helix/rules.mk b/keyboards/helix/rules.mk index 8ea71064b2f..f743d48d0e9 100644 --- a/keyboards/helix/rules.mk +++ b/keyboards/helix/rules.mk @@ -1,18 +1,3 @@ -# Build Options -# change yes to no to disable -# -# See TOP/docs/config_options.md for more information. -# -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = no # Mouse keys -EXTRAKEY_ENABLE = no # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -AUDIO_ENABLE = no # Audio output -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. - DEFAULT_FOLDER = helix/rev2 HELIX_TOP_DIR := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST)))) From b71b81d539bde799dd8ea7713f3bed6963e25c32 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 26 Jun 2024 14:28:45 +1000 Subject: [PATCH 139/519] `hs60/v2/hhkb`: Adjust layout name (#23998) --- keyboards/hs60/v2/hhkb/keyboard.json | 5 ++++- keyboards/hs60/v2/hhkb/keymaps/default/keymap.c | 8 ++++---- keyboards/hs60/v2/hhkb/keymaps/via/keymap.c | 8 ++++---- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/keyboards/hs60/v2/hhkb/keyboard.json b/keyboards/hs60/v2/hhkb/keyboard.json index d9bc040e23c..9bd4d111c2c 100644 --- a/keyboards/hs60/v2/hhkb/keyboard.json +++ b/keyboards/hs60/v2/hhkb/keyboard.json @@ -22,8 +22,11 @@ "nkro": true }, "board": "QMK_PROTON_C", + "layout_aliases": { + "LAYOUT_60_hhkb": "LAYOUT_60_ansi_tsangan_split_bs_rshift" + }, "layouts": { - "LAYOUT_60_hhkb": { + "LAYOUT_60_ansi_tsangan_split_bs_rshift": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c b/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c index 4d3d7b8ac84..32cd0327beb 100644 --- a/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c +++ b/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c @@ -18,28 +18,28 @@ //This is the HHKB version of the PCB const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = LAYOUT_60_hhkb( /* Base */ +[0] = LAYOUT_60_ansi_tsangan_split_bs_rshift( /* Base */ 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_GRV, KC_BSLS, 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_LCTL, 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, MO(1), KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), -[1] = LAYOUT_60_hhkb( /* FN */ +[1] = LAYOUT_60_ansi_tsangan_split_bs_rshift( /* FN */ QK_BOOT, 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_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_UP, KC_TRNS, KC_DEL, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), -[2] = LAYOUT_60_hhkb( /* Empty for dynamic keymaps */ +[2] = LAYOUT_60_ansi_tsangan_split_bs_rshift( /* Empty for dynamic keymaps */ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), -[3] = LAYOUT_60_hhkb( /* Empty for dynamic keymaps */ +[3] = LAYOUT_60_ansi_tsangan_split_bs_rshift( /* Empty for dynamic keymaps */ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c b/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c index 4d3d7b8ac84..32cd0327beb 100644 --- a/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c +++ b/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c @@ -18,28 +18,28 @@ //This is the HHKB version of the PCB const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = LAYOUT_60_hhkb( /* Base */ +[0] = LAYOUT_60_ansi_tsangan_split_bs_rshift( /* Base */ 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_GRV, KC_BSLS, 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_LCTL, 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, MO(1), KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), -[1] = LAYOUT_60_hhkb( /* FN */ +[1] = LAYOUT_60_ansi_tsangan_split_bs_rshift( /* FN */ QK_BOOT, 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_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_UP, KC_TRNS, KC_DEL, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), -[2] = LAYOUT_60_hhkb( /* Empty for dynamic keymaps */ +[2] = LAYOUT_60_ansi_tsangan_split_bs_rshift( /* Empty for dynamic keymaps */ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), -[3] = LAYOUT_60_hhkb( /* Empty for dynamic keymaps */ +[3] = LAYOUT_60_ansi_tsangan_split_bs_rshift( /* Empty for dynamic keymaps */ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, From 5f794217b44722d86e70ce3de12a88d8a6bae0c7 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 26 Jun 2024 14:35:45 +1000 Subject: [PATCH 140/519] `xelus/snap96`: add matrix diagram and some additional layouts (#23992) --- keyboards/xelus/snap96/keyboard.json | 428 +++++++++++++++++++++++ keyboards/xelus/snap96/matrix_diagram.md | 27 ++ 2 files changed, 455 insertions(+) create mode 100644 keyboards/xelus/snap96/matrix_diagram.md diff --git a/keyboards/xelus/snap96/keyboard.json b/keyboards/xelus/snap96/keyboard.json index f9ce42dd15f..0be9968c5af 100644 --- a/keyboards/xelus/snap96/keyboard.json +++ b/keyboards/xelus/snap96/keyboard.json @@ -144,6 +144,434 @@ {"matrix": [11, 7], "x": 17, "y": 5}, {"matrix": [11, 8], "x": 18, "y": 5} ] + }, + "LAYOUT_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": [6, 0], "x": 10, "y": 0}, + {"matrix": [6, 1], "x": 11, "y": 0}, + {"matrix": [6, 2], "x": 12, "y": 0}, + {"matrix": [6, 3], "x": 13, "y": 0}, + {"matrix": [6, 4], "x": 14, "y": 0}, + {"matrix": [6, 5], "x": 15, "y": 0}, + {"matrix": [6, 6], "x": 16, "y": 0}, + {"matrix": [6, 7], "x": 17, "y": 0}, + {"matrix": [6, 8], "x": 18, "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": [7, 0], "x": 10, "y": 1}, + {"matrix": [7, 1], "x": 11, "y": 1}, + {"matrix": [7, 2], "x": 12, "y": 1}, + {"matrix": [7, 4], "x": 13, "y": 1, "w": 2}, + {"matrix": [7, 5], "x": 15, "y": 1}, + {"matrix": [7, 6], "x": 16, "y": 1}, + {"matrix": [7, 7], "x": 17, "y": 1}, + {"matrix": [7, 8], "x": 18, "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": [8, 0], "x": 10.5, "y": 2}, + {"matrix": [8, 1], "x": 11.5, "y": 2}, + {"matrix": [8, 2], "x": 12.5, "y": 2}, + {"matrix": [8, 4], "x": 13.5, "y": 2, "w": 1.5}, + {"matrix": [8, 5], "x": 15, "y": 2}, + {"matrix": [8, 6], "x": 16, "y": 2}, + {"matrix": [8, 7], "x": 17, "y": 2}, + {"matrix": [9, 8], "x": 18, "y": 2, "h": 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": [9, 0], "x": 10.75, "y": 3}, + {"matrix": [9, 1], "x": 11.75, "y": 3}, + {"matrix": [9, 3], "x": 12.75, "y": 3, "w": 2.25}, + {"matrix": [9, 5], "x": 15, "y": 3}, + {"matrix": [9, 6], "x": 16, "y": 3}, + {"matrix": [9, 7], "x": 17, "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": [10, 0], "x": 10.25, "y": 4}, + {"matrix": [10, 1], "x": 11.25, "y": 4}, + {"matrix": [10, 3], "x": 12.25, "y": 4, "w": 2.75}, + {"matrix": [10, 5], "x": 15, "y": 4}, + {"matrix": [10, 6], "x": 16, "y": 4}, + {"matrix": [10, 7], "x": 17, "y": 4}, + {"matrix": [11, 8], "x": 18, "y": 4, "h": 2}, + + {"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": [11, 0], "x": 10, "y": 5, "w": 1.25}, + {"matrix": [11, 1], "x": 11.25, "y": 5, "w": 1.25}, + {"matrix": [11, 3], "x": 12.5, "y": 5, "w": 1.25}, + {"matrix": [11, 4], "x": 13.75, "y": 5, "w": 1.25}, + {"matrix": [11, 5], "x": 15, "y": 5, "w": 2}, + {"matrix": [11, 7], "x": 17, "y": 5} + ] + }, + "LAYOUT_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": [6, 0], "x": 10, "y": 0}, + {"matrix": [6, 1], "x": 11, "y": 0}, + {"matrix": [6, 2], "x": 12, "y": 0}, + {"matrix": [6, 3], "x": 13, "y": 0}, + {"matrix": [6, 4], "x": 14, "y": 0}, + {"matrix": [6, 5], "x": 15, "y": 0}, + {"matrix": [6, 6], "x": 16, "y": 0}, + {"matrix": [6, 7], "x": 17, "y": 0}, + {"matrix": [6, 8], "x": 18, "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": [7, 0], "x": 10, "y": 1}, + {"matrix": [7, 1], "x": 11, "y": 1}, + {"matrix": [7, 2], "x": 12, "y": 1}, + {"matrix": [7, 3], "x": 13, "y": 1}, + {"matrix": [7, 4], "x": 14, "y": 1}, + {"matrix": [7, 5], "x": 15, "y": 1}, + {"matrix": [7, 6], "x": 16, "y": 1}, + {"matrix": [7, 7], "x": 17, "y": 1}, + {"matrix": [7, 8], "x": 18, "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": [8, 0], "x": 10.5, "y": 2}, + {"matrix": [8, 1], "x": 11.5, "y": 2}, + {"matrix": [8, 2], "x": 12.5, "y": 2}, + {"matrix": [8, 4], "x": 13.5, "y": 2, "w": 1.5}, + {"matrix": [8, 5], "x": 15, "y": 2}, + {"matrix": [8, 6], "x": 16, "y": 2}, + {"matrix": [8, 7], "x": 17, "y": 2}, + {"matrix": [9, 8], "x": 18, "y": 2, "h": 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": [9, 0], "x": 10.75, "y": 3}, + {"matrix": [9, 1], "x": 11.75, "y": 3}, + {"matrix": [9, 3], "x": 12.75, "y": 3, "w": 2.25}, + {"matrix": [9, 5], "x": 15, "y": 3}, + {"matrix": [9, 6], "x": 16, "y": 3}, + {"matrix": [9, 7], "x": 17, "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": [10, 0], "x": 10.25, "y": 4}, + {"matrix": [10, 1], "x": 11.25, "y": 4}, + {"matrix": [10, 3], "x": 12.25, "y": 4, "w": 2.75}, + {"matrix": [10, 5], "x": 15, "y": 4}, + {"matrix": [10, 6], "x": 16, "y": 4}, + {"matrix": [10, 7], "x": 17, "y": 4}, + {"matrix": [11, 8], "x": 18, "y": 4, "h": 2}, + + {"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": [11, 0], "x": 10, "y": 5, "w": 1.25}, + {"matrix": [11, 1], "x": 11.25, "y": 5, "w": 1.25}, + {"matrix": [11, 3], "x": 12.5, "y": 5, "w": 1.25}, + {"matrix": [11, 4], "x": 13.75, "y": 5, "w": 1.25}, + {"matrix": [11, 5], "x": 15, "y": 5, "w": 2}, + {"matrix": [11, 7], "x": 17, "y": 5} + ] + }, + "LAYOUT_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": [6, 0], "x": 10, "y": 0}, + {"matrix": [6, 1], "x": 11, "y": 0}, + {"matrix": [6, 2], "x": 12, "y": 0}, + {"matrix": [6, 3], "x": 13, "y": 0}, + {"matrix": [6, 4], "x": 14, "y": 0}, + {"matrix": [6, 5], "x": 15, "y": 0}, + {"matrix": [6, 6], "x": 16, "y": 0}, + {"matrix": [6, 7], "x": 17, "y": 0}, + {"matrix": [6, 8], "x": 18, "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": [7, 0], "x": 10, "y": 1}, + {"matrix": [7, 1], "x": 11, "y": 1}, + {"matrix": [7, 2], "x": 12, "y": 1}, + {"matrix": [7, 4], "x": 13, "y": 1, "w": 2}, + {"matrix": [7, 5], "x": 15, "y": 1}, + {"matrix": [7, 6], "x": 16, "y": 1}, + {"matrix": [7, 7], "x": 17, "y": 1}, + {"matrix": [7, 8], "x": 18, "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": [8, 0], "x": 10.5, "y": 2}, + {"matrix": [8, 1], "x": 11.5, "y": 2}, + {"matrix": [8, 2], "x": 12.5, "y": 2}, + {"matrix": [8, 5], "x": 15, "y": 2}, + {"matrix": [8, 6], "x": 16, "y": 2}, + {"matrix": [8, 7], "x": 17, "y": 2}, + {"matrix": [9, 8], "x": 18, "y": 2, "h": 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": [9, 0], "x": 10.75, "y": 3}, + {"matrix": [9, 1], "x": 11.75, "y": 3}, + {"matrix": [9, 3], "x": 12.75, "y": 3}, + {"matrix": [8, 4], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, + {"matrix": [9, 5], "x": 15, "y": 3}, + {"matrix": [9, 6], "x": 16, "y": 3}, + {"matrix": [9, 7], "x": 17, "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": [10, 0], "x": 10.25, "y": 4}, + {"matrix": [10, 1], "x": 11.25, "y": 4}, + {"matrix": [10, 3], "x": 12.25, "y": 4, "w": 2.75}, + {"matrix": [10, 5], "x": 15, "y": 4}, + {"matrix": [10, 6], "x": 16, "y": 4}, + {"matrix": [10, 7], "x": 17, "y": 4}, + {"matrix": [11, 8], "x": 18, "y": 4, "h": 2}, + + {"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": [11, 0], "x": 10, "y": 5, "w": 1.25}, + {"matrix": [11, 1], "x": 11.25, "y": 5, "w": 1.25}, + {"matrix": [11, 3], "x": 12.5, "y": 5, "w": 1.25}, + {"matrix": [11, 4], "x": 13.75, "y": 5, "w": 1.25}, + {"matrix": [11, 5], "x": 15, "y": 5, "w": 2}, + {"matrix": [11, 7], "x": 17, "y": 5} + ] + }, + "LAYOUT_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": [6, 0], "x": 10, "y": 0}, + {"matrix": [6, 1], "x": 11, "y": 0}, + {"matrix": [6, 2], "x": 12, "y": 0}, + {"matrix": [6, 3], "x": 13, "y": 0}, + {"matrix": [6, 4], "x": 14, "y": 0}, + {"matrix": [6, 5], "x": 15, "y": 0}, + {"matrix": [6, 6], "x": 16, "y": 0}, + {"matrix": [6, 7], "x": 17, "y": 0}, + {"matrix": [6, 8], "x": 18, "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": [7, 0], "x": 10, "y": 1}, + {"matrix": [7, 1], "x": 11, "y": 1}, + {"matrix": [7, 2], "x": 12, "y": 1}, + {"matrix": [7, 3], "x": 13, "y": 1}, + {"matrix": [7, 4], "x": 14, "y": 1}, + {"matrix": [7, 5], "x": 15, "y": 1}, + {"matrix": [7, 6], "x": 16, "y": 1}, + {"matrix": [7, 7], "x": 17, "y": 1}, + {"matrix": [7, 8], "x": 18, "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": [8, 0], "x": 10.5, "y": 2}, + {"matrix": [8, 1], "x": 11.5, "y": 2}, + {"matrix": [8, 2], "x": 12.5, "y": 2}, + {"matrix": [8, 5], "x": 15, "y": 2}, + {"matrix": [8, 6], "x": 16, "y": 2}, + {"matrix": [8, 7], "x": 17, "y": 2}, + {"matrix": [9, 8], "x": 18, "y": 2, "h": 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": [9, 0], "x": 10.75, "y": 3}, + {"matrix": [9, 1], "x": 11.75, "y": 3}, + {"matrix": [9, 3], "x": 12.75, "y": 3}, + {"matrix": [8, 4], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, + {"matrix": [9, 5], "x": 15, "y": 3}, + {"matrix": [9, 6], "x": 16, "y": 3}, + {"matrix": [9, 7], "x": 17, "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": [10, 0], "x": 10.25, "y": 4}, + {"matrix": [10, 1], "x": 11.25, "y": 4}, + {"matrix": [10, 3], "x": 12.25, "y": 4, "w": 2.75}, + {"matrix": [10, 5], "x": 15, "y": 4}, + {"matrix": [10, 6], "x": 16, "y": 4}, + {"matrix": [10, 7], "x": 17, "y": 4}, + {"matrix": [11, 8], "x": 18, "y": 4, "h": 2}, + + {"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": [11, 0], "x": 10, "y": 5, "w": 1.25}, + {"matrix": [11, 1], "x": 11.25, "y": 5, "w": 1.25}, + {"matrix": [11, 3], "x": 12.5, "y": 5, "w": 1.25}, + {"matrix": [11, 4], "x": 13.75, "y": 5, "w": 1.25}, + {"matrix": [11, 5], "x": 15, "y": 5, "w": 2}, + {"matrix": [11, 7], "x": 17, "y": 5} + ] } } } diff --git a/keyboards/xelus/snap96/matrix_diagram.md b/keyboards/xelus/snap96/matrix_diagram.md new file mode 100644 index 00000000000..123adcee01f --- /dev/null +++ b/keyboards/xelus/snap96/matrix_diagram.md @@ -0,0 +1,27 @@ +# Matrix Diagram for Xelus Snap96 + +``` + ┌───────┐ + 2u Backspace │74 │ + └───────┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │60 │61 │62 │63 │64 │65 │66 │67 │68 │ + ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ + │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │70 │71 │72 │73 │74 │75 │76 │77 │78 │ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┼───┼───┼───┤ ┌───┐ ┌─────┐ + │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │80 │81 │82 │84 │85 │86 │87 │88 │ │98 │ │84 │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┼───┼───┼───┤ │ │ ┌──┴┐ │ ISO Enter + │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │90 │91 │93 │95 │96 │97 │98 │ │ │ │93 │ │ +┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┼───┼───┼───┤ ├───┤ └───┴────┘ +│40 │ │40 │41 │42 │43 │44 │45 │46 │47 │48 │49 │A0 │A1 │A3 │A4 │A5 │A6 │A7 │A8 │ │B8 │┌───┬──────────┐ +└────────┘ ├────┼───┴┬──┴─┬─┴───┴───┴┬──┴─┬─┴───┴──┬┴───┼───┴┬────┬┴───┼───┼───┼───┼───┤ │ ││A1 │A3 │ + │50 │51 │52 │55 │56 │59 │B0 │B1 │B3 │B4 │B5 │B6 │B7 │B8 │ │ │├───┴──┬───┬───┤ + └────┴────┴────┴──────────┴────┴────────┴────┴────┴────┴────┴───┴───┴───┴───┘ └───┘│A1 │A3 │A4 │ + ┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐ ┌───────┬───┐ └──────┴───┴───┘ + │50 │51 │52 │56 │B1 │B3 │B4 │ │B5 │B7 │ + ├────┬┴───┼────┬┴───────────────────────┬───┴┬────┼───┴┬────┤ ├───┬───┴───┤ + │50 │51 │52 │56 │B0 │B1 │B3 │B4 │ │B5 │B7 │ + ├────┼────┼────┼────────┬────┬──────────┼────┼────┼────┼────┤ └───┴───────┘ + │50 │51 │52 │55 │56 │59 │B0 │B1 │B3 │B4 │ + └────┴────┴────┴────────┴────┴──────────┴────┴────┴────┴────┘ +``` From 90b043e01cc7f6d13473e5dc7153d2bd12ff2b4a Mon Sep 17 00:00:00 2001 From: TyraelWasTaken <96232590+TyraelWasTaken@users.noreply.github.com> Date: Thu, 27 Jun 2024 04:55:47 +0100 Subject: [PATCH 141/519] Add support for Equanimity (#23965) * Add Equanimity files * Update keyboard.json format * Update readme.md * CRLF to LF * Force LF and correct rules.mk * Remove config.h * Remove rules.mk * Update keymap.c * Update keyboard.json * Update name in readme.md --- .../tyraelwastaken/equanimity/keyboard.json | 104 ++++++++++++++++++ .../equanimity/keymaps/default/keymap.c | 35 ++++++ .../equanimity/keymaps/default/rules.mk | 1 + .../equanimity/keymaps/via/keymap.c | 35 ++++++ .../equanimity/keymaps/via/rules.mk | 2 + keyboards/tyraelwastaken/equanimity/readme.md | 27 +++++ 6 files changed, 204 insertions(+) create mode 100644 keyboards/tyraelwastaken/equanimity/keyboard.json create mode 100644 keyboards/tyraelwastaken/equanimity/keymaps/default/keymap.c create mode 100644 keyboards/tyraelwastaken/equanimity/keymaps/default/rules.mk create mode 100644 keyboards/tyraelwastaken/equanimity/keymaps/via/keymap.c create mode 100644 keyboards/tyraelwastaken/equanimity/keymaps/via/rules.mk create mode 100644 keyboards/tyraelwastaken/equanimity/readme.md diff --git a/keyboards/tyraelwastaken/equanimity/keyboard.json b/keyboards/tyraelwastaken/equanimity/keyboard.json new file mode 100644 index 00000000000..d9ace047142 --- /dev/null +++ b/keyboards/tyraelwastaken/equanimity/keyboard.json @@ -0,0 +1,104 @@ +{ + "manufacturer": "TyraelWasTaken", + "keyboard_name": "Equanimity", + "maintainer": "TyraelWasTaken", + "bootloader": "stm32-dfu", + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "A9", "pin_b": "A10", "resolution": 1} + ] + }, + "features": { + "bootmagic": true, + "encoder": true, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["B2", "B1", "B0", "A7", "A6", "A5", "A2", "B12", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15"], + "rows": ["B11", "B10", "A1", "A3", "A4"] + }, + "processor": "STM32F072", + "url": "https://github.com/TyraelWasTaken/Equanimity", + "usb": { + "device_version": "1.0.0", + "pid": "0x5343", + "vid": "0x6571" + }, + "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": [0, 14], "x": 14, "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, 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}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + {"matrix": [2, 6], "x": 6, "y": 2}, + {"matrix": [2, 8], "x": 8, "y": 2}, + {"matrix": [2, 9], "x": 9, "y": 2}, + {"matrix": [2, 10], "x": 10, "y": 2}, + {"matrix": [2, 11], "x": 11, "y": 2}, + {"matrix": [2, 12], "x": 12, "y": 2}, + {"matrix": [2, 13], "x": 13, "y": 2}, + {"matrix": [2, 14], "x": 14, "y": 2}, + {"matrix": [2, 15], "x": 15, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [3, 6], "x": 6, "y": 3}, + {"matrix": [3, 8], "x": 8, "y": 3}, + {"matrix": [3, 9], "x": 9, "y": 3}, + {"matrix": [3, 10], "x": 10, "y": 3}, + {"matrix": [3, 11], "x": 11, "y": 3}, + {"matrix": [3, 12], "x": 12, "y": 3}, + {"matrix": [3, 13], "x": 13, "y": 3}, + {"matrix": [3, 14], "x": 14, "y": 3}, + {"matrix": [4, 1], "x": 1, "y": 4}, + {"matrix": [4, 3], "x": 3, "y": 4}, + {"matrix": [4, 5], "x": 5, "y": 4}, + {"matrix": [4, 7], "x": 7, "y": 4}, + {"matrix": [4, 8], "x": 8, "y": 4}, + {"matrix": [4, 10], "x": 10, "y": 4}, + {"matrix": [4, 12], "x": 12, "y": 4}, + {"matrix": [4, 13], "x": 13, "y": 4}, + {"matrix": [4, 15], "x": 5, "y": 4} + ] + } + } +} diff --git a/keyboards/tyraelwastaken/equanimity/keymaps/default/keymap.c b/keyboards/tyraelwastaken/equanimity/keymaps/default/keymap.c new file mode 100644 index 00000000000..7430554f7ab --- /dev/null +++ b/keyboards/tyraelwastaken/equanimity/keymaps/default/keymap.c @@ -0,0 +1,35 @@ +// Copyright 2024 TyraelWasTaken (@TyraelWasTaken) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum layer_names { + _BL, + _FL, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_BL] = LAYOUT( + KC_DELETE, KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, KC_EQUAL, KC_BACKSPACE, + 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_LOCK, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOTE, KC_ENT, KC_MEDIA_PLAY_PAUSE, + KC_PGDN, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_SPC, MO(_FL), KC_SPC, KC_LALT, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_FL] = LAYOUT( + KC_TRNS, KC_GRAVE, 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_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END + ) +}; + +#ifdef ENCODER_MAP_ENABLE + const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [_BL] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [_FL] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + }; +#endif \ No newline at end of file diff --git a/keyboards/tyraelwastaken/equanimity/keymaps/default/rules.mk b/keyboards/tyraelwastaken/equanimity/keymaps/default/rules.mk new file mode 100644 index 00000000000..a40474b4d5c --- /dev/null +++ b/keyboards/tyraelwastaken/equanimity/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/tyraelwastaken/equanimity/keymaps/via/keymap.c b/keyboards/tyraelwastaken/equanimity/keymaps/via/keymap.c new file mode 100644 index 00000000000..7430554f7ab --- /dev/null +++ b/keyboards/tyraelwastaken/equanimity/keymaps/via/keymap.c @@ -0,0 +1,35 @@ +// Copyright 2024 TyraelWasTaken (@TyraelWasTaken) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum layer_names { + _BL, + _FL, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_BL] = LAYOUT( + KC_DELETE, KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, KC_EQUAL, KC_BACKSPACE, + 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_LOCK, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOTE, KC_ENT, KC_MEDIA_PLAY_PAUSE, + KC_PGDN, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_SPC, MO(_FL), KC_SPC, KC_LALT, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_FL] = LAYOUT( + KC_TRNS, KC_GRAVE, 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_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END + ) +}; + +#ifdef ENCODER_MAP_ENABLE + const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [_BL] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [_FL] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + }; +#endif \ No newline at end of file diff --git a/keyboards/tyraelwastaken/equanimity/keymaps/via/rules.mk b/keyboards/tyraelwastaken/equanimity/keymaps/via/rules.mk new file mode 100644 index 00000000000..4253f570f0b --- /dev/null +++ b/keyboards/tyraelwastaken/equanimity/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/tyraelwastaken/equanimity/readme.md b/keyboards/tyraelwastaken/equanimity/readme.md new file mode 100644 index 00000000000..a8662261921 --- /dev/null +++ b/keyboards/tyraelwastaken/equanimity/readme.md @@ -0,0 +1,27 @@ +# equanimity + +![equanimity](https://i.imgur.com/kIGyOi4.png) + +Arisu-ish Alice keyboard with an EC11 and some accent keys, staggered. + +* Keyboard Maintainer: [TyraelWasTaken](https://github.com/TyraelWasTaken) +* Hardware Supported: *UDB C3 or greater with Equanimity PCB, no other PCBs are supported for the case* +* Hardware Availability: *If you wish to build this, all files are available here: https://github.com/TyraelWasTaken/Equanimity* + +Make example for this keyboard (after setting up your build environment): + + make tyraelwastaken/equanimity:default + +Flashing example for this keyboard: + + make tyraelwastaken/equanimity: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 From 603586800c65d32c45b0896645a6886fbe8e809c Mon Sep 17 00:00:00 2001 From: David Hoelscher Date: Wed, 26 Jun 2024 22:56:16 -0500 Subject: [PATCH 142/519] [Keyboard] Add Elysian (#23949) * adding Elysian * corrections from zvecr --- keyboards/custommk/elysian/config.h | 14 ++++ keyboards/custommk/elysian/halconf.h | 14 ++++ keyboards/custommk/elysian/keyboard.json | 65 +++++++++++++++++++ .../custommk/elysian/keymaps/default/keymap.c | 19 ++++++ .../custommk/elysian/keymaps/default/rules.mk | 1 + .../custommk/elysian/keymaps/via/config.h | 6 ++ .../custommk/elysian/keymaps/via/keymap.c | 19 ++++++ .../custommk/elysian/keymaps/via/rules.mk | 2 + keyboards/custommk/elysian/mcuconf.h | 10 +++ keyboards/custommk/elysian/readme.md | 27 ++++++++ 10 files changed, 177 insertions(+) create mode 100644 keyboards/custommk/elysian/config.h create mode 100644 keyboards/custommk/elysian/halconf.h create mode 100644 keyboards/custommk/elysian/keyboard.json create mode 100644 keyboards/custommk/elysian/keymaps/default/keymap.c create mode 100644 keyboards/custommk/elysian/keymaps/default/rules.mk create mode 100644 keyboards/custommk/elysian/keymaps/via/config.h create mode 100644 keyboards/custommk/elysian/keymaps/via/keymap.c create mode 100644 keyboards/custommk/elysian/keymaps/via/rules.mk create mode 100644 keyboards/custommk/elysian/mcuconf.h create mode 100644 keyboards/custommk/elysian/readme.md diff --git a/keyboards/custommk/elysian/config.h b/keyboards/custommk/elysian/config.h new file mode 100644 index 00000000000..03a7586655d --- /dev/null +++ b/keyboards/custommk/elysian/config.h @@ -0,0 +1,14 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +// FRAM configuration +#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN B7 +#define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 4 + +// SPI configuration +#define SPI_DRIVER SPID1 +#define SPI_SCK_PIN B3 +#define SPI_MOSI_PIN B5 +#define SPI_MISO_PIN B4 \ No newline at end of file diff --git a/keyboards/custommk/elysian/halconf.h b/keyboards/custommk/elysian/halconf.h new file mode 100644 index 00000000000..5b2f7eedd20 --- /dev/null +++ b/keyboards/custommk/elysian/halconf.h @@ -0,0 +1,14 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define HAL_USE_SPI TRUE + +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD + +#define SERIAL_BUFFERS_SIZE 256 + +#define SPI_USE_WAIT TRUE + +#include_next diff --git a/keyboards/custommk/elysian/keyboard.json b/keyboards/custommk/elysian/keyboard.json new file mode 100644 index 00000000000..4fc842149dc --- /dev/null +++ b/keyboards/custommk/elysian/keyboard.json @@ -0,0 +1,65 @@ +{ + "manufacturer": "customMK", + "keyboard_name": "Elysian", + "maintainer": "customMK", + "bootloader": "stm32-dfu", + "debounce": 10, + "diode_direction": "ROW2COL", + "dynamic_keymap": { + "layer_count": 32 + }, + "eeprom": { + "driver": "spi" + }, + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "encoder": true + }, + "matrix_pins": { + "cols": ["A0", "A1", "A2", "A3", "A4"], + "rows": ["B0", "B1", "B6", "B8"] + }, + "processor": "STM32F411", + "qmk": { + "tap_keycode_delay": 10 + }, + "url": "https://shop.custommk.com/collections/elysian/products/elysian", + "usb": { + "device_version": "1.0.0", + "pid": "0xFABB", + "vid": "0xF35B", + "force_nkro": true + }, + "encoder": { + "rotary": [ + { "pin_a": "A5", "pin_b": "A6", "resolution": 2}, + { "pin_a": "A7", "pin_b": "A8", "resolution": 2} + ] + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "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": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3} + ] + } + } +} \ No newline at end of file diff --git a/keyboards/custommk/elysian/keymaps/default/keymap.c b/keyboards/custommk/elysian/keymaps/default/keymap.c new file mode 100644 index 00000000000..fcb617ad9ee --- /dev/null +++ b/keyboards/custommk/elysian/keymaps/default/keymap.c @@ -0,0 +1,19 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_ESC, KC_ENT, + KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH + ) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_WH_D, KC_WH_U) } +}; +#endif \ No newline at end of file diff --git a/keyboards/custommk/elysian/keymaps/default/rules.mk b/keyboards/custommk/elysian/keymaps/default/rules.mk new file mode 100644 index 00000000000..a40474b4d5c --- /dev/null +++ b/keyboards/custommk/elysian/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/custommk/elysian/keymaps/via/config.h b/keyboards/custommk/elysian/keymaps/via/config.h new file mode 100644 index 00000000000..c2dca382777 --- /dev/null +++ b/keyboards/custommk/elysian/keymaps/via/config.h @@ -0,0 +1,6 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define DYNAMIC_KEYMAP_MACRO_COUNT 128 diff --git a/keyboards/custommk/elysian/keymaps/via/keymap.c b/keyboards/custommk/elysian/keymaps/via/keymap.c new file mode 100644 index 00000000000..493a7834e89 --- /dev/null +++ b/keyboards/custommk/elysian/keymaps/via/keymap.c @@ -0,0 +1,19 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_ESC, MO(1), + KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH + ) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_WH_D, KC_WH_U) } +}; +#endif \ No newline at end of file diff --git a/keyboards/custommk/elysian/keymaps/via/rules.mk b/keyboards/custommk/elysian/keymaps/via/rules.mk new file mode 100644 index 00000000000..4253f570f0b --- /dev/null +++ b/keyboards/custommk/elysian/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/custommk/elysian/mcuconf.h b/keyboards/custommk/elysian/mcuconf.h new file mode 100644 index 00000000000..42dbcf352a1 --- /dev/null +++ b/keyboards/custommk/elysian/mcuconf.h @@ -0,0 +1,10 @@ +// Copyright 2024 customMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include_next + +// FRAM +#undef STM32_SPI_USE_SPI1 +#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/custommk/elysian/readme.md b/keyboards/custommk/elysian/readme.md new file mode 100644 index 00000000000..7b508758ca4 --- /dev/null +++ b/keyboards/custommk/elysian/readme.md @@ -0,0 +1,27 @@ +# Elysian + +![Elysian](https://i.imgur.com/W8yx11qh.jpeg) + +Elysian is a 3x5 macropad including two rotary encoders. + +* Keyboard Maintainer: [customMK](https://github.com/customMK) +* Hardware Supported: Elysian +* Hardware Availability: [customMK](https://shop.custommk.com/collections/keyboards/products/elysian) + +Make example for this keyboard (after setting up your build environment): + + make custommk/elysian:default + +Flashing example for this keyboard: + + make custommk/elysian: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**: Press and hold down the rotary encoder at (0,0) in the matrix (the rotary encoder in the top left corner) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available From a7aa58cc8130b9c59bc39f41e33d9387a46b1e8c Mon Sep 17 00:00:00 2001 From: Dasky <32983009+daskygit@users.noreply.github.com> Date: Thu, 27 Jun 2024 05:10:13 +0100 Subject: [PATCH 143/519] Change ADNS9800 and PMW33XX SROM uploads to opt in. (#24001) Make SROM upload optional --- drivers/sensors/adns9800.c | 11 +++++++++++ drivers/sensors/pmw33xx_common.c | 4 +++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/drivers/sensors/adns9800.c b/drivers/sensors/adns9800.c index f34529ee90d..0ba26a365ad 100644 --- a/drivers/sensors/adns9800.c +++ b/drivers/sensors/adns9800.c @@ -115,6 +115,7 @@ void adns9800_init(void) { adns9800_read(REG_Delta_Y_L); adns9800_read(REG_Delta_Y_H); +#ifdef ADNS9800_UPLOAD_SROM // upload firmware // 3k firmware mode @@ -145,6 +146,16 @@ void adns9800_init(void) { spi_stop(); wait_ms(10); +#else + // write reset value to REG_Configuration_IV + adns9800_write(REG_Configuration_IV, 0x0); + + // write reset value to REG_SROM_Enable + adns9800_write(REG_SROM_Enable, 0x0); + + // wait a frame + wait_ms(10); +#endif // enable laser uint8_t laser_ctrl0 = adns9800_read(REG_LASER_CTRL0); diff --git a/drivers/sensors/pmw33xx_common.c b/drivers/sensors/pmw33xx_common.c index 82a7ec32973..f1f2d0e8653 100644 --- a/drivers/sensors/pmw33xx_common.c +++ b/drivers/sensors/pmw33xx_common.c @@ -154,10 +154,12 @@ bool pmw33xx_init(uint8_t sensor) { pmw33xx_read(sensor, REG_Delta_Y_L); pmw33xx_read(sensor, REG_Delta_Y_H); +#ifdef PMW33XX_UPLOAD_SROM if (!pmw33xx_upload_firmware(sensor)) { pd_dprintf("PMW33XX (%d): firmware upload failed!\n", sensor); return false; } +#endif spi_stop(); @@ -200,7 +202,7 @@ pmw33xx_report_t pmw33xx_read_burst(uint8_t sensor) { spi_write(REG_Motion_Burst); wait_us(35); // waits for tSRAD_MOTBR - spi_receive((uint8_t*)&report, sizeof(report)); + spi_receive((uint8_t *)&report, sizeof(report)); // panic recovery, sometimes burst mode works weird. if (report.motion.w & 0b111) { From 9d02ac37f7222b2dbdd10080b062bba05b2c9893 Mon Sep 17 00:00:00 2001 From: Danny Date: Thu, 27 Jun 2024 13:37:41 -0400 Subject: [PATCH 144/519] Add Nyquist Rev. 5 (#23971) * Add Nyquist Rev. 5 * Remove unused keymap --- .../keebio/nyquist/keymaps/tester/config.h | 20 -- .../keebio/nyquist/keymaps/tester/keymap.c | 221 ------------ .../keebio/nyquist/keymaps/tester/rules.mk | 1 - keyboards/keebio/nyquist/rev5/config.h | 20 ++ keyboards/keebio/nyquist/rev5/keyboard.json | 322 ++++++++++++++++++ keyboards/keebio/nyquist/rev5/rules.mk | 1 + 6 files changed, 343 insertions(+), 242 deletions(-) delete mode 100644 keyboards/keebio/nyquist/keymaps/tester/config.h delete mode 100644 keyboards/keebio/nyquist/keymaps/tester/keymap.c delete mode 100644 keyboards/keebio/nyquist/keymaps/tester/rules.mk create mode 100644 keyboards/keebio/nyquist/rev5/config.h create mode 100644 keyboards/keebio/nyquist/rev5/keyboard.json create mode 100644 keyboards/keebio/nyquist/rev5/rules.mk diff --git a/keyboards/keebio/nyquist/keymaps/tester/config.h b/keyboards/keebio/nyquist/keymaps/tester/config.h deleted file mode 100644 index 4f5f10cebcf..00000000000 --- a/keyboards/keebio/nyquist/keymaps/tester/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2017 Danny Nguyen - -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 . -*/ - -#pragma once - -#define USE_I2C diff --git a/keyboards/keebio/nyquist/keymaps/tester/keymap.c b/keyboards/keebio/nyquist/keymaps/tester/keymap.c deleted file mode 100644 index 7ed85044ca6..00000000000 --- a/keyboards/keebio/nyquist/keymaps/tester/keymap.c +++ /dev/null @@ -1,221 +0,0 @@ -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _QWERTY 0 -#define _COLEMAK 1 -#define _DVORAK 2 -#define _LOWER 3 -#define _RAISE 4 -#define _ADJUST 5 - -enum custom_keycodes { - QWERTY = SAFE_RANGE, - COLEMAK, - DVORAK, - LOWER, - RAISE, - ADJUST, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* Qwerty - * ,-----------------------------------------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Esc | A | S | D | F | G | H | J | K | L | ; | " | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_QWERTY] = LAYOUT( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - BL_STEP, KC_Q, KC_W, KC_E, KC_R, KC_T, BL_STEP, KC_U, KC_I, KC_O, KC_P, KC_DEL, - RGB_MOD, KC_A, KC_S, KC_D, KC_F, KC_G, RGB_MOD, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT -), - -/* Colemak - * ,-----------------------------------------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Esc | A | R | S | T | D | H | N | E | I | O | " | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_COLEMAK] = LAYOUT( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, - KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT -), - -/* Dvorak - * ,-----------------------------------------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Tab | " | , | . | P | Y | F | G | C | R | L | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Esc | A | O | E | U | I | D | H | T | N | S | / | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_DVORAK] = LAYOUT( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_DEL, - KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, - KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT -), - -/* Lower - * ,-----------------------------------------------------------------------------------. - * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | Next | Vol- | Vol+ | Play | - * `-----------------------------------------------------------------------------------' - */ -[_LOWER] = LAYOUT( - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, - KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, - _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY -), - -/* Raise - * ,-----------------------------------------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | Next | Vol- | Vol+ | Play | - * `-----------------------------------------------------------------------------------' - */ -[_RAISE] = LAYOUT( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, - KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, - _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY -), - -/* Adjust (Lower + Raise) - * ,-----------------------------------------------------------------------------------. - * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | Reset|RGB Tg|RGB Md|Hue Up|Hue Dn|Sat Up|Sat Dn|Val Up|Val Dn| | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | | | | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | - * `-----------------------------------------------------------------------------------' - */ -[_ADJUST] = 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, - _______, QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, - _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ -) - - -}; - -#ifdef AUDIO_ENABLE -float tone_qwerty[][2] = SONG(QWERTY_SOUND); -float tone_dvorak[][2] = SONG(DVORAK_SOUND); -float tone_colemak[][2] = SONG(COLEMAK_SOUND); -#endif - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_SONG(tone_qwerty); - #endif - set_single_persistent_default_layer(_QWERTY); - } - return false; - break; - case COLEMAK: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_SONG(tone_colemak); - #endif - set_single_persistent_default_layer(_COLEMAK); - } - return false; - break; - case DVORAK: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_SONG(tone_dvorak); - #endif - set_single_persistent_default_layer(_DVORAK); - } - return false; - break; - case 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; - break; - case 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; - break; - case ADJUST: - if (record->event.pressed) { - layer_on(_ADJUST); - } else { - layer_off(_ADJUST); - } - return false; - break; - } - return true; -} diff --git a/keyboards/keebio/nyquist/keymaps/tester/rules.mk b/keyboards/keebio/nyquist/keymaps/tester/rules.mk deleted file mode 100644 index 1e3cebb1451..00000000000 --- a/keyboards/keebio/nyquist/keymaps/tester/rules.mk +++ /dev/null @@ -1 +0,0 @@ -RGBLIGHT_ENABLE = yes diff --git a/keyboards/keebio/nyquist/rev5/config.h b/keyboards/keebio/nyquist/rev5/config.h new file mode 100644 index 00000000000..8a88c21c891 --- /dev/null +++ b/keyboards/keebio/nyquist/rev5/config.h @@ -0,0 +1,20 @@ +// Copyright 2024 Danny Nguyen (danny@keeb.io) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define SPLIT_HAND_PIN GP23 + +#define USB_VBUS_PIN GP18 + +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_TX_PIN GP8 +#define SERIAL_USART_RX_PIN GP9 +#define SERIAL_USART_PIN_SWAP + +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U + +#define I2C_DRIVER I2CD0 +#define I2C0_SDA_PIN GP4 +#define I2C0_SCL_PIN GP5 diff --git a/keyboards/keebio/nyquist/rev5/keyboard.json b/keyboards/keebio/nyquist/rev5/keyboard.json new file mode 100644 index 00000000000..83d88b37b8d --- /dev/null +++ b/keyboards/keebio/nyquist/rev5/keyboard.json @@ -0,0 +1,322 @@ +{ + "keyboard_name": "Nyquist Rev. 5", + "usb": { + "pid": "0x5156", + "device_version": "5.0.0" + }, + "processor": "RP2040", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "mousekey": true, + "extrakey": true, + "rgb_matrix": true + }, + "split": { + "bootmagic": { + "matrix": [9, 0] + }, + "enabled": true, + "encoder": { + "right": { + "rotary": [ + {"pin_a": "GP1", "pin_b": "GP0" } + ] + } + }, + "matrix_pins": { + "right":{ + "cols": ["GP25", "GP29", "GP20", "GP11", "GP3", "GP2"], + "rows": ["GP24", "GP17", "GP15", "GP14", "GP12"] + } + }, + "transport": { + "sync" :{ + "matrix_state": true + } + } + }, + "matrix_pins": { + "cols": ["GP29", "GP22", "GP0", "GP3", "GP11", "GP6"], + "rows": ["GP2", "GP1", "GP17", "GP25", "GP24"] + }, + "encoder": { + "enabled": true, + "rotary": [ + {"pin_a": "GP26", "pin_b": "GP27" } + ] + }, + "ws2812": { + "driver": "vendor", + "pin": "GP28" + }, + "layouts": { + "LAYOUT_ortho_5x12": { + "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": [5, 0], "x": 7, "y": 0}, + {"matrix": [5, 1], "x": 8, "y": 0}, + {"matrix": [5, 2], "x": 9, "y": 0}, + {"matrix": [5, 3], "x": 10, "y": 0}, + {"matrix": [5, 4], "x": 11, "y": 0}, + {"matrix": [5, 5], "x": 12, "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": [6, 0], "x": 7, "y": 1}, + {"matrix": [6, 1], "x": 8, "y": 1}, + {"matrix": [6, 2], "x": 9, "y": 1}, + {"matrix": [6, 3], "x": 10, "y": 1}, + {"matrix": [6, 4], "x": 11, "y": 1}, + {"matrix": [6, 5], "x": 12, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + + {"matrix": [7, 0], "x": 7, "y": 2}, + {"matrix": [7, 1], "x": 8, "y": 2}, + {"matrix": [7, 2], "x": 9, "y": 2}, + {"matrix": [7, 3], "x": 10, "y": 2}, + {"matrix": [7, 4], "x": 11, "y": 2}, + {"matrix": [7, 5], "x": 12, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + + {"matrix": [8, 0], "x": 7, "y": 3}, + {"matrix": [8, 1], "x": 8, "y": 3}, + {"matrix": [8, 2], "x": 9, "y": 3}, + {"matrix": [8, 3], "x": 10, "y": 3}, + {"matrix": [8, 4], "x": 11, "y": 3}, + {"matrix": [8, 5], "x": 12, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4}, + {"matrix": [4, 1], "x": 1, "y": 4}, + {"matrix": [4, 2], "x": 2, "y": 4}, + {"matrix": [4, 3], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4}, + {"matrix": [4, 5], "x": 5, "y": 4}, + + {"matrix": [9, 0], "x": 7, "y": 4}, + {"matrix": [9, 1], "x": 8, "y": 4}, + {"matrix": [9, 2], "x": 9, "y": 4}, + {"matrix": [9, 3], "x": 10, "y": 4}, + {"matrix": [9, 4], "x": 11, "y": 4}, + {"matrix": [9, 5], "x": 12, "y": 4} + ] + }, + "LAYOUT_ortho_4x12": { + "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": [5, 0], "x": 7, "y": 0}, + {"matrix": [5, 1], "x": 8, "y": 0}, + {"matrix": [5, 2], "x": 9, "y": 0}, + {"matrix": [5, 3], "x": 10, "y": 0}, + {"matrix": [5, 4], "x": 11, "y": 0}, + {"matrix": [5, 5], "x": 12, "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": [6, 0], "x": 7, "y": 1}, + {"matrix": [6, 1], "x": 8, "y": 1}, + {"matrix": [6, 2], "x": 9, "y": 1}, + {"matrix": [6, 3], "x": 10, "y": 1}, + {"matrix": [6, 4], "x": 11, "y": 1}, + {"matrix": [6, 5], "x": 12, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + + {"matrix": [7, 0], "x": 7, "y": 2}, + {"matrix": [7, 1], "x": 8, "y": 2}, + {"matrix": [7, 2], "x": 9, "y": 2}, + {"matrix": [7, 3], "x": 10, "y": 2}, + {"matrix": [7, 4], "x": 11, "y": 2}, + {"matrix": [7, 5], "x": 12, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + + {"matrix": [8, 0], "x": 7, "y": 3}, + {"matrix": [8, 1], "x": 8, "y": 3}, + {"matrix": [8, 2], "x": 9, "y": 3}, + {"matrix": [8, 3], "x": 10, "y": 3}, + {"matrix": [8, 4], "x": 11, "y": 3}, + {"matrix": [8, 5], "x": 12, "y": 3} + ] + } + }, + "rgb_matrix": { + "driver": "ws2812", + "split_count": [36, 36], + "max_brightness": 120, + "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, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "rainbow_moving_chevron": 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_fractal": true, + "pixel_flow": true, + "pixel_rain": 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 + }, + "layout": [ + { "flags": 4, "matrix": [0, 0], "x": 9, "y": 6 }, + { "flags": 4, "matrix": [0, 1], "x": 28, "y": 6 }, + { "flags": 4, "matrix": [0, 2], "x": 46, "y": 6 }, + { "flags": 2, "x": 56, "y": 6 }, + { "flags": 4, "matrix": [0, 3], "x": 65, "y": 6 }, + { "flags": 4, "matrix": [0, 4], "x": 84, "y": 6 }, + { "flags": 4, "matrix": [0, 5], "x": 102, "y": 6 }, + + { "flags": 4, "matrix": [1, 5], "x": 102, "y": 19 }, + { "flags": 2, "x": 93, "y": 12 }, + { "flags": 4, "matrix": [1, 4], "x": 84, "y": 19 }, + { "flags": 4, "matrix": [1, 3], "x": 65, "y": 19 }, + { "flags": 4, "matrix": [1, 2], "x": 46, "y": 19 }, + { "flags": 4, "matrix": [1, 1], "x": 28, "y": 19 }, + { "flags": 2, "x": 18, "y": 12 }, + { "flags": 4, "matrix": [1, 0], "x": 9, "y": 19 }, + + { "flags": 4, "matrix": [2, 0], "x": 9, "y": 32 }, + { "flags": 4, "matrix": [2, 1], "x": 28, "y": 32 }, + { "flags": 4, "matrix": [2, 2], "x": 46, "y": 32 }, + { "flags": 4, "matrix": [2, 3], "x": 65, "y": 32 }, + { "flags": 4, "matrix": [2, 4], "x": 84, "y": 32 }, + { "flags": 4, "matrix": [2, 5], "x": 102, "y": 32 }, + + { "flags": 4, "matrix": [3, 5], "x": 102, "y": 44 }, + { "flags": 2, "x": 93, "y": 40 }, + { "flags": 4, "matrix": [3, 4], "x": 84, "y": 44 }, + { "flags": 4, "matrix": [3, 3], "x": 65, "y": 44 }, + { "flags": 2, "x": 56, "y": 44 }, + { "flags": 4, "matrix": [3, 2], "x": 46, "y": 44 }, + { "flags": 4, "matrix": [3, 1], "x": 28, "y": 44 }, + { "flags": 2, "x": 18, "y": 44 }, + { "flags": 4, "matrix": [3, 0], "x": 9, "y": 44 }, + + { "flags": 4, "matrix": [4, 0], "x": 9, "y": 57 }, + { "flags": 4, "matrix": [4, 1], "x": 28, "y": 57 }, + { "flags": 4, "matrix": [4, 2], "x": 46, "y": 57 }, + { "flags": 4, "matrix": [4, 3], "x": 65, "y": 57 }, + { "flags": 4, "matrix": [4, 4], "x": 81, "y": 57 }, + { "flags": 4, "matrix": [4, 5], "x": 105, "y": 57 }, + + { "flags": 4, "matrix": [5, 0], "x": 121, "y": 6 }, + { "flags": 4, "matrix": [5, 1], "x": 140, "y": 6 }, + { "flags": 4, "matrix": [5, 2], "x": 158, "y": 6 }, + { "flags": 2, "x": 168, "y": 6 }, + { "flags": 4, "matrix": [5, 3], "x": 177, "y": 6 }, + { "flags": 4, "matrix": [5, 4], "x": 196, "y": 6 }, + { "flags": 4, "matrix": [5, 5], "x": 214, "y": 6 }, + + { "flags": 4, "matrix": [6, 5], "x": 214, "y": 19 }, + { "flags": 2, "x": 205, "y": 12 }, + { "flags": 4, "matrix": [6, 4], "x": 196, "y": 19 }, + { "flags": 4, "matrix": [6, 3], "x": 177, "y": 19 }, + { "flags": 4, "matrix": [6, 2], "x": 158, "y": 19 }, + { "flags": 4, "matrix": [6, 1], "x": 140, "y": 19 }, + { "flags": 2, "x": 130, "y": 12 }, + { "flags": 4, "matrix": [6, 0], "x": 121, "y": 19 }, + + { "flags": 4, "matrix": [7, 0], "x": 121, "y": 32 }, + { "flags": 4, "matrix": [7, 1], "x": 140, "y": 32 }, + { "flags": 4, "matrix": [7, 2], "x": 158, "y": 32 }, + { "flags": 4, "matrix": [7, 3], "x": 177, "y": 32 }, + { "flags": 4, "matrix": [7, 4], "x": 196, "y": 32 }, + { "flags": 4, "matrix": [7, 5], "x": 214, "y": 32 }, + + { "flags": 4, "matrix": [8, 5], "x": 214, "y": 44 }, + { "flags": 2, "x": 205, "y": 44 }, + { "flags": 4, "matrix": [8, 4], "x": 196, "y": 44 }, + { "flags": 4, "matrix": [8, 3], "x": 177, "y": 44 }, + { "flags": 2, "x": 168, "y": 44 }, + { "flags": 4, "matrix": [8, 2], "x": 158, "y": 44 }, + { "flags": 4, "matrix": [8, 1], "x": 140, "y": 44 }, + { "flags": 2, "x": 130, "y": 40 }, + { "flags": 4, "matrix": [8, 0], "x": 121, "y": 44 }, + + { "flags": 4, "matrix": [9, 0], "x": 121, "y": 57 }, + { "flags": 4, "matrix": [9, 1], "x": 140, "y": 57 }, + { "flags": 4, "matrix": [9, 2], "x": 158, "y": 57 }, + { "flags": 4, "matrix": [9, 3], "x": 177, "y": 57 }, + { "flags": 4, "matrix": [9, 4], "x": 196, "y": 57 }, + { "flags": 4, "matrix": [9, 5], "x": 214, "y": 57 } + ], + "sleep": true + } +} diff --git a/keyboards/keebio/nyquist/rev5/rules.mk b/keyboards/keebio/nyquist/rev5/rules.mk new file mode 100644 index 00000000000..161ec22b16e --- /dev/null +++ b/keyboards/keebio/nyquist/rev5/rules.mk @@ -0,0 +1 @@ +SERIAL_DRIVER = vendor From be7728ae581aa59c6a8ba5ef370601edfd9f799a Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 29 Jun 2024 03:36:28 +0100 Subject: [PATCH 145/519] Relocate m256wh VIA logic (#24006) --- keyboards/mode/m256wh/config.h | 2 - keyboards/mode/m256wh/keymaps/via/config.h | 20 +++ keyboards/mode/m256wh/keymaps/via/keymap.c | 132 ++++++++++++++++++ keyboards/mode/m256wh/m256wh.c | 154 --------------------- 4 files changed, 152 insertions(+), 156 deletions(-) create mode 100644 keyboards/mode/m256wh/keymaps/via/config.h delete mode 100644 keyboards/mode/m256wh/m256wh.c diff --git a/keyboards/mode/m256wh/config.h b/keyboards/mode/m256wh/config.h index 06f1658ea52..5bb3d6d1f38 100644 --- a/keyboards/mode/m256wh/config.h +++ b/keyboards/mode/m256wh/config.h @@ -23,5 +23,3 @@ along with this program. If not, see . #define WS2812_PWM_PAL_MODE 1 #define WS2812_PWM_DMA_STREAM STM32_DMA2_STREAM5 #define WS2812_PWM_DMA_CHANNEL 6 - -#define EECONFIG_KB_DATA_SIZE (1) diff --git a/keyboards/mode/m256wh/keymaps/via/config.h b/keyboards/mode/m256wh/keymaps/via/config.h new file mode 100644 index 00000000000..31dfebf49af --- /dev/null +++ b/keyboards/mode/m256wh/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* +Copyright 2022 Gondolindrim + +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 . +*/ + +#pragma once + +#define EECONFIG_USER_DATA_SIZE (1) diff --git a/keyboards/mode/m256wh/keymaps/via/keymap.c b/keyboards/mode/m256wh/keymaps/via/keymap.c index a81d6634506..6adb5cfffa4 100644 --- a/keyboards/mode/m256wh/keymaps/via/keymap.c +++ b/keyboards/mode/m256wh/keymaps/via/keymap.c @@ -31,3 +31,135 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; + +bool is_second_rgb_row_active; + +enum via_secondrow_enable { + id_is_second_rgb_row_active = 0 +}; + +// Sets the second RGB row on or off; done by setting effect range. +void set_second_rgb_row(bool is_active) { + rgblight_disable_noeeprom(); + switch (is_active) + { + case true: + { + rgblight_set_effect_range(0,30); + break; + } + case false: + { + rgblight_set_effect_range(0,15); + break; + } + } + rgblight_enable_noeeprom(); +} + +// At the keyboard start, retrieves PMEM stored configs +void keyboard_post_init_user(void) { + rgblight_disable_noeeprom(); + wait_ms(20); + eeconfig_read_user_datablock(&is_second_rgb_row_active); + set_second_rgb_row(is_second_rgb_row_active); + rgblight_reload_from_eeprom(); + rgblight_set(); +} + +void eeconfig_init_user(void) { // EEPROM is getting reset! + // rgblight_disable(); // Enable RGB by default + // Define the defualt value and write it to EEPROM + is_second_rgb_row_active = true; + set_second_rgb_row(is_second_rgb_row_active); + eeconfig_update_user_datablock(&is_second_rgb_row_active); + + // Disable rgblight by default on EEPROM initialization + rgblight_disable(); +} + +void secondrow_config_set_value( uint8_t *data ) +{ + // data = [ value_id, value_data ] + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + + switch ( *value_id ) + { + case id_is_second_rgb_row_active: + { + is_second_rgb_row_active = (bool) *value_data; + break; + } + default: + { + is_second_rgb_row_active = true; + } + } + set_second_rgb_row(is_second_rgb_row_active); +} + +void secondrow_config_get_value( uint8_t *data ) +{ + // data = [ value_id, value_data ] + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + + switch ( *value_id ) + { + case id_is_second_rgb_row_active: + { + *value_data = is_second_rgb_row_active; + break; + } + default: + { + *value_data = false; + } + } +} + +void secondrow_config_save(void) +{ + eeconfig_update_user_datablock(&is_second_rgb_row_active); +} + +void via_custom_value_command_kb(uint8_t *data, uint8_t length) { + // data = [ command_id, channel_id, value_id, value_data ] + uint8_t *command_id = &(data[0]); + uint8_t *channel_id = &(data[1]); + uint8_t *value_id_and_data = &(data[2]); + + if ( *channel_id == id_custom_channel ) { + switch ( *command_id ) + { + case id_custom_set_value: + { + secondrow_config_set_value(value_id_and_data); + break; + } + case id_custom_get_value: + { + secondrow_config_get_value(value_id_and_data); + break; + } + case id_custom_save: + { + secondrow_config_save(); + break; + } + default: + { + // Unhandled message. + *command_id = id_unhandled; + break; + } + } + return; + } + + // Return the unhandled state + *command_id = id_unhandled; + + // DO NOT call raw_hid_send(data,length) here, let caller do this +} diff --git a/keyboards/mode/m256wh/m256wh.c b/keyboards/mode/m256wh/m256wh.c deleted file mode 100644 index cec427f329c..00000000000 --- a/keyboards/mode/m256wh/m256wh.c +++ /dev/null @@ -1,154 +0,0 @@ -/* Copyright 2022 Gondolindrim - * - * 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 . - */ - -#include "quantum.h" - -#ifdef VIA_ENABLE -bool is_second_rgb_row_active; -enum via_secondrow_enable { - id_is_second_rgb_row_active = 0 -}; - -// Sets the second RGB row on or off; done by setting effect range. -void set_second_rgb_row(bool is_active) { - rgblight_disable_noeeprom(); - switch (is_active) - { - case true: - { - rgblight_set_effect_range(0,30); - break; - } - case false: - { - rgblight_set_effect_range(0,15); - break; - } - } - rgblight_enable_noeeprom(); -} - -// At the keyboard start, retrieves PMEM stored configs -void keyboard_post_init_kb(void) { - rgblight_disable_noeeprom(); - wait_ms(20); - eeconfig_read_kb_datablock(&is_second_rgb_row_active); - set_second_rgb_row(is_second_rgb_row_active); - rgblight_reload_from_eeprom(); - rgblight_set(); -} - -void eeconfig_init_kb(void) { // EEPROM is getting reset! - // rgblight_disable(); // Enable RGB by default - // Define the defualt value and write it to EEPROM - is_second_rgb_row_active = true; - set_second_rgb_row(is_second_rgb_row_active); - eeconfig_update_kb_datablock(&is_second_rgb_row_active); - - // Disable rgblight by default on EEPROM initialization - rgblight_disable(); - - // Run user code if any - eeconfig_init_user(); -} - -void secondrow_config_set_value( uint8_t *data ) -{ - // data = [ value_id, value_data ] - uint8_t *value_id = &(data[0]); - uint8_t *value_data = &(data[1]); - - switch ( *value_id ) - { - case id_is_second_rgb_row_active: - { - is_second_rgb_row_active = (bool) *value_data; - break; - } - default: - { - is_second_rgb_row_active = true; - } - } - set_second_rgb_row(is_second_rgb_row_active); -} - -void secondrow_config_get_value( uint8_t *data ) -{ - // data = [ value_id, value_data ] - uint8_t *value_id = &(data[0]); - uint8_t *value_data = &(data[1]); - - switch ( *value_id ) - { - case id_is_second_rgb_row_active: - { - *value_data = is_second_rgb_row_active; - break; - } - default: - { - *value_data = false; - } - } -} - -void secondrow_config_save(void) -{ - - eeconfig_update_kb_datablock(&is_second_rgb_row_active); -} - -void via_custom_value_command_kb(uint8_t *data, uint8_t length) { - // data = [ command_id, channel_id, value_id, value_data ] - uint8_t *command_id = &(data[0]); - uint8_t *channel_id = &(data[1]); - uint8_t *value_id_and_data = &(data[2]); - - if ( *channel_id == id_custom_channel ) { - switch ( *command_id ) - { - case id_custom_set_value: - { - secondrow_config_set_value(value_id_and_data); - break; - } - case id_custom_get_value: - { - secondrow_config_get_value(value_id_and_data); - break; - } - case id_custom_save: - { - secondrow_config_save(); - break; - } - default: - { - // Unhandled message. - *command_id = id_unhandled; - break; - } - } - return; - } - - // Return the unhandled state - *command_id = id_unhandled; - - // DO NOT call raw_hid_send(data,length) here, let caller do this -} -#endif From cd374b1500b6d581c133f18d45a4a774d9e0f313 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 29 Jun 2024 13:07:42 +1000 Subject: [PATCH 146/519] `clueboard/card`: Swap layout and alias (#24007) --- keyboards/clueboard/card/keyboard.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/clueboard/card/keyboard.json b/keyboards/clueboard/card/keyboard.json index 106b6f823da..0425819ed7a 100644 --- a/keyboards/clueboard/card/keyboard.json +++ b/keyboards/clueboard/card/keyboard.json @@ -43,10 +43,10 @@ "levels": 6 }, "layout_aliases": { - "LAYOUT": "LAYOUT_all" + "LAYOUT_all": "LAYOUT" }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"label": "ON/OFF", "matrix": [0, 0], "x": 0, "y": 0}, {"label": "SAT+", "matrix": [0, 1], "x": 4, "y": 0}, From 9ca1f35333e3fef675096c3ba6d149f9164af2e0 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 29 Jun 2024 04:16:52 +0100 Subject: [PATCH 147/519] Relocate winry315 VIA logic (#24008) --- keyboards/winry/winry315/keymaps/via/keymap.c | 5 +++++ keyboards/winry/winry315/winry315.c | 12 ++---------- keyboards/winry/winry315/winry315.h | 14 ++++++-------- 3 files changed, 13 insertions(+), 18 deletions(-) diff --git a/keyboards/winry/winry315/keymaps/via/keymap.c b/keyboards/winry/winry315/keymaps/via/keymap.c index 0641fbfd03e..4585f46fb6c 100644 --- a/keyboards/winry/winry315/keymaps/via/keymap.c +++ b/keyboards/winry/winry315/keymaps/via/keymap.c @@ -37,3 +37,8 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { [2 ... 7] = { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) } }; #endif + +// The enum values are assumed to match the layout option values used by VIA. +void via_set_layout_options_kb(uint32_t value) { + winry315_set_orientation(value & 0x03); +} diff --git a/keyboards/winry/winry315/winry315.c b/keyboards/winry/winry315/winry315.c index e7901a2e004..03621d3e3fd 100644 --- a/keyboards/winry/winry315/winry315.c +++ b/keyboards/winry/winry315/winry315.c @@ -3,13 +3,11 @@ #include "winry315.h" -#include "via.h" - #if !defined(WINRY315_DEFAULT_ORIENTATION) # define WINRY315_DEFAULT_ORIENTATION WINRY315_ORIENTATION_TOP #endif -#if !defined(VIA_ENABLE) && defined(ENCODER_ENABLE) +#if defined(ENCODER_ENABLE) && !defined(ENCODER_MAP_ENABLE) # ifndef MEDIA_KEY_DELAY # define MEDIA_KEY_DELAY 10 # endif @@ -41,7 +39,7 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { } return true; } -#endif // !defined(VIA_ENABLE) && defined(ENCODER_ENABLE) +#endif // defined(ENCODER_ENABLE) && !defined(ENCODER_MAP_ENABLE) #if defined(RGB_MATRIX_ENABLE) @@ -200,9 +198,3 @@ void winry315_set_orientation(uint8_t orientation) { } #endif // defined(RGB_MATRIX_ENABLE) } - -#if defined(VIA_ENABLE) -void via_set_layout_options_kb(uint32_t value) { - winry315_set_orientation(value & 0x03); -} -#endif // defined(VIA_ENABLE) diff --git a/keyboards/winry/winry315/winry315.h b/keyboards/winry/winry315/winry315.h index 8129c9d6e0f..ea7b4120e24 100644 --- a/keyboards/winry/winry315/winry315.h +++ b/keyboards/winry/winry315/winry315.h @@ -5,8 +5,7 @@ #include "quantum.h" -// Supported orientations of the board. The enum values must match the layout -// option values used by VIA. +// Supported orientations of the board. enum winry315_orientation { WINRY315_ORIENTATION_TOP, // Encoders at the top side (default) WINRY315_ORIENTATION_LEFT, // Encoders at the left side @@ -17,10 +16,9 @@ enum winry315_orientation { // Set the orientation of the board (changes the RGB Matrix effect behavior to // match the new orientation). // -// This function is intended to be used in the `via` keymap, where the board -// orientation is configured dynamically using a VIA layout option. If you are -// making a custom keymap for one specific orientation, it is better to set the -// orientation in config.h (e.g., `#define WINRY315_DEFAULT_ORIENTATION -// WINRY315_ORIENTATION_LEFT`) instead of adding custom code that calls this -// function. +// This function is intended to be used to configure the orientation +// dynamically. If you are making a custom keymap for one specific orientation, +// it is better to set the orientation in config.h +// (e.g., `#define WINRY315_DEFAULT_ORIENTATION WINRY315_ORIENTATION_LEFT`) +// instead of adding custom code that calls this function. void winry315_set_orientation(uint8_t orientation); From 7bc53b8baad73c05d9587eefd3a215c06d4de9a5 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 29 Jun 2024 04:20:08 +0100 Subject: [PATCH 148/519] Relocate m256ws VIA logic (#24009) --- keyboards/mode/m256ws/config.h | 2 - keyboards/mode/m256ws/keymaps/via/config.h | 20 +++ keyboards/mode/m256ws/keymaps/via/keymap.c | 132 ++++++++++++++++++ keyboards/mode/m256ws/m256ws.c | 153 --------------------- 4 files changed, 152 insertions(+), 155 deletions(-) create mode 100644 keyboards/mode/m256ws/keymaps/via/config.h delete mode 100644 keyboards/mode/m256ws/m256ws.c diff --git a/keyboards/mode/m256ws/config.h b/keyboards/mode/m256ws/config.h index 06f1658ea52..5bb3d6d1f38 100644 --- a/keyboards/mode/m256ws/config.h +++ b/keyboards/mode/m256ws/config.h @@ -23,5 +23,3 @@ along with this program. If not, see . #define WS2812_PWM_PAL_MODE 1 #define WS2812_PWM_DMA_STREAM STM32_DMA2_STREAM5 #define WS2812_PWM_DMA_CHANNEL 6 - -#define EECONFIG_KB_DATA_SIZE (1) diff --git a/keyboards/mode/m256ws/keymaps/via/config.h b/keyboards/mode/m256ws/keymaps/via/config.h new file mode 100644 index 00000000000..31dfebf49af --- /dev/null +++ b/keyboards/mode/m256ws/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* +Copyright 2022 Gondolindrim + +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 . +*/ + +#pragma once + +#define EECONFIG_USER_DATA_SIZE (1) diff --git a/keyboards/mode/m256ws/keymaps/via/keymap.c b/keyboards/mode/m256ws/keymaps/via/keymap.c index ab77f7af20e..6766852f78d 100644 --- a/keyboards/mode/m256ws/keymaps/via/keymap.c +++ b/keyboards/mode/m256ws/keymaps/via/keymap.c @@ -31,3 +31,135 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS ) }; + +bool is_second_rgb_row_active; + +enum via_secondrow_enable { + id_is_second_rgb_row_active = 0 +}; + +// Sets the second RGB row on or off; done by setting effect range. +void set_second_rgb_row(bool is_active) { + rgblight_disable_noeeprom(); + switch (is_active) + { + case true: + { + rgblight_set_effect_range(0,30); + break; + } + case false: + { + rgblight_set_effect_range(0,15); + break; + } + } + rgblight_enable_noeeprom(); +} + +// At the keyboard start, retrieves PMEM stored configs +void keyboard_post_init_user(void) { + rgblight_disable_noeeprom(); + wait_ms(20); + eeconfig_read_user_datablock(&is_second_rgb_row_active); + set_second_rgb_row(is_second_rgb_row_active); + rgblight_reload_from_eeprom(); + rgblight_set(); +} + +void eeconfig_init_user(void) { // EEPROM is getting reset! + // rgblight_disable(); // Enable RGB by default + // Define the defualt value and write it to EEPROM + is_second_rgb_row_active = true; + set_second_rgb_row(is_second_rgb_row_active); + eeconfig_update_user_datablock(&is_second_rgb_row_active); + + // Disable rgblight by default on EEPROM initialization + rgblight_disable(); +} + +void secondrow_config_set_value( uint8_t *data ) +{ + // data = [ value_id, value_data ] + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + + switch ( *value_id ) + { + case id_is_second_rgb_row_active: + { + is_second_rgb_row_active = (bool) *value_data; + break; + } + default: + { + is_second_rgb_row_active = true; + } + } + set_second_rgb_row(is_second_rgb_row_active); +} + +void secondrow_config_get_value( uint8_t *data ) +{ + // data = [ value_id, value_data ] + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + + switch ( *value_id ) + { + case id_is_second_rgb_row_active: + { + *value_data = is_second_rgb_row_active; + break; + } + default: + { + *value_data = false; + } + } +} + +void secondrow_config_save(void) +{ + eeconfig_update_user_datablock(&is_second_rgb_row_active); +} + +void via_custom_value_command_kb(uint8_t *data, uint8_t length) { + // data = [ command_id, channel_id, value_id, value_data ] + uint8_t *command_id = &(data[0]); + uint8_t *channel_id = &(data[1]); + uint8_t *value_id_and_data = &(data[2]); + + if ( *channel_id == id_custom_channel ) { + switch ( *command_id ) + { + case id_custom_set_value: + { + secondrow_config_set_value(value_id_and_data); + break; + } + case id_custom_get_value: + { + secondrow_config_get_value(value_id_and_data); + break; + } + case id_custom_save: + { + secondrow_config_save(); + break; + } + default: + { + // Unhandled message. + *command_id = id_unhandled; + break; + } + } + return; + } + + // Return the unhandled state + *command_id = id_unhandled; + + // DO NOT call raw_hid_send(data,length) here, let caller do this +} diff --git a/keyboards/mode/m256ws/m256ws.c b/keyboards/mode/m256ws/m256ws.c deleted file mode 100644 index 5603de7b01b..00000000000 --- a/keyboards/mode/m256ws/m256ws.c +++ /dev/null @@ -1,153 +0,0 @@ -/* Copyright 2022 Gondolindrim - * - * 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 . - */ - -#include "quantum.h" - -#ifdef VIA_ENABLE -bool is_second_rgb_row_active; -enum via_secondrow_enable { - id_is_second_rgb_row_active = 0 -}; - -// Sets the second RGB row on or off; done by setting effect range. -void set_second_rgb_row(bool is_active) { - rgblight_disable_noeeprom(); - switch (is_active) - { - case true: - { - rgblight_set_effect_range(0,30); - break; - } - case false: - { - rgblight_set_effect_range(0,15); - break; - } - } - rgblight_enable_noeeprom(); -} - -// At the keyboard start, retrieves PMEM stored configs -void keyboard_post_init_kb(void) { - rgblight_disable_noeeprom(); - wait_ms(20); - eeconfig_read_kb_datablock(&is_second_rgb_row_active); - set_second_rgb_row(is_second_rgb_row_active); - rgblight_reload_from_eeprom(); - rgblight_set(); -} - -void eeconfig_init_kb(void) { // EEPROM is getting reset! - // rgblight_disable(); // Enable RGB by default - // Define the defualt value and write it to EEPROM - is_second_rgb_row_active = true; - set_second_rgb_row(is_second_rgb_row_active); - eeconfig_update_kb_datablock(&is_second_rgb_row_active); - - // Disable rgblight by default on EEPROM initialization - rgblight_disable(); - - // Run user code, if any - eeconfig_init_user(); -} - -void secondrow_config_set_value( uint8_t *data ) -{ - // data = [ value_id, value_data ] - uint8_t *value_id = &(data[0]); - uint8_t *value_data = &(data[1]); - - switch ( *value_id ) - { - case id_is_second_rgb_row_active: - { - is_second_rgb_row_active = (bool) *value_data; - break; - } - default: - { - is_second_rgb_row_active = true; - } - } - set_second_rgb_row(is_second_rgb_row_active); -} - -void secondrow_config_get_value( uint8_t *data ) -{ - // data = [ value_id, value_data ] - uint8_t *value_id = &(data[0]); - uint8_t *value_data = &(data[1]); - - switch ( *value_id ) - { - case id_is_second_rgb_row_active: - { - *value_data = is_second_rgb_row_active; - break; - } - default: - { - *value_data = false; - } - } -} - -void secondrow_config_save(void) -{ - - eeconfig_update_kb_datablock(&is_second_rgb_row_active); -} - -void via_custom_value_command_kb(uint8_t *data, uint8_t length) { - // data = [ command_id, channel_id, value_id, value_data ] - uint8_t *command_id = &(data[0]); - uint8_t *channel_id = &(data[1]); - uint8_t *value_id_and_data = &(data[2]); - - if ( *channel_id == id_custom_channel ) { - switch ( *command_id ) - { - case id_custom_set_value: - { - secondrow_config_set_value(value_id_and_data); - break; - } - case id_custom_get_value: - { - secondrow_config_get_value(value_id_and_data); - break; - } - case id_custom_save: - { - secondrow_config_save(); - break; - } - default: - { - // Unhandled message. - *command_id = id_unhandled; - break; - } - } - return; - } - - // Return the unhandled state - *command_id = id_unhandled; - -} -#endif // VIA ENABLE From af8fe44e0fc3dc461a9fdf85c601c012b5a517eb Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 29 Jun 2024 14:50:08 +1000 Subject: [PATCH 149/519] `atreus`: misc cleanups (#24010) --- keyboards/atreus/astar_mirrored/config.h | 19 --- keyboards/atreus/atreus.h | 51 -------- keyboards/atreus/feather/config.h | 19 --- keyboards/atreus/info.json | 142 +++++++++++++++------- keyboards/atreus/keymaps/default/keymap.c | 6 +- keyboards/atreus/keymaps/via/keymap.c | 8 +- keyboards/atreus/keymaps/workman/config.h | 1 - keyboards/atreus/keymaps/workman/keymap.c | 6 +- keyboards/atreus/promicro/keyboard.json | 3 +- 9 files changed, 110 insertions(+), 145 deletions(-) delete mode 100644 keyboards/atreus/astar_mirrored/config.h delete mode 100644 keyboards/atreus/atreus.h delete mode 100644 keyboards/atreus/feather/config.h diff --git a/keyboards/atreus/astar_mirrored/config.h b/keyboards/atreus/astar_mirrored/config.h deleted file mode 100644 index 3bd163dec35..00000000000 --- a/keyboards/atreus/astar_mirrored/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2019 - * - * 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 . - */ - -#pragma once - -#define PCBDOWN 1 diff --git a/keyboards/atreus/atreus.h b/keyboards/atreus/atreus.h deleted file mode 100644 index 2a966b86414..00000000000 --- a/keyboards/atreus/atreus.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright 2019 - * - * 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 . - */ -#pragma once - -#include "quantum.h" -#define ___ KC_NO - -// This a shortcut to help you visually see your layout. -// The first section contains all of the arguments. -// The second converts the arguments into a two-dimensional array. -// In the PCBDOWN case we need to swap the middle two keys: k35 and k36. -#if defined(PCBDOWN) -#define LAYOUT( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b \ -) \ -{ \ - { k00, k01, k02, k03, k04, KC_NO, k05, k06, k07, k08, k09 }, \ - { k10, k11, k12, k13, k14, KC_NO, k15, k16, k17, k18, k19 }, \ - { k20, k21, k22, k23, k24, k36, k25, k26, k27, k28, k29 }, \ - { k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b } \ -} -#else -#define LAYOUT( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b \ -) \ -{ \ - { k00, k01, k02, k03, k04, ___, k05, k06, k07, k08, k09 }, \ - { k10, k11, k12, k13, k14, ___, k15, k16, k17, k18, k19 }, \ - { k20, k21, k22, k23, k24, k35, k25, k26, k27, k28, k29 }, \ - { k30, k31, k32, k33, k34, k36, k37, k38, k39, k3a, k3b } \ -} -#endif diff --git a/keyboards/atreus/feather/config.h b/keyboards/atreus/feather/config.h deleted file mode 100644 index 505296a5056..00000000000 --- a/keyboards/atreus/feather/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2019 - * - * 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 . - */ - -#pragma once - -#define OUTPUT_AUTO_ENABLE diff --git a/keyboards/atreus/info.json b/keyboards/atreus/info.json index a0f592105f1..1a33591ab56 100644 --- a/keyboards/atreus/info.json +++ b/keyboards/atreus/info.json @@ -23,58 +23,114 @@ "resync": true } }, + "layout_aliases": { + "LAYOUT": "LAYOUT_pcb_up" + }, "layouts": { - "LAYOUT": { + "LAYOUT_pcb_up": { "layout": [ - {"x": 0, "y": 0.6}, - {"x": 1, "y": 0.35}, - {"x": 2, "y": 0}, - {"x": 3, "y": 0.35}, - {"x": 4, "y": 0.7}, + {"matrix": [0, 0], "x": 0, "y": 0.6}, + {"matrix": [0, 1], "x": 1, "y": 0.35}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0.35}, + {"matrix": [0, 4], "x": 4, "y": 0.7}, - {"x": 8, "y": 0.7}, - {"x": 9, "y": 0.35}, - {"x": 10, "y": 0}, - {"x": 11, "y": 0.35}, - {"x": 12, "y": 0.6}, + {"matrix": [0, 6], "x": 8, "y": 0.7}, + {"matrix": [0, 7], "x": 9, "y": 0.35}, + {"matrix": [0, 8], "x": 10, "y": 0}, + {"matrix": [0, 9], "x": 11, "y": 0.35}, + {"matrix": [0, 10], "x": 12, "y": 0.6}, - {"x": 0, "y": 1.6}, - {"x": 1, "y": 1.35}, - {"x": 2, "y": 1}, - {"x": 3, "y": 1.35}, - {"x": 4, "y": 1.7}, + {"matrix": [1, 0], "x": 0, "y": 1.6}, + {"matrix": [1, 1], "x": 1, "y": 1.35}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1.35}, + {"matrix": [1, 4], "x": 4, "y": 1.7}, - {"x": 8, "y": 1.7}, - {"x": 9, "y": 1.35}, - {"x": 10, "y": 1}, - {"x": 11, "y": 1.35}, - {"x": 12, "y": 1.6}, + {"matrix": [1, 6], "x": 8, "y": 1.7}, + {"matrix": [1, 7], "x": 9, "y": 1.35}, + {"matrix": [1, 8], "x": 10, "y": 1}, + {"matrix": [1, 9], "x": 11, "y": 1.35}, + {"matrix": [1, 10], "x": 12, "y": 1.6}, - {"x": 0, "y": 2.6}, - {"x": 1, "y": 2.35}, - {"x": 2, "y": 2}, - {"x": 3, "y": 2.35}, - {"x": 4, "y": 2.7}, + {"matrix": [2, 0], "x": 0, "y": 2.6}, + {"matrix": [2, 1], "x": 1, "y": 2.35}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2.35}, + {"matrix": [2, 4], "x": 4, "y": 2.7}, - {"x": 8, "y": 2.7}, - {"x": 9, "y": 2.35}, - {"x": 10, "y": 2}, - {"x": 11, "y": 2.35}, - {"x": 12, "y": 2.6}, + {"matrix": [2, 6], "x": 8, "y": 2.7}, + {"matrix": [2, 7], "x": 9, "y": 2.35}, + {"matrix": [2, 8], "x": 10, "y": 2}, + {"matrix": [2, 9], "x": 11, "y": 2.35}, + {"matrix": [2, 10], "x": 12, "y": 2.6}, - {"x": 0, "y": 3.6}, - {"x": 1, "y": 3.35}, - {"x": 2, "y": 3}, - {"x": 3, "y": 3.35}, - {"x": 4, "y": 3.7}, - {"x": 5, "y": 2.95, "h": 1.5}, + {"matrix": [3, 0], "x": 0, "y": 3.6}, + {"matrix": [3, 1], "x": 1, "y": 3.35}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3.35}, + {"matrix": [3, 4], "x": 4, "y": 3.7}, + {"matrix": [2, 5], "x": 5, "y": 2.95, "h": 1.5}, - {"x": 7, "y": 2.95, "h": 1.5}, - {"x": 8, "y": 3.7}, - {"x": 9, "y": 3.35}, - {"x": 10, "y": 3}, - {"x": 11, "y": 3.35}, - {"x": 12, "y": 3.6} + {"matrix": [3, 5], "x": 7, "y": 2.95, "h": 1.5}, + {"matrix": [3, 6], "x": 8, "y": 3.7}, + {"matrix": [3, 7], "x": 9, "y": 3.35}, + {"matrix": [3, 8], "x": 10, "y": 3}, + {"matrix": [3, 9], "x": 11, "y": 3.35}, + {"matrix": [3, 10], "x": 12, "y": 3.6} + ] + }, + "LAYOUT_pcb_down": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.6}, + {"matrix": [0, 1], "x": 1, "y": 0.35}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0.35}, + {"matrix": [0, 4], "x": 4, "y": 0.7}, + + {"matrix": [0, 6], "x": 8, "y": 0.7}, + {"matrix": [0, 7], "x": 9, "y": 0.35}, + {"matrix": [0, 8], "x": 10, "y": 0}, + {"matrix": [0, 9], "x": 11, "y": 0.35}, + {"matrix": [0, 10], "x": 12, "y": 0.6}, + + {"matrix": [1, 0], "x": 0, "y": 1.6}, + {"matrix": [1, 1], "x": 1, "y": 1.35}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1.35}, + {"matrix": [1, 4], "x": 4, "y": 1.7}, + + {"matrix": [1, 6], "x": 8, "y": 1.7}, + {"matrix": [1, 7], "x": 9, "y": 1.35}, + {"matrix": [1, 8], "x": 10, "y": 1}, + {"matrix": [1, 9], "x": 11, "y": 1.35}, + {"matrix": [1, 10], "x": 12, "y": 1.6}, + + {"matrix": [2, 0], "x": 0, "y": 2.6}, + {"matrix": [2, 1], "x": 1, "y": 2.35}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2.35}, + {"matrix": [2, 4], "x": 4, "y": 2.7}, + + {"matrix": [2, 6], "x": 8, "y": 2.7}, + {"matrix": [2, 7], "x": 9, "y": 2.35}, + {"matrix": [2, 8], "x": 10, "y": 2}, + {"matrix": [2, 9], "x": 11, "y": 2.35}, + {"matrix": [2, 10], "x": 12, "y": 2.6}, + + {"matrix": [3, 0], "x": 0, "y": 3.6}, + {"matrix": [3, 1], "x": 1, "y": 3.35}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3.35}, + {"matrix": [3, 4], "x": 4, "y": 3.7}, + {"matrix": [3, 5], "x": 5, "y": 2.95, "h": 1.5}, + + {"matrix": [2, 5], "x": 7, "y": 2.95, "h": 1.5}, + {"matrix": [3, 6], "x": 8, "y": 3.7}, + {"matrix": [3, 7], "x": 9, "y": 3.35}, + {"matrix": [3, 8], "x": 10, "y": 3}, + {"matrix": [3, 9], "x": 11, "y": 3.35}, + {"matrix": [3, 10], "x": 12, "y": 3.6} ] } } diff --git a/keyboards/atreus/keymaps/default/keymap.c b/keyboards/atreus/keymaps/default/keymap.c index ca1333230c9..e4588105372 100644 --- a/keyboards/atreus/keymaps/default/keymap.c +++ b/keyboards/atreus/keymaps/default/keymap.c @@ -12,7 +12,7 @@ #define _LW 2 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QW] = LAYOUT( /* Qwerty */ + [_QW] = LAYOUT_pcb_up( /* Qwerty */ KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P , KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN , KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH , @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * [ ] ( ) & || ` 1 2 3 \ * lower insert super shift bksp ctrl || alt space fn . 0 = */ - [_RS] = LAYOUT( /* [> RAISE <] */ + [_RS] = LAYOUT_pcb_up( /* [> RAISE <] */ KC_EXLM, KC_AT, KC_UP, KC_LCBR, KC_RCBR, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR , KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_DLR, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS , KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_GRV, KC_1, KC_2, KC_3, KC_BSLS , @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * volup reset || F1 F2 F3 F12 * voldn super shift bksp ctrl || alt space L0 prtsc scroll pause */ - [_LW] = LAYOUT( /* [> LOWER <] */ + [_LW] = LAYOUT_pcb_up( /* [> LOWER <] */ KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10 , KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11 , KC_NO, KC_VOLU, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , diff --git a/keyboards/atreus/keymaps/via/keymap.c b/keyboards/atreus/keymaps/via/keymap.c index 52740c5bad9..e6093d7ac10 100644 --- a/keyboards/atreus/keymaps/via/keymap.c +++ b/keyboards/atreus/keymaps/via/keymap.c @@ -27,7 +27,7 @@ enum custom_layers { }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QW] = LAYOUT( /* Qwerty */ + [_QW] = LAYOUT_pcb_up( /* Qwerty */ KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P , KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN , KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH , @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * [ ] ( ) & || ` 1 2 3 \ * lower insert super shift bksp ctrl || alt space fn . 0 = */ - [_RS] = LAYOUT( /* [> RAISE <] */ + [_RS] = LAYOUT_pcb_up( /* [> RAISE <] */ KC_EXLM, KC_AT, KC_UP, KC_LCBR, KC_RCBR, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR , KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_DLR, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS , KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_GRV, KC_1, KC_2, KC_3, KC_BSLS , @@ -51,13 +51,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * volup reset || F1 F2 F3 F12 * voldn super shift bksp ctrl || alt space L0 prtsc scroll pause */ - [_LW] = LAYOUT( /* [> LOWER <] */ + [_LW] = LAYOUT_pcb_up( /* [> LOWER <] */ KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10 , KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11 , KC_NO, KC_VOLU, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , KC_NO, KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC, TO(_QW), KC_PSCR, KC_SCRL, KC_PAUS ), - [_EM] = LAYOUT( /* [> EMPTY <] */ + [_EM] = LAYOUT_pcb_up( /* [> EMPTY <] */ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS , diff --git a/keyboards/atreus/keymaps/workman/config.h b/keyboards/atreus/keymaps/workman/config.h index cf0b5e2ac51..f75e442456b 100644 --- a/keyboards/atreus/keymaps/workman/config.h +++ b/keyboards/atreus/keymaps/workman/config.h @@ -1,3 +1,2 @@ #define TAPPING_TOGGLE 1 #define ONESHOT_TAP_TOGGLE 1 -#define PCBDOWN 1 diff --git a/keyboards/atreus/keymaps/workman/keymap.c b/keyboards/atreus/keymaps/workman/keymap.c index c0633f6362b..e8b5b6b4e36 100644 --- a/keyboards/atreus/keymaps/workman/keymap.c +++ b/keyboards/atreus/keymaps/workman/keymap.c @@ -25,7 +25,7 @@ enum custom_keycodes { */ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QW] = LAYOUT( /* Workman */ + [_QW] = LAYOUT_pcb_down( /* Workman */ KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_SCLN, KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, KC_Z, KC_X, KC_M, KC_C, KC_V, KC_K, KC_L, KC_COMM, KC_DOT, KC_SLSH, @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * menu caps < > del || _ 0 = */ - [_RS] = LAYOUT( /* [> RAISE <] */ + [_RS] = LAYOUT_pcb_down( /* [> RAISE <] */ KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_MINS, KC_7, KC_8, KC_9, KC_ASTR, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, KC_DOT, KC_4, KC_5, KC_6, KC_PLUS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * || – ¨ reset */ - [_LW] = LAYOUT( /* [> LOWER <] */ + [_LW] = LAYOUT_pcb_down( /* [> LOWER <] */ KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_VOLU, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_VOLD, KC_F4, KC_F5, KC_F6, KC_F11, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_F1, KC_F2, KC_F3, KC_F12, diff --git a/keyboards/atreus/promicro/keyboard.json b/keyboards/atreus/promicro/keyboard.json index e614b4e2a0a..10c0ca1b22a 100644 --- a/keyboards/atreus/promicro/keyboard.json +++ b/keyboards/atreus/promicro/keyboard.json @@ -4,6 +4,5 @@ "rows": ["F4", "B2", "B4", "B5"] }, "diode_direction": "COL2ROW", - "processor": "atmega32u4", - "bootloader": "caterina" + "development_board": "promicro" } From 086e8e938e415551d4f2e97557e8e9a38cd52302 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 29 Jun 2024 16:00:05 +1000 Subject: [PATCH 150/519] `tzarc/djinn`: adjust layout name (#24012) --- keyboards/tzarc/djinn/info.json | 5 ++++- keyboards/tzarc/djinn/keymaps/default/keymap.c | 8 ++++---- keyboards/tzarc/djinn/keymaps/via/keymap.c | 8 ++++---- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/keyboards/tzarc/djinn/info.json b/keyboards/tzarc/djinn/info.json index be0710ebef4..b173a18de13 100644 --- a/keyboards/tzarc/djinn/info.json +++ b/keyboards/tzarc/djinn/info.json @@ -70,8 +70,11 @@ {"pin_a": "C14", "pin_b": "C15", "resolution": 2} ] }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "label": "Esc", "x": 0, "y": 0.88}, {"matrix": [0, 1], "label": "1", "x": 1, "y": 0.63}, diff --git a/keyboards/tzarc/djinn/keymaps/default/keymap.c b/keyboards/tzarc/djinn/keymaps/default/keymap.c index 626233946c7..972b9c97a67 100644 --- a/keyboards/tzarc/djinn/keymaps/default/keymap.c +++ b/keyboards/tzarc/djinn/keymaps/default/keymap.c @@ -11,7 +11,7 @@ enum { _QWERTY, _LOWER, _RAISE, _ADJUST }; // clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QWERTY] = LAYOUT_all( + [_QWERTY] = LAYOUT( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_GRV, KC_DEL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, _______, KC_RIGHT, KC_LEFT, _______, KC_RIGHT, KC_DOWN, KC_DOWN ), - [_LOWER] = LAYOUT_all( + [_LOWER] = LAYOUT( KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______ ), - [_RAISE] = LAYOUT_all( + [_RAISE] = LAYOUT( KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______,_______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,KC_LEFT, KC_DOWN, KC_RIGHT,_______, KC_UNDS, KC_NO, KC_NO, KC_EQL, _______, _______, _______, _______, _______, @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______ ), - [_ADJUST] = LAYOUT_all( + [_ADJUST] = LAYOUT( _______, KC_CAPS, KC_NUM, KC_SCRL, _______, _______, _______, _______, _______, _______, _______, DB_TOGG, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/tzarc/djinn/keymaps/via/keymap.c b/keyboards/tzarc/djinn/keymaps/via/keymap.c index 626233946c7..972b9c97a67 100644 --- a/keyboards/tzarc/djinn/keymaps/via/keymap.c +++ b/keyboards/tzarc/djinn/keymaps/via/keymap.c @@ -11,7 +11,7 @@ enum { _QWERTY, _LOWER, _RAISE, _ADJUST }; // clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QWERTY] = LAYOUT_all( + [_QWERTY] = LAYOUT( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_GRV, KC_DEL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, _______, KC_RIGHT, KC_LEFT, _______, KC_RIGHT, KC_DOWN, KC_DOWN ), - [_LOWER] = LAYOUT_all( + [_LOWER] = LAYOUT( KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______ ), - [_RAISE] = LAYOUT_all( + [_RAISE] = LAYOUT( KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______,_______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,KC_LEFT, KC_DOWN, KC_RIGHT,_______, KC_UNDS, KC_NO, KC_NO, KC_EQL, _______, _______, _______, _______, _______, @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______ ), - [_ADJUST] = LAYOUT_all( + [_ADJUST] = LAYOUT( _______, KC_CAPS, KC_NUM, KC_SCRL, _______, _______, _______, _______, _______, _______, _______, DB_TOGG, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, From 2bde8ce2068240531baf79c23b83878bb19ed0a0 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 29 Jun 2024 16:54:52 +1000 Subject: [PATCH 151/519] `ez_maker`: adjust layout names (#24015) --- keyboards/ez_maker/directpins/promicro/keyboard.json | 5 ++++- .../ez_maker/directpins/promicro/keymaps/default/keymap.json | 2 +- keyboards/ez_maker/directpins/proton_c/keyboard.json | 5 ++++- .../ez_maker/directpins/proton_c/keymaps/default/keymap.json | 2 +- keyboards/ez_maker/directpins/rp2040/keyboard.json | 5 ++++- .../ez_maker/directpins/rp2040/keymaps/default/keymap.json | 2 +- keyboards/ez_maker/directpins/teensy_2/keyboard.json | 5 ++++- .../ez_maker/directpins/teensy_2/keymaps/default/keymap.json | 2 +- keyboards/ez_maker/directpins/teensy_2pp/keyboard.json | 5 ++++- .../directpins/teensy_2pp/keymaps/default/keymap.json | 2 +- keyboards/ez_maker/directpins/teensy_32/keyboard.json | 5 ++++- .../directpins/teensy_32/keymaps/default/keymap.json | 2 +- keyboards/ez_maker/directpins/teensy_lc/keyboard.json | 5 ++++- .../directpins/teensy_lc/keymaps/default/keymap.json | 2 +- 14 files changed, 35 insertions(+), 14 deletions(-) diff --git a/keyboards/ez_maker/directpins/promicro/keyboard.json b/keyboards/ez_maker/directpins/promicro/keyboard.json index f6170810c7b..aee1c0b99ff 100644 --- a/keyboards/ez_maker/directpins/promicro/keyboard.json +++ b/keyboards/ez_maker/directpins/promicro/keyboard.json @@ -27,8 +27,11 @@ "pid": "0x2320", "vid": "0xFEED" }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"label": "D3", "matrix": [0, 0], "x": 0, "y": 0}, {"label": "D2", "matrix": [1, 0], "x": 0, "y": 1}, diff --git a/keyboards/ez_maker/directpins/promicro/keymaps/default/keymap.json b/keyboards/ez_maker/directpins/promicro/keymaps/default/keymap.json index f39a5802b9e..cf1d83c070f 100644 --- a/keyboards/ez_maker/directpins/promicro/keymaps/default/keymap.json +++ b/keyboards/ez_maker/directpins/promicro/keymaps/default/keymap.json @@ -1,7 +1,7 @@ { "keyboard": "ez_maker/directpins/promicro", "keymap": "default", - "layout": "LAYOUT_all", + "layout": "LAYOUT", "layers": [ [ "KC_0", diff --git a/keyboards/ez_maker/directpins/proton_c/keyboard.json b/keyboards/ez_maker/directpins/proton_c/keyboard.json index 4a46d4e1791..8133beabfb9 100644 --- a/keyboards/ez_maker/directpins/proton_c/keyboard.json +++ b/keyboards/ez_maker/directpins/proton_c/keyboard.json @@ -33,8 +33,11 @@ "pid": "0x2321", "vid": "0xFEED" }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"label": "A9", "matrix": [0, 0], "x": 0, "y": 0}, {"label": "A10", "matrix": [1, 0], "x": 0, "y": 1}, diff --git a/keyboards/ez_maker/directpins/proton_c/keymaps/default/keymap.json b/keyboards/ez_maker/directpins/proton_c/keymaps/default/keymap.json index 7af6d447625..532f5636929 100644 --- a/keyboards/ez_maker/directpins/proton_c/keymaps/default/keymap.json +++ b/keyboards/ez_maker/directpins/proton_c/keymaps/default/keymap.json @@ -1,7 +1,7 @@ { "keyboard": "ez_maker/directpins/proton_c", "keymap": "default", - "layout": "LAYOUT_all", + "layout": "LAYOUT", "layers": [ [ "KC_0", diff --git a/keyboards/ez_maker/directpins/rp2040/keyboard.json b/keyboards/ez_maker/directpins/rp2040/keyboard.json index bfbec888fbd..f48c737d0f6 100644 --- a/keyboards/ez_maker/directpins/rp2040/keyboard.json +++ b/keyboards/ez_maker/directpins/rp2040/keyboard.json @@ -38,8 +38,11 @@ "pid": "0x2326", "vid": "0xFEED" }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"label": "GP0", "matrix": [0, 0], "x": 0, "y": 0}, {"label": "GP1", "matrix": [1, 0], "x": 0, "y": 1}, diff --git a/keyboards/ez_maker/directpins/rp2040/keymaps/default/keymap.json b/keyboards/ez_maker/directpins/rp2040/keymaps/default/keymap.json index 3bae28a3609..7cd6dffb065 100644 --- a/keyboards/ez_maker/directpins/rp2040/keymaps/default/keymap.json +++ b/keyboards/ez_maker/directpins/rp2040/keymaps/default/keymap.json @@ -1,7 +1,7 @@ { "keyboard": "ez_maker/directpins/rp2040", "keymap": "default", - "layout": "LAYOUT_all", + "layout": "LAYOUT", "layers": [ [ "KC_0", diff --git a/keyboards/ez_maker/directpins/teensy_2/keyboard.json b/keyboards/ez_maker/directpins/teensy_2/keyboard.json index de75c644c7c..525b90aed07 100644 --- a/keyboards/ez_maker/directpins/teensy_2/keyboard.json +++ b/keyboards/ez_maker/directpins/teensy_2/keyboard.json @@ -30,8 +30,11 @@ "pid": "0x2322", "vid": "0xFEED" }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"label": "B0", "matrix": [0, 0], "x": 0, "y": 0}, {"label": "F0", "matrix": [0, 1], "x": 4, "y": 0}, {"label": "B1", "matrix": [1, 0], "x": 0, "y": 1}, {"label": "F1", "matrix": [1, 1], "x": 4, "y": 1}, diff --git a/keyboards/ez_maker/directpins/teensy_2/keymaps/default/keymap.json b/keyboards/ez_maker/directpins/teensy_2/keymaps/default/keymap.json index 9af03008e9a..63e9ea926c8 100644 --- a/keyboards/ez_maker/directpins/teensy_2/keymaps/default/keymap.json +++ b/keyboards/ez_maker/directpins/teensy_2/keymaps/default/keymap.json @@ -1,7 +1,7 @@ { "keyboard": "ez_maker/directpins/teensy_2", "keymap": "default", - "layout": "LAYOUT_all", + "layout": "LAYOUT", "layers": [ [ "KC_0", "KC_1", diff --git a/keyboards/ez_maker/directpins/teensy_2pp/keyboard.json b/keyboards/ez_maker/directpins/teensy_2pp/keyboard.json index af288ebdbcc..924cf221ae5 100644 --- a/keyboards/ez_maker/directpins/teensy_2pp/keyboard.json +++ b/keyboards/ez_maker/directpins/teensy_2pp/keyboard.json @@ -37,8 +37,11 @@ "pid": "0x2323", "vid": "0xFEED" }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"label": "B7", "matrix": [0, 0], "x": 0, "y": 0}, {"label": "B6", "matrix": [0, 3], "x": 5, "y": 0}, {"label": "D0", "matrix": [1, 0], "x": 0, "y": 1}, {"label": "B5", "matrix": [1, 3], "x": 5, "y": 1}, diff --git a/keyboards/ez_maker/directpins/teensy_2pp/keymaps/default/keymap.json b/keyboards/ez_maker/directpins/teensy_2pp/keymaps/default/keymap.json index 80de4c7ce49..bbaeee04816 100644 --- a/keyboards/ez_maker/directpins/teensy_2pp/keymaps/default/keymap.json +++ b/keyboards/ez_maker/directpins/teensy_2pp/keymaps/default/keymap.json @@ -1,7 +1,7 @@ { "keyboard": "ez_maker/directpins/teensy_2pp", "keymap": "default", - "layout": "LAYOUT_all", + "layout": "LAYOUT", "layers": [ [ "KC_0", "KC_1", diff --git a/keyboards/ez_maker/directpins/teensy_32/keyboard.json b/keyboards/ez_maker/directpins/teensy_32/keyboard.json index 917780d3a90..709da9ab418 100644 --- a/keyboards/ez_maker/directpins/teensy_32/keyboard.json +++ b/keyboards/ez_maker/directpins/teensy_32/keyboard.json @@ -31,8 +31,11 @@ "pid": "0x2324", "vid": "0xFEED" }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"label": "0", "matrix": [0, 0], "x": 0, "y": 0}, {"label": "1", "matrix": [1, 0], "x": 0, "y": 1}, diff --git a/keyboards/ez_maker/directpins/teensy_32/keymaps/default/keymap.json b/keyboards/ez_maker/directpins/teensy_32/keymaps/default/keymap.json index 4b289997c3c..3a5fd6f29e2 100644 --- a/keyboards/ez_maker/directpins/teensy_32/keymaps/default/keymap.json +++ b/keyboards/ez_maker/directpins/teensy_32/keymaps/default/keymap.json @@ -1,7 +1,7 @@ { "keyboard": "ez_maker/directpins/teensy_32", "keymap": "default", - "layout": "LAYOUT_all", + "layout": "LAYOUT", "layers": [ [ "KC_0", diff --git a/keyboards/ez_maker/directpins/teensy_lc/keyboard.json b/keyboards/ez_maker/directpins/teensy_lc/keyboard.json index 53e7ba39741..6fd2b45a991 100644 --- a/keyboards/ez_maker/directpins/teensy_lc/keyboard.json +++ b/keyboards/ez_maker/directpins/teensy_lc/keyboard.json @@ -31,8 +31,11 @@ "pid": "0x2325", "vid": "0xFEED" }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"label": "0", "matrix": [0, 0], "x": 0, "y": 0}, {"label": "1", "matrix": [1, 0], "x": 0, "y": 1}, diff --git a/keyboards/ez_maker/directpins/teensy_lc/keymaps/default/keymap.json b/keyboards/ez_maker/directpins/teensy_lc/keymaps/default/keymap.json index e2f557adf55..5a6ca52003a 100644 --- a/keyboards/ez_maker/directpins/teensy_lc/keymaps/default/keymap.json +++ b/keyboards/ez_maker/directpins/teensy_lc/keymaps/default/keymap.json @@ -1,7 +1,7 @@ { "keyboard": "ez_maker/directpins/teensy_lc", "keymap": "default", - "layout": "LAYOUT_all", + "layout": "LAYOUT", "layers": [ [ "KC_0", From 07253bfe4aa2e7a59c6dd88a0d0db951ac0c7add Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 29 Jun 2024 09:33:20 +0100 Subject: [PATCH 152/519] Relocate work_louder VIA logic (#24011) --- keyboards/work_louder/rgb_functions.h | 82 ++++++------------- keyboards/work_louder/work_board/config.h | 2 - .../work_board/keymaps/via/config.h | 4 + .../work_board/keymaps/via/keymap.c | 18 ++++ keyboards/work_louder/work_board/work_board.c | 15 ---- 5 files changed, 48 insertions(+), 73 deletions(-) diff --git a/keyboards/work_louder/rgb_functions.h b/keyboards/work_louder/rgb_functions.h index eaef787a222..20c99021fb0 100644 --- a/keyboards/work_louder/rgb_functions.h +++ b/keyboards/work_louder/rgb_functions.h @@ -18,62 +18,32 @@ #include "keycodes.h" -#ifndef VIA_ENABLE -# ifndef RGB_MATRIX_TOGGLE -# define RGB_MATRIX_TOGGLE KC_F15 -# endif -# ifndef RGB_MATRIX_MODE_INC -# define RGB_MATRIX_MODE_INC KC_F16 -# endif -# ifndef RGB_MATRIX_MODE_DEC -# define RGB_MATRIX_MODE_DEC KC_F17 -# endif -# ifndef RGB_MATRIX_HUE_INC -# define RGB_MATRIX_HUE_INC KC_F18 -# endif -# ifndef RGB_MATRIX_HUE_DEC -# define RGB_MATRIX_HUE_DEC KC_F19 -# endif -# ifndef RGB_MATRIX_SAT_INC -# define RGB_MATRIX_SAT_INC KC_F20 -# endif -# ifndef RGB_MATRIX_SAT_DEC -# define RGB_MATRIX_SAT_DEC KC_F21 -# endif -# ifndef RGB_MATRIX_VAL_INC -# define RGB_MATRIX_VAL_INC KC_F22 -# endif -# ifndef RGB_MATRIX_VAL_DEC -# define RGB_MATRIX_VAL_DEC KC_F23 -# endif -#else -# ifndef RGB_MATRIX_TOGGLE -# define RGB_MATRIX_TOGGLE QK_KB_0 -# endif -# ifndef RGB_MATRIX_MODE_INC -# define RGB_MATRIX_MODE_INC QK_KB_1 -# endif -# ifndef RGB_MATRIX_MODE_DEC -# define RGB_MATRIX_MODE_DEC QK_KB_2 -# endif -# ifndef RGB_MATRIX_HUE_INC -# define RGB_MATRIX_HUE_INC QK_KB_3 -# endif -# ifndef RGB_MATRIX_HUE_DEC -# define RGB_MATRIX_HUE_DEC QK_KB_4 -# endif -# ifndef RGB_MATRIX_SAT_INC -# define RGB_MATRIX_SAT_INC QK_KB_5 -# endif -# ifndef RGB_MATRIX_SAT_DEC -# define RGB_MATRIX_SAT_DEC QK_KB_6 -# endif -# ifndef RGB_MATRIX_VAL_INC -# define RGB_MATRIX_VAL_INC QK_KB_7 -# endif -# ifndef RGB_MATRIX_VAL_DEC -# define RGB_MATRIX_VAL_DEC QK_KB_8 -# endif +#ifndef RGB_MATRIX_TOGGLE +# define RGB_MATRIX_TOGGLE QK_KB_0 +#endif +#ifndef RGB_MATRIX_MODE_INC +# define RGB_MATRIX_MODE_INC QK_KB_1 +#endif +#ifndef RGB_MATRIX_MODE_DEC +# define RGB_MATRIX_MODE_DEC QK_KB_2 +#endif +#ifndef RGB_MATRIX_HUE_INC +# define RGB_MATRIX_HUE_INC QK_KB_3 +#endif +#ifndef RGB_MATRIX_HUE_DEC +# define RGB_MATRIX_HUE_DEC QK_KB_4 +#endif +#ifndef RGB_MATRIX_SAT_INC +# define RGB_MATRIX_SAT_INC QK_KB_5 +#endif +#ifndef RGB_MATRIX_SAT_DEC +# define RGB_MATRIX_SAT_DEC QK_KB_6 +#endif +#ifndef RGB_MATRIX_VAL_INC +# define RGB_MATRIX_VAL_INC QK_KB_7 +#endif +#ifndef RGB_MATRIX_VAL_DEC +# define RGB_MATRIX_VAL_DEC QK_KB_8 #endif #define R_M_TOG RGB_MATRIX_TOGGLE diff --git a/keyboards/work_louder/work_board/config.h b/keyboards/work_louder/work_board/config.h index 2514a63ddec..36dadf6d4e0 100644 --- a/keyboards/work_louder/work_board/config.h +++ b/keyboards/work_louder/work_board/config.h @@ -23,5 +23,3 @@ along with this program. If not, see . #define RGB_MATRIX_LED_COUNT 49 #define RGB_MATRIX_DISABLE_KEYCODES - -#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x1 diff --git a/keyboards/work_louder/work_board/keymaps/via/config.h b/keyboards/work_louder/work_board/keymaps/via/config.h index 7aa3bebe9b8..716aac11aaf 100644 --- a/keyboards/work_louder/work_board/keymaps/via/config.h +++ b/keyboards/work_louder/work_board/keymaps/via/config.h @@ -1,6 +1,10 @@ // Copyright 2023 QMK // SPDX-License-Identifier: GPL-2.0-or-later #pragma once + #define NO_ACTION_ONESHOT + #undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS #undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL + +#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x1 diff --git a/keyboards/work_louder/work_board/keymaps/via/keymap.c b/keyboards/work_louder/work_board/keymaps/via/keymap.c index 255ee3ed789..9ba3dcda4c2 100644 --- a/keyboards/work_louder/work_board/keymaps/via/keymap.c +++ b/keyboards/work_louder/work_board/keymaps/via/keymap.c @@ -214,3 +214,21 @@ void via_custom_value_command_kb(uint8_t *data, uint8_t length) { } *command_id = id_unhandled; } + +bool via_layout_2u = false; + +void via_set_layout_options_kb(uint32_t value) { + via_layout_2u = (bool)value; +} + +#ifdef RGB_MATRIX_ENABLE +bool rgb_matrix_indicators_user(void) { + if (via_layout_2u) { + rgb_matrix_set_color(5, 0, 0, 0); + rgb_matrix_set_color(7, 0, 0, 0); + } else { + rgb_matrix_set_color(6, 0, 0, 0); + } + return false; +} +#endif diff --git a/keyboards/work_louder/work_board/work_board.c b/keyboards/work_louder/work_board/work_board.c index ef36b3171f2..b34f31df5cf 100644 --- a/keyboards/work_louder/work_board/work_board.c +++ b/keyboards/work_louder/work_board/work_board.c @@ -67,27 +67,12 @@ bool oled_task_kb(void) { #endif #ifdef RGB_MATRIX_ENABLE -# ifdef VIA_ENABLE -bool via_layout_2u = false; - -void via_set_layout_options_kb(uint32_t value) { via_layout_2u = (bool)value; } -# endif // VIA_ENABLE - bool rgb_matrix_indicators_kb(void) { if (!rgb_matrix_indicators_user()) { return false; } -# ifdef VIA_ENABLE - if (via_layout_2u) { - rgb_matrix_set_color(5, 0, 0, 0); - rgb_matrix_set_color(7, 0, 0, 0); - } else { - rgb_matrix_set_color(6, 0, 0, 0); - } -# else rgb_matrix_set_color(5, 0, 0, 0); rgb_matrix_set_color(7, 0, 0, 0); -# endif return true; } From 38f72c5d2bbae3be5a1d39284c1579616b097b75 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 29 Jun 2024 10:17:47 +0100 Subject: [PATCH 153/519] Relocate xelus/pachi/rgb/rev2 VIA logic (#24016) --- .../pachi/rgb/{ => rev1}/keymaps/via/config.h | 0 .../pachi/rgb/{ => rev1}/keymaps/via/keymap.c | 0 .../pachi/rgb/{ => rev1}/keymaps/via/rules.mk | 0 keyboards/xelus/pachi/rgb/rev2/config.h | 4 - .../xelus/pachi/rgb/rev2/keymaps/via/config.h | 20 + .../xelus/pachi/rgb/rev2/keymaps/via/keymap.c | 399 ++++++++++++++++++ .../xelus/pachi/rgb/rev2/keymaps/via/rules.mk | 1 + keyboards/xelus/pachi/rgb/rev2/rev2.c | 309 +------------- keyboards/xelus/pachi/rgb/rev2/rev2.h | 72 ---- 9 files changed, 421 insertions(+), 384 deletions(-) rename keyboards/xelus/pachi/rgb/{ => rev1}/keymaps/via/config.h (100%) rename keyboards/xelus/pachi/rgb/{ => rev1}/keymaps/via/keymap.c (100%) rename keyboards/xelus/pachi/rgb/{ => rev1}/keymaps/via/rules.mk (100%) create mode 100644 keyboards/xelus/pachi/rgb/rev2/keymaps/via/config.h create mode 100644 keyboards/xelus/pachi/rgb/rev2/keymaps/via/keymap.c create mode 100644 keyboards/xelus/pachi/rgb/rev2/keymaps/via/rules.mk delete mode 100644 keyboards/xelus/pachi/rgb/rev2/rev2.h diff --git a/keyboards/xelus/pachi/rgb/keymaps/via/config.h b/keyboards/xelus/pachi/rgb/rev1/keymaps/via/config.h similarity index 100% rename from keyboards/xelus/pachi/rgb/keymaps/via/config.h rename to keyboards/xelus/pachi/rgb/rev1/keymaps/via/config.h diff --git a/keyboards/xelus/pachi/rgb/keymaps/via/keymap.c b/keyboards/xelus/pachi/rgb/rev1/keymaps/via/keymap.c similarity index 100% rename from keyboards/xelus/pachi/rgb/keymaps/via/keymap.c rename to keyboards/xelus/pachi/rgb/rev1/keymaps/via/keymap.c diff --git a/keyboards/xelus/pachi/rgb/keymaps/via/rules.mk b/keyboards/xelus/pachi/rgb/rev1/keymaps/via/rules.mk similarity index 100% rename from keyboards/xelus/pachi/rgb/keymaps/via/rules.mk rename to keyboards/xelus/pachi/rgb/rev1/keymaps/via/rules.mk diff --git a/keyboards/xelus/pachi/rgb/rev2/config.h b/keyboards/xelus/pachi/rgb/rev2/config.h index a5fc38e0708..fcf4c41d8a7 100644 --- a/keyboards/xelus/pachi/rgb/rev2/config.h +++ b/keyboards/xelus/pachi/rgb/rev2/config.h @@ -33,7 +33,3 @@ // RGB Matrix defines #define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND #define IS31FL3741_LED_COUNT RGB_MATRIX_LED_COUNT // is31fl3741.h does not set this for custom driver - -// VIA KB level -#define VIA_FIRMWARE_VERSION 1 -#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 17 diff --git a/keyboards/xelus/pachi/rgb/rev2/keymaps/via/config.h b/keyboards/xelus/pachi/rgb/rev2/keymaps/via/config.h new file mode 100644 index 00000000000..abdd8c320c3 --- /dev/null +++ b/keyboards/xelus/pachi/rgb/rev2/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* Copyright 2021 Harrison Chan (Xelus) + * + * 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 . + */ + +#pragma once + +#define VIA_FIRMWARE_VERSION 1 +#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 17 diff --git a/keyboards/xelus/pachi/rgb/rev2/keymaps/via/keymap.c b/keyboards/xelus/pachi/rgb/rev2/keymaps/via/keymap.c new file mode 100644 index 00000000000..f739dc4b6ab --- /dev/null +++ b/keyboards/xelus/pachi/rgb/rev2/keymaps/via/keymap.c @@ -0,0 +1,399 @@ +/* Copyright 2021 Harrison Chan (Xelus) + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "eeprom.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [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, + MO(1), 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), + + [1] = LAYOUT_tkl_ansi_tsangan( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + [2] = LAYOUT_tkl_ansi_tsangan( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +}; + +// custom ID codes +enum via_indicator_value { + id_caps_lock_enable = 1, + id_caps_lock_brightness, + id_caps_lock_color, + id_caps_lock_key, + id_caps_lock_override, + id_num_lock_enable, + id_num_lock_brightness, + id_num_lock_color, + id_num_lock_key, + id_num_lock_override, + id_scroll_lock_enable, + id_scroll_lock_brightness, + id_scroll_lock_color, + id_scroll_lock_key, + id_scroll_lock_override, + id_layer_indicator_enable, + id_layer_indicator_brightness, + id_layer_indicator_color, + id_layer_indicator_key, + id_layer_indicator_override +}; + +// struct to save things +typedef struct { + bool enable_caps_lock:1; // | + bool enable_num_lock:1; // | + bool enable_scroll_lock:1; // | + bool enable_layer_indicator:1; // | + bool caps_override_bl:1; // | + bool num_override_bl:1; // | + bool scroll_override_bl:1; // | + bool layer_override_bl:1; // 1 byte + HSV caps_lock_indicator; // 3 bytes + HSV num_lock_indicator; // 3 bytes + HSV scroll_lock_indicator; // 3 bytes + HSV layer_indicator; // 3 bytes + uint8_t caps_lock_key; // 1 byte + uint8_t num_lock_key; // 1 byte + uint8_t scroll_lock_key; // 1 byte + uint8_t layer_indicator_key;// 1 byte +} indicator_settings_config; +// total 17 bytes + +indicator_settings_config g_config = { + .caps_lock_indicator = {0, 0, 128}, + .num_lock_indicator = {60, 0, 128}, + .scroll_lock_indicator = {120, 0, 128}, + .layer_indicator = {180, 0, 128}, + .caps_lock_key = 7, + .num_lock_key = 0, + .scroll_lock_key = 78, + .layer_indicator_key = 0, + .enable_caps_lock = true, + .enable_num_lock = false, + .enable_scroll_lock = true, + .enable_layer_indicator = false, + .caps_override_bl = true, + .num_override_bl = true, + .scroll_override_bl = true, + .layer_override_bl = true +}; + + +// function declaration +void indicator_config_set_value( uint8_t *data ); +void indicator_config_get_value( uint8_t *data ); +void indicator_config_save ( void ); +void _set_color(HSV *color, uint8_t *data); +void _get_color(HSV *color, uint8_t *data); + +void values_load(void) +{ + eeprom_read_block( &g_config, ((void*)VIA_EEPROM_CUSTOM_CONFIG_ADDR), sizeof(g_config) ); +} + +void values_save(void) +{ + eeprom_update_block( &g_config, ((void*)VIA_EEPROM_CUSTOM_CONFIG_ADDR), sizeof(g_config) ); +} + +void via_init_kb(void) +{ + // If the EEPROM has the magic, the data is good. + // OK to load from EEPROM + if (via_eeprom_is_valid()) { + values_load(); + } else { + values_save(); + // DO NOT set EEPROM valid here, let caller do this + } +} + +void via_custom_value_command_kb(uint8_t *data, uint8_t length) { + // data = [ command_id, channel_id, value_id, value_data ] + uint8_t *command_id = &(data[0]); + uint8_t *channel_id = &(data[1]); + uint8_t *value_id_and_data = &(data[2]); + + if ( *channel_id == id_custom_channel ) { + switch ( *command_id ) + { + case id_custom_set_value: + { + indicator_config_set_value(value_id_and_data); + break; + } + case id_custom_get_value: + { + indicator_config_get_value(value_id_and_data); + break; + } + case id_custom_save: + { + values_save(); + break; + } + default: + { + // Unhandled message. + *command_id = id_unhandled; + break; + } + } + return; + } + + // Return the unhandled state + *command_id = id_unhandled; + + // DO NOT call raw_hid_send(data,length) here, let caller do this +} + +void indicator_config_set_value( uint8_t *data ) +{ + // data = [ value_id, value_data ] + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + + switch ( *value_id ) + { + case id_caps_lock_enable: + g_config.enable_caps_lock = *value_data; + break; + case id_num_lock_enable: + g_config.enable_num_lock = *value_data; + break; + case id_scroll_lock_enable: + g_config.enable_scroll_lock = *value_data; + break; + case id_layer_indicator_enable: + g_config.enable_layer_indicator = *value_data; + break; + case id_caps_lock_brightness: + g_config.caps_lock_indicator.v = *value_data; + break; + case id_num_lock_brightness: + g_config.num_lock_indicator.v = *value_data; + break; + case id_scroll_lock_brightness: + g_config.scroll_lock_indicator.v = *value_data; + break; + case id_layer_indicator_brightness: + g_config.layer_indicator.v = *value_data; + break; + case id_caps_lock_color: + _set_color( &(g_config.caps_lock_indicator), value_data ); + break; + case id_num_lock_color: + _set_color( &(g_config.num_lock_indicator), value_data ); + break; + case id_scroll_lock_color: + _set_color( &(g_config.scroll_lock_indicator), value_data ); + break; + case id_layer_indicator_color: + _set_color( &(g_config.layer_indicator), value_data ); + break; + case id_caps_lock_key: + g_config.caps_lock_key = *value_data; + break; + case id_num_lock_key: + g_config.num_lock_key = *value_data; + break; + case id_scroll_lock_key: + g_config.scroll_lock_key = *value_data; + break; + case id_layer_indicator_key: + g_config.layer_indicator_key = *value_data; + break; + case id_caps_lock_override: + g_config.caps_override_bl = *value_data; + break; + case id_num_lock_override: + g_config.num_override_bl = *value_data; + break; + case id_scroll_lock_override: + g_config.scroll_override_bl = *value_data; + break; + case id_layer_indicator_override: + g_config.layer_override_bl = *value_data; + break; + } +} + +void indicator_config_get_value( uint8_t *data ) +{ + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + + switch ( *value_id ) + { + case id_caps_lock_enable: + *value_data = g_config.enable_caps_lock; + break; + case id_num_lock_enable: + *value_data = g_config.enable_num_lock; + break; + case id_scroll_lock_enable: + *value_data = g_config.enable_scroll_lock; + break; + case id_layer_indicator_enable: + *value_data = g_config.enable_layer_indicator; + break; + case id_caps_lock_brightness: + *value_data = g_config.caps_lock_indicator.v; + break; + case id_num_lock_brightness: + *value_data = g_config.num_lock_indicator.v; + break; + case id_layer_indicator_brightness: + *value_data = g_config.scroll_lock_indicator.v; + break; + case id_scroll_lock_brightness: + *value_data = g_config.layer_indicator.v; + break; + case id_caps_lock_color: + _get_color( &(g_config.caps_lock_indicator), value_data ); + break; + case id_num_lock_color: + _get_color( &(g_config.num_lock_indicator), value_data ); + break; + case id_scroll_lock_color: + _get_color( &(g_config.scroll_lock_indicator), value_data ); + break; + case id_layer_indicator_color: + _get_color( &(g_config.layer_indicator), value_data ); + break; + case id_caps_lock_key: + *value_data = g_config.caps_lock_key; + break; + case id_num_lock_key: + *value_data = g_config.num_lock_key; + break; + case id_scroll_lock_key: + *value_data = g_config.scroll_lock_key; + break; + case id_layer_indicator_key: + *value_data = g_config.layer_indicator_key; + break; + case id_caps_lock_override: + *value_data = g_config.caps_override_bl; + break; + case id_num_lock_override: + *value_data = g_config.num_override_bl; + break; + case id_scroll_lock_override: + *value_data = g_config.scroll_override_bl; + break; + case id_layer_indicator_override: + *value_data = g_config.layer_override_bl; + break; + } +} + +// Some helpers for setting/getting HSV +void _set_color( HSV *color, uint8_t *data ) +{ + color->h = data[0]; + color->s = data[1]; +} + +void _get_color( HSV *color, uint8_t *data ) +{ + data[0] = color->h; + data[1] = color->s; +} + +// Set the indicators with RGB Matrix subsystem +bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { + // caps lock cyan + if (g_config.enable_caps_lock) { + RGB rgb_caps = hsv_to_rgb( (HSV){ .h = g_config.caps_lock_indicator.h, + .s = g_config.caps_lock_indicator.s, + .v = g_config.caps_lock_indicator.v } ); + if (host_keyboard_led_state().caps_lock) { + RGB_MATRIX_INDICATOR_SET_COLOR(g_config.caps_lock_key, rgb_caps.r, rgb_caps.g, rgb_caps.b); + } else { + if (g_config.caps_override_bl) { + RGB_MATRIX_INDICATOR_SET_COLOR(g_config.caps_lock_key, 0, 0, 0); + } + } + } + + // num lock cyan + if (g_config.enable_num_lock) { + RGB rgb_num = hsv_to_rgb( (HSV){ .h = g_config.num_lock_indicator.h, + .s = g_config.num_lock_indicator.s, + .v = g_config.num_lock_indicator.v } ); + if (host_keyboard_led_state().num_lock) { + RGB_MATRIX_INDICATOR_SET_COLOR(g_config.num_lock_key, rgb_num.r, rgb_num.g, rgb_num.b); + } else { + if (g_config.num_override_bl) { + RGB_MATRIX_INDICATOR_SET_COLOR(g_config.num_lock_key, 0, 0, 0); + } + } + } + + // scroll lock cyan + if (g_config.enable_scroll_lock) { + RGB rgb_scroll = hsv_to_rgb( (HSV){ .h = g_config.scroll_lock_indicator.h, + .s = g_config.scroll_lock_indicator.s, + .v = g_config.scroll_lock_indicator.v } ); + if (host_keyboard_led_state().scroll_lock) { + RGB_MATRIX_INDICATOR_SET_COLOR(g_config.scroll_lock_key, rgb_scroll.r, rgb_scroll.g, rgb_scroll.b); + } else { + if (g_config.scroll_override_bl) { + RGB_MATRIX_INDICATOR_SET_COLOR(g_config.scroll_lock_key, 0, 0, 0); + } + } + } + + // layer state + if (g_config.enable_layer_indicator) { + RGB rgb_layer = hsv_to_rgb( (HSV){ .h = g_config.layer_indicator.h, + .s = g_config.layer_indicator.s, + .v = g_config.layer_indicator.v } ); + switch (get_highest_layer(layer_state)) { + case 0: + if (g_config.layer_override_bl) { + RGB_MATRIX_INDICATOR_SET_COLOR(g_config.layer_indicator_key, 0, 0, 0); + } + break; + case 1: + RGB_MATRIX_INDICATOR_SET_COLOR(g_config.layer_indicator_key, rgb_layer.r, rgb_layer.g, rgb_layer.b); + break; + default: + // white + RGB_MATRIX_INDICATOR_SET_COLOR(24, 128, 128, 128); + break; + } + } + return false; +} diff --git a/keyboards/xelus/pachi/rgb/rev2/keymaps/via/rules.mk b/keyboards/xelus/pachi/rgb/rev2/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/xelus/pachi/rgb/rev2/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/xelus/pachi/rgb/rev2/rev2.c b/keyboards/xelus/pachi/rgb/rev2/rev2.c index f595e889c3b..5589b271770 100644 --- a/keyboards/xelus/pachi/rgb/rev2/rev2.c +++ b/keyboards/xelus/pachi/rgb/rev2/rev2.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ -#include "rev2.h" +#include "quantum.h" // tested and working void matrix_io_delay(void) { __asm__ volatile("nop\nnop\nnop\n"); } @@ -239,311 +239,4 @@ const rgb_matrix_driver_t rgb_matrix_driver = { .set_color_all = is31fl3741_set_color_all }; -#ifdef VIA_ENABLE -#include "quantum.h" -#include "eeprom.h" - -indicator_settings_config g_config = { - .caps_lock_indicator = {0, 0, 128}, - .num_lock_indicator = {60, 0, 128}, - .scroll_lock_indicator = {120, 0, 128}, - .layer_indicator = {180, 0, 128}, - .caps_lock_key = 7, - .num_lock_key = 0, - .scroll_lock_key = 78, - .layer_indicator_key = 0, - .enable_caps_lock = true, - .enable_num_lock = false, - .enable_scroll_lock = true, - .enable_layer_indicator = false, - .caps_override_bl = true, - .num_override_bl = true, - .scroll_override_bl = true, - .layer_override_bl = true -}; - -void values_load(void) -{ - eeprom_read_block( &g_config, ((void*)VIA_EEPROM_CUSTOM_CONFIG_ADDR), sizeof(g_config) ); -} - -void values_save(void) -{ - eeprom_update_block( &g_config, ((void*)VIA_EEPROM_CUSTOM_CONFIG_ADDR), sizeof(g_config) ); -} - -void via_init_kb(void) -{ - // If the EEPROM has the magic, the data is good. - // OK to load from EEPROM - if (via_eeprom_is_valid()) { - values_load(); - } else { - values_save(); - // DO NOT set EEPROM valid here, let caller do this - } -} - -void via_custom_value_command_kb(uint8_t *data, uint8_t length) { - // data = [ command_id, channel_id, value_id, value_data ] - uint8_t *command_id = &(data[0]); - uint8_t *channel_id = &(data[1]); - uint8_t *value_id_and_data = &(data[2]); - - if ( *channel_id == id_custom_channel ) { - switch ( *command_id ) - { - case id_custom_set_value: - { - indicator_config_set_value(value_id_and_data); - break; - } - case id_custom_get_value: - { - indicator_config_get_value(value_id_and_data); - break; - } - case id_custom_save: - { - values_save(); - break; - } - default: - { - // Unhandled message. - *command_id = id_unhandled; - break; - } - } - return; - } - - // Return the unhandled state - *command_id = id_unhandled; - - // DO NOT call raw_hid_send(data,length) here, let caller do this -} - -void indicator_config_set_value( uint8_t *data ) -{ - // data = [ value_id, value_data ] - uint8_t *value_id = &(data[0]); - uint8_t *value_data = &(data[1]); - - switch ( *value_id ) - { - case id_caps_lock_enable: - g_config.enable_caps_lock = *value_data; - break; - case id_num_lock_enable: - g_config.enable_num_lock = *value_data; - break; - case id_scroll_lock_enable: - g_config.enable_scroll_lock = *value_data; - break; - case id_layer_indicator_enable: - g_config.enable_layer_indicator = *value_data; - break; - case id_caps_lock_brightness: - g_config.caps_lock_indicator.v = *value_data; - break; - case id_num_lock_brightness: - g_config.num_lock_indicator.v = *value_data; - break; - case id_scroll_lock_brightness: - g_config.scroll_lock_indicator.v = *value_data; - break; - case id_layer_indicator_brightness: - g_config.layer_indicator.v = *value_data; - break; - case id_caps_lock_color: - _set_color( &(g_config.caps_lock_indicator), value_data ); - break; - case id_num_lock_color: - _set_color( &(g_config.num_lock_indicator), value_data ); - break; - case id_scroll_lock_color: - _set_color( &(g_config.scroll_lock_indicator), value_data ); - break; - case id_layer_indicator_color: - _set_color( &(g_config.layer_indicator), value_data ); - break; - case id_caps_lock_key: - g_config.caps_lock_key = *value_data; - break; - case id_num_lock_key: - g_config.num_lock_key = *value_data; - break; - case id_scroll_lock_key: - g_config.scroll_lock_key = *value_data; - break; - case id_layer_indicator_key: - g_config.layer_indicator_key = *value_data; - break; - case id_caps_lock_override: - g_config.caps_override_bl = *value_data; - break; - case id_num_lock_override: - g_config.num_override_bl = *value_data; - break; - case id_scroll_lock_override: - g_config.scroll_override_bl = *value_data; - break; - case id_layer_indicator_override: - g_config.layer_override_bl = *value_data; - break; - } -} - -void indicator_config_get_value( uint8_t *data ) -{ - uint8_t *value_id = &(data[0]); - uint8_t *value_data = &(data[1]); - - switch ( *value_id ) - { - case id_caps_lock_enable: - *value_data = g_config.enable_caps_lock; - break; - case id_num_lock_enable: - *value_data = g_config.enable_num_lock; - break; - case id_scroll_lock_enable: - *value_data = g_config.enable_scroll_lock; - break; - case id_layer_indicator_enable: - *value_data = g_config.enable_layer_indicator; - break; - case id_caps_lock_brightness: - *value_data = g_config.caps_lock_indicator.v; - break; - case id_num_lock_brightness: - *value_data = g_config.num_lock_indicator.v; - break; - case id_layer_indicator_brightness: - *value_data = g_config.scroll_lock_indicator.v; - break; - case id_scroll_lock_brightness: - *value_data = g_config.layer_indicator.v; - break; - case id_caps_lock_color: - _get_color( &(g_config.caps_lock_indicator), value_data ); - break; - case id_num_lock_color: - _get_color( &(g_config.num_lock_indicator), value_data ); - break; - case id_scroll_lock_color: - _get_color( &(g_config.scroll_lock_indicator), value_data ); - break; - case id_layer_indicator_color: - _get_color( &(g_config.layer_indicator), value_data ); - break; - case id_caps_lock_key: - *value_data = g_config.caps_lock_key; - break; - case id_num_lock_key: - *value_data = g_config.num_lock_key; - break; - case id_scroll_lock_key: - *value_data = g_config.scroll_lock_key; - break; - case id_layer_indicator_key: - *value_data = g_config.layer_indicator_key; - break; - case id_caps_lock_override: - *value_data = g_config.caps_override_bl; - break; - case id_num_lock_override: - *value_data = g_config.num_override_bl; - break; - case id_scroll_lock_override: - *value_data = g_config.scroll_override_bl; - break; - case id_layer_indicator_override: - *value_data = g_config.layer_override_bl; - break; - } -} - -// Some helpers for setting/getting HSV -void _set_color( HSV *color, uint8_t *data ) -{ - color->h = data[0]; - color->s = data[1]; -} - -void _get_color( HSV *color, uint8_t *data ) -{ - data[0] = color->h; - data[1] = color->s; -} - -// Set the indicators with RGB Matrix subsystem -bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { - // caps lock cyan - if (g_config.enable_caps_lock) { - RGB rgb_caps = hsv_to_rgb( (HSV){ .h = g_config.caps_lock_indicator.h, - .s = g_config.caps_lock_indicator.s, - .v = g_config.caps_lock_indicator.v } ); - if (host_keyboard_led_state().caps_lock) { - RGB_MATRIX_INDICATOR_SET_COLOR(g_config.caps_lock_key, rgb_caps.r, rgb_caps.g, rgb_caps.b); - } else { - if (g_config.caps_override_bl) { - RGB_MATRIX_INDICATOR_SET_COLOR(g_config.caps_lock_key, 0, 0, 0); - } - } - } - - // num lock cyan - if (g_config.enable_num_lock) { - RGB rgb_num = hsv_to_rgb( (HSV){ .h = g_config.num_lock_indicator.h, - .s = g_config.num_lock_indicator.s, - .v = g_config.num_lock_indicator.v } ); - if (host_keyboard_led_state().num_lock) { - RGB_MATRIX_INDICATOR_SET_COLOR(g_config.num_lock_key, rgb_num.r, rgb_num.g, rgb_num.b); - } else { - if (g_config.num_override_bl) { - RGB_MATRIX_INDICATOR_SET_COLOR(g_config.num_lock_key, 0, 0, 0); - } - } - } - - // scroll lock cyan - if (g_config.enable_scroll_lock) { - RGB rgb_scroll = hsv_to_rgb( (HSV){ .h = g_config.scroll_lock_indicator.h, - .s = g_config.scroll_lock_indicator.s, - .v = g_config.scroll_lock_indicator.v } ); - if (host_keyboard_led_state().scroll_lock) { - RGB_MATRIX_INDICATOR_SET_COLOR(g_config.scroll_lock_key, rgb_scroll.r, rgb_scroll.g, rgb_scroll.b); - } else { - if (g_config.scroll_override_bl) { - RGB_MATRIX_INDICATOR_SET_COLOR(g_config.scroll_lock_key, 0, 0, 0); - } - } - } - - // layer state - if (g_config.enable_layer_indicator) { - RGB rgb_layer = hsv_to_rgb( (HSV){ .h = g_config.layer_indicator.h, - .s = g_config.layer_indicator.s, - .v = g_config.layer_indicator.v } ); - switch (get_highest_layer(layer_state)) { - case 0: - if (g_config.layer_override_bl) { - RGB_MATRIX_INDICATOR_SET_COLOR(g_config.layer_indicator_key, 0, 0, 0); - } - break; - case 1: - RGB_MATRIX_INDICATOR_SET_COLOR(g_config.layer_indicator_key, rgb_layer.r, rgb_layer.g, rgb_layer.b); - break; - default: - // white - RGB_MATRIX_INDICATOR_SET_COLOR(24, 128, 128, 128); - break; - } - } - return false; -} - -#endif #endif diff --git a/keyboards/xelus/pachi/rgb/rev2/rev2.h b/keyboards/xelus/pachi/rgb/rev2/rev2.h deleted file mode 100644 index fb0b8639d20..00000000000 --- a/keyboards/xelus/pachi/rgb/rev2/rev2.h +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2023 Harrison Chan (Xelus) - * - * 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 . - */ -#pragma once - -#include "quantum.h" - -#ifdef VIA_ENABLE -// custom ID codes -enum via_indicator_value { - id_caps_lock_enable = 1, - id_caps_lock_brightness, - id_caps_lock_color, - id_caps_lock_key, - id_caps_lock_override, - id_num_lock_enable, - id_num_lock_brightness, - id_num_lock_color, - id_num_lock_key, - id_num_lock_override, - id_scroll_lock_enable, - id_scroll_lock_brightness, - id_scroll_lock_color, - id_scroll_lock_key, - id_scroll_lock_override, - id_layer_indicator_enable, - id_layer_indicator_brightness, - id_layer_indicator_color, - id_layer_indicator_key, - id_layer_indicator_override -}; - -// struct to save things -typedef struct { - bool enable_caps_lock:1; // | - bool enable_num_lock:1; // | - bool enable_scroll_lock:1; // | - bool enable_layer_indicator:1; // | - bool caps_override_bl:1; // | - bool num_override_bl:1; // | - bool scroll_override_bl:1; // | - bool layer_override_bl:1; // 1 byte - HSV caps_lock_indicator; // 3 bytes - HSV num_lock_indicator; // 3 bytes - HSV scroll_lock_indicator; // 3 bytes - HSV layer_indicator; // 3 bytes - uint8_t caps_lock_key; // 1 byte - uint8_t num_lock_key; // 1 byte - uint8_t scroll_lock_key; // 1 byte - uint8_t layer_indicator_key;// 1 byte -} indicator_settings_config; -// total 17 bytes - -// function declaration -void indicator_config_set_value( uint8_t *data ); -void indicator_config_get_value( uint8_t *data ); -void indicator_config_save ( void ); -void _set_color(HSV *color, uint8_t *data); -void _get_color(HSV *color, uint8_t *data); -#endif From 5624804c6822b68d091e77642e07dc3640bf4ca6 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 29 Jun 2024 19:19:51 +1000 Subject: [PATCH 154/519] `h0oni/deskpad` and `hotduck`: adjust layout names (#24004) --- keyboards/h0oni/deskpad/keyboard.json | 5 ++++- keyboards/h0oni/deskpad/keymaps/default/keymap.c | 8 ++++---- keyboards/h0oni/deskpad/keymaps/via/keymap.c | 8 ++++---- keyboards/h0oni/hotduck/keyboard.json | 5 ++++- keyboards/h0oni/hotduck/keymaps/default/keymap.c | 8 ++++---- keyboards/h0oni/hotduck/keymaps/via/keymap.c | 8 ++++---- 6 files changed, 24 insertions(+), 18 deletions(-) diff --git a/keyboards/h0oni/deskpad/keyboard.json b/keyboards/h0oni/deskpad/keyboard.json index d240acf9d33..d7ad53cd43e 100644 --- a/keyboards/h0oni/deskpad/keyboard.json +++ b/keyboards/h0oni/deskpad/keyboard.json @@ -39,8 +39,11 @@ "processor": "atmega32u4", "bootloader": "atmel-dfu", "debounce": 3, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/h0oni/deskpad/keymaps/default/keymap.c b/keyboards/h0oni/deskpad/keymaps/default/keymap.c index c3eba7c4a9c..eea54cf6b19 100644 --- a/keyboards/h0oni/deskpad/keymaps/default/keymap.c +++ b/keyboards/h0oni/deskpad/keymaps/default/keymap.c @@ -171,19 +171,19 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT( TD(TD_CUT_REDO), TD(TD_MPRV_LEFT), TD(TD_PLAY_PAUSE_MUTE), TD(TD_MNXT_RIGHT), TD(QUAD_CVXA), TD(QUAD_LAYER_SWITCH) ), - [1] = LAYOUT_all( + [1] = LAYOUT( YOUTUBE, KC_WBAK, TD(TD_SEARCH_REFRESH), KC_WFWD, FACEBOOK, TD(QUAD_LAYER_SWITCH) ), - [2] = LAYOUT_all( + [2] = LAYOUT( A(KC_F4), SGUI(KC_S), KC_MYCM, LCA(KC_DEL), KC_CALC, TD(QUAD_LAYER_SWITCH) ), - [3] = LAYOUT_all( + [3] = LAYOUT( C(KC_SLSH), VALORANT, VSCODE, DISCORD, LSA(KC_A), TD(QUAD_LAYER_SWITCH) ), }; \ No newline at end of file diff --git a/keyboards/h0oni/deskpad/keymaps/via/keymap.c b/keyboards/h0oni/deskpad/keymaps/via/keymap.c index c3eba7c4a9c..eea54cf6b19 100644 --- a/keyboards/h0oni/deskpad/keymaps/via/keymap.c +++ b/keyboards/h0oni/deskpad/keymaps/via/keymap.c @@ -171,19 +171,19 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT( TD(TD_CUT_REDO), TD(TD_MPRV_LEFT), TD(TD_PLAY_PAUSE_MUTE), TD(TD_MNXT_RIGHT), TD(QUAD_CVXA), TD(QUAD_LAYER_SWITCH) ), - [1] = LAYOUT_all( + [1] = LAYOUT( YOUTUBE, KC_WBAK, TD(TD_SEARCH_REFRESH), KC_WFWD, FACEBOOK, TD(QUAD_LAYER_SWITCH) ), - [2] = LAYOUT_all( + [2] = LAYOUT( A(KC_F4), SGUI(KC_S), KC_MYCM, LCA(KC_DEL), KC_CALC, TD(QUAD_LAYER_SWITCH) ), - [3] = LAYOUT_all( + [3] = LAYOUT( C(KC_SLSH), VALORANT, VSCODE, DISCORD, LSA(KC_A), TD(QUAD_LAYER_SWITCH) ), }; \ No newline at end of file diff --git a/keyboards/h0oni/hotduck/keyboard.json b/keyboards/h0oni/hotduck/keyboard.json index 605d614d6af..bdb23860214 100644 --- a/keyboards/h0oni/hotduck/keyboard.json +++ b/keyboards/h0oni/hotduck/keyboard.json @@ -51,8 +51,11 @@ }, "processor": "atmega32u4", "bootloader": "atmel-dfu", + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/h0oni/hotduck/keymaps/default/keymap.c b/keyboards/h0oni/hotduck/keymaps/default/keymap.c index 503f0bc74cd..de979ade438 100644 --- a/keyboards/h0oni/hotduck/keymaps/default/keymap.c +++ b/keyboards/h0oni/hotduck/keymaps/default/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [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_BSPC, MO(1), 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_SLSH, 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, @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ), - [1] = LAYOUT_all( + [1] = LAYOUT( KC_GRV, 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_TRNS, MO(1), TG(2), KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS ), - [2] = LAYOUT_all( + [2] = LAYOUT( KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,TG(2), MO(4), KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS ), - [3] = LAYOUT_all( + [3] = LAYOUT( KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,MO(4), KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, diff --git a/keyboards/h0oni/hotduck/keymaps/via/keymap.c b/keyboards/h0oni/hotduck/keymaps/via/keymap.c index 503f0bc74cd..de979ade438 100644 --- a/keyboards/h0oni/hotduck/keymaps/via/keymap.c +++ b/keyboards/h0oni/hotduck/keymaps/via/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [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_BSPC, MO(1), 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_SLSH, 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, @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ), - [1] = LAYOUT_all( + [1] = LAYOUT( KC_GRV, 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_TRNS, MO(1), TG(2), KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS ), - [2] = LAYOUT_all( + [2] = LAYOUT( KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,TG(2), MO(4), KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS ), - [3] = LAYOUT_all( + [3] = LAYOUT( KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,MO(4), KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, From cc0b2f981446620f73b7531f9205a14134fedbae Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 29 Jun 2024 19:20:11 +1000 Subject: [PATCH 155/519] `jels/boaty`: adjust layout name (#24013) --- keyboards/jels/boaty/keyboard.json | 5 ++++- keyboards/jels/boaty/keymaps/default/keymap.c | 4 ++-- keyboards/jels/boaty/keymaps/via/keymap.c | 8 ++++---- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/keyboards/jels/boaty/keyboard.json b/keyboards/jels/boaty/keyboard.json index 11a6e0aa151..36fa9288ab2 100644 --- a/keyboards/jels/boaty/keyboard.json +++ b/keyboards/jels/boaty/keyboard.json @@ -29,8 +29,11 @@ "rows": ["D6", "B0", "D7", "B5", "B3", "B4", "B2"] }, "diode_direction": "COL2ROW", + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"label": "Num Lock", "matrix": [2, 10], "x": 6.75, "y": 0}, {"label": "-", "matrix": [1, 10], "x": 6.75, "y": 1}, diff --git a/keyboards/jels/boaty/keymaps/default/keymap.c b/keyboards/jels/boaty/keymaps/default/keymap.c index 9c2dfc1d447..3dcf144e392 100644 --- a/keyboards/jels/boaty/keymaps/default/keymap.c +++ b/keyboards/jels/boaty/keymaps/default/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //base layer - [0] = LAYOUT_all( + [0] = LAYOUT( KC_NUM, KC_PAST, KC_PSLS, KC_P7, KC_P8, KC_P9, @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_1, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_RSFT, KC_LCTL, KC_LALT, KC_SPC, KC_1, KC_RALT, KC_RCTL ), - [1] = LAYOUT_all( + [1] = LAYOUT( KC_F2, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/jels/boaty/keymaps/via/keymap.c b/keyboards/jels/boaty/keymaps/via/keymap.c index a2e557086bd..870642b49bf 100644 --- a/keyboards/jels/boaty/keymaps/via/keymap.c +++ b/keyboards/jels/boaty/keymaps/via/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //base layer - [0] = LAYOUT_all( + [0] = LAYOUT( KC_NUM, KC_PAST, KC_PSLS, KC_P7, KC_P8, KC_P9, @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_RSFT, KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_RCTL ), - [1] = LAYOUT_all( + [1] = LAYOUT( KC_F2, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [2] = LAYOUT_all( + [2] = LAYOUT( KC_F2, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [3] = LAYOUT_all( + [3] = LAYOUT( KC_F2, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, From d6bfbdb6b15967e649b54e9cea6643a8dc48ba0b Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 29 Jun 2024 20:56:29 +1000 Subject: [PATCH 156/519] `horrortroll/handwired_k552`: fix RGB Matrix LED config (#24014) --- .../handwired_k552/handwired_k552.c | 23 --------------- .../horrortroll/handwired_k552/keyboard.json | 28 ++++++++++++++++++- 2 files changed, 27 insertions(+), 24 deletions(-) diff --git a/keyboards/horrortroll/handwired_k552/handwired_k552.c b/keyboards/horrortroll/handwired_k552/handwired_k552.c index c6181d178e3..b4735bac05a 100644 --- a/keyboards/horrortroll/handwired_k552/handwired_k552.c +++ b/keyboards/horrortroll/handwired_k552/handwired_k552.c @@ -19,29 +19,6 @@ // OLED animation #include "lib/logo.h" -#ifdef RGB_MATRIX_ENABLE -led_config_t g_led_config = { { - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } -}, { - {152, 0}, {165, 0}, {190, 0}, {205, 0}, - {224, 21}, {224, 43}, {224, 54}, - {188, 64}, {172, 64}, {156, 64}, {140, 64}, {115, 64}, {99 , 64}, {75 , 64}, {59 , 64}, {43 , 64}, {26 , 64}, - {0 , 15}, {0 , 50}, {0 , 39}, - {18 , 0}, {36 , 0}, {57 , 0}, {67 , 0} -}, { - 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, - 2, 2, - 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -} }; -#endif - #ifdef OLED_ENABLE uint16_t startup_timer; diff --git a/keyboards/horrortroll/handwired_k552/keyboard.json b/keyboards/horrortroll/handwired_k552/keyboard.json index 6bbfa86e124..213cdf80860 100644 --- a/keyboards/horrortroll/handwired_k552/keyboard.json +++ b/keyboards/horrortroll/handwired_k552/keyboard.json @@ -34,7 +34,33 @@ "pixel_rain": true }, "driver": "ws2812", - "max_brightness": 200 + "max_brightness": 200, + "layout": [ + {"x": 152, "y": 0, "flags": 2}, + {"x": 165, "y": 0, "flags": 2}, + {"x": 190, "y": 0, "flags": 2}, + {"x": 205, "y": 0, "flags": 2}, + {"x": 224, "y": 21, "flags": 2}, + {"x": 224, "y": 43, "flags": 2}, + {"x": 224, "y": 54, "flags": 2}, + {"x": 188, "y": 64, "flags": 2}, + {"x": 172, "y": 64, "flags": 2}, + {"x": 156, "y": 64, "flags": 2}, + {"x": 140, "y": 64, "flags": 2}, + {"x": 115, "y": 64, "flags": 2}, + {"x": 99, "y": 64, "flags": 2}, + {"x": 75, "y": 64, "flags": 2}, + {"x": 59, "y": 64, "flags": 2}, + {"x": 43, "y": 64, "flags": 2}, + {"x": 26, "y": 64, "flags": 2}, + {"x": 0, "y": 50, "flags": 2}, + {"x": 0, "y": 39, "flags": 2}, + {"x": 0, "y": 15, "flags": 2}, + {"x": 18, "y": 0, "flags": 2}, + {"x": 36, "y": 0, "flags": 2}, + {"x": 57, "y": 0, "flags": 2}, + {"x": 67, "y": 0, "flags": 2} + ] }, "matrix_pins": { "cols": ["B15", "C6", "C7", "A3", "A1", "C3", "C1", "B14", "B13", "A9", "B3", "B4", "A0", "C11", "C4", "C0", "C2"], From 0947299864c81a93ee5a6f13bab8d71b72299191 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 29 Jun 2024 14:25:24 +0100 Subject: [PATCH 157/519] Remove custom keycodes from nullbitsco/snap (#24017) --- keyboards/nullbitsco/snap/snap.c | 84 ++++++++------------------------ keyboards/nullbitsco/snap/snap.h | 12 ----- 2 files changed, 19 insertions(+), 77 deletions(-) diff --git a/keyboards/nullbitsco/snap/snap.c b/keyboards/nullbitsco/snap/snap.c index 7308572f954..bd0ea5b7317 100644 --- a/keyboards/nullbitsco/snap/snap.c +++ b/keyboards/nullbitsco/snap/snap.c @@ -15,11 +15,6 @@ */ #include "snap.h" -// Macro variables -bool is_alt_tab_active = false; -uint16_t alt_tab_timer = 0; -bool muted = false; - void matrix_init_kb(void) { set_bitc_LED(LED_OFF); matrix_init_remote_kb(); @@ -27,23 +22,16 @@ void matrix_init_kb(void) { } void keyboard_post_init_kb(void) { - #ifdef CONSOLE_ENABLE +#ifdef CONSOLE_ENABLE debug_enable = true; debug_matrix = true; - #endif +#endif keyboard_post_init_user(); } void matrix_scan_kb(void) { matrix_scan_remote_kb(); matrix_scan_user(); - - if (is_alt_tab_active) { - if (timer_elapsed(alt_tab_timer) > 1000) { - unregister_code(KC_LALT); - is_alt_tab_active = false; - } - } } // Use Bit-C LED to show CAPS LOCK and NUM LOCK status @@ -51,63 +39,29 @@ void led_update_ports(led_t led_state) { set_bitc_LED(led_state.caps_lock ? LED_DIM : LED_OFF); } +bool shutdown_kb(bool jump_to_bootloader) { + if (!shutdown_user(jump_to_bootloader)) { + return false; + } + + set_bitc_LED(LED_DIM); +#ifdef RGBLIGHT_ENABLE + rgblight_disable_noeeprom(); +#endif +#ifdef OLED_ENABLE + oled_off(); +#endif + return true; +} + bool process_record_kb(uint16_t keycode, keyrecord_t *record) { // If console is enabled, it will print the matrix position and status of each key pressed - #ifdef CONSOLE_ENABLE +#ifdef CONSOLE_ENABLE dprintf("kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time); - #endif +#endif process_record_remote_kb(keycode, record); if (!process_record_user(keycode, record)) return false; - switch (keycode) { - case QK_BOOT: - if (record->event.pressed) { - set_bitc_LED(LED_DIM); - #ifdef RGBLIGHT_ENABLE - rgblight_disable_noeeprom(); - #endif - #ifdef OLED_ENABLE - oled_off(); - #endif - bootloader_jump(); // jump to bootloader - } - return false; - - case DISC_MUTE: - if (record->event.pressed) { - tap_code(KC_F23); - #ifdef RGBLIGHT_ENABLE - if (!rgblight_is_enabled()) break; - - if (muted) { - rgblight_enable_noeeprom(); - } else { - rgblight_timer_disable(); - uint8_t val = rgblight_get_val(); - rgblight_sethsv_range(255, 255, val, 1, 5); - } - #endif - muted = !muted; - } - break; - - case SUPER_ALT_TAB: - if (record->event.pressed) { - if (!is_alt_tab_active) { - is_alt_tab_active = true; - register_code(KC_LALT); - } - alt_tab_timer = timer_read(); - register_code(KC_TAB); - } else { - unregister_code(KC_TAB); - } - break; - - default: - break; - } - return true; } diff --git a/keyboards/nullbitsco/snap/snap.h b/keyboards/nullbitsco/snap/snap.h index e593257368d..c1fa22e0c1e 100644 --- a/keyboards/nullbitsco/snap/snap.h +++ b/keyboards/nullbitsco/snap/snap.h @@ -18,15 +18,3 @@ #include "quantum.h" #include "common/remote_kb.h" #include "common/bitc_led.h" - -#ifdef VIA_ENABLE -enum custom_keycodes { - DISC_MUTE = QK_USER_0, - SUPER_ALT_TAB -}; -#else -enum custom_keycodes { - DISC_MUTE = SAFE_RANGE, - SUPER_ALT_TAB -}; -#endif From 12379dc1ebd5bb1257eed5f7400510ee535d5d50 Mon Sep 17 00:00:00 2001 From: Danylo Kondratiev Date: Sun, 30 Jun 2024 04:57:35 +0300 Subject: [PATCH 158/519] Fix ploopy Adept/Madromys link (#24018) --- keyboards/ploopyco/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/ploopyco/readme.md b/keyboards/ploopyco/readme.md index a468058ce04..b6eecf080e9 100644 --- a/keyboards/ploopyco/readme.md +++ b/keyboards/ploopyco/readme.md @@ -5,7 +5,7 @@ * [Trackball Mini](trackball_mini/) * [Trackball Nano](trackball_nano/) * [Trackball Thumb](trackball_thumb/) -* [Adept/Madromys](manromys/) +* [Adept/Madromys](madromys/) # Customizing your PloopyCo Device From 3ffe8d917a7c43e56b11ada82ac57b86003719a3 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 30 Jun 2024 03:39:49 +0100 Subject: [PATCH 159/519] Fix 'qmk new-keyboard' processing of development_board (#23996) --- data/templates/keyboard/keyboard.json | 2 -- lib/python/qmk/cli/new/keyboard.py | 34 ++++++++++----------------- 2 files changed, 12 insertions(+), 24 deletions(-) diff --git a/data/templates/keyboard/keyboard.json b/data/templates/keyboard/keyboard.json index 65f935fb42a..94085d7f5a2 100644 --- a/data/templates/keyboard/keyboard.json +++ b/data/templates/keyboard/keyboard.json @@ -2,8 +2,6 @@ "keyboard_name": "%KEYBOARD%", "maintainer": "%USER_NAME%", "manufacturer": "%REAL_NAME%", - "processor": "%MCU%", - "bootloader": "%BOOTLOADER%", "diode_direction": "COL2ROW", "matrix_pins": { "cols": ["C2"], diff --git a/lib/python/qmk/cli/new/keyboard.py b/lib/python/qmk/cli/new/keyboard.py index 56bd05e1e3e..b84b130f8ec 100644 --- a/lib/python/qmk/cli/new/keyboard.py +++ b/lib/python/qmk/cli/new/keyboard.py @@ -14,7 +14,7 @@ from qmk.git import git_get_username from qmk.json_schema import load_jsonschema from qmk.path import keyboard from qmk.json_encoders import InfoJSONEncoder -from qmk.json_schema import deep_update, json_load +from qmk.json_schema import deep_update from qmk.constants import MCU2BOOTLOADER, QMK_FIRMWARE COMMUNITY = Path('layouts/default/') @@ -78,7 +78,7 @@ def replace_string(src, token, value): src.write_text(src.read_text().replace(token, value)) -def augment_community_info(src, dest): +def augment_community_info(config, src, dest): """Splice in any additional data into info.json """ info = json.loads(src.read_text()) @@ -86,6 +86,7 @@ def augment_community_info(src, dest): # merge community with template deep_update(info, template) + deep_update(info, config) # avoid assumptions on macro name by using the first available first_layout = next(iter(info["layouts"].values()))["layout"] @@ -105,7 +106,7 @@ def augment_community_info(src, dest): for item in first_layout: item["matrix"] = [int(item["y"]), int(item["x"])] - # finally write out the updated info.json + # finally write out the updated json dest.write_text(json.dumps(info, cls=InfoJSONEncoder, sort_keys=True)) @@ -212,15 +213,12 @@ def new_keyboard(cli): default_layout = cli.args.layout if cli.args.layout else prompt_layout() mcu = cli.args.type if cli.args.type else prompt_mcu() - # Preprocess any development_board presets + config = {} if mcu in dev_boards: - defaults_map = json_load(Path('data/mappings/defaults.hjson')) - board = defaults_map['development_board'][mcu] - - mcu = board['processor'] - bootloader = board['bootloader'] + config['development_board'] = mcu else: - bootloader = select_default_bootloader(mcu) + config['processor'] = mcu + config['bootloader'] = select_default_bootloader(mcu) detach_layout = False if default_layout == 'none of the above': @@ -231,17 +229,9 @@ def new_keyboard(cli): 'YEAR': str(date.today().year), 'KEYBOARD': kb_name, 'USER_NAME': user_name, - 'REAL_NAME': real_name, - 'LAYOUT': default_layout, - 'MCU': mcu, - 'BOOTLOADER': bootloader + 'REAL_NAME': real_name } - if cli.config.general.verbose: - cli.log.info("Creating keyboard with:") - for key, value in tokens.items(): - cli.echo(f" {key.ljust(10)}: {value}") - # begin with making the deepest folder in the tree keymaps_path = keyboard(kb_name) / 'keymaps/' keymaps_path.mkdir(parents=True) @@ -256,7 +246,7 @@ def new_keyboard(cli): # merge in infos community_info = Path(COMMUNITY / f'{default_layout}/info.json') - augment_community_info(community_info, keyboard(kb_name) / 'keyboard.json') + augment_community_info(config, community_info, keyboard(kb_name) / 'keyboard.json') # detach community layout and rename to just "LAYOUT" if detach_layout: @@ -265,5 +255,5 @@ def new_keyboard(cli): cli.log.info(f'{{fg_green}}Created a new keyboard called {{fg_cyan}}{kb_name}{{fg_green}}.{{fg_reset}}') cli.log.info(f"Build Command: {{fg_yellow}}qmk compile -kb {kb_name} -km default{{fg_reset}}.") - cli.log.info(f'Project Location: {{fg_cyan}}{QMK_FIRMWARE}/{keyboard(kb_name)}{{fg_reset}},') - cli.log.info("{{fg_yellow}}Now update the config files to match the hardware!{{fg_reset}}") + cli.log.info(f'Project Location: {{fg_cyan}}{QMK_FIRMWARE}/{keyboard(kb_name)}{{fg_reset}}.') + cli.log.info("{fg_yellow}Now update the config files to match the hardware!{fg_reset}") From 7bc3eef8cc262e12b0f823ba4c92cf97ca3dc1fa Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Tue, 2 Jul 2024 10:16:41 +1000 Subject: [PATCH 160/519] SPI flash API cleanup, add async erase capability. (#23894) --- builddefs/common_features.mk | 9 +- drivers/flash/flash.h | 126 ++++++++++++++++++ drivers/flash/flash_spi.c | 89 +++++++------ drivers/flash/flash_spi.h | 31 +---- .../wear_leveling/wear_leveling_flash_spi.c | 4 +- 5 files changed, 182 insertions(+), 77 deletions(-) create mode 100644 drivers/flash/flash.h diff --git a/builddefs/common_features.mk b/builddefs/common_features.mk index 68f9a1dd08a..498614dd264 100644 --- a/builddefs/common_features.mk +++ b/builddefs/common_features.mk @@ -282,18 +282,17 @@ ifneq ($(strip $(WEAR_LEVELING_DRIVER)),none) endif endif -VALID_FLASH_DRIVER_TYPES := spi +VALID_FLASH_DRIVER_TYPES := spi custom FLASH_DRIVER ?= none ifneq ($(strip $(FLASH_DRIVER)), none) ifeq ($(filter $(FLASH_DRIVER),$(VALID_FLASH_DRIVER_TYPES)),) $(call CATASTROPHIC_ERROR,Invalid FLASH_DRIVER,FLASH_DRIVER="$(FLASH_DRIVER)" is not a valid flash driver) else - OPT_DEFS += -DFLASH_ENABLE + OPT_DEFS += -DFLASH_ENABLE -DFLASH_DRIVER -DFLASH_DRIVER_$(strip $(shell echo $(FLASH_DRIVER) | tr '[:lower:]' '[:upper:]')) + COMMON_VPATH += $(DRIVER_PATH)/flash ifeq ($(strip $(FLASH_DRIVER)),spi) - SPI_DRIVER_REQUIRED = yes - OPT_DEFS += -DFLASH_DRIVER -DFLASH_SPI - COMMON_VPATH += $(DRIVER_PATH)/flash SRC += flash_spi.c + SPI_DRIVER_REQUIRED = yes endif endif endif diff --git a/drivers/flash/flash.h b/drivers/flash/flash.h new file mode 100644 index 00000000000..4d624751398 --- /dev/null +++ b/drivers/flash/flash.h @@ -0,0 +1,126 @@ +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include + +/** + * @brief The status of a flash operation. + */ +enum { + FLASH_STATUS_SUCCESS = 0, //< The operation completed successfully. + FLASH_STATUS_ERROR = -1, //< An error occurred during the operation. + FLASH_STATUS_TIMEOUT = -2, //< The operation timed out. + FLASH_STATUS_BAD_ADDRESS = -3, //< The address is out of bounds. + FLASH_STATUS_BUSY = -4, //< The flash is busy. +}; + +/** + * @brief The status of a flash operation. + */ +typedef int16_t flash_status_t; + +/** + * @brief Initializes the flash driver. + * + * This function initializes the flash driver and prepares it for use. + * It should be called before any other flash-related functions are used. + */ +void flash_init(void); + +/** + * @brief Checks if the flash is busy. + * + * This function checks if the flash is currently busy with an operation. + * + * @return FLASH_STATUS_SUCCESS if the flash is not busy, FLASH_STATUS_BUSY if the flash is busy, or FLASH_STATUS_ERROR if an error occurred. + */ +flash_status_t flash_is_busy(void); + +/** + * @brief Initiates a chip erase operation. + * + * This function does not wait for the flash to become ready. + * + * @return FLASH_STATUS_SUCCESS if the erase command was successfully sent, FLASH_STATUS_TIMEOUT if the flash is busy, or FLASH_STATUS_ERROR if an error occurred. + */ +flash_status_t flash_begin_erase_chip(void); + +/** + * @brief Waits for the chip erase operation to complete. + * + * This function waits for the chip erase operation to complete. + * + * @return FLASH_STATUS_SUCCESS if the chip erase operation completed successfully, FLASH_STATUS_TIMEOUT if the flash was still busy, or FLASH_STATUS_ERROR if an error occurred. + */ +flash_status_t flash_wait_erase_chip(void); + +/** + * @brief Erases the entire flash memory chip. + * + * This function initiates an erase operation to erase the entire flash memory chip. + * It waits for the operation to complete. + * + * @return FLASH_STATUS_SUCCESS if the erase was successfully executed, FLASH_STATUS_TIMEOUT if the flash is busy, or FLASH_STATUS_ERROR if an error occurred. + */ +flash_status_t flash_erase_chip(void); + +/** + * @brief Erases a block of flash memory. + * + * This function initiates an erase operation to erase a block of flash memory. + * It waits for the operation to complete. + * + * @param addr The address of the block to erase. + * + * @return FLASH_STATUS_SUCCESS if the erase was successfully executed, FLASH_STATUS_TIMEOUT if the flash is busy, or FLASH_STATUS_ERROR if an error occurred. + */ +flash_status_t flash_erase_block(uint32_t addr); + +/** + * @brief Erases a sector of flash memory. + * + * This function initiates an erase operation to erase a sector of flash memory. + * It waits for the operation to complete. + * + * @param addr The address of the sector to erase. + * + * @return FLASH_STATUS_SUCCESS if the erase was successfully executed, FLASH_STATUS_TIMEOUT if the flash is busy, or FLASH_STATUS_ERROR if an error occurred. + */ +flash_status_t flash_erase_sector(uint32_t addr); + +/** + * @brief Reads a range of flash memory. + * + * This function reads a range of flash memory into a buffer. + * + * @param addr The address of the range to read. + * @param buf A pointer to the buffer to read the range into. + * @param len The length of the range to read. + * + * @return FLASH_STATUS_SUCCESS if the range was successfully read, FLASH_STATUS_BAD_ADDRESS if the address is out of bounds, FLASH_STATUS_TIMEOUT if the flash is busy, or FLASH_STATUS_ERROR if an error occurred. + */ +flash_status_t flash_read_range(uint32_t addr, void *buf, size_t len); + +/** + * @brief Writes a range of flash memory. + * + * This function writes a range of flash memory from a buffer. + * + * @param addr The address of the range to write. + * @param buf A pointer to the buffer to write to the range. + * @param len The length of the range to write. + * + * @return FLASH_STATUS_SUCCESS if the range was successfully written, FLASH_STATUS_BAD_ADDRESS if the address is out of bounds, FLASH_STATUS_TIMEOUT if the flash is busy, or FLASH_STATUS_ERROR if an error occurred. + */ +flash_status_t flash_write_range(uint32_t addr, const void *buf, size_t len); + +#ifdef __cplusplus +} +#endif diff --git a/drivers/flash/flash_spi.c b/drivers/flash/flash_spi.c index 0c0eb8a99e5..7226773ff41 100644 --- a/drivers/flash/flash_spi.c +++ b/drivers/flash/flash_spi.c @@ -1,22 +1,10 @@ -/* -Copyright (C) 2021 Westberry Technology (ChangZhou) Corp., Ltd - -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 . -*/ +// Copyright 2021 Westberry Technology (ChangZhou) Corp., Ltd +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later #include +#include "flash.h" #include "util.h" #include "wait.h" #include "debug.h" @@ -69,33 +57,43 @@ static bool spi_flash_start(void) { return spi_start(EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN, EXTERNAL_FLASH_SPI_LSBFIRST, EXTERNAL_FLASH_SPI_MODE, EXTERNAL_FLASH_SPI_CLOCK_DIVISOR); } -static flash_status_t spi_flash_wait_while_busy(void) { - uint32_t deadline = timer_read32() + EXTERNAL_FLASH_SPI_TIMEOUT; +static flash_status_t spi_flash_wait_while_busy_multiplier(int multiplier) { flash_status_t response = FLASH_STATUS_SUCCESS; - uint8_t retval; - + uint32_t deadline = timer_read32() + ((EXTERNAL_FLASH_SPI_TIMEOUT)*multiplier); do { - bool res = spi_flash_start(); - if (!res) { - dprint("Failed to start SPI! [spi flash wait while busy]\n"); - return FLASH_STATUS_ERROR; - } - - spi_write(FLASH_CMD_RDSR); - - retval = (uint8_t)spi_read(); - - spi_stop(); - if (timer_read32() >= deadline) { response = FLASH_STATUS_TIMEOUT; break; } - } while (retval & FLASH_FLAG_WIP); + response = flash_is_busy(); + } while (response == FLASH_STATUS_BUSY); return response; } +static flash_status_t spi_flash_wait_while_busy(void) { + return spi_flash_wait_while_busy_multiplier(1); +} + +flash_status_t flash_is_busy(void) { + bool res = spi_flash_start(); + if (!res) { + dprint("Failed to start SPI! [spi flash wait while busy]\n"); + return FLASH_STATUS_ERROR; + } + + spi_write(FLASH_CMD_RDSR); + spi_status_t status = spi_read(); + spi_stop(); + + if (status < 0) { + return status; + } + + uint8_t sr = (uint8_t)status; + return (sr & FLASH_FLAG_WIP) ? FLASH_STATUS_BUSY : FLASH_STATUS_SUCCESS; +} + static flash_status_t spi_flash_write_enable(void) { bool res = spi_flash_start(); if (!res) { @@ -104,7 +102,6 @@ static flash_status_t spi_flash_write_enable(void) { } spi_write(FLASH_CMD_WREN); - spi_stop(); return FLASH_STATUS_SUCCESS; @@ -118,7 +115,6 @@ static flash_status_t spi_flash_write_disable(void) { } spi_write(FLASH_CMD_WRDI); - spi_stop(); return FLASH_STATUS_SUCCESS; @@ -166,7 +162,7 @@ void flash_init(void) { spi_init(); } -flash_status_t flash_erase_chip(void) { +flash_status_t flash_begin_erase_chip(void) { flash_status_t response = FLASH_STATUS_SUCCESS; /* Wait for the write-in-progress bit to be cleared. */ @@ -191,17 +187,28 @@ flash_status_t flash_erase_chip(void) { } spi_write(FLASH_CMD_CE); spi_stop(); + return FLASH_STATUS_SUCCESS; +} - /* Wait for the write-in-progress bit to be cleared.*/ - response = spi_flash_wait_while_busy(); +flash_status_t flash_wait_erase_chip(void) { + flash_status_t response = spi_flash_wait_while_busy_multiplier(250); // Chip erase can take a long time, wait 250x the usual timeout if (response != FLASH_STATUS_SUCCESS) { dprint("Failed to check WIP flag! [spi flash erase chip]\n"); return response; } - return response; } +flash_status_t flash_erase_chip(void) { + flash_status_t response = flash_begin_erase_chip(); + if (response != FLASH_STATUS_SUCCESS) { + dprint("Failed to begin erase chip! [spi flash erase chip]\n"); + return response; + } + + return flash_wait_erase_chip(); +} + flash_status_t flash_erase_sector(uint32_t addr) { flash_status_t response = FLASH_STATUS_SUCCESS; @@ -282,7 +289,7 @@ flash_status_t flash_erase_block(uint32_t addr) { return response; } -flash_status_t flash_read_block(uint32_t addr, void *buf, size_t len) { +flash_status_t flash_read_range(uint32_t addr, void *buf, size_t len) { flash_status_t response = FLASH_STATUS_SUCCESS; uint8_t * read_buf = (uint8_t *)buf; @@ -313,7 +320,7 @@ flash_status_t flash_read_block(uint32_t addr, void *buf, size_t len) { return response; } -flash_status_t flash_write_block(uint32_t addr, const void *buf, size_t len) { +flash_status_t flash_write_range(uint32_t addr, const void *buf, size_t len) { flash_status_t response = FLASH_STATUS_SUCCESS; uint8_t * write_buf = (uint8_t *)buf; diff --git a/drivers/flash/flash_spi.h b/drivers/flash/flash_spi.h index 87460fc210e..7a979daf0f7 100644 --- a/drivers/flash/flash_spi.h +++ b/drivers/flash/flash_spi.h @@ -17,6 +17,8 @@ along with this program. If not, see . #pragma once +#include "flash.h" + /* All the following default configurations are based on MX25L4006E Nor FLASH. */ /* @@ -105,32 +107,3 @@ along with this program. If not, see . The page count of the FLASH, calculated by total FLASH size and page size. */ #define EXTERNAL_FLASH_PAGE_COUNT ((EXTERNAL_FLASH_SIZE) / (EXTERNAL_FLASH_PAGE_SIZE)) - -typedef int16_t flash_status_t; - -#define FLASH_STATUS_SUCCESS (0) -#define FLASH_STATUS_ERROR (-1) -#define FLASH_STATUS_TIMEOUT (-2) -#define FLASH_STATUS_BAD_ADDRESS (-3) - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -void flash_init(void); - -flash_status_t flash_erase_chip(void); - -flash_status_t flash_erase_block(uint32_t addr); - -flash_status_t flash_erase_sector(uint32_t addr); - -flash_status_t flash_read_block(uint32_t addr, void *buf, size_t len); - -flash_status_t flash_write_block(uint32_t addr, const void *buf, size_t len); - -#ifdef __cplusplus -} -#endif diff --git a/drivers/wear_leveling/wear_leveling_flash_spi.c b/drivers/wear_leveling/wear_leveling_flash_spi.c index 6191f8bf095..304aed1641f 100644 --- a/drivers/wear_leveling/wear_leveling_flash_spi.c +++ b/drivers/wear_leveling/wear_leveling_flash_spi.c @@ -58,7 +58,7 @@ bool backing_store_read(uint32_t address, backing_store_int_t *value) { bool backing_store_read_bulk(uint32_t address, backing_store_int_t *values, size_t item_count) { bs_dprintf("Read "); uint32_t offset = (WEAR_LEVELING_EXTERNAL_FLASH_BLOCK_OFFSET) * (EXTERNAL_FLASH_BLOCK_SIZE) + address; - flash_status_t status = flash_read_block(offset, values, sizeof(backing_store_int_t) * item_count); + flash_status_t status = flash_read_range(offset, values, sizeof(backing_store_int_t) * item_count); if (status == FLASH_STATUS_SUCCESS) { for (size_t i = 0; i < item_count; ++i) { values[i] = ~values[i]; @@ -88,7 +88,7 @@ bool backing_store_write_bulk(uint32_t address, backing_store_int_t *values, siz } // Write out the block - if (flash_write_block(offset, temp, sizeof(backing_store_int_t) * this_loop) != FLASH_STATUS_SUCCESS) { + if (flash_write_range(offset, temp, sizeof(backing_store_int_t) * this_loop) != FLASH_STATUS_SUCCESS) { return false; } From 869b7d9ae63f2d5990934f938e44ecfe6d1d9e1f Mon Sep 17 00:00:00 2001 From: Cipulot <40441626+Cipulot@users.noreply.github.com> Date: Wed, 3 Jul 2024 06:35:26 +0900 Subject: [PATCH 161/519] Fix index EC Dolice (#24033) * Update keyboard.json Fixed wrong index in keyboard.json * Small touch layout --- keyboards/cipulot/ec_dolice/keyboard.json | 8 ++++---- keyboards/cipulot/ec_dolice/keymaps/default/keymap.c | 2 +- keyboards/cipulot/ec_dolice/keymaps/via/keymap.c | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/keyboards/cipulot/ec_dolice/keyboard.json b/keyboards/cipulot/ec_dolice/keyboard.json index e81422e2c54..cebaa50ba83 100644 --- a/keyboards/cipulot/ec_dolice/keyboard.json +++ b/keyboards/cipulot/ec_dolice/keyboard.json @@ -100,7 +100,7 @@ {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75}, {"matrix": [3, 14], "x": 17.25, "y": 3}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5}, - {"matrix": [4, 2], "x": 4.25, "y": 4, "w": 1.5}, + {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5}, {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2}, {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25}, {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75}, @@ -170,7 +170,7 @@ {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 1.75}, {"matrix": [3, 14], "x": 17.25, "y": 3}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5}, - {"matrix": [4, 2], "x": 4.25, "y": 4, "w": 1.5}, + {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5}, {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2}, {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25}, {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75}, @@ -238,7 +238,7 @@ {"matrix": [3, 12], "x": 14.5, "y": 3}, {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 2.75}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5}, - {"matrix": [4, 2], "x": 4.25, "y": 4, "w": 1.5}, + {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5}, {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2}, {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25}, {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75}, @@ -307,7 +307,7 @@ {"matrix": [3, 12], "x": 14.5, "y": 3}, {"matrix": [3, 13], "x": 15.5, "y": 3, "w": 2.75}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5}, - {"matrix": [4, 2], "x": 4.25, "y": 4, "w": 1.5}, + {"matrix": [4, 3], "x": 4.25, "y": 4, "w": 1.5}, {"matrix": [4, 5], "x": 5.75, "y": 4, "w": 2}, {"matrix": [4, 6], "x": 7.75, "y": 4, "w": 1.25}, {"matrix": [4, 8], "x": 9.5, "y": 4, "w": 2.75}, diff --git a/keyboards/cipulot/ec_dolice/keymaps/default/keymap.c b/keyboards/cipulot/ec_dolice/keymaps/default/keymap.c index 5a501e29823..8e6745b6819 100644 --- a/keyboards/cipulot/ec_dolice/keymaps/default/keymap.c +++ b/keyboards/cipulot/ec_dolice/keymaps/default/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( - KC_PSCR, 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_BSPC, KC_DEL, + KC_PSCR, 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_BSPC, KC_BSPC, KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, KC_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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), diff --git a/keyboards/cipulot/ec_dolice/keymaps/via/keymap.c b/keyboards/cipulot/ec_dolice/keymaps/via/keymap.c index 5a501e29823..8e6745b6819 100644 --- a/keyboards/cipulot/ec_dolice/keymaps/via/keymap.c +++ b/keyboards/cipulot/ec_dolice/keymaps/via/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( - KC_PSCR, 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_BSPC, KC_DEL, + KC_PSCR, 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_BSPC, KC_BSPC, KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, KC_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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), From bc0c69570b8a8b1d9a754a280053e49a825b24d7 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 3 Jul 2024 17:18:27 +1000 Subject: [PATCH 162/519] Rename encoder pins defines (#24003) --- docs/features/encoders.md | 28 ++++++++--------- docs/features/split_keyboard.md | 4 +-- drivers/encoder/encoder_quadrature.c | 18 +++++------ .../wings42/rev2/keymaps/via/config.h | 4 +-- .../handwired/sick68/keymaps/via/config.h | 4 +-- .../gskt00/keymaps/default-poly/config.h | 4 +-- keyboards/pica40/rev2/rev2.c | 4 +-- keyboards/ploopyco/mouse/config.h | 4 +-- keyboards/ploopyco/ploopyco.c | 4 +-- keyboards/ploopyco/trackball/config.h | 4 +-- keyboards/ploopyco/trackball_mini/config.h | 4 +-- keyboards/ploopyco/trackball_thumb/config.h | 4 +-- keyboards/rgbkb/sol/keymaps/default/keymap.c | 2 +- keyboards/rgbkb/sol/rev2/config.h | 8 ++--- keyboards/terrazzo/readme.md | 4 +-- lib/python/qmk/cli/generate/config_h.py | 4 +-- lib/python/qmk/info.py | 4 +-- quantum/encoder.h | 31 ++++++++++++------- quantum/encoder/tests/config_mock.h | 4 +-- .../tests/config_mock_split_left_eq_right.h | 8 ++--- .../tests/config_mock_split_left_gt_right.h | 8 ++--- .../tests/config_mock_split_left_lt_right.h | 8 ++--- .../encoder/tests/config_mock_split_no_left.h | 8 ++--- .../tests/config_mock_split_no_right.h | 8 ++--- .../encoder/tests/config_mock_split_role.h | 8 ++--- 25 files changed, 100 insertions(+), 91 deletions(-) diff --git a/docs/features/encoders.md b/docs/features/encoders.md index 3d1cac79af7..eea70dafecf 100644 --- a/docs/features/encoders.md +++ b/docs/features/encoders.md @@ -9,15 +9,15 @@ ENCODER_ENABLE = yes and this to your `config.h`: ```c -#define ENCODERS_PAD_A { B12 } -#define ENCODERS_PAD_B { B13 } +#define ENCODER_A_PINS { B12 } +#define ENCODER_B_PINS { B13 } ``` Each PAD_A/B variable defines an array so multiple encoders can be defined, e.g.: ```c -#define ENCODERS_PAD_A { encoder1a, encoder2a } -#define ENCODERS_PAD_B { encoder1b, encoder2b } +#define ENCODER_A_PINS { encoder1a, encoder2a } +#define ENCODER_B_PINS { encoder1b, encoder2b } ``` If your encoder's clockwise directions are incorrect, you can swap the A & B pad definitions. They can also be flipped with a define: @@ -49,8 +49,8 @@ For 4× encoders you also can assign default position if encoder skips pulses wh If you are using different pinouts for the encoders on each half of a split keyboard, you can define the pinout (and optionally, resolutions) for the right half like this: ```c -#define ENCODERS_PAD_A_RIGHT { encoder1a, encoder2a } -#define ENCODERS_PAD_B_RIGHT { encoder1b, encoder2b } +#define ENCODER_A_PINS_RIGHT { encoder1a, encoder2a } +#define ENCODER_B_PINS_RIGHT { encoder1b, encoder2b } #define ENCODER_RESOLUTIONS_RIGHT { 2, 4 } ``` @@ -59,11 +59,11 @@ If the `_RIGHT` definitions aren't specified in your `config.h`, then the non-`_ Additionally, if one side does not have an encoder, you can specify `{}` for the pins/resolution -- for example, a split keyboard with only a right-side encoder: ```c -#define ENCODERS_PAD_A { } -#define ENCODERS_PAD_B { } +#define ENCODER_A_PINS { } +#define ENCODER_B_PINS { } #define ENCODER_RESOLUTIONS { } -#define ENCODERS_PAD_A_RIGHT { B12 } -#define ENCODERS_PAD_B_RIGHT { B13 } +#define ENCODER_A_PINS_RIGHT { B12 } +#define ENCODER_B_PINS_RIGHT { B13 } #define ENCODER_RESOLUTIONS_RIGHT { 4 } ``` @@ -174,13 +174,13 @@ Multiple encoders may share pins so long as each encoder has a distinct pair of For example you can support two encoders using only 3 pins like this ``` -#define ENCODERS_PAD_A { B1, B1 } -#define ENCODERS_PAD_B { B2, B3 } +#define ENCODER_A_PINS { B1, B1 } +#define ENCODER_B_PINS { B2, B3 } ``` You could even support three encoders using only three pins (one per encoder) however in this configuration, rotating two encoders which share pins simultaneously will often generate incorrect output. For example: ``` -#define ENCODERS_PAD_A { B1, B1, B2 } -#define ENCODERS_PAD_B { B2, B3, B3 } +#define ENCODER_A_PINS { B1, B1, B2 } +#define ENCODER_B_PINS { B2, B3, B3 } ``` Here rotating Encoder 0 `B1 B2` and Encoder 1 `B1 B3` could be interpreted as rotating Encoder 2 `B2 B3` or `B3 B2` depending on the timing. This may still be a useful configuration depending on your use case diff --git a/docs/features/split_keyboard.md b/docs/features/split_keyboard.md index 6efa1c2a35c..49582c3946f 100644 --- a/docs/features/split_keyboard.md +++ b/docs/features/split_keyboard.md @@ -417,8 +417,8 @@ This allows you to specify a different set of pins for the matrix on the right s This allows you to specify a different set of direct pins for the right side. ```c -#define ENCODERS_PAD_A_RIGHT { encoder1a, encoder2a } -#define ENCODERS_PAD_B_RIGHT { encoder1b, encoder2b } +#define ENCODER_A_PINS_RIGHT { encoder1a, encoder2a } +#define ENCODER_B_PINS_RIGHT { encoder1b, encoder2b } ``` This allows you to specify a different set of encoder pins for the right side. diff --git a/drivers/encoder/encoder_quadrature.c b/drivers/encoder/encoder_quadrature.c index cd589bf1e20..086f500391c 100644 --- a/drivers/encoder/encoder_quadrature.c +++ b/drivers/encoder/encoder_quadrature.c @@ -22,7 +22,7 @@ #endif #undef ENCODER_DEFAULT_PIN_API_IMPL -#if defined(ENCODERS_PAD_A) && defined(ENCODERS_PAD_B) +#if defined(ENCODER_A_PINS) && defined(ENCODER_B_PINS) // Inform the quadrature driver that it needs to implement pin init/read functions # define ENCODER_DEFAULT_PIN_API_IMPL #endif @@ -34,8 +34,8 @@ __attribute__((weak)) uint8_t encoder_quadrature_read_pin(uint8_t index, bool pa #ifdef ENCODER_DEFAULT_PIN_API_IMPL -static pin_t encoders_pad_a[NUM_ENCODERS_MAX_PER_SIDE] = ENCODERS_PAD_A; -static pin_t encoders_pad_b[NUM_ENCODERS_MAX_PER_SIDE] = ENCODERS_PAD_B; +static pin_t encoders_pad_a[NUM_ENCODERS_MAX_PER_SIDE] = ENCODER_A_PINS; +static pin_t encoders_pad_b[NUM_ENCODERS_MAX_PER_SIDE] = ENCODER_B_PINS; __attribute__((weak)) void encoder_wait_pullup_charge(void) { wait_us(100); @@ -123,25 +123,25 @@ void encoder_driver_init(void) { // here, but it's the simplest solution. memset(encoder_state, 0, sizeof(encoder_state)); memset(encoder_pulses, 0, sizeof(encoder_pulses)); - const pin_t encoders_pad_a_left[] = ENCODERS_PAD_A; - const pin_t encoders_pad_b_left[] = ENCODERS_PAD_B; + const pin_t encoders_pad_a_left[] = ENCODER_A_PINS; + const pin_t encoders_pad_b_left[] = ENCODER_B_PINS; for (uint8_t i = 0; i < thisCount; i++) { encoders_pad_a[i] = encoders_pad_a_left[i]; encoders_pad_b[i] = encoders_pad_b_left[i]; } #endif -#if defined(SPLIT_KEYBOARD) && defined(ENCODERS_PAD_A_RIGHT) && defined(ENCODERS_PAD_B_RIGHT) +#if defined(SPLIT_KEYBOARD) && defined(ENCODER_A_PINS_RIGHT) && defined(ENCODER_B_PINS_RIGHT) // Re-initialise the pads if it's the right-hand side if (!isLeftHand) { - const pin_t encoders_pad_a_right[] = ENCODERS_PAD_A_RIGHT; - const pin_t encoders_pad_b_right[] = ENCODERS_PAD_B_RIGHT; + const pin_t encoders_pad_a_right[] = ENCODER_A_PINS_RIGHT; + const pin_t encoders_pad_b_right[] = ENCODER_B_PINS_RIGHT; for (uint8_t i = 0; i < thisCount; i++) { encoders_pad_a[i] = encoders_pad_a_right[i]; encoders_pad_b[i] = encoders_pad_b_right[i]; } } -#endif // defined(SPLIT_KEYBOARD) && defined(ENCODERS_PAD_A_RIGHT) && defined(ENCODERS_PAD_B_RIGHT) +#endif // defined(SPLIT_KEYBOARD) && defined(ENCODER_A_PINS_RIGHT) && defined(ENCODER_B_PINS_RIGHT) // Encoder resolutions is defined differently in config.h, so concatenate #if defined(SPLIT_KEYBOARD) && defined(ENCODER_RESOLUTIONS) diff --git a/keyboards/dailycraft/wings42/rev2/keymaps/via/config.h b/keyboards/dailycraft/wings42/rev2/keymaps/via/config.h index 3e0c8d146af..6a9ab04738d 100644 --- a/keyboards/dailycraft/wings42/rev2/keymaps/via/config.h +++ b/keyboards/dailycraft/wings42/rev2/keymaps/via/config.h @@ -15,6 +15,6 @@ */ #pragma once -#define ENCODERS_PAD_A { B5, B6 } -#define ENCODERS_PAD_B { B4, B2 } +#define ENCODER_A_PINS { B5, B6 } +#define ENCODER_B_PINS { B4, B2 } #define ENCODER_RESOLUTION 4 diff --git a/keyboards/handwired/sick68/keymaps/via/config.h b/keyboards/handwired/sick68/keymaps/via/config.h index 4ce1e3e7859..bf6fd3ea4f7 100644 --- a/keyboards/handwired/sick68/keymaps/via/config.h +++ b/keyboards/handwired/sick68/keymaps/via/config.h @@ -15,6 +15,6 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#define ENCODERS_PAD_A { F0 } -#define ENCODERS_PAD_B { F1 } +#define ENCODER_A_PINS { F0 } +#define ENCODER_B_PINS { F1 } #define ENCODER_RESOLUTION 4 diff --git a/keyboards/kapcave/gskt00/keymaps/default-poly/config.h b/keyboards/kapcave/gskt00/keymaps/default-poly/config.h index 40a7c6ec47e..9d03a669c85 100644 --- a/keyboards/kapcave/gskt00/keymaps/default-poly/config.h +++ b/keyboards/kapcave/gskt00/keymaps/default-poly/config.h @@ -16,8 +16,8 @@ along with this program. If not, see . */ #pragma once -#define ENCODERS_PAD_A { D5 } -#define ENCODERS_PAD_B { D3 } +#define ENCODER_A_PINS { D5 } +#define ENCODER_B_PINS { D3 } #define WS2812_DI_PIN D0 #define RGBLIGHT_EFFECT_BREATHING diff --git a/keyboards/pica40/rev2/rev2.c b/keyboards/pica40/rev2/rev2.c index 0ba9a537341..b5d79508fca 100644 --- a/keyboards/pica40/rev2/rev2.c +++ b/keyboards/pica40/rev2/rev2.c @@ -6,8 +6,8 @@ #ifdef ENCODER_ENABLE // code based on encoder.c -#define ENCODER_PIN_A (((pin_t[])ENCODERS_PAD_A)[0]) -#define ENCODER_PIN_B (((pin_t[])ENCODERS_PAD_B)[0]) +#define ENCODER_PIN_A (((pin_t[])ENCODER_A_PINS)[0]) +#define ENCODER_PIN_B (((pin_t[])ENCODER_B_PINS)[0]) // custom handler that returns encoder B pin status from slave side void encoder_sync_slave_handler(uint8_t in_buflen, const void *in_data, uint8_t out_buflen, void *out_data) { diff --git a/keyboards/ploopyco/mouse/config.h b/keyboards/ploopyco/mouse/config.h index 0375a8875a4..0f8774dcd7f 100644 --- a/keyboards/ploopyco/mouse/config.h +++ b/keyboards/ploopyco/mouse/config.h @@ -38,5 +38,5 @@ /* Custom encoder needs to specify just how many encoders we have */ #define NUM_ENCODERS 1 -#define ENCODERS_PAD_A { F0 } -#define ENCODERS_PAD_B { F4 } +#define ENCODER_A_PINS { F0 } +#define ENCODER_B_PINS { F4 } diff --git a/keyboards/ploopyco/ploopyco.c b/keyboards/ploopyco/ploopyco.c index e4726238f26..a6f76203d64 100644 --- a/keyboards/ploopyco/ploopyco.c +++ b/keyboards/ploopyco/ploopyco.c @@ -71,8 +71,8 @@ float scroll_accumulated_v = 0; #ifdef ENCODER_ENABLE uint16_t lastScroll = 0; // Previous confirmed wheel event uint16_t lastMidClick = 0; // Stops scrollwheel from being read if it was pressed -pin_t encoder_pins_a[1] = ENCODERS_PAD_A; -pin_t encoder_pins_b[1] = ENCODERS_PAD_B; +pin_t encoder_pins_a[1] = ENCODER_A_PINS; +pin_t encoder_pins_b[1] = ENCODER_B_PINS; bool debug_encoder = false; bool encoder_update_kb(uint8_t index, bool clockwise) { diff --git a/keyboards/ploopyco/trackball/config.h b/keyboards/ploopyco/trackball/config.h index 80457d062aa..2aac27437ab 100644 --- a/keyboards/ploopyco/trackball/config.h +++ b/keyboards/ploopyco/trackball/config.h @@ -38,5 +38,5 @@ /* Custom encoder needs to specify just how many encoders we have */ #define NUM_ENCODERS 1 -#define ENCODERS_PAD_A { F0 } -#define ENCODERS_PAD_B { F4 } +#define ENCODER_A_PINS { F0 } +#define ENCODER_B_PINS { F4 } diff --git a/keyboards/ploopyco/trackball_mini/config.h b/keyboards/ploopyco/trackball_mini/config.h index c5d2d5694e4..2e0b570bbae 100644 --- a/keyboards/ploopyco/trackball_mini/config.h +++ b/keyboards/ploopyco/trackball_mini/config.h @@ -38,5 +38,5 @@ /* Custom encoder needs to specify just how many encoders we have */ #define NUM_ENCODERS 1 -#define ENCODERS_PAD_A { F0 } -#define ENCODERS_PAD_B { F4 } +#define ENCODER_A_PINS { F0 } +#define ENCODER_B_PINS { F4 } diff --git a/keyboards/ploopyco/trackball_thumb/config.h b/keyboards/ploopyco/trackball_thumb/config.h index 631456d9d31..f03ffc76990 100644 --- a/keyboards/ploopyco/trackball_thumb/config.h +++ b/keyboards/ploopyco/trackball_thumb/config.h @@ -42,5 +42,5 @@ /* Custom encoder needs to specify just how many encoders we have */ #define NUM_ENCODERS 1 -#define ENCODERS_PAD_A { F4 } -#define ENCODERS_PAD_B { F0 } +#define ENCODER_A_PINS { F4 } +#define ENCODER_B_PINS { F0 } diff --git a/keyboards/rgbkb/sol/keymaps/default/keymap.c b/keyboards/rgbkb/sol/keymaps/default/keymap.c index 4a6511cbfc7..8997e9a582e 100644 --- a/keyboards/rgbkb/sol/keymaps/default/keymap.c +++ b/keyboards/rgbkb/sol/keymaps/default/keymap.c @@ -201,7 +201,7 @@ const rgb_matrix_f rgb_matrix_functions[6][2] = { #ifdef ENCODER_ENABLE -static pin_t encoders_pad_a[] = ENCODERS_PAD_A; +static pin_t encoders_pad_a[] = ENCODER_A_PINS; #define NUMBER_OF_ENCODERS ARRAY_SIZE(encoders_pad_a) const uint16_t PROGMEM encoders[][NUMBER_OF_ENCODERS * 2][2] = { diff --git a/keyboards/rgbkb/sol/rev2/config.h b/keyboards/rgbkb/sol/rev2/config.h index ab5150051a0..5867c6dfe36 100644 --- a/keyboards/rgbkb/sol/rev2/config.h +++ b/keyboards/rgbkb/sol/rev2/config.h @@ -49,12 +49,12 @@ along with this program. If not, see . // Encoder support #ifndef EXTRA_ENCODERS_ENABLE -#define ENCODERS_PAD_A { D2 } -#define ENCODERS_PAD_B { D6 } +#define ENCODER_A_PINS { D2 } +#define ENCODER_B_PINS { D6 } #else #ifdef OLED_ENABLE #error Extra encoders cannot be enabled at the same time as the OLED Driver as they use the same pins. #endif -#define ENCODERS_PAD_A { D2, D1, B0 } -#define ENCODERS_PAD_B { D6, B1, D0 } +#define ENCODER_A_PINS { D2, D1, B0 } +#define ENCODER_B_PINS { D6, B1, D0 } #endif diff --git a/keyboards/terrazzo/readme.md b/keyboards/terrazzo/readme.md index e0f4f3457f0..828819f7b45 100644 --- a/keyboards/terrazzo/readme.md +++ b/keyboards/terrazzo/readme.md @@ -82,8 +82,8 @@ Change pinouts, Pro Micro does not have the "F0" pin. Set encoder to just top or bottom position. ``` -#define ENCODERS_PAD_A { C6 } -#define ENCODERS_PAD_B { D4 } +#define ENCODER_A_PINS { C6 } +#define ENCODER_B_PINS { D4 } ``` ## Encoder Setup diff --git a/lib/python/qmk/cli/generate/config_h.py b/lib/python/qmk/cli/generate/config_h.py index fc681300a37..d613f7b92c1 100755 --- a/lib/python/qmk/cli/generate/config_h.py +++ b/lib/python/qmk/cli/generate/config_h.py @@ -135,8 +135,8 @@ def generate_encoder_config(encoder_json, config_h_lines, postfix=''): b_pads.append(encoder["pin_b"]) resolutions.append(encoder.get("resolution", None)) - config_h_lines.append(generate_define(f'ENCODERS_PAD_A{postfix}', f'{{ {", ".join(a_pads)} }}')) - config_h_lines.append(generate_define(f'ENCODERS_PAD_B{postfix}', f'{{ {", ".join(b_pads)} }}')) + config_h_lines.append(generate_define(f'ENCODER_A_PINS{postfix}', f'{{ {", ".join(a_pads)} }}')) + config_h_lines.append(generate_define(f'ENCODER_B_PINS{postfix}', f'{{ {", ".join(b_pads)} }}')) if None in resolutions: cli.log.debug(f"Unable to generate ENCODER_RESOLUTION{postfix} configuration") diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index 091a11854c0..5b3b2490150 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -375,8 +375,8 @@ def _extract_audio(info_data, config_c): def _extract_encoders_values(config_c, postfix=''): """Common encoder extraction logic """ - a_pad = config_c.get(f'ENCODERS_PAD_A{postfix}', '').replace(' ', '')[1:-1] - b_pad = config_c.get(f'ENCODERS_PAD_B{postfix}', '').replace(' ', '')[1:-1] + a_pad = config_c.get(f'ENCODER_A_PINS{postfix}', '').replace(' ', '')[1:-1] + b_pad = config_c.get(f'ENCODER_B_PINS{postfix}', '').replace(' ', '')[1:-1] resolutions = config_c.get(f'ENCODER_RESOLUTIONS{postfix}', '').replace(' ', '')[1:-1] default_resolution = config_c.get('ENCODER_RESOLUTION', None) diff --git a/quantum/encoder.h b/quantum/encoder.h index 317a91f1da5..1d2f1f46c7f 100644 --- a/quantum/encoder.h +++ b/quantum/encoder.h @@ -22,6 +22,21 @@ #include "gpio.h" #include "util.h" +// ======== DEPRECATED DEFINES - DO NOT USE ======== +#ifdef ENCODERS_PAD_A +# define ENCODER_A_PINS ENCODERS_PAD_A +#endif +#ifdef ENCODERS_PAD_B +# define ENCODER_B_PINS ENCODERS_PAD_B +#endif +#ifdef ENCODERS_PAD_A_RIGHT +# define ENCODER_A_PINS_RIGHT ENCODERS_PAD_A_RIGHT +#endif +#ifdef ENCODERS_PAD_B_RIGHT +# define ENCODER_B_PINS_RIGHT ENCODERS_PAD_B_RIGHT +#endif +// ======== + #ifdef ENCODER_ENABLE __attribute__((weak)) bool should_process_encoder(void); @@ -36,16 +51,16 @@ bool encoder_update_user(uint8_t index, bool clockwise); # ifdef SPLIT_KEYBOARD -# if defined(ENCODERS_PAD_A_RIGHT) +# if defined(ENCODER_A_PINS_RIGHT) # ifndef NUM_ENCODERS_LEFT -# define NUM_ENCODERS_LEFT ARRAY_SIZE(((pin_t[])ENCODERS_PAD_A)) +# define NUM_ENCODERS_LEFT ARRAY_SIZE(((pin_t[])ENCODER_A_PINS)) # endif # ifndef NUM_ENCODERS_RIGHT -# define NUM_ENCODERS_RIGHT ARRAY_SIZE(((pin_t[])ENCODERS_PAD_A_RIGHT)) +# define NUM_ENCODERS_RIGHT ARRAY_SIZE(((pin_t[])ENCODER_A_PINS_RIGHT)) # endif # else # ifndef NUM_ENCODERS_LEFT -# define NUM_ENCODERS_LEFT ARRAY_SIZE(((pin_t[])ENCODERS_PAD_A)) +# define NUM_ENCODERS_LEFT ARRAY_SIZE(((pin_t[])ENCODER_A_PINS)) # endif # ifndef NUM_ENCODERS_RIGHT # define NUM_ENCODERS_RIGHT NUM_ENCODERS_LEFT @@ -58,19 +73,13 @@ bool encoder_update_user(uint8_t index, bool clockwise); # else // SPLIT_KEYBOARD # ifndef NUM_ENCODERS -# define NUM_ENCODERS ARRAY_SIZE(((pin_t[])ENCODERS_PAD_A)) +# define NUM_ENCODERS ARRAY_SIZE(((pin_t[])ENCODER_A_PINS)) # endif # define NUM_ENCODERS_LEFT NUM_ENCODERS # define NUM_ENCODERS_RIGHT 0 # endif // SPLIT_KEYBOARD -# ifndef NUM_ENCODERS -# define NUM_ENCODERS 0 -# define NUM_ENCODERS_LEFT 0 -# define NUM_ENCODERS_RIGHT 0 -# endif // NUM_ENCODERS - # define NUM_ENCODERS_MAX_PER_SIDE MAX(NUM_ENCODERS_LEFT, NUM_ENCODERS_RIGHT) # ifndef MAX_QUEUED_ENCODER_EVENTS diff --git a/quantum/encoder/tests/config_mock.h b/quantum/encoder/tests/config_mock.h index 9eb59ddc881..b5a1537d8a2 100644 --- a/quantum/encoder/tests/config_mock.h +++ b/quantum/encoder/tests/config_mock.h @@ -7,9 +7,9 @@ #define MATRIX_COLS 1 /* Here, "pins" from 0 to 31 are allowed. */ -#define ENCODERS_PAD_A \ +#define ENCODER_A_PINS \ { 0 } -#define ENCODERS_PAD_B \ +#define ENCODER_B_PINS \ { 1 } #ifdef __cplusplus diff --git a/quantum/encoder/tests/config_mock_split_left_eq_right.h b/quantum/encoder/tests/config_mock_split_left_eq_right.h index ea795657ef1..a4aa051ef1a 100644 --- a/quantum/encoder/tests/config_mock_split_left_eq_right.h +++ b/quantum/encoder/tests/config_mock_split_left_eq_right.h @@ -7,13 +7,13 @@ #define MATRIX_COLS 1 /* Here, "pins" from 0 to 31 are allowed. */ -#define ENCODERS_PAD_A \ +#define ENCODER_A_PINS \ { 0, 2 } -#define ENCODERS_PAD_B \ +#define ENCODER_B_PINS \ { 1, 3 } -#define ENCODERS_PAD_A_RIGHT \ +#define ENCODER_A_PINS_RIGHT \ { 4, 6 } -#define ENCODERS_PAD_B_RIGHT \ +#define ENCODER_B_PINS_RIGHT \ { 5, 7 } #ifdef __cplusplus diff --git a/quantum/encoder/tests/config_mock_split_left_gt_right.h b/quantum/encoder/tests/config_mock_split_left_gt_right.h index abcfe039189..77190797add 100644 --- a/quantum/encoder/tests/config_mock_split_left_gt_right.h +++ b/quantum/encoder/tests/config_mock_split_left_gt_right.h @@ -7,13 +7,13 @@ #define MATRIX_COLS 1 /* Here, "pins" from 0 to 31 are allowed. */ -#define ENCODERS_PAD_A \ +#define ENCODER_A_PINS \ { 0, 2, 4 } -#define ENCODERS_PAD_B \ +#define ENCODER_B_PINS \ { 1, 3, 5 } -#define ENCODERS_PAD_A_RIGHT \ +#define ENCODER_A_PINS_RIGHT \ { 6, 8 } -#define ENCODERS_PAD_B_RIGHT \ +#define ENCODER_B_PINS_RIGHT \ { 7, 9 } #ifdef __cplusplus diff --git a/quantum/encoder/tests/config_mock_split_left_lt_right.h b/quantum/encoder/tests/config_mock_split_left_lt_right.h index 075c774b0d1..61808e866e1 100644 --- a/quantum/encoder/tests/config_mock_split_left_lt_right.h +++ b/quantum/encoder/tests/config_mock_split_left_lt_right.h @@ -7,13 +7,13 @@ #define MATRIX_COLS 1 /* Here, "pins" from 0 to 31 are allowed. */ -#define ENCODERS_PAD_A \ +#define ENCODER_A_PINS \ { 0, 2 } -#define ENCODERS_PAD_B \ +#define ENCODER_B_PINS \ { 1, 3 } -#define ENCODERS_PAD_A_RIGHT \ +#define ENCODER_A_PINS_RIGHT \ { 4, 6, 8 } -#define ENCODERS_PAD_B_RIGHT \ +#define ENCODER_B_PINS_RIGHT \ { 5, 7, 9 } #ifdef __cplusplus diff --git a/quantum/encoder/tests/config_mock_split_no_left.h b/quantum/encoder/tests/config_mock_split_no_left.h index dfd8358929b..599e584ff16 100644 --- a/quantum/encoder/tests/config_mock_split_no_left.h +++ b/quantum/encoder/tests/config_mock_split_no_left.h @@ -7,13 +7,13 @@ #define MATRIX_COLS 1 /* Here, "pins" from 0 to 31 are allowed. */ -#define ENCODERS_PAD_A \ +#define ENCODER_A_PINS \ {} -#define ENCODERS_PAD_B \ +#define ENCODER_B_PINS \ {} -#define ENCODERS_PAD_A_RIGHT \ +#define ENCODER_A_PINS_RIGHT \ { 0, 2 } -#define ENCODERS_PAD_B_RIGHT \ +#define ENCODER_B_PINS_RIGHT \ { 1, 3 } #ifdef __cplusplus diff --git a/quantum/encoder/tests/config_mock_split_no_right.h b/quantum/encoder/tests/config_mock_split_no_right.h index 5683eade8c9..c3f753014c0 100644 --- a/quantum/encoder/tests/config_mock_split_no_right.h +++ b/quantum/encoder/tests/config_mock_split_no_right.h @@ -7,13 +7,13 @@ #define MATRIX_COLS 1 /* Here, "pins" from 0 to 31 are allowed. */ -#define ENCODERS_PAD_A \ +#define ENCODER_A_PINS \ { 0, 2 } -#define ENCODERS_PAD_B \ +#define ENCODER_B_PINS \ { 1, 3 } -#define ENCODERS_PAD_A_RIGHT \ +#define ENCODER_A_PINS_RIGHT \ {} -#define ENCODERS_PAD_B_RIGHT \ +#define ENCODER_B_PINS_RIGHT \ {} #ifdef __cplusplus diff --git a/quantum/encoder/tests/config_mock_split_role.h b/quantum/encoder/tests/config_mock_split_role.h index ea795657ef1..a4aa051ef1a 100644 --- a/quantum/encoder/tests/config_mock_split_role.h +++ b/quantum/encoder/tests/config_mock_split_role.h @@ -7,13 +7,13 @@ #define MATRIX_COLS 1 /* Here, "pins" from 0 to 31 are allowed. */ -#define ENCODERS_PAD_A \ +#define ENCODER_A_PINS \ { 0, 2 } -#define ENCODERS_PAD_B \ +#define ENCODER_B_PINS \ { 1, 3 } -#define ENCODERS_PAD_A_RIGHT \ +#define ENCODER_A_PINS_RIGHT \ { 4, 6 } -#define ENCODERS_PAD_B_RIGHT \ +#define ENCODER_B_PINS_RIGHT \ { 5, 7 } #ifdef __cplusplus From f8596b40a4bb15a1881138baa8b8787277e2e622 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 3 Jul 2024 18:35:54 +1000 Subject: [PATCH 163/519] Normalise mouse keycodes (#23975) --- data/constants/keycodes/keycodes_0.0.5.hjson | 0 .../keycodes/keycodes_0.0.5_basic.hjson | 175 ++++++++++++++++++ docs/features/encoders.md | 8 +- docs/features/mouse_keys.md | 82 ++++---- docs/features/repeat_key.md | 8 +- docs/keycodes.md | 39 ++-- drivers/sensors/cirque_pinnacle_gestures.h | 2 +- .../lib/satisfaction75/satisfaction_encoder.c | 6 +- keyboards/dichotomy/keymaps/default/keymap.c | 16 +- quantum/action.c | 6 +- quantum/encoder.c | 4 +- quantum/keycode.h | 8 +- quantum/keycodes.h | 80 ++++---- quantum/mousekey.c | 112 +++++------ quantum/pointing_device/pointing_device.c | 2 +- .../pointing_device_auto_mouse.h | 2 +- quantum/quantum_keycodes_legacy.h | 39 ++++ quantum/repeat_key.c | 8 +- tests/test_common/keycode_table.cpp | 38 ++-- 19 files changed, 426 insertions(+), 209 deletions(-) create mode 100644 data/constants/keycodes/keycodes_0.0.5.hjson create mode 100644 data/constants/keycodes/keycodes_0.0.5_basic.hjson diff --git a/data/constants/keycodes/keycodes_0.0.5.hjson b/data/constants/keycodes/keycodes_0.0.5.hjson new file mode 100644 index 00000000000..e69de29bb2d diff --git a/data/constants/keycodes/keycodes_0.0.5_basic.hjson b/data/constants/keycodes/keycodes_0.0.5_basic.hjson new file mode 100644 index 00000000000..79b6bf6596e --- /dev/null +++ b/data/constants/keycodes/keycodes_0.0.5_basic.hjson @@ -0,0 +1,175 @@ +{ + "keycodes": { + "0x00CD": { + "group": "mouse", + "key": "QK_MOUSE_CURSOR_UP", + "label": "Mouse cursor up", + "aliases": [ + "!reset!", + "MS_UP" + ] + }, + "0x00CE": { + "group": "mouse", + "key": "QK_MOUSE_CURSOR_DOWN", + "label": "Mouse cursor down", + "aliases": [ + "!reset!", + "MS_DOWN" + ] + }, + "0x00CF": { + "group": "mouse", + "key": "QK_MOUSE_CURSOR_LEFT", + "label": "Mouse cursor left", + "aliases": [ + "!reset!", + "MS_LEFT" + ] + }, + "0x00D0": { + "group": "mouse", + "key": "QK_MOUSE_CURSOR_RIGHT", + "label": "Mouse cursor right", + "aliases": [ + "!reset!", + "MS_RGHT" + ] + }, + "0x00D1": { + "group": "mouse", + "key": "QK_MOUSE_BUTTON_1", + "label": "Mouse button 1", + "aliases": [ + "!reset!", + "MS_BTN1" + ] + }, + "0x00D2": { + "group": "mouse", + "key": "QK_MOUSE_BUTTON_2", + "label": "Mouse button 2", + "aliases": [ + "!reset!", + "MS_BTN2" + ] + }, + "0x00D3": { + "group": "mouse", + "key": "QK_MOUSE_BUTTON_3", + "label": "Mouse button 3", + "aliases": [ + "!reset!", + "MS_BTN3" + ] + }, + "0x00D4": { + "group": "mouse", + "key": "QK_MOUSE_BUTTON_4", + "label": "Mouse button 4", + "aliases": [ + "!reset!", + "MS_BTN4" + ] + }, + "0x00D5": { + "group": "mouse", + "key": "QK_MOUSE_BUTTON_5", + "label": "Mouse button 5", + "aliases": [ + "!reset!", + "MS_BTN5" + ] + }, + "0x00D6": { + "group": "mouse", + "key": "QK_MOUSE_BUTTON_6", + "label": "Mouse button 6", + "aliases": [ + "!reset!", + "MS_BTN6" + ] + }, + "0x00D7": { + "group": "mouse", + "key": "QK_MOUSE_BUTTON_7", + "label": "Mouse button 7", + "aliases": [ + "!reset!", + "MS_BTN7" + ] + }, + "0x00D8": { + "group": "mouse", + "key": "QK_MOUSE_BUTTON_8", + "label": "Mouse button 8", + "aliases": [ + "!reset!", + "MS_BTN8" + ] + }, + "0x00D9": { + "group": "mouse", + "key": "QK_MOUSE_WHEEL_UP", + "label": "Mouse wheel up", + "aliases": [ + "!reset!", + "MS_WHLU" + ] + }, + "0x00DA": { + "group": "mouse", + "key": "QK_MOUSE_WHEEL_DOWN", + "label": "Mouse wheel down", + "aliases": [ + "!reset!", + "MS_WHLD" + ] + }, + "0x00DB": { + "group": "mouse", + "key": "QK_MOUSE_WHEEL_LEFT", + "label": "Mouse wheel left", + "aliases": [ + "!reset!", + "MS_WHLL" + ] + }, + "0x00DC": { + "group": "mouse", + "key": "QK_MOUSE_WHEEL_RIGHT", + "label": "Mouse wheel right", + "aliases": [ + "!reset!", + "MS_WHLR" + ] + }, + "0x00DD": { + "group": "mouse", + "key": "QK_MOUSE_ACCELERATION_0", + "label": "Set mouse acceleration to 0", + "aliases": [ + "!reset!", + "MS_ACL0" + ] + }, + "0x00DE": { + "group": "mouse", + "key": "QK_MOUSE_ACCELERATION_1", + "label": "Set mouse acceleration to 1", + "aliases": [ + "!reset!", + "MS_ACL1" + ] + }, + "0x00DF": { + "group": "mouse", + "key": "QK_MOUSE_ACCELERATION_2", + "label": "Set mouse acceleration to 2", + "aliases": [ + "!reset!", + "MS_ACL2" + ] + } + } +} diff --git a/docs/features/encoders.md b/docs/features/encoders.md index eea70dafecf..73cbb4f3f3f 100644 --- a/docs/features/encoders.md +++ b/docs/features/encoders.md @@ -84,10 +84,10 @@ Your `keymap.c` will then need an encoder mapping defined (for four layers and t ```c #if defined(ENCODER_MAP_ENABLE) const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { - [0] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, - [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, - [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, + [0] = { ENCODER_CCW_CW(MS_WHLU, MS_WHLD), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, + [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, + [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, }; #endif ``` diff --git a/docs/features/mouse_keys.md b/docs/features/mouse_keys.md index c2b3e98f424..4cc06c992ae 100644 --- a/docs/features/mouse_keys.md +++ b/docs/features/mouse_keys.md @@ -18,27 +18,27 @@ MOUSEKEY_ENABLE = yes In your keymap you can use the following keycodes to map key presses to mouse actions: -|Key |Aliases |Description | -|----------------|---------|-----------------| -|`KC_MS_UP` |`KC_MS_U`|Move cursor up | -|`KC_MS_DOWN` |`KC_MS_D`|Move cursor down | -|`KC_MS_LEFT` |`KC_MS_L`|Move cursor left | -|`KC_MS_RIGHT` |`KC_MS_R`|Move cursor right| -|`KC_MS_BTN1` |`KC_BTN1`|Press button 1 | -|`KC_MS_BTN2` |`KC_BTN2`|Press button 2 | -|`KC_MS_BTN3` |`KC_BTN3`|Press button 3 | -|`KC_MS_BTN4` |`KC_BTN4`|Press button 4 | -|`KC_MS_BTN5` |`KC_BTN5`|Press button 5 | -|`KC_MS_BTN6` |`KC_BTN6`|Press button 6 | -|`KC_MS_BTN7` |`KC_BTN7`|Press button 7 | -|`KC_MS_BTN8` |`KC_BTN8`|Press button 8 | -|`KC_MS_WH_UP` |`KC_WH_U`|Move wheel up | -|`KC_MS_WH_DOWN` |`KC_WH_D`|Move wheel down | -|`KC_MS_WH_LEFT` |`KC_WH_L`|Move wheel left | -|`KC_MS_WH_RIGHT`|`KC_WH_R`|Move wheel right | -|`KC_MS_ACCEL0` |`KC_ACL0`|Set speed to 0 | -|`KC_MS_ACCEL1` |`KC_ACL1`|Set speed to 1 | -|`KC_MS_ACCEL2` |`KC_ACL2`|Set speed to 2 | +|Key |Aliases |Description | +|-------------------------|---------|---------------------------| +|`QK_MOUSE_CURSOR_UP` |`MS_UP` |Mouse cursor up | +|`QK_MOUSE_CURSOR_DOWN` |`MS_DOWN`|Mouse cursor down | +|`QK_MOUSE_CURSOR_LEFT` |`MS_LEFT`|Mouse cursor left | +|`QK_MOUSE_CURSOR_RIGHT` |`MS_RGHT`|Mouse cursor right | +|`QK_MOUSE_BUTTON_1` |`MS_BTN1`|Mouse button 1 | +|`QK_MOUSE_BUTTON_2` |`MS_BTN2`|Mouse button 2 | +|`QK_MOUSE_BUTTON_3` |`MS_BTN3`|Mouse button 3 | +|`QK_MOUSE_BUTTON_4` |`MS_BTN4`|Mouse button 4 | +|`QK_MOUSE_BUTTON_5` |`MS_BTN5`|Mouse button 5 | +|`QK_MOUSE_BUTTON_6` |`MS_BTN6`|Mouse button 6 | +|`QK_MOUSE_BUTTON_7` |`MS_BTN7`|Mouse button 7 | +|`QK_MOUSE_BUTTON_8` |`MS_BTN8`|Mouse button 8 | +|`QK_MOUSE_WHEEL_UP` |`MS_WHLU`|Mouse wheel up | +|`QK_MOUSE_WHEEL_DOWN` |`MS_WHLD`|Mouse wheel down | +|`QK_MOUSE_WHEEL_LEFT` |`MS_WHLL`|Mouse wheel left | +|`QK_MOUSE_WHEEL_RIGHT` |`MS_WHLR`|Mouse wheel right | +|`QK_MOUSE_ACCELERATION_0`|`MS_ACL0`|Set mouse acceleration to 0| +|`QK_MOUSE_ACCELERATION_1`|`MS_ACL1`|Set mouse acceleration to 1| +|`QK_MOUSE_ACCELERATION_2`|`MS_ACL2`|Set mouse acceleration to 2| ## Configuring mouse keys @@ -106,17 +106,17 @@ Tips: ### Constant mode -In this mode you can define multiple different speeds for both the cursor and the mouse wheel. There is no acceleration. `KC_ACL0`, `KC_ACL1` and `KC_ACL2` change the cursor and scroll speed to their respective setting. +In this mode you can define multiple different speeds for both the cursor and the mouse wheel. There is no acceleration. `MS_ACL0`, `MS_ACL1` and `MS_ACL2` change the cursor and scroll speed to their respective setting. You can choose whether speed selection is momentary or tap-to-select: * **Momentary:** The chosen speed is only active while you hold the respective key. When the key is raised, mouse keys returns to the unmodified speed. -* **Tap-to-select:** The chosen speed is activated when you press the respective key and remains active even after the key has been raised. The default speed is that of `KC_ACL1`. There is no unmodified speed. +* **Tap-to-select:** The chosen speed is activated when you press the respective key and remains active even after the key has been raised. The default speed is that of `MS_ACL1`. There is no unmodified speed. The default speeds from slowest to fastest are as follows: -* **Momentary:** `KC_ACL0` < `KC_ACL1` < *unmodified* < `KC_ACL2` -* **Tap-to-select:** `KC_ACL0` < `KC_ACL1` < `KC_ACL2` +* **Momentary:** `MS_ACL0` < `MS_ACL1` < *unmodified* < `MS_ACL2` +* **Tap-to-select:** `MS_ACL0` < `MS_ACL1` < `MS_ACL2` To use constant speed mode, you must at least define `MK_3_SPEED` in your keymap’s `config.h` file: @@ -138,32 +138,32 @@ Use the following settings if you want to adjust cursor movement or scrolling: |`MK_MOMENTARY_ACCEL` |*Not defined*|Enable momentary speed selection | |`MK_C_OFFSET_UNMOD` |16 |Cursor offset per movement (unmodified) | |`MK_C_INTERVAL_UNMOD`|16 |Time between cursor movements (unmodified) | -|`MK_C_OFFSET_0` |1 |Cursor offset per movement (`KC_ACL0`) | -|`MK_C_INTERVAL_0` |32 |Time between cursor movements (`KC_ACL0`) | -|`MK_C_OFFSET_1` |4 |Cursor offset per movement (`KC_ACL1`) | -|`MK_C_INTERVAL_1` |16 |Time between cursor movements (`KC_ACL1`) | -|`MK_C_OFFSET_2` |32 |Cursor offset per movement (`KC_ACL2`) | -|`MK_C_INTERVAL_2` |16 |Time between cursor movements (`KC_ACL2`) | +|`MK_C_OFFSET_0` |1 |Cursor offset per movement (`MS_ACL0`) | +|`MK_C_INTERVAL_0` |32 |Time between cursor movements (`MS_ACL0`) | +|`MK_C_OFFSET_1` |4 |Cursor offset per movement (`MS_ACL1`) | +|`MK_C_INTERVAL_1` |16 |Time between cursor movements (`MS_ACL1`) | +|`MK_C_OFFSET_2` |32 |Cursor offset per movement (`MS_ACL2`) | +|`MK_C_INTERVAL_2` |16 |Time between cursor movements (`MS_ACL2`) | |`MK_W_OFFSET_UNMOD` |1 |Scroll steps per scroll action (unmodified)| |`MK_W_INTERVAL_UNMOD`|40 |Time between scroll steps (unmodified) | -|`MK_W_OFFSET_0` |1 |Scroll steps per scroll action (`KC_ACL0`) | -|`MK_W_INTERVAL_0` |360 |Time between scroll steps (`KC_ACL0`) | -|`MK_W_OFFSET_1` |1 |Scroll steps per scroll action (`KC_ACL1`) | -|`MK_W_INTERVAL_1` |120 |Time between scroll steps (`KC_ACL1`) | -|`MK_W_OFFSET_2` |1 |Scroll steps per scroll action (`KC_ACL2`) | -|`MK_W_INTERVAL_2` |20 |Time between scroll steps (`KC_ACL2`) | +|`MK_W_OFFSET_0` |1 |Scroll steps per scroll action (`MS_ACL0`) | +|`MK_W_INTERVAL_0` |360 |Time between scroll steps (`MS_ACL0`) | +|`MK_W_OFFSET_1` |1 |Scroll steps per scroll action (`MS_ACL1`) | +|`MK_W_INTERVAL_1` |120 |Time between scroll steps (`MS_ACL1`) | +|`MK_W_OFFSET_2` |1 |Scroll steps per scroll action (`MS_ACL2`) | +|`MK_W_INTERVAL_2` |20 |Time between scroll steps (`MS_ACL2`) | ### Combined mode -This mode functions like **Accelerated** mode, however, you can hold `KC_ACL0`, `KC_ACL1` and `KC_ACL2` +This mode functions like **Accelerated** mode, however, you can hold `MS_ACL0`, `MS_ACL1` and `MS_ACL2` to momentarily (while held) set the cursor and scroll speeds to constant speeds. When no acceleration keys are held, this mode is identical to **Accelerated** mode, and can be modified using all of the relevant settings. -* **KC_ACL0:** This acceleration sets your cursor to the slowest possible speed. This is useful for very +* **MS_ACL0:** This acceleration sets your cursor to the slowest possible speed. This is useful for very small and detailed movements of the cursor. -* **KC_ACL1:** This acceleration sets your cursor to half the maximum (user defined) speed. -* **KC_ACL2:** This acceleration sets your cursor to the maximum (computer defined) speed. This is +* **MS_ACL1:** This acceleration sets your cursor to half the maximum (user defined) speed. +* **MS_ACL2:** This acceleration sets your cursor to the maximum (computer defined) speed. This is useful for moving the cursor large distances without much accuracy. To use combined speed mode, you must at least define `MK_COMBINED` in your keymap’s `config.h` file: diff --git a/docs/features/repeat_key.md b/docs/features/repeat_key.md index 53495e0f4d6..7f2bdc44e65 100644 --- a/docs/features/repeat_key.md +++ b/docs/features/repeat_key.md @@ -60,10 +60,10 @@ with mods, like Ctrl + Left ↔ Ctrl + Right Arrow. |`KC_UP` ↔ `KC_DOWN` | Up ↔ Down Arrow | |`KC_HOME` ↔ `KC_END` | Home ↔ End | |`KC_PGUP` ↔ `KC_PGDN` | Page Up ↔ Page Down | -|`KC_MS_L` ↔ `KC_MS_R` | Mouse Cursor Left ↔ Right | -|`KC_MS_U` ↔ `KC_MS_D` | Mouse Cursor Up ↔ Down | -|`KC_WH_L` ↔ `KC_WH_R` | Mouse Wheel Left ↔ Right | -|`KC_WH_U` ↔ `KC_WH_D` | Mouse Wheel Up ↔ Down | +|`MS_LEFT` ↔ `MS_RGHT` | Mouse Cursor Left ↔ Right | +|`MS_UP` ↔ `MS_DOWN` | Mouse Cursor Up ↔ Down | +|`MS_WHLL` ↔ `MS_WHLR` | Mouse Wheel Left ↔ Right | +|`MS_WHLU` ↔ `MS_WHLD` | Mouse Wheel Up ↔ Down | **Misc** diff --git a/docs/keycodes.md b/docs/keycodes.md index 4c91d98fa7a..ea8b2e7b650 100644 --- a/docs/keycodes.md +++ b/docs/keycodes.md @@ -611,24 +611,27 @@ See also: [MIDI](features/midi) See also: [Mouse Keys](features/mouse_keys) -|Key |Aliases |Description | -|----------------|---------|---------------------------| -|`KC_MS_UP` |`KC_MS_U`|Mouse Cursor Up | -|`KC_MS_DOWN` |`KC_MS_D`|Mouse Cursor Down | -|`KC_MS_LEFT` |`KC_MS_L`|Mouse Cursor Left | -|`KC_MS_RIGHT` |`KC_MS_R`|Mouse Cursor Right | -|`KC_MS_BTN1` |`KC_BTN1`|Mouse Button 1 | -|`KC_MS_BTN2` |`KC_BTN2`|Mouse Button 2 | -|`KC_MS_BTN3` |`KC_BTN3`|Mouse Button 3 | -|`KC_MS_BTN4` |`KC_BTN4`|Mouse Button 4 | -|`KC_MS_BTN5` |`KC_BTN5`|Mouse Button 5 | -|`KC_MS_WH_UP` |`KC_WH_U`|Mouse Wheel Up | -|`KC_MS_WH_DOWN` |`KC_WH_D`|Mouse Wheel Down | -|`KC_MS_WH_LEFT` |`KC_WH_L`|Mouse Wheel Left | -|`KC_MS_WH_RIGHT`|`KC_WH_R`|Mouse Wheel Right | -|`KC_MS_ACCEL0` |`KC_ACL0`|Set mouse acceleration to 0| -|`KC_MS_ACCEL1` |`KC_ACL1`|Set mouse acceleration to 1| -|`KC_MS_ACCEL2` |`KC_ACL2`|Set mouse acceleration to 2| +|Key |Aliases |Description | +|-------------------------|---------|---------------------------| +|`QK_MOUSE_CURSOR_UP` |`MS_UP` |Mouse cursor up | +|`QK_MOUSE_CURSOR_DOWN` |`MS_DOWN`|Mouse cursor down | +|`QK_MOUSE_CURSOR_LEFT` |`MS_LEFT`|Mouse cursor left | +|`QK_MOUSE_CURSOR_RIGHT` |`MS_RGHT`|Mouse cursor right | +|`QK_MOUSE_BUTTON_1` |`MS_BTN1`|Mouse button 1 | +|`QK_MOUSE_BUTTON_2` |`MS_BTN2`|Mouse button 2 | +|`QK_MOUSE_BUTTON_3` |`MS_BTN3`|Mouse button 3 | +|`QK_MOUSE_BUTTON_4` |`MS_BTN4`|Mouse button 4 | +|`QK_MOUSE_BUTTON_5` |`MS_BTN5`|Mouse button 5 | +|`QK_MOUSE_BUTTON_6` |`MS_BTN6`|Mouse button 6 | +|`QK_MOUSE_BUTTON_7` |`MS_BTN7`|Mouse button 7 | +|`QK_MOUSE_BUTTON_8` |`MS_BTN8`|Mouse button 8 | +|`QK_MOUSE_WHEEL_UP` |`MS_WHLU`|Mouse wheel up | +|`QK_MOUSE_WHEEL_DOWN` |`MS_WHLD`|Mouse wheel down | +|`QK_MOUSE_WHEEL_LEFT` |`MS_WHLL`|Mouse wheel left | +|`QK_MOUSE_WHEEL_RIGHT` |`MS_WHLR`|Mouse wheel right | +|`QK_MOUSE_ACCELERATION_0`|`MS_ACL0`|Set mouse acceleration to 0| +|`QK_MOUSE_ACCELERATION_1`|`MS_ACL1`|Set mouse acceleration to 1| +|`QK_MOUSE_ACCELERATION_2`|`MS_ACL2`|Set mouse acceleration to 2| ## Modifiers {#modifiers} diff --git a/drivers/sensors/cirque_pinnacle_gestures.h b/drivers/sensors/cirque_pinnacle_gestures.h index d2aa206b2be..1412c86f7eb 100644 --- a/drivers/sensors/cirque_pinnacle_gestures.h +++ b/drivers/sensors/cirque_pinnacle_gestures.h @@ -28,7 +28,7 @@ typedef struct { # ifndef CIRQUE_PINNACLE_TAPPING_TERM # include "action.h" # include "action_tapping.h" -# define CIRQUE_PINNACLE_TAPPING_TERM GET_TAPPING_TERM(KC_BTN1, &(keyrecord_t){}) +# define CIRQUE_PINNACLE_TAPPING_TERM GET_TAPPING_TERM(QK_MOUSE_BUTTON_1, &(keyrecord_t){}) # endif # ifndef CIRQUE_PINNACLE_TOUCH_DEBOUNCE # define CIRQUE_PINNACLE_TOUCH_DEBOUNCE (CIRQUE_PINNACLE_TAPPING_TERM * 8) diff --git a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_encoder.c b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_encoder.c index aab005ebd87..7e0b82e9e7a 100644 --- a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_encoder.c +++ b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_encoder.c @@ -101,7 +101,7 @@ uint16_t handle_encoder_clockwise(void){ mapped_code = KC_MEDIA_NEXT_TRACK; break; case ENC_MODE_SCROLL: - mapped_code = KC_WH_D; + mapped_code = QK_MOUSE_WHEEL_DOWN; break; #ifdef BACKLIGHT_ENABLE case ENC_MODE_BACKLIGHT: @@ -143,7 +143,7 @@ uint16_t handle_encoder_ccw(void){ mapped_code = KC_MEDIA_PREV_TRACK; break; case ENC_MODE_SCROLL: - mapped_code = KC_WH_U; + mapped_code = QK_MOUSE_WHEEL_UP; break; #ifdef BACKLIGHT_ENABLE case ENC_MODE_BACKLIGHT: @@ -186,7 +186,7 @@ uint16_t handle_encoder_press(void){ mapped_code = KC_MEDIA_PLAY_PAUSE; break; case ENC_MODE_SCROLL: - mapped_code = KC_BTN3; + mapped_code = QK_MOUSE_BUTTON_3; break; #ifdef BACKLIGHT_ENABLE case ENC_MODE_BACKLIGHT: diff --git a/keyboards/dichotomy/keymaps/default/keymap.c b/keyboards/dichotomy/keymaps/default/keymap.c index b83f7b82e9e..b92beb73ccc 100755 --- a/keyboards/dichotomy/keymaps/default/keymap.c +++ b/keyboards/dichotomy/keymaps/default/keymap.c @@ -28,9 +28,9 @@ enum dichotomy_keycodes NUMKEY, SFTKEY, MOUKEY, - MS_BTN1, - MS_BTN2, - MS_BTN3 + CK_MSE1, + CK_MSE2, + CK_MSE3 }; #define CUSTOM_LONGPRESS 150 @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { NUMKEY, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, CK_QE, SFTKEY, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MOUKEY, KC_LCTL, KC_LALT, KC_LGUI, KC_RGUI, KC_RALT, KC_RCTL, - MS_BTN3, KC_LBRC, KC_LPRN, KC_SPC, KC_SPC, KC_RPRN, KC_RBRC, MS_BTN3 + CK_MSE3, KC_LBRC, KC_LPRN, KC_SPC, KC_SPC, KC_RPRN, KC_RBRC, CK_MSE3 ), [_SF] = LAYOUT( /* Shifted layout, small changes (because angle brackets have been moved to thumb cluster buttons) */ @@ -75,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_MS] = LAYOUT( /* Mouse layer, including buttons for clicking. */ _______, _______, _______, _______, _______, _______, KC_VOLU, KC_HOME, KC_PGUP, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, MS_BTN1, MS_BTN2, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, CK_MSE1, CK_MSE2, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______ @@ -311,7 +311,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { break; //mouse buttons, for 1-3, to update the mouse report: - case MS_BTN1: + case CK_MSE1: currentReport = pointing_device_get_report(); if (record->event.pressed) { if (shift_held && shift_suspended){ @@ -327,7 +327,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { pointing_device_set_report(currentReport); returnVal = false; break; - case MS_BTN2: + case CK_MSE2: currentReport = pointing_device_get_report(); if (record->event.pressed) { if (shift_held && shift_suspended){ @@ -343,7 +343,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { pointing_device_set_report(currentReport); returnVal = false; break; - case MS_BTN3: + case CK_MSE3: currentReport = pointing_device_get_report(); if (record->event.pressed) { if (shift_held && shift_suspended){ diff --git a/quantum/action.c b/quantum/action.c index 74ef55e5eb2..a39631ba3e9 100644 --- a/quantum/action.c +++ b/quantum/action.c @@ -329,7 +329,7 @@ void register_mouse(uint8_t mouse_keycode, bool pressed) { // should mousekeys send report, or does something else handle this? switch (mouse_keycode) { # if defined(PS2_MOUSE_ENABLE) || defined(POINTING_DEVICE_ENABLE) - case KC_MS_BTN1 ... KC_MS_BTN8: + case QK_MOUSE_BUTTON_1 ... QK_MOUSE_BUTTON_8: // let pointing device handle the buttons // expand if/when it handles more of the code # if defined(POINTING_DEVICE_ENABLE) @@ -351,8 +351,8 @@ void register_mouse(uint8_t mouse_keycode, bool pressed) { #ifdef PS2_MOUSE_ENABLE // make sure that ps2 mouse has button report synced - if (KC_MS_BTN1 <= mouse_keycode && mouse_keycode <= KC_MS_BTN3) { - uint8_t tmp_button_msk = MOUSE_BTN_MASK(mouse_keycode - KC_MS_BTN1); + if (QK_MOUSE_BUTTON_1 <= mouse_keycode && mouse_keycode <= QK_MOUSE_BUTTON_3) { + uint8_t tmp_button_msk = MOUSE_BTN_MASK(mouse_keycode - QK_MOUSE_BUTTON_1); tp_buttons = pressed ? tp_buttons | tmp_button_msk : tp_buttons & ~tmp_button_msk; } #endif diff --git a/quantum/encoder.c b/quantum/encoder.c index 2ddbf3ee1e0..27d7b1fc809 100644 --- a/quantum/encoder.c +++ b/quantum/encoder.c @@ -160,7 +160,7 @@ __attribute__((weak)) bool encoder_update_kb(uint8_t index, bool clockwise) { # if defined(EXTRAKEY_ENABLE) tap_code_delay(KC_VOLU, 10); # elif defined(MOUSEKEY_ENABLE) - tap_code_delay(KC_MS_WH_UP, 10); + tap_code_delay(QK_MOUSE_WHEEL_UP, 10); # else tap_code_delay(KC_PGDN, 10); # endif @@ -168,7 +168,7 @@ __attribute__((weak)) bool encoder_update_kb(uint8_t index, bool clockwise) { # if defined(EXTRAKEY_ENABLE) tap_code_delay(KC_VOLD, 10); # elif defined(MOUSEKEY_ENABLE) - tap_code_delay(KC_MS_WH_DOWN, 10); + tap_code_delay(QK_MOUSE_WHEEL_DOWN, 10); # else tap_code_delay(KC_PGUP, 10); # endif diff --git a/quantum/keycode.h b/quantum/keycode.h index df1452d2965..4ff6894a011 100644 --- a/quantum/keycode.h +++ b/quantum/keycode.h @@ -29,10 +29,10 @@ along with this program. If not, see . #define IS_ANY(code) (KC_A <= (code) && (code) <= 0xFF) #define IS_MOUSEKEY(code) IS_MOUSE_KEYCODE(code) -#define IS_MOUSEKEY_MOVE(code) (KC_MS_UP <= (code) && (code) <= KC_MS_RIGHT) -#define IS_MOUSEKEY_BUTTON(code) (KC_MS_BTN1 <= (code) && (code) <= KC_MS_BTN8) -#define IS_MOUSEKEY_WHEEL(code) (KC_MS_WH_UP <= (code) && (code) <= KC_MS_WH_RIGHT) -#define IS_MOUSEKEY_ACCEL(code) (KC_MS_ACCEL0 <= (code) && (code) <= KC_MS_ACCEL2) +#define IS_MOUSEKEY_MOVE(code) (QK_MOUSE_CURSOR_UP <= (code) && (code) <= QK_MOUSE_CURSOR_RIGHT) +#define IS_MOUSEKEY_BUTTON(code) (QK_MOUSE_BUTTON_1 <= (code) && (code) <= QK_MOUSE_BUTTON_8) +#define IS_MOUSEKEY_WHEEL(code) (QK_MOUSE_WHEEL_UP <= (code) && (code) <= QK_MOUSE_WHEEL_RIGHT) +#define IS_MOUSEKEY_ACCEL(code) (QK_MOUSE_ACCELERATION_0 <= (code) && (code) <= QK_MOUSE_ACCELERATION_2) #define MOD_BIT(code) (1 << ((code)&0x07)) diff --git a/quantum/keycodes.h b/quantum/keycodes.h index c92028ab439..f461e4a586e 100644 --- a/quantum/keycodes.h +++ b/quantum/keycodes.h @@ -283,25 +283,25 @@ enum qk_keycode_defines { KC_ASSISTANT = 0x00C0, KC_MISSION_CONTROL = 0x00C1, KC_LAUNCHPAD = 0x00C2, - KC_MS_UP = 0x00CD, - KC_MS_DOWN = 0x00CE, - KC_MS_LEFT = 0x00CF, - KC_MS_RIGHT = 0x00D0, - KC_MS_BTN1 = 0x00D1, - KC_MS_BTN2 = 0x00D2, - KC_MS_BTN3 = 0x00D3, - KC_MS_BTN4 = 0x00D4, - KC_MS_BTN5 = 0x00D5, - KC_MS_BTN6 = 0x00D6, - KC_MS_BTN7 = 0x00D7, - KC_MS_BTN8 = 0x00D8, - KC_MS_WH_UP = 0x00D9, - KC_MS_WH_DOWN = 0x00DA, - KC_MS_WH_LEFT = 0x00DB, - KC_MS_WH_RIGHT = 0x00DC, - KC_MS_ACCEL0 = 0x00DD, - KC_MS_ACCEL1 = 0x00DE, - KC_MS_ACCEL2 = 0x00DF, + QK_MOUSE_CURSOR_UP = 0x00CD, + QK_MOUSE_CURSOR_DOWN = 0x00CE, + QK_MOUSE_CURSOR_LEFT = 0x00CF, + QK_MOUSE_CURSOR_RIGHT = 0x00D0, + QK_MOUSE_BUTTON_1 = 0x00D1, + QK_MOUSE_BUTTON_2 = 0x00D2, + QK_MOUSE_BUTTON_3 = 0x00D3, + QK_MOUSE_BUTTON_4 = 0x00D4, + QK_MOUSE_BUTTON_5 = 0x00D5, + QK_MOUSE_BUTTON_6 = 0x00D6, + QK_MOUSE_BUTTON_7 = 0x00D7, + QK_MOUSE_BUTTON_8 = 0x00D8, + QK_MOUSE_WHEEL_UP = 0x00D9, + QK_MOUSE_WHEEL_DOWN = 0x00DA, + QK_MOUSE_WHEEL_LEFT = 0x00DB, + QK_MOUSE_WHEEL_RIGHT = 0x00DC, + QK_MOUSE_ACCELERATION_0 = 0x00DD, + QK_MOUSE_ACCELERATION_1 = 0x00DE, + QK_MOUSE_ACCELERATION_2 = 0x00DF, KC_LEFT_CTRL = 0x00E0, KC_LEFT_SHIFT = 0x00E1, KC_LEFT_ALT = 0x00E2, @@ -926,25 +926,25 @@ enum qk_keycode_defines { KC_ASST = KC_ASSISTANT, KC_MCTL = KC_MISSION_CONTROL, KC_LPAD = KC_LAUNCHPAD, - KC_MS_U = KC_MS_UP, - KC_MS_D = KC_MS_DOWN, - KC_MS_L = KC_MS_LEFT, - KC_MS_R = KC_MS_RIGHT, - KC_BTN1 = KC_MS_BTN1, - KC_BTN2 = KC_MS_BTN2, - KC_BTN3 = KC_MS_BTN3, - KC_BTN4 = KC_MS_BTN4, - KC_BTN5 = KC_MS_BTN5, - KC_BTN6 = KC_MS_BTN6, - KC_BTN7 = KC_MS_BTN7, - KC_BTN8 = KC_MS_BTN8, - KC_WH_U = KC_MS_WH_UP, - KC_WH_D = KC_MS_WH_DOWN, - KC_WH_L = KC_MS_WH_LEFT, - KC_WH_R = KC_MS_WH_RIGHT, - KC_ACL0 = KC_MS_ACCEL0, - KC_ACL1 = KC_MS_ACCEL1, - KC_ACL2 = KC_MS_ACCEL2, + MS_UP = QK_MOUSE_CURSOR_UP, + MS_DOWN = QK_MOUSE_CURSOR_DOWN, + MS_LEFT = QK_MOUSE_CURSOR_LEFT, + MS_RGHT = QK_MOUSE_CURSOR_RIGHT, + MS_BTN1 = QK_MOUSE_BUTTON_1, + MS_BTN2 = QK_MOUSE_BUTTON_2, + MS_BTN3 = QK_MOUSE_BUTTON_3, + MS_BTN4 = QK_MOUSE_BUTTON_4, + MS_BTN5 = QK_MOUSE_BUTTON_5, + MS_BTN6 = QK_MOUSE_BUTTON_6, + MS_BTN7 = QK_MOUSE_BUTTON_7, + MS_BTN8 = QK_MOUSE_BUTTON_8, + MS_WHLU = QK_MOUSE_WHEEL_UP, + MS_WHLD = QK_MOUSE_WHEEL_DOWN, + MS_WHLL = QK_MOUSE_WHEEL_LEFT, + MS_WHLR = QK_MOUSE_WHEEL_RIGHT, + MS_ACL0 = QK_MOUSE_ACCELERATION_0, + MS_ACL1 = QK_MOUSE_ACCELERATION_1, + MS_ACL2 = QK_MOUSE_ACCELERATION_2, KC_LCTL = KC_LEFT_CTRL, KC_LSFT = KC_LEFT_SHIFT, KC_LALT = KC_LEFT_ALT, @@ -1457,7 +1457,7 @@ enum qk_keycode_defines { #define IS_BASIC_KEYCODE(code) ((code) >= KC_A && (code) <= KC_EXSEL) #define IS_SYSTEM_KEYCODE(code) ((code) >= KC_SYSTEM_POWER && (code) <= KC_SYSTEM_WAKE) #define IS_CONSUMER_KEYCODE(code) ((code) >= KC_AUDIO_MUTE && (code) <= KC_LAUNCHPAD) -#define IS_MOUSE_KEYCODE(code) ((code) >= KC_MS_UP && (code) <= KC_MS_ACCEL2) +#define IS_MOUSE_KEYCODE(code) ((code) >= QK_MOUSE_CURSOR_UP && (code) <= QK_MOUSE_ACCELERATION_2) #define IS_MODIFIER_KEYCODE(code) ((code) >= KC_LEFT_CTRL && (code) <= KC_RIGHT_GUI) #define IS_SWAP_HANDS_KEYCODE(code) ((code) >= QK_SWAP_HANDS_TOGGLE && (code) <= QK_SWAP_HANDS_ONE_SHOT) #define IS_MAGIC_KEYCODE(code) ((code) >= QK_MAGIC_SWAP_CONTROL_CAPS_LOCK && (code) <= QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK) @@ -1482,7 +1482,7 @@ enum qk_keycode_defines { #define BASIC_KEYCODE_RANGE KC_A ... KC_EXSEL #define SYSTEM_KEYCODE_RANGE KC_SYSTEM_POWER ... KC_SYSTEM_WAKE #define CONSUMER_KEYCODE_RANGE KC_AUDIO_MUTE ... KC_LAUNCHPAD -#define MOUSE_KEYCODE_RANGE KC_MS_UP ... KC_MS_ACCEL2 +#define MOUSE_KEYCODE_RANGE QK_MOUSE_CURSOR_UP ... QK_MOUSE_ACCELERATION_2 #define MODIFIER_KEYCODE_RANGE KC_LEFT_CTRL ... KC_RIGHT_GUI #define SWAP_HANDS_KEYCODE_RANGE QK_SWAP_HANDS_TOGGLE ... QK_SWAP_HANDS_ONE_SHOT #define MAGIC_KEYCODE_RANGE QK_MAGIC_SWAP_CONTROL_CAPS_LOCK ... QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK diff --git a/quantum/mousekey.c b/quantum/mousekey.c index 39108117524..8683cfdffac 100644 --- a/quantum/mousekey.c +++ b/quantum/mousekey.c @@ -407,42 +407,42 @@ void mousekey_on(uint8_t code) { # ifdef MOUSEKEY_INERTIA // initial keypress sets impulse and activates first frame of movement - if ((code == KC_MS_UP) || (code == KC_MS_DOWN)) { - mousekey_y_dir = (code == KC_MS_DOWN) ? 1 : -1; + if ((code == QK_MOUSE_CURSOR_UP) || (code == QK_MOUSE_CURSOR_DOWN)) { + mousekey_y_dir = (code == QK_MOUSE_CURSOR_DOWN) ? 1 : -1; if (mousekey_frame < 2) mouse_report.y = move_unit(1); - } else if ((code == KC_MS_LEFT) || (code == KC_MS_RIGHT)) { - mousekey_x_dir = (code == KC_MS_RIGHT) ? 1 : -1; + } else if ((code == QK_MOUSE_CURSOR_LEFT) || (code == QK_MOUSE_CURSOR_RIGHT)) { + mousekey_x_dir = (code == QK_MOUSE_CURSOR_RIGHT) ? 1 : -1; if (mousekey_frame < 2) mouse_report.x = move_unit(0); } # else // no inertia - if (code == KC_MS_UP) + if (code == QK_MOUSE_CURSOR_UP) mouse_report.y = move_unit() * -1; - else if (code == KC_MS_DOWN) + else if (code == QK_MOUSE_CURSOR_DOWN) mouse_report.y = move_unit(); - else if (code == KC_MS_LEFT) + else if (code == QK_MOUSE_CURSOR_LEFT) mouse_report.x = move_unit() * -1; - else if (code == KC_MS_RIGHT) + else if (code == QK_MOUSE_CURSOR_RIGHT) mouse_report.x = move_unit(); # endif // inertia or not - else if (code == KC_MS_WH_UP) + else if (code == QK_MOUSE_WHEEL_UP) mouse_report.v = wheel_unit(); - else if (code == KC_MS_WH_DOWN) + else if (code == QK_MOUSE_WHEEL_DOWN) mouse_report.v = wheel_unit() * -1; - else if (code == KC_MS_WH_LEFT) + else if (code == QK_MOUSE_WHEEL_LEFT) mouse_report.h = wheel_unit() * -1; - else if (code == KC_MS_WH_RIGHT) + else if (code == QK_MOUSE_WHEEL_RIGHT) mouse_report.h = wheel_unit(); else if (IS_MOUSEKEY_BUTTON(code)) - mouse_report.buttons |= 1 << (code - KC_MS_BTN1); - else if (code == KC_MS_ACCEL0) + mouse_report.buttons |= 1 << (code - QK_MOUSE_BUTTON_1); + else if (code == QK_MOUSE_ACCELERATION_0) mousekey_accel |= (1 << 0); - else if (code == KC_MS_ACCEL1) + else if (code == QK_MOUSE_ACCELERATION_1) mousekey_accel |= (1 << 1); - else if (code == KC_MS_ACCEL2) + else if (code == QK_MOUSE_ACCELERATION_2) mousekey_accel |= (1 << 2); } @@ -450,43 +450,43 @@ void mousekey_off(uint8_t code) { # ifdef MOUSEKEY_INERTIA // key release clears impulse unless opposite direction is held - if ((code == KC_MS_UP) && (mousekey_y_dir < 1)) + if ((code == QK_MOUSE_CURSOR_UP) && (mousekey_y_dir < 1)) mousekey_y_dir = 0; - else if ((code == KC_MS_DOWN) && (mousekey_y_dir > -1)) + else if ((code == QK_MOUSE_CURSOR_DOWN) && (mousekey_y_dir > -1)) mousekey_y_dir = 0; - else if ((code == KC_MS_LEFT) && (mousekey_x_dir < 1)) + else if ((code == QK_MOUSE_CURSOR_LEFT) && (mousekey_x_dir < 1)) mousekey_x_dir = 0; - else if ((code == KC_MS_RIGHT) && (mousekey_x_dir > -1)) + else if ((code == QK_MOUSE_CURSOR_RIGHT) && (mousekey_x_dir > -1)) mousekey_x_dir = 0; # else // no inertia - if (code == KC_MS_UP && mouse_report.y < 0) + if (code == QK_MOUSE_CURSOR_UP && mouse_report.y < 0) mouse_report.y = 0; - else if (code == KC_MS_DOWN && mouse_report.y > 0) + else if (code == QK_MOUSE_CURSOR_DOWN && mouse_report.y > 0) mouse_report.y = 0; - else if (code == KC_MS_LEFT && mouse_report.x < 0) + else if (code == QK_MOUSE_CURSOR_LEFT && mouse_report.x < 0) mouse_report.x = 0; - else if (code == KC_MS_RIGHT && mouse_report.x > 0) + else if (code == QK_MOUSE_CURSOR_RIGHT && mouse_report.x > 0) mouse_report.x = 0; # endif // inertia or not - else if (code == KC_MS_WH_UP && mouse_report.v > 0) + else if (code == QK_MOUSE_WHEEL_UP && mouse_report.v > 0) mouse_report.v = 0; - else if (code == KC_MS_WH_DOWN && mouse_report.v < 0) + else if (code == QK_MOUSE_WHEEL_DOWN && mouse_report.v < 0) mouse_report.v = 0; - else if (code == KC_MS_WH_LEFT && mouse_report.h < 0) + else if (code == QK_MOUSE_WHEEL_LEFT && mouse_report.h < 0) mouse_report.h = 0; - else if (code == KC_MS_WH_RIGHT && mouse_report.h > 0) + else if (code == QK_MOUSE_WHEEL_RIGHT && mouse_report.h > 0) mouse_report.h = 0; else if (IS_MOUSEKEY_BUTTON(code)) - mouse_report.buttons &= ~(1 << (code - KC_MS_BTN1)); - else if (code == KC_MS_ACCEL0) + mouse_report.buttons &= ~(1 << (code - QK_MOUSE_BUTTON_1)); + else if (code == QK_MOUSE_ACCELERATION_0) mousekey_accel &= ~(1 << 0); - else if (code == KC_MS_ACCEL1) + else if (code == QK_MOUSE_ACCELERATION_1) mousekey_accel &= ~(1 << 1); - else if (code == KC_MS_ACCEL2) + else if (code == QK_MOUSE_ACCELERATION_2) mousekey_accel &= ~(1 << 2); if (mouse_report.x == 0 && mouse_report.y == 0) { mousekey_repeat = 0; @@ -568,29 +568,29 @@ void mousekey_on(uint8_t code) { uint16_t const c_offset = c_offsets[mk_speed]; uint16_t const w_offset = w_offsets[mk_speed]; uint8_t const old_speed = mk_speed; - if (code == KC_MS_UP) + if (code == QK_MOUSE_CURSOR_UP) mouse_report.y = c_offset * -1; - else if (code == KC_MS_DOWN) + else if (code == QK_MOUSE_CURSOR_DOWN) mouse_report.y = c_offset; - else if (code == KC_MS_LEFT) + else if (code == QK_MOUSE_CURSOR_LEFT) mouse_report.x = c_offset * -1; - else if (code == KC_MS_RIGHT) + else if (code == QK_MOUSE_CURSOR_RIGHT) mouse_report.x = c_offset; - else if (code == KC_MS_WH_UP) + else if (code == QK_MOUSE_WHEEL_UP) mouse_report.v = w_offset; - else if (code == KC_MS_WH_DOWN) + else if (code == QK_MOUSE_WHEEL_DOWN) mouse_report.v = w_offset * -1; - else if (code == KC_MS_WH_LEFT) + else if (code == QK_MOUSE_WHEEL_LEFT) mouse_report.h = w_offset * -1; - else if (code == KC_MS_WH_RIGHT) + else if (code == QK_MOUSE_WHEEL_RIGHT) mouse_report.h = w_offset; else if (IS_MOUSEKEY_BUTTON(code)) - mouse_report.buttons |= 1 << (code - KC_MS_BTN1); - else if (code == KC_MS_ACCEL0) + mouse_report.buttons |= 1 << (code - QK_MOUSE_BUTTON_1); + else if (code == QK_MOUSE_ACCELERATION_0) mk_speed = mkspd_0; - else if (code == KC_MS_ACCEL1) + else if (code == QK_MOUSE_ACCELERATION_1) mk_speed = mkspd_1; - else if (code == KC_MS_ACCEL2) + else if (code == QK_MOUSE_ACCELERATION_2) mk_speed = mkspd_2; if (mk_speed != old_speed) adjust_speed(); } @@ -599,30 +599,30 @@ void mousekey_off(uint8_t code) { # ifdef MK_MOMENTARY_ACCEL uint8_t const old_speed = mk_speed; # endif - if (code == KC_MS_UP && mouse_report.y < 0) + if (code == QK_MOUSE_CURSOR_UP && mouse_report.y < 0) mouse_report.y = 0; - else if (code == KC_MS_DOWN && mouse_report.y > 0) + else if (code == QK_MOUSE_CURSOR_DOWN && mouse_report.y > 0) mouse_report.y = 0; - else if (code == KC_MS_LEFT && mouse_report.x < 0) + else if (code == QK_MOUSE_CURSOR_LEFT && mouse_report.x < 0) mouse_report.x = 0; - else if (code == KC_MS_RIGHT && mouse_report.x > 0) + else if (code == QK_MOUSE_CURSOR_RIGHT && mouse_report.x > 0) mouse_report.x = 0; - else if (code == KC_MS_WH_UP && mouse_report.v > 0) + else if (code == QK_MOUSE_WHEEL_UP && mouse_report.v > 0) mouse_report.v = 0; - else if (code == KC_MS_WH_DOWN && mouse_report.v < 0) + else if (code == QK_MOUSE_WHEEL_DOWN && mouse_report.v < 0) mouse_report.v = 0; - else if (code == KC_MS_WH_LEFT && mouse_report.h < 0) + else if (code == QK_MOUSE_WHEEL_LEFT && mouse_report.h < 0) mouse_report.h = 0; - else if (code == KC_MS_WH_RIGHT && mouse_report.h > 0) + else if (code == QK_MOUSE_WHEEL_RIGHT && mouse_report.h > 0) mouse_report.h = 0; else if (IS_MOUSEKEY_BUTTON(code)) - mouse_report.buttons &= ~(1 << (code - KC_MS_BTN1)); + mouse_report.buttons &= ~(1 << (code - QK_MOUSE_BUTTON_1)); # ifdef MK_MOMENTARY_ACCEL - else if (code == KC_MS_ACCEL0) + else if (code == QK_MOUSE_ACCELERATION_0) mk_speed = mkspd_DEFAULT; - else if (code == KC_MS_ACCEL1) + else if (code == QK_MOUSE_ACCELERATION_1) mk_speed = mkspd_DEFAULT; - else if (code == KC_MS_ACCEL2) + else if (code == QK_MOUSE_ACCELERATION_2) mk_speed = mkspd_DEFAULT; if (mk_speed != old_speed) adjust_speed(); # endif diff --git a/quantum/pointing_device/pointing_device.c b/quantum/pointing_device/pointing_device.c index 4682aceb14d..74ce9108a9c 100644 --- a/quantum/pointing_device/pointing_device.c +++ b/quantum/pointing_device/pointing_device.c @@ -498,7 +498,7 @@ __attribute__((weak)) report_mouse_t pointing_device_task_combined_user(report_m __attribute__((weak)) void pointing_device_keycode_handler(uint16_t keycode, bool pressed) { if IS_MOUSEKEY_BUTTON (keycode) { - local_mouse_report.buttons = pointing_device_handle_buttons(local_mouse_report.buttons, pressed, keycode - KC_MS_BTN1); + local_mouse_report.buttons = pointing_device_handle_buttons(local_mouse_report.buttons, pressed, keycode - QK_MOUSE_BUTTON_1); pointing_device_send(); } } diff --git a/quantum/pointing_device/pointing_device_auto_mouse.h b/quantum/pointing_device/pointing_device_auto_mouse.h index a596c065a31..2c0d4d10434 100644 --- a/quantum/pointing_device/pointing_device_auto_mouse.h +++ b/quantum/pointing_device/pointing_device_auto_mouse.h @@ -37,7 +37,7 @@ # define AUTO_MOUSE_TIME 650 #endif #ifndef AUTO_MOUSE_DELAY -# define AUTO_MOUSE_DELAY GET_TAPPING_TERM(KC_MS_BTN1, &(keyrecord_t){}) +# define AUTO_MOUSE_DELAY GET_TAPPING_TERM(QK_MOUSE_BUTTON_1, &(keyrecord_t){}) #endif #ifndef AUTO_MOUSE_DEBOUNCE # define AUTO_MOUSE_DEBOUNCE 25 diff --git a/quantum/quantum_keycodes_legacy.h b/quantum/quantum_keycodes_legacy.h index 6ea5e13f3a9..e1562077e5f 100644 --- a/quantum/quantum_keycodes_legacy.h +++ b/quantum/quantum_keycodes_legacy.h @@ -16,3 +16,42 @@ #define RGB_VAD QK_UNDERGLOW_VALUE_DOWN #define RGB_SPI QK_UNDERGLOW_SPEED_UP #define RGB_SPD QK_UNDERGLOW_SPEED_DOWN + +#define KC_MS_UP QK_MOUSE_CURSOR_UP +#define KC_MS_U QK_MOUSE_CURSOR_UP +#define KC_MS_DOWN QK_MOUSE_CURSOR_DOWN +#define KC_MS_D QK_MOUSE_CURSOR_DOWN +#define KC_MS_LEFT QK_MOUSE_CURSOR_LEFT +#define KC_MS_L QK_MOUSE_CURSOR_LEFT +#define KC_MS_RIGHT QK_MOUSE_CURSOR_RIGHT +#define KC_MS_R QK_MOUSE_CURSOR_RIGHT +#define KC_MS_BTN1 QK_MOUSE_BUTTON_1 +#define KC_BTN1 QK_MOUSE_BUTTON_1 +#define KC_MS_BTN2 QK_MOUSE_BUTTON_2 +#define KC_BTN2 QK_MOUSE_BUTTON_2 +#define KC_MS_BTN3 QK_MOUSE_BUTTON_3 +#define KC_BTN3 QK_MOUSE_BUTTON_3 +#define KC_MS_BTN4 QK_MOUSE_BUTTON_4 +#define KC_BTN4 QK_MOUSE_BUTTON_4 +#define KC_MS_BTN5 QK_MOUSE_BUTTON_5 +#define KC_BTN5 QK_MOUSE_BUTTON_5 +#define KC_MS_BTN6 QK_MOUSE_BUTTON_6 +#define KC_BTN6 QK_MOUSE_BUTTON_6 +#define KC_MS_BTN7 QK_MOUSE_BUTTON_7 +#define KC_BTN7 QK_MOUSE_BUTTON_7 +#define KC_MS_BTN8 QK_MOUSE_BUTTON_8 +#define KC_BTN8 QK_MOUSE_BUTTON_8 +#define KC_MS_WH_UP QK_MOUSE_WHEEL_UP +#define KC_WH_U QK_MOUSE_WHEEL_UP +#define KC_MS_WH_DOWN QK_MOUSE_WHEEL_DOWN +#define KC_WH_D QK_MOUSE_WHEEL_DOWN +#define KC_MS_WH_LEFT QK_MOUSE_WHEEL_LEFT +#define KC_WH_L QK_MOUSE_WHEEL_LEFT +#define KC_MS_WH_RIGHT QK_MOUSE_WHEEL_RIGHT +#define KC_WH_R QK_MOUSE_WHEEL_RIGHT +#define KC_MS_ACCEL0 QK_MOUSE_ACCELERATION_0 +#define KC_ACL0 QK_MOUSE_ACCELERATION_0 +#define KC_MS_ACCEL1 QK_MOUSE_ACCELERATION_1 +#define KC_ACL1 QK_MOUSE_ACCELERATION_1 +#define KC_MS_ACCEL2 QK_MOUSE_ACCELERATION_2 +#define KC_ACL2 QK_MOUSE_ACCELERATION_2 diff --git a/quantum/repeat_key.c b/quantum/repeat_key.c index 4567428723a..56f242f8b84 100644 --- a/quantum/repeat_key.c +++ b/quantum/repeat_key.c @@ -220,10 +220,10 @@ uint16_t get_alt_repeat_key_keycode(void) { {KC_BRIU, KC_BRID}, // Brightness Up / Down. #endif // EXTRAKEY_ENABLE #ifdef MOUSEKEY_ENABLE - {KC_MS_L, KC_MS_R}, // Mouse Cursor Left / Right. - {KC_MS_U, KC_MS_D}, // Mouse Cursor Up / Down. - {KC_WH_L, KC_WH_R}, // Mouse Wheel Left / Right. - {KC_WH_U, KC_WH_D}, // Mouse Wheel Up / Down. + {MS_LEFT, MS_RGHT}, // Mouse Cursor Left / Right. + {MS_UP, MS_DOWN}, // Mouse Cursor Up / Down. + {MS_WHLL, MS_WHLR}, // Mouse Wheel Left / Right. + {MS_WHLU, MS_WHLD}, // Mouse Wheel Up / Down. #endif // MOUSEKEY_ENABLE }; // clang-format on diff --git a/tests/test_common/keycode_table.cpp b/tests/test_common/keycode_table.cpp index 18dd5360277..4c28ab4d20d 100644 --- a/tests/test_common/keycode_table.cpp +++ b/tests/test_common/keycode_table.cpp @@ -225,25 +225,25 @@ std::map KEYCODE_ID_TABLE = { {KC_ASSISTANT, "KC_ASSISTANT"}, {KC_MISSION_CONTROL, "KC_MISSION_CONTROL"}, {KC_LAUNCHPAD, "KC_LAUNCHPAD"}, - {KC_MS_UP, "KC_MS_UP"}, - {KC_MS_DOWN, "KC_MS_DOWN"}, - {KC_MS_LEFT, "KC_MS_LEFT"}, - {KC_MS_RIGHT, "KC_MS_RIGHT"}, - {KC_MS_BTN1, "KC_MS_BTN1"}, - {KC_MS_BTN2, "KC_MS_BTN2"}, - {KC_MS_BTN3, "KC_MS_BTN3"}, - {KC_MS_BTN4, "KC_MS_BTN4"}, - {KC_MS_BTN5, "KC_MS_BTN5"}, - {KC_MS_BTN6, "KC_MS_BTN6"}, - {KC_MS_BTN7, "KC_MS_BTN7"}, - {KC_MS_BTN8, "KC_MS_BTN8"}, - {KC_MS_WH_UP, "KC_MS_WH_UP"}, - {KC_MS_WH_DOWN, "KC_MS_WH_DOWN"}, - {KC_MS_WH_LEFT, "KC_MS_WH_LEFT"}, - {KC_MS_WH_RIGHT, "KC_MS_WH_RIGHT"}, - {KC_MS_ACCEL0, "KC_MS_ACCEL0"}, - {KC_MS_ACCEL1, "KC_MS_ACCEL1"}, - {KC_MS_ACCEL2, "KC_MS_ACCEL2"}, + {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"}, From e754c9f2b4bb63e5b63d09f596b6b67a0e1c56be Mon Sep 17 00:00:00 2001 From: kopibeng <52724926+kopibeng@users.noreply.github.com> Date: Wed, 3 Jul 2024 16:38:57 +0800 Subject: [PATCH 164/519] Update keymap for KLC x TGR Lena (#23688) --- keyboards/kopibeng/tgr_lena/keymaps/default/keymap.c | 2 +- keyboards/kopibeng/tgr_lena/keymaps/via/keymap.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/kopibeng/tgr_lena/keymaps/default/keymap.c b/keyboards/kopibeng/tgr_lena/keymaps/default/keymap.c index 33a1ccd6f77..7b4fd9db819 100644 --- a/keyboards/kopibeng/tgr_lena/keymaps/default/keymap.c +++ b/keyboards/kopibeng/tgr_lena/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { QK_BOOT, KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/kopibeng/tgr_lena/keymaps/via/keymap.c b/keyboards/kopibeng/tgr_lena/keymaps/via/keymap.c index 33a1ccd6f77..7b4fd9db819 100644 --- a/keyboards/kopibeng/tgr_lena/keymaps/via/keymap.c +++ b/keyboards/kopibeng/tgr_lena/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { QK_BOOT, KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; From 33adb8cba08130f3bdcf949b5c1a0ec9a60cbd30 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 3 Jul 2024 20:31:49 +1000 Subject: [PATCH 165/519] `vertex/arc60h`: add additional layouts (#24023) --- keyboards/vertex/arc60h/keyboard.json | 348 ++++++++++++++++++++++++++ 1 file changed, 348 insertions(+) diff --git a/keyboards/vertex/arc60h/keyboard.json b/keyboards/vertex/arc60h/keyboard.json index e79d8f0dc5e..4d4d903dc47 100644 --- a/keyboards/vertex/arc60h/keyboard.json +++ b/keyboards/vertex/arc60h/keyboard.json @@ -49,6 +49,10 @@ "diode_direction": "COL2ROW", "processor": "STM32F103", "bootloader": "stm32duino", + "layout_aliases": { + "LAYOUT_60_tsangan_hhkb": "LAYOUT_60_ansi_tsangan_split_bs_rshift" + }, + "community_layouts": ["60_ansi_tsangan", "60_tsangan_hhkb", "60_ansi_wkl", "60_ansi_wkl_split_bs_rshift", "60_hhkb"], "layouts": { "LAYOUT_all": { "layout": [ @@ -120,6 +124,350 @@ {"matrix": [4, 12], "x": 12.5, "y": 4}, {"matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5} ] + }, + "LAYOUT_60_ansi_tsangan": { + "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, 14], "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, 14], "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, 13], "x": 12.75, "y": 2, "w": 2.25}, + + {"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, 13], "x": 12.25, "y": 3, "w": 2.75}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [4, 1], "x": 1.5, "y": 4}, + {"matrix": [4, 3], "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": 12.5, "y": 4}, + {"matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "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": [0, 14], "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, 14], "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, 13], "x": 12.75, "y": 2, "w": 2.25}, + + {"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, 13], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 14], "x": 14, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [4, 1], "x": 1.5, "y": 4}, + {"matrix": [4, 3], "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": 12.5, "y": 4}, + {"matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_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, 14], "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, 14], "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, 13], "x": 12.75, "y": 2, "w": 2.25}, + + {"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, 13], "x": 12.25, "y": 3, "w": 2.75}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + + {"matrix": [4, 3], "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, 14], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "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": [0, 14], "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, 14], "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, 13], "x": 12.75, "y": 2, "w": 2.25}, + + {"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, 13], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 14], "x": 14, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + + {"matrix": [4, 3], "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, 14], "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": [0, 14], "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, 14], "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, 13], "x": 12.75, "y": 2, "w": 2.25}, + + {"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, 13], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 14], "x": 14, "y": 3}, + + {"matrix": [4, 1], "x": 1.5, "y": 4}, + {"matrix": [4, 3], "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": 12.5, "y": 4} + ] } } } From bc8ac8642242516e0fe61f1b97b75374c9150647 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Wed, 3 Jul 2024 22:00:53 +1000 Subject: [PATCH 166/519] Minimum python version listing. (#23989) --- lib/python/qmk/cli/__init__.py | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/lib/python/qmk/cli/__init__.py b/lib/python/qmk/cli/__init__.py index b504aa5f8c6..f3314458701 100644 --- a/lib/python/qmk/cli/__init__.py +++ b/lib/python/qmk/cli/__init__.py @@ -189,20 +189,22 @@ def _eprint(errmsg): # Supported version information # # Based on the OSes we support these are the minimum python version available by default. -# Last update: 2021 Jan 02 +# Last update: 2024 Jun 24 # -# Arch: 3.9 -# Debian: 3.7 -# Fedora 31: 3.7 -# Fedora 32: 3.8 -# Fedora 33: 3.9 -# FreeBSD: 3.7 -# Gentoo: 3.7 -# macOS: 3.9 (from homebrew) -# msys2: 3.8 -# Slackware: 3.7 -# solus: 3.7 -# void: 3.9 +# Arch: 3.12 +# Debian 11: 3.9 +# Debian 12: 3.11 +# Fedora 39: 3.12 +# Fedora 40: 3.12 +# FreeBSD: 3.11 +# Gentoo: 3.12 +# macOS: 3.12 (from homebrew) +# msys2: 3.11 +# Slackware: 3.9 +# solus: 3.10 +# Ubuntu 22.04: 3.10 +# Ubuntu 24.04: 3.12 +# void: 3.12 if sys.version_info[0] != 3 or sys.version_info[1] < 7: _eprint('Error: Your Python is too old! Please upgrade to Python 3.7 or later.') From e07f752a5704640052963ff7777bd3b87a429f6f Mon Sep 17 00:00:00 2001 From: DavidSannier Date: Thu, 4 Jul 2024 01:15:44 +0200 Subject: [PATCH 167/519] [build_test] set CONSOLE_ENABLE=yes if DEBUG > 0 (#23097) --- builddefs/build_test.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/builddefs/build_test.mk b/builddefs/build_test.mk index 2cc1134da5b..d0de63c6f58 100644 --- a/builddefs/build_test.mk +++ b/builddefs/build_test.mk @@ -47,7 +47,8 @@ PLATFORM:=TEST PLATFORM_KEY:=test BOOTLOADER_TYPE:=none -ifeq ($(strip $(DEBUG)), 1) +DEBUG ?= 0 +ifneq ($(strip $(DEBUG)), 0) CONSOLE_ENABLE = yes endif From bdca9318f9f6a7b4ea697113a2e0b3117a67e093 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Wed, 3 Jul 2024 19:13:00 -0700 Subject: [PATCH 168/519] Change suspend condition check order on ChibiOS (#24020) --- tmk_core/protocol/chibios/chibios.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tmk_core/protocol/chibios/chibios.c b/tmk_core/protocol/chibios/chibios.c index a249af8d38c..b879bdac778 100644 --- a/tmk_core/protocol/chibios/chibios.c +++ b/tmk_core/protocol/chibios/chibios.c @@ -184,7 +184,7 @@ void protocol_pre_task(void) { /* Do this in the suspended state */ suspend_power_down(); // on AVR this deep sleeps for 15ms /* Remote wakeup */ - if ((USB_DRIVER.status & USB_GETSTATUS_REMOTE_WAKEUP_ENABLED) && suspend_wakeup_condition()) { + if (suspend_wakeup_condition() && (USB_DRIVER.status & USB_GETSTATUS_REMOTE_WAKEUP_ENABLED)) { usbWakeupHost(&USB_DRIVER); # if USB_SUSPEND_WAKEUP_DELAY > 0 // Some hubs, kvm switches, and monitors do From c2f7974c8eb5154c5a79c74150fc934086175024 Mon Sep 17 00:00:00 2001 From: James Gzowski Date: Thu, 4 Jul 2024 03:34:17 +0100 Subject: [PATCH 169/519] [Keyboard] Add Ashwing66 (#24031) * Create hello.txt * Add files via upload * Create keymap.c * Ashwing66 * Update readme.md * Update keymap.c * Ashwing66 addition * Ashwing66 addition * Changes as per request * Changes as per request * Changes as per request, Updated repo, fixed filenames * 02-Jul-11:04:08 --- keyboards/ashwing66/config.h | 6 + keyboards/ashwing66/keyboard.json | 166 +++++++++++++++++++ keyboards/ashwing66/keymaps/default/keymap.c | 41 +++++ keyboards/ashwing66/keymaps/default/rules.mk | 1 + keyboards/ashwing66/keymaps/via/keymap.c | 41 +++++ keyboards/ashwing66/keymaps/via/rules.mk | 2 + keyboards/ashwing66/readme.md | 23 +++ 7 files changed, 280 insertions(+) create mode 100644 keyboards/ashwing66/config.h create mode 100644 keyboards/ashwing66/keyboard.json create mode 100644 keyboards/ashwing66/keymaps/default/keymap.c create mode 100644 keyboards/ashwing66/keymaps/default/rules.mk create mode 100644 keyboards/ashwing66/keymaps/via/keymap.c create mode 100644 keyboards/ashwing66/keymaps/via/rules.mk create mode 100644 keyboards/ashwing66/readme.md diff --git a/keyboards/ashwing66/config.h b/keyboards/ashwing66/config.h new file mode 100644 index 00000000000..344ff327069 --- /dev/null +++ b/keyboards/ashwing66/config.h @@ -0,0 +1,6 @@ +// Copyright 2023 QMK +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#define ENCODER_MAP_KEY_DELAY 10 +#define ENCODER_DEFAULT_POS 0x3 diff --git a/keyboards/ashwing66/keyboard.json b/keyboards/ashwing66/keyboard.json new file mode 100644 index 00000000000..27a5799964a --- /dev/null +++ b/keyboards/ashwing66/keyboard.json @@ -0,0 +1,166 @@ +{ + "manufacturer": "gzowski", + "keyboard_name": "Ashwing66", + "maintainer": "gzowski", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "GP12", "pin_b": "GP11"} + ] + }, + "features": { + "bootmagic": true, + "encoder": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "matrix_pins": { + "cols": ["GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP14", "GP15", "GP16", "GP17", "GP19", "GP20", "GP21", "GP22", "GP26", "GP27"], + "rows": ["GP28", "GP8", "GP9", "GP10", "GP13"] + }, + "processor": "RP2040", + "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, + "dual_beacon": true, + "gradient_left_right": true, + "gradient_up_down": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "jellybean_raindrops": true, + "pixel_flow": true, + "pixel_fractal": true, + "pixel_rain": true, + "rainbow_beacon": true, + "rainbow_moving_chevron": true, + "rainbow_pinwheels": true, + "raindrops": true + }, + "driver": "ws2812", + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4}, + {"matrix": [0, 1], "x": 16, "y": 1, "flags": 4}, + {"matrix": [0, 2], "x": 33, "y": 2, "flags": 4}, + {"matrix": [0, 3], "x": 49, "y": 4, "flags": 4}, + {"matrix": [0, 4], "x": 65, "y": 7, "flags": 4}, + {"matrix": [0, 5], "x": 81, "y": 11, "flags": 4}, + {"matrix": [3, 6], "x": 86, "y": 39, "flags": 4}, + {"matrix": [4, 6], "x": 81, "y": 56, "flags": 4}, + {"matrix": [4, 7], "x": 96, "y": 63, "flags": 4}, + {"matrix": [4, 8], "x": 126, "y": 63, "flags": 4}, + {"matrix": [4, 9], "x": 141, "y": 56, "flags": 4}, + {"matrix": [3, 9], "x": 136, "y": 39, "flags": 4}, + {"matrix": [0, 10], "x": 141, "y": 11, "flags": 4}, + {"matrix": [0, 11], "x": 157, "y": 7, "flags": 4}, + {"matrix": [0, 12], "x": 173, "y": 4, "flags": 4}, + {"matrix": [0, 13], "x": 189, "y": 2, "flags": 4}, + {"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 + }, + "url": "https://github.com/gzowski", + "usb": { + "device_version": "1.0.0", + "pid": "0x6F64", + "vid": "0x7372" + }, + "ws2812": { + "driver": "vendor", + "pin": "GP0" + }, + "layouts": { + "LAYOUT_5x16": { + "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, 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, 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}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + {"matrix": [2, 10], "x": 10, "y": 2}, + {"matrix": [2, 11], "x": 11, "y": 2}, + {"matrix": [2, 12], "x": 12, "y": 2}, + {"matrix": [2, 13], "x": 13, "y": 2}, + {"matrix": [2, 14], "x": 14, "y": 2}, + {"matrix": [2, 15], "x": 15, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [3, 6], "x": 6, "y": 3}, + {"matrix": [3, 8], "x": 8, "y": 3}, + {"matrix": [3, 9], "x": 9, "y": 3}, + {"matrix": [3, 10], "x": 10, "y": 3}, + {"matrix": [3, 11], "x": 11, "y": 3}, + {"matrix": [3, 12], "x": 12, "y": 3}, + {"matrix": [3, 13], "x": 13, "y": 3}, + {"matrix": [3, 14], "x": 14, "y": 3}, + {"matrix": [3, 15], "x": 15, "y": 3}, + {"matrix": [4, 0], "x": 0, "y": 4}, + {"matrix": [4, 1], "x": 1, "y": 4}, + {"matrix": [4, 2], "x": 2, "y": 4}, + {"matrix": [4, 3], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4}, + {"matrix": [4, 5], "x": 5, "y": 4}, + {"matrix": [4, 6], "x": 6, "y": 4}, + {"matrix": [4, 7], "x": 7, "y": 4}, + {"matrix": [4, 8], "x": 8, "y": 4}, + {"matrix": [4, 9], "x": 9, "y": 4}, + {"matrix": [4, 10], "x": 10, "y": 4}, + {"matrix": [4, 11], "x": 11, "y": 4}, + {"matrix": [4, 12], "x": 12, "y": 4}, + {"matrix": [4, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + } + } +} diff --git a/keyboards/ashwing66/keymaps/default/keymap.c b/keyboards/ashwing66/keymaps/default/keymap.c new file mode 100644 index 00000000000..2b317e19eba --- /dev/null +++ b/keyboards/ashwing66/keymaps/default/keymap.c @@ -0,0 +1,41 @@ +// Copyright 2023 James GzowskiMO(_LAYERB) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H + +enum custom_layer { + _LAYERA, + _LAYERB, + _LAYERC, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_LAYERA] = LAYOUT_5x16( + KC_ESC ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_GRV , + KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_MINS , + KC_LCTL,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,KC_QUOT , + KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_LBRC ,KC_MUTE ,KC_RBRC ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSFT , + KC_LBRC,KC_PSCR,KC_CAPS ,MO(_LAYERB),KC_LGUI ,KC_LALT ,KC_SPC ,KC_PGDN ,KC_PGUP ,KC_ENT ,KC_BSPC ,MO(_LAYERC),KC_INS ,KC_DEL ,KC_BSLS ,KC_RBRC +), + [_LAYERB] = LAYOUT_5x16( + KC_ESC ,RGB_TOG,RGB_RMOD,RGB_MOD ,RGB_VAD ,RGB_VAI ,RGB_SPD ,RGB_SPI ,RGB_HUD ,RGB_HUI ,RGB_SAD ,RGB_SAI , + KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_Y ,KC_BTN1 ,KC_MS_U ,KC_BTN2 ,KC_P ,KC_EQL , + KC_LCTL,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_H ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_SCLN ,KC_QUOT , + KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_LBRC ,KC_MUTE ,KC_RBRC ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSFT , + KC_LBRC,KC_PSCR,KC_CAPS ,_______ ,KC_LGUI ,KC_LALT ,KC_SPC ,KC_END ,KC_HOME ,KC_ENT ,KC_BSPC ,_______ ,KC_INS ,KC_DEL ,KC_BSLS ,KC_RBRC +), + [_LAYERC] = LAYOUT_5x16( + KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_GRV , + KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_Y ,KC_U ,KC_UP ,KC_O ,KC_P ,KC_EQL , + KC_LCTL,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_H ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_SCLN ,KC_QUOT , + KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_LBRC ,KC_MUTE ,KC_RBRC ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSFT , + KC_F11 ,KC_PSCR,KC_CAPS ,_______ ,KC_LGUI ,KC_LALT ,KC_SPC ,KC_END ,KC_HOME ,KC_ENT ,KC_BSPC ,_______ ,KC_INS ,KC_DEL ,KC_BSLS ,KC_F12 +) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [_LAYERA] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, + [_LAYERB] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI)}, + [_LAYERC] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} +}; +#endif diff --git a/keyboards/ashwing66/keymaps/default/rules.mk b/keyboards/ashwing66/keymaps/default/rules.mk new file mode 100644 index 00000000000..ee325681483 --- /dev/null +++ b/keyboards/ashwing66/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/ashwing66/keymaps/via/keymap.c b/keyboards/ashwing66/keymaps/via/keymap.c new file mode 100644 index 00000000000..2b317e19eba --- /dev/null +++ b/keyboards/ashwing66/keymaps/via/keymap.c @@ -0,0 +1,41 @@ +// Copyright 2023 James GzowskiMO(_LAYERB) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H + +enum custom_layer { + _LAYERA, + _LAYERB, + _LAYERC, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_LAYERA] = LAYOUT_5x16( + KC_ESC ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_GRV , + KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_MINS , + KC_LCTL,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,KC_QUOT , + KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_LBRC ,KC_MUTE ,KC_RBRC ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSFT , + KC_LBRC,KC_PSCR,KC_CAPS ,MO(_LAYERB),KC_LGUI ,KC_LALT ,KC_SPC ,KC_PGDN ,KC_PGUP ,KC_ENT ,KC_BSPC ,MO(_LAYERC),KC_INS ,KC_DEL ,KC_BSLS ,KC_RBRC +), + [_LAYERB] = LAYOUT_5x16( + KC_ESC ,RGB_TOG,RGB_RMOD,RGB_MOD ,RGB_VAD ,RGB_VAI ,RGB_SPD ,RGB_SPI ,RGB_HUD ,RGB_HUI ,RGB_SAD ,RGB_SAI , + KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_Y ,KC_BTN1 ,KC_MS_U ,KC_BTN2 ,KC_P ,KC_EQL , + KC_LCTL,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_H ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_SCLN ,KC_QUOT , + KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_LBRC ,KC_MUTE ,KC_RBRC ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSFT , + KC_LBRC,KC_PSCR,KC_CAPS ,_______ ,KC_LGUI ,KC_LALT ,KC_SPC ,KC_END ,KC_HOME ,KC_ENT ,KC_BSPC ,_______ ,KC_INS ,KC_DEL ,KC_BSLS ,KC_RBRC +), + [_LAYERC] = LAYOUT_5x16( + KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_GRV , + KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_Y ,KC_U ,KC_UP ,KC_O ,KC_P ,KC_EQL , + KC_LCTL,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_H ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_SCLN ,KC_QUOT , + KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_LBRC ,KC_MUTE ,KC_RBRC ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSFT , + KC_F11 ,KC_PSCR,KC_CAPS ,_______ ,KC_LGUI ,KC_LALT ,KC_SPC ,KC_END ,KC_HOME ,KC_ENT ,KC_BSPC ,_______ ,KC_INS ,KC_DEL ,KC_BSLS ,KC_F12 +) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [_LAYERA] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, + [_LAYERB] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI)}, + [_LAYERC] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} +}; +#endif diff --git a/keyboards/ashwing66/keymaps/via/rules.mk b/keyboards/ashwing66/keymaps/via/rules.mk new file mode 100644 index 00000000000..f1adcab005e --- /dev/null +++ b/keyboards/ashwing66/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/ashwing66/readme.md b/keyboards/ashwing66/readme.md new file mode 100644 index 00000000000..a65769c9cc9 --- /dev/null +++ b/keyboards/ashwing66/readme.md @@ -0,0 +1,23 @@ +# Ashwing66 + +66 key winged unibody split + +* Keyboard Maintainer: [James Gzowski](https://github.com/gzowski) +* Hardware Supported: Pi Pico or equivilent +* Build Guide: [Ashwing66](https://github.com/gzowski/Ashwing66) + +Make example for this keyboard (after setting up your build environment): + + make ashwing66:default + +Flashing example for this keyboard: + + make ashwing66: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 + +* **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 PCB, if using a RP2040 press repeatidly to enter boot mode. +* **Hold down boot loader button on MCU** Hold down the boot loader button on the MCU while plugging in the keyboard From 26c114a2b47377db2ef337f3e22e3685e70852bd Mon Sep 17 00:00:00 2001 From: Will Hedges <36576135+will-hedges@users.noreply.github.com> Date: Wed, 3 Jul 2024 21:38:03 -0500 Subject: [PATCH 170/519] [keyboard] added bear_face/v3 (#24032) * added keyboard.json, default, default_iso, and keymap READMEs --- keyboards/bear_face/v3/keyboard.json | 287 ++++++++++++++++++ .../bear_face/v3/keymaps/default/keymap.c | 92 ++++++ .../bear_face/v3/keymaps/default/readme.md | 18 ++ .../bear_face/v3/keymaps/default_iso/keymap.c | 92 ++++++ .../v3/keymaps/default_iso/readme.md | 18 ++ 5 files changed, 507 insertions(+) create mode 100644 keyboards/bear_face/v3/keyboard.json create mode 100644 keyboards/bear_face/v3/keymaps/default/keymap.c create mode 100644 keyboards/bear_face/v3/keymaps/default/readme.md create mode 100644 keyboards/bear_face/v3/keymaps/default_iso/keymap.c create mode 100644 keyboards/bear_face/v3/keymaps/default_iso/readme.md diff --git a/keyboards/bear_face/v3/keyboard.json b/keyboards/bear_face/v3/keyboard.json new file mode 100644 index 00000000000..0a0bda8df90 --- /dev/null +++ b/keyboards/bear_face/v3/keyboard.json @@ -0,0 +1,287 @@ +{ + "keyboard_name": "bear_face v3", + "usb": { + "device_version": "3.2.0" + }, + "layouts": { + "LAYOUT_all": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "w": 1.5}, + {"matrix": [0, 1], "x": 1.5, "y": 0}, + {"matrix": [0, 2], "x": 2.5, "y": 0}, + {"matrix": [0, 3], "x": 3.5, "y": 0}, + {"matrix": [0, 4], "x": 4.5, "y": 0}, + {"matrix": [0, 5], "x": 5.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": 10.5, "y": 0}, + {"matrix": [0, 11], "x": 11.5, "y": 0}, + {"matrix": [0, 12], "x": 12.5, "y": 0}, + {"matrix": [0, 13], "x": 13.5, "y": 0}, + {"matrix": [0, 14], "x": 14.5, "y": 0, "w": 1.5}, + + {"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, 14], "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, 13], "x": 13.5, "y": 2, "w": 1.5}, + {"matrix": [2, 14], "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": [3, 13], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, + {"matrix": [3, 14], "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, 13], "x": 14, "y": 4}, + {"matrix": [4, 14], "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, 5], "x": 3.75, "y": 5, "w": 6.25}, + {"matrix": [5, 9], "x": 10, "y": 5}, + {"matrix": [5, 10], "x": 11, "y": 5}, + {"matrix": [5, 11], "x": 12, "y": 5}, + {"matrix": [5, 12], "x": 13, "y": 5}, + {"matrix": [5, 13], "x": 14, "y": 5}, + {"matrix": [5, 14], "x": 15, "y": 5} + ] + }, + "LAYOUT_83_ansi": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "w": 1.5}, + {"matrix": [0, 1], "x": 1.5, "y": 0}, + {"matrix": [0, 2], "x": 2.5, "y": 0}, + {"matrix": [0, 3], "x": 3.5, "y": 0}, + {"matrix": [0, 4], "x": 4.5, "y": 0}, + {"matrix": [0, 5], "x": 5.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": 10.5, "y": 0}, + {"matrix": [0, 11], "x": 11.5, "y": 0}, + {"matrix": [0, 12], "x": 12.5, "y": 0}, + {"matrix": [0, 13], "x": 13.5, "y": 0}, + {"matrix": [0, 14], "x": 14.5, "y": 0, "w": 1.5}, + + {"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, 14], "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, 13], "x": 13.5, "y": 2, "w": 1.5}, + {"matrix": [2, 14], "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, 14], "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, 13], "x": 14, "y": 4}, + {"matrix": [4, 14], "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, 5], "x": 3.75, "y": 5, "w": 6.25}, + {"matrix": [5, 9], "x": 10, "y": 5}, + {"matrix": [5, 10], "x": 11, "y": 5}, + {"matrix": [5, 11], "x": 12, "y": 5}, + {"matrix": [5, 12], "x": 13, "y": 5}, + {"matrix": [5, 13], "x": 14, "y": 5}, + {"matrix": [5, 14], "x": 15, "y": 5} + ] + }, + "LAYOUT_84_iso": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "w": 1.5}, + {"matrix": [0, 1], "x": 1.5, "y": 0}, + {"matrix": [0, 2], "x": 2.5, "y": 0}, + {"matrix": [0, 3], "x": 3.5, "y": 0}, + {"matrix": [0, 4], "x": 4.5, "y": 0}, + {"matrix": [0, 5], "x": 5.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": 10.5, "y": 0}, + {"matrix": [0, 11], "x": 11.5, "y": 0}, + {"matrix": [0, 12], "x": 12.5, "y": 0}, + {"matrix": [0, 13], "x": 13.5, "y": 0}, + {"matrix": [0, 14], "x": 14.5, "y": 0, "w": 1.5}, + + {"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, 14], "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": 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": [3, 13], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, + {"matrix": [3, 14], "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, 13], "x": 14, "y": 4}, + {"matrix": [4, 14], "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, 5], "x": 3.75, "y": 5, "w": 6.25}, + {"matrix": [5, 9], "x": 10, "y": 5}, + {"matrix": [5, 10], "x": 11, "y": 5}, + {"matrix": [5, 11], "x": 12, "y": 5}, + {"matrix": [5, 12], "x": 13, "y": 5}, + {"matrix": [5, 13], "x": 14, "y": 5}, + {"matrix": [5, 14], "x": 15, "y": 5} + ] + } + } +} diff --git a/keyboards/bear_face/v3/keymaps/default/keymap.c b/keyboards/bear_face/v3/keymaps/default/keymap.c new file mode 100644 index 00000000000..77f161a7104 --- /dev/null +++ b/keyboards/bear_face/v3/keymaps/default/keymap.c @@ -0,0 +1,92 @@ +/* Copyright 2024 will-hedges */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include QMK_KEYBOARD_H + +enum layers { + _QWER, + _COLE, + _DVOR, + _FN1, +}; + +#define FN1_CAPS LT(_FN1, KC_CAPS) + +//custom keycode enums +enum custom_keycodes { + BASE_QWER = QK_KB_0, + BASE_COLE, + BASE_DVOR +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWER] = LAYOUT_83_ansi( + 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_NO, 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_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, + FN1_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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_COLE] = LAYOUT_83_ansi( + 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_NO, 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_HOME, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP, + KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT, KC_PGDN, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_DVOR] = LAYOUT_83_ansi( + 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_NO, 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_LBRC, KC_RBRC, KC_BSPC, KC_HOME, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSLS, KC_PGUP, + FN1_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT, KC_PGDN, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_FN1] = LAYOUT_83_ansi( + _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, KC_INS, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, BASE_QWER, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, BASE_COLE, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BASE_DVOR, + _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, KC_APP, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +/* + [_BLANK] = LAYOUT_83_ansi( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +*/ +}; + + +// Macros to allow the user to set whatever default layer they want, even after reboot +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case BASE_QWER: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWER); + } + break; + case BASE_COLE: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLE); + } + break; + case BASE_DVOR: + if (record->event.pressed) { + set_single_persistent_default_layer(_DVOR); + } + break; + } + return true; +}; diff --git a/keyboards/bear_face/v3/keymaps/default/readme.md b/keyboards/bear_face/v3/keymaps/default/readme.md new file mode 100644 index 00000000000..a86b77bb191 --- /dev/null +++ b/keyboards/bear_face/v3/keymaps/default/readme.md @@ -0,0 +1,18 @@ +# default bear_face layout + +This layout replaces the stock layout on the Vortex Race 3. + +- Caps Lock indicator LED is enabled by default +- Layer Tap on Caps Lock (tap for Caps Lock, hold for _FN1) +- FORCE_NKRO enabled by default + +- Pn key is set to 'KC_NO' by default + * Might be a good place for a macro, or to put your PC to sleep, etc. + +- A combined function layer that mimics the sublegends on the stock caps (regardless of layout) + * 'Reset' will put the keyboard into DFU mode + * 'APP' sends 'KC_APP' + * Base layer toggles for QWERTY, COLEMAK, and DVORAK layouts (will persist after reboot) + +- New things in v3: + * v3.1c PCB is compatible with both rev1 (Micro-USB) and rev2 (USB-C) stock cases diff --git a/keyboards/bear_face/v3/keymaps/default_iso/keymap.c b/keyboards/bear_face/v3/keymaps/default_iso/keymap.c new file mode 100644 index 00000000000..73a1155b6a5 --- /dev/null +++ b/keyboards/bear_face/v3/keymaps/default_iso/keymap.c @@ -0,0 +1,92 @@ +/* Copyright 2024 will-hedges */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include QMK_KEYBOARD_H + +enum layers { + _QWER, + _COLE, + _DVOR, + _FN1, +}; + +#define FN1_CAPS LT(_FN1, KC_CAPS) + +//custom keycode enums +enum custom_keycodes { + BASE_QWER = SAFE_RANGE, + BASE_COLE, + BASE_DVOR +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWER] = LAYOUT_84_iso( + 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_NO, 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_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_PGUP, + FN1_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_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_COLE] = LAYOUT_84_iso( + 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_NO, 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_HOME, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_PGUP, + KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_DVOR] = LAYOUT_84_iso( + 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_NO, 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_LBRC, KC_RBRC, KC_BSPC, KC_HOME, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_PGUP, + FN1_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_NUHS, KC_ENT, KC_PGDN, + KC_LSFT, KC_NUBS, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_FN1] = LAYOUT_84_iso( + _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______, KC_INS, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, BASE_QWER, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, BASE_COLE, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BASE_DVOR, + _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, KC_APP, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +/* + [_BLANK] = LAYOUT_84_iso( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +*/ +}; + + +// Macros to allow the user to set whatever default layer they want, even after reboot +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case BASE_QWER: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWER); + } + break; + case BASE_COLE: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLE); + } + break; + case BASE_DVOR: + if (record->event.pressed) { + set_single_persistent_default_layer(_DVOR); + } + break; + } + return true; +}; diff --git a/keyboards/bear_face/v3/keymaps/default_iso/readme.md b/keyboards/bear_face/v3/keymaps/default_iso/readme.md new file mode 100644 index 00000000000..a86b77bb191 --- /dev/null +++ b/keyboards/bear_face/v3/keymaps/default_iso/readme.md @@ -0,0 +1,18 @@ +# default bear_face layout + +This layout replaces the stock layout on the Vortex Race 3. + +- Caps Lock indicator LED is enabled by default +- Layer Tap on Caps Lock (tap for Caps Lock, hold for _FN1) +- FORCE_NKRO enabled by default + +- Pn key is set to 'KC_NO' by default + * Might be a good place for a macro, or to put your PC to sleep, etc. + +- A combined function layer that mimics the sublegends on the stock caps (regardless of layout) + * 'Reset' will put the keyboard into DFU mode + * 'APP' sends 'KC_APP' + * Base layer toggles for QWERTY, COLEMAK, and DVORAK layouts (will persist after reboot) + +- New things in v3: + * v3.1c PCB is compatible with both rev1 (Micro-USB) and rev2 (USB-C) stock cases From 977918982d0ee38ade3eeb178ca572645d0f9553 Mon Sep 17 00:00:00 2001 From: Guanzhong Chen Date: Wed, 3 Jul 2024 22:38:38 -0400 Subject: [PATCH 171/519] monsgeek/m5: make numlock and capslock LEDs work (#24027) --- keyboards/monsgeek/m5/m5.c | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/monsgeek/m5/m5.c b/keyboards/monsgeek/m5/m5.c index 3e1d752581c..5113e322a5a 100644 --- a/keyboards/monsgeek/m5/m5.c +++ b/keyboards/monsgeek/m5/m5.c @@ -157,6 +157,7 @@ void keyboard_pre_init_kb(void) { bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); if (res) { + led_update_ports(led_state); gpio_write_pin(LED_WIN_LOCK_PIN, keymap_config.no_gui); } return res; From c663f5e9f33384a1589b4b476610f3069c8c2542 Mon Sep 17 00:00:00 2001 From: chalex <68408520+gaclee3b@users.noreply.github.com> Date: Wed, 3 Jul 2024 22:40:24 -0400 Subject: [PATCH 172/519] [Keyboard] Add chlx lfn merro (#24026) * add previous working files to new branch * update config files. tested via version * update per qmk PR requested changes - 1. rename info.json -> keyboard.json, move config.h -> keyamps/via/config.h, remove rules.mk * update photo link for pcb * remove redundant community keymaps * Update keyboards/chlx/lfn_merro60/keymaps/default/keymap.c correct keycode for iso keys Co-authored-by: Duncan Sutherland * switch image url to source from imgur instead of github --------- Co-authored-by: chalex Co-authored-by: Duncan Sutherland --- keyboards/chlx/lfn_merro60/keyboard.json | 957 ++++++++++++++++++ .../chlx/lfn_merro60/keymaps/default/keymap.c | 35 + .../chlx/lfn_merro60/keymaps/via/config.h | 21 + .../chlx/lfn_merro60/keymaps/via/keymap.c | 35 + .../chlx/lfn_merro60/keymaps/via/rules.mk | 2 + keyboards/chlx/lfn_merro60/readme.md | 27 + 6 files changed, 1077 insertions(+) create mode 100644 keyboards/chlx/lfn_merro60/keyboard.json create mode 100644 keyboards/chlx/lfn_merro60/keymaps/default/keymap.c create mode 100644 keyboards/chlx/lfn_merro60/keymaps/via/config.h create mode 100644 keyboards/chlx/lfn_merro60/keymaps/via/keymap.c create mode 100644 keyboards/chlx/lfn_merro60/keymaps/via/rules.mk create mode 100644 keyboards/chlx/lfn_merro60/readme.md diff --git a/keyboards/chlx/lfn_merro60/keyboard.json b/keyboards/chlx/lfn_merro60/keyboard.json new file mode 100644 index 00000000000..a35b598f0eb --- /dev/null +++ b/keyboards/chlx/lfn_merro60/keyboard.json @@ -0,0 +1,957 @@ +{ + "manufacturer": "chlx bsmt", + "keyboard_name": "lfn.merro60", + "maintainer": "gaclee3b", + "bootloader": "atmel-dfu", + "diode_direction": "ROW2COL", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, + "indicators": { + "caps_lock": "B2", + "on_state": 0, + "compose": "B0" + }, + "matrix_pins": { + "rows": ["F5", "F1", "F4", "F0", "F7", "F6", "D3", "D5", "B3", "B7"], + "cols": ["C6", "B6", "B5", "B4", "D7", "D6", "D4"] + }, + "processor": "atmega32u4", + "url": "www.github.com/gaclee3b", + "usb": { + "device_version": "2.0.1", + "pid": "0x0604", + "vid": "0x4358" + }, + "community_layouts": ["60_ansi", "60_ansi_split_bs_rshift", "60_ansi_tsangan", "60_tsangan_hhkb", "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": { + "LAYOUT_60_ansi": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0, "w": 2}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [3, 6], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [5, 6], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [8, 0], "x": 1.25, "y": 4, "w": 1.25}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.25}, + {"matrix": [8, 3], "x": 3.75, "y": 4, "w": 6.25}, + {"matrix": [9, 4], "x": 10, "y": 4, "w": 1.25}, + {"matrix": [8, 5], "x": 11.25, "y": 4, "w": 1.25}, + {"matrix": [9, 5], "x": 12.5, "y": 4, "w": 1.25}, + {"matrix": [8, 6], "x": 13.75, "y": 4, "w": 1.25} + ] + }, + "LAYOUT_60_ansi_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0}, + {"matrix": [9, 6], "x": 14, "y": 0}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [3, 6], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [5, 6], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [7, 6], "x": 14, "y": 3}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [8, 0], "x": 1.25, "y": 4, "w": 1.25}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.25}, + {"matrix": [8, 3], "x": 3.75, "y": 4, "w": 6.25}, + {"matrix": [9, 4], "x": 10, "y": 4, "w": 1.25}, + {"matrix": [8, 5], "x": 11.25, "y": 4, "w": 1.25}, + {"matrix": [9, 5], "x": 12.5, "y": 4, "w": 1.25}, + {"matrix": [8, 6], "x": 13.75, "y": 4, "w": 1.25} + ] + }, + "LAYOUT_60_ansi_tsangan": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0, "w": 2}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [3, 6], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [5, 6], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [8, 0], "x": 1.5, "y": 4}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [8, 3], "x": 4, "y": 4, "w": 7}, + {"matrix": [8, 5], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [9, 5], "x": 12.5, "y": 4}, + {"matrix": [8, 6], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_ansi_wkl": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0, "w": 2}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [3, 6], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [5, 6], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [8, 3], "x": 4, "y": 4, "w": 7}, + {"matrix": [8, 5], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [8, 6], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_ansi_wkl_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0}, + {"matrix": [9, 6], "x": 14, "y": 0}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [3, 6], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [5, 6], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [7, 6], "x": 14, "y": 3}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [8, 3], "x": 4, "y": 4, "w": 7}, + {"matrix": [8, 5], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [8, 6], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_hhkb": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0}, + {"matrix": [9, 6], "x": 14, "y": 0}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [3, 6], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [5, 6], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [7, 6], "x": 14, "y": 3}, + {"matrix": [8, 0], "x": 1.5, "y": 4}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [8, 3], "x": 4, "y": 4, "w": 7}, + {"matrix": [8, 5], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [9, 5], "x": 12.5, "y": 4} + ] + }, + "LAYOUT_60_iso": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0, "w": 2}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [4, 6], "x": 12.75, "y": 2}, + {"matrix": [5, 6], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 1.25}, + {"matrix": [7, 0], "x": 1.25, "y": 3}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [8, 0], "x": 1.25, "y": 4, "w": 1.25}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.25}, + {"matrix": [8, 3], "x": 3.75, "y": 4, "w": 6.25}, + {"matrix": [9, 4], "x": 10, "y": 4, "w": 1.25}, + {"matrix": [8, 5], "x": 11.25, "y": 4, "w": 1.25}, + {"matrix": [9, 5], "x": 12.5, "y": 4, "w": 1.25}, + {"matrix": [8, 6], "x": 13.75, "y": 4, "w": 1.25} + ] + }, + "LAYOUT_60_iso_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0}, + {"matrix": [9, 6], "x": 14, "y": 0}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [4, 6], "x": 12.75, "y": 2}, + {"matrix": [5, 6], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 1.25}, + {"matrix": [7, 0], "x": 1.25, "y": 3}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [7, 6], "x": 14, "y": 3}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [8, 0], "x": 1.25, "y": 4, "w": 1.25}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.25}, + {"matrix": [8, 3], "x": 3.75, "y": 4, "w": 6.25}, + {"matrix": [9, 4], "x": 10, "y": 4, "w": 1.25}, + {"matrix": [8, 5], "x": 11.25, "y": 4, "w": 1.25}, + {"matrix": [9, 5], "x": 12.5, "y": 4, "w": 1.25}, + {"matrix": [8, 6], "x": 13.75, "y": 4, "w": 1.25} + ] + }, + "LAYOUT_60_iso_tsangan": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0, "w": 2}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [4, 6], "x": 12.75, "y": 2}, + {"matrix": [5, 6], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 1.25}, + {"matrix": [7, 0], "x": 1.25, "y": 3}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [8, 0], "x": 1.5, "y": 4}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [8, 3], "x": 4, "y": 4, "w": 7}, + {"matrix": [8, 5], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [9, 5], "x": 12.5, "y": 4}, + {"matrix": [8, 6], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_iso_tsangan_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0}, + {"matrix": [9, 6], "x": 14, "y": 0}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [4, 6], "x": 12.75, "y": 2}, + {"matrix": [5, 6], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 1.25}, + {"matrix": [7, 0], "x": 1.25, "y": 3}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [7, 6], "x": 14, "y": 3}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [8, 0], "x": 1.5, "y": 4}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [8, 3], "x": 4, "y": 4, "w": 7}, + {"matrix": [8, 5], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [9, 5], "x": 12.5, "y": 4}, + {"matrix": [8, 6], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_iso_wkl": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0, "w": 2}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [4, 6], "x": 12.75, "y": 2}, + {"matrix": [5, 6], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 1.25}, + {"matrix": [7, 0], "x": 1.25, "y": 3}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [8, 3], "x": 4, "y": 4, "w": 7}, + {"matrix": [8, 5], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [8, 6], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_iso_wkl_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0}, + {"matrix": [9, 6], "x": 14, "y": 0}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [4, 6], "x": 12.75, "y": 2}, + {"matrix": [5, 6], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 1.25}, + {"matrix": [7, 0], "x": 1.25, "y": 3}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [7, 6], "x": 14, "y": 3}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [8, 3], "x": 4, "y": 4, "w": 7}, + {"matrix": [8, 5], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [8, 6], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_tsangan_hhkb": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0}, + {"matrix": [9, 6], "x": 14, "y": 0}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [3, 6], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [5, 6], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [7, 6], "x": 14, "y": 3}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [8, 0], "x": 1.5, "y": 4}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [8, 3], "x": 4, "y": 4, "w": 7}, + {"matrix": [8, 5], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [9, 5], "x": 12.5, "y": 4}, + {"matrix": [8, 6], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_all": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [0, 1], "x": 2, "y": 0}, + {"matrix": [1, 1], "x": 3, "y": 0}, + {"matrix": [0, 2], "x": 4, "y": 0}, + {"matrix": [1, 2], "x": 5, "y": 0}, + {"matrix": [0, 3], "x": 6, "y": 0}, + {"matrix": [1, 3], "x": 7, "y": 0}, + {"matrix": [0, 4], "x": 8, "y": 0}, + {"matrix": [1, 4], "x": 9, "y": 0}, + {"matrix": [0, 5], "x": 10, "y": 0}, + {"matrix": [1, 5], "x": 11, "y": 0}, + {"matrix": [0, 6], "x": 12, "y": 0}, + {"matrix": [1, 6], "x": 13, "y": 0}, + {"matrix": [9, 6], "x": 14, "y": 0}, + {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 0], "x": 1.5, "y": 1}, + {"matrix": [2, 1], "x": 2.5, "y": 1}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [2, 2], "x": 4.5, "y": 1}, + {"matrix": [3, 2], "x": 5.5, "y": 1}, + {"matrix": [2, 3], "x": 6.5, "y": 1}, + {"matrix": [3, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [3, 4], "x": 9.5, "y": 1}, + {"matrix": [2, 5], "x": 10.5, "y": 1}, + {"matrix": [3, 5], "x": 11.5, "y": 1}, + {"matrix": [2, 6], "x": 12.5, "y": 1}, + {"matrix": [3, 6], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [5, 0], "x": 1.75, "y": 2}, + {"matrix": [4, 1], "x": 2.75, "y": 2}, + {"matrix": [5, 1], "x": 3.75, "y": 2}, + {"matrix": [4, 2], "x": 4.75, "y": 2}, + {"matrix": [5, 2], "x": 5.75, "y": 2}, + {"matrix": [4, 3], "x": 6.75, "y": 2}, + {"matrix": [5, 3], "x": 7.75, "y": 2}, + {"matrix": [4, 4], "x": 8.75, "y": 2}, + {"matrix": [5, 4], "x": 9.75, "y": 2}, + {"matrix": [4, 5], "x": 10.75, "y": 2}, + {"matrix": [5, 5], "x": 11.75, "y": 2}, + {"matrix": [4, 6], "x": 12.75, "y": 2}, + {"matrix": [5, 6], "x": 13.75, "y": 2, "w": 1.25}, + {"matrix": [6, 0], "x": 0, "y": 3, "w": 1.25}, + {"matrix": [7, 0], "x": 1.25, "y": 3}, + {"matrix": [6, 1], "x": 2.25, "y": 3}, + {"matrix": [7, 1], "x": 3.25, "y": 3}, + {"matrix": [6, 2], "x": 4.25, "y": 3}, + {"matrix": [7, 2], "x": 5.25, "y": 3}, + {"matrix": [6, 3], "x": 6.25, "y": 3}, + {"matrix": [7, 3], "x": 7.25, "y": 3}, + {"matrix": [6, 4], "x": 8.25, "y": 3}, + {"matrix": [7, 4], "x": 9.25, "y": 3}, + {"matrix": [6, 5], "x": 10.25, "y": 3}, + {"matrix": [7, 5], "x": 11.25, "y": 3}, + {"matrix": [6, 6], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [7, 6], "x": 14, "y": 3}, + {"matrix": [9, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [8, 0], "x": 1.25, "y": 4, "w": 1.25}, + {"matrix": [9, 2], "x": 2.5, "y": 4, "w": 1.25}, + {"matrix": [8, 2], "x": 3.75, "y": 4, "w": 2.75}, + {"matrix": [8, 3], "x": 6.5, "y": 4, "w": 1.25}, + {"matrix": [9, 3], "x": 7.75, "y": 4, "w": 2.25}, + {"matrix": [9, 4], "x": 10, "y": 4, "w": 1.25}, + {"matrix": [8, 5], "x": 11.25, "y": 4, "w": 1.25}, + {"matrix": [9, 5], "x": 12.5, "y": 4, "w": 1.25}, + {"matrix": [8, 6], "x": 13.75, "y": 4, "w": 1.25} + ] + } + } +} diff --git a/keyboards/chlx/lfn_merro60/keymaps/default/keymap.c b/keyboards/chlx/lfn_merro60/keymaps/default/keymap.c new file mode 100644 index 00000000000..8cddabd62ba --- /dev/null +++ b/keyboards/chlx/lfn_merro60/keymaps/default/keymap.c @@ -0,0 +1,35 @@ +/* +Copyright 2024 Alexander Lee + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[0] = LAYOUT_all( + 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_GRV, + 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_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_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, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL), + +[1] = LAYOUT_all( + KC_GRV, 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_DEL, + KC_CAPS, _______, KC_HOME, KC_UP, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, QK_BOOT, + _______, KC_END, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, + _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), +}; diff --git a/keyboards/chlx/lfn_merro60/keymaps/via/config.h b/keyboards/chlx/lfn_merro60/keymaps/via/config.h new file mode 100644 index 00000000000..bdeed0c824e --- /dev/null +++ b/keyboards/chlx/lfn_merro60/keymaps/via/config.h @@ -0,0 +1,21 @@ +/* +Copyright 2024 Alexander Lee + +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 . +*/ + +#pragma once + +/* VIA related config */ +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/chlx/lfn_merro60/keymaps/via/keymap.c b/keyboards/chlx/lfn_merro60/keymaps/via/keymap.c new file mode 100644 index 00000000000..2163e4289f7 --- /dev/null +++ b/keyboards/chlx/lfn_merro60/keymaps/via/keymap.c @@ -0,0 +1,35 @@ +/* +Copyright 2024 Alexander Lee + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[0] = LAYOUT_all( + QK_GESC, 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_GRV, + 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_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_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, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_LSCR, KC_RALT, KC_RGUI, KC_APP, KC_RCTL), + +[1] = LAYOUT_all( + KC_GRV, 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_DEL, + KC_CAPS, _______, KC_HOME, KC_UP, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, QK_BOOT, + _______, KC_END, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, + _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), +}; diff --git a/keyboards/chlx/lfn_merro60/keymaps/via/rules.mk b/keyboards/chlx/lfn_merro60/keymaps/via/rules.mk new file mode 100644 index 00000000000..36b7ba9cbc9 --- /dev/null +++ b/keyboards/chlx/lfn_merro60/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/chlx/lfn_merro60/readme.md b/keyboards/chlx/lfn_merro60/readme.md new file mode 100644 index 00000000000..1c59ac550e7 --- /dev/null +++ b/keyboards/chlx/lfn_merro60/readme.md @@ -0,0 +1,27 @@ +# lfn.merro60 + +![lfn.merro60 PCB](https://i.imgur.com/naIgvKy.jpg) + +- Standard 60% format keyboard PCB with USB-C and unified daughterboard compatibility. +- Modified cutouts to allow usage of certain tray mount cases into gummy gasket o-ring mount. +- Meant to be manufactured in 2mm thickness. + +* Keyboard Maintainer: [Alexander Lee](https://github.com/gaclee3b) +* Hardware Supported: chlx PCB lfn.merro60.x.x.x + +Make example for this keyboard (after setting up your build environment): + + make chlx/lfn_merro60:default + +Flashing example for this keyboard: + + make chlx/lfn_merro60: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 bootloader mode by any of the following options - +- When unplugged, holding the top-left key (typically ESC) while plugging in the keyboard +- After plugging in, press and release the reset button on the pcb top-side near the spacebar switch locations +- After plugging in, short out the two reset metal contacts near the 'z' key (accessible through the switch LED slot) From 1c6cdb8d74ae58583fb99c194aa94224a03f0162 Mon Sep 17 00:00:00 2001 From: Cipulot <40441626+Cipulot@users.noreply.github.com> Date: Thu, 4 Jul 2024 11:42:07 +0900 Subject: [PATCH 173/519] [Keyboard] Addition of EC 60X (#24028) * Addition of EC 60X * Update keyboards/cipulot/ec_60x/keymaps/via/keymap.c Co-authored-by: Duncan Sutherland * Update keyboards/cipulot/ec_60x/keymaps/default/keymap.c Co-authored-by: Duncan Sutherland * Update keyboards/cipulot/ec_60x/keyboard.json Co-authored-by: Duncan Sutherland * Update keyboards/cipulot/ec_60x/keyboard.json Co-authored-by: Duncan Sutherland * Update keyboards/cipulot/ec_60x/keyboard.json Co-authored-by: Duncan Sutherland * Update keyboards/cipulot/ec_60x/keyboard.json Co-authored-by: Duncan Sutherland * Revert "Update keyboards/cipulot/ec_60x/keyboard.json" This reverts commit 5f49ef63cdcc4ff99d8056b243d255fd9b30420c. * Revert "Update keyboards/cipulot/ec_60x/keyboard.json" This reverts commit 5fb9706acd7bcd40f60edfe2d8c46bffc460ee5e. * revert of what was done with the layouts * Update keyboards/cipulot/ec_60x/mcuconf.h Co-authored-by: Drashna Jaelre --------- Co-authored-by: Duncan Sutherland Co-authored-by: Drashna Jaelre --- keyboards/cipulot/ec_60x/config.h | 71 ++++ keyboards/cipulot/ec_60x/halconf.h | 23 ++ keyboards/cipulot/ec_60x/keyboard.json | 330 ++++++++++++++++++ .../ec_60x/keymaps/60_ansi_tsangan/keymap.c | 42 +++ .../ec_60x/keymaps/60_iso_tsangan/keymap.c | 42 +++ .../cipulot/ec_60x/keymaps/60_jis/keymap.c | 42 +++ .../cipulot/ec_60x/keymaps/default/keymap.c | 42 +++ keyboards/cipulot/ec_60x/keymaps/via/keymap.c | 42 +++ keyboards/cipulot/ec_60x/keymaps/via/rules.mk | 1 + keyboards/cipulot/ec_60x/mcuconf.h | 25 ++ keyboards/cipulot/ec_60x/post_rules.mk | 3 + keyboards/cipulot/ec_60x/readme.md | 26 ++ keyboards/cipulot/ec_60x/rules.mk | 5 + 13 files changed, 694 insertions(+) create mode 100644 keyboards/cipulot/ec_60x/config.h create mode 100644 keyboards/cipulot/ec_60x/halconf.h create mode 100644 keyboards/cipulot/ec_60x/keyboard.json create mode 100644 keyboards/cipulot/ec_60x/keymaps/60_ansi_tsangan/keymap.c create mode 100644 keyboards/cipulot/ec_60x/keymaps/60_iso_tsangan/keymap.c create mode 100644 keyboards/cipulot/ec_60x/keymaps/60_jis/keymap.c create mode 100644 keyboards/cipulot/ec_60x/keymaps/default/keymap.c create mode 100644 keyboards/cipulot/ec_60x/keymaps/via/keymap.c create mode 100644 keyboards/cipulot/ec_60x/keymaps/via/rules.mk create mode 100644 keyboards/cipulot/ec_60x/mcuconf.h create mode 100644 keyboards/cipulot/ec_60x/post_rules.mk create mode 100644 keyboards/cipulot/ec_60x/readme.md create mode 100644 keyboards/cipulot/ec_60x/rules.mk diff --git a/keyboards/cipulot/ec_60x/config.h b/keyboards/cipulot/ec_60x/config.h new file mode 100644 index 00000000000..1a8d105d680 --- /dev/null +++ b/keyboards/cipulot/ec_60x/config.h @@ -0,0 +1,71 @@ +/* Copyright 2024 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 . + */ + +#pragma once + +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +#define MATRIX_ROW_PINS \ + { A8, A15, B12, B8, B9} + +#define AMUX_COUNT 1 +#define AMUX_MAX_COLS_COUNT 16 + +#define AMUX_EN_PINS \ + { B5 } + +#define AMUX_SEL_PINS \ + { B6, B7, B4, B3 } + +#define AMUX_COL_CHANNELS_SIZES \ + { 15 } + +#define AMUX_0_COL_CHANNELS \ + { 7, 6, 5, 4, 3, 2, 1, 0, 8, 14, 13, 10, 9, 12, 11} + +#define AMUX_COL_CHANNELS AMUX_0_COL_CHANNELS + +#define DISCHARGE_PIN A2 +#define ANALOG_PORT A3 + +#define DEFAULT_ACTUATION_MODE 0 +#define DEFAULT_MODE_0_ACTUATION_LEVEL 550 +#define DEFAULT_MODE_0_RELEASE_LEVEL 500 +#define DEFAULT_MODE_1_INITIAL_DEADZONE_OFFSET DEFAULT_MODE_0_ACTUATION_LEVEL +#define DEFAULT_MODE_1_ACTUATION_OFFSET 70 +#define DEFAULT_MODE_1_RELEASE_OFFSET 70 +#define DEFAULT_EXTREMUM 1023 +#define EXPECTED_NOISE_FLOOR 0 +#define NOISE_FLOOR_THRESHOLD 50 +#define BOTTOMING_CALIBRATION_THRESHOLD 50 +#define DEFAULT_NOISE_FLOOR_SAMPLING_COUNT 30 +#define DEFAULT_BOTTOMING_READING 1023 +#define DEFAULT_CALIBRATION_STARTER true + +#define DISCHARGE_TIME 10 + +// #define DEBUG_MATRIX_SCAN_RATE +#define EECONFIG_KB_DATA_SIZE 159 + +// PWM driver with direct memory access (DMA) support +#define WS2812_PWM_COMPLEMENTARY_OUTPUT +#define WS2812_PWM_DRIVER PWMD1 +#define WS2812_PWM_CHANNEL 3 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_DMA_STREAM STM32_DMA2_STREAM5 +#define WS2812_DMA_CHANNEL 6 +#define WS2812_DMAMUX_ID STM32_DMAMUX1_TIM1_UP diff --git a/keyboards/cipulot/ec_60x/halconf.h b/keyboards/cipulot/ec_60x/halconf.h new file mode 100644 index 00000000000..fb0f77d82f9 --- /dev/null +++ b/keyboards/cipulot/ec_60x/halconf.h @@ -0,0 +1,23 @@ +/* Copyright 2024 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 . + */ + +#pragma once + +#define HAL_USE_ADC TRUE +#define HAL_USE_PAL TRUE +#define HAL_USE_PWM TRUE + +#include_next diff --git a/keyboards/cipulot/ec_60x/keyboard.json b/keyboards/cipulot/ec_60x/keyboard.json new file mode 100644 index 00000000000..1d121800fcc --- /dev/null +++ b/keyboards/cipulot/ec_60x/keyboard.json @@ -0,0 +1,330 @@ +{ + "manufacturer": "Cipulot", + "keyboard_name": "EC 60X", + "maintainer": "Cipulot", + "bootloader": "stm32-dfu", + "build": { + "lto": true + }, + "diode_direction": "COL2ROW", + "eeprom": { + "wear_leveling": { + "backing_size": 4096 + } + }, + "features": { + "bootmagic": false, + "console": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgblight": true + }, + "processor": "STM32F411", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, + "rgblight": { + "animations": { + "alternating": true, + "breathing": true, + "christmas": true, + "knight": true, + "rainbow_mood": true, + "rainbow_swirl": true, + "rgb_test": true, + "snake": true, + "static_gradient": true, + "twinkle": true + }, + "led_count": 22 + }, + "usb": { + "device_version": "0.0.1", + "pid": "0x6BC7", + "shared_endpoint": { + "keyboard": true + }, + "vid": "0x6369" + }, + "ws2812": { + "driver": "pwm", + "pin": "B15" + }, + "layouts": { + "LAYOUT_60_ansi_tsangan": { + "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, 14], "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, 13], "x": 12.75, "y": 2, "w": 2.25}, + {"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, 13], "x": 12.25, "y": 3, "w": 2.75}, + {"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": 12.5, "y": 4}, + {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_iso_tsangan": { + "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, 14], "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, 14], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"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": [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, 13], "x": 12.25, "y": 3, "w": 2.75}, + {"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": 12.5, "y": 4}, + {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_jis": { + "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": [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, 14], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"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": [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}, + {"matrix": [3, 13], "x": 13.25, "y": 3, "w": 1.75}, + {"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, 4], "x": 4, "y": 4, "w": 1.5}, + {"matrix": [4, 6], "x": 5.5, "y": 4, "w": 2.5}, + {"matrix": [4, 8], "x": 8, "y": 4, "w": 1.5}, + {"matrix": [4, 10], "x": 9.5, "y": 4, "w": 1.5}, + {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 12], "x": 12.5, "y": 4}, + {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_all": { + "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": [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": 0.75}, + {"matrix": [1, 14], "x": 14.25, "y": 1, "w": 0.75}, + {"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": [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}, + {"matrix": [3, 13], "x": 13.25, "y": 3, "w": 0.75}, + {"matrix": [3, 14], "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, 4], "x": 4, "y": 4, "w": 1.5}, + {"matrix": [4, 6], "x": 5.5, "y": 4, "w": 2.5}, + {"matrix": [4, 8], "x": 8, "y": 4, "w": 1.5}, + {"matrix": [4, 10], "x": 9.5, "y": 4, "w": 1.5}, + {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 12], "x": 12.5, "y": 4}, + {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + } + } +} diff --git a/keyboards/cipulot/ec_60x/keymaps/60_ansi_tsangan/keymap.c b/keyboards/cipulot/ec_60x/keymaps/60_ansi_tsangan/keymap.c new file mode 100644 index 00000000000..5c1c44cda9a --- /dev/null +++ b/keyboards/cipulot/ec_60x/keymaps/60_ansi_tsangan/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2024 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // clang-format off + [0] = LAYOUT_60_ansi_tsangan( + QK_GESC, 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_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENTER, + 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL), + + [1] = LAYOUT_60_ansi_tsangan( + _______, 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_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, + _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_RIGHT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, + _______, _______, _______, _______, MO(2), _______, _______), + + [2] = LAYOUT_60_ansi_tsangan( + QK_BOOT, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______) + // clang-format on +}; diff --git a/keyboards/cipulot/ec_60x/keymaps/60_iso_tsangan/keymap.c b/keyboards/cipulot/ec_60x/keymaps/60_iso_tsangan/keymap.c new file mode 100644 index 00000000000..cc3eea74d75 --- /dev/null +++ b/keyboards/cipulot/ec_60x/keymaps/60_iso_tsangan/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2024 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // clang-format off + [0] = LAYOUT_60_iso_tsangan( + QK_GESC, 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_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_ENTER, + 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_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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL), + + [1] = LAYOUT_60_iso_tsangan( + _______, 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_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, + _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_RIGHT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, + _______, _______, _______, _______, MO(2), _______, _______), + + [2] = LAYOUT_60_iso_tsangan( + QK_BOOT, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______) + // clang-format on +}; diff --git a/keyboards/cipulot/ec_60x/keymaps/60_jis/keymap.c b/keyboards/cipulot/ec_60x/keymaps/60_jis/keymap.c new file mode 100644 index 00000000000..f75581b0061 --- /dev/null +++ b/keyboards/cipulot/ec_60x/keymaps/60_jis/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2024 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // clang-format off + [0] = LAYOUT_60_jis( + QK_GESC, 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_INT3, KC_BSPC, + 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_ENTER, + 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_INT2, KC_RALT, MO(1), KC_RCTL), + + [1] = LAYOUT_60_jis( + _______, 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_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, + _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_RIGHT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, + _______, _______, _______, _______, _______, _______, _______, MO(2), _______, _______), + + [2] = LAYOUT_60_jis( + QK_BOOT, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) + // clang-format on +}; diff --git a/keyboards/cipulot/ec_60x/keymaps/default/keymap.c b/keyboards/cipulot/ec_60x/keymaps/default/keymap.c new file mode 100644 index 00000000000..33e9ed7c511 --- /dev/null +++ b/keyboards/cipulot/ec_60x/keymaps/default/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2024 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // clang-format off + [0] = LAYOUT_all( + QK_GESC, 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_BSPC, + 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_ENTER, + 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_ENTER, + 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_RSFT, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RALT, MO(1), KC_RCTL), + + [1] = LAYOUT_all( + _______, 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_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, + _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_RIGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, MO(2), _______), + + [2] = LAYOUT_all( + QK_BOOT, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) + // clang-format on +}; diff --git a/keyboards/cipulot/ec_60x/keymaps/via/keymap.c b/keyboards/cipulot/ec_60x/keymaps/via/keymap.c new file mode 100644 index 00000000000..33e9ed7c511 --- /dev/null +++ b/keyboards/cipulot/ec_60x/keymaps/via/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2024 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // clang-format off + [0] = LAYOUT_all( + QK_GESC, 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_BSPC, + 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_ENTER, + 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_ENTER, + 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_RSFT, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RALT, MO(1), KC_RCTL), + + [1] = LAYOUT_all( + _______, 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_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, + _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_RIGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, MO(2), _______), + + [2] = LAYOUT_all( + QK_BOOT, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) + // clang-format on +}; diff --git a/keyboards/cipulot/ec_60x/keymaps/via/rules.mk b/keyboards/cipulot/ec_60x/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/cipulot/ec_60x/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/cipulot/ec_60x/mcuconf.h b/keyboards/cipulot/ec_60x/mcuconf.h new file mode 100644 index 00000000000..88185d8e9da --- /dev/null +++ b/keyboards/cipulot/ec_60x/mcuconf.h @@ -0,0 +1,25 @@ +/* Copyright 2024 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 . + */ + +#pragma once + +#include_next + +#undef STM32_ADC_USE_ADC1 +#define STM32_ADC_USE_ADC1 TRUE + +#undef STM32_PWM_USE_TIM1 +#define STM32_PWM_USE_TIM1 TRUE diff --git a/keyboards/cipulot/ec_60x/post_rules.mk b/keyboards/cipulot/ec_60x/post_rules.mk new file mode 100644 index 00000000000..d726a112a8c --- /dev/null +++ b/keyboards/cipulot/ec_60x/post_rules.mk @@ -0,0 +1,3 @@ +ifeq ($(strip $(VIA_ENABLE)), yes) + SRC += keyboards/cipulot/common/via_ec.c +endif diff --git a/keyboards/cipulot/ec_60x/readme.md b/keyboards/cipulot/ec_60x/readme.md new file mode 100644 index 00000000000..31166575719 --- /dev/null +++ b/keyboards/cipulot/ec_60x/readme.md @@ -0,0 +1,26 @@ +# EC 60X + +![EC 60X PCB](https://i.imgur.com/aYQgeSn.png) + +Universal 60% Electrostatic Capacitive PCB, with multi-layout support. + +* Keyboard Maintainer: [cipulot](https://github.com/cipulot) +* Hardware Supported: EC 60X +* Hardware Availability: TBD + +Make example for this keyboard (after setting up your build environment): + + make cipulot/ec_60x:default + +Flashing example for this keyboard: + + make cipulot/ec_60x: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 2 ways: + +* **Physical reset**: Long short the exposed pins on the PCB +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/cipulot/ec_60x/rules.mk b/keyboards/cipulot/ec_60x/rules.mk new file mode 100644 index 00000000000..318e0215ce9 --- /dev/null +++ b/keyboards/cipulot/ec_60x/rules.mk @@ -0,0 +1,5 @@ +CUSTOM_MATRIX = lite +ANALOG_DRIVER_REQUIRED = yes +VPATH += keyboards/cipulot/common +SRC += matrix.c ec_board.c ec_switch_matrix.c +OPT = 2 From 4ced8d9371441000d5f03a5b61c7ddceb490cbbc Mon Sep 17 00:00:00 2001 From: Ryan Neff Date: Thu, 4 Jul 2024 12:49:55 -0700 Subject: [PATCH 174/519] Fixes duplicate pid/vid for sofle_choc (#24030) --- keyboards/sofle_choc/keyboard.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/sofle_choc/keyboard.json b/keyboards/sofle_choc/keyboard.json index f0ce6d78e04..c4d9822371b 100644 --- a/keyboards/sofle_choc/keyboard.json +++ b/keyboards/sofle_choc/keyboard.json @@ -130,8 +130,8 @@ "url": "https://github.com/josefadamcik/SofleKeyboard", "usb": { "device_version": "0.0.1", - "pid": "0x0287", - "vid": "0xFC32" + "pid": "0x5343", + "vid": "0x424C" }, "ws2812": { "pin": "D3" From 43fc7b5a4f6d1d9079b09beb2a7eb24864f5222b Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 5 Jul 2024 09:44:23 +1000 Subject: [PATCH 175/519] `kikoslab/kl90`: add additional layouts (#24024) --- keyboards/kikoslab/kl90/keyboard.json | 1048 ++++++++++++++++++++++++- 1 file changed, 1037 insertions(+), 11 deletions(-) diff --git a/keyboards/kikoslab/kl90/keyboard.json b/keyboards/kikoslab/kl90/keyboard.json index 391008b58f5..0a107dfba8e 100644 --- a/keyboards/kikoslab/kl90/keyboard.json +++ b/keyboards/kikoslab/kl90/keyboard.json @@ -117,17 +117,17 @@ {"matrix": [4, 0], "x": 0, "y": 4.5}, {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 1.25}, - {"matrix": [4, 2], "x": 2.75, "y": 4.5}, - {"matrix": [4, 3], "x": 3.75, "y": 4.5}, - {"matrix": [4, 4], "x": 4.75, "y": 4.5}, - {"matrix": [4, 5], "x": 5.75, "y": 4.5}, - {"matrix": [4, 6], "x": 6.75, "y": 4.5}, - {"matrix": [4, 7], "x": 7.75, "y": 4.5}, - {"matrix": [4, 8], "x": 8.75, "y": 4.5}, - {"matrix": [4, 9], "x": 9.75, "y": 4.5}, - {"matrix": [4, 10], "x": 10.75, "y": 4.5}, - {"matrix": [4, 11], "x": 11.75, "y": 4.5}, - {"matrix": [4, 12], "x": 12.75, "y": 4.5}, + {"matrix": [4, 12], "x": 2.75, "y": 4.5}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, {"matrix": [4, 14], "x": 15.75, "y": 4.75}, @@ -147,6 +147,1032 @@ {"matrix": [5, 11], "x": 12.5, "y": 5.5}, {"matrix": [5, 12], "x": 13.5, "y": 5.5}, + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, + {"matrix": [5, 14], "x": 15.75, "y": 5.75}, + {"matrix": [5, 15], "x": 16.75, "y": 5.75} + ] + }, + "LAYOUT_solder_ansi": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.5, "y": 0}, + + {"matrix": [0, 2], "x": 2.75, "y": 0}, + {"matrix": [0, 3], "x": 3.75, "y": 0}, + {"matrix": [0, 4], "x": 4.75, "y": 0}, + {"matrix": [0, 5], "x": 5.75, "y": 0}, + + {"matrix": [0, 6], "x": 7, "y": 0}, + {"matrix": [0, 7], "x": 8, "y": 0}, + {"matrix": [0, 8], "x": 9, "y": 0}, + {"matrix": [0, 9], "x": 10, "y": 0}, + + {"matrix": [0, 10], "x": 11.25, "y": 0}, + {"matrix": [0, 11], "x": 12.25, "y": 0}, + {"matrix": [0, 12], "x": 13.25, "y": 0}, + {"matrix": [0, 13], "x": 14.25, "y": 0}, + + {"matrix": [0, 14], "x": 15.5, "y": 0}, + + {"matrix": [0, 15], "x": 17, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1.5}, + + {"matrix": [1, 1], "x": 1.5, "y": 1.5}, + {"matrix": [1, 2], "x": 2.5, "y": 1.5}, + {"matrix": [1, 3], "x": 3.5, "y": 1.5}, + {"matrix": [1, 4], "x": 4.5, "y": 1.5}, + {"matrix": [1, 5], "x": 5.5, "y": 1.5}, + {"matrix": [1, 6], "x": 6.5, "y": 1.5}, + {"matrix": [1, 7], "x": 7.5, "y": 1.5}, + {"matrix": [1, 8], "x": 8.5, "y": 1.5}, + {"matrix": [1, 9], "x": 9.5, "y": 1.5}, + {"matrix": [1, 10], "x": 10.5, "y": 1.5}, + {"matrix": [1, 11], "x": 11.5, "y": 1.5}, + {"matrix": [1, 12], "x": 12.5, "y": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1.5}, + {"matrix": [1, 14], "x": 14.5, "y": 1.5, "w": 2}, + + {"matrix": [1, 15], "x": 17, "y": 1.5}, + + {"matrix": [2, 0], "x": 0, "y": 2.5}, + + {"matrix": [2, 1], "x": 1.5, "y": 2.5, "w": 1.5}, + {"matrix": [2, 2], "x": 3, "y": 2.5}, + {"matrix": [2, 3], "x": 4, "y": 2.5}, + {"matrix": [2, 4], "x": 5, "y": 2.5}, + {"matrix": [2, 5], "x": 6, "y": 2.5}, + {"matrix": [2, 6], "x": 7, "y": 2.5}, + {"matrix": [2, 7], "x": 8, "y": 2.5}, + {"matrix": [2, 8], "x": 9, "y": 2.5}, + {"matrix": [2, 9], "x": 10, "y": 2.5}, + {"matrix": [2, 10], "x": 11, "y": 2.5}, + {"matrix": [2, 11], "x": 12, "y": 2.5}, + {"matrix": [2, 12], "x": 13, "y": 2.5}, + {"matrix": [2, 13], "x": 14, "y": 2.5}, + {"matrix": [2, 14], "x": 15, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 15], "x": 17, "y": 2.5}, + + {"matrix": [3, 0], "x": 0, "y": 3.5}, + + {"matrix": [3, 1], "x": 1.5, "y": 3.5, "w": 1.75}, + {"matrix": [3, 2], "x": 3.25, "y": 3.5}, + {"matrix": [3, 3], "x": 4.25, "y": 3.5}, + {"matrix": [3, 4], "x": 5.25, "y": 3.5}, + {"matrix": [3, 5], "x": 6.25, "y": 3.5}, + {"matrix": [3, 6], "x": 7.25, "y": 3.5}, + {"matrix": [3, 7], "x": 8.25, "y": 3.5}, + {"matrix": [3, 8], "x": 9.25, "y": 3.5}, + {"matrix": [3, 9], "x": 10.25, "y": 3.5}, + {"matrix": [3, 10], "x": 11.25, "y": 3.5}, + {"matrix": [3, 11], "x": 12.25, "y": 3.5}, + {"matrix": [3, 12], "x": 13.25, "y": 3.5}, + {"matrix": [3, 14], "x": 14.25, "y": 3.5, "w": 2.25}, + + {"matrix": [3, 15], "x": 17, "y": 3.5}, + + {"matrix": [4, 0], "x": 0, "y": 4.5}, + + {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 2.25}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, + {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, + + {"matrix": [4, 14], "x": 15.75, "y": 4.75}, + + {"matrix": [4, 15], "x": 17, "y": 4.5}, + + {"matrix": [5, 0], "x": 0, "y": 5.5}, + + {"matrix": [5, 1], "x": 1.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.75, "y": 5.5, "w": 1.25}, + {"matrix": [5, 3], "x": 4, "y": 5.5, "w": 1.25}, + {"matrix": [5, 6], "x": 5.25, "y": 5.5, "w": 6.25}, + {"matrix": [5, 10], "x": 11.5, "y": 5.5, "w": 1.5}, + {"matrix": [5, 11], "x": 13, "y": 5.5, "w": 1.5}, + + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, + {"matrix": [5, 14], "x": 15.75, "y": 5.75}, + {"matrix": [5, 15], "x": 16.75, "y": 5.75} + ] + }, + "LAYOUT_solder_ansi_split_space": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.5, "y": 0}, + + {"matrix": [0, 2], "x": 2.75, "y": 0}, + {"matrix": [0, 3], "x": 3.75, "y": 0}, + {"matrix": [0, 4], "x": 4.75, "y": 0}, + {"matrix": [0, 5], "x": 5.75, "y": 0}, + + {"matrix": [0, 6], "x": 7, "y": 0}, + {"matrix": [0, 7], "x": 8, "y": 0}, + {"matrix": [0, 8], "x": 9, "y": 0}, + {"matrix": [0, 9], "x": 10, "y": 0}, + + {"matrix": [0, 10], "x": 11.25, "y": 0}, + {"matrix": [0, 11], "x": 12.25, "y": 0}, + {"matrix": [0, 12], "x": 13.25, "y": 0}, + {"matrix": [0, 13], "x": 14.25, "y": 0}, + + {"matrix": [0, 14], "x": 15.5, "y": 0}, + + {"matrix": [0, 15], "x": 17, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1.5}, + + {"matrix": [1, 1], "x": 1.5, "y": 1.5}, + {"matrix": [1, 2], "x": 2.5, "y": 1.5}, + {"matrix": [1, 3], "x": 3.5, "y": 1.5}, + {"matrix": [1, 4], "x": 4.5, "y": 1.5}, + {"matrix": [1, 5], "x": 5.5, "y": 1.5}, + {"matrix": [1, 6], "x": 6.5, "y": 1.5}, + {"matrix": [1, 7], "x": 7.5, "y": 1.5}, + {"matrix": [1, 8], "x": 8.5, "y": 1.5}, + {"matrix": [1, 9], "x": 9.5, "y": 1.5}, + {"matrix": [1, 10], "x": 10.5, "y": 1.5}, + {"matrix": [1, 11], "x": 11.5, "y": 1.5}, + {"matrix": [1, 12], "x": 12.5, "y": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1.5}, + {"matrix": [1, 14], "x": 14.5, "y": 1.5, "w": 2}, + + {"matrix": [1, 15], "x": 17, "y": 1.5}, + + {"matrix": [2, 0], "x": 0, "y": 2.5}, + + {"matrix": [2, 1], "x": 1.5, "y": 2.5, "w": 1.5}, + {"matrix": [2, 2], "x": 3, "y": 2.5}, + {"matrix": [2, 3], "x": 4, "y": 2.5}, + {"matrix": [2, 4], "x": 5, "y": 2.5}, + {"matrix": [2, 5], "x": 6, "y": 2.5}, + {"matrix": [2, 6], "x": 7, "y": 2.5}, + {"matrix": [2, 7], "x": 8, "y": 2.5}, + {"matrix": [2, 8], "x": 9, "y": 2.5}, + {"matrix": [2, 9], "x": 10, "y": 2.5}, + {"matrix": [2, 10], "x": 11, "y": 2.5}, + {"matrix": [2, 11], "x": 12, "y": 2.5}, + {"matrix": [2, 12], "x": 13, "y": 2.5}, + {"matrix": [2, 13], "x": 14, "y": 2.5}, + {"matrix": [2, 14], "x": 15, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 15], "x": 17, "y": 2.5}, + + {"matrix": [3, 0], "x": 0, "y": 3.5}, + + {"matrix": [3, 1], "x": 1.5, "y": 3.5, "w": 1.75}, + {"matrix": [3, 2], "x": 3.25, "y": 3.5}, + {"matrix": [3, 3], "x": 4.25, "y": 3.5}, + {"matrix": [3, 4], "x": 5.25, "y": 3.5}, + {"matrix": [3, 5], "x": 6.25, "y": 3.5}, + {"matrix": [3, 6], "x": 7.25, "y": 3.5}, + {"matrix": [3, 7], "x": 8.25, "y": 3.5}, + {"matrix": [3, 8], "x": 9.25, "y": 3.5}, + {"matrix": [3, 9], "x": 10.25, "y": 3.5}, + {"matrix": [3, 10], "x": 11.25, "y": 3.5}, + {"matrix": [3, 11], "x": 12.25, "y": 3.5}, + {"matrix": [3, 12], "x": 13.25, "y": 3.5}, + {"matrix": [3, 14], "x": 14.25, "y": 3.5, "w": 2.25}, + + {"matrix": [3, 15], "x": 17, "y": 3.5}, + + {"matrix": [4, 0], "x": 0, "y": 4.5}, + + {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 2.25}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, + {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, + + {"matrix": [4, 14], "x": 15.75, "y": 4.75}, + + {"matrix": [4, 15], "x": 17, "y": 4.5}, + + {"matrix": [5, 0], "x": 0, "y": 5.5}, + + {"matrix": [5, 1], "x": 1.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.75, "y": 5.5, "w": 1.25}, + {"matrix": [5, 3], "x": 4, "y": 5.5, "w": 1.25}, + {"matrix": [5, 4], "x": 5.25, "y": 5.5, "w": 2.25}, + {"matrix": [5, 6], "x": 7.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 8], "x": 8.75, "y": 5.5, "w": 2.75}, + {"matrix": [5, 10], "x": 11.5, "y": 5.5, "w": 1.5}, + {"matrix": [5, 11], "x": 13, "y": 5.5, "w": 1.5}, + + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, + {"matrix": [5, 14], "x": 15.75, "y": 5.75}, + {"matrix": [5, 15], "x": 16.75, "y": 5.75} + ] + }, + "LAYOUT_solder_ansi_oled": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.5, "y": 0}, + + {"matrix": [0, 2], "x": 2.75, "y": 0}, + {"matrix": [0, 3], "x": 3.75, "y": 0}, + {"matrix": [0, 4], "x": 4.75, "y": 0}, + {"matrix": [0, 5], "x": 5.75, "y": 0}, + + {"matrix": [0, 6], "x": 7, "y": 0}, + {"matrix": [0, 7], "x": 8, "y": 0}, + {"matrix": [0, 8], "x": 9, "y": 0}, + {"matrix": [0, 9], "x": 10, "y": 0}, + + {"matrix": [0, 10], "x": 11.25, "y": 0}, + {"matrix": [0, 11], "x": 12.25, "y": 0}, + {"matrix": [0, 12], "x": 13.25, "y": 0}, + {"matrix": [0, 13], "x": 14.25, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1.5}, + + {"matrix": [1, 1], "x": 1.5, "y": 1.5}, + {"matrix": [1, 2], "x": 2.5, "y": 1.5}, + {"matrix": [1, 3], "x": 3.5, "y": 1.5}, + {"matrix": [1, 4], "x": 4.5, "y": 1.5}, + {"matrix": [1, 5], "x": 5.5, "y": 1.5}, + {"matrix": [1, 6], "x": 6.5, "y": 1.5}, + {"matrix": [1, 7], "x": 7.5, "y": 1.5}, + {"matrix": [1, 8], "x": 8.5, "y": 1.5}, + {"matrix": [1, 9], "x": 9.5, "y": 1.5}, + {"matrix": [1, 10], "x": 10.5, "y": 1.5}, + {"matrix": [1, 11], "x": 11.5, "y": 1.5}, + {"matrix": [1, 12], "x": 12.5, "y": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1.5}, + {"matrix": [1, 14], "x": 14.5, "y": 1.5, "w": 2}, + + {"matrix": [1, 15], "x": 17, "y": 1.5}, + + {"matrix": [2, 0], "x": 0, "y": 2.5}, + + {"matrix": [2, 1], "x": 1.5, "y": 2.5, "w": 1.5}, + {"matrix": [2, 2], "x": 3, "y": 2.5}, + {"matrix": [2, 3], "x": 4, "y": 2.5}, + {"matrix": [2, 4], "x": 5, "y": 2.5}, + {"matrix": [2, 5], "x": 6, "y": 2.5}, + {"matrix": [2, 6], "x": 7, "y": 2.5}, + {"matrix": [2, 7], "x": 8, "y": 2.5}, + {"matrix": [2, 8], "x": 9, "y": 2.5}, + {"matrix": [2, 9], "x": 10, "y": 2.5}, + {"matrix": [2, 10], "x": 11, "y": 2.5}, + {"matrix": [2, 11], "x": 12, "y": 2.5}, + {"matrix": [2, 12], "x": 13, "y": 2.5}, + {"matrix": [2, 13], "x": 14, "y": 2.5}, + {"matrix": [2, 14], "x": 15, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 15], "x": 17, "y": 2.5}, + + {"matrix": [3, 0], "x": 0, "y": 3.5}, + + {"matrix": [3, 1], "x": 1.5, "y": 3.5, "w": 1.75}, + {"matrix": [3, 2], "x": 3.25, "y": 3.5}, + {"matrix": [3, 3], "x": 4.25, "y": 3.5}, + {"matrix": [3, 4], "x": 5.25, "y": 3.5}, + {"matrix": [3, 5], "x": 6.25, "y": 3.5}, + {"matrix": [3, 6], "x": 7.25, "y": 3.5}, + {"matrix": [3, 7], "x": 8.25, "y": 3.5}, + {"matrix": [3, 8], "x": 9.25, "y": 3.5}, + {"matrix": [3, 9], "x": 10.25, "y": 3.5}, + {"matrix": [3, 10], "x": 11.25, "y": 3.5}, + {"matrix": [3, 11], "x": 12.25, "y": 3.5}, + {"matrix": [3, 12], "x": 13.25, "y": 3.5}, + {"matrix": [3, 14], "x": 14.25, "y": 3.5, "w": 2.25}, + + {"matrix": [3, 15], "x": 17, "y": 3.5}, + + {"matrix": [4, 0], "x": 0, "y": 4.5}, + + {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 2.25}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, + {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, + + {"matrix": [4, 14], "x": 15.75, "y": 4.75}, + + {"matrix": [4, 15], "x": 17, "y": 4.5}, + + {"matrix": [5, 0], "x": 0, "y": 5.5}, + + {"matrix": [5, 1], "x": 1.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.75, "y": 5.5, "w": 1.25}, + {"matrix": [5, 3], "x": 4, "y": 5.5, "w": 1.25}, + {"matrix": [5, 6], "x": 5.25, "y": 5.5, "w": 6.25}, + {"matrix": [5, 10], "x": 11.5, "y": 5.5, "w": 1.5}, + {"matrix": [5, 11], "x": 13, "y": 5.5, "w": 1.5}, + + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, + {"matrix": [5, 14], "x": 15.75, "y": 5.75}, + {"matrix": [5, 15], "x": 16.75, "y": 5.75} + ] + }, + "LAYOUT_solder_iso": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.5, "y": 0}, + + {"matrix": [0, 2], "x": 2.75, "y": 0}, + {"matrix": [0, 3], "x": 3.75, "y": 0}, + {"matrix": [0, 4], "x": 4.75, "y": 0}, + {"matrix": [0, 5], "x": 5.75, "y": 0}, + + {"matrix": [0, 6], "x": 7, "y": 0}, + {"matrix": [0, 7], "x": 8, "y": 0}, + {"matrix": [0, 8], "x": 9, "y": 0}, + {"matrix": [0, 9], "x": 10, "y": 0}, + + {"matrix": [0, 10], "x": 11.25, "y": 0}, + {"matrix": [0, 11], "x": 12.25, "y": 0}, + {"matrix": [0, 12], "x": 13.25, "y": 0}, + {"matrix": [0, 13], "x": 14.25, "y": 0}, + + {"matrix": [0, 14], "x": 15.5, "y": 0}, + + {"matrix": [0, 15], "x": 17, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1.5}, + + {"matrix": [1, 1], "x": 1.5, "y": 1.5}, + {"matrix": [1, 2], "x": 2.5, "y": 1.5}, + {"matrix": [1, 3], "x": 3.5, "y": 1.5}, + {"matrix": [1, 4], "x": 4.5, "y": 1.5}, + {"matrix": [1, 5], "x": 5.5, "y": 1.5}, + {"matrix": [1, 6], "x": 6.5, "y": 1.5}, + {"matrix": [1, 7], "x": 7.5, "y": 1.5}, + {"matrix": [1, 8], "x": 8.5, "y": 1.5}, + {"matrix": [1, 9], "x": 9.5, "y": 1.5}, + {"matrix": [1, 10], "x": 10.5, "y": 1.5}, + {"matrix": [1, 11], "x": 11.5, "y": 1.5}, + {"matrix": [1, 12], "x": 12.5, "y": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1.5}, + {"matrix": [1, 14], "x": 14.5, "y": 1.5, "w": 2}, + + {"matrix": [1, 15], "x": 17, "y": 1.5}, + + {"matrix": [2, 0], "x": 0, "y": 2.5}, + + {"matrix": [2, 1], "x": 1.5, "y": 2.5, "w": 1.5}, + {"matrix": [2, 2], "x": 3, "y": 2.5}, + {"matrix": [2, 3], "x": 4, "y": 2.5}, + {"matrix": [2, 4], "x": 5, "y": 2.5}, + {"matrix": [2, 5], "x": 6, "y": 2.5}, + {"matrix": [2, 6], "x": 7, "y": 2.5}, + {"matrix": [2, 7], "x": 8, "y": 2.5}, + {"matrix": [2, 8], "x": 9, "y": 2.5}, + {"matrix": [2, 9], "x": 10, "y": 2.5}, + {"matrix": [2, 10], "x": 11, "y": 2.5}, + {"matrix": [2, 11], "x": 12, "y": 2.5}, + {"matrix": [2, 12], "x": 13, "y": 2.5}, + {"matrix": [2, 13], "x": 14, "y": 2.5}, + {"matrix": [2, 14], "x": 15, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 15], "x": 17, "y": 2.5}, + + {"matrix": [3, 0], "x": 0, "y": 3.5}, + + {"matrix": [3, 1], "x": 1.5, "y": 3.5, "w": 1.75}, + {"matrix": [3, 2], "x": 3.25, "y": 3.5}, + {"matrix": [3, 3], "x": 4.25, "y": 3.5}, + {"matrix": [3, 4], "x": 5.25, "y": 3.5}, + {"matrix": [3, 5], "x": 6.25, "y": 3.5}, + {"matrix": [3, 6], "x": 7.25, "y": 3.5}, + {"matrix": [3, 7], "x": 8.25, "y": 3.5}, + {"matrix": [3, 8], "x": 9.25, "y": 3.5}, + {"matrix": [3, 9], "x": 10.25, "y": 3.5}, + {"matrix": [3, 10], "x": 11.25, "y": 3.5}, + {"matrix": [3, 11], "x": 12.25, "y": 3.5}, + {"matrix": [3, 12], "x": 13.25, "y": 3.5}, + {"matrix": [3, 13], "x": 14.25, "y": 3.5}, + {"matrix": [3, 14], "x": 15.25, "y": 2.5, "w": 1.25, "h": 2}, + + {"matrix": [3, 15], "x": 17, "y": 3.5}, + + {"matrix": [4, 0], "x": 0, "y": 4.5}, + + {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 1.25}, + {"matrix": [4, 12], "x": 2.75, "y": 4.5}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, + {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, + + {"matrix": [4, 14], "x": 15.75, "y": 4.75}, + + {"matrix": [4, 15], "x": 17, "y": 4.5}, + + {"matrix": [5, 0], "x": 0, "y": 5.5}, + + {"matrix": [5, 1], "x": 1.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.75, "y": 5.5, "w": 1.25}, + {"matrix": [5, 3], "x": 4, "y": 5.5, "w": 1.25}, + {"matrix": [5, 6], "x": 5.25, "y": 5.5, "w": 6.25}, + {"matrix": [5, 10], "x": 11.5, "y": 5.5, "w": 1.5}, + {"matrix": [5, 11], "x": 13, "y": 5.5, "w": 1.5}, + + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, + {"matrix": [5, 14], "x": 15.75, "y": 5.75}, + {"matrix": [5, 15], "x": 16.75, "y": 5.75} + ] + }, + "LAYOUT_solder_iso_split_space": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.5, "y": 0}, + + {"matrix": [0, 2], "x": 2.75, "y": 0}, + {"matrix": [0, 3], "x": 3.75, "y": 0}, + {"matrix": [0, 4], "x": 4.75, "y": 0}, + {"matrix": [0, 5], "x": 5.75, "y": 0}, + + {"matrix": [0, 6], "x": 7, "y": 0}, + {"matrix": [0, 7], "x": 8, "y": 0}, + {"matrix": [0, 8], "x": 9, "y": 0}, + {"matrix": [0, 9], "x": 10, "y": 0}, + + {"matrix": [0, 10], "x": 11.25, "y": 0}, + {"matrix": [0, 11], "x": 12.25, "y": 0}, + {"matrix": [0, 12], "x": 13.25, "y": 0}, + {"matrix": [0, 13], "x": 14.25, "y": 0}, + + {"matrix": [0, 14], "x": 15.5, "y": 0}, + + {"matrix": [0, 15], "x": 17, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1.5}, + + {"matrix": [1, 1], "x": 1.5, "y": 1.5}, + {"matrix": [1, 2], "x": 2.5, "y": 1.5}, + {"matrix": [1, 3], "x": 3.5, "y": 1.5}, + {"matrix": [1, 4], "x": 4.5, "y": 1.5}, + {"matrix": [1, 5], "x": 5.5, "y": 1.5}, + {"matrix": [1, 6], "x": 6.5, "y": 1.5}, + {"matrix": [1, 7], "x": 7.5, "y": 1.5}, + {"matrix": [1, 8], "x": 8.5, "y": 1.5}, + {"matrix": [1, 9], "x": 9.5, "y": 1.5}, + {"matrix": [1, 10], "x": 10.5, "y": 1.5}, + {"matrix": [1, 11], "x": 11.5, "y": 1.5}, + {"matrix": [1, 12], "x": 12.5, "y": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1.5}, + {"matrix": [1, 14], "x": 14.5, "y": 1.5, "w": 2}, + + {"matrix": [1, 15], "x": 17, "y": 1.5}, + + {"matrix": [2, 0], "x": 0, "y": 2.5}, + + {"matrix": [2, 1], "x": 1.5, "y": 2.5, "w": 1.5}, + {"matrix": [2, 2], "x": 3, "y": 2.5}, + {"matrix": [2, 3], "x": 4, "y": 2.5}, + {"matrix": [2, 4], "x": 5, "y": 2.5}, + {"matrix": [2, 5], "x": 6, "y": 2.5}, + {"matrix": [2, 6], "x": 7, "y": 2.5}, + {"matrix": [2, 7], "x": 8, "y": 2.5}, + {"matrix": [2, 8], "x": 9, "y": 2.5}, + {"matrix": [2, 9], "x": 10, "y": 2.5}, + {"matrix": [2, 10], "x": 11, "y": 2.5}, + {"matrix": [2, 11], "x": 12, "y": 2.5}, + {"matrix": [2, 12], "x": 13, "y": 2.5}, + {"matrix": [2, 13], "x": 14, "y": 2.5}, + {"matrix": [2, 14], "x": 15, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 15], "x": 17, "y": 2.5}, + + {"matrix": [3, 0], "x": 0, "y": 3.5}, + + {"matrix": [3, 1], "x": 1.5, "y": 3.5, "w": 1.75}, + {"matrix": [3, 2], "x": 3.25, "y": 3.5}, + {"matrix": [3, 3], "x": 4.25, "y": 3.5}, + {"matrix": [3, 4], "x": 5.25, "y": 3.5}, + {"matrix": [3, 5], "x": 6.25, "y": 3.5}, + {"matrix": [3, 6], "x": 7.25, "y": 3.5}, + {"matrix": [3, 7], "x": 8.25, "y": 3.5}, + {"matrix": [3, 8], "x": 9.25, "y": 3.5}, + {"matrix": [3, 9], "x": 10.25, "y": 3.5}, + {"matrix": [3, 10], "x": 11.25, "y": 3.5}, + {"matrix": [3, 11], "x": 12.25, "y": 3.5}, + {"matrix": [3, 12], "x": 13.25, "y": 3.5}, + {"matrix": [3, 13], "x": 14.25, "y": 3.5}, + {"matrix": [3, 14], "x": 15.25, "y": 2.5, "w": 1.25, "h": 2}, + + {"matrix": [3, 15], "x": 17, "y": 3.5}, + + {"matrix": [4, 0], "x": 0, "y": 4.5}, + + {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 1.25}, + {"matrix": [4, 12], "x": 2.75, "y": 4.5}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, + {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, + + {"matrix": [4, 14], "x": 15.75, "y": 4.75}, + + {"matrix": [4, 15], "x": 17, "y": 4.5}, + + {"matrix": [5, 0], "x": 0, "y": 5.5}, + + {"matrix": [5, 1], "x": 1.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.75, "y": 5.5, "w": 1.25}, + {"matrix": [5, 3], "x": 4, "y": 5.5, "w": 1.25}, + {"matrix": [5, 4], "x": 5.25, "y": 5.5, "w": 2.25}, + {"matrix": [5, 6], "x": 7.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 8], "x": 8.75, "y": 5.5, "w": 2.75}, + {"matrix": [5, 10], "x": 11.5, "y": 5.5, "w": 1.5}, + {"matrix": [5, 11], "x": 13, "y": 5.5, "w": 1.5}, + + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, + {"matrix": [5, 14], "x": 15.75, "y": 5.75}, + {"matrix": [5, 15], "x": 16.75, "y": 5.75} + ] + }, + "LAYOUT_solder_iso_oled": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.5, "y": 0}, + + {"matrix": [0, 2], "x": 2.75, "y": 0}, + {"matrix": [0, 3], "x": 3.75, "y": 0}, + {"matrix": [0, 4], "x": 4.75, "y": 0}, + {"matrix": [0, 5], "x": 5.75, "y": 0}, + + {"matrix": [0, 6], "x": 7, "y": 0}, + {"matrix": [0, 7], "x": 8, "y": 0}, + {"matrix": [0, 8], "x": 9, "y": 0}, + {"matrix": [0, 9], "x": 10, "y": 0}, + + {"matrix": [0, 10], "x": 11.25, "y": 0}, + {"matrix": [0, 11], "x": 12.25, "y": 0}, + {"matrix": [0, 12], "x": 13.25, "y": 0}, + {"matrix": [0, 13], "x": 14.25, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1.5}, + + {"matrix": [1, 1], "x": 1.5, "y": 1.5}, + {"matrix": [1, 2], "x": 2.5, "y": 1.5}, + {"matrix": [1, 3], "x": 3.5, "y": 1.5}, + {"matrix": [1, 4], "x": 4.5, "y": 1.5}, + {"matrix": [1, 5], "x": 5.5, "y": 1.5}, + {"matrix": [1, 6], "x": 6.5, "y": 1.5}, + {"matrix": [1, 7], "x": 7.5, "y": 1.5}, + {"matrix": [1, 8], "x": 8.5, "y": 1.5}, + {"matrix": [1, 9], "x": 9.5, "y": 1.5}, + {"matrix": [1, 10], "x": 10.5, "y": 1.5}, + {"matrix": [1, 11], "x": 11.5, "y": 1.5}, + {"matrix": [1, 12], "x": 12.5, "y": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1.5}, + {"matrix": [1, 14], "x": 14.5, "y": 1.5, "w": 2}, + + {"matrix": [1, 15], "x": 17, "y": 1.5}, + + {"matrix": [2, 0], "x": 0, "y": 2.5}, + + {"matrix": [2, 1], "x": 1.5, "y": 2.5, "w": 1.5}, + {"matrix": [2, 2], "x": 3, "y": 2.5}, + {"matrix": [2, 3], "x": 4, "y": 2.5}, + {"matrix": [2, 4], "x": 5, "y": 2.5}, + {"matrix": [2, 5], "x": 6, "y": 2.5}, + {"matrix": [2, 6], "x": 7, "y": 2.5}, + {"matrix": [2, 7], "x": 8, "y": 2.5}, + {"matrix": [2, 8], "x": 9, "y": 2.5}, + {"matrix": [2, 9], "x": 10, "y": 2.5}, + {"matrix": [2, 10], "x": 11, "y": 2.5}, + {"matrix": [2, 11], "x": 12, "y": 2.5}, + {"matrix": [2, 12], "x": 13, "y": 2.5}, + {"matrix": [2, 13], "x": 14, "y": 2.5}, + {"matrix": [2, 14], "x": 15, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 15], "x": 17, "y": 2.5}, + + {"matrix": [3, 0], "x": 0, "y": 3.5}, + + {"matrix": [3, 1], "x": 1.5, "y": 3.5, "w": 1.75}, + {"matrix": [3, 2], "x": 3.25, "y": 3.5}, + {"matrix": [3, 3], "x": 4.25, "y": 3.5}, + {"matrix": [3, 4], "x": 5.25, "y": 3.5}, + {"matrix": [3, 5], "x": 6.25, "y": 3.5}, + {"matrix": [3, 6], "x": 7.25, "y": 3.5}, + {"matrix": [3, 7], "x": 8.25, "y": 3.5}, + {"matrix": [3, 8], "x": 9.25, "y": 3.5}, + {"matrix": [3, 9], "x": 10.25, "y": 3.5}, + {"matrix": [3, 10], "x": 11.25, "y": 3.5}, + {"matrix": [3, 11], "x": 12.25, "y": 3.5}, + {"matrix": [3, 12], "x": 13.25, "y": 3.5}, + {"matrix": [3, 13], "x": 14.25, "y": 3.5}, + {"matrix": [3, 14], "x": 15.25, "y": 2.5, "w": 1.25, "h": 2}, + + {"matrix": [3, 15], "x": 17, "y": 3.5}, + + {"matrix": [4, 0], "x": 0, "y": 4.5}, + + {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 1.25}, + {"matrix": [4, 12], "x": 2.75, "y": 4.5}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, + {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, + + {"matrix": [4, 14], "x": 15.75, "y": 4.75}, + + {"matrix": [4, 15], "x": 17, "y": 4.5}, + + {"matrix": [5, 0], "x": 0, "y": 5.5}, + + {"matrix": [5, 1], "x": 1.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.75, "y": 5.5, "w": 1.25}, + {"matrix": [5, 3], "x": 4, "y": 5.5, "w": 1.25}, + {"matrix": [5, 6], "x": 5.25, "y": 5.5, "w": 6.25}, + {"matrix": [5, 10], "x": 11.5, "y": 5.5, "w": 1.5}, + {"matrix": [5, 11], "x": 13, "y": 5.5, "w": 1.5}, + + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, + {"matrix": [5, 14], "x": 15.75, "y": 5.75}, + {"matrix": [5, 15], "x": 16.75, "y": 5.75} + ] + }, + "LAYOUT_hotswap_ansi": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.5, "y": 0}, + + {"matrix": [0, 2], "x": 2.75, "y": 0}, + {"matrix": [0, 3], "x": 3.75, "y": 0}, + {"matrix": [0, 4], "x": 4.75, "y": 0}, + {"matrix": [0, 5], "x": 5.75, "y": 0}, + + {"matrix": [0, 6], "x": 7, "y": 0}, + {"matrix": [0, 7], "x": 8, "y": 0}, + {"matrix": [0, 8], "x": 9, "y": 0}, + {"matrix": [0, 9], "x": 10, "y": 0}, + + {"matrix": [0, 10], "x": 11.25, "y": 0}, + {"matrix": [0, 11], "x": 12.25, "y": 0}, + {"matrix": [0, 12], "x": 13.25, "y": 0}, + {"matrix": [0, 13], "x": 14.25, "y": 0}, + + {"matrix": [0, 14], "x": 15.5, "y": 0}, + + {"matrix": [0, 15], "x": 17, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1.5}, + + {"matrix": [1, 1], "x": 1.5, "y": 1.5}, + {"matrix": [1, 2], "x": 2.5, "y": 1.5}, + {"matrix": [1, 3], "x": 3.5, "y": 1.5}, + {"matrix": [1, 4], "x": 4.5, "y": 1.5}, + {"matrix": [1, 5], "x": 5.5, "y": 1.5}, + {"matrix": [1, 6], "x": 6.5, "y": 1.5}, + {"matrix": [1, 7], "x": 7.5, "y": 1.5}, + {"matrix": [1, 8], "x": 8.5, "y": 1.5}, + {"matrix": [1, 9], "x": 9.5, "y": 1.5}, + {"matrix": [1, 10], "x": 10.5, "y": 1.5}, + {"matrix": [1, 11], "x": 11.5, "y": 1.5}, + {"matrix": [1, 12], "x": 12.5, "y": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1.5}, + {"matrix": [1, 14], "x": 14.5, "y": 1.5, "w": 2}, + + {"matrix": [1, 15], "x": 17, "y": 1.5}, + + {"matrix": [2, 0], "x": 0, "y": 2.5}, + + {"matrix": [2, 1], "x": 1.5, "y": 2.5, "w": 1.5}, + {"matrix": [2, 2], "x": 3, "y": 2.5}, + {"matrix": [2, 3], "x": 4, "y": 2.5}, + {"matrix": [2, 4], "x": 5, "y": 2.5}, + {"matrix": [2, 5], "x": 6, "y": 2.5}, + {"matrix": [2, 6], "x": 7, "y": 2.5}, + {"matrix": [2, 7], "x": 8, "y": 2.5}, + {"matrix": [2, 8], "x": 9, "y": 2.5}, + {"matrix": [2, 9], "x": 10, "y": 2.5}, + {"matrix": [2, 10], "x": 11, "y": 2.5}, + {"matrix": [2, 11], "x": 12, "y": 2.5}, + {"matrix": [2, 12], "x": 13, "y": 2.5}, + {"matrix": [2, 13], "x": 14, "y": 2.5}, + {"matrix": [2, 14], "x": 15, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 15], "x": 17, "y": 2.5}, + + {"matrix": [3, 0], "x": 0, "y": 3.5}, + + {"matrix": [3, 1], "x": 1.5, "y": 3.5, "w": 1.75}, + {"matrix": [3, 2], "x": 3.25, "y": 3.5}, + {"matrix": [3, 3], "x": 4.25, "y": 3.5}, + {"matrix": [3, 4], "x": 5.25, "y": 3.5}, + {"matrix": [3, 5], "x": 6.25, "y": 3.5}, + {"matrix": [3, 6], "x": 7.25, "y": 3.5}, + {"matrix": [3, 7], "x": 8.25, "y": 3.5}, + {"matrix": [3, 8], "x": 9.25, "y": 3.5}, + {"matrix": [3, 9], "x": 10.25, "y": 3.5}, + {"matrix": [3, 10], "x": 11.25, "y": 3.5}, + {"matrix": [3, 11], "x": 12.25, "y": 3.5}, + {"matrix": [3, 12], "x": 13.25, "y": 3.5}, + {"matrix": [3, 14], "x": 14.25, "y": 3.5, "w": 2.25}, + + {"matrix": [3, 15], "x": 17, "y": 3.5}, + + {"matrix": [4, 0], "x": 0, "y": 4.5}, + + {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 2.25}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, + {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, + + {"matrix": [4, 14], "x": 15.75, "y": 4.75}, + + {"matrix": [4, 15], "x": 17, "y": 4.5}, + + {"matrix": [5, 0], "x": 0, "y": 5.5}, + + {"matrix": [5, 1], "x": 1.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.75, "y": 5.5, "w": 1.25}, + {"matrix": [5, 3], "x": 4, "y": 5.5, "w": 1.25}, + {"matrix": [5, 5], "x": 5.25, "y": 5.5, "w": 6.25}, + {"matrix": [5, 10], "x": 11.5, "y": 5.5, "w": 1.5}, + {"matrix": [5, 11], "x": 13, "y": 5.5, "w": 1.5}, + + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, + {"matrix": [5, 14], "x": 15.75, "y": 5.75}, + {"matrix": [5, 15], "x": 16.75, "y": 5.75} + ] + }, + "LAYOUT_hotswap_ansi_split_space": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.5, "y": 0}, + + {"matrix": [0, 2], "x": 2.75, "y": 0}, + {"matrix": [0, 3], "x": 3.75, "y": 0}, + {"matrix": [0, 4], "x": 4.75, "y": 0}, + {"matrix": [0, 5], "x": 5.75, "y": 0}, + + {"matrix": [0, 6], "x": 7, "y": 0}, + {"matrix": [0, 7], "x": 8, "y": 0}, + {"matrix": [0, 8], "x": 9, "y": 0}, + {"matrix": [0, 9], "x": 10, "y": 0}, + + {"matrix": [0, 10], "x": 11.25, "y": 0}, + {"matrix": [0, 11], "x": 12.25, "y": 0}, + {"matrix": [0, 12], "x": 13.25, "y": 0}, + {"matrix": [0, 13], "x": 14.25, "y": 0}, + + {"matrix": [0, 14], "x": 15.5, "y": 0}, + + {"matrix": [0, 15], "x": 17, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1.5}, + + {"matrix": [1, 1], "x": 1.5, "y": 1.5}, + {"matrix": [1, 2], "x": 2.5, "y": 1.5}, + {"matrix": [1, 3], "x": 3.5, "y": 1.5}, + {"matrix": [1, 4], "x": 4.5, "y": 1.5}, + {"matrix": [1, 5], "x": 5.5, "y": 1.5}, + {"matrix": [1, 6], "x": 6.5, "y": 1.5}, + {"matrix": [1, 7], "x": 7.5, "y": 1.5}, + {"matrix": [1, 8], "x": 8.5, "y": 1.5}, + {"matrix": [1, 9], "x": 9.5, "y": 1.5}, + {"matrix": [1, 10], "x": 10.5, "y": 1.5}, + {"matrix": [1, 11], "x": 11.5, "y": 1.5}, + {"matrix": [1, 12], "x": 12.5, "y": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1.5}, + {"matrix": [1, 14], "x": 14.5, "y": 1.5, "w": 2}, + + {"matrix": [1, 15], "x": 17, "y": 1.5}, + + {"matrix": [2, 0], "x": 0, "y": 2.5}, + + {"matrix": [2, 1], "x": 1.5, "y": 2.5, "w": 1.5}, + {"matrix": [2, 2], "x": 3, "y": 2.5}, + {"matrix": [2, 3], "x": 4, "y": 2.5}, + {"matrix": [2, 4], "x": 5, "y": 2.5}, + {"matrix": [2, 5], "x": 6, "y": 2.5}, + {"matrix": [2, 6], "x": 7, "y": 2.5}, + {"matrix": [2, 7], "x": 8, "y": 2.5}, + {"matrix": [2, 8], "x": 9, "y": 2.5}, + {"matrix": [2, 9], "x": 10, "y": 2.5}, + {"matrix": [2, 10], "x": 11, "y": 2.5}, + {"matrix": [2, 11], "x": 12, "y": 2.5}, + {"matrix": [2, 12], "x": 13, "y": 2.5}, + {"matrix": [2, 13], "x": 14, "y": 2.5}, + {"matrix": [2, 14], "x": 15, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 15], "x": 17, "y": 2.5}, + + {"matrix": [3, 0], "x": 0, "y": 3.5}, + + {"matrix": [3, 1], "x": 1.5, "y": 3.5, "w": 1.75}, + {"matrix": [3, 2], "x": 3.25, "y": 3.5}, + {"matrix": [3, 3], "x": 4.25, "y": 3.5}, + {"matrix": [3, 4], "x": 5.25, "y": 3.5}, + {"matrix": [3, 5], "x": 6.25, "y": 3.5}, + {"matrix": [3, 6], "x": 7.25, "y": 3.5}, + {"matrix": [3, 7], "x": 8.25, "y": 3.5}, + {"matrix": [3, 8], "x": 9.25, "y": 3.5}, + {"matrix": [3, 9], "x": 10.25, "y": 3.5}, + {"matrix": [3, 10], "x": 11.25, "y": 3.5}, + {"matrix": [3, 11], "x": 12.25, "y": 3.5}, + {"matrix": [3, 12], "x": 13.25, "y": 3.5}, + {"matrix": [3, 14], "x": 14.25, "y": 3.5, "w": 2.25}, + + {"matrix": [3, 15], "x": 17, "y": 3.5}, + + {"matrix": [4, 0], "x": 0, "y": 4.5}, + + {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 2.25}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, + {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, + + {"matrix": [4, 14], "x": 15.75, "y": 4.75}, + + {"matrix": [4, 15], "x": 17, "y": 4.5}, + + {"matrix": [5, 0], "x": 0, "y": 5.5}, + + {"matrix": [5, 1], "x": 1.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.75, "y": 5.5, "w": 1.25}, + {"matrix": [5, 3], "x": 4, "y": 5.5, "w": 1.25}, + {"matrix": [5, 4], "x": 5.25, "y": 5.5, "w": 2.25}, + {"matrix": [5, 5], "x": 7.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 8], "x": 8.75, "y": 5.5, "w": 2.75}, + {"matrix": [5, 10], "x": 11.5, "y": 5.5, "w": 1.5}, + {"matrix": [5, 11], "x": 13, "y": 5.5, "w": 1.5}, + + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, + {"matrix": [5, 14], "x": 15.75, "y": 5.75}, + {"matrix": [5, 15], "x": 16.75, "y": 5.75} + ] + }, + "LAYOUT_hotswap_ansi_oled": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.5, "y": 0}, + + {"matrix": [0, 2], "x": 2.75, "y": 0}, + {"matrix": [0, 3], "x": 3.75, "y": 0}, + {"matrix": [0, 4], "x": 4.75, "y": 0}, + {"matrix": [0, 5], "x": 5.75, "y": 0}, + + {"matrix": [0, 6], "x": 7, "y": 0}, + {"matrix": [0, 7], "x": 8, "y": 0}, + {"matrix": [0, 8], "x": 9, "y": 0}, + {"matrix": [0, 9], "x": 10, "y": 0}, + + {"matrix": [0, 10], "x": 11.25, "y": 0}, + {"matrix": [0, 11], "x": 12.25, "y": 0}, + {"matrix": [0, 12], "x": 13.25, "y": 0}, + {"matrix": [0, 13], "x": 14.25, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1.5}, + + {"matrix": [1, 1], "x": 1.5, "y": 1.5}, + {"matrix": [1, 2], "x": 2.5, "y": 1.5}, + {"matrix": [1, 3], "x": 3.5, "y": 1.5}, + {"matrix": [1, 4], "x": 4.5, "y": 1.5}, + {"matrix": [1, 5], "x": 5.5, "y": 1.5}, + {"matrix": [1, 6], "x": 6.5, "y": 1.5}, + {"matrix": [1, 7], "x": 7.5, "y": 1.5}, + {"matrix": [1, 8], "x": 8.5, "y": 1.5}, + {"matrix": [1, 9], "x": 9.5, "y": 1.5}, + {"matrix": [1, 10], "x": 10.5, "y": 1.5}, + {"matrix": [1, 11], "x": 11.5, "y": 1.5}, + {"matrix": [1, 12], "x": 12.5, "y": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1.5}, + {"matrix": [1, 14], "x": 14.5, "y": 1.5, "w": 2}, + + {"matrix": [1, 15], "x": 17, "y": 1.5}, + + {"matrix": [2, 0], "x": 0, "y": 2.5}, + + {"matrix": [2, 1], "x": 1.5, "y": 2.5, "w": 1.5}, + {"matrix": [2, 2], "x": 3, "y": 2.5}, + {"matrix": [2, 3], "x": 4, "y": 2.5}, + {"matrix": [2, 4], "x": 5, "y": 2.5}, + {"matrix": [2, 5], "x": 6, "y": 2.5}, + {"matrix": [2, 6], "x": 7, "y": 2.5}, + {"matrix": [2, 7], "x": 8, "y": 2.5}, + {"matrix": [2, 8], "x": 9, "y": 2.5}, + {"matrix": [2, 9], "x": 10, "y": 2.5}, + {"matrix": [2, 10], "x": 11, "y": 2.5}, + {"matrix": [2, 11], "x": 12, "y": 2.5}, + {"matrix": [2, 12], "x": 13, "y": 2.5}, + {"matrix": [2, 13], "x": 14, "y": 2.5}, + {"matrix": [2, 14], "x": 15, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 15], "x": 17, "y": 2.5}, + + {"matrix": [3, 0], "x": 0, "y": 3.5}, + + {"matrix": [3, 1], "x": 1.5, "y": 3.5, "w": 1.75}, + {"matrix": [3, 2], "x": 3.25, "y": 3.5}, + {"matrix": [3, 3], "x": 4.25, "y": 3.5}, + {"matrix": [3, 4], "x": 5.25, "y": 3.5}, + {"matrix": [3, 5], "x": 6.25, "y": 3.5}, + {"matrix": [3, 6], "x": 7.25, "y": 3.5}, + {"matrix": [3, 7], "x": 8.25, "y": 3.5}, + {"matrix": [3, 8], "x": 9.25, "y": 3.5}, + {"matrix": [3, 9], "x": 10.25, "y": 3.5}, + {"matrix": [3, 10], "x": 11.25, "y": 3.5}, + {"matrix": [3, 11], "x": 12.25, "y": 3.5}, + {"matrix": [3, 12], "x": 13.25, "y": 3.5}, + {"matrix": [3, 14], "x": 14.25, "y": 3.5, "w": 2.25}, + + {"matrix": [3, 15], "x": 17, "y": 3.5}, + + {"matrix": [4, 0], "x": 0, "y": 4.5}, + + {"matrix": [4, 1], "x": 1.5, "y": 4.5, "w": 2.25}, + {"matrix": [4, 2], "x": 3.75, "y": 4.5}, + {"matrix": [4, 3], "x": 4.75, "y": 4.5}, + {"matrix": [4, 4], "x": 5.75, "y": 4.5}, + {"matrix": [4, 5], "x": 6.75, "y": 4.5}, + {"matrix": [4, 6], "x": 7.75, "y": 4.5}, + {"matrix": [4, 7], "x": 8.75, "y": 4.5}, + {"matrix": [4, 8], "x": 9.75, "y": 4.5}, + {"matrix": [4, 9], "x": 10.75, "y": 4.5}, + {"matrix": [4, 10], "x": 11.75, "y": 4.5}, + {"matrix": [4, 11], "x": 12.75, "y": 4.5}, + {"matrix": [4, 13], "x": 13.75, "y": 4.5, "w": 1.75}, + + {"matrix": [4, 14], "x": 15.75, "y": 4.75}, + + {"matrix": [4, 15], "x": 17, "y": 4.5}, + + {"matrix": [5, 0], "x": 0, "y": 5.5}, + + {"matrix": [5, 1], "x": 1.5, "y": 5.5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.75, "y": 5.5, "w": 1.25}, + {"matrix": [5, 3], "x": 4, "y": 5.5, "w": 1.25}, + {"matrix": [5, 5], "x": 5.25, "y": 5.5, "w": 6.25}, + {"matrix": [5, 10], "x": 11.5, "y": 5.5, "w": 1.5}, + {"matrix": [5, 11], "x": 13, "y": 5.5, "w": 1.5}, + {"matrix": [5, 13], "x": 14.75, "y": 5.75}, {"matrix": [5, 14], "x": 15.75, "y": 5.75}, {"matrix": [5, 15], "x": 16.75, "y": 5.75} From 031ccd48879d29539ce478cf7d3d33b406ea993c Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 5 Jul 2024 09:49:05 +1000 Subject: [PATCH 176/519] `salicylic_acid3/setta21`: fix RGB Matrix LED config (#24041) --- .../setta21/rev1/keyboard.json | 30 ++++++++++++++++++- keyboards/salicylic_acid3/setta21/rev1/rev1.c | 21 ------------- 2 files changed, 29 insertions(+), 22 deletions(-) delete mode 100644 keyboards/salicylic_acid3/setta21/rev1/rev1.c diff --git a/keyboards/salicylic_acid3/setta21/rev1/keyboard.json b/keyboards/salicylic_acid3/setta21/rev1/keyboard.json index 452d0211c37..75517a7d407 100644 --- a/keyboards/salicylic_acid3/setta21/rev1/keyboard.json +++ b/keyboards/salicylic_acid3/setta21/rev1/keyboard.json @@ -41,7 +41,35 @@ "pin": "D3" }, "rgb_matrix": { - "driver": "ws2812" + "driver": "ws2812", + "layout": [ + {"matrix": [0, 4], "x": 0, "y": 13, "flags": 4}, + {"matrix": [1, 4], "x": 75, "y": 13, "flags": 4}, + {"matrix": [2, 4], "x": 149, "y": 13, "flags": 4}, + {"matrix": [3, 4], "x": 224, "y": 13, "flags": 4}, + + {"matrix": [2, 3], "x": 149, "y": 26, "flags": 4}, + {"matrix": [1, 3], "x": 75, "y": 26, "flags": 4}, + {"matrix": [0, 3], "x": 0, "y": 26, "flags": 4}, + + {"matrix": [0, 2], "x": 0, "y": 38, "flags": 4}, + {"matrix": [1, 2], "x": 75, "y": 38, "flags": 4}, + {"matrix": [2, 2], "x": 149, "y": 38, "flags": 4}, + {"matrix": [3, 2], "x": 224, "y": 32, "flags": 4}, + + {"matrix": [2, 1], "x": 149, "y": 51, "flags": 4}, + {"matrix": [1, 1], "x": 75, "y": 51, "flags": 4}, + {"matrix": [0, 1], "x": 0, "y": 51, "flags": 4}, + + {"matrix": [0, 0], "x": 38, "y": 64, "flags": 4}, + {"matrix": [2, 0], "x": 149, "y": 64, "flags": 4}, + {"matrix": [3, 0], "x": 224, "y": 58, "flags": 4}, + + {"matrix": [3, 5], "x": 224, "y": 0, "flags": 4}, + {"matrix": [2, 5], "x": 149, "y": 0, "flags": 4}, + {"matrix": [1, 5], "x": 75, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 0, "y": 0, "flags": 4} + ] }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3"], diff --git a/keyboards/salicylic_acid3/setta21/rev1/rev1.c b/keyboards/salicylic_acid3/setta21/rev1/rev1.c deleted file mode 100644 index c31fe5c8f38..00000000000 --- a/keyboards/salicylic_acid3/setta21/rev1/rev1.c +++ /dev/null @@ -1,21 +0,0 @@ -#include "quantum.h" - -#ifdef RGB_MATRIX_ENABLE - led_config_t g_led_config = { { - // Key Matrix to LED Index - { 14,13, 7, 6, 0,20 }, - { 12, 8, 5, 1,19 }, - { 15,11, 9, 4, 2,18 }, - { 16, 10, 3,17 } - }, { - // LED Index to Physical Position - { 0, 179 }, { 21, 179 }, { 43, 179 }, { 64, 179 }, { 43, 134 }, { 21, 134 }, { 0, 134 }, { 0, 90 }, { 21, 90 }, { 43, 90 }, - { 64, 112 }, { 43, 45 }, { 21, 45 }, { 0, 45 }, { 11, 0 }, { 43, 0 }, { 64, 23 }, { 64, 224 }, { 43, 224 }, { 21, 224 }, - { 0, 224 } - }, { - // LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4 -} }; -#endif From 3a711f4cfa71419a22a22139d68c647ffa3f1fe4 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Fri, 5 Jul 2024 11:22:08 +1000 Subject: [PATCH 177/519] Allow overriding `get_hardware_id()`. (#24051) --- platforms/arm_atsam/hardware_id.c | 2 +- platforms/avr/hardware_id.c | 2 +- platforms/chibios/hardware_id.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/platforms/arm_atsam/hardware_id.c b/platforms/arm_atsam/hardware_id.c index 8b3b35a4924..fc193e46d8a 100644 --- a/platforms/arm_atsam/hardware_id.c +++ b/platforms/arm_atsam/hardware_id.c @@ -3,7 +3,7 @@ #include "hardware_id.h" -hardware_id_t get_hardware_id(void) { +__attribute__((weak)) hardware_id_t get_hardware_id(void) { hardware_id_t id = {0}; return id; } diff --git a/platforms/avr/hardware_id.c b/platforms/avr/hardware_id.c index b61f0d92df8..302a800e0bb 100644 --- a/platforms/avr/hardware_id.c +++ b/platforms/avr/hardware_id.c @@ -10,7 +10,7 @@ #include #include "hardware_id.h" -hardware_id_t get_hardware_id(void) { +__attribute__((weak)) hardware_id_t get_hardware_id(void) { hardware_id_t id = {0}; for (uint8_t i = 0; i < 10; i += 1) { ((uint8_t*)&id)[i] = boot_signature_byte_get(i + 0x0E); diff --git a/platforms/chibios/hardware_id.c b/platforms/chibios/hardware_id.c index 1097db5966e..fb67a0a63eb 100644 --- a/platforms/chibios/hardware_id.c +++ b/platforms/chibios/hardware_id.c @@ -4,7 +4,7 @@ #include #include "hardware_id.h" -hardware_id_t get_hardware_id(void) { +__attribute__((weak)) hardware_id_t get_hardware_id(void) { hardware_id_t id = {0}; #if defined(RP2040) // Forward declare as including "hardware/flash.h" here causes more issues... From 8fe667a1a449a1f767d2f1e79bf6c8f7391ebb34 Mon Sep 17 00:00:00 2001 From: Coby Sher <63015754+CobyPear@users.noreply.github.com> Date: Thu, 4 Jul 2024 20:35:29 -0500 Subject: [PATCH 178/519] Add Sleepy Craft Studios Sleepy Keeb Split (#23844) --- .../sleepy_keeb_split/config.h | 6 ++ .../sleepy_keeb_split/keyboard.json | 101 ++++++++++++++++++ .../keymaps/default/keymap.c | 31 ++++++ .../sleepy_keeb_split/keymaps/via/keymap.c | 31 ++++++ .../sleepy_keeb_split/keymaps/via/rules.mk | 1 + .../sleepy_keeb_split/readme.md | 31 ++++++ 6 files changed, 201 insertions(+) create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb_split/config.h create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb_split/keyboard.json create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/default/keymap.c create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/via/keymap.c create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/via/rules.mk create mode 100644 keyboards/sleepy_craft_studios/sleepy_keeb_split/readme.md diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb_split/config.h b/keyboards/sleepy_craft_studios/sleepy_keeb_split/config.h new file mode 100644 index 00000000000..5e3eb67255b --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb_split/config.h @@ -0,0 +1,6 @@ +// Copyright 2024 Sleepy Craft Studios (@Sleepy Craft Studios) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define EE_HANDS diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb_split/keyboard.json b/keyboards/sleepy_craft_studios/sleepy_keeb_split/keyboard.json new file mode 100644 index 00000000000..c645bfbaff5 --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb_split/keyboard.json @@ -0,0 +1,101 @@ +{ + "manufacturer": "Sleepy Craft Studios", + "keyboard_name": "sleepy_keeb_split", + "maintainer": "Sleepy Craft Studios", + "development_board": "promicro", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgblight": true + }, + "matrix_pins": { + "cols": ["B5", "B6", "B2", "B3", "B1", "F7"], + "rows": ["C6", "D7", "E6", "B4"] + }, + "rgblight": { + "animations": { + "alternating": true, + "breathing": true, + "rainbow_mood": true, + "rainbow_swirl": true, + "static_gradient": true, + "twinkle": true + }, + "led_count": 18, + "split_count": [9, 9] + }, + "split": { + "enabled": true, + "soft_serial_pin": "D2", + "usb_detect": { + "enabled": true + } + }, + "url": "https://sleepycraftstudios.com", + "usb": { + "device_version": "1.0.0", + "pid": "0x0002", + "vid": "0x7373" + }, + "ws2812": { + "pin": "F4" + }, + "community_layouts": ["ortho_4x12"], + "layouts": { + "LAYOUT_ortho_4x12": { + "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": [4, 0], "x": 6, "y": 0}, + {"matrix": [4, 1], "x": 7, "y": 0}, + {"matrix": [4, 2], "x": 8, "y": 0}, + {"matrix": [4, 3], "x": 9, "y": 0}, + {"matrix": [4, 4], "x": 10, "y": 0}, + {"matrix": [4, 5], "x": 11, "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": [5, 0], "x": 6, "y": 1}, + {"matrix": [5, 1], "x": 7, "y": 1}, + {"matrix": [5, 2], "x": 8, "y": 1}, + {"matrix": [5, 3], "x": 9, "y": 1}, + {"matrix": [5, 4], "x": 10, "y": 1}, + {"matrix": [5, 5], "x": 11, "y": 1}, + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + {"matrix": [6, 0], "x": 6, "y": 2}, + {"matrix": [6, 1], "x": 7, "y": 2}, + {"matrix": [6, 2], "x": 8, "y": 2}, + {"matrix": [6, 3], "x": 9, "y": 2}, + {"matrix": [6, 4], "x": 10, "y": 2}, + {"matrix": [6, 5], "x": 11, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [7, 0], "x": 6, "y": 3}, + {"matrix": [7, 1], "x": 7, "y": 3}, + {"matrix": [7, 2], "x": 8, "y": 3}, + {"matrix": [7, 3], "x": 9, "y": 3}, + {"matrix": [7, 4], "x": 10, "y": 3}, + {"matrix": [7, 5], "x": 11, "y": 3} + ] + } + } +} diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/default/keymap.c b/keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/default/keymap.c new file mode 100644 index 00000000000..65bd5c46097 --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/default/keymap.c @@ -0,0 +1,31 @@ +// Copyright 2024 Sleepy Craft Studios +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum keeb_layers { + _BASE, + _RAISE, + _FN, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_ortho_4x12( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_GRV, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_UP, KC_DOWN, KC_LEFT, KC_RGHT + ), + [_RAISE] = LAYOUT_ortho_4x12( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, RGB_MOD, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + [_FN] = LAYOUT_ortho_4x12( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, RGB_TOG, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), +}; diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/via/keymap.c b/keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/via/keymap.c new file mode 100644 index 00000000000..65bd5c46097 --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/via/keymap.c @@ -0,0 +1,31 @@ +// Copyright 2024 Sleepy Craft Studios +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum keeb_layers { + _BASE, + _RAISE, + _FN, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_ortho_4x12( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_GRV, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_UP, KC_DOWN, KC_LEFT, KC_RGHT + ), + [_RAISE] = LAYOUT_ortho_4x12( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, RGB_MOD, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + [_FN] = LAYOUT_ortho_4x12( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, RGB_TOG, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), +}; diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/via/rules.mk b/keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb_split/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/sleepy_craft_studios/sleepy_keeb_split/readme.md b/keyboards/sleepy_craft_studios/sleepy_keeb_split/readme.md new file mode 100644 index 00000000000..15e311bd1f5 --- /dev/null +++ b/keyboards/sleepy_craft_studios/sleepy_keeb_split/readme.md @@ -0,0 +1,31 @@ +# sleepy_keeb_split + +![sleepy_keeb_split](https://i.imgur.com/f5VEA8C.jpeg) + + +The Sleepy Keeb Split is an ortholinear 4x6 split keyboard inspired by the Planck. This is a hand-wired keyboard using the pro-micro or similar microcontrollers. The keyboard is designed to be used with a 3d printed case, which is also available on the Sleepy Craft Studios website. The unique element to this design is the integrated hotswap holders present in the 3d printed plate. The plate also includes diode holders for easy soldering. + +This keyboard is available as a kit as on the sleepycraftstudios.com, and is designed to be a beginner friendly hand-wired keyboard. The keyboard is also compatible with VIA, and the keymap is designed to be easily modified. + +The STL files are made available under the CC BY-NC-SA 4.0 license. + +* Keyboard Maintainer: [Sleepy Craft Studios](https://github.com/sleepy-craft-studios) +* Hardware Supported: Pro-micro (tested), Elite-C, any other ATMega32U4 based microcontroller should work. +* Hardware Availability: Kits can be purchased at [Sleepy Craft Studios](https://sleepycraftstudios.com/shop/sleepy-keeb-split-(diy)) + +Make example for this keyboard (after setting up your build environment): + + make sleepy_craft_studios/sleepy_keeb_split:default + +Flashing example for this keyboard: + + make sleepy_craft_studios/sleepy_keeb_split: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 2 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 +* **Short GND and RST**: Short these two pins twice quickly with a pair of pliers or paperclip to enter the bootloader. From 62c1787d72088123744fb0d938990b796cd8ab01 Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 5 Jul 2024 15:10:02 +1000 Subject: [PATCH 179/519] `dc01/arrow`: fix layout name (#24025) --- keyboards/dc01/arrow/keyboard.json | 5 +++- keyboards/dc01/arrow/keymaps/default/keymap.c | 2 +- keyboards/dc01/arrow/keymaps/via/keymap.c | 25 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/keyboards/dc01/arrow/keyboard.json b/keyboards/dc01/arrow/keyboard.json index 72fa1b4e22c..f56646367fc 100644 --- a/keyboards/dc01/arrow/keyboard.json +++ b/keyboards/dc01/arrow/keyboard.json @@ -23,8 +23,11 @@ "resync": true } }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/dc01/arrow/keymaps/default/keymap.c b/keyboards/dc01/arrow/keymaps/default/keymap.c index b7f539e85c3..65f778a5a61 100644 --- a/keyboards/dc01/arrow/keymaps/default/keymap.c +++ b/keyboards/dc01/arrow/keymaps/default/keymap.c @@ -16,7 +16,7 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = LAYOUT_all( /* Base */ +[0] = LAYOUT( /* Base */ KC_INS, KC_HOME, KC_PGUP, KC_DEL, KC_END, KC_PGDN, diff --git a/keyboards/dc01/arrow/keymaps/via/keymap.c b/keyboards/dc01/arrow/keymaps/via/keymap.c index a086ffc0744..79ef05e2c52 100644 --- a/keyboards/dc01/arrow/keymaps/via/keymap.c +++ b/keyboards/dc01/arrow/keymaps/via/keymap.c @@ -16,31 +16,10 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = LAYOUT_all( /* Base */ +[0] = LAYOUT( /* Base */ KC_INS, KC_HOME, KC_PGUP, KC_DEL, KC_END, KC_PGDN, KC_UP, - KC_LEFT, KC_DOWN, KC_RIGHT), - -[1] = LAYOUT_all( /* Empty for Dynamic keymap */ - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS), - -[2] = LAYOUT_all( /* Empty for Dynamic keymap */ - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS), - -[3] = LAYOUT_all( /* Empty for Dynamic keymap */ - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS) + KC_LEFT, KC_DOWN, KC_RIGHT) }; From 15af5d7d0da08f05c5a6998f693c3d383b358451 Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 5 Jul 2024 15:25:00 +1000 Subject: [PATCH 180/519] `handwired/tkk`: fix layout name (#24056) --- keyboards/handwired/tkk/keyboard.json | 5 +++- .../handwired/tkk/keymaps/default/keymap.c | 24 +++++++++---------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/keyboards/handwired/tkk/keyboard.json b/keyboards/handwired/tkk/keyboard.json index 911c95426d5..91e495081f6 100644 --- a/keyboards/handwired/tkk/keyboard.json +++ b/keyboards/handwired/tkk/keyboard.json @@ -23,8 +23,11 @@ "pid": "0x0000", "vid": "0xFEED" }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/handwired/tkk/keymaps/default/keymap.c b/keyboards/handwired/tkk/keymaps/default/keymap.c index 14367413da9..220daab6279 100644 --- a/keyboards/handwired/tkk/keymaps/default/keymap.c +++ b/keyboards/handwired/tkk/keymaps/default/keymap.c @@ -11,40 +11,40 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * LP, LR, LM, LI, LT, RT, RI, RM, RR, RP * */ - [0] = LAYOUT_all( + [0] = LAYOUT( LT(8, KC_A), LT(7, KC_O), LT(6, KC_E), LT(5, KC_U), LT(10,KC_BSPC), LT(9, KC_SPC), LT(1, KC_H), LT(2, KC_T), LT(3, KC_N), LT(4, KC_S) ), - [1] = LAYOUT_all( + [1] = LAYOUT( KC_Q, KC_K, KC_J, KC_I, KC_ESC, KC_TAB, KC_NO, KC_RGUI, KC_RGUI, KC_RGUI ), - [2] = LAYOUT_all( + [2] = LAYOUT( KC_Z, KC_Y, KC_X, KC_P, KC_NO, KC_NO, KC_RCTL, KC_NO, KC_RCTL, KC_RCTL ), - [3] = LAYOUT_all( + [3] = LAYOUT( KC_QUOT, KC_COMM, KC_DOT, KC_F, KC_NO, KC_NO, KC_RALT, KC_RALT, KC_NO, KC_RALT ), - [4] = LAYOUT_all( + [4] = LAYOUT( KC_SCLN, KC_LPRN, KC_RPRN, KC_GRV, KC_NO, MO(11), KC_RSFT, KC_RSFT, KC_RSFT, KC_NO ), - [5] = LAYOUT_all( + [5] = LAYOUT( KC_LGUI, KC_LGUI, KC_LGUI, KC_NO, LGUI(KC_GRV), LGUI(KC_TAB), KC_D, KC_G, KC_C, KC_ENT ), - [6] = LAYOUT_all( + [6] = LAYOUT( KC_LCTL, KC_LCTL, KC_NO, KC_LCTL, KC_NO, KC_NO, KC_M, KC_B, KC_V, KC_W ), - [7] = LAYOUT_all( + [7] = LAYOUT( KC_LALT, KC_NO, KC_LALT, KC_LALT, KC_NO, KC_NO, KC_SLSH, KC_L, KC_R, KC_BSLS ), - [8] = LAYOUT_all( + [8] = LAYOUT( KC_NO, KC_LSFT, KC_LSFT, KC_LSFT, MO(11), KC_NO, KC_MINS, KC_LBRC, KC_RBRC, KC_EQL ), - [9] = LAYOUT_all( + [9] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_NO, KC_LEFT, KC_RGHT, KC_UP, KC_DOWN ), - [10] = LAYOUT_all( + [10] = LAYOUT( KC_PGDN, KC_PGUP, KC_HOME, KC_END, KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0 ), - [11] = LAYOUT_all( + [11] = LAYOUT( KC_WH_D, KC_WH_U, KC_WH_L, KC_WH_R, KC_BTN2, KC_BTN1, KC_MS_L, KC_MS_R, KC_MS_U, KC_MS_D ) }; From 5e2368984ed3c84f3d88c16b7b9783d4d87173fa Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 5 Jul 2024 16:35:15 +1000 Subject: [PATCH 181/519] `ash_xiix`: add additional layouts (#24057) --- keyboards/ash_xiix/keyboard.json | 492 +++++++++++++++++++++++++++ keyboards/ash_xiix/matrix_diagram.md | 26 ++ 2 files changed, 518 insertions(+) create mode 100644 keyboards/ash_xiix/matrix_diagram.md diff --git a/keyboards/ash_xiix/keyboard.json b/keyboards/ash_xiix/keyboard.json index 5cb21b488e9..e743b80a8f8 100644 --- a/keyboards/ash_xiix/keyboard.json +++ b/keyboards/ash_xiix/keyboard.json @@ -156,6 +156,498 @@ {"matrix": [11, 8], "x": 14.25, "y": 6.25}, {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + {"matrix": [11, 5], "x": 16.5, "y": 6}, + {"matrix": [11, 6], "x": 17.5, "y": 6} + ] + }, + "LAYOUT_ansi": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.25, "y": 0}, + {"matrix": [0, 2], "x": 2.25, "y": 0}, + {"matrix": [0, 3], "x": 3.25, "y": 0}, + {"matrix": [6, 0], "x": 4.25, "y": 0}, + + {"matrix": [6, 1], "x": 5.5, "y": 0}, + {"matrix": [6, 2], "x": 6.5, "y": 0}, + {"matrix": [6, 3], "x": 7.5, "y": 0}, + {"matrix": [0, 4], "x": 8.5, "y": 0}, + + {"matrix": [0, 5], "x": 9.75, "y": 0}, + {"matrix": [0, 6], "x": 10.75, "y": 0}, + {"matrix": [0, 7], "x": 11.75, "y": 0}, + {"matrix": [0, 8], "x": 12.75, "y": 0}, + + {"matrix": [5, 4], "x": 15.5, "y": 0}, + {"matrix": [5, 5], "x": 16.5, "y": 0}, + {"matrix": [5, 6], "x": 17.5, "y": 0}, + {"matrix": [5, 7], "x": 18.5, "y": 0}, + + {"matrix": [6, 4], "x": 15.5, "y": 1}, + {"matrix": [6, 5], "x": 16.5, "y": 1}, + {"matrix": [6, 6], "x": 17.5, "y": 1}, + {"matrix": [6, 7], "x": 18.5, "y": 1}, + + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [1, 3], "x": 3, "y": 2}, + {"matrix": [7, 0], "x": 4, "y": 2}, + {"matrix": [7, 1], "x": 5, "y": 2}, + {"matrix": [7, 2], "x": 6, "y": 2}, + {"matrix": [7, 3], "x": 7, "y": 2}, + {"matrix": [1, 4], "x": 8, "y": 2}, + {"matrix": [1, 5], "x": 9, "y": 2}, + {"matrix": [1, 6], "x": 10, "y": 2}, + {"matrix": [1, 7], "x": 11, "y": 2}, + {"matrix": [1, 8], "x": 12, "y": 2}, + {"matrix": [1, 9], "x": 13, "y": 2, "w": 2}, + + {"matrix": [7, 4], "x": 15.5, "y": 2}, + {"matrix": [7, 5], "x": 16.5, "y": 2}, + {"matrix": [7, 6], "x": 17.5, "y": 2}, + {"matrix": [7, 7], "x": 18.5, "y": 2}, + + {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 3}, + {"matrix": [2, 2], "x": 2.5, "y": 3}, + {"matrix": [2, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 0], "x": 4.5, "y": 3}, + {"matrix": [8, 1], "x": 5.5, "y": 3}, + {"matrix": [8, 2], "x": 6.5, "y": 3}, + {"matrix": [8, 3], "x": 7.5, "y": 3}, + {"matrix": [2, 4], "x": 8.5, "y": 3}, + {"matrix": [2, 5], "x": 9.5, "y": 3}, + {"matrix": [2, 6], "x": 10.5, "y": 3}, + {"matrix": [2, 7], "x": 11.5, "y": 3}, + {"matrix": [2, 8], "x": 12.5, "y": 3}, + {"matrix": [2, 9], "x": 13.5, "y": 3, "w": 1.5}, + + {"matrix": [8, 4], "x": 15.5, "y": 3}, + {"matrix": [8, 5], "x": 16.5, "y": 3}, + {"matrix": [8, 6], "x": 17.5, "y": 3}, + {"matrix": [8, 7], "x": 18.5, "y": 3}, + + {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 4}, + {"matrix": [3, 2], "x": 2.75, "y": 4}, + {"matrix": [3, 3], "x": 3.75, "y": 4}, + {"matrix": [9, 0], "x": 4.75, "y": 4}, + {"matrix": [9, 1], "x": 5.75, "y": 4}, + {"matrix": [9, 2], "x": 6.75, "y": 4}, + {"matrix": [9, 3], "x": 7.75, "y": 4}, + {"matrix": [3, 4], "x": 8.75, "y": 4}, + {"matrix": [3, 5], "x": 9.75, "y": 4}, + {"matrix": [3, 6], "x": 10.75, "y": 4}, + {"matrix": [3, 7], "x": 11.75, "y": 4}, + {"matrix": [3, 8], "x": 12.75, "y": 4, "w": 2.25}, + + {"matrix": [9, 4], "x": 15.5, "y": 4}, + {"matrix": [9, 5], "x": 16.5, "y": 4}, + {"matrix": [9, 6], "x": 17.5, "y": 4}, + {"matrix": [9, 7], "x": 18.5, "y": 4}, + + {"matrix": [4, 0], "x": 0, "y": 5, "w": 2.25}, + {"matrix": [4, 2], "x": 2.25, "y": 5}, + {"matrix": [4, 3], "x": 3.25, "y": 5}, + {"matrix": [10, 0], "x": 4.25, "y": 5}, + {"matrix": [10, 1], "x": 5.25, "y": 5}, + {"matrix": [10, 2], "x": 6.25, "y": 5}, + {"matrix": [10, 3], "x": 7.25, "y": 5}, + {"matrix": [4, 4], "x": 8.25, "y": 5}, + {"matrix": [4, 5], "x": 9.25, "y": 5}, + {"matrix": [4, 6], "x": 10.25, "y": 5}, + {"matrix": [4, 7], "x": 11.25, "y": 5}, + {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75}, + + {"matrix": [10, 9], "x": 14.25, "y": 5.25}, + + {"matrix": [10, 4], "x": 15.5, "y": 5}, + {"matrix": [10, 5], "x": 16.5, "y": 5}, + {"matrix": [10, 6], "x": 17.5, "y": 5}, + {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2}, + + {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.25}, + {"matrix": [5, 1], "x": 1.25, "y": 6, "w": 1.25}, + {"matrix": [5, 2], "x": 2.5, "y": 6, "w": 1.25}, + {"matrix": [5, 3], "x": 3.75, "y": 6, "w": 6.25}, + {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5}, + {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5}, + + {"matrix": [10, 8], "x": 13.25, "y": 6.25}, + {"matrix": [11, 8], "x": 14.25, "y": 6.25}, + {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + + {"matrix": [11, 5], "x": 16.5, "y": 6}, + {"matrix": [11, 6], "x": 17.5, "y": 6} + ] + }, + "LAYOUT_ansi_wkl": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.25, "y": 0}, + {"matrix": [0, 2], "x": 2.25, "y": 0}, + {"matrix": [0, 3], "x": 3.25, "y": 0}, + {"matrix": [6, 0], "x": 4.25, "y": 0}, + + {"matrix": [6, 1], "x": 5.5, "y": 0}, + {"matrix": [6, 2], "x": 6.5, "y": 0}, + {"matrix": [6, 3], "x": 7.5, "y": 0}, + {"matrix": [0, 4], "x": 8.5, "y": 0}, + + {"matrix": [0, 5], "x": 9.75, "y": 0}, + {"matrix": [0, 6], "x": 10.75, "y": 0}, + {"matrix": [0, 7], "x": 11.75, "y": 0}, + {"matrix": [0, 8], "x": 12.75, "y": 0}, + + {"matrix": [5, 4], "x": 15.5, "y": 0}, + {"matrix": [5, 5], "x": 16.5, "y": 0}, + {"matrix": [5, 6], "x": 17.5, "y": 0}, + {"matrix": [5, 7], "x": 18.5, "y": 0}, + + {"matrix": [6, 4], "x": 15.5, "y": 1}, + {"matrix": [6, 5], "x": 16.5, "y": 1}, + {"matrix": [6, 6], "x": 17.5, "y": 1}, + {"matrix": [6, 7], "x": 18.5, "y": 1}, + + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [1, 3], "x": 3, "y": 2}, + {"matrix": [7, 0], "x": 4, "y": 2}, + {"matrix": [7, 1], "x": 5, "y": 2}, + {"matrix": [7, 2], "x": 6, "y": 2}, + {"matrix": [7, 3], "x": 7, "y": 2}, + {"matrix": [1, 4], "x": 8, "y": 2}, + {"matrix": [1, 5], "x": 9, "y": 2}, + {"matrix": [1, 6], "x": 10, "y": 2}, + {"matrix": [1, 7], "x": 11, "y": 2}, + {"matrix": [1, 8], "x": 12, "y": 2}, + {"matrix": [1, 9], "x": 13, "y": 2, "w": 2}, + + {"matrix": [7, 4], "x": 15.5, "y": 2}, + {"matrix": [7, 5], "x": 16.5, "y": 2}, + {"matrix": [7, 6], "x": 17.5, "y": 2}, + {"matrix": [7, 7], "x": 18.5, "y": 2}, + + {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 3}, + {"matrix": [2, 2], "x": 2.5, "y": 3}, + {"matrix": [2, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 0], "x": 4.5, "y": 3}, + {"matrix": [8, 1], "x": 5.5, "y": 3}, + {"matrix": [8, 2], "x": 6.5, "y": 3}, + {"matrix": [8, 3], "x": 7.5, "y": 3}, + {"matrix": [2, 4], "x": 8.5, "y": 3}, + {"matrix": [2, 5], "x": 9.5, "y": 3}, + {"matrix": [2, 6], "x": 10.5, "y": 3}, + {"matrix": [2, 7], "x": 11.5, "y": 3}, + {"matrix": [2, 8], "x": 12.5, "y": 3}, + {"matrix": [2, 9], "x": 13.5, "y": 3, "w": 1.5}, + + {"matrix": [8, 4], "x": 15.5, "y": 3}, + {"matrix": [8, 5], "x": 16.5, "y": 3}, + {"matrix": [8, 6], "x": 17.5, "y": 3}, + {"matrix": [8, 7], "x": 18.5, "y": 3}, + + {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 4}, + {"matrix": [3, 2], "x": 2.75, "y": 4}, + {"matrix": [3, 3], "x": 3.75, "y": 4}, + {"matrix": [9, 0], "x": 4.75, "y": 4}, + {"matrix": [9, 1], "x": 5.75, "y": 4}, + {"matrix": [9, 2], "x": 6.75, "y": 4}, + {"matrix": [9, 3], "x": 7.75, "y": 4}, + {"matrix": [3, 4], "x": 8.75, "y": 4}, + {"matrix": [3, 5], "x": 9.75, "y": 4}, + {"matrix": [3, 6], "x": 10.75, "y": 4}, + {"matrix": [3, 7], "x": 11.75, "y": 4}, + {"matrix": [3, 8], "x": 12.75, "y": 4, "w": 2.25}, + + {"matrix": [9, 4], "x": 15.5, "y": 4}, + {"matrix": [9, 5], "x": 16.5, "y": 4}, + {"matrix": [9, 6], "x": 17.5, "y": 4}, + {"matrix": [9, 7], "x": 18.5, "y": 4}, + + {"matrix": [4, 0], "x": 0, "y": 5, "w": 2.25}, + {"matrix": [4, 2], "x": 2.25, "y": 5}, + {"matrix": [4, 3], "x": 3.25, "y": 5}, + {"matrix": [10, 0], "x": 4.25, "y": 5}, + {"matrix": [10, 1], "x": 5.25, "y": 5}, + {"matrix": [10, 2], "x": 6.25, "y": 5}, + {"matrix": [10, 3], "x": 7.25, "y": 5}, + {"matrix": [4, 4], "x": 8.25, "y": 5}, + {"matrix": [4, 5], "x": 9.25, "y": 5}, + {"matrix": [4, 6], "x": 10.25, "y": 5}, + {"matrix": [4, 7], "x": 11.25, "y": 5}, + {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75}, + + {"matrix": [10, 9], "x": 14.25, "y": 5.25}, + + {"matrix": [10, 4], "x": 15.5, "y": 5}, + {"matrix": [10, 5], "x": 16.5, "y": 5}, + {"matrix": [10, 6], "x": 17.5, "y": 5}, + {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2}, + + {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.5}, + {"matrix": [5, 1], "x": 1.5, "y": 6, "w": 1.5}, + {"matrix": [5, 3], "x": 3, "y": 6, "w": 7}, + {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5}, + {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5}, + + {"matrix": [10, 8], "x": 13.25, "y": 6.25}, + {"matrix": [11, 8], "x": 14.25, "y": 6.25}, + {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + + {"matrix": [11, 5], "x": 16.5, "y": 6}, + {"matrix": [11, 6], "x": 17.5, "y": 6} + ] + }, + "LAYOUT_iso": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.25, "y": 0}, + {"matrix": [0, 2], "x": 2.25, "y": 0}, + {"matrix": [0, 3], "x": 3.25, "y": 0}, + {"matrix": [6, 0], "x": 4.25, "y": 0}, + + {"matrix": [6, 1], "x": 5.5, "y": 0}, + {"matrix": [6, 2], "x": 6.5, "y": 0}, + {"matrix": [6, 3], "x": 7.5, "y": 0}, + {"matrix": [0, 4], "x": 8.5, "y": 0}, + + {"matrix": [0, 5], "x": 9.75, "y": 0}, + {"matrix": [0, 6], "x": 10.75, "y": 0}, + {"matrix": [0, 7], "x": 11.75, "y": 0}, + {"matrix": [0, 8], "x": 12.75, "y": 0}, + + {"matrix": [5, 4], "x": 15.5, "y": 0}, + {"matrix": [5, 5], "x": 16.5, "y": 0}, + {"matrix": [5, 6], "x": 17.5, "y": 0}, + {"matrix": [5, 7], "x": 18.5, "y": 0}, + + {"matrix": [6, 4], "x": 15.5, "y": 1}, + {"matrix": [6, 5], "x": 16.5, "y": 1}, + {"matrix": [6, 6], "x": 17.5, "y": 1}, + {"matrix": [6, 7], "x": 18.5, "y": 1}, + + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [1, 3], "x": 3, "y": 2}, + {"matrix": [7, 0], "x": 4, "y": 2}, + {"matrix": [7, 1], "x": 5, "y": 2}, + {"matrix": [7, 2], "x": 6, "y": 2}, + {"matrix": [7, 3], "x": 7, "y": 2}, + {"matrix": [1, 4], "x": 8, "y": 2}, + {"matrix": [1, 5], "x": 9, "y": 2}, + {"matrix": [1, 6], "x": 10, "y": 2}, + {"matrix": [1, 7], "x": 11, "y": 2}, + {"matrix": [1, 8], "x": 12, "y": 2}, + {"matrix": [1, 9], "x": 13, "y": 2, "w": 2}, + + {"matrix": [7, 4], "x": 15.5, "y": 2}, + {"matrix": [7, 5], "x": 16.5, "y": 2}, + {"matrix": [7, 6], "x": 17.5, "y": 2}, + {"matrix": [7, 7], "x": 18.5, "y": 2}, + + {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 3}, + {"matrix": [2, 2], "x": 2.5, "y": 3}, + {"matrix": [2, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 0], "x": 4.5, "y": 3}, + {"matrix": [8, 1], "x": 5.5, "y": 3}, + {"matrix": [8, 2], "x": 6.5, "y": 3}, + {"matrix": [8, 3], "x": 7.5, "y": 3}, + {"matrix": [2, 4], "x": 8.5, "y": 3}, + {"matrix": [2, 5], "x": 9.5, "y": 3}, + {"matrix": [2, 6], "x": 10.5, "y": 3}, + {"matrix": [2, 7], "x": 11.5, "y": 3}, + {"matrix": [2, 8], "x": 12.5, "y": 3}, + + {"matrix": [8, 4], "x": 15.5, "y": 3}, + {"matrix": [8, 5], "x": 16.5, "y": 3}, + {"matrix": [8, 6], "x": 17.5, "y": 3}, + {"matrix": [8, 7], "x": 18.5, "y": 3}, + + {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 4}, + {"matrix": [3, 2], "x": 2.75, "y": 4}, + {"matrix": [3, 3], "x": 3.75, "y": 4}, + {"matrix": [9, 0], "x": 4.75, "y": 4}, + {"matrix": [9, 1], "x": 5.75, "y": 4}, + {"matrix": [9, 2], "x": 6.75, "y": 4}, + {"matrix": [9, 3], "x": 7.75, "y": 4}, + {"matrix": [3, 4], "x": 8.75, "y": 4}, + {"matrix": [3, 5], "x": 9.75, "y": 4}, + {"matrix": [3, 6], "x": 10.75, "y": 4}, + {"matrix": [3, 7], "x": 11.75, "y": 4}, + {"matrix": [2, 9], "x": 12.75, "y": 4}, + {"matrix": [3, 8], "x": 13.75, "y": 3, "w": 1.25, "h": 2}, + + {"matrix": [9, 4], "x": 15.5, "y": 4}, + {"matrix": [9, 5], "x": 16.5, "y": 4}, + {"matrix": [9, 6], "x": 17.5, "y": 4}, + {"matrix": [9, 7], "x": 18.5, "y": 4}, + + {"matrix": [4, 0], "x": 0, "y": 5, "w": 1.25}, + {"matrix": [4, 1], "x": 1.25, "y": 5}, + {"matrix": [4, 2], "x": 2.25, "y": 5}, + {"matrix": [4, 3], "x": 3.25, "y": 5}, + {"matrix": [10, 0], "x": 4.25, "y": 5}, + {"matrix": [10, 1], "x": 5.25, "y": 5}, + {"matrix": [10, 2], "x": 6.25, "y": 5}, + {"matrix": [10, 3], "x": 7.25, "y": 5}, + {"matrix": [4, 4], "x": 8.25, "y": 5}, + {"matrix": [4, 5], "x": 9.25, "y": 5}, + {"matrix": [4, 6], "x": 10.25, "y": 5}, + {"matrix": [4, 7], "x": 11.25, "y": 5}, + {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75}, + + {"matrix": [10, 9], "x": 14.25, "y": 5.25}, + + {"matrix": [10, 4], "x": 15.5, "y": 5}, + {"matrix": [10, 5], "x": 16.5, "y": 5}, + {"matrix": [10, 6], "x": 17.5, "y": 5}, + {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2}, + + {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.25}, + {"matrix": [5, 1], "x": 1.25, "y": 6, "w": 1.25}, + {"matrix": [5, 2], "x": 2.5, "y": 6, "w": 1.25}, + {"matrix": [5, 3], "x": 3.75, "y": 6, "w": 6.25}, + {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5}, + {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5}, + + {"matrix": [10, 8], "x": 13.25, "y": 6.25}, + {"matrix": [11, 8], "x": 14.25, "y": 6.25}, + {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + + {"matrix": [11, 5], "x": 16.5, "y": 6}, + {"matrix": [11, 6], "x": 17.5, "y": 6} + ] + }, + "LAYOUT_iso_wkl": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.25, "y": 0}, + {"matrix": [0, 2], "x": 2.25, "y": 0}, + {"matrix": [0, 3], "x": 3.25, "y": 0}, + {"matrix": [6, 0], "x": 4.25, "y": 0}, + + {"matrix": [6, 1], "x": 5.5, "y": 0}, + {"matrix": [6, 2], "x": 6.5, "y": 0}, + {"matrix": [6, 3], "x": 7.5, "y": 0}, + {"matrix": [0, 4], "x": 8.5, "y": 0}, + + {"matrix": [0, 5], "x": 9.75, "y": 0}, + {"matrix": [0, 6], "x": 10.75, "y": 0}, + {"matrix": [0, 7], "x": 11.75, "y": 0}, + {"matrix": [0, 8], "x": 12.75, "y": 0}, + + {"matrix": [5, 4], "x": 15.5, "y": 0}, + {"matrix": [5, 5], "x": 16.5, "y": 0}, + {"matrix": [5, 6], "x": 17.5, "y": 0}, + {"matrix": [5, 7], "x": 18.5, "y": 0}, + + {"matrix": [6, 4], "x": 15.5, "y": 1}, + {"matrix": [6, 5], "x": 16.5, "y": 1}, + {"matrix": [6, 6], "x": 17.5, "y": 1}, + {"matrix": [6, 7], "x": 18.5, "y": 1}, + + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [1, 3], "x": 3, "y": 2}, + {"matrix": [7, 0], "x": 4, "y": 2}, + {"matrix": [7, 1], "x": 5, "y": 2}, + {"matrix": [7, 2], "x": 6, "y": 2}, + {"matrix": [7, 3], "x": 7, "y": 2}, + {"matrix": [1, 4], "x": 8, "y": 2}, + {"matrix": [1, 5], "x": 9, "y": 2}, + {"matrix": [1, 6], "x": 10, "y": 2}, + {"matrix": [1, 7], "x": 11, "y": 2}, + {"matrix": [1, 8], "x": 12, "y": 2}, + {"matrix": [1, 9], "x": 13, "y": 2, "w": 2}, + + {"matrix": [7, 4], "x": 15.5, "y": 2}, + {"matrix": [7, 5], "x": 16.5, "y": 2}, + {"matrix": [7, 6], "x": 17.5, "y": 2}, + {"matrix": [7, 7], "x": 18.5, "y": 2}, + + {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 3}, + {"matrix": [2, 2], "x": 2.5, "y": 3}, + {"matrix": [2, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 0], "x": 4.5, "y": 3}, + {"matrix": [8, 1], "x": 5.5, "y": 3}, + {"matrix": [8, 2], "x": 6.5, "y": 3}, + {"matrix": [8, 3], "x": 7.5, "y": 3}, + {"matrix": [2, 4], "x": 8.5, "y": 3}, + {"matrix": [2, 5], "x": 9.5, "y": 3}, + {"matrix": [2, 6], "x": 10.5, "y": 3}, + {"matrix": [2, 7], "x": 11.5, "y": 3}, + {"matrix": [2, 8], "x": 12.5, "y": 3}, + + {"matrix": [8, 4], "x": 15.5, "y": 3}, + {"matrix": [8, 5], "x": 16.5, "y": 3}, + {"matrix": [8, 6], "x": 17.5, "y": 3}, + {"matrix": [8, 7], "x": 18.5, "y": 3}, + + {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 4}, + {"matrix": [3, 2], "x": 2.75, "y": 4}, + {"matrix": [3, 3], "x": 3.75, "y": 4}, + {"matrix": [9, 0], "x": 4.75, "y": 4}, + {"matrix": [9, 1], "x": 5.75, "y": 4}, + {"matrix": [9, 2], "x": 6.75, "y": 4}, + {"matrix": [9, 3], "x": 7.75, "y": 4}, + {"matrix": [3, 4], "x": 8.75, "y": 4}, + {"matrix": [3, 5], "x": 9.75, "y": 4}, + {"matrix": [3, 6], "x": 10.75, "y": 4}, + {"matrix": [3, 7], "x": 11.75, "y": 4}, + {"matrix": [2, 9], "x": 12.75, "y": 4}, + {"matrix": [3, 8], "x": 13.75, "y": 3, "w": 1.25, "h": 2}, + + {"matrix": [9, 4], "x": 15.5, "y": 4}, + {"matrix": [9, 5], "x": 16.5, "y": 4}, + {"matrix": [9, 6], "x": 17.5, "y": 4}, + {"matrix": [9, 7], "x": 18.5, "y": 4}, + + {"matrix": [4, 0], "x": 0, "y": 5, "w": 1.25}, + {"matrix": [4, 1], "x": 1.25, "y": 5}, + {"matrix": [4, 2], "x": 2.25, "y": 5}, + {"matrix": [4, 3], "x": 3.25, "y": 5}, + {"matrix": [10, 0], "x": 4.25, "y": 5}, + {"matrix": [10, 1], "x": 5.25, "y": 5}, + {"matrix": [10, 2], "x": 6.25, "y": 5}, + {"matrix": [10, 3], "x": 7.25, "y": 5}, + {"matrix": [4, 4], "x": 8.25, "y": 5}, + {"matrix": [4, 5], "x": 9.25, "y": 5}, + {"matrix": [4, 6], "x": 10.25, "y": 5}, + {"matrix": [4, 7], "x": 11.25, "y": 5}, + {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75}, + + {"matrix": [10, 9], "x": 14.25, "y": 5.25}, + + {"matrix": [10, 4], "x": 15.5, "y": 5}, + {"matrix": [10, 5], "x": 16.5, "y": 5}, + {"matrix": [10, 6], "x": 17.5, "y": 5}, + {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2}, + + {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.5}, + {"matrix": [5, 1], "x": 1.5, "y": 6, "w": 1.5}, + {"matrix": [5, 3], "x": 3, "y": 6, "w": 7}, + {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5}, + {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5}, + + {"matrix": [10, 8], "x": 13.25, "y": 6.25}, + {"matrix": [11, 8], "x": 14.25, "y": 6.25}, + {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + {"matrix": [11, 5], "x": 16.5, "y": 6}, {"matrix": [11, 6], "x": 17.5, "y": 6} ] diff --git a/keyboards/ash_xiix/matrix_diagram.md b/keyboards/ash_xiix/matrix_diagram.md new file mode 100644 index 00000000000..408857c8b43 --- /dev/null +++ b/keyboards/ash_xiix/matrix_diagram.md @@ -0,0 +1,26 @@ +# Matrix Diagram for ASH-XIIX + +``` +┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ +│00 ││01 │02 │03 │60 ││61 │62 │63 │04 ││05 │06 │07 │08 │ │54 │55 │56 │57 │ +└───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘ ├───┼───┼───┼───┤ + │64 │65 │66 │67 │ +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ├───┼───┼───┼───┤ +│10 │11 │12 │13 │70 │71 │72 │73 │14 │15 │16 │17 │18 │19 │ │74 │75 │76 │77 │ +├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┼───┤ ┌─────┐ +│20 │21 │22 │23 │80 │81 │82 │83 │24 │25 │26 │27 │28 │29 │ │84 │85 │86 │87 │ │38 │ +├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ├───┼───┼───┼───┤ ┌──┴┐ │ ISO Enter +│30 │31 │32 │33 │90 │91 │92 │93 │34 │35 │36 │37 │38 │ │94 │95 │96 │97 │ │29 │ │ +├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘ ├───┼───┼───┼───┤ └───┴────┘ +│40 │41 │42 │43 │A0 │A1 │A2 │A3 │44 │45 │46 │47 │48 │┌───┐│A4 │A5 │A6 │A7 │ +├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┘│A9 │└───┼───┼───┤ │ +│50 │51 │52 │53 │B4 │B7 │┌───┼───┼───┐│B5 │B6 │ │ +└────┴────┴────┴────────────────────────┴─────┴─────┘│A8 │B8 │B9 │└───┴───┴───┘ + └───┴───┴───┘ +┌────────┐ +│40 │ 2.25u LShift +└────────┘ +┌─────┬─────┬───────────────────────────┬─────┬─────┐ +│50 │51 │53 │B4 │B7 │ WKL +└─────┴─────┴───────────────────────────┴─────┴─────┘ +``` From 8e64ff574ab444f3dd1b4b7b71ec274ced3e99df Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 5 Jul 2024 16:35:35 +1000 Subject: [PATCH 182/519] `kakunpc/angel64`: add additional layouts (#24058) --- keyboards/kakunpc/angel64/rev1/keyboard.json | 138 ++++++++++++++++++ .../kakunpc/angel64/rev1/matrix_diagram.md | 22 +++ 2 files changed, 160 insertions(+) create mode 100644 keyboards/kakunpc/angel64/rev1/matrix_diagram.md diff --git a/keyboards/kakunpc/angel64/rev1/keyboard.json b/keyboards/kakunpc/angel64/rev1/keyboard.json index 9ed4904c686..ca7f7dcb285 100644 --- a/keyboards/kakunpc/angel64/rev1/keyboard.json +++ b/keyboards/kakunpc/angel64/rev1/keyboard.json @@ -117,6 +117,144 @@ {"matrix": [2, 5], "x": 12.25, "y": 4, "w": 1.5}, {"matrix": [3, 5], "x": 13.75, "y": 4, "w": 1.25} ] + }, + "LAYOUT_5u5_space_left": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [2, 0], "x": 2, "y": 0}, + {"matrix": [3, 0], "x": 3, "y": 0}, + {"matrix": [4, 0], "x": 4, "y": 0}, + {"matrix": [5, 0], "x": 5, "y": 0}, + {"matrix": [6, 0], "x": 6, "y": 0}, + {"matrix": [7, 0], "x": 7, "y": 0}, + {"matrix": [8, 0], "x": 8, "y": 0}, + {"matrix": [9, 0], "x": 9, "y": 0}, + {"matrix": [10, 0], "x": 10, "y": 0}, + {"matrix": [11, 0], "x": 11, "y": 0}, + {"matrix": [0, 1], "x": 12, "y": 0}, + {"matrix": [1, 1], "x": 13, "y": 0, "w": 2}, + + {"matrix": [2, 1], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 1], "x": 1.5, "y": 1}, + {"matrix": [4, 1], "x": 2.5, "y": 1}, + {"matrix": [5, 1], "x": 3.5, "y": 1}, + {"matrix": [6, 1], "x": 4.5, "y": 1}, + {"matrix": [7, 1], "x": 5.5, "y": 1}, + {"matrix": [8, 1], "x": 6.5, "y": 1}, + {"matrix": [9, 1], "x": 7.5, "y": 1}, + {"matrix": [10, 1], "x": 8.5, "y": 1}, + {"matrix": [11, 1], "x": 9.5, "y": 1}, + {"matrix": [0, 2], "x": 10.5, "y": 1}, + {"matrix": [1, 2], "x": 11.5, "y": 1}, + {"matrix": [2, 2], "x": 12.5, "y": 1}, + {"matrix": [3, 2], "x": 13.5, "y": 1, "w": 1.5}, + + {"matrix": [4, 2], "x": 0, "y": 2, "w": 2}, + {"matrix": [5, 2], "x": 2, "y": 2}, + {"matrix": [6, 2], "x": 3, "y": 2}, + {"matrix": [7, 2], "x": 4, "y": 2}, + {"matrix": [8, 2], "x": 5, "y": 2}, + {"matrix": [9, 2], "x": 6, "y": 2}, + {"matrix": [10, 2], "x": 7, "y": 2}, + {"matrix": [11, 2], "x": 8, "y": 2}, + {"matrix": [0, 3], "x": 9, "y": 2}, + {"matrix": [1, 3], "x": 10, "y": 2}, + {"matrix": [2, 3], "x": 11, "y": 2}, + {"matrix": [3, 3], "x": 12, "y": 2}, + {"matrix": [4, 3], "x": 13, "y": 2, "w": 2}, + + {"matrix": [5, 3], "x": 0, "y": 3, "w": 2.5}, + {"matrix": [6, 3], "x": 2.5, "y": 3}, + {"matrix": [7, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 3], "x": 4.5, "y": 3}, + {"matrix": [9, 3], "x": 5.5, "y": 3}, + {"matrix": [10, 3], "x": 6.5, "y": 3}, + {"matrix": [11, 3], "x": 7.5, "y": 3}, + {"matrix": [0, 4], "x": 8.5, "y": 3}, + {"matrix": [1, 4], "x": 9.5, "y": 3}, + {"matrix": [2, 4], "x": 10.5, "y": 3}, + {"matrix": [3, 4], "x": 11.5, "y": 3}, + {"matrix": [4, 4], "x": 12.5, "y": 3, "w": 2.5}, + + {"matrix": [5, 4], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [6, 4], "x": 1.25, "y": 4, "w": 1.5}, + {"matrix": [7, 4], "x": 2.75, "y": 4, "w": 1.5}, + {"matrix": [10, 4], "x": 4.25, "y": 4, "w": 5.5}, + {"matrix": [0, 5], "x": 9.75, "y": 4}, + {"matrix": [1, 5], "x": 10.75, "y": 4, "w": 1.5}, + {"matrix": [2, 5], "x": 12.25, "y": 4, "w": 1.5}, + {"matrix": [3, 5], "x": 13.75, "y": 4, "w": 1.25} + ] + }, + "LAYOUT_5u5_space_right": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [1, 0], "x": 1, "y": 0}, + {"matrix": [2, 0], "x": 2, "y": 0}, + {"matrix": [3, 0], "x": 3, "y": 0}, + {"matrix": [4, 0], "x": 4, "y": 0}, + {"matrix": [5, 0], "x": 5, "y": 0}, + {"matrix": [6, 0], "x": 6, "y": 0}, + {"matrix": [7, 0], "x": 7, "y": 0}, + {"matrix": [8, 0], "x": 8, "y": 0}, + {"matrix": [9, 0], "x": 9, "y": 0}, + {"matrix": [10, 0], "x": 10, "y": 0}, + {"matrix": [11, 0], "x": 11, "y": 0}, + {"matrix": [0, 1], "x": 12, "y": 0}, + {"matrix": [1, 1], "x": 13, "y": 0, "w": 2}, + + {"matrix": [2, 1], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [3, 1], "x": 1.5, "y": 1}, + {"matrix": [4, 1], "x": 2.5, "y": 1}, + {"matrix": [5, 1], "x": 3.5, "y": 1}, + {"matrix": [6, 1], "x": 4.5, "y": 1}, + {"matrix": [7, 1], "x": 5.5, "y": 1}, + {"matrix": [8, 1], "x": 6.5, "y": 1}, + {"matrix": [9, 1], "x": 7.5, "y": 1}, + {"matrix": [10, 1], "x": 8.5, "y": 1}, + {"matrix": [11, 1], "x": 9.5, "y": 1}, + {"matrix": [0, 2], "x": 10.5, "y": 1}, + {"matrix": [1, 2], "x": 11.5, "y": 1}, + {"matrix": [2, 2], "x": 12.5, "y": 1}, + {"matrix": [3, 2], "x": 13.5, "y": 1, "w": 1.5}, + + {"matrix": [4, 2], "x": 0, "y": 2, "w": 2}, + {"matrix": [5, 2], "x": 2, "y": 2}, + {"matrix": [6, 2], "x": 3, "y": 2}, + {"matrix": [7, 2], "x": 4, "y": 2}, + {"matrix": [8, 2], "x": 5, "y": 2}, + {"matrix": [9, 2], "x": 6, "y": 2}, + {"matrix": [10, 2], "x": 7, "y": 2}, + {"matrix": [11, 2], "x": 8, "y": 2}, + {"matrix": [0, 3], "x": 9, "y": 2}, + {"matrix": [1, 3], "x": 10, "y": 2}, + {"matrix": [2, 3], "x": 11, "y": 2}, + {"matrix": [3, 3], "x": 12, "y": 2}, + {"matrix": [4, 3], "x": 13, "y": 2, "w": 2}, + + {"matrix": [5, 3], "x": 0, "y": 3, "w": 2.5}, + {"matrix": [6, 3], "x": 2.5, "y": 3}, + {"matrix": [7, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 3], "x": 4.5, "y": 3}, + {"matrix": [9, 3], "x": 5.5, "y": 3}, + {"matrix": [10, 3], "x": 6.5, "y": 3}, + {"matrix": [11, 3], "x": 7.5, "y": 3}, + {"matrix": [0, 4], "x": 8.5, "y": 3}, + {"matrix": [1, 4], "x": 9.5, "y": 3}, + {"matrix": [2, 4], "x": 10.5, "y": 3}, + {"matrix": [3, 4], "x": 11.5, "y": 3}, + {"matrix": [4, 4], "x": 12.5, "y": 3, "w": 2.5}, + + {"matrix": [5, 4], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [6, 4], "x": 1.25, "y": 4, "w": 1.5}, + {"matrix": [7, 4], "x": 2.75, "y": 4, "w": 1.5}, + {"matrix": [8, 4], "x": 4.25, "y": 4}, + {"matrix": [10, 4], "x": 5.25, "y": 4, "w": 5.5}, + {"matrix": [1, 5], "x": 10.75, "y": 4, "w": 1.5}, + {"matrix": [2, 5], "x": 12.25, "y": 4, "w": 1.5}, + {"matrix": [3, 5], "x": 13.75, "y": 4, "w": 1.25} + ] } } } diff --git a/keyboards/kakunpc/angel64/rev1/matrix_diagram.md b/keyboards/kakunpc/angel64/rev1/matrix_diagram.md new file mode 100644 index 00000000000..d9efcc6a55a --- /dev/null +++ b/keyboards/kakunpc/angel64/rev1/matrix_diagram.md @@ -0,0 +1,22 @@ +# Matrix Diagram for Angel64 Rev1 + +``` +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ +│00 │10 │20 │30 │40 │50 │60 │70 │80 │90 │A0 │B0 │01 │11 │ +├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ +│21 │31 │41 │51 │61 │71 │81 │91 │A1 │B1 │02 │12 │22 │32 │ +├─────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─────┤ +│42 │52 │62 │72 │82 │92 │A2 │B2 │03 │13 │23 │33 │43 │ +├───────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───────┤ +│53 │63 │73 │83 │93 │A3 │B3 │04 │14 │24 │34 │44 │ +├────┬────┴┬──┴──┬┴──┬┴───┴┬──┴──┬┴───┴┬──┴┬──┴──┬┴────┬────┤ +│54 │64 │74 │84 │94 │A4 │B4 │05 │15 │25 │35 │ +└────┴─────┴─────┴───┴─────┴─────┴─────┴───┴─────┴─────┴────┘ + +┌────┬─────┬─────┬─────────────────────┬───┬─────┬─────┬────┐ +│54 │64 │74 │A4 │05 │15 │25 │35 │ 5.5u Space (Left) +└────┴─────┴─────┴─────────────────────┴───┴─────┴─────┴────┘ +┌────┬─────┬─────┬───┬─────────────────────┬─────┬─────┬────┐ +│54 │64 │74 │84 │A4 │15 │25 │35 │ 5.5u Space (Right) +└────┴─────┴─────┴───┴─────────────────────┴─────┴─────┴────┘ +``` From 096dc672c14f6e29dc85cd7e82aebb20b5bebf35 Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 5 Jul 2024 16:35:48 +1000 Subject: [PATCH 183/519] `kakunpc/rabbit_capture_plan`: add additional layouts (#24059) --- .../kakunpc/rabbit_capture_plan/keyboard.json | 255 +++++++++++++++++- .../rabbit_capture_plan/matrix_diagram.md | 16 ++ 2 files changed, 270 insertions(+), 1 deletion(-) create mode 100644 keyboards/kakunpc/rabbit_capture_plan/matrix_diagram.md diff --git a/keyboards/kakunpc/rabbit_capture_plan/keyboard.json b/keyboards/kakunpc/rabbit_capture_plan/keyboard.json index 16364fb71fe..3d6e7958f47 100644 --- a/keyboards/kakunpc/rabbit_capture_plan/keyboard.json +++ b/keyboards/kakunpc/rabbit_capture_plan/keyboard.json @@ -57,8 +57,94 @@ }, "processor": "atmega32u4", "bootloader": "caterina", + "layout_aliases": { + "LAYOUT_all": "LAYOUT_ansi_split_rshift" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT_ansi": { + "layout": [ + {"matrix": [0, 0], "x": 0.41, "y": 0}, + {"matrix": [0, 1], "x": 1.41, "y": 0}, + {"matrix": [0, 2], "x": 2.72, "y": 0}, + {"matrix": [0, 3], "x": 3.72, "y": 0}, + {"matrix": [0, 4], "x": 4.72, "y": 0}, + {"matrix": [0, 5], "x": 5.72, "y": 0}, + {"matrix": [0, 6], "x": 6.72, "y": 0}, + + {"matrix": [5, 0], "x": 9.62, "y": 0}, + {"matrix": [5, 1], "x": 10.62, "y": 0}, + {"matrix": [5, 2], "x": 11.62, "y": 0}, + {"matrix": [5, 3], "x": 12.62, "y": 0}, + {"matrix": [5, 4], "x": 14.07, "y": 0}, + {"matrix": [5, 5], "x": 15.07, "y": 0}, + {"matrix": [5, 6], "x": 16.07, "y": 0}, + {"matrix": [5, 7], "x": 17.07, "y": 0}, + + {"matrix": [1, 0], "x": 0.28, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.78, "y": 1}, + {"matrix": [1, 2], "x": 3.22, "y": 1}, + {"matrix": [1, 3], "x": 4.22, "y": 1}, + {"matrix": [1, 4], "x": 5.22, "y": 1}, + {"matrix": [1, 5], "x": 6.22, "y": 1}, + {"matrix": [1, 6], "x": 7.22, "y": 1}, + + {"matrix": [6, 0], "x": 9.12, "y": 1}, + {"matrix": [6, 1], "x": 10.12, "y": 1}, + {"matrix": [6, 2], "x": 11.12, "y": 1}, + {"matrix": [6, 3], "x": 12.12, "y": 1}, + {"matrix": [6, 4], "x": 13.72, "y": 1}, + {"matrix": [6, 5], "x": 14.72, "y": 1}, + {"matrix": [6, 6], "x": 15.72, "y": 1}, + {"matrix": [6, 7], "x": 16.72, "y": 1, "w": 1.5}, + + {"matrix": [2, 0], "x": 0.14, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.89, "y": 2}, + {"matrix": [2, 2], "x": 3.47, "y": 2}, + {"matrix": [2, 3], "x": 4.47, "y": 2}, + {"matrix": [2, 4], "x": 5.47, "y": 2}, + {"matrix": [2, 5], "x": 6.47, "y": 2}, + {"matrix": [4, 5], "x": 7.47, "y": 2}, + + {"matrix": [7, 0], "x": 9.37, "y": 2}, + {"matrix": [7, 1], "x": 10.37, "y": 2}, + {"matrix": [7, 2], "x": 11.37, "y": 2}, + {"matrix": [7, 3], "x": 12.37, "y": 2}, + {"matrix": [7, 4], "x": 14.09, "y": 2}, + {"matrix": [7, 5], "x": 15.09, "y": 2}, + {"matrix": [7, 6], "x": 16.09, "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.97, "y": 3}, + {"matrix": [3, 3], "x": 4.97, "y": 3}, + {"matrix": [3, 4], "x": 5.97, "y": 3}, + {"matrix": [3, 5], "x": 6.97, "y": 3}, + + {"matrix": [8, 0], "x": 8.87, "y": 3}, + {"matrix": [8, 1], "x": 9.87, "y": 3}, + {"matrix": [8, 2], "x": 10.87, "y": 3}, + {"matrix": [8, 3], "x": 11.87, "y": 3}, + {"matrix": [8, 4], "x": 13.72, "y": 3}, + {"matrix": [8, 5], "x": 14.72, "y": 3}, + {"matrix": [8, 6], "x": 15.72, "y": 3, "w": 1.75}, + + {"matrix": [9, 0], "x": 18, "y": 3.25}, + + {"matrix": [4, 0], "x": 0.25, "y": 4, "w": 1.25}, + {"matrix": [4, 1], "x": 1.5, "y": 4, "w": 1.25}, + {"matrix": [4, 2], "x": 4.47, "y": 4}, + {"matrix": [4, 3], "x": 5.47, "y": 4, "w": 2}, + {"matrix": [4, 4], "x": 7.47, "y": 4}, + + {"matrix": [9, 1], "x": 9.35, "y": 4, "w": 2.75}, + {"matrix": [9, 2], "x": 12.1, "y": 4}, + + {"matrix": [9, 3], "x": 17, "y": 4.25}, + {"matrix": [9, 4], "x": 18, "y": 4.25}, + {"matrix": [9, 5], "x": 19, "y": 4.25} + ] + }, + "LAYOUT_ansi_split_rshift": { "layout": [ {"matrix": [0, 0], "x": 0.41, "y": 0}, {"matrix": [0, 1], "x": 1.41, "y": 0}, @@ -137,6 +223,173 @@ {"matrix": [9, 1], "x": 9.35, "y": 4, "w": 2.75}, {"matrix": [9, 2], "x": 12.1, "y": 4}, + {"matrix": [9, 3], "x": 17, "y": 4.25}, + {"matrix": [9, 4], "x": 18, "y": 4.25}, + {"matrix": [9, 5], "x": 19, "y": 4.25} + ] + }, + "LAYOUT_iso": { + "layout": [ + {"matrix": [0, 0], "x": 0.41, "y": 0}, + {"matrix": [0, 1], "x": 1.41, "y": 0}, + {"matrix": [0, 2], "x": 2.72, "y": 0}, + {"matrix": [0, 3], "x": 3.72, "y": 0}, + {"matrix": [0, 4], "x": 4.72, "y": 0}, + {"matrix": [0, 5], "x": 5.72, "y": 0}, + {"matrix": [0, 6], "x": 6.72, "y": 0}, + + {"matrix": [5, 0], "x": 9.62, "y": 0}, + {"matrix": [5, 1], "x": 10.62, "y": 0}, + {"matrix": [5, 2], "x": 11.62, "y": 0}, + {"matrix": [5, 3], "x": 12.62, "y": 0}, + {"matrix": [5, 4], "x": 14.07, "y": 0}, + {"matrix": [5, 5], "x": 15.07, "y": 0}, + {"matrix": [5, 6], "x": 16.07, "y": 0}, + {"matrix": [5, 7], "x": 17.07, "y": 0}, + + {"matrix": [1, 0], "x": 0.28, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.78, "y": 1}, + {"matrix": [1, 2], "x": 3.22, "y": 1}, + {"matrix": [1, 3], "x": 4.22, "y": 1}, + {"matrix": [1, 4], "x": 5.22, "y": 1}, + {"matrix": [1, 5], "x": 6.22, "y": 1}, + {"matrix": [1, 6], "x": 7.22, "y": 1}, + + {"matrix": [6, 0], "x": 9.12, "y": 1}, + {"matrix": [6, 1], "x": 10.12, "y": 1}, + {"matrix": [6, 2], "x": 11.12, "y": 1}, + {"matrix": [6, 3], "x": 12.12, "y": 1}, + {"matrix": [6, 4], "x": 13.72, "y": 1}, + {"matrix": [6, 5], "x": 14.72, "y": 1}, + {"matrix": [6, 6], "x": 15.72, "y": 1}, + + {"matrix": [2, 0], "x": 0.14, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.89, "y": 2}, + {"matrix": [2, 2], "x": 3.47, "y": 2}, + {"matrix": [2, 3], "x": 4.47, "y": 2}, + {"matrix": [2, 4], "x": 5.47, "y": 2}, + {"matrix": [2, 5], "x": 6.47, "y": 2}, + {"matrix": [4, 5], "x": 7.47, "y": 2}, + + {"matrix": [7, 0], "x": 9.37, "y": 2}, + {"matrix": [7, 1], "x": 10.37, "y": 2}, + {"matrix": [7, 2], "x": 11.37, "y": 2}, + {"matrix": [7, 3], "x": 12.37, "y": 2}, + {"matrix": [7, 4], "x": 14.09, "y": 2}, + {"matrix": [7, 5], "x": 15.09, "y": 2}, + {"matrix": [7, 6], "x": 16.09, "y": 2}, + {"matrix": [6, 7], "x": 17.09, "y": 1, "w": 1.25, "h": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [3, 1], "x": 2.25, "y": 3}, + {"matrix": [3, 2], "x": 3.97, "y": 3}, + {"matrix": [3, 3], "x": 4.97, "y": 3}, + {"matrix": [3, 4], "x": 5.97, "y": 3}, + {"matrix": [3, 5], "x": 6.97, "y": 3}, + + {"matrix": [8, 0], "x": 8.87, "y": 3}, + {"matrix": [8, 1], "x": 9.87, "y": 3}, + {"matrix": [8, 2], "x": 10.87, "y": 3}, + {"matrix": [8, 3], "x": 11.87, "y": 3}, + {"matrix": [8, 4], "x": 13.72, "y": 3}, + {"matrix": [8, 5], "x": 14.72, "y": 3}, + {"matrix": [8, 6], "x": 15.72, "y": 3, "w": 1.75}, + + {"matrix": [9, 0], "x": 18, "y": 3.25}, + + {"matrix": [4, 0], "x": 0.25, "y": 4, "w": 1.25}, + {"matrix": [4, 1], "x": 1.5, "y": 4, "w": 1.25}, + {"matrix": [4, 2], "x": 4.47, "y": 4}, + {"matrix": [4, 3], "x": 5.47, "y": 4, "w": 2}, + {"matrix": [4, 4], "x": 7.47, "y": 4}, + + {"matrix": [9, 1], "x": 9.35, "y": 4, "w": 2.75}, + {"matrix": [9, 2], "x": 12.1, "y": 4}, + + {"matrix": [9, 3], "x": 17, "y": 4.25}, + {"matrix": [9, 4], "x": 18, "y": 4.25}, + {"matrix": [9, 5], "x": 19, "y": 4.25} + ] + }, + "LAYOUT_iso_split_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0.41, "y": 0}, + {"matrix": [0, 1], "x": 1.41, "y": 0}, + {"matrix": [0, 2], "x": 2.72, "y": 0}, + {"matrix": [0, 3], "x": 3.72, "y": 0}, + {"matrix": [0, 4], "x": 4.72, "y": 0}, + {"matrix": [0, 5], "x": 5.72, "y": 0}, + {"matrix": [0, 6], "x": 6.72, "y": 0}, + + {"matrix": [5, 0], "x": 9.62, "y": 0}, + {"matrix": [5, 1], "x": 10.62, "y": 0}, + {"matrix": [5, 2], "x": 11.62, "y": 0}, + {"matrix": [5, 3], "x": 12.62, "y": 0}, + {"matrix": [5, 4], "x": 14.07, "y": 0}, + {"matrix": [5, 5], "x": 15.07, "y": 0}, + {"matrix": [5, 6], "x": 16.07, "y": 0}, + {"matrix": [5, 7], "x": 17.07, "y": 0}, + + {"matrix": [1, 0], "x": 0.28, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.78, "y": 1}, + {"matrix": [1, 2], "x": 3.22, "y": 1}, + {"matrix": [1, 3], "x": 4.22, "y": 1}, + {"matrix": [1, 4], "x": 5.22, "y": 1}, + {"matrix": [1, 5], "x": 6.22, "y": 1}, + {"matrix": [1, 6], "x": 7.22, "y": 1}, + + {"matrix": [6, 0], "x": 9.12, "y": 1}, + {"matrix": [6, 1], "x": 10.12, "y": 1}, + {"matrix": [6, 2], "x": 11.12, "y": 1}, + {"matrix": [6, 3], "x": 12.12, "y": 1}, + {"matrix": [6, 4], "x": 13.72, "y": 1}, + {"matrix": [6, 5], "x": 14.72, "y": 1}, + {"matrix": [6, 6], "x": 15.72, "y": 1}, + + {"matrix": [2, 0], "x": 0.14, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.89, "y": 2}, + {"matrix": [2, 2], "x": 3.47, "y": 2}, + {"matrix": [2, 3], "x": 4.47, "y": 2}, + {"matrix": [2, 4], "x": 5.47, "y": 2}, + {"matrix": [2, 5], "x": 6.47, "y": 2}, + {"matrix": [4, 5], "x": 7.47, "y": 2}, + + {"matrix": [7, 0], "x": 9.37, "y": 2}, + {"matrix": [7, 1], "x": 10.37, "y": 2}, + {"matrix": [7, 2], "x": 11.37, "y": 2}, + {"matrix": [7, 3], "x": 12.37, "y": 2}, + {"matrix": [7, 4], "x": 14.09, "y": 2}, + {"matrix": [7, 5], "x": 15.09, "y": 2}, + {"matrix": [7, 6], "x": 16.09, "y": 2}, + {"matrix": [6, 7], "x": 17.09, "y": 1, "w": 1.25, "h": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [3, 1], "x": 2.25, "y": 3}, + {"matrix": [3, 2], "x": 3.97, "y": 3}, + {"matrix": [3, 3], "x": 4.97, "y": 3}, + {"matrix": [3, 4], "x": 5.97, "y": 3}, + {"matrix": [3, 5], "x": 6.97, "y": 3}, + + {"matrix": [8, 0], "x": 8.87, "y": 3}, + {"matrix": [8, 1], "x": 9.87, "y": 3}, + {"matrix": [8, 2], "x": 10.87, "y": 3}, + {"matrix": [8, 3], "x": 11.87, "y": 3}, + {"matrix": [8, 4], "x": 13.72, "y": 3}, + {"matrix": [8, 5], "x": 14.72, "y": 3}, + {"matrix": [8, 6], "x": 15.72, "y": 3}, + {"matrix": [8, 7], "x": 16.72, "y": 3}, + + {"matrix": [9, 0], "x": 18, "y": 3.25}, + + {"matrix": [4, 0], "x": 0.25, "y": 4, "w": 1.25}, + {"matrix": [4, 1], "x": 1.5, "y": 4, "w": 1.25}, + {"matrix": [4, 2], "x": 4.47, "y": 4}, + {"matrix": [4, 3], "x": 5.47, "y": 4, "w": 2}, + {"matrix": [4, 4], "x": 7.47, "y": 4}, + + {"matrix": [9, 1], "x": 9.35, "y": 4, "w": 2.75}, + {"matrix": [9, 2], "x": 12.1, "y": 4}, + {"matrix": [9, 3], "x": 17, "y": 4.25}, {"matrix": [9, 4], "x": 18, "y": 4.25}, {"matrix": [9, 5], "x": 19, "y": 4.25} diff --git a/keyboards/kakunpc/rabbit_capture_plan/matrix_diagram.md b/keyboards/kakunpc/rabbit_capture_plan/matrix_diagram.md new file mode 100644 index 00000000000..9b28372360e --- /dev/null +++ b/keyboards/kakunpc/rabbit_capture_plan/matrix_diagram.md @@ -0,0 +1,16 @@ +# Matrix Diagram for rabbit_capture_plan + +``` + ┌───┬───┐ ┌───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ + │00 │01 │ │02 │03 │04 │05 │06 │ │50 │51 │52 │53 │ │54 │55 │56 │57 │ + ┌┴───┴┬──┴┐└─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐ ┌─┴─┬─┴─┬─┴─┬─┴─┬─┘ ┌─┴─┬─┴─┬─┴─┬─┴───┤ ┌─────┐ + │10 │11 │ │12 │13 │14 │15 │16 │ │60 │61 │62 │63 │ │64 │65 │66 │67 │ │67 │ + ┌┴─────┼───┤ └┬──┴┬──┴┬──┴┬──┴┬──┴┐ └┬──┴┬──┴┬──┴┬──┴┐ └─┬─┴─┬─┴─┬─┴─────┴┐ ┌──┴┐ │ ISO Enter + │20 │21 │ │22 │23 │24 │25 │26 │ │70 │71 │72 │73 │ │74 │75 │76 │ │76 │ │ +┌┴──────┴┬──┴┐ └─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘ ┌─┴─┬─┴─┬─┴─┬─┴─┬─┘ ┌─┴─┬─┴─┬─┴─┬───┬──┘ └───┴────┘ +│30 │31 │ │32 │33 │34 │35 │ │80 │81 │82 │83 │ │84 │85 │86 │87 │ ┌───┐ ┌──────┐ +└┬────┬──┴─┬─┘ └─┬─┴─┬─┴───┴─┬─┴─┐ └─┬─┴───┴───┴┬──┴┐ └───┴───┴───┴───┘ │90 │ │86 │ 1.75u Right Shift + │40 │41 │ │42 │43 │44 │ │91 │92 │ ┌───┼───┼───┐ └──────┘ + └────┴────┘ └───┴───────┴───┘ └──────────┴───┘ │93 │94 │95 │ + └───┴───┴───┘ +``` From 6d21898c146856b5679d38af073643107bc9dd83 Mon Sep 17 00:00:00 2001 From: ai03 Date: Fri, 5 Jul 2024 03:55:25 -0700 Subject: [PATCH 184/519] Add support for Equinox XL (#23695) --- keyboards/ai03/equinox_xl/keyboard.json | 89 +++++++++++++++++++ .../ai03/equinox_xl/keymaps/default/keymap.c | 15 ++++ .../ai03/equinox_xl/keymaps/via/keymap.c | 15 ++++ .../ai03/equinox_xl/keymaps/via/rules.mk | 1 + keyboards/ai03/equinox_xl/readme.md | 28 ++++++ 5 files changed, 148 insertions(+) create mode 100644 keyboards/ai03/equinox_xl/keyboard.json create mode 100644 keyboards/ai03/equinox_xl/keymaps/default/keymap.c create mode 100644 keyboards/ai03/equinox_xl/keymaps/via/keymap.c create mode 100644 keyboards/ai03/equinox_xl/keymaps/via/rules.mk create mode 100644 keyboards/ai03/equinox_xl/readme.md diff --git a/keyboards/ai03/equinox_xl/keyboard.json b/keyboards/ai03/equinox_xl/keyboard.json new file mode 100644 index 00000000000..e6abf4a0c21 --- /dev/null +++ b/keyboards/ai03/equinox_xl/keyboard.json @@ -0,0 +1,89 @@ +{ + "manufacturer": "ai03 Design Studio", + "keyboard_name": "Equinox XL", + "maintainer": "ai03", + "bootloader": "atmel-dfu", + "build": { + "debounce_type": "asym_eager_defer_pk" + }, + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "indicators": { + "caps_lock": "F1", + "on_state": 0 + }, + "matrix_pins": { + "cols": ["F5", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"], + "rows": ["B7", "F4", "F6", "F7"] + }, + "processor": "atmega32u4", + "url": "https://ai03.com/projects/equinox-xl/", + "usb": { + "device_version": "0.0.1", + "pid": "0x0020", + "vid": "0xA103" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "w": 1.5}, + {"matrix": [0, 1], "x": 1.5, "y": 0}, + {"matrix": [0, 2], "x": 2.5, "y": 0}, + {"matrix": [0, 3], "x": 3.5, "y": 0}, + {"matrix": [0, 4], "x": 4.5, "y": 0}, + {"matrix": [0, 5], "x": 5.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": 10.5, "y": 0}, + {"matrix": [0, 11], "x": 11.5, "y": 0}, + {"matrix": [0, 12], "x": 12.5, "y": 0}, + {"matrix": [0, 13], "x": 13.5, "y": 0, "w": 1.5}, + {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.75}, + {"matrix": [1, 1], "x": 1.75, "y": 1}, + {"matrix": [1, 2], "x": 2.75, "y": 1}, + {"matrix": [1, 3], "x": 3.75, "y": 1}, + {"matrix": [1, 4], "x": 4.75, "y": 1}, + {"matrix": [1, 5], "x": 5.75, "y": 1}, + {"matrix": [1, 6], "x": 6.75, "y": 1}, + {"matrix": [1, 7], "x": 7.75, "y": 1}, + {"matrix": [1, 8], "x": 8.75, "y": 1}, + {"matrix": [1, 9], "x": 9.75, "y": 1}, + {"matrix": [1, 10], "x": 10.75, "y": 1}, + {"matrix": [1, 11], "x": 11.75, "y": 1}, + {"matrix": [1, 13], "x": 12.75, "y": 1, "w": 2.25}, + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.25}, + {"matrix": [2, 1], "x": 1.25, "y": 2}, + {"matrix": [2, 2], "x": 2.25, "y": 2}, + {"matrix": [2, 3], "x": 3.25, "y": 2}, + {"matrix": [2, 4], "x": 4.25, "y": 2}, + {"matrix": [2, 5], "x": 5.25, "y": 2}, + {"matrix": [2, 6], "x": 6.25, "y": 2}, + {"matrix": [2, 7], "x": 7.25, "y": 2}, + {"matrix": [2, 8], "x": 8.25, "y": 2}, + {"matrix": [2, 9], "x": 9.25, "y": 2}, + {"matrix": [2, 10], "x": 10.25, "y": 2}, + {"matrix": [2, 11], "x": 11.25, "y": 2}, + {"matrix": [2, 12], "x": 12.25, "y": 2, "w": 1.75}, + {"matrix": [2, 13], "x": 14, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.5}, + {"matrix": [3, 1], "x": 1.5, "y": 3}, + {"matrix": [3, 2], "x": 2.5, "y": 3, "w": 1.5}, + {"matrix": [3, 5], "x": 4, "y": 3, "w": 3}, + {"matrix": [3, 7], "x": 7, "y": 3}, + {"matrix": [3, 9], "x": 8, "y": 3, "w": 3}, + {"matrix": [3, 11], "x": 11, "y": 3, "w": 1.5}, + {"matrix": [3, 12], "x": 12.5, "y": 3}, + {"matrix": [3, 13], "x": 13.5, "y": 3, "w": 1.5} + ] + } + } +} diff --git a/keyboards/ai03/equinox_xl/keymaps/default/keymap.c b/keyboards/ai03/equinox_xl/keymaps/default/keymap.c new file mode 100644 index 00000000000..be2f1cb7e0b --- /dev/null +++ b/keyboards/ai03/equinox_xl/keymaps/default/keymap.c @@ -0,0 +1,15 @@ +// Copyright 2024 ai03 +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + KC_ESC, 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_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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_GRV, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL + ), + +}; diff --git a/keyboards/ai03/equinox_xl/keymaps/via/keymap.c b/keyboards/ai03/equinox_xl/keymaps/via/keymap.c new file mode 100644 index 00000000000..be2f1cb7e0b --- /dev/null +++ b/keyboards/ai03/equinox_xl/keymaps/via/keymap.c @@ -0,0 +1,15 @@ +// Copyright 2024 ai03 +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + KC_ESC, 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_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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_GRV, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL + ), + +}; diff --git a/keyboards/ai03/equinox_xl/keymaps/via/rules.mk b/keyboards/ai03/equinox_xl/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/ai03/equinox_xl/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/ai03/equinox_xl/readme.md b/keyboards/ai03/equinox_xl/readme.md new file mode 100644 index 00000000000..84ceef68090 --- /dev/null +++ b/keyboards/ai03/equinox_xl/readme.md @@ -0,0 +1,28 @@ +# Equinox XL + +![Cover image](https://i.imgur.com/sQpe0Zv.jpg) + +A numrowless 50% keyboard + +* Keyboard Maintainer: [ai03](https://github.com/ai03-2725) +* Hardware Supported: The Equinox XL PCB, powered by the Atmega32u4 +* Hardware Availability: Available via group buy + + +Make example for this keyboard (after setting up your build environment): + + make ai03/equinox_xl:default + +Flashing example for this keyboard: + + make ai03/equinox_xl: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**: Press the reset button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available From 9fb51cfe2b6f3138bd706d0902d3ba749e2ef513 Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 5 Jul 2024 20:57:39 +1000 Subject: [PATCH 185/519] `kbdfans/baguette66`: fix layout name (#24061) --- keyboards/kbdfans/baguette66/rgb/keyboard.json | 5 ++++- keyboards/kbdfans/baguette66/rgb/keymaps/default/keymap.c | 8 ++++---- keyboards/kbdfans/baguette66/rgb/keymaps/via/keymap.c | 8 ++++---- keyboards/kbdfans/baguette66/soldered/keyboard.json | 5 ++++- .../kbdfans/baguette66/soldered/keymaps/default/keymap.c | 8 ++++---- .../kbdfans/baguette66/soldered/keymaps/via/keymap.c | 8 ++++---- 6 files changed, 24 insertions(+), 18 deletions(-) diff --git a/keyboards/kbdfans/baguette66/rgb/keyboard.json b/keyboards/kbdfans/baguette66/rgb/keyboard.json index e72d56e6f96..61579473cd9 100644 --- a/keyboards/kbdfans/baguette66/rgb/keyboard.json +++ b/keyboards/kbdfans/baguette66/rgb/keyboard.json @@ -80,8 +80,11 @@ "diode_direction": "COL2ROW", "processor": "atmega32u4", "bootloader": "atmel-dfu", + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/kbdfans/baguette66/rgb/keymaps/default/keymap.c b/keyboards/kbdfans/baguette66/rgb/keymaps/default/keymap.c index cc93228ad02..a420edfa7b2 100644 --- a/keyboards/kbdfans/baguette66/rgb/keymaps/default/keymap.c +++ b/keyboards/kbdfans/baguette66/rgb/keymaps/default/keymap.c @@ -17,25 +17,25 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [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_BSPC, KC_GRAVE, 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_END, 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_DEL, KC_UP, KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT,KC_DOWN, KC_RIGHT), - [1] = LAYOUT_all( + [1] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), - [2] = LAYOUT_all( + [2] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), - [3] = LAYOUT_all( + [3] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, diff --git a/keyboards/kbdfans/baguette66/rgb/keymaps/via/keymap.c b/keyboards/kbdfans/baguette66/rgb/keymaps/via/keymap.c index eefda15f523..267ada99c9b 100644 --- a/keyboards/kbdfans/baguette66/rgb/keymaps/via/keymap.c +++ b/keyboards/kbdfans/baguette66/rgb/keymaps/via/keymap.c @@ -17,25 +17,25 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [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_BSPC, KC_GRAVE, 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_END, 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_DEL, KC_UP, KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT,KC_DOWN, KC_RIGHT), - [1] = LAYOUT_all( + [1] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), - [2] = LAYOUT_all( + [2] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), - [3] = LAYOUT_all( + [3] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, diff --git a/keyboards/kbdfans/baguette66/soldered/keyboard.json b/keyboards/kbdfans/baguette66/soldered/keyboard.json index da473daf915..f9c87dad06e 100644 --- a/keyboards/kbdfans/baguette66/soldered/keyboard.json +++ b/keyboards/kbdfans/baguette66/soldered/keyboard.json @@ -26,8 +26,11 @@ }, "processor": "atmega32u4", "bootloader": "atmel-dfu", + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, diff --git a/keyboards/kbdfans/baguette66/soldered/keymaps/default/keymap.c b/keyboards/kbdfans/baguette66/soldered/keymaps/default/keymap.c index 87879b109a9..3d5b45ebab6 100644 --- a/keyboards/kbdfans/baguette66/soldered/keymaps/default/keymap.c +++ b/keyboards/kbdfans/baguette66/soldered/keymaps/default/keymap.c @@ -17,25 +17,25 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [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_BSPC, KC_GRAVE, 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_END, 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_DEL, KC_UP, KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT,KC_DOWN, KC_RIGHT), - [1] = LAYOUT_all( + [1] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), - [2] = LAYOUT_all( + [2] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), - [3] = LAYOUT_all( + [3] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, diff --git a/keyboards/kbdfans/baguette66/soldered/keymaps/via/keymap.c b/keyboards/kbdfans/baguette66/soldered/keymaps/via/keymap.c index 87879b109a9..3d5b45ebab6 100644 --- a/keyboards/kbdfans/baguette66/soldered/keymaps/via/keymap.c +++ b/keyboards/kbdfans/baguette66/soldered/keymaps/via/keymap.c @@ -17,25 +17,25 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [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_BSPC, KC_GRAVE, 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_END, 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_DEL, KC_UP, KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT,KC_DOWN, KC_RIGHT), - [1] = LAYOUT_all( + [1] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), - [2] = LAYOUT_all( + [2] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), - [3] = LAYOUT_all( + [3] = LAYOUT( QK_GESC, 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_DEL, KC_GRAVE, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR, From d0e89aeccada3f0df906dd4ff8fa7708b0d8234e Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 5 Jul 2024 12:02:39 +0100 Subject: [PATCH 186/519] Align LUFA suspend logic (#24055) --- tmk_core/protocol/lufa/lufa.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tmk_core/protocol/lufa/lufa.c b/tmk_core/protocol/lufa/lufa.c index 2142b04460a..b0c9758d2fd 100644 --- a/tmk_core/protocol/lufa/lufa.c +++ b/tmk_core/protocol/lufa/lufa.c @@ -836,7 +836,7 @@ void protocol_pre_task(void) { dprintln("suspending keyboard"); while (USB_DeviceState == DEVICE_STATE_Suspended) { suspend_power_down(); - if (USB_Device_RemoteWakeupEnabled && suspend_wakeup_condition()) { + if (suspend_wakeup_condition() && USB_Device_RemoteWakeupEnabled) { USB_Device_SendRemoteWakeup(); clear_keyboard(); From af72a58c8f932dc55401bb1197a466b615f660e3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 5 Jul 2024 23:25:48 +0100 Subject: [PATCH 187/519] Bump JamesIves/github-pages-deploy-action from 4.6.1 to 4.6.3 (#24063) Bumps [JamesIves/github-pages-deploy-action](https://github.com/jamesives/github-pages-deploy-action) from 4.6.1 to 4.6.3. - [Release notes](https://github.com/jamesives/github-pages-deploy-action/releases) - [Commits](https://github.com/jamesives/github-pages-deploy-action/compare/v4.6.1...v4.6.3) --- updated-dependencies: - dependency-name: JamesIves/github-pages-deploy-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 0fdd2c7b37d..7f588fda608 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -56,7 +56,7 @@ jobs: - name: Deploy if: ${{ github.event_name == 'push' && github.repository == 'qmk/qmk_firmware' }} - uses: JamesIves/github-pages-deploy-action@v4.6.1 + uses: JamesIves/github-pages-deploy-action@v4.6.3 with: token: ${{ secrets.GITHUB_TOKEN }} branch: gh-pages From be967d42d27b7391e544bf5499caea2026d4cf27 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 6 Jul 2024 08:41:32 +1000 Subject: [PATCH 188/519] `playkbtw/pk64rgb`: move RGB Matrix LED config to data driven (#24062) --- keyboards/playkbtw/pk64rgb/config.h | 2 - keyboards/playkbtw/pk64rgb/keyboard.json | 72 +++++++++++++++++++++++- keyboards/playkbtw/pk64rgb/pk64rgb.c | 20 ------- 3 files changed, 71 insertions(+), 23 deletions(-) diff --git a/keyboards/playkbtw/pk64rgb/config.h b/keyboards/playkbtw/pk64rgb/config.h index 76f02334b4d..e234999f2fc 100644 --- a/keyboards/playkbtw/pk64rgb/config.h +++ b/keyboards/playkbtw/pk64rgb/config.h @@ -17,5 +17,3 @@ #pragma once #define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND - -#define RGB_MATRIX_LED_COUNT 64 diff --git a/keyboards/playkbtw/pk64rgb/keyboard.json b/keyboards/playkbtw/pk64rgb/keyboard.json index 1f200e2089f..81ac5be5963 100644 --- a/keyboards/playkbtw/pk64rgb/keyboard.json +++ b/keyboards/playkbtw/pk64rgb/keyboard.json @@ -12,7 +12,77 @@ "driver": "is31fl3733", "led_flush_limit": 26, "led_process_limit": 20, - "max_brightness": 160 + "max_brightness": 160, + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1}, + {"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": 216, "y": 0, "flags": 1}, + + {"matrix": [1, 0], "x": 4, "y": 16, "flags": 1}, + {"matrix": [1, 1], "x": 24, "y": 16, "flags": 4}, + {"matrix": [1, 2], "x": 40, "y": 16, "flags": 4}, + {"matrix": [1, 3], "x": 56, "y": 16, "flags": 4}, + {"matrix": [1, 4], "x": 72, "y": 16, "flags": 4}, + {"matrix": [1, 5], "x": 88, "y": 16, "flags": 4}, + {"matrix": [1, 6], "x": 104, "y": 16, "flags": 4}, + {"matrix": [1, 7], "x": 120, "y": 16, "flags": 4}, + {"matrix": [1, 8], "x": 136, "y": 16, "flags": 4}, + {"matrix": [1, 9], "x": 152, "y": 16, "flags": 4}, + {"matrix": [1, 10], "x": 168, "y": 16, "flags": 4}, + {"matrix": [1, 11], "x": 184, "y": 16, "flags": 4}, + {"matrix": [1, 12], "x": 200, "y": 16, "flags": 4}, + {"matrix": [1, 13], "x": 220, "y": 16, "flags": 1}, + + {"matrix": [2, 0], "x": 6, "y": 32, "flags": 1}, + {"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": 214, "y": 32, "flags": 1}, + + {"matrix": [3, 0], "x": 8, "y": 48, "flags": 1}, + {"matrix": [3, 1], "x": 32, "y": 48, "flags": 4}, + {"matrix": [3, 2], "x": 48, "y": 48, "flags": 4}, + {"matrix": [3, 3], "x": 64, "y": 48, "flags": 4}, + {"matrix": [3, 4], "x": 80, "y": 48, "flags": 4}, + {"matrix": [3, 5], "x": 96, "y": 48, "flags": 4}, + {"matrix": [3, 6], "x": 112, "y": 48, "flags": 4}, + {"matrix": [3, 7], "x": 128, "y": 48, "flags": 4}, + {"matrix": [3, 8], "x": 144, "y": 48, "flags": 4}, + {"matrix": [3, 9], "x": 160, "y": 48, "flags": 4}, + {"matrix": [3, 10], "x": 176, "y": 48, "flags": 4}, + {"matrix": [3, 11], "x": 192, "y": 48, "flags": 4}, + {"matrix": [3, 12], "x": 208, "y": 48, "flags": 4}, + {"matrix": [3, 13], "x": 224, "y": 48, "flags": 1}, + + {"matrix": [4, 0], "x": 2, "y": 64, "flags": 1}, + {"matrix": [4, 1], "x": 22, "y": 64, "flags": 1}, + {"matrix": [4, 2], "x": 42, "y": 64, "flags": 1}, + {"matrix": [4, 5], "x": 102, "y": 64, "flags": 4}, + {"matrix": [4, 9], "x": 160, "y": 64, "flags": 1}, + {"matrix": [4, 10], "x": 176, "y": 64, "flags": 1}, + {"matrix": [4, 11], "x": 192, "y": 64, "flags": 4}, + {"matrix": [4, 12], "x": 208, "y": 64, "flags": 4}, + {"matrix": [4, 13], "x": 224, "y": 64, "flags": 4} + ] }, "build": { "lto": true diff --git a/keyboards/playkbtw/pk64rgb/pk64rgb.c b/keyboards/playkbtw/pk64rgb/pk64rgb.c index b745c82b9d5..e8ac5eb4e25 100644 --- a/keyboards/playkbtw/pk64rgb/pk64rgb.c +++ b/keyboards/playkbtw/pk64rgb/pk64rgb.c @@ -94,24 +94,4 @@ const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = { {0, SW10_CS10, SW11_CS10, SW12_CS10}, {0, SW10_CS15, SW11_CS15, SW12_CS15} }; - -led_config_t g_led_config = {{ - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 }, - { 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 }, - { 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40}, - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54 }, - { 55, 56, 57, 58, 59, 60, 61, 62, 63} -}, { - { 0, 0 }, { 16, 0 }, { 32, 0 }, { 48, 0 }, { 64, 0 }, { 80, 0 }, { 96, 0 }, { 112, 0 }, { 128, 0 }, { 144, 0 }, { 160, 0 }, { 176, 0 }, { 192, 0 }, { 216, 0 }, - { 4, 16 }, { 18, 16 }, { 34, 16 }, { 50, 16 }, { 66, 16 }, { 82, 16 }, { 98, 16 }, { 114, 16 }, { 130, 16 }, { 146, 16 }, { 162, 16 }, { 178, 16 }, { 194, 16 }, { 220, 16 }, - { 6, 32 }, { 20, 32 }, { 36, 32 }, { 52, 32 }, { 68, 32 }, { 84, 32 }, { 100, 32 }, { 116, 32 }, { 132, 32 }, { 148, 32 }, { 164, 32 }, { 180, 32 }, { 212, 32 }, - { 9, 48 }, { 27, 48 }, { 43, 48 }, { 59, 48 }, { 75, 48 }, { 91, 48 }, { 107, 48 }, { 123, 48 }, { 139, 48 }, { 155, 48 }, { 171, 48 }, { 187, 48 }, { 203, 48 }, { 219, 48 }, - { 2, 64 }, { 16, 64 }, { 32, 64 }, { 64, 64 }, { 114, 64 }, { 130, 64 }, { 146, 64 }, { 204, 64 }, { 224, 64 } -}, { - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 1, 1, 4, 1, 1, 4, 4, 4, -}}; #endif \ No newline at end of file From 4ae0ca5a11c475ee49bbce13d29edbf9bd6fc636 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Sat, 6 Jul 2024 09:57:54 +1000 Subject: [PATCH 189/519] Tap dance introspection (#24049) --- quantum/keymap_introspection.c | 23 +++++++++++++++++++ quantum/keymap_introspection.h | 25 +++++++++++++++++++-- quantum/process_keycode/process_tap_dance.c | 12 +++++++--- quantum/process_keycode/process_tap_dance.h | 4 +--- tests/tap_dance/examples.c | 3 ++- tests/tap_dance/tap_dance_layers/test.mk | 2 +- tests/tap_dance/test.mk | 3 +-- 7 files changed, 60 insertions(+), 12 deletions(-) diff --git a/quantum/keymap_introspection.c b/quantum/keymap_introspection.c index 71e3b429ead..4e95125335d 100644 --- a/quantum/keymap_introspection.c +++ b/quantum/keymap_introspection.c @@ -109,3 +109,26 @@ __attribute__((weak)) combo_t* combo_get(uint16_t combo_idx) { } #endif // defined(COMBO_ENABLE) + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Tap Dance + +#if defined(TAP_DANCE_ENABLE) + +uint16_t tap_dance_count_raw(void) { + return sizeof(tap_dance_actions) / sizeof(tap_dance_action_t); +} + +uint16_t tap_dance_count(void) { + return tap_dance_count_raw(); +} + +tap_dance_action_t* tap_dance_get_raw(uint16_t tap_dance_idx) { + return &tap_dance_actions[tap_dance_idx]; +} + +tap_dance_action_t* tap_dance_get(uint16_t tap_dance_idx) { + return tap_dance_get_raw(tap_dance_idx); +} + +#endif // defined(TAP_DANCE_ENABLE) diff --git a/quantum/keymap_introspection.h b/quantum/keymap_introspection.h index f7516bf42af..bc4dd93b4c8 100644 --- a/quantum/keymap_introspection.h +++ b/quantum/keymap_introspection.h @@ -61,9 +61,30 @@ uint16_t combo_count_raw(void); // Get the number of combos defined in the user's keymap, potentially stored dynamically uint16_t combo_count(void); -// Get the keycode for the encoder mapping location, stored in firmware rather than any other persistent storage +// Get the combo definition, stored in firmware rather than any other persistent storage combo_t* combo_get_raw(uint16_t combo_idx); -// Get the keycode for the encoder mapping location, potentially stored dynamically +// Get the combo definition, potentially stored dynamically combo_t* combo_get(uint16_t combo_idx); #endif // defined(COMBO_ENABLE) + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Tap Dance + +#if defined(TAP_DANCE_ENABLE) + +// Forward declaration of tap_dance_action_t so we don't need to deal with header reordering +struct tap_dance_action_t; +typedef struct tap_dance_action_t tap_dance_action_t; + +// Get the number of tap dances defined in the user's keymap, stored in firmware rather than any other persistent storage +uint16_t tap_dance_count_raw(void); +// Get the number of tap dances defined in the user's keymap, potentially stored dynamically +uint16_t tap_dance_count(void); + +// Get the tap dance definitions, stored in firmware rather than any other persistent storage +tap_dance_action_t* tap_dance_get_raw(uint16_t tap_dance_idx); +// Get the tap dance definitions, potentially stored dynamically +tap_dance_action_t* tap_dance_get(uint16_t tap_dance_idx); + +#endif // defined(TAP_DANCE_ENABLE) diff --git a/quantum/process_keycode/process_tap_dance.c b/quantum/process_keycode/process_tap_dance.c index ce3b8fc81f7..11df62763dd 100644 --- a/quantum/process_keycode/process_tap_dance.c +++ b/quantum/process_keycode/process_tap_dance.c @@ -21,6 +21,7 @@ #include "action_util.h" #include "timer.h" #include "wait.h" +#include "keymap_introspection.h" static uint16_t active_td; static uint16_t last_tap_time; @@ -133,7 +134,7 @@ bool preprocess_tap_dance(uint16_t keycode, keyrecord_t *record) { if (!active_td || keycode == active_td) return false; - action = &tap_dance_actions[QK_TAP_DANCE_GET_INDEX(active_td)]; + action = tap_dance_get(QK_TAP_DANCE_GET_INDEX(active_td)); action->state.interrupted = true; action->state.interrupting_keycode = keycode; process_tap_dance_action_on_dance_finished(action); @@ -150,11 +151,16 @@ bool preprocess_tap_dance(uint16_t keycode, keyrecord_t *record) { } bool process_tap_dance(uint16_t keycode, keyrecord_t *record) { + int td_index; tap_dance_action_t *action; switch (keycode) { case QK_TAP_DANCE ... QK_TAP_DANCE_MAX: - action = &tap_dance_actions[QK_TAP_DANCE_GET_INDEX(keycode)]; + td_index = QK_TAP_DANCE_GET_INDEX(keycode); + if (td_index >= tap_dance_count()) { + return false; + } + action = tap_dance_get(td_index); action->state.pressed = record->event.pressed; if (record->event.pressed) { @@ -182,7 +188,7 @@ void tap_dance_task(void) { if (!active_td || timer_elapsed(last_tap_time) <= GET_TAPPING_TERM(active_td, &(keyrecord_t){})) return; - action = &tap_dance_actions[QK_TAP_DANCE_GET_INDEX(active_td)]; + action = tap_dance_get(QK_TAP_DANCE_GET_INDEX(active_td)); if (!action->state.interrupted) { process_tap_dance_action_on_dance_finished(action); } diff --git a/quantum/process_keycode/process_tap_dance.h b/quantum/process_keycode/process_tap_dance.h index c0137c14a33..5cccbdf439a 100644 --- a/quantum/process_keycode/process_tap_dance.h +++ b/quantum/process_keycode/process_tap_dance.h @@ -35,7 +35,7 @@ typedef struct { typedef void (*tap_dance_user_fn_t)(tap_dance_state_t *state, void *user_data); -typedef struct { +typedef struct tap_dance_action_t { tap_dance_state_t state; struct { tap_dance_user_fn_t on_each_tap; @@ -78,8 +78,6 @@ typedef struct { #define TD_INDEX(code) QK_TAP_DANCE_GET_INDEX(code) #define TAP_DANCE_KEYCODE(state) TD(((tap_dance_action_t *)state) - tap_dance_actions) -extern tap_dance_action_t tap_dance_actions[]; - void reset_tap_dance(tap_dance_state_t *state); /* To be used internally */ diff --git a/tests/tap_dance/examples.c b/tests/tap_dance/examples.c index 5377b397d3c..4b6bdb20908 100644 --- a/tests/tap_dance/examples.c +++ b/tests/tap_dance/examples.c @@ -16,6 +16,7 @@ #include "quantum.h" #include "examples.h" +#include "keymap_introspection.h" // Example code from the tap dance documentation, adapted for testing @@ -83,7 +84,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case TD(CT_CLN): - action = &tap_dance_actions[QK_TAP_DANCE_GET_INDEX(keycode)]; + action = tap_dance_get(QK_TAP_DANCE_GET_INDEX(keycode)); if (!record->event.pressed && action->state.count && !action->state.finished) { tap_dance_tap_hold_t *tap_hold = (tap_dance_tap_hold_t *)action->user_data; tap_code16(tap_hold->tap); diff --git a/tests/tap_dance/tap_dance_layers/test.mk b/tests/tap_dance/tap_dance_layers/test.mk index b4cdc9b0880..a677fda6482 100644 --- a/tests/tap_dance/tap_dance_layers/test.mk +++ b/tests/tap_dance/tap_dance_layers/test.mk @@ -7,4 +7,4 @@ TAP_DANCE_ENABLE = yes -SRC += tap_dance_defs.c +INTROSPECTION_KEYMAP_C = tap_dance_defs.c diff --git a/tests/tap_dance/test.mk b/tests/tap_dance/test.mk index 041d9b4dc9a..0e727da9e8f 100644 --- a/tests/tap_dance/test.mk +++ b/tests/tap_dance/test.mk @@ -18,5 +18,4 @@ # -------------------------------------------------------------------------------- TAP_DANCE_ENABLE = yes - -SRC += examples.c +INTROSPECTION_KEYMAP_C = examples.c From b82f6ac40244269427fe6436bc5e7b1b3c04a9f7 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 6 Jul 2024 11:14:09 +1000 Subject: [PATCH 190/519] [docs] Update RGBLight (Underglow) keycode names (#23999) --- docs/features/encoders.md | 6 ++--- docs/features/rgblight.md | 48 ++++++++++++++++++++------------------- docs/keycodes.md | 43 +++++++++++++++++++---------------- 3 files changed, 51 insertions(+), 46 deletions(-) diff --git a/docs/features/encoders.md b/docs/features/encoders.md index 3d1cac79af7..9157fe67c8b 100644 --- a/docs/features/encoders.md +++ b/docs/features/encoders.md @@ -85,9 +85,9 @@ Your `keymap.c` will then need an encoder mapping defined (for four layers and t #if defined(ENCODER_MAP_ENABLE) const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { [0] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, - [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, - [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, + [1] = { ENCODER_CCW_CW(UG_HUED, UG_HUEU), ENCODER_CCW_CW(UG_SATD, UG_SATU) }, + [2] = { ENCODER_CCW_CW(UG_VALD, UG_VALU), ENCODER_CCW_CW(UG_SPDD, UG_SPDU) }, + [3] = { ENCODER_CCW_CW(UG_PREV, UG_NEXT), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, }; #endif ``` diff --git a/docs/features/rgblight.md b/docs/features/rgblight.md index ece1c104677..794398a0f95 100644 --- a/docs/features/rgblight.md +++ b/docs/features/rgblight.md @@ -59,30 +59,32 @@ Changing the **Value** sets the overall brightness.
## Keycodes -|Key |Aliases |Description | -|-------------------|----------|--------------------------------------------------------------------| -|`RGB_TOG` | |Toggle RGB lighting on or off | -|`RGB_MODE_FORWARD` |`RGB_MOD` |Cycle through modes, reverse direction when Shift is held | -|`RGB_MODE_REVERSE` |`RGB_RMOD`|Cycle through modes in reverse, forward direction when Shift is held| -|`RGB_HUI` | |Increase hue, decrease hue when Shift is held | -|`RGB_HUD` | |Decrease hue, increase hue when Shift is held | -|`RGB_SAI` | |Increase saturation, decrease saturation when Shift is held | -|`RGB_SAD` | |Decrease saturation, increase saturation when Shift is held | -|`RGB_VAI` | |Increase value (brightness), decrease value when Shift is held | -|`RGB_VAD` | |Decrease value (brightness), increase value when Shift is held | -|`RGB_MODE_PLAIN` |`RGB_M_P `|Static (no animation) mode | -|`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode | -|`RGB_MODE_RAINBOW` |`RGB_M_R` |Rainbow animation mode | -|`RGB_MODE_SWIRL` |`RGB_M_SW`|Swirl animation mode | -|`RGB_MODE_SNAKE` |`RGB_M_SN`|Snake animation mode | -|`RGB_MODE_KNIGHT` |`RGB_M_K` |"Knight Rider" animation mode | -|`RGB_MODE_XMAS` |`RGB_M_X` |Christmas animation mode | -|`RGB_MODE_GRADIENT`|`RGB_M_G` |Static gradient animation mode | -|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red, Green, Blue test animation mode | -|`RGB_MODE_TWINKLE` |`RGB_M_TW`|Twinkle animation mode | +|Key |Aliases |Description | +|------------------------------|----------|---------------------------------------------------------------------| +|`QK_UNDERGLOW_TOGGLE` |`UG_TOGG` |Toggle RGB lighting on or off | +|`QK_UNDERGLOW_MODE_NEXT` |`UG_NEXT` |Cycle through modes, reverse direction when Shift is held | +|`QK_UNDERGLOW_MODE_PREVIOUS` |`UG_PREV` |Cycle through modes in reverse, forward direction when Shift is held | +|`QK_UNDERGLOW_HUE_UP` |`UG_HUEU` |Increase hue, decrease hue when Shift is held | +|`QK_UNDERGLOW_HUE_DOWN` |`UG_HUED` |Decrease hue, increase hue when Shift is held | +|`QK_UNDERGLOW_SATURATION_UP` |`UG_SATU` |Increase saturation, decrease saturation when Shift is held | +|`QK_UNDERGLOW_SATURATION_DOWN`|`UG_SATD` |Decrease saturation, increase saturation when Shift is held | +|`QK_UNDERGLOW_VALUE_UP` |`UG_VALU` |Increase value (brightness), decrease value when Shift is held | +|`QK_UNDERGLOW_VALUE_DOWN` |`UG_VALD` |Decrease value (brightness), increase value when Shift is held | +|`QK_UNDERGLOW_SPEED_UP` |`UG_SPDU` |Increase effect speed (brightness), decrease speed when Shift is held| +|`QK_UNDERGLOW_SPEED_DOWN` |`UG_SPDD` |Decrease effect speed (brightness), increase speed when Shift is held| +|`RGB_MODE_PLAIN` |`RGB_M_P `|Static (no animation) mode (deprecated) | +|`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode (deprecated) | +|`RGB_MODE_RAINBOW` |`RGB_M_R` |Rainbow animation mode (deprecated) | +|`RGB_MODE_SWIRL` |`RGB_M_SW`|Swirl animation mode (deprecated) | +|`RGB_MODE_SNAKE` |`RGB_M_SN`|Snake animation mode (deprecated) | +|`RGB_MODE_KNIGHT` |`RGB_M_K` |"Knight Rider" animation mode (deprecated) | +|`RGB_MODE_XMAS` |`RGB_M_X` |Christmas animation mode (deprecated) | +|`RGB_MODE_GRADIENT` |`RGB_M_G` |Static gradient animation mode (deprecated) | +|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red, Green, Blue test animation mode (deprecated) | +|`RGB_MODE_TWINKLE` |`RGB_M_TW`|Twinkle animation mode (deprecated) | ::: tip -`RGB_*` keycodes cannot be used with functions like `tap_code16(RGB_HUI)` as they're not USB HID keycodes. If you wish to replicate similar behaviour in custom code within your firmware (e.g. inside `encoder_update_user()` or `process_record_user()`), the equivalent [RGB functions](#functions) should be used instead. +These keycodes cannot be used with functions like `tap_code16()` as they are not USB HID keycodes. If you wish to replicate similar behaviour in custom code within your firmware (e.g. inside `encoder_update_user()` or `process_record_user()`), the equivalent [RGB functions](#functions) should be used instead. ::: @@ -358,7 +360,7 @@ Lighting layers on split keyboards will require layer state synced to the slave ### Overriding RGB Lighting on/off status -Normally lighting layers are not shown when RGB Lighting is disabled (e.g. with `RGB_TOG` keycode). If you would like lighting layers to work even when the RGB Lighting is otherwise off, add `#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF` to your `config.h`. +Normally lighting layers are not shown when RGB Lighting is disabled (e.g. with `UG_TOGG` keycode). If you would like lighting layers to work even when the RGB Lighting is otherwise off, add `#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF` to your `config.h`. ### Retain brightness diff --git a/docs/keycodes.md b/docs/keycodes.md index 4c91d98fa7a..95268952289 100644 --- a/docs/keycodes.md +++ b/docs/keycodes.md @@ -701,26 +701,29 @@ See also: [Dynamic Tapping Term](tap_hold#dynamic-tapping-term) See also: [RGB Lighting](features/rgblight) -|Key |Aliases |Description | -|-------------------|----------|--------------------------------------------------------------------| -|`RGB_TOG` | |Toggle RGB lighting on or off | -|`RGB_MODE_FORWARD` |`RGB_MOD` |Cycle through modes, reverse direction when Shift is held | -|`RGB_MODE_REVERSE` |`RGB_RMOD`|Cycle through modes in reverse, forward direction when Shift is held| -|`RGB_HUI` | |Increase hue, decrease hue when Shift is held | -|`RGB_HUD` | |Decrease hue, increase hue when Shift is held | -|`RGB_SAI` | |Increase saturation, decrease saturation when Shift is held | -|`RGB_SAD` | |Decrease saturation, increase saturation when Shift is held | -|`RGB_VAI` | |Increase value (brightness), decrease value when Shift is held | -|`RGB_VAD` | |Decrease value (brightness), increase value when Shift is held | -|`RGB_MODE_PLAIN` |`RGB_M_P `|Static (no animation) mode | -|`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode | -|`RGB_MODE_RAINBOW` |`RGB_M_R` |Rainbow animation mode | -|`RGB_MODE_SWIRL` |`RGB_M_SW`|Swirl animation mode | -|`RGB_MODE_SNAKE` |`RGB_M_SN`|Snake animation mode | -|`RGB_MODE_KNIGHT` |`RGB_M_K` |"Knight Rider" animation mode | -|`RGB_MODE_XMAS` |`RGB_M_X` |Christmas animation mode | -|`RGB_MODE_GRADIENT`|`RGB_M_G` |Static gradient animation mode | -|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red,Green,Blue test animation mode | +|Key |Aliases |Description | +|------------------------------|----------|---------------------------------------------------------------------| +|`QK_UNDERGLOW_TOGGLE` |`UG_TOGG` |Toggle RGB lighting on or off | +|`QK_UNDERGLOW_MODE_NEXT` |`UG_NEXT` |Cycle through modes, reverse direction when Shift is held | +|`QK_UNDERGLOW_MODE_PREVIOUS` |`UG_PREV` |Cycle through modes in reverse, forward direction when Shift is held | +|`QK_UNDERGLOW_HUE_UP` |`UG_HUEU` |Increase hue, decrease hue when Shift is held | +|`QK_UNDERGLOW_HUE_DOWN` |`UG_HUED` |Decrease hue, increase hue when Shift is held | +|`QK_UNDERGLOW_SATURATION_UP` |`UG_SATU` |Increase saturation, decrease saturation when Shift is held | +|`QK_UNDERGLOW_SATURATION_DOWN`|`UG_SATD` |Decrease saturation, increase saturation when Shift is held | +|`QK_UNDERGLOW_VALUE_UP` |`UG_VALU` |Increase value (brightness), decrease value when Shift is held | +|`QK_UNDERGLOW_VALUE_DOWN` |`UG_VALD` |Decrease value (brightness), increase value when Shift is held | +|`QK_UNDERGLOW_SPEED_UP` |`UG_SPDU` |Increase effect speed (brightness), decrease speed when Shift is held| +|`QK_UNDERGLOW_SPEED_DOWN` |`UG_SPDD` |Decrease effect speed (brightness), increase speed when Shift is held| +|`RGB_MODE_PLAIN` |`RGB_M_P `|Static (no animation) mode (deprecated) | +|`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode (deprecated) | +|`RGB_MODE_RAINBOW` |`RGB_M_R` |Rainbow animation mode (deprecated) | +|`RGB_MODE_SWIRL` |`RGB_M_SW`|Swirl animation mode (deprecated) | +|`RGB_MODE_SNAKE` |`RGB_M_SN`|Snake animation mode (deprecated) | +|`RGB_MODE_KNIGHT` |`RGB_M_K` |"Knight Rider" animation mode (deprecated) | +|`RGB_MODE_XMAS` |`RGB_M_X` |Christmas animation mode (deprecated) | +|`RGB_MODE_GRADIENT` |`RGB_M_G` |Static gradient animation mode (deprecated) | +|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red, Green, Blue test animation mode (deprecated) | +|`RGB_MODE_TWINKLE` |`RGB_M_TW`|Twinkle animation mode (deprecated) | ## RGB Matrix Lighting {#rgb-matrix-lighting} From 38f07e1fd27b40c3a66707b2e1478832a4f927cb Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 6 Jul 2024 12:23:54 +1000 Subject: [PATCH 191/519] `handwired/swiftrax/bumblebee`: fix layout name (#24064) --- .../handwired/swiftrax/bumblebee/keyboard.json | 5 ++++- .../swiftrax/bumblebee/keymaps/default/keymap.c | 6 +++--- .../swiftrax/bumblebee/keymaps/via/keymap.c | 14 ++++---------- 3 files changed, 11 insertions(+), 14 deletions(-) diff --git a/keyboards/handwired/swiftrax/bumblebee/keyboard.json b/keyboards/handwired/swiftrax/bumblebee/keyboard.json index 9a68fe1b4fe..6dec52b59a4 100644 --- a/keyboards/handwired/swiftrax/bumblebee/keyboard.json +++ b/keyboards/handwired/swiftrax/bumblebee/keyboard.json @@ -36,8 +36,11 @@ }, "processor": "atmega32u4", "bootloader": "atmel-dfu", + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [1, 0], "x": 1, "y": 0, "w": 1.5}, diff --git a/keyboards/handwired/swiftrax/bumblebee/keymaps/default/keymap.c b/keyboards/handwired/swiftrax/bumblebee/keymaps/default/keymap.c index fef24f402fa..b3976f33db5 100644 --- a/keyboards/handwired/swiftrax/bumblebee/keymaps/default/keymap.c +++ b/keyboards/handwired/swiftrax/bumblebee/keymaps/default/keymap.c @@ -26,19 +26,19 @@ along with this program. If not, see . #define DRV2605L_V_PEAK 5 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT( KC_ESC , 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_DEL , KC_F13 , 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_HOME, KC_F14 , 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_END , KC_F15 , KC_LCTL, KC_LALT, KC_SPC , KC_MUTE, MO(1) , MO(2) , KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT_all( + [1] = LAYOUT( _______, _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [2] = LAYOUT_all( + [2] = 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 , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/handwired/swiftrax/bumblebee/keymaps/via/keymap.c b/keyboards/handwired/swiftrax/bumblebee/keymaps/via/keymap.c index 12791a69dd6..e25de6d7bd2 100644 --- a/keyboards/handwired/swiftrax/bumblebee/keymaps/via/keymap.c +++ b/keyboards/handwired/swiftrax/bumblebee/keymaps/via/keymap.c @@ -26,28 +26,22 @@ along with this program. If not, see . #define DRV2605L_V_PEAK 5 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT( KC_ESC , 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_DEL , KC_F13 , 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_HOME, KC_F14 , 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_END , KC_F15 , KC_LCTL, KC_LALT, KC_SPC , KC_MUTE, MO(1) , MO(2) , KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT_all( + [1] = LAYOUT( _______, _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [2] = LAYOUT_all( + [2] = 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 , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - [3] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), + ) }; From 300505bd9eab51585e36e82a1f3f58e9dbd76d0e Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Sat, 6 Jul 2024 16:08:55 +1000 Subject: [PATCH 192/519] [docs] Fixup home link. (#24068) --- builddefs/docsgen/.vitepress/config.mts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builddefs/docsgen/.vitepress/config.mts b/builddefs/docsgen/.vitepress/config.mts index 289e08ef919..54ecae2e86b 100644 --- a/builddefs/docsgen/.vitepress/config.mts +++ b/builddefs/docsgen/.vitepress/config.mts @@ -33,7 +33,7 @@ export default defineConfig(({ mode }) => { }, title: 'QMK Firmware', - nav: [{ text: "Home", link: "./" }], + nav: [{ text: "Home", link: "/" }], search: { provider: "local", From 2477aa91617f51fc945b844c325455a2db90a55b Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 6 Jul 2024 11:14:09 +1000 Subject: [PATCH 193/519] [docs] Update RGBLight (Underglow) keycode names (#23999) --- docs/features/encoders.md | 6 ++--- docs/features/rgblight.md | 48 ++++++++++++++++++++------------------- docs/keycodes.md | 43 +++++++++++++++++++---------------- 3 files changed, 51 insertions(+), 46 deletions(-) diff --git a/docs/features/encoders.md b/docs/features/encoders.md index 73cbb4f3f3f..a674eaa4a64 100644 --- a/docs/features/encoders.md +++ b/docs/features/encoders.md @@ -85,9 +85,9 @@ Your `keymap.c` will then need an encoder mapping defined (for four layers and t #if defined(ENCODER_MAP_ENABLE) const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { [0] = { ENCODER_CCW_CW(MS_WHLU, MS_WHLD), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, - [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, - [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, + [1] = { ENCODER_CCW_CW(UG_HUED, UG_HUEU), ENCODER_CCW_CW(UG_SATD, UG_SATU) }, + [2] = { ENCODER_CCW_CW(UG_VALD, UG_VALU), ENCODER_CCW_CW(UG_SPDD, UG_SPDU) }, + [3] = { ENCODER_CCW_CW(UG_PREV, UG_NEXT), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, }; #endif ``` diff --git a/docs/features/rgblight.md b/docs/features/rgblight.md index ece1c104677..794398a0f95 100644 --- a/docs/features/rgblight.md +++ b/docs/features/rgblight.md @@ -59,30 +59,32 @@ Changing the **Value** sets the overall brightness.
## Keycodes -|Key |Aliases |Description | -|-------------------|----------|--------------------------------------------------------------------| -|`RGB_TOG` | |Toggle RGB lighting on or off | -|`RGB_MODE_FORWARD` |`RGB_MOD` |Cycle through modes, reverse direction when Shift is held | -|`RGB_MODE_REVERSE` |`RGB_RMOD`|Cycle through modes in reverse, forward direction when Shift is held| -|`RGB_HUI` | |Increase hue, decrease hue when Shift is held | -|`RGB_HUD` | |Decrease hue, increase hue when Shift is held | -|`RGB_SAI` | |Increase saturation, decrease saturation when Shift is held | -|`RGB_SAD` | |Decrease saturation, increase saturation when Shift is held | -|`RGB_VAI` | |Increase value (brightness), decrease value when Shift is held | -|`RGB_VAD` | |Decrease value (brightness), increase value when Shift is held | -|`RGB_MODE_PLAIN` |`RGB_M_P `|Static (no animation) mode | -|`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode | -|`RGB_MODE_RAINBOW` |`RGB_M_R` |Rainbow animation mode | -|`RGB_MODE_SWIRL` |`RGB_M_SW`|Swirl animation mode | -|`RGB_MODE_SNAKE` |`RGB_M_SN`|Snake animation mode | -|`RGB_MODE_KNIGHT` |`RGB_M_K` |"Knight Rider" animation mode | -|`RGB_MODE_XMAS` |`RGB_M_X` |Christmas animation mode | -|`RGB_MODE_GRADIENT`|`RGB_M_G` |Static gradient animation mode | -|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red, Green, Blue test animation mode | -|`RGB_MODE_TWINKLE` |`RGB_M_TW`|Twinkle animation mode | +|Key |Aliases |Description | +|------------------------------|----------|---------------------------------------------------------------------| +|`QK_UNDERGLOW_TOGGLE` |`UG_TOGG` |Toggle RGB lighting on or off | +|`QK_UNDERGLOW_MODE_NEXT` |`UG_NEXT` |Cycle through modes, reverse direction when Shift is held | +|`QK_UNDERGLOW_MODE_PREVIOUS` |`UG_PREV` |Cycle through modes in reverse, forward direction when Shift is held | +|`QK_UNDERGLOW_HUE_UP` |`UG_HUEU` |Increase hue, decrease hue when Shift is held | +|`QK_UNDERGLOW_HUE_DOWN` |`UG_HUED` |Decrease hue, increase hue when Shift is held | +|`QK_UNDERGLOW_SATURATION_UP` |`UG_SATU` |Increase saturation, decrease saturation when Shift is held | +|`QK_UNDERGLOW_SATURATION_DOWN`|`UG_SATD` |Decrease saturation, increase saturation when Shift is held | +|`QK_UNDERGLOW_VALUE_UP` |`UG_VALU` |Increase value (brightness), decrease value when Shift is held | +|`QK_UNDERGLOW_VALUE_DOWN` |`UG_VALD` |Decrease value (brightness), increase value when Shift is held | +|`QK_UNDERGLOW_SPEED_UP` |`UG_SPDU` |Increase effect speed (brightness), decrease speed when Shift is held| +|`QK_UNDERGLOW_SPEED_DOWN` |`UG_SPDD` |Decrease effect speed (brightness), increase speed when Shift is held| +|`RGB_MODE_PLAIN` |`RGB_M_P `|Static (no animation) mode (deprecated) | +|`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode (deprecated) | +|`RGB_MODE_RAINBOW` |`RGB_M_R` |Rainbow animation mode (deprecated) | +|`RGB_MODE_SWIRL` |`RGB_M_SW`|Swirl animation mode (deprecated) | +|`RGB_MODE_SNAKE` |`RGB_M_SN`|Snake animation mode (deprecated) | +|`RGB_MODE_KNIGHT` |`RGB_M_K` |"Knight Rider" animation mode (deprecated) | +|`RGB_MODE_XMAS` |`RGB_M_X` |Christmas animation mode (deprecated) | +|`RGB_MODE_GRADIENT` |`RGB_M_G` |Static gradient animation mode (deprecated) | +|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red, Green, Blue test animation mode (deprecated) | +|`RGB_MODE_TWINKLE` |`RGB_M_TW`|Twinkle animation mode (deprecated) | ::: tip -`RGB_*` keycodes cannot be used with functions like `tap_code16(RGB_HUI)` as they're not USB HID keycodes. If you wish to replicate similar behaviour in custom code within your firmware (e.g. inside `encoder_update_user()` or `process_record_user()`), the equivalent [RGB functions](#functions) should be used instead. +These keycodes cannot be used with functions like `tap_code16()` as they are not USB HID keycodes. If you wish to replicate similar behaviour in custom code within your firmware (e.g. inside `encoder_update_user()` or `process_record_user()`), the equivalent [RGB functions](#functions) should be used instead. ::: @@ -358,7 +360,7 @@ Lighting layers on split keyboards will require layer state synced to the slave ### Overriding RGB Lighting on/off status -Normally lighting layers are not shown when RGB Lighting is disabled (e.g. with `RGB_TOG` keycode). If you would like lighting layers to work even when the RGB Lighting is otherwise off, add `#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF` to your `config.h`. +Normally lighting layers are not shown when RGB Lighting is disabled (e.g. with `UG_TOGG` keycode). If you would like lighting layers to work even when the RGB Lighting is otherwise off, add `#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF` to your `config.h`. ### Retain brightness diff --git a/docs/keycodes.md b/docs/keycodes.md index ea8b2e7b650..9038c2b6d73 100644 --- a/docs/keycodes.md +++ b/docs/keycodes.md @@ -704,26 +704,29 @@ See also: [Dynamic Tapping Term](tap_hold#dynamic-tapping-term) See also: [RGB Lighting](features/rgblight) -|Key |Aliases |Description | -|-------------------|----------|--------------------------------------------------------------------| -|`RGB_TOG` | |Toggle RGB lighting on or off | -|`RGB_MODE_FORWARD` |`RGB_MOD` |Cycle through modes, reverse direction when Shift is held | -|`RGB_MODE_REVERSE` |`RGB_RMOD`|Cycle through modes in reverse, forward direction when Shift is held| -|`RGB_HUI` | |Increase hue, decrease hue when Shift is held | -|`RGB_HUD` | |Decrease hue, increase hue when Shift is held | -|`RGB_SAI` | |Increase saturation, decrease saturation when Shift is held | -|`RGB_SAD` | |Decrease saturation, increase saturation when Shift is held | -|`RGB_VAI` | |Increase value (brightness), decrease value when Shift is held | -|`RGB_VAD` | |Decrease value (brightness), increase value when Shift is held | -|`RGB_MODE_PLAIN` |`RGB_M_P `|Static (no animation) mode | -|`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode | -|`RGB_MODE_RAINBOW` |`RGB_M_R` |Rainbow animation mode | -|`RGB_MODE_SWIRL` |`RGB_M_SW`|Swirl animation mode | -|`RGB_MODE_SNAKE` |`RGB_M_SN`|Snake animation mode | -|`RGB_MODE_KNIGHT` |`RGB_M_K` |"Knight Rider" animation mode | -|`RGB_MODE_XMAS` |`RGB_M_X` |Christmas animation mode | -|`RGB_MODE_GRADIENT`|`RGB_M_G` |Static gradient animation mode | -|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red,Green,Blue test animation mode | +|Key |Aliases |Description | +|------------------------------|----------|---------------------------------------------------------------------| +|`QK_UNDERGLOW_TOGGLE` |`UG_TOGG` |Toggle RGB lighting on or off | +|`QK_UNDERGLOW_MODE_NEXT` |`UG_NEXT` |Cycle through modes, reverse direction when Shift is held | +|`QK_UNDERGLOW_MODE_PREVIOUS` |`UG_PREV` |Cycle through modes in reverse, forward direction when Shift is held | +|`QK_UNDERGLOW_HUE_UP` |`UG_HUEU` |Increase hue, decrease hue when Shift is held | +|`QK_UNDERGLOW_HUE_DOWN` |`UG_HUED` |Decrease hue, increase hue when Shift is held | +|`QK_UNDERGLOW_SATURATION_UP` |`UG_SATU` |Increase saturation, decrease saturation when Shift is held | +|`QK_UNDERGLOW_SATURATION_DOWN`|`UG_SATD` |Decrease saturation, increase saturation when Shift is held | +|`QK_UNDERGLOW_VALUE_UP` |`UG_VALU` |Increase value (brightness), decrease value when Shift is held | +|`QK_UNDERGLOW_VALUE_DOWN` |`UG_VALD` |Decrease value (brightness), increase value when Shift is held | +|`QK_UNDERGLOW_SPEED_UP` |`UG_SPDU` |Increase effect speed (brightness), decrease speed when Shift is held| +|`QK_UNDERGLOW_SPEED_DOWN` |`UG_SPDD` |Decrease effect speed (brightness), increase speed when Shift is held| +|`RGB_MODE_PLAIN` |`RGB_M_P `|Static (no animation) mode (deprecated) | +|`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode (deprecated) | +|`RGB_MODE_RAINBOW` |`RGB_M_R` |Rainbow animation mode (deprecated) | +|`RGB_MODE_SWIRL` |`RGB_M_SW`|Swirl animation mode (deprecated) | +|`RGB_MODE_SNAKE` |`RGB_M_SN`|Snake animation mode (deprecated) | +|`RGB_MODE_KNIGHT` |`RGB_M_K` |"Knight Rider" animation mode (deprecated) | +|`RGB_MODE_XMAS` |`RGB_M_X` |Christmas animation mode (deprecated) | +|`RGB_MODE_GRADIENT` |`RGB_M_G` |Static gradient animation mode (deprecated) | +|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red, Green, Blue test animation mode (deprecated) | +|`RGB_MODE_TWINKLE` |`RGB_M_TW`|Twinkle animation mode (deprecated) | ## RGB Matrix Lighting {#rgb-matrix-lighting} From e4dfbb075e13f79f6a18cfa9f210016fb66dffef Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 6 Jul 2024 12:23:54 +1000 Subject: [PATCH 194/519] `handwired/swiftrax/bumblebee`: fix layout name (#24064) --- .../handwired/swiftrax/bumblebee/keyboard.json | 5 ++++- .../swiftrax/bumblebee/keymaps/default/keymap.c | 6 +++--- .../swiftrax/bumblebee/keymaps/via/keymap.c | 14 ++++---------- 3 files changed, 11 insertions(+), 14 deletions(-) diff --git a/keyboards/handwired/swiftrax/bumblebee/keyboard.json b/keyboards/handwired/swiftrax/bumblebee/keyboard.json index 9a68fe1b4fe..6dec52b59a4 100644 --- a/keyboards/handwired/swiftrax/bumblebee/keyboard.json +++ b/keyboards/handwired/swiftrax/bumblebee/keyboard.json @@ -36,8 +36,11 @@ }, "processor": "atmega32u4", "bootloader": "atmel-dfu", + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [1, 0], "x": 1, "y": 0, "w": 1.5}, diff --git a/keyboards/handwired/swiftrax/bumblebee/keymaps/default/keymap.c b/keyboards/handwired/swiftrax/bumblebee/keymaps/default/keymap.c index fef24f402fa..b3976f33db5 100644 --- a/keyboards/handwired/swiftrax/bumblebee/keymaps/default/keymap.c +++ b/keyboards/handwired/swiftrax/bumblebee/keymaps/default/keymap.c @@ -26,19 +26,19 @@ along with this program. If not, see . #define DRV2605L_V_PEAK 5 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT( KC_ESC , 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_DEL , KC_F13 , 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_HOME, KC_F14 , 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_END , KC_F15 , KC_LCTL, KC_LALT, KC_SPC , KC_MUTE, MO(1) , MO(2) , KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT_all( + [1] = LAYOUT( _______, _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [2] = LAYOUT_all( + [2] = 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 , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/handwired/swiftrax/bumblebee/keymaps/via/keymap.c b/keyboards/handwired/swiftrax/bumblebee/keymaps/via/keymap.c index 12791a69dd6..e25de6d7bd2 100644 --- a/keyboards/handwired/swiftrax/bumblebee/keymaps/via/keymap.c +++ b/keyboards/handwired/swiftrax/bumblebee/keymaps/via/keymap.c @@ -26,28 +26,22 @@ along with this program. If not, see . #define DRV2605L_V_PEAK 5 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT( KC_ESC , 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_DEL , KC_F13 , 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_HOME, KC_F14 , 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_END , KC_F15 , KC_LCTL, KC_LALT, KC_SPC , KC_MUTE, MO(1) , MO(2) , KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT_all( + [1] = LAYOUT( _______, _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [2] = LAYOUT_all( + [2] = 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 , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - [3] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), + ) }; From 1c02c3dfaddc3b781d49d4bd44303734c2ebf51a Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Sat, 6 Jul 2024 16:08:55 +1000 Subject: [PATCH 195/519] [docs] Fixup home link. (#24068) --- builddefs/docsgen/.vitepress/config.mts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builddefs/docsgen/.vitepress/config.mts b/builddefs/docsgen/.vitepress/config.mts index 289e08ef919..54ecae2e86b 100644 --- a/builddefs/docsgen/.vitepress/config.mts +++ b/builddefs/docsgen/.vitepress/config.mts @@ -33,7 +33,7 @@ export default defineConfig(({ mode }) => { }, title: 'QMK Firmware', - nav: [{ text: "Home", link: "./" }], + nav: [{ text: "Home", link: "/" }], search: { provider: "local", From 4fbb3956025627250e7a0d2439266006ebf3efc4 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 6 Jul 2024 18:21:11 +1000 Subject: [PATCH 196/519] `ano`: fix layout name (#24067) --- keyboards/ano/keyboard.json | 5 ++++- keyboards/ano/keymaps/default/keymap.c | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/keyboards/ano/keyboard.json b/keyboards/ano/keyboard.json index e676ce72707..9c46895f1af 100644 --- a/keyboards/ano/keyboard.json +++ b/keyboards/ano/keyboard.json @@ -36,8 +36,11 @@ }, "processor": "STM32F303", "bootloader": "stm32-dfu", + "layout_aliases": { + "LAYOUT_all": "LAYOUT" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, diff --git a/keyboards/ano/keymaps/default/keymap.c b/keyboards/ano/keymaps/default/keymap.c index 3e9907fa917..5832f764401 100644 --- a/keyboards/ano/keymaps/default/keymap.c +++ b/keyboards/ano/keymaps/default/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT( KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_MEDIA_PLAY_PAUSE, 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_NUM, KC_PSLS, KC_PAST, KC_B, 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_PMNS, @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT ), - [1] = LAYOUT_all( + [1] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, From e643fa03ef9ee9c1589aa4c9622bd62e52fd2e91 Mon Sep 17 00:00:00 2001 From: takashicompany Date: Sun, 7 Jul 2024 08:56:57 +0900 Subject: [PATCH 197/519] Fix dogtag/info.json (#23520) --- keyboards/takashicompany/dogtag/keyboard.json | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/keyboards/takashicompany/dogtag/keyboard.json b/keyboards/takashicompany/dogtag/keyboard.json index d65092ecca2..675b8e6bd25 100644 --- a/keyboards/takashicompany/dogtag/keyboard.json +++ b/keyboards/takashicompany/dogtag/keyboard.json @@ -19,7 +19,7 @@ }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1"], - "rows": ["B2", "B6", "B3"] + "rows": ["B2", "B6"] }, "diode_direction": "COL2ROW", "encoder": { @@ -34,7 +34,7 @@ "matrix_pins": { "right": { "cols": ["B1", "F7", "F6", "F5", "F4"], - "rows": ["B2", "B6", "B3"] + "rows": ["B2", "B6"] } } }, @@ -65,10 +65,10 @@ {"matrix": [0, 2], "x": 2, "y": 0}, {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [3, 1], "x": 8, "y": 0}, - {"matrix": [3, 2], "x": 9, "y": 0}, - {"matrix": [3, 3], "x": 10, "y": 0}, - {"matrix": [3, 4], "x": 11, "y": 0}, + {"matrix": [2, 1], "x": 8, "y": 0}, + {"matrix": [2, 2], "x": 9, "y": 0}, + {"matrix": [2, 3], "x": 10, "y": 0}, + {"matrix": [2, 4], "x": 11, "y": 0}, {"matrix": [1, 0], "x": 0, "y": 1}, {"matrix": [1, 1], "x": 1, "y": 1}, @@ -76,11 +76,11 @@ {"matrix": [1, 3], "x": 3, "y": 1}, {"matrix": [1, 4], "x": 4, "y": 2}, - {"matrix": [4, 0], "x": 7, "y": 2}, - {"matrix": [4, 1], "x": 8, "y": 1}, - {"matrix": [4, 2], "x": 9, "y": 1}, - {"matrix": [4, 3], "x": 10, "y": 1}, - {"matrix": [4, 4], "x": 11, "y": 1} + {"matrix": [3, 0], "x": 7, "y": 2}, + {"matrix": [3, 1], "x": 8, "y": 1}, + {"matrix": [3, 2], "x": 9, "y": 1}, + {"matrix": [3, 3], "x": 10, "y": 1}, + {"matrix": [3, 4], "x": 11, "y": 1} ] } } From 67d512e639806b24e68cb35170789f614e779638 Mon Sep 17 00:00:00 2001 From: Lex Brugman Date: Sun, 7 Jul 2024 01:58:04 +0200 Subject: [PATCH 198/519] Fix enter for two ANSI layouts on the TKD Cycle7 (#24070) --- keyboards/vertex/cycle7/keyboard.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/vertex/cycle7/keyboard.json b/keyboards/vertex/cycle7/keyboard.json index d9b2f301684..9d55b63fecd 100644 --- a/keyboards/vertex/cycle7/keyboard.json +++ b/keyboards/vertex/cycle7/keyboard.json @@ -252,7 +252,7 @@ {"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, 13], "x": 12.75, "y": 2, "w": 2.25}, {"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}, @@ -557,7 +557,7 @@ {"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, 13], "x": 12.75, "y": 2, "w": 2.25}, {"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}, From b23ddb9ad8b55717cc750f0b146fb5bbc503340b Mon Sep 17 00:00:00 2001 From: Less/Rikki <86894501+lesshonor@users.noreply.github.com> Date: Sun, 7 Jul 2024 15:09:48 -0400 Subject: [PATCH 199/519] [keyboard] mechwild/bbpad (#24072) * Initial bbpad commit * refactor: bbpad --------- Co-authored-by: Kyle McCreery --- keyboards/mechwild/bbpad/config.h | 10 + keyboards/mechwild/bbpad/f401/keyboard.json | 3 + keyboards/mechwild/bbpad/f411/keyboard.json | 3 + keyboards/mechwild/bbpad/halconf.h | 8 + keyboards/mechwild/bbpad/info.json | 195 ++++++++++++++++++ .../bbpad/keymaps/default/keymap.json | 29 +++ keyboards/mechwild/bbpad/mcuconf.h | 10 + keyboards/mechwild/bbpad/readme.md | 23 +++ 8 files changed, 281 insertions(+) create mode 100644 keyboards/mechwild/bbpad/config.h create mode 100644 keyboards/mechwild/bbpad/f401/keyboard.json create mode 100644 keyboards/mechwild/bbpad/f411/keyboard.json create mode 100644 keyboards/mechwild/bbpad/halconf.h create mode 100644 keyboards/mechwild/bbpad/info.json create mode 100644 keyboards/mechwild/bbpad/keymaps/default/keymap.json create mode 100644 keyboards/mechwild/bbpad/mcuconf.h create mode 100644 keyboards/mechwild/bbpad/readme.md diff --git a/keyboards/mechwild/bbpad/config.h b/keyboards/mechwild/bbpad/config.h new file mode 100644 index 00000000000..a0dd1826eb6 --- /dev/null +++ b/keyboards/mechwild/bbpad/config.h @@ -0,0 +1,10 @@ +// Copyright 2024 QMK Contributors (@qmk) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define WS2812_PWM_DRIVER PWMD4 +#define WS2812_PWM_CHANNEL 1 +#define WS2812_PWM_PAL_MODE 2 +#define WS2812_DMA_STREAM STM32_DMA1_STREAM6 +#define WS2812_DMA_CHANNEL 2 diff --git a/keyboards/mechwild/bbpad/f401/keyboard.json b/keyboards/mechwild/bbpad/f401/keyboard.json new file mode 100644 index 00000000000..797e9900595 --- /dev/null +++ b/keyboards/mechwild/bbpad/f401/keyboard.json @@ -0,0 +1,3 @@ +{ + "development_board": "blackpill_f401" +} diff --git a/keyboards/mechwild/bbpad/f411/keyboard.json b/keyboards/mechwild/bbpad/f411/keyboard.json new file mode 100644 index 00000000000..a41c5f4dd14 --- /dev/null +++ b/keyboards/mechwild/bbpad/f411/keyboard.json @@ -0,0 +1,3 @@ +{ + "development_board": "blackpill_f411" +} diff --git a/keyboards/mechwild/bbpad/halconf.h b/keyboards/mechwild/bbpad/halconf.h new file mode 100644 index 00000000000..db4caea1d05 --- /dev/null +++ b/keyboards/mechwild/bbpad/halconf.h @@ -0,0 +1,8 @@ +// Copyright 2023 QMK Contributors (@qmk) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define HAL_USE_PWM TRUE + +#include_next diff --git a/keyboards/mechwild/bbpad/info.json b/keyboards/mechwild/bbpad/info.json new file mode 100644 index 00000000000..73a383f311b --- /dev/null +++ b/keyboards/mechwild/bbpad/info.json @@ -0,0 +1,195 @@ +{ + "manufacturer": "MechWild", + "keyboard_name": "BBPad", + "maintainer": "kylemccreery", + "bootloader_instructions": "Hold down the BOOT button, then tap the NRST button on the BlackPill. Avoid touching the A11 and A12 pins.", + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "B1", "pin_b": "B0"} + ] + }, + "features": { + "bootmagic": true, + "encoder": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "matrix_pins": { + "cols": ["A4", "A3", "A2", "A1", "C15"], + "rows": ["B12", "B13", "B14", "B15", "A8"] + }, + "rgb_matrix": { + "animations": { + "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, + "flower_blooming": 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_fractal": true, + "pixel_rain": true, + "rainbow_beacon": true, + "rainbow_moving_chevron": true, + "rainbow_pinwheels": true, + "raindrops": true, + "riverflow": 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, + "starlight": true, + "starlight_dual_hue": true, + "starlight_dual_sat": true, + "typing_heatmap": true + }, + "center_point": [112, 75], + "driver": "ws2812", + "layout": [ + {"x": 195, "y": 53, "flags": 2}, + {"x": 195, "y": 97, "flags": 2}, + {"x": 142, "y": 144, "flags": 2}, + {"x": 74, "y": 144, "flags": 2}, + {"x": 8, "y": 97, "flags": 2}, + {"x": 8, "y": 53, "flags": 2}, + {"x": 74, "y": 9, "flags": 2}, + {"x": 142, "y": 9, "flags": 2}, + {"matrix": [0, 0], "x": 147, "y": 24, "flags": 4}, + {"matrix": [0, 1], "x": 147, "y": 58, "flags": 4}, + {"matrix": [0, 2], "x": 147, "y": 90, "flags": 4}, + {"matrix": [0, 3], "x": 147, "y": 124, "flags": 4}, + {"matrix": [1, 3], "x": 115, "y": 124, "flags": 4}, + {"matrix": [1, 2], "x": 115, "y": 90, "flags": 4}, + {"matrix": [1, 1], "x": 115, "y": 58, "flags": 4}, + {"matrix": [1, 0], "x": 115, "y": 24, "flags": 4}, + {"matrix": [2, 0], "x": 83, "y": 24, "flags": 4}, + {"matrix": [2, 1], "x": 83, "y": 58, "flags": 4}, + {"matrix": [2, 2], "x": 83, "y": 90, "flags": 4}, + {"matrix": [2, 3], "x": 83, "y": 124, "flags": 4}, + {"matrix": [3, 3], "x": 51, "y": 124, "flags": 4}, + {"matrix": [3, 2], "x": 51, "y": 90, "flags": 4}, + {"matrix": [3, 1], "x": 51, "y": 58, "flags": 4}, + {"matrix": [3, 0], "x": 51, "y": 24, "flags": 4}, + {"matrix": [4, 0], "x": 17, "y": 31, "flags": 4}, + {"matrix": [4, 1], "x": 17, "y": 53, "flags": 4}, + {"matrix": [4, 2], "x": 17, "y": 90, "flags": 4}, + {"matrix": [4, 3], "x": 17, "y": 124, "flags": 4} + ], + "max_brightness": 120 + }, + "url": "https://mechwild.com/product/bbpad/", + "usb": { + "device_version": "1.0.0", + "pid": "0x1713", + "vid": "0x6D77" + }, + "ws2812": { + "driver": "pwm", + "pin": "B6" + }, + "layout_aliases": { + "LAYOUT": "LAYOUT_vert" + }, + "layouts": { + "LAYOUT_horiz": { + "layout": [ + {"matrix": [4, 0], "x": 0, "y": 0}, + {"matrix": [3, 0], "x": 1, "y": 0}, + {"matrix": [2, 0], "x": 2, "y": 0}, + {"matrix": [1, 0], "x": 3, "y": 0}, + {"matrix": [0, 0], "x": 4, "y": 0}, + {"matrix": [4, 1], "x": 0, "y": 1}, + {"matrix": [3, 1], "x": 1, "y": 1}, + {"matrix": [2, 1], "x": 2, "y": 1}, + {"matrix": [1, 1], "x": 3, "y": 1}, + {"matrix": [0, 1], "x": 4, "y": 1}, + {"matrix": [4, 2], "x": 0, "y": 2}, + {"matrix": [3, 2], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [1, 2], "x": 3, "y": 2}, + {"matrix": [0, 2], "x": 4, "y": 2}, + {"matrix": [4, 3], "x": 0, "y": 3}, + {"matrix": [3, 3], "x": 1, "y": 3}, + {"matrix": [2, 3], "x": 2, "y": 3}, + {"matrix": [1, 3], "x": 3, "y": 3}, + {"matrix": [0, 3], "x": 4, "y": 3}, + {"matrix": [0, 4], "x": 5, "y": 3, "encoder": 0} + ] + }, + "LAYOUT_numpad": { + "layout": [ + {"matrix": [0, 4], "x": 3, "y": 0, "encoder": 0}, + {"matrix": [0, 0], "x": 0, "y": 1}, + {"matrix": [0, 1], "x": 1, "y": 1}, + {"matrix": [0, 2], "x": 2, "y": 1}, + {"matrix": [0, 3], "x": 3, "y": 1}, + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2, "h": 2}, + {"matrix": [2, 0], "x": 0, "y": 3}, + {"matrix": [2, 1], "x": 1, "y": 3}, + {"matrix": [2, 2], "x": 2, "y": 3}, + {"matrix": [3, 0], "x": 0, "y": 4}, + {"matrix": [3, 1], "x": 1, "y": 4}, + {"matrix": [3, 2], "x": 2, "y": 4}, + {"matrix": [4, 3], "x": 3, "y": 4, "h": 2}, + {"matrix": [4, 0], "x": 0, "y": 5, "w": 2}, + {"matrix": [4, 2], "x": 2, "y": 5} + ] + }, + "LAYOUT_vert": { + "layout": [ + {"matrix": [0, 4], "x": 3, "y": 0, "encoder": 0}, + {"matrix": [0, 0], "x": 0, "y": 1}, + {"matrix": [0, 1], "x": 1, "y": 1}, + {"matrix": [0, 2], "x": 2, "y": 1}, + {"matrix": [0, 3], "x": 3, "y": 1}, + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [1, 3], "x": 3, "y": 2}, + {"matrix": [2, 0], "x": 0, "y": 3}, + {"matrix": [2, 1], "x": 1, "y": 3}, + {"matrix": [2, 2], "x": 2, "y": 3}, + {"matrix": [2, 3], "x": 3, "y": 3}, + {"matrix": [3, 0], "x": 0, "y": 4}, + {"matrix": [3, 1], "x": 1, "y": 4}, + {"matrix": [3, 2], "x": 2, "y": 4}, + {"matrix": [3, 3], "x": 3, "y": 4}, + {"matrix": [4, 0], "x": 0, "y": 5}, + {"matrix": [4, 1], "x": 1, "y": 5}, + {"matrix": [4, 2], "x": 2, "y": 5}, + {"matrix": [4, 3], "x": 3, "y": 5} + ] + } + } +} diff --git a/keyboards/mechwild/bbpad/keymaps/default/keymap.json b/keyboards/mechwild/bbpad/keymaps/default/keymap.json new file mode 100644 index 00000000000..bffab8d66e7 --- /dev/null +++ b/keyboards/mechwild/bbpad/keymaps/default/keymap.json @@ -0,0 +1,29 @@ +{ + "keyboard": "mechwild/bbpad", + "keymap": "default", + "version": 1, + "layout": "LAYOUT_horiz", + "layers": [ + [ + "KC_P7", "KC_P8", "KC_P9", "KC_PSLS", "KC_CALC", + "KC_P4", "KC_P5", "KC_P6", "KC_PAST", "TG(1)", + "KC_P1", "KC_P2", "KC_P3", "KC_PPLS", "KC_BSPC", + "KC_P0", "KC_PDOT", "KC_NUM", "KC_PMNS", "KC_PENT", "KC_MUTE" + ], + [ + "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", + "RGB_RMOD", "KC_TRNS", "RGB_MOD", "KC_TRNS", "KC_TRNS", + "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", + "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_NUM", "RGB_TOG" + ] + ], + "config": { + "features": { + "encoder_map": true + } + }, + "encoders": [ + [{"ccw": "KC_VOLD", "cw": "KC_VOLU"}], + [{"ccw": "RGB_VAD", "cw": "RGB_VAI"}] + ] +} diff --git a/keyboards/mechwild/bbpad/mcuconf.h b/keyboards/mechwild/bbpad/mcuconf.h new file mode 100644 index 00000000000..ea8856635de --- /dev/null +++ b/keyboards/mechwild/bbpad/mcuconf.h @@ -0,0 +1,10 @@ +// Copyright 2023 QMK Contributors (@qmk) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include_next + +// WS2812 +#undef STM32_PWM_USE_TIM4 +#define STM32_PWM_USE_TIM4 TRUE diff --git a/keyboards/mechwild/bbpad/readme.md b/keyboards/mechwild/bbpad/readme.md new file mode 100644 index 00000000000..5655bc2ddea --- /dev/null +++ b/keyboards/mechwild/bbpad/readme.md @@ -0,0 +1,23 @@ +# BBPad + +![BBPad](https://i.imgur.com/FTrK1TC.png) + +A completely normal BlackPill-powered DIY numpad kit. + +The `f401` version is the standard for this kit, using an STM32F401 BlackPill. The `f411` version will not run on an STM32F401 BlackPill; if in doubt, use `f401`. + +* Keyboard Maintainer: [Kyle McCreery](https://github.com/kylemccreery) +* Hardware Supported: BBPad 1.0 +* Hardware Availability: [BBPad on MechWild](https://mechwild.com/product/bbpad/) + +Make example for this keyboard (after setting up your build environment): + + make mechwild/bbpad/f401:default + make mechwild/bbpad/f411:default + +Flashing example for this keyboard: + + make mechwild/bbpad/f401:default:flash + make mechwild/bbpad/f411: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). From 54f907bfe91f9cf452f7cee18f2534187763c2bc Mon Sep 17 00:00:00 2001 From: "Y.KEISUKE" Date: Mon, 8 Jul 2024 07:45:35 +0900 Subject: [PATCH 200/519] Fix for encoders and support ENCODER_MAP_ENABLE on Planck rev7 (#23967) Co-authored-by: Nick Brassel --- .../planck/rev7/keymaps/default/config.h | 7 ++ .../planck/rev7/keymaps/default/keymap.c | 89 ++++++++++++++++--- keyboards/planck/rev7/matrix.c | 22 +++-- keyboards/planck/rev7/readme.md | 37 +++++++- 4 files changed, 133 insertions(+), 22 deletions(-) diff --git a/keyboards/planck/rev7/keymaps/default/config.h b/keyboards/planck/rev7/keymaps/default/config.h index fbbab996e1e..937d6a5e419 100644 --- a/keyboards/planck/rev7/keymaps/default/config.h +++ b/keyboards/planck/rev7/keymaps/default/config.h @@ -41,3 +41,10 @@ - etc. */ // #define MIDI_ADVANCED + +/* + * Encoder options + */ +// #define PLANCK_ENCODER_SETTLE_PIN_STATE_DELAY 20 +// #define ENCODER_MAP_KEY_DELAY 10 +// #define ENCODER_RESOLUTION 4 diff --git a/keyboards/planck/rev7/keymaps/default/keymap.c b/keyboards/planck/rev7/keymaps/default/keymap.c index 4ac4c0de4f8..85f5097332c 100644 --- a/keyboards/planck/rev7/keymaps/default/keymap.c +++ b/keyboards/planck/rev7/keymaps/default/keymap.c @@ -147,13 +147,69 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_planck_grid( - _______, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DB_TOGG, UG_TOGG, UG_NEXT, UG_HUEU, UG_HUED, UG_SATU, UG_SATD, UG_SPDU, UG_SPDD, KC_DEL , _______, EE_CLR, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; + +#ifdef ENCODER_MAP_ENABLE +/* Rotary Encoders + */ +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + /* Qwerty + * v- (index) Clockwise / Counter Clockwise v- (index) Clockwise / Counter Clockwise + * ,---------------------------------------------------------------------------------------. + * | (0) Vol- / Vol+ | | | | | | | | | | | (4) Vol- / Vol+ | + * |-----------------------+---+---+---+---+---+---+---+---+---+---+-----------------------| + * | (1) KC_MNXT / KC_MPRV | | | | | | | | | | | (5) KC_MNXT / KC_MPRV | + * |-----------------------+---+---+---+---+---+---+---+---+---+---+-----------------------| + * | (2) KC_WBAK / KC_WFWD | | | | | | | | | | | (6) KC_SPC / KC_ENT | + * |-----------------------+---+---+---+---+---+---+---+---+---+---+-----------------------| + * | (3) KC_LEFT / KC_RGHT | | | | | | | | | | (7) KC_DOWN / KC_UP | + * `---------------------------------------------------------------------------------------' + */ + [_QWERTY] = { + // LEFT SIDE (index 0 to 3) + ENCODER_CCW_CW(KC_VOLU, KC_VOLD), + ENCODER_CCW_CW(KC_MNXT, KC_MPRV), + ENCODER_CCW_CW(KC_WBAK, KC_WFWD), + ENCODER_CCW_CW(KC_LEFT, KC_RGHT), + // RIGHT SIDE (index 4 to 7) + ENCODER_CCW_CW(KC_VOLU, KC_VOLD), + ENCODER_CCW_CW(KC_MNXT, KC_MPRV), + ENCODER_CCW_CW(KC_SPC, KC_ENT), + ENCODER_CCW_CW(KC_DOWN, KC_UP) + }, + + /* Adjust (Lower + Raise) + * v- (index) Clockwise / Counter Clockwise v- (index) Clockwise / Counter Clockwise + * ,---------------------------------------------------------------------------------------. + * | (0) _______ / _______ | | | | | | | | | | | (4) _______ / _______ | + * |-----------------------+---+---+---+---+---+---+---+---+---+---+-----------------------| + * | (1) _______ / _______ | | | | | | | | | | | (5) _______ / _______ | + * |-----------------------+---+---+---+---+---+---+---+---+---+---+-----------------------| + * | (2) UG_NEXT / UG_PREV | | | | | | | | | | | (6) SAT- / SAT+ | + * |-----------------------+---+---+---+---+---+---+---+---+---+---+-----------------------| + * | (3) UG_VALD / UG_VALU | | | | | | | | | | (7) HUE- / HUE+ | + * `---------------------------------------------------------------------------------------' + */ + [_ADJUST] = { + // LEFT SIDE (index 0 to 3) + ENCODER_CCW_CW(_______, _______), + ENCODER_CCW_CW(_______, _______), + ENCODER_CCW_CW(UG_NEXT, UG_PREV), + ENCODER_CCW_CW(UG_VALD, UG_VALU), + // RIGHT SIDE (index 4 to 7) + ENCODER_CCW_CW(_______, _______), + ENCODER_CCW_CW(_______, _______), + ENCODER_CCW_CW(UG_SATD, UG_SATU), + ENCODER_CCW_CW(UG_HUEU, UG_HUED) + } +}; +#endif /* clang-format on */ #ifdef AUDIO_ENABLE @@ -161,11 +217,18 @@ float plover_song[][2] = SONG(PLOVER_SOUND); float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND); #endif +bool play_encoder_melody(uint8_t index, bool clockwise); + layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); } bool process_record_user(uint16_t keycode, keyrecord_t *record) { +#ifdef ENCODER_MAP_ENABLE + if (IS_ENCODEREVENT(record->event) && record->event.pressed) { + play_encoder_melody(record->event.key.col, record->event.type == ENCODER_CCW_EVENT); + } +#endif switch (keycode) { case QWERTY: if (record->event.pressed) { @@ -228,13 +291,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { /* clang-format off */ float melody[8][2][2] = { - {{440.0f, 8}, {440.0f, 24}}, - {{440.0f, 8}, {440.0f, 24}}, - {{440.0f, 8}, {440.0f, 24}}, - {{440.0f, 8}, {440.0f, 24}}, - {{440.0f, 8}, {440.0f, 24}}, - {{440.0f, 8}, {440.0f, 24}}, - {{440.0f, 8}, {440.0f, 24}}, + {{440.0f, 8}, {440.0f, 24}}, + {{440.0f, 8}, {440.0f, 24}}, + {{440.0f, 8}, {440.0f, 24}}, + {{440.0f, 8}, {440.0f, 24}}, + {{440.0f, 8}, {440.0f, 24}}, + {{440.0f, 8}, {440.0f, 24}}, + {{440.0f, 8}, {440.0f, 24}}, {{440.0f, 8}, {440.0f, 24}}, }; /* clang-format on */ @@ -251,7 +314,7 @@ float melody[8][2][2] = { #define ET12_MAJOR_THIRD 1.259921 #define ET12_PERFECT_FOURTH 1.33484 #define ET12_TRITONE 1.414214 -#define ET12_PERFECT_FIFTH 1.498307 +#define ET12_PERFECT_FIFTH 1.498307 deferred_token tokens[8]; @@ -260,7 +323,7 @@ uint32_t reset_note(uint32_t trigger_time, void *note) { return 0; } -bool encoder_update_user(uint8_t index, bool clockwise) { +bool play_encoder_melody(uint8_t index, bool clockwise) { cancel_deferred_exec(tokens[index]); if (clockwise) { melody[index][1][0] = melody[index][1][0] * ET12_MINOR_SECOND; @@ -275,6 +338,10 @@ bool encoder_update_user(uint8_t index, bool clockwise) { return false; } +bool encoder_update_user(uint8_t index, bool clockwise) { + return play_encoder_melody(index, clockwise); +} + bool dip_switch_update_user(uint8_t index, bool active) { switch (index) { case 0: { @@ -303,4 +370,4 @@ bool dip_switch_update_user(uint8_t index, bool active) { } } return true; -} \ No newline at end of file +} diff --git a/keyboards/planck/rev7/matrix.c b/keyboards/planck/rev7/matrix.c index 777bd6a7fe8..44f532db656 100644 --- a/keyboards/planck/rev7/matrix.c +++ b/keyboards/planck/rev7/matrix.c @@ -111,13 +111,21 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) { return changed; } +#if defined(ENCODER_ENABLE) || defined(ENCODER_MAP_ENABLE) +#if !defined(PLANCK_ENCODER_SETTLE_PIN_STATE_DELAY) +# define PLANCK_ENCODER_SETTLE_PIN_STATE_DELAY 10 +#endif + +void encoder_quadrature_init_pin(uint8_t index, bool pad_b) { +} + uint8_t encoder_quadrature_read_pin(uint8_t index, bool pad_b) { - pin_t pin = pad_b ? B13: B12; - gpio_set_pin_input_high(pin); - gpio_write_pin_low(matrix_row_pins[index]); - wait_us(10); - uint8_t ret = gpio_read_pin(pin) ? 1 : 0; - gpio_set_pin_input_low(matrix_row_pins[index]); - gpio_set_pin_input_low(pin); + pin_t col_pin = pad_b ? B13 : B12; + gpio_set_pin_output(col_pin); + gpio_write_pin_high(col_pin); + wait_us(PLANCK_ENCODER_SETTLE_PIN_STATE_DELAY); + uint8_t ret = gpio_read_pin(matrix_row_pins[index]) ? 0 : 1; + gpio_set_pin_input_low(col_pin); return ret; } +#endif // ENCODER_ENABLE || ENCODER_MAP_ENABLE diff --git a/keyboards/planck/rev7/readme.md b/keyboards/planck/rev7/readme.md index 6a4df377046..940976bfce8 100644 --- a/keyboards/planck/rev7/readme.md +++ b/keyboards/planck/rev7/readme.md @@ -14,7 +14,8 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to ## Encoders -Encoders must have matching pulse & detent resolutions (e.g. 24/24) for the scanning to work properly. Multiple encoders can be used at the same time, and are zero-indexed (compared to being one-indexed on the PCB's silkscreen) in the `encoder_update_user(uint8_t index, bool clockwise)` function: +Encoders must have matching pulse & detent resolutions (e.g. 24/24) for the scanning to work properly. Multiple encoders can be used at the same time. +If an encoder has a switch built-in, it's connected to the key at that location with index number: ``` ,-----------------------------------------------------------------------------------. @@ -28,7 +29,35 @@ Encoders must have matching pulse & detent resolutions (e.g. 24/24) for the scan `-----------------------------------------------------------------------------------' ``` -If an encoder has a switch built-in, it's connected to the key at that location. On the default keymap, each encoder will play its own rising/falling tone sequence when rotated, and will reset the pitch after one second of inactivity. The encoder map feature is not currently supported. +Planck rev7 supports `ENCODER_ENABLE` and `ENCODER_MAP_ENABLE`. If both `ENCODER_MAP_ENABLE` and `ENCODER_ENABLE` are defined, `ENCODER_MAP_ENABLE` takes precedence. On the default keymap, each encoder will play its own rising/falling tone sequence when rotated, and will reset the pitch after one second of inactivity. + +### With ENCODER_ENABLE + +Define it as follows in `rules.mk`: + +``` +ENCODER_ENABLE = yes +``` + +Zero-indexed (compared to being one-indexed on the PCB's silkscreen) in the `encoder_update_user(uint8_t index, bool clockwise)` function. + +### With ENCODER_MAP_ENABLE + +Define it as follows in `rules.mk`: + +``` +ENCODER_ENABLE = yes +ENCODER_MAP_ENABLE = yes +``` + +If you enable `ENCODER_MAP_ENABLE`, define `const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS]` and configure your keycodes. If you enable `ENCODER_MAP_ENABLE`, `encoder_update_user` is not used directly. + +Additionally, you can use the following `config.h` options: + +```c +#define ENCODER_MAP_KEY_DELAY 10 +#define ENCODER_RESOLUTION 4 +``` ## Some Planck-specific config.h options: @@ -37,6 +66,6 @@ If an encoder has a switch built-in, it's connected to the key at that location. #define PLANCK_WATCHDOG_TIMEOUT 1.0 // disables the watchdog timer - you may want to disable the watchdog timer if you use longer macros #define PLANCK_WATCHDOG_DISABLE -// the resolution of the encoders used in the encoder matrix -#define PLANCK_ENCODER_RESOLUTION 4 +// Sets the time to wait for the rotary encoder pin state to stabilize while scanning (Default is 20(us)) +#define PLANCK_ENCODER_SETTLE_PIN_STATE_DELAY 20 ``` From 8336b5c72f85ff89e20148930d2746d3c373404c Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 8 Jul 2024 15:56:57 +1000 Subject: [PATCH 201/519] `ash1800`: add additional layouts (#24065) --- keyboards/ash1800/keyboard.json | 492 ++++++++++++++++++++++++++++ keyboards/ash1800/matrix_diagram.md | 26 ++ 2 files changed, 518 insertions(+) create mode 100644 keyboards/ash1800/matrix_diagram.md diff --git a/keyboards/ash1800/keyboard.json b/keyboards/ash1800/keyboard.json index c2244a7ad70..7156172173d 100644 --- a/keyboards/ash1800/keyboard.json +++ b/keyboards/ash1800/keyboard.json @@ -155,6 +155,498 @@ {"matrix": [11, 8], "x": 14.25, "y": 6.25}, {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + {"matrix": [11, 5], "x": 16.5, "y": 6}, + {"matrix": [11, 6], "x": 17.5, "y": 6} + ] + }, + "LAYOUT_ansi": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.25, "y": 0}, + {"matrix": [0, 2], "x": 2.25, "y": 0}, + {"matrix": [0, 3], "x": 3.25, "y": 0}, + {"matrix": [6, 0], "x": 4.25, "y": 0}, + + {"matrix": [6, 1], "x": 5.5, "y": 0}, + {"matrix": [6, 2], "x": 6.5, "y": 0}, + {"matrix": [6, 3], "x": 7.5, "y": 0}, + {"matrix": [0, 4], "x": 8.5, "y": 0}, + + {"matrix": [0, 5], "x": 9.75, "y": 0}, + {"matrix": [0, 6], "x": 10.75, "y": 0}, + {"matrix": [0, 7], "x": 11.75, "y": 0}, + {"matrix": [0, 8], "x": 12.75, "y": 0}, + + {"matrix": [5, 4], "x": 15.5, "y": 0}, + {"matrix": [5, 5], "x": 16.5, "y": 0}, + {"matrix": [5, 6], "x": 17.5, "y": 0}, + {"matrix": [5, 7], "x": 18.5, "y": 0}, + + {"matrix": [6, 4], "x": 15.5, "y": 1}, + {"matrix": [6, 5], "x": 16.5, "y": 1}, + {"matrix": [6, 6], "x": 17.5, "y": 1}, + {"matrix": [6, 7], "x": 18.5, "y": 1}, + + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [1, 3], "x": 3, "y": 2}, + {"matrix": [7, 0], "x": 4, "y": 2}, + {"matrix": [7, 1], "x": 5, "y": 2}, + {"matrix": [7, 2], "x": 6, "y": 2}, + {"matrix": [7, 3], "x": 7, "y": 2}, + {"matrix": [1, 4], "x": 8, "y": 2}, + {"matrix": [1, 5], "x": 9, "y": 2}, + {"matrix": [1, 6], "x": 10, "y": 2}, + {"matrix": [1, 7], "x": 11, "y": 2}, + {"matrix": [1, 8], "x": 12, "y": 2}, + {"matrix": [1, 9], "x": 13, "y": 2, "w": 2}, + + {"matrix": [7, 4], "x": 15.5, "y": 2}, + {"matrix": [7, 5], "x": 16.5, "y": 2}, + {"matrix": [7, 6], "x": 17.5, "y": 2}, + {"matrix": [7, 7], "x": 18.5, "y": 2}, + + {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 3}, + {"matrix": [2, 2], "x": 2.5, "y": 3}, + {"matrix": [2, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 0], "x": 4.5, "y": 3}, + {"matrix": [8, 1], "x": 5.5, "y": 3}, + {"matrix": [8, 2], "x": 6.5, "y": 3}, + {"matrix": [8, 3], "x": 7.5, "y": 3}, + {"matrix": [2, 4], "x": 8.5, "y": 3}, + {"matrix": [2, 5], "x": 9.5, "y": 3}, + {"matrix": [2, 6], "x": 10.5, "y": 3}, + {"matrix": [2, 7], "x": 11.5, "y": 3}, + {"matrix": [2, 8], "x": 12.5, "y": 3}, + {"matrix": [2, 9], "x": 13.5, "y": 3, "w": 1.5}, + + {"matrix": [8, 4], "x": 15.5, "y": 3}, + {"matrix": [8, 5], "x": 16.5, "y": 3}, + {"matrix": [8, 6], "x": 17.5, "y": 3}, + {"matrix": [8, 7], "x": 18.5, "y": 3}, + + {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 4}, + {"matrix": [3, 2], "x": 2.75, "y": 4}, + {"matrix": [3, 3], "x": 3.75, "y": 4}, + {"matrix": [9, 0], "x": 4.75, "y": 4}, + {"matrix": [9, 1], "x": 5.75, "y": 4}, + {"matrix": [9, 2], "x": 6.75, "y": 4}, + {"matrix": [9, 3], "x": 7.75, "y": 4}, + {"matrix": [3, 4], "x": 8.75, "y": 4}, + {"matrix": [3, 5], "x": 9.75, "y": 4}, + {"matrix": [3, 6], "x": 10.75, "y": 4}, + {"matrix": [3, 7], "x": 11.75, "y": 4}, + {"matrix": [3, 8], "x": 12.75, "y": 4, "w": 2.25}, + + {"matrix": [9, 4], "x": 15.5, "y": 4}, + {"matrix": [9, 5], "x": 16.5, "y": 4}, + {"matrix": [9, 6], "x": 17.5, "y": 4}, + {"matrix": [9, 7], "x": 18.5, "y": 4}, + + {"matrix": [4, 0], "x": 0, "y": 5, "w": 2.25}, + {"matrix": [4, 2], "x": 2.25, "y": 5}, + {"matrix": [4, 3], "x": 3.25, "y": 5}, + {"matrix": [10, 0], "x": 4.25, "y": 5}, + {"matrix": [10, 1], "x": 5.25, "y": 5}, + {"matrix": [10, 2], "x": 6.25, "y": 5}, + {"matrix": [10, 3], "x": 7.25, "y": 5}, + {"matrix": [4, 4], "x": 8.25, "y": 5}, + {"matrix": [4, 5], "x": 9.25, "y": 5}, + {"matrix": [4, 6], "x": 10.25, "y": 5}, + {"matrix": [4, 7], "x": 11.25, "y": 5}, + {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75}, + + {"matrix": [10, 9], "x": 14.25, "y": 5.25}, + + {"matrix": [10, 4], "x": 15.5, "y": 5}, + {"matrix": [10, 5], "x": 16.5, "y": 5}, + {"matrix": [10, 6], "x": 17.5, "y": 5}, + {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2}, + + {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.25}, + {"matrix": [5, 1], "x": 1.25, "y": 6, "w": 1.25}, + {"matrix": [5, 2], "x": 2.5, "y": 6, "w": 1.25}, + {"matrix": [5, 3], "x": 3.75, "y": 6, "w": 6.25}, + {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5}, + {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5}, + + {"matrix": [10, 8], "x": 13.25, "y": 6.25}, + {"matrix": [11, 8], "x": 14.25, "y": 6.25}, + {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + + {"matrix": [11, 5], "x": 16.5, "y": 6}, + {"matrix": [11, 6], "x": 17.5, "y": 6} + ] + }, + "LAYOUT_ansi_wkl": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.25, "y": 0}, + {"matrix": [0, 2], "x": 2.25, "y": 0}, + {"matrix": [0, 3], "x": 3.25, "y": 0}, + {"matrix": [6, 0], "x": 4.25, "y": 0}, + + {"matrix": [6, 1], "x": 5.5, "y": 0}, + {"matrix": [6, 2], "x": 6.5, "y": 0}, + {"matrix": [6, 3], "x": 7.5, "y": 0}, + {"matrix": [0, 4], "x": 8.5, "y": 0}, + + {"matrix": [0, 5], "x": 9.75, "y": 0}, + {"matrix": [0, 6], "x": 10.75, "y": 0}, + {"matrix": [0, 7], "x": 11.75, "y": 0}, + {"matrix": [0, 8], "x": 12.75, "y": 0}, + + {"matrix": [5, 4], "x": 15.5, "y": 0}, + {"matrix": [5, 5], "x": 16.5, "y": 0}, + {"matrix": [5, 6], "x": 17.5, "y": 0}, + {"matrix": [5, 7], "x": 18.5, "y": 0}, + + {"matrix": [6, 4], "x": 15.5, "y": 1}, + {"matrix": [6, 5], "x": 16.5, "y": 1}, + {"matrix": [6, 6], "x": 17.5, "y": 1}, + {"matrix": [6, 7], "x": 18.5, "y": 1}, + + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [1, 3], "x": 3, "y": 2}, + {"matrix": [7, 0], "x": 4, "y": 2}, + {"matrix": [7, 1], "x": 5, "y": 2}, + {"matrix": [7, 2], "x": 6, "y": 2}, + {"matrix": [7, 3], "x": 7, "y": 2}, + {"matrix": [1, 4], "x": 8, "y": 2}, + {"matrix": [1, 5], "x": 9, "y": 2}, + {"matrix": [1, 6], "x": 10, "y": 2}, + {"matrix": [1, 7], "x": 11, "y": 2}, + {"matrix": [1, 8], "x": 12, "y": 2}, + {"matrix": [1, 9], "x": 13, "y": 2, "w": 2}, + + {"matrix": [7, 4], "x": 15.5, "y": 2}, + {"matrix": [7, 5], "x": 16.5, "y": 2}, + {"matrix": [7, 6], "x": 17.5, "y": 2}, + {"matrix": [7, 7], "x": 18.5, "y": 2}, + + {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 3}, + {"matrix": [2, 2], "x": 2.5, "y": 3}, + {"matrix": [2, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 0], "x": 4.5, "y": 3}, + {"matrix": [8, 1], "x": 5.5, "y": 3}, + {"matrix": [8, 2], "x": 6.5, "y": 3}, + {"matrix": [8, 3], "x": 7.5, "y": 3}, + {"matrix": [2, 4], "x": 8.5, "y": 3}, + {"matrix": [2, 5], "x": 9.5, "y": 3}, + {"matrix": [2, 6], "x": 10.5, "y": 3}, + {"matrix": [2, 7], "x": 11.5, "y": 3}, + {"matrix": [2, 8], "x": 12.5, "y": 3}, + {"matrix": [2, 9], "x": 13.5, "y": 3, "w": 1.5}, + + {"matrix": [8, 4], "x": 15.5, "y": 3}, + {"matrix": [8, 5], "x": 16.5, "y": 3}, + {"matrix": [8, 6], "x": 17.5, "y": 3}, + {"matrix": [8, 7], "x": 18.5, "y": 3}, + + {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 4}, + {"matrix": [3, 2], "x": 2.75, "y": 4}, + {"matrix": [3, 3], "x": 3.75, "y": 4}, + {"matrix": [9, 0], "x": 4.75, "y": 4}, + {"matrix": [9, 1], "x": 5.75, "y": 4}, + {"matrix": [9, 2], "x": 6.75, "y": 4}, + {"matrix": [9, 3], "x": 7.75, "y": 4}, + {"matrix": [3, 4], "x": 8.75, "y": 4}, + {"matrix": [3, 5], "x": 9.75, "y": 4}, + {"matrix": [3, 6], "x": 10.75, "y": 4}, + {"matrix": [3, 7], "x": 11.75, "y": 4}, + {"matrix": [3, 8], "x": 12.75, "y": 4, "w": 2.25}, + + {"matrix": [9, 4], "x": 15.5, "y": 4}, + {"matrix": [9, 5], "x": 16.5, "y": 4}, + {"matrix": [9, 6], "x": 17.5, "y": 4}, + {"matrix": [9, 7], "x": 18.5, "y": 4}, + + {"matrix": [4, 0], "x": 0, "y": 5, "w": 2.25}, + {"matrix": [4, 2], "x": 2.25, "y": 5}, + {"matrix": [4, 3], "x": 3.25, "y": 5}, + {"matrix": [10, 0], "x": 4.25, "y": 5}, + {"matrix": [10, 1], "x": 5.25, "y": 5}, + {"matrix": [10, 2], "x": 6.25, "y": 5}, + {"matrix": [10, 3], "x": 7.25, "y": 5}, + {"matrix": [4, 4], "x": 8.25, "y": 5}, + {"matrix": [4, 5], "x": 9.25, "y": 5}, + {"matrix": [4, 6], "x": 10.25, "y": 5}, + {"matrix": [4, 7], "x": 11.25, "y": 5}, + {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75}, + + {"matrix": [10, 9], "x": 14.25, "y": 5.25}, + + {"matrix": [10, 4], "x": 15.5, "y": 5}, + {"matrix": [10, 5], "x": 16.5, "y": 5}, + {"matrix": [10, 6], "x": 17.5, "y": 5}, + {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2}, + + {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.5}, + {"matrix": [5, 1], "x": 1.5, "y": 6, "w": 1.5}, + {"matrix": [5, 3], "x": 3, "y": 6, "w": 7}, + {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5}, + {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5}, + + {"matrix": [10, 8], "x": 13.25, "y": 6.25}, + {"matrix": [11, 8], "x": 14.25, "y": 6.25}, + {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + + {"matrix": [11, 5], "x": 16.5, "y": 6}, + {"matrix": [11, 6], "x": 17.5, "y": 6} + ] + }, + "LAYOUT_iso": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.25, "y": 0}, + {"matrix": [0, 2], "x": 2.25, "y": 0}, + {"matrix": [0, 3], "x": 3.25, "y": 0}, + {"matrix": [6, 0], "x": 4.25, "y": 0}, + + {"matrix": [6, 1], "x": 5.5, "y": 0}, + {"matrix": [6, 2], "x": 6.5, "y": 0}, + {"matrix": [6, 3], "x": 7.5, "y": 0}, + {"matrix": [0, 4], "x": 8.5, "y": 0}, + + {"matrix": [0, 5], "x": 9.75, "y": 0}, + {"matrix": [0, 6], "x": 10.75, "y": 0}, + {"matrix": [0, 7], "x": 11.75, "y": 0}, + {"matrix": [0, 8], "x": 12.75, "y": 0}, + + {"matrix": [5, 4], "x": 15.5, "y": 0}, + {"matrix": [5, 5], "x": 16.5, "y": 0}, + {"matrix": [5, 6], "x": 17.5, "y": 0}, + {"matrix": [5, 7], "x": 18.5, "y": 0}, + + {"matrix": [6, 4], "x": 15.5, "y": 1}, + {"matrix": [6, 5], "x": 16.5, "y": 1}, + {"matrix": [6, 6], "x": 17.5, "y": 1}, + {"matrix": [6, 7], "x": 18.5, "y": 1}, + + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [1, 3], "x": 3, "y": 2}, + {"matrix": [7, 0], "x": 4, "y": 2}, + {"matrix": [7, 1], "x": 5, "y": 2}, + {"matrix": [7, 2], "x": 6, "y": 2}, + {"matrix": [7, 3], "x": 7, "y": 2}, + {"matrix": [1, 4], "x": 8, "y": 2}, + {"matrix": [1, 5], "x": 9, "y": 2}, + {"matrix": [1, 6], "x": 10, "y": 2}, + {"matrix": [1, 7], "x": 11, "y": 2}, + {"matrix": [1, 8], "x": 12, "y": 2}, + {"matrix": [1, 9], "x": 13, "y": 2, "w": 2}, + + {"matrix": [7, 4], "x": 15.5, "y": 2}, + {"matrix": [7, 5], "x": 16.5, "y": 2}, + {"matrix": [7, 6], "x": 17.5, "y": 2}, + {"matrix": [7, 7], "x": 18.5, "y": 2}, + + {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 3}, + {"matrix": [2, 2], "x": 2.5, "y": 3}, + {"matrix": [2, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 0], "x": 4.5, "y": 3}, + {"matrix": [8, 1], "x": 5.5, "y": 3}, + {"matrix": [8, 2], "x": 6.5, "y": 3}, + {"matrix": [8, 3], "x": 7.5, "y": 3}, + {"matrix": [2, 4], "x": 8.5, "y": 3}, + {"matrix": [2, 5], "x": 9.5, "y": 3}, + {"matrix": [2, 6], "x": 10.5, "y": 3}, + {"matrix": [2, 7], "x": 11.5, "y": 3}, + {"matrix": [2, 8], "x": 12.5, "y": 3}, + + {"matrix": [8, 4], "x": 15.5, "y": 3}, + {"matrix": [8, 5], "x": 16.5, "y": 3}, + {"matrix": [8, 6], "x": 17.5, "y": 3}, + {"matrix": [8, 7], "x": 18.5, "y": 3}, + + {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 4}, + {"matrix": [3, 2], "x": 2.75, "y": 4}, + {"matrix": [3, 3], "x": 3.75, "y": 4}, + {"matrix": [9, 0], "x": 4.75, "y": 4}, + {"matrix": [9, 1], "x": 5.75, "y": 4}, + {"matrix": [9, 2], "x": 6.75, "y": 4}, + {"matrix": [9, 3], "x": 7.75, "y": 4}, + {"matrix": [3, 4], "x": 8.75, "y": 4}, + {"matrix": [3, 5], "x": 9.75, "y": 4}, + {"matrix": [3, 6], "x": 10.75, "y": 4}, + {"matrix": [3, 7], "x": 11.75, "y": 4}, + {"matrix": [2, 9], "x": 12.75, "y": 4}, + {"matrix": [3, 8], "x": 13.75, "y": 3, "w": 1.25, "h": 2}, + + {"matrix": [9, 4], "x": 15.5, "y": 4}, + {"matrix": [9, 5], "x": 16.5, "y": 4}, + {"matrix": [9, 6], "x": 17.5, "y": 4}, + {"matrix": [9, 7], "x": 18.5, "y": 4}, + + {"matrix": [4, 0], "x": 0, "y": 5, "w": 1.25}, + {"matrix": [4, 1], "x": 1.25, "y": 5}, + {"matrix": [4, 2], "x": 2.25, "y": 5}, + {"matrix": [4, 3], "x": 3.25, "y": 5}, + {"matrix": [10, 0], "x": 4.25, "y": 5}, + {"matrix": [10, 1], "x": 5.25, "y": 5}, + {"matrix": [10, 2], "x": 6.25, "y": 5}, + {"matrix": [10, 3], "x": 7.25, "y": 5}, + {"matrix": [4, 4], "x": 8.25, "y": 5}, + {"matrix": [4, 5], "x": 9.25, "y": 5}, + {"matrix": [4, 6], "x": 10.25, "y": 5}, + {"matrix": [4, 7], "x": 11.25, "y": 5}, + {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75}, + + {"matrix": [10, 9], "x": 14.25, "y": 5.25}, + + {"matrix": [10, 4], "x": 15.5, "y": 5}, + {"matrix": [10, 5], "x": 16.5, "y": 5}, + {"matrix": [10, 6], "x": 17.5, "y": 5}, + {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2}, + + {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.25}, + {"matrix": [5, 1], "x": 1.25, "y": 6, "w": 1.25}, + {"matrix": [5, 2], "x": 2.5, "y": 6, "w": 1.25}, + {"matrix": [5, 3], "x": 3.75, "y": 6, "w": 6.25}, + {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5}, + {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5}, + + {"matrix": [10, 8], "x": 13.25, "y": 6.25}, + {"matrix": [11, 8], "x": 14.25, "y": 6.25}, + {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + + {"matrix": [11, 5], "x": 16.5, "y": 6}, + {"matrix": [11, 6], "x": 17.5, "y": 6} + ] + }, + "LAYOUT_iso_wkl": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + + {"matrix": [0, 1], "x": 1.25, "y": 0}, + {"matrix": [0, 2], "x": 2.25, "y": 0}, + {"matrix": [0, 3], "x": 3.25, "y": 0}, + {"matrix": [6, 0], "x": 4.25, "y": 0}, + + {"matrix": [6, 1], "x": 5.5, "y": 0}, + {"matrix": [6, 2], "x": 6.5, "y": 0}, + {"matrix": [6, 3], "x": 7.5, "y": 0}, + {"matrix": [0, 4], "x": 8.5, "y": 0}, + + {"matrix": [0, 5], "x": 9.75, "y": 0}, + {"matrix": [0, 6], "x": 10.75, "y": 0}, + {"matrix": [0, 7], "x": 11.75, "y": 0}, + {"matrix": [0, 8], "x": 12.75, "y": 0}, + + {"matrix": [5, 4], "x": 15.5, "y": 0}, + {"matrix": [5, 5], "x": 16.5, "y": 0}, + {"matrix": [5, 6], "x": 17.5, "y": 0}, + {"matrix": [5, 7], "x": 18.5, "y": 0}, + + {"matrix": [6, 4], "x": 15.5, "y": 1}, + {"matrix": [6, 5], "x": 16.5, "y": 1}, + {"matrix": [6, 6], "x": 17.5, "y": 1}, + {"matrix": [6, 7], "x": 18.5, "y": 1}, + + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [1, 3], "x": 3, "y": 2}, + {"matrix": [7, 0], "x": 4, "y": 2}, + {"matrix": [7, 1], "x": 5, "y": 2}, + {"matrix": [7, 2], "x": 6, "y": 2}, + {"matrix": [7, 3], "x": 7, "y": 2}, + {"matrix": [1, 4], "x": 8, "y": 2}, + {"matrix": [1, 5], "x": 9, "y": 2}, + {"matrix": [1, 6], "x": 10, "y": 2}, + {"matrix": [1, 7], "x": 11, "y": 2}, + {"matrix": [1, 8], "x": 12, "y": 2}, + {"matrix": [1, 9], "x": 13, "y": 2, "w": 2}, + + {"matrix": [7, 4], "x": 15.5, "y": 2}, + {"matrix": [7, 5], "x": 16.5, "y": 2}, + {"matrix": [7, 6], "x": 17.5, "y": 2}, + {"matrix": [7, 7], "x": 18.5, "y": 2}, + + {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 3}, + {"matrix": [2, 2], "x": 2.5, "y": 3}, + {"matrix": [2, 3], "x": 3.5, "y": 3}, + {"matrix": [8, 0], "x": 4.5, "y": 3}, + {"matrix": [8, 1], "x": 5.5, "y": 3}, + {"matrix": [8, 2], "x": 6.5, "y": 3}, + {"matrix": [8, 3], "x": 7.5, "y": 3}, + {"matrix": [2, 4], "x": 8.5, "y": 3}, + {"matrix": [2, 5], "x": 9.5, "y": 3}, + {"matrix": [2, 6], "x": 10.5, "y": 3}, + {"matrix": [2, 7], "x": 11.5, "y": 3}, + {"matrix": [2, 8], "x": 12.5, "y": 3}, + + {"matrix": [8, 4], "x": 15.5, "y": 3}, + {"matrix": [8, 5], "x": 16.5, "y": 3}, + {"matrix": [8, 6], "x": 17.5, "y": 3}, + {"matrix": [8, 7], "x": 18.5, "y": 3}, + + {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 4}, + {"matrix": [3, 2], "x": 2.75, "y": 4}, + {"matrix": [3, 3], "x": 3.75, "y": 4}, + {"matrix": [9, 0], "x": 4.75, "y": 4}, + {"matrix": [9, 1], "x": 5.75, "y": 4}, + {"matrix": [9, 2], "x": 6.75, "y": 4}, + {"matrix": [9, 3], "x": 7.75, "y": 4}, + {"matrix": [3, 4], "x": 8.75, "y": 4}, + {"matrix": [3, 5], "x": 9.75, "y": 4}, + {"matrix": [3, 6], "x": 10.75, "y": 4}, + {"matrix": [3, 7], "x": 11.75, "y": 4}, + {"matrix": [2, 9], "x": 12.75, "y": 4}, + {"matrix": [3, 8], "x": 13.75, "y": 3, "w": 1.25, "h": 2}, + + {"matrix": [9, 4], "x": 15.5, "y": 4}, + {"matrix": [9, 5], "x": 16.5, "y": 4}, + {"matrix": [9, 6], "x": 17.5, "y": 4}, + {"matrix": [9, 7], "x": 18.5, "y": 4}, + + {"matrix": [4, 0], "x": 0, "y": 5, "w": 1.25}, + {"matrix": [4, 1], "x": 1.25, "y": 5}, + {"matrix": [4, 2], "x": 2.25, "y": 5}, + {"matrix": [4, 3], "x": 3.25, "y": 5}, + {"matrix": [10, 0], "x": 4.25, "y": 5}, + {"matrix": [10, 1], "x": 5.25, "y": 5}, + {"matrix": [10, 2], "x": 6.25, "y": 5}, + {"matrix": [10, 3], "x": 7.25, "y": 5}, + {"matrix": [4, 4], "x": 8.25, "y": 5}, + {"matrix": [4, 5], "x": 9.25, "y": 5}, + {"matrix": [4, 6], "x": 10.25, "y": 5}, + {"matrix": [4, 7], "x": 11.25, "y": 5}, + {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75}, + + {"matrix": [10, 9], "x": 14.25, "y": 5.25}, + + {"matrix": [10, 4], "x": 15.5, "y": 5}, + {"matrix": [10, 5], "x": 16.5, "y": 5}, + {"matrix": [10, 6], "x": 17.5, "y": 5}, + {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2}, + + {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.5}, + {"matrix": [5, 1], "x": 1.5, "y": 6, "w": 1.5}, + {"matrix": [5, 3], "x": 3, "y": 6, "w": 7}, + {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5}, + {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5}, + + {"matrix": [10, 8], "x": 13.25, "y": 6.25}, + {"matrix": [11, 8], "x": 14.25, "y": 6.25}, + {"matrix": [11, 9], "x": 15.25, "y": 6.25}, + {"matrix": [11, 5], "x": 16.5, "y": 6}, {"matrix": [11, 6], "x": 17.5, "y": 6} ] diff --git a/keyboards/ash1800/matrix_diagram.md b/keyboards/ash1800/matrix_diagram.md new file mode 100644 index 00000000000..4141116663c --- /dev/null +++ b/keyboards/ash1800/matrix_diagram.md @@ -0,0 +1,26 @@ +# Matrix Diagram for ASH1800 + +``` +┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ +│00 ││01 │02 │03 │60 ││61 │62 │63 │04 ││05 │06 │07 │08 │ │54 │55 │56 │57 │ +└───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘ ├───┼───┼───┼───┤ + │64 │65 │66 │67 │ +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ├───┼───┼───┼───┤ +│10 │11 │12 │13 │70 │71 │72 │73 │14 │15 │16 │17 │18 │19 │ │74 │75 │76 │77 │ +├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┼───┤ ┌─────┐ +│20 │21 │22 │23 │80 │81 │82 │83 │24 │25 │26 │27 │28 │29 │ │84 │85 │86 │87 │ │38 │ +├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ├───┼───┼───┼───┤ ┌──┴┐ │ ISO Enter +│30 │31 │32 │33 │90 │91 │92 │93 │34 │35 │36 │37 │38 │ │94 │95 │96 │97 │ │29 │ │ +├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘ ├───┼───┼───┼───┤ └───┴────┘ +│40 │41 │42 │43 │A0 │A1 │A2 │A3 │44 │45 │46 │47 │48 │┌───┐│A4 │A5 │A6 │A7 │ +├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┘│A9 │└───┼───┼───┤ │ +│50 │51 │52 │53 │B4 │B7 │┌───┼───┼───┐│B5 │B6 │ │ +└────┴────┴────┴────────────────────────┴─────┴─────┘│A8 │B8 │B9 │└───┴───┴───┘ + └───┴───┴───┘ +┌────────┐ +│40 │ 2.25u LShift +└────────┘ +┌─────┬─────┬───────────────────────────┬─────┬─────┐ +│50 │51 │53 │B4 │B7 │ WKL +└─────┴─────┴───────────────────────────┴─────┴─────┘ +``` From d08da05cb8cff3f03670b1303d418996695834b4 Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 8 Jul 2024 15:57:13 +1000 Subject: [PATCH 202/519] `mechlovin/olly/octagon`: move LED Matrix LED config to data driven (#24069) --- keyboards/mechlovin/olly/octagon/config.h | 2 - .../mechlovin/olly/octagon/keyboard.json | 105 +++++++++++++++++- keyboards/mechlovin/olly/octagon/octagon.c | 27 ----- 3 files changed, 104 insertions(+), 30 deletions(-) diff --git a/keyboards/mechlovin/olly/octagon/config.h b/keyboards/mechlovin/olly/octagon/config.h index 6f9d5f9a027..791bfee784d 100644 --- a/keyboards/mechlovin/olly/octagon/config.h +++ b/keyboards/mechlovin/olly/octagon/config.h @@ -19,8 +19,6 @@ along with this program. If not, see . #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_SDA -#define LED_MATRIX_LED_COUNT 94 - #define I2C_DRIVER I2CD2 #define I2C1_SCL_PIN B10 #define I2C1_SDA_PIN B11 diff --git a/keyboards/mechlovin/olly/octagon/keyboard.json b/keyboards/mechlovin/olly/octagon/keyboard.json index 81b78b0b1cb..4bc7d88ed77 100644 --- a/keyboards/mechlovin/olly/octagon/keyboard.json +++ b/keyboards/mechlovin/olly/octagon/keyboard.json @@ -57,7 +57,110 @@ "wave_up_down": true }, "driver": "is31fl3731", - "react_on_keyup": true + "react_on_keyup": true, + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4}, + {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 30, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 45, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 60, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 75, "y": 0, "flags": 4}, + {"matrix": [0, 6], "x": 90, "y": 0, "flags": 4}, + {"matrix": [0, 7], "x": 105, "y": 0, "flags": 4}, + {"matrix": [0, 8], "x": 120, "y": 0, "flags": 4}, + {"matrix": [0, 9], "x": 134, "y": 0, "flags": 4}, + {"matrix": [0, 10], "x": 149, "y": 0, "flags": 4}, + {"matrix": [0, 11], "x": 164, "y": 0, "flags": 4}, + {"matrix": [0, 12], "x": 179, "y": 0, "flags": 4}, + {"matrix": [0, 13], "x": 194, "y": 0, "flags": 4}, + {"matrix": [0, 14], "x": 209, "y": 0, "flags": 4}, + {"matrix": [0, 15], "x": 224, "y": 0, "flags": 4}, + + {"matrix": [1, 0], "x": 0, "y": 13, "flags": 4}, + {"matrix": [1, 1], "x": 15, "y": 13, "flags": 4}, + {"matrix": [1, 2], "x": 30, "y": 13, "flags": 4}, + {"matrix": [1, 3], "x": 45, "y": 13, "flags": 4}, + {"matrix": [1, 4], "x": 60, "y": 13, "flags": 4}, + {"matrix": [1, 5], "x": 75, "y": 13, "flags": 4}, + {"matrix": [1, 6], "x": 90, "y": 13, "flags": 4}, + {"matrix": [1, 7], "x": 105, "y": 13, "flags": 4}, + {"matrix": [1, 8], "x": 120, "y": 13, "flags": 4}, + {"matrix": [1, 9], "x": 134, "y": 13, "flags": 4}, + {"matrix": [1, 10], "x": 149, "y": 13, "flags": 4}, + {"matrix": [1, 11], "x": 164, "y": 13, "flags": 4}, + {"matrix": [1, 12], "x": 179, "y": 13, "flags": 4}, + {"matrix": [1, 13], "x": 194, "y": 13, "flags": 4}, + {"matrix": [1, 14], "x": 209, "y": 13, "flags": 4}, + {"matrix": [1, 15], "x": 224, "y": 13, "flags": 4}, + + {"matrix": [2, 0], "x": 4, "y": 26, "flags": 4}, + {"matrix": [2, 1], "x": 22, "y": 26, "flags": 4}, + {"matrix": [2, 2], "x": 37, "y": 26, "flags": 4}, + {"matrix": [2, 3], "x": 52, "y": 26, "flags": 4}, + {"matrix": [2, 4], "x": 67, "y": 26, "flags": 4}, + {"matrix": [2, 5], "x": 82, "y": 26, "flags": 4}, + {"matrix": [2, 6], "x": 97, "y": 26, "flags": 4}, + {"matrix": [2, 7], "x": 112, "y": 26, "flags": 4}, + {"matrix": [2, 8], "x": 127, "y": 26, "flags": 4}, + {"matrix": [2, 9], "x": 142, "y": 26, "flags": 4}, + {"matrix": [2, 10], "x": 157, "y": 26, "flags": 4}, + {"matrix": [2, 11], "x": 172, "y": 26, "flags": 4}, + {"matrix": [2, 12], "x": 187, "y": 26, "flags": 4}, + {"matrix": [2, 14], "x": 205, "y": 26, "flags": 4}, + {"matrix": [2, 15], "x": 224, "y": 26, "flags": 4}, + + {"matrix": [3, 0], "x": 6, "y": 38, "flags": 4}, + {"matrix": [3, 1], "x": 26, "y": 38, "flags": 4}, + {"matrix": [3, 2], "x": 41, "y": 38, "flags": 4}, + {"matrix": [3, 3], "x": 56, "y": 38, "flags": 4}, + {"matrix": [3, 4], "x": 71, "y": 38, "flags": 4}, + {"matrix": [3, 5], "x": 86, "y": 38, "flags": 4}, + {"matrix": [3, 6], "x": 101, "y": 38, "flags": 4}, + {"matrix": [3, 7], "x": 116, "y": 38, "flags": 4}, + {"matrix": [3, 8], "x": 131, "y": 38, "flags": 4}, + {"matrix": [3, 9], "x": 146, "y": 38, "flags": 4}, + {"matrix": [3, 10], "x": 161, "y": 38, "flags": 4}, + {"matrix": [3, 11], "x": 175, "y": 38, "flags": 4}, + {"matrix": [3, 12], "x": 190, "y": 38, "flags": 4}, + {"matrix": [3, 13], "x": 207, "y": 38, "flags": 4}, + {"matrix": [3, 15], "x": 224, "y": 38, "flags": 4}, + + {"matrix": [4, 0], "x": 2, "y": 51, "flags": 4}, + {"matrix": [4, 1], "x": 19, "y": 51, "flags": 4}, + {"matrix": [4, 2], "x": 34, "y": 51, "flags": 4}, + {"matrix": [4, 3], "x": 49, "y": 51, "flags": 4}, + {"matrix": [4, 4], "x": 64, "y": 51, "flags": 4}, + {"matrix": [4, 5], "x": 78, "y": 51, "flags": 4}, + {"matrix": [4, 6], "x": 93, "y": 51, "flags": 4}, + {"matrix": [4, 7], "x": 108, "y": 51, "flags": 4}, + {"matrix": [4, 8], "x": 123, "y": 51, "flags": 4}, + {"matrix": [4, 9], "x": 138, "y": 51, "flags": 4}, + {"matrix": [4, 10], "x": 153, "y": 51, "flags": 4}, + {"matrix": [4, 11], "x": 168, "y": 51, "flags": 4}, + {"matrix": [4, 12], "x": 189, "y": 51, "flags": 4}, + {"matrix": [4, 14], "x": 209, "y": 51, "flags": 4}, + {"matrix": [4, 15], "x": 224, "y": 51, "flags": 4}, + + {"matrix": [5, 0], "x": 2, "y": 64, "flags": 4}, + {"matrix": [5, 1], "x": 21, "y": 64, "flags": 4}, + {"matrix": [5, 2], "x": 39, "y": 64, "flags": 4}, + {"matrix": [5, 6], "x": 95, "y": 64, "flags": 4}, + {"matrix": [5, 10], "x": 149, "y": 64, "flags": 4}, + {"matrix": [5, 11], "x": 164, "y": 64, "flags": 4}, + {"matrix": [5, 12], "x": 179, "y": 64, "flags": 4}, + {"matrix": [5, 13], "x": 194, "y": 64, "flags": 4}, + {"matrix": [5, 14], "x": 209, "y": 64, "flags": 4}, + {"matrix": [5, 15], "x": 224, "y": 64, "flags": 4}, + + {"x": 113, "y": 0, "flags": 8}, + {"x": 127, "y": 0, "flags": 8}, + {"x": 142, "y": 0, "flags": 8}, + + {"x": 172, "y": 0, "flags": 8}, + {"x": 187, "y": 0, "flags": 8}, + {"x": 202, "y": 0, "flags": 8}, + {"x": 217, "y": 0, "flags": 8} + ] }, "matrix_pins": { "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B2", "B1", "A15", "B3", "B9", "B8", "B7", "B6", "B5", "B4"], diff --git a/keyboards/mechlovin/olly/octagon/octagon.c b/keyboards/mechlovin/olly/octagon/octagon.c index c89565168b2..a8ff139c01b 100644 --- a/keyboards/mechlovin/olly/octagon/octagon.c +++ b/keyboards/mechlovin/olly/octagon/octagon.c @@ -31,33 +31,6 @@ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = { { 0, C7_13 }, { 0, C7_14 }, { 0, C7_15 }, { 0, C7_16 }, // Layer Indicator }; -led_config_t g_led_config = { -{ - // Key Matrix to LED Index - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}, - {16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31}, - {32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46}, - {47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61}, - {62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76}, - {77, 78, 79, 80, 81, 82, 83, 84, 85, 86}, -}, { - //LED Index to Physical Positon - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, {90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {224, 0}, - {0,13}, {15, 13}, {30, 13}, {45, 13}, {60, 13}, {75, 13}, {90, 13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13}, - {0,26}, {15, 26}, {30, 26}, {45, 26}, {60, 26}, {75, 26}, {90, 26}, {105,26}, {119,26}, {134,26}, {149,26}, {164,26}, {179,26}, {194,26}, {224,26}, - {0,38}, {15, 38}, {30, 38}, {45, 38}, {60, 38}, {75, 38}, {90, 38}, {105,38}, {119,38}, {134,38}, {149,38}, {164,38}, {179,38}, {194,38}, {224,38}, - {0,51}, {15, 51}, {30, 51}, {45, 51}, {60, 51}, {75, 51}, {90, 51}, {105,51}, {119,51}, {134,51}, {149,51}, {164,51}, {179,51}, {194,51}, {224,51}, - {0,64}, {15, 64}, {30, 64}, {90, 64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64}, - }, { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - bool led_matrix_indicators_kb(void) { if (!led_matrix_indicators_user()) { return false; From 6eb6e3048a730c39190914663d5aabceecc9b52e Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 8 Jul 2024 15:57:29 +1000 Subject: [PATCH 203/519] `pearlboards/zeuspad`: add additional layouts (#24066) --- keyboards/pearlboards/zeuspad/keyboard.json | 36 ++++++++++++++++++- .../zeuspad/keymaps/default/keymap.c | 4 +-- .../pearlboards/zeuspad/keymaps/via/keymap.c | 18 +--------- .../pearlboards/zeuspad/matrix_diagram.md | 21 +++++++++++ 4 files changed, 59 insertions(+), 20 deletions(-) create mode 100644 keyboards/pearlboards/zeuspad/matrix_diagram.md diff --git a/keyboards/pearlboards/zeuspad/keyboard.json b/keyboards/pearlboards/zeuspad/keyboard.json index 6f67bd74b08..93e1e644332 100644 --- a/keyboards/pearlboards/zeuspad/keyboard.json +++ b/keyboards/pearlboards/zeuspad/keyboard.json @@ -61,8 +61,12 @@ "processor": "atmega32u4", "bootloader": "atmel-dfu", "debounce": 0, + "community_layouts": ["numpad_6x4"], + "layout_aliases": { + "LAYOUT_all": "LAYOUT_ortho_6x4" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT_ortho_6x4": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, @@ -94,6 +98,36 @@ {"matrix": [5, 2], "x": 2, "y": 5.25}, {"matrix": [5, 3], "x": 3, "y": 5.25} ] + }, + "LAYOUT_numpad_6x4": { + "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": [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": [2, 0], "x": 0, "y": 2.25}, + {"matrix": [2, 1], "x": 1, "y": 2.25}, + {"matrix": [2, 2], "x": 2, "y": 2.25}, + + {"matrix": [3, 0], "x": 0, "y": 3.25}, + {"matrix": [3, 1], "x": 1, "y": 3.25}, + {"matrix": [3, 2], "x": 2, "y": 3.25}, + {"matrix": [3, 3], "x": 3, "y": 2.25, "h": 2}, + + {"matrix": [4, 0], "x": 0, "y": 4.25}, + {"matrix": [4, 1], "x": 1, "y": 4.25}, + {"matrix": [4, 2], "x": 2, "y": 4.25}, + + {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 2}, + {"matrix": [5, 2], "x": 2, "y": 5.25}, + {"matrix": [5, 3], "x": 3, "y": 4.25, "h": 2} + ] } } } diff --git a/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c b/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c index 88c243cdc59..850c96237c4 100644 --- a/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c +++ b/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c @@ -18,7 +18,7 @@ along with this program. If not, see . #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT_ortho_6x4( LT(1, KC_ESC), KC_LCTL, KC_LALT, KC_MEDIA_PLAY_PAUSE, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_P7, KC_P8, KC_P9, KC_PPLS, @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P1, KC_P2, KC_P3, KC_PENT, KC_P0, KC_P0, KC_PDOT, KC_PENT), - [1] = LAYOUT_all( + [1] = LAYOUT_ortho_6x4( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c b/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c index ee0165b28eb..d7489b34246 100644 --- a/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c +++ b/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c @@ -14,7 +14,7 @@ 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 . */ -#include + #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -33,20 +33,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [2] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [3] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) }; diff --git a/keyboards/pearlboards/zeuspad/matrix_diagram.md b/keyboards/pearlboards/zeuspad/matrix_diagram.md new file mode 100644 index 00000000000..1dde3faef85 --- /dev/null +++ b/keyboards/pearlboards/zeuspad/matrix_diagram.md @@ -0,0 +1,21 @@ +# Matrix Diagram for Pearl Boards Zeuspad + +``` +┌───┬───┬───┬───┐ +│00 │01 │02 │03 │ +└───┴───┴───┴───┘ +┌───┬───┬───┬───┐ +│10 │11 │12 │13 │ +├───┼───┼───┼───┤┌───┐ +│20 │21 │22 │23 ││33 │ +├───┼───┼───┼───┤│ │ 2uh + +│30 │31 │32 │33 ││ │ +├───┼───┼───┼───┤├───┤ +│40 │41 │42 │43 ││53 │ +├───┼───┼───┼───┤│ │ 2uh Enter +│50 │51 │52 │53 ││ │ +└───┴───┴───┴───┘└───┘ +┌───────┐ +│50 │ 2u P0 +└───────┘ +``` \ No newline at end of file From a0bb7ff9925c8e32664aa2020e5ece848ea1d60b Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 8 Jul 2024 15:57:45 +1000 Subject: [PATCH 204/519] `latinpad/latin60rgb`: move RGB Matrix LED config to data driven (#24076) --- keyboards/latincompass/latin60rgb/config.h | 2 - .../latincompass/latin60rgb/keyboard.json | 66 ++++++++ .../latincompass/latin60rgb/latin60rgb.c | 144 ++++++++---------- 3 files changed, 127 insertions(+), 85 deletions(-) diff --git a/keyboards/latincompass/latin60rgb/config.h b/keyboards/latincompass/latin60rgb/config.h index 94ea00468ca..b2636abe1a3 100644 --- a/keyboards/latincompass/latin60rgb/config.h +++ b/keyboards/latincompass/latin60rgb/config.h @@ -16,5 +16,3 @@ #pragma once #define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND - -#define RGB_MATRIX_LED_COUNT 60 diff --git a/keyboards/latincompass/latin60rgb/keyboard.json b/keyboards/latincompass/latin60rgb/keyboard.json index 3197b3979d3..764a7c882a6 100644 --- a/keyboards/latincompass/latin60rgb/keyboard.json +++ b/keyboards/latincompass/latin60rgb/keyboard.json @@ -40,6 +40,72 @@ "solid_reactive": true }, "driver": "is31fl3733", + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1}, + {"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": 216, "y": 0, "flags": 1}, + + {"matrix": [1, 0], "x": 4, "y": 16, "flags": 1}, + {"matrix": [1, 1], "x": 24, "y": 16, "flags": 4}, + {"matrix": [1, 2], "x": 40, "y": 16, "flags": 4}, + {"matrix": [1, 3], "x": 56, "y": 16, "flags": 4}, + {"matrix": [1, 4], "x": 72, "y": 16, "flags": 4}, + {"matrix": [1, 5], "x": 88, "y": 16, "flags": 4}, + {"matrix": [1, 6], "x": 104, "y": 16, "flags": 4}, + {"matrix": [1, 7], "x": 120, "y": 16, "flags": 4}, + {"matrix": [1, 8], "x": 136, "y": 16, "flags": 4}, + {"matrix": [1, 9], "x": 152, "y": 16, "flags": 4}, + {"matrix": [1, 10], "x": 168, "y": 16, "flags": 4}, + {"matrix": [1, 11], "x": 184, "y": 16, "flags": 4}, + {"matrix": [1, 12], "x": 200, "y": 16, "flags": 4}, + {"matrix": [1, 13], "x": 220, "y": 16, "flags": 1}, + + {"matrix": [2, 0], "x": 6, "y": 32, "flags": 1}, + {"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": 214, "y": 32, "flags": 1}, + + {"matrix": [3, 0], "x": 8, "y": 48, "flags": 1}, + {"matrix": [3, 1], "x": 32, "y": 48, "flags": 4}, + {"matrix": [3, 2], "x": 48, "y": 48, "flags": 4}, + {"matrix": [3, 3], "x": 64, "y": 48, "flags": 4}, + {"matrix": [3, 4], "x": 80, "y": 48, "flags": 4}, + {"matrix": [3, 5], "x": 96, "y": 48, "flags": 4}, + {"matrix": [3, 6], "x": 112, "y": 48, "flags": 4}, + {"matrix": [3, 7], "x": 128, "y": 48, "flags": 4}, + {"matrix": [3, 8], "x": 144, "y": 48, "flags": 4}, + {"matrix": [3, 9], "x": 160, "y": 48, "flags": 4}, + {"matrix": [3, 10], "x": 176, "y": 48, "flags": 4}, + {"matrix": [3, 11], "x": 192, "y": 48, "flags": 4}, + {"matrix": [3, 12], "x": 208, "y": 48, "flags": 4}, + {"matrix": [3, 13], "x": 224, "y": 48, "flags": 4}, + + {"matrix": [4, 0], "x": 22, "y": 64, "flags": 1}, + {"matrix": [4, 1], "x": 42, "y": 64, "flags": 1}, + {"matrix": [4, 2], "x": 102, "y": 64, "flags": 4}, + {"matrix": [4, 3], "x": 162, "y": 64, "flags": 1}, + {"matrix": [4, 4], "x": 180, "y": 64, "flags": 1} + ], "sleep": true }, "features": { diff --git a/keyboards/latincompass/latin60rgb/latin60rgb.c b/keyboards/latincompass/latin60rgb/latin60rgb.c index 8a032d76b14..305aaff5f21 100644 --- a/keyboards/latincompass/latin60rgb/latin60rgb.c +++ b/keyboards/latincompass/latin60rgb/latin60rgb.c @@ -17,92 +17,70 @@ #ifdef RGB_MATRIX_ENABLE const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = { - { 0, SW11_CS13, SW10_CS13, SW12_CS13 }, - { 0, SW11_CS12, SW10_CS12, SW12_CS12 }, - { 0, SW11_CS11, SW10_CS11, SW12_CS11 }, - { 0, SW11_CS10, SW10_CS10, SW12_CS10 }, - { 0, SW11_CS9, SW10_CS9, SW12_CS9 }, - { 0, SW11_CS8, SW10_CS8, SW12_CS8 }, - { 0, SW11_CS7, SW10_CS7, SW12_CS7 }, - { 0, SW11_CS6, SW10_CS6, SW12_CS6 }, - { 0, SW11_CS5, SW10_CS5, SW12_CS5 }, - { 0, SW11_CS4, SW10_CS4, SW12_CS4 }, - { 0, SW11_CS3, SW10_CS3, SW12_CS3 }, - { 0, SW11_CS2, SW10_CS2, SW12_CS2 }, - { 0, SW11_CS1, SW10_CS1, SW12_CS1 }, - - { 0, SW8_CS16, SW7_CS16, SW9_CS16 }, - { 0, SW8_CS15, SW7_CS15, SW9_CS15 }, - { 0, SW8_CS14, SW7_CS14, SW9_CS14 }, - { 0, SW8_CS13, SW7_CS13, SW9_CS13 }, - { 0, SW8_CS12, SW7_CS12, SW9_CS12 }, - { 0, SW8_CS11, SW7_CS11, SW9_CS11 }, - { 0, SW8_CS10, SW7_CS10, SW9_CS10 }, - { 0, SW8_CS9, SW7_CS9, SW9_CS9 }, - { 0, SW8_CS8, SW7_CS8, SW9_CS8 }, - { 0, SW8_CS7, SW7_CS7, SW9_CS7 }, - { 0, SW8_CS6, SW7_CS6, SW9_CS6 }, - { 0, SW8_CS5, SW7_CS5, SW9_CS5 }, - { 0, SW8_CS4, SW7_CS4, SW9_CS4 }, - { 0, SW8_CS3, SW7_CS3, SW9_CS3 }, - { 0, SW8_CS2, SW7_CS2, SW9_CS2 }, - { 0, SW8_CS1, SW7_CS1, SW9_CS1 }, - - { 0, SW5_CS16, SW4_CS16, SW6_CS16 }, - { 0, SW5_CS15, SW4_CS15, SW6_CS15 }, - { 0, SW5_CS14, SW4_CS14, SW6_CS14 }, - { 0, SW5_CS13, SW4_CS13, SW6_CS13 }, - { 0, SW5_CS12, SW4_CS12, SW6_CS12 }, - { 0, SW5_CS11, SW4_CS11, SW6_CS11 }, - { 0, SW5_CS10, SW4_CS10, SW6_CS10 }, - { 0, SW5_CS9, SW4_CS9, SW6_CS9 }, - { 0, SW5_CS8, SW4_CS8, SW6_CS8 }, - { 0, SW5_CS7, SW4_CS7, SW6_CS7 }, - { 0, SW5_CS6, SW4_CS6, SW6_CS6 }, - { 0, SW5_CS5, SW4_CS5, SW6_CS5 }, - { 0, SW5_CS4, SW4_CS4, SW6_CS4 }, - { 0, SW5_CS3, SW4_CS3, SW6_CS3 }, - { 0, SW5_CS2, SW4_CS2, SW6_CS2 }, - { 0, SW5_CS1, SW4_CS1, SW6_CS1 }, + { 0, SW2_CS1, SW1_CS1, SW3_CS1 }, + { 0, SW2_CS2, SW1_CS2, SW3_CS2 }, + { 0, SW2_CS3, SW1_CS3, SW3_CS3 }, + { 0, SW2_CS4, SW1_CS4, SW3_CS4 }, + { 0, SW2_CS5, SW1_CS5, SW3_CS5 }, + { 0, SW2_CS6, SW1_CS6, SW3_CS6 }, + { 0, SW2_CS7, SW1_CS7, SW3_CS7 }, + { 0, SW2_CS8, SW1_CS8, SW3_CS8 }, + { 0, SW2_CS9, SW1_CS9, SW3_CS9 }, + { 0, SW2_CS10, SW1_CS10, SW3_CS10 }, + { 0, SW2_CS11, SW1_CS11, SW3_CS11 }, + { 0, SW2_CS12, SW1_CS12, SW3_CS12 }, + { 0, SW2_CS13, SW1_CS13, SW3_CS13 }, + { 0, SW2_CS14, SW1_CS14, SW3_CS14 }, { 0, SW2_CS16, SW1_CS16, SW3_CS16 }, - { 0, SW2_CS14, SW1_CS14, SW3_CS14 }, - { 0, SW2_CS13, SW1_CS13, SW3_CS13 }, - { 0, SW2_CS12, SW1_CS12, SW3_CS12 }, - { 0, SW2_CS11, SW1_CS11, SW3_CS11 }, - { 0, SW2_CS10, SW1_CS10, SW3_CS10 }, - { 0, SW2_CS9, SW1_CS9, SW3_CS9 }, - { 0, SW2_CS8, SW1_CS8, SW3_CS8 }, - { 0, SW2_CS7, SW1_CS7, SW3_CS7 }, - { 0, SW2_CS6, SW1_CS6, SW3_CS6 }, - { 0, SW2_CS5, SW1_CS5, SW3_CS5 }, - { 0, SW2_CS4, SW1_CS4, SW3_CS4 }, - { 0, SW2_CS3, SW1_CS3, SW3_CS3 }, - { 0, SW2_CS2, SW1_CS2, SW3_CS2 }, - { 0, SW2_CS1, SW1_CS1, SW3_CS1 } + { 0, SW5_CS1, SW4_CS1, SW6_CS1 }, + { 0, SW5_CS2, SW4_CS2, SW6_CS2 }, + { 0, SW5_CS3, SW4_CS3, SW6_CS3 }, + { 0, SW5_CS4, SW4_CS4, SW6_CS4 }, + { 0, SW5_CS5, SW4_CS5, SW6_CS5 }, + { 0, SW5_CS6, SW4_CS6, SW6_CS6 }, + { 0, SW5_CS7, SW4_CS7, SW6_CS7 }, + { 0, SW5_CS8, SW4_CS8, SW6_CS8 }, + { 0, SW5_CS9, SW4_CS9, SW6_CS9 }, + { 0, SW5_CS10, SW4_CS10, SW6_CS10 }, + { 0, SW5_CS11, SW4_CS11, SW6_CS11 }, + { 0, SW5_CS12, SW4_CS12, SW6_CS12 }, + { 0, SW5_CS13, SW4_CS13, SW6_CS13 }, -}; + { 0, SW5_CS14, SW4_CS14, SW6_CS14 }, + { 0, SW5_CS15, SW4_CS15, SW6_CS15 }, + { 0, SW5_CS16, SW4_CS16, SW6_CS16 }, + { 0, SW8_CS1, SW7_CS1, SW9_CS1 }, + { 0, SW8_CS2, SW7_CS2, SW9_CS2 }, + { 0, SW8_CS3, SW7_CS3, SW9_CS3 }, + { 0, SW8_CS4, SW7_CS4, SW9_CS4 }, + { 0, SW8_CS5, SW7_CS5, SW9_CS5 }, + { 0, SW8_CS6, SW7_CS6, SW9_CS6 }, + { 0, SW8_CS7, SW7_CS7, SW9_CS7 }, + { 0, SW8_CS8, SW7_CS8, SW9_CS8 }, + { 0, SW8_CS9, SW7_CS9, SW9_CS9 }, + { 0, SW8_CS10, SW7_CS10, SW9_CS10 }, -led_config_t g_led_config = { - { - { 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46 }, - { 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32 }, - { 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19 }, - { 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5 }, - { 4, 3, 2, 1 ,0 } - }, { - { 224, 0 }, { 208, 0 }, { 192, 0 }, { 176, 0 }, { 160, 0 }, { 144, 0 }, { 128, 0 }, { 112, 0 }, { 96, 0 }, { 80, 0 }, { 64, 0 }, { 48, 0 }, { 32, 0 }, { 16, 0 }, - { 220, 16 }, { 200, 16 }, { 184, 16 }, { 168, 16 }, { 152, 16 }, { 136, 16 }, { 120, 16 }, { 104, 16 }, { 88, 16 }, { 72, 16 }, { 56, 16 }, { 40, 16 }, { 24, 16 }, { 4, 16 }, - { 204, 32 }, { 188, 32 }, { 172, 32 }, { 156, 32 }, { 140, 32 }, { 124, 32 }, { 108, 32 }, { 92, 32 }, { 76, 32 }, { 60, 32 }, { 44, 32 }, { 28, 32 }, { 6, 32 }, - { 224, 48 }, { 198, 64 }, { 202, 48 }, { 180, 48 }, { 164, 48 }, { 148, 48 }, { 132, 48 }, { 116, 48 }, { 100, 48 }, { 84, 48 }, { 68, 48 }, { 52, 48 }, { 20, 48 }, { 10, 48 }, - { 218, 64 }, { 178, 64 }, { 112, 64 }, { 46, 64 }, { 26, 64 } - }, { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 1, 4, 1, 1 - } + { 0, SW8_CS11, SW7_CS11, SW9_CS11 }, + { 0, SW8_CS12, SW7_CS12, SW9_CS12 }, + { 0, SW8_CS13, SW7_CS13, SW9_CS13 }, + { 0, SW8_CS14, SW7_CS14, SW9_CS14 }, + { 0, SW8_CS15, SW7_CS15, SW9_CS15 }, + { 0, SW8_CS16, SW7_CS16, SW9_CS16 }, + { 0, SW11_CS1, SW10_CS1, SW12_CS1 }, + { 0, SW11_CS2, SW10_CS2, SW12_CS2 }, + { 0, SW11_CS3, SW10_CS3, SW12_CS3 }, + { 0, SW11_CS4, SW10_CS4, SW12_CS4 }, + { 0, SW11_CS5, SW10_CS5, SW12_CS5 }, + { 0, SW11_CS6, SW10_CS6, SW12_CS6 }, + { 0, SW11_CS7, SW10_CS7, SW12_CS7 }, + { 0, SW11_CS8, SW10_CS8, SW12_CS8 }, + + { 0, SW11_CS9, SW10_CS9, SW12_CS9 }, + { 0, SW11_CS10, SW10_CS10, SW12_CS10 }, + { 0, SW11_CS11, SW10_CS11, SW12_CS11 }, + { 0, SW11_CS12, SW10_CS12, SW12_CS12 }, + { 0, SW11_CS13, SW10_CS13, SW12_CS13 } }; void suspend_power_down_kb(void) { @@ -120,7 +98,7 @@ bool rgb_matrix_indicators_kb(void) { return false; } if (host_keyboard_led_state().caps_lock) { - rgb_matrix_set_color(41, 0xFF, 0xFF, 0xFF); + rgb_matrix_set_color(28, 0xFF, 0xFF, 0xFF); } return true; } From fbbc71ec34e1e9dc5450e9620e71526f5488fe81 Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 9 Jul 2024 02:27:09 +1000 Subject: [PATCH 205/519] `kakunpc/rabbit_capture_plan`: update keymap layout name (#24079) `kakunpc/rabbit_capture_plan`: update keymap layout names --- .../kakunpc/rabbit_capture_plan/keymaps/default/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/kakunpc/rabbit_capture_plan/keymaps/default/keymap.c b/keyboards/kakunpc/rabbit_capture_plan/keymaps/default/keymap.c index 649ea50c429..aba1a40e15c 100644 --- a/keyboards/kakunpc/rabbit_capture_plan/keymaps/default/keymap.c +++ b/keyboards/kakunpc/rabbit_capture_plan/keymaps/default/keymap.c @@ -22,14 +22,14 @@ enum layers{ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ - [_BASE] = LAYOUT_all( + [_BASE] = LAYOUT_ansi_split_rshift( KC_ESC, 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_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_LCAP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, 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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_DEL, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_LEFT, KC_DOWN, KC_RIGHT ), - [_FN] = LAYOUT_all( + [_FN] = LAYOUT_ansi_split_rshift( QK_BOOT, _______, 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_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______, From c97ec805cd1096bb60bf55ab19973dc01bd043b4 Mon Sep 17 00:00:00 2001 From: jack Date: Wed, 10 Jul 2024 13:19:06 -0600 Subject: [PATCH 206/519] [Keyboard] Add boardsource/the_q (#23782) * initial unsplit keyboard * move shared code * unsplit: fix underglow led x,y & remove unecessary code * unsplit: remove split code & tidy readme * unsplit: limit brightness & community layout * rename keyboard * the_q: tidy keymap & readme * lulu: remove accidental build target * rename file --- keyboards/boardsource/lib/oled.c | 20 ++ .../{unicorne/unicorne.h => lib/oled.h} | 95 ++++---- keyboards/boardsource/lulu/avr/rules.mk | 1 + keyboards/boardsource/lulu/lulu.c | 222 +----------------- keyboards/boardsource/lulu/rp2040/rules.mk | 1 + keyboards/boardsource/the_q/keyboard.json | 142 +++++++++++ .../the_q/keymaps/default/keymap.json | 25 ++ .../boardsource/the_q/keymaps/via/keymap.json | 30 +++ keyboards/boardsource/the_q/readme.md | 23 ++ keyboards/boardsource/the_q/rules.mk | 1 + keyboards/boardsource/the_q/the_q.c | 14 ++ keyboards/boardsource/unicorne/rules.mk | 1 + keyboards/boardsource/unicorne/unicorne.c | 22 +- 13 files changed, 314 insertions(+), 283 deletions(-) create mode 100644 keyboards/boardsource/lib/oled.c rename keyboards/boardsource/{unicorne/unicorne.h => lib/oled.h} (84%) create mode 100644 keyboards/boardsource/lulu/avr/rules.mk create mode 100644 keyboards/boardsource/the_q/keyboard.json create mode 100644 keyboards/boardsource/the_q/keymaps/default/keymap.json create mode 100644 keyboards/boardsource/the_q/keymaps/via/keymap.json create mode 100644 keyboards/boardsource/the_q/readme.md create mode 100644 keyboards/boardsource/the_q/rules.mk create mode 100644 keyboards/boardsource/the_q/the_q.c diff --git a/keyboards/boardsource/lib/oled.c b/keyboards/boardsource/lib/oled.c new file mode 100644 index 00000000000..c0fb6ab4a61 --- /dev/null +++ b/keyboards/boardsource/lib/oled.c @@ -0,0 +1,20 @@ +// Copyright 2024 jack (@waffle87) +// SPDX-License-Identifier: GPL-2.0-or-later +#include "oled.h" + +void render_layer_state(void) { + switch (get_highest_layer(layer_state)) { + case 0: + oled_write_raw_P(layer0_img, sizeof(layer0_img)); + break; + case 1: + oled_write_raw_P(layer1_img, sizeof(layer1_img)); + break; + case 2: + oled_write_raw_P(layer2_img, sizeof(layer2_img)); + break; + case 3: + oled_write_raw_P(layer3_img, sizeof(layer3_img)); + break; + } +} diff --git a/keyboards/boardsource/unicorne/unicorne.h b/keyboards/boardsource/lib/oled.h similarity index 84% rename from keyboards/boardsource/unicorne/unicorne.h rename to keyboards/boardsource/lib/oled.h index 68bbeeb18ab..4778be20b0d 100644 --- a/keyboards/boardsource/unicorne/unicorne.h +++ b/keyboards/boardsource/lib/oled.h @@ -1,54 +1,12 @@ -// Copyright 2023 jack (@waffle87) +// Copyright 2024 jack (@waffle87) // SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include "quantum.h" -#ifdef OLED_ENABLE -// clang-format off -static const char PROGMEM logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, - 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xe3, 0xe7, 0xe7, 0xe3, - 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, - 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, - 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, - 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, - 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, - 0x01, 0x01, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, - 0x00, 0x00, 0x00, 0x7e, 0xff, 0xff, 0xff, 0xe7, 0xc1, 0x81, 0x81, 0x81, 0xc1, 0x00, 0x00, 0x7f, - 0xff, 0xff, 0xff, 0xe3, 0xc1, 0x81, 0x81, 0xc1, 0xe3, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x00, 0x00, - 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, - 0x03, 0x01, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, - 0xcd, 0x8c, 0x8c, 0x8c, 0x8d, 0xcf, 0xcf, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, - 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, - 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, - 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, - 0x00, 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, - 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, - 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, - 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -}; +void render_layer_state(void); -static const char PROGMEM layer_zero[] = { +// clang-format off +static const char PROGMEM layer0_img[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0x18, 0x30, 0x60, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -83,8 +41,7 @@ static const char PROGMEM layer_zero[] = { 0x00, 0x01, 0x03, 0x07, 0x06, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00 }; - -static const char PROGMEM layer_one[] = { +static const char PROGMEM layer1_img[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0x18, 0x30, 0x60, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -119,8 +76,7 @@ static const char PROGMEM layer_one[] = { 0x00, 0x01, 0x03, 0x07, 0x06, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00 }; - -static const char PROGMEM layer_two[] = { +static const char PROGMEM layer2_img[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0x18, 0x30, 0x60, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -155,8 +111,7 @@ static const char PROGMEM layer_two[] = { 0x00, 0x01, 0x03, 0x07, 0x06, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00 }; - -static const char PROGMEM layer_three[] = { +static const char PROGMEM layer3_img[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0x18, 0x30, 0x60, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, @@ -190,5 +145,39 @@ static const char PROGMEM layer_three[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00, 0x01, 0x03, 0x07, 0x06, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00 }; + +static const char PROGMEM bs_logo_img[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0x60, 0x60, 0x60, + 0x60, 0x60, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, + 0x00, 0xe0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfc, 0x1e, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, + 0x80, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, + 0xe0, 0xc0, 0x80, 0x80, 0xc0, 0xc0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, + 0x00, 0x1f, 0xff, 0xff, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, 0x78, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x01, + 0x01, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0x78, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; // clang-format on -#endif diff --git a/keyboards/boardsource/lulu/avr/rules.mk b/keyboards/boardsource/lulu/avr/rules.mk new file mode 100644 index 00000000000..de6a3d8afca --- /dev/null +++ b/keyboards/boardsource/lulu/avr/rules.mk @@ -0,0 +1 @@ +SRC += lib/oled.c diff --git a/keyboards/boardsource/lulu/lulu.c b/keyboards/boardsource/lulu/lulu.c index 8d011268c4b..b20228a7d7f 100644 --- a/keyboards/boardsource/lulu/lulu.c +++ b/keyboards/boardsource/lulu/lulu.c @@ -1,6 +1,7 @@ // Copyright 2022 Cole Smith // SPDX-License-Identifier: GPL-2.0-or-later #include "quantum.h" +#include "lib/oled.h" #ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { @@ -24,225 +25,20 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { #ifdef OLED_ENABLE oled_rotation_t oled_init_kb(oled_rotation_t rotation) { - if (!is_keyboard_master()) { - return OLED_ROTATION_180; - } - return rotation; -} - -void render_layer1_logo(void){ - static const char PROGMEM layer_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0x18, 0x30, 0x60, 0xe0, 0xc0, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc8, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x0f, 0x0f, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, - 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, - 0xfc, 0x0e, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0x80, 0x00, - 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf0, 0x60, - 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x70, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x01, 0x03, 0x07, - 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, - 0x00, 0x01, 0x03, 0x07, 0x06, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00 - }; - oled_write_raw_P(layer_logo, sizeof(layer_logo)); -} - -void render_layer2_logo(void){ - static const char PROGMEM layer_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0x18, 0x30, 0x60, 0xe0, 0xc0, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc8, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x0f, 0x0f, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, - 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0x80, 0x00, - 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, - 0x3f, 0x70, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf0, 0x60, - 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x70, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x01, 0x03, 0x07, - 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, - 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, - 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, - 0x00, 0x01, 0x03, 0x07, 0x06, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00 - }; - oled_write_raw_P(layer_logo, sizeof(layer_logo)); -} - -void render_layer3_logo(void){ - static const char PROGMEM layer_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0x18, 0x30, 0x60, 0xe0, 0xc0, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc8, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x0f, 0x0f, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, - 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0x80, 0x00, - 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0x70, 0x38, 0x1f, 0x07, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf0, 0x60, - 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x70, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x01, 0x03, 0x07, - 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, - 0x00, 0x01, 0x03, 0x07, 0x06, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00 - }; - oled_write_raw_P(layer_logo, sizeof(layer_logo)); -} - -void render_layer4_logo(void){ - static const char PROGMEM layer_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0x18, 0x30, 0x60, 0xe0, 0xc0, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc8, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x0f, 0x0f, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, - 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x07, 0x0e, 0xfc, 0xf0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0x80, 0x00, - 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf0, 0x60, - 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x70, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x01, 0x03, 0x07, - 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, - 0x00, 0x01, 0x03, 0x07, 0x06, 0x0c, 0x0c, 0x0c, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00 - }; - oled_write_raw_P(layer_logo, sizeof(layer_logo)); -} - -void render_logo(void) { - static const char PROGMEM logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0x60, 0x60, 0x60, - 0x60, 0x60, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, - 0x00, 0xe0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfc, 0x1e, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, - 0x80, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, - 0xe0, 0xc0, 0x80, 0x80, 0xc0, 0xc0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, - 0x00, 0x1f, 0xff, 0xff, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, 0x78, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x01, - 0x01, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0x78, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, - 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }; - oled_write_raw_P(logo, sizeof(logo)); -} - -void process_layer_state(void) { - switch (get_highest_layer(layer_state)) { - case 0: - render_layer1_logo(); - break; - case 1: - render_layer2_logo(); - break; - case 2: - render_layer3_logo(); - break; - case 3: - render_layer4_logo(); - break; + if (!is_keyboard_master()) { + return OLED_ROTATION_180; } + return rotation; } bool oled_task_kb(void) { - if (!oled_task_user()) { return false; } + if (!oled_task_user()) { + return false; + } if (is_keyboard_master()) { - process_layer_state(); + render_layer_state(); } else { - render_logo(); + oled_write_raw_P(bs_logo_img, sizeof(bs_logo_img)); } return false; } diff --git a/keyboards/boardsource/lulu/rp2040/rules.mk b/keyboards/boardsource/lulu/rp2040/rules.mk index 161ec22b16e..118c27fc6a2 100644 --- a/keyboards/boardsource/lulu/rp2040/rules.mk +++ b/keyboards/boardsource/lulu/rp2040/rules.mk @@ -1 +1,2 @@ SERIAL_DRIVER = vendor +SRC += lib/oled.c diff --git a/keyboards/boardsource/the_q/keyboard.json b/keyboards/boardsource/the_q/keyboard.json new file mode 100644 index 00000000000..61ff49330ed --- /dev/null +++ b/keyboards/boardsource/the_q/keyboard.json @@ -0,0 +1,142 @@ +{ + "manufacturer": "Boardsource", + "keyboard_name": "The Q", + "maintainer": "waffle87", + "development_board": "promicro", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true, + "oled": true + }, + "matrix_pins": { + "rows": ["B2", "B3", "B1", "F7", "F6", "F5", "F4"], + "cols": ["D4", "C6", "D7", "E6", "B4", "B5"] + }, + "url": "https://boardsource.xyz", + "usb": { + "device_version": "1.0.0", + "pid": "0x7552", + "vid": "0x4273" + }, + "ws2812": { + "pin": "B6" + }, + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "band_sat": true, + "band_val": true, + "breathing": true, + "gradient_left_right": true, + "gradient_up_down": true + }, + "default": { + "animation": "alphas_mods" + }, + "max_brightness": 150, + "driver": "ws2812", + "layout": [ + {"x": 112.2, "y": 10.6, "flags": 2}, + {"x": 181, "y": 5.3, "flags": 2}, + {"x": 215.4, "y": 53.3, "flags": 2}, + {"x": 112.2, "y": 64, "flags": 2}, + {"x": 26.2, "y": 53.3, "flags": 2}, + {"x": 43.4, "y": 5.3, "flags": 2}, + {"matrix": [0, 1], "x": 17.6, "y": 0, "flags": 4}, + {"matrix": [1, 1], "x": 17.6, "y": 42.7, "flags": 4}, + {"matrix": [2, 1], "x": 17.6, "y": 21.4, "flags": 4}, + {"matrix": [2, 2], "x": 34.8, "y": 21.4, "flags": 4}, + {"matrix": [1, 2], "x": 34.8, "y": 42.7, "flags": 4}, + {"matrix": [0, 2], "x": 34.8, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 52, "y": 0, "flags": 4}, + {"matrix": [1, 3], "x": 52, "y": 42.7, "flags": 4}, + {"matrix": [2, 3], "x": 52, "y": 21.4, "flags": 4}, + {"matrix": [2, 4], "x": 69.2, "y": 21.4, "flags": 4}, + {"matrix": [1, 4], "x": 69.2, "y": 42.7, "flags": 4}, + {"matrix": [0, 4], "x": 69.2, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 86.4, "y": 0, "flags": 4}, + {"matrix": [1, 5], "x": 86.4, "y": 42.7, "flags": 4}, + {"matrix": [2, 5], "x": 86.4, "y": 21.4, "flags": 4}, + {"matrix": [3, 0], "x": 69.2, "y": 20, "flags": 1}, + {"matrix": [3, 1], "x": 86.4, "y": 20, "flags": 1}, + {"matrix": [3, 2], "x": 103.6, "y": 64, "flags": 1}, + {"matrix": [3, 3], "x": 120.8, "y": 64, "flags": 1}, + {"matrix": [3, 4], "x": 138, "y": 20, "flags": 1}, + {"matrix": [3, 5], "x": 155.2, "y": 20, "flags": 1}, + {"matrix": [4, 5], "x": 138, "y": 21.4, "flags": 4}, + {"matrix": [5, 5], "x": 138, "y": 42.7, "flags": 4}, + {"matrix": [6, 5], "x": 138, "y": 0, "flags": 4}, + {"matrix": [6, 4], "x": 155.2, "y": 0, "flags": 4}, + {"matrix": [5, 4], "x": 155.2, "y": 42.7, "flags": 4}, + {"matrix": [4, 4], "x": 155.2, "y": 21.4, "flags": 4}, + {"matrix": [4, 3], "x": 172.4, "y": 21.4, "flags": 4}, + {"matrix": [5, 3], "x": 172.4, "y": 42.7, "flags": 4}, + {"matrix": [6, 3], "x": 172.4, "y": 0, "flags": 4}, + {"matrix": [6, 2], "x": 189.6, "y": 0, "flags": 4}, + {"matrix": [5, 2], "x": 189.6, "y": 42.7, "flags": 4}, + {"matrix": [4, 2], "x": 189.6, "y": 21.4, "flags": 4}, + {"matrix": [4, 1], "x": 206.8, "y": 21.4, "flags": 4}, + {"matrix": [5, 1], "x": 206.8, "y": 42.7, "flags": 4}, + {"matrix": [6, 1], "x": 206.8, "y": 0, "flags": 4}, + {"matrix": [6, 0], "x": 224, "y": 0, "flags": 1}, + {"matrix": [5, 0], "x": 224, "y": 42.7, "flags": 1}, + {"matrix": [4, 0], "x": 224, "y": 21.4, "flags": 1}, + {"matrix": [2, 0], "x": 0, "y": 21.4, "flags": 1}, + {"matrix": [1, 0], "x": 0, "y": 42.7, "flags": 1}, + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1} + ] + }, + "community_layouts": ["split_3x6_3"], + "layouts": { + "LAYOUT_split_3x6_3": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.25}, + {"matrix": [0, 1], "x": 1, "y": 0.25}, + {"matrix": [0, 2], "x": 2, "y": 0.125}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0.125}, + {"matrix": [0, 5], "x": 5, "y": 0.25}, + {"matrix": [6, 5], "x": 8, "y": 0.25}, + {"matrix": [6, 4], "x": 9, "y": 0.125}, + {"matrix": [6, 3], "x": 10, "y": 0}, + {"matrix": [6, 2], "x": 11, "y": 0.125}, + {"matrix": [6, 1], "x": 12, "y": 0.25}, + {"matrix": [6, 0], "x": 13, "y": 0.25}, + {"matrix": [1, 0], "x": 0, "y": 1.25}, + {"matrix": [1, 1], "x": 1, "y": 1.25}, + {"matrix": [1, 2], "x": 2, "y": 1.125}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1.125}, + {"matrix": [1, 5], "x": 5, "y": 1.25}, + {"matrix": [5, 5], "x": 8, "y": 1.25}, + {"matrix": [5, 4], "x": 9, "y": 1.125}, + {"matrix": [5, 3], "x": 10, "y": 1}, + {"matrix": [5, 2], "x": 11, "y": 1.125}, + {"matrix": [5, 1], "x": 12, "y": 1.25}, + {"matrix": [5, 0], "x": 13, "y": 1.25}, + {"matrix": [2, 0], "x": 0, "y": 2.25}, + {"matrix": [2, 1], "x": 1, "y": 2.25}, + {"matrix": [2, 2], "x": 2, "y": 2.125}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2.125}, + {"matrix": [2, 5], "x": 5, "y": 2.25}, + {"matrix": [4, 5], "x": 8, "y": 2.25}, + {"matrix": [4, 4], "x": 9, "y": 2.125}, + {"matrix": [4, 3], "x": 10, "y": 2}, + {"matrix": [4, 2], "x": 11, "y": 2.125}, + {"matrix": [4, 1], "x": 12, "y": 2.25}, + {"matrix": [4, 0], "x": 13, "y": 2.25}, + {"matrix": [3, 0], "x": 3.5, "y": 3.25}, + {"matrix": [3, 1], "x": 4.5, "y": 3.5}, + {"matrix": [3, 2], "x": 5.5, "y": 3.75}, + {"matrix": [3, 3], "x": 7.5, "y": 3.75}, + {"matrix": [3, 4], "x": 8.5, "y": 3.5}, + {"matrix": [3, 5], "x": 9.5, "y": 3.25} + ] + } + } +} diff --git a/keyboards/boardsource/the_q/keymaps/default/keymap.json b/keyboards/boardsource/the_q/keymaps/default/keymap.json new file mode 100644 index 00000000000..69aa6f86296 --- /dev/null +++ b/keyboards/boardsource/the_q/keymaps/default/keymap.json @@ -0,0 +1,25 @@ +{ + "keyboard": "boardsource/the_q", + "keymap": "default", + "layout": "LAYOUT_split_3x6_3", + "layers": [ + [ + "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_LCTL", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_H", "KC_J", "KC_K", "KC_L", "KC_SCLN", "KC_QUOT", + "KC_LSFT", "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "KC_SLSH", "KC_ESC", + "KC_LGUI", "MO(1)", "KC_SPC", "KC_ENT", "MO(2)", "KC_RALT" + ], + [ + "_______", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_7", "KC_8", "KC_9", "KC_0", "_______", + "_______", "KC_EXLM", "KC_AT", "KC_HASH", "KC_DLR", "KC_PERC", "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "_______", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______" + ], + [ + "QK_BOOT", "_______", "_______", "_______", "_______", "_______", "RGB_VAI", "RGB_HUI", "RGB_SAI", "RGB_MOD", "RGB_TOG", "_______", + "EE_CLR", "_______", "_______", "_______", "_______", "_______", "RGB_VAD", "RGB_HUD", "RGB_SAD", "RGB_RMOD", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______" + ] + ] +} diff --git a/keyboards/boardsource/the_q/keymaps/via/keymap.json b/keyboards/boardsource/the_q/keymaps/via/keymap.json new file mode 100644 index 00000000000..40a68c3f51f --- /dev/null +++ b/keyboards/boardsource/the_q/keymaps/via/keymap.json @@ -0,0 +1,30 @@ +{ + "keyboard": "boardsource/the_q", + "keymap": "via", + "layout": "LAYOUT_split_3x6_3", + "config": { + "features": { + "via": true + } + }, + "layers": [ + [ + "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_LCTL", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_H", "KC_J", "KC_K", "KC_L", "KC_SCLN", "KC_QUOT", + "KC_LSFT", "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "KC_SLSH", "KC_ESC", + "KC_LGUI", "MO(1)", "KC_SPC", "KC_ENT", "MO(2)", "KC_RALT" + ], + [ + "_______", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_7", "KC_8", "KC_9", "KC_0", "_______", + "_______", "KC_EXLM", "KC_AT", "KC_HASH", "KC_DLR", "KC_PERC", "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "_______", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______" + ], + [ + "QK_BOOT", "_______", "_______", "_______", "_______", "_______", "RGB_VAI", "RGB_HUI", "RGB_SAI", "RGB_MOD", "RGB_TOG", "_______", + "EE_CLR", "_______", "_______", "_______", "_______", "_______", "RGB_VAD", "RGB_HUD", "RGB_SAD", "RGB_RMOD", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______" + ] + ] +} diff --git a/keyboards/boardsource/the_q/readme.md b/keyboards/boardsource/the_q/readme.md new file mode 100644 index 00000000000..9ec8fe8eda5 --- /dev/null +++ b/keyboards/boardsource/the_q/readme.md @@ -0,0 +1,23 @@ +# The Q + +* Keyboard Maintainer: [waffle87](https://github.com/waffle87) +* Hardware Supported: The Q PCB w/ Pro Micro style microcontroller +* Hardware Availability: [boardsource.xyz](https://boardsource.xyz) + +Make example for this keyboard (after setting up your build environment): + + make boardsource/the_q:default + +Flashing example for this keyboard: + + mke boardsource/the_q: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 (top left key) +* **Physical reset button**: Briefly press the button on the front of the PCB +* **Keycode in layout**: Press the key mapped to `QK_BOOT` diff --git a/keyboards/boardsource/the_q/rules.mk b/keyboards/boardsource/the_q/rules.mk new file mode 100644 index 00000000000..de6a3d8afca --- /dev/null +++ b/keyboards/boardsource/the_q/rules.mk @@ -0,0 +1 @@ +SRC += lib/oled.c diff --git a/keyboards/boardsource/the_q/the_q.c b/keyboards/boardsource/the_q/the_q.c new file mode 100644 index 00000000000..09294569114 --- /dev/null +++ b/keyboards/boardsource/the_q/the_q.c @@ -0,0 +1,14 @@ +// Copyright 2024 jack (@waffle87) +// SPDX-License-Identifier: GPL-2.0-or-later +#include "quantum.h" +#include "lib/oled.h" + +#ifdef OLED_ENABLE +bool oled_task_kb(void) { + if (!oled_task_user()) { + return false; + } + render_layer_state(); + return false; +} +#endif diff --git a/keyboards/boardsource/unicorne/rules.mk b/keyboards/boardsource/unicorne/rules.mk index 48b30dcd51a..448962cf002 100644 --- a/keyboards/boardsource/unicorne/rules.mk +++ b/keyboards/boardsource/unicorne/rules.mk @@ -1,2 +1,3 @@ SERIAL_DRIVER = vendor POINTING_DEVICE_DRIVER = analog_joystick +SRC += lib/oled.c diff --git a/keyboards/boardsource/unicorne/unicorne.c b/keyboards/boardsource/unicorne/unicorne.c index 22cd1e4a37d..f9dac8d3efb 100644 --- a/keyboards/boardsource/unicorne/unicorne.c +++ b/keyboards/boardsource/unicorne/unicorne.c @@ -1,6 +1,7 @@ -// Copyright 2023 jack (@waffle87) +// Copyright 2024 jack (@waffle87) // SPDX-License-Identifier: GPL-2.0-or-later -#include "unicorne.h" +#include "quantum.h" +#include "lib/oled.h" #ifdef OLED_ENABLE oled_rotation_t oled_init_kb(oled_rotation_t rotation) { @@ -15,22 +16,9 @@ bool oled_task_kb(void) { return false; } if (is_keyboard_master()) { - switch (get_highest_layer(layer_state)) { - case 0: - oled_write_raw(layer_zero, sizeof(layer_zero)); - break; - case 1: - oled_write_raw(layer_one, sizeof(layer_one)); - break; - case 2: - oled_write_raw(layer_two, sizeof(layer_two)); - break; - case 3: - oled_write_raw(layer_three, sizeof(layer_three)); - break; - } + render_layer_state(); } else { - oled_write_raw(logo, sizeof(logo)); + oled_write_raw_P(bs_logo_img, sizeof(bs_logo_img)); } return false; } From fb54a59bba20d83be7a42da52faf3e6afebc1c26 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 11 Jul 2024 10:09:41 +1000 Subject: [PATCH 207/519] `jadookb/jkb65`: move RGB Matrix LED config to data driven (#24080) --- keyboards/jadookb/jkb65/config.h | 19 -------- keyboards/jadookb/jkb65/info.json | 73 +++++++++++++++++++++++++++++++ keyboards/jadookb/jkb65/jkb65.c | 29 +----------- 3 files changed, 74 insertions(+), 47 deletions(-) delete mode 100644 keyboards/jadookb/jkb65/config.h diff --git a/keyboards/jadookb/jkb65/config.h b/keyboards/jadookb/jkb65/config.h deleted file mode 100644 index a0793c58611..00000000000 --- a/keyboards/jadookb/jkb65/config.h +++ /dev/null @@ -1,19 +0,0 @@ - /* Copyright 2021 Wizad-GG - * - * 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 . - */ - -#pragma once - -#define RGB_MATRIX_LED_COUNT 67 diff --git a/keyboards/jadookb/jkb65/info.json b/keyboards/jadookb/jkb65/info.json index 054b1c5452c..c4a44a0d744 100644 --- a/keyboards/jadookb/jkb65/info.json +++ b/keyboards/jadookb/jkb65/info.json @@ -77,6 +77,79 @@ "animation": "cycle_all" }, "driver": "ws2812", + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1}, + {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 30, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 45, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 60, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 75, "y": 0, "flags": 4}, + {"matrix": [0, 6], "x": 90, "y": 0, "flags": 4}, + {"matrix": [0, 7], "x": 105, "y": 0, "flags": 4}, + {"matrix": [0, 8], "x": 120, "y": 0, "flags": 4}, + {"matrix": [0, 9], "x": 134, "y": 0, "flags": 4}, + {"matrix": [0, 10], "x": 149, "y": 0, "flags": 4}, + {"matrix": [0, 11], "x": 164, "y": 0, "flags": 4}, + {"matrix": [0, 12], "x": 179, "y": 0, "flags": 4}, + {"matrix": [0, 14], "x": 202, "y": 0, "flags": 1}, + {"matrix": [0, 15], "x": 224, "y": 0, "flags": 1}, + + {"matrix": [1, 0], "x": 4, "y": 16, "flags": 1}, + {"matrix": [1, 1], "x": 22, "y": 16, "flags": 4}, + {"matrix": [1, 2], "x": 37, "y": 16, "flags": 4}, + {"matrix": [1, 3], "x": 52, "y": 16, "flags": 4}, + {"matrix": [1, 4], "x": 67, "y": 16, "flags": 4}, + {"matrix": [1, 5], "x": 82, "y": 16, "flags": 4}, + {"matrix": [1, 6], "x": 97, "y": 16, "flags": 4}, + {"matrix": [1, 7], "x": 112, "y": 16, "flags": 4}, + {"matrix": [1, 8], "x": 127, "y": 16, "flags": 4}, + {"matrix": [1, 9], "x": 142, "y": 16, "flags": 4}, + {"matrix": [1, 10], "x": 157, "y": 16, "flags": 4}, + {"matrix": [1, 11], "x": 172, "y": 16, "flags": 4}, + {"matrix": [1, 12], "x": 187, "y": 16, "flags": 4}, + {"matrix": [1, 13], "x": 205, "y": 16, "flags": 4}, + {"matrix": [1, 15], "x": 224, "y": 16, "flags": 1}, + + {"matrix": [2, 0], "x": 6, "y": 32, "flags": 1}, + {"matrix": [2, 1], "x": 26, "y": 32, "flags": 4}, + {"matrix": [2, 2], "x": 41, "y": 32, "flags": 4}, + {"matrix": [2, 3], "x": 56, "y": 32, "flags": 4}, + {"matrix": [2, 4], "x": 71, "y": 32, "flags": 4}, + {"matrix": [2, 5], "x": 86, "y": 32, "flags": 4}, + {"matrix": [2, 6], "x": 101, "y": 32, "flags": 4}, + {"matrix": [2, 7], "x": 116, "y": 32, "flags": 4}, + {"matrix": [2, 8], "x": 131, "y": 32, "flags": 4}, + {"matrix": [2, 9], "x": 146, "y": 32, "flags": 4}, + {"matrix": [2, 10], "x": 161, "y": 32, "flags": 4}, + {"matrix": [2, 11], "x": 175, "y": 32, "flags": 4}, + {"matrix": [2, 13], "x": 200, "y": 32, "flags": 1}, + {"matrix": [2, 15], "x": 224, "y": 32, "flags": 1}, + + {"matrix": [3, 0], "x": 9, "y": 48, "flags": 1}, + {"matrix": [3, 2], "x": 34, "y": 48, "flags": 4}, + {"matrix": [3, 3], "x": 49, "y": 48, "flags": 4}, + {"matrix": [3, 4], "x": 63, "y": 48, "flags": 4}, + {"matrix": [3, 5], "x": 78, "y": 48, "flags": 4}, + {"matrix": [3, 6], "x": 93, "y": 48, "flags": 4}, + {"matrix": [3, 7], "x": 108, "y": 48, "flags": 4}, + {"matrix": [3, 8], "x": 123, "y": 48, "flags": 4}, + {"matrix": [3, 9], "x": 138, "y": 48, "flags": 4}, + {"matrix": [3, 10], "x": 153, "y": 48, "flags": 4}, + {"matrix": [3, 11], "x": 168, "y": 48, "flags": 4}, + {"matrix": [3, 12], "x": 189, "y": 48, "flags": 1}, + {"matrix": [3, 13], "x": 209, "y": 48, "flags": 1}, + {"matrix": [3, 15], "x": 224, "y": 48, "flags": 1}, + + {"matrix": [4, 0], "x": 2, "y": 64, "flags": 1}, + {"matrix": [4, 1], "x": 21, "y": 64, "flags": 1}, + {"matrix": [4, 2], "x": 39, "y": 64, "flags": 1}, + {"matrix": [4, 6], "x": 95, "y": 64, "flags": 4}, + {"matrix": [4, 10], "x": 151, "y": 64, "flags": 1}, + {"matrix": [4, 11], "x": 170, "y": 64, "flags": 1}, + {"matrix": [4, 12], "x": 194, "y": 64, "flags": 1}, + {"matrix": [4, 13], "x": 209, "y": 64, "flags": 1}, + {"matrix": [4, 15], "x": 224, "y": 64, "flags": 1} + ], "led_process_limit": 4, "led_flush_limit": 26, "sleep": true, diff --git a/keyboards/jadookb/jkb65/jkb65.c b/keyboards/jadookb/jkb65/jkb65.c index 0e76162b5ab..54037899dca 100644 --- a/keyboards/jadookb/jkb65/jkb65.c +++ b/keyboards/jadookb/jkb65/jkb65.c @@ -17,38 +17,11 @@ #include "quantum.h" #ifdef RGB_MATRIX_ENABLE - -led_config_t g_led_config = { { - // Key Matrix to LED Index - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }, - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 }, - { 30, NO_LED, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43 }, - { NO_LED, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57 }, - { 58, 59, 60, NO_LED, NO_LED, NO_LED, 61, NO_LED, NO_LED, 62, 63, 64, 65, 66 } -}, { - // LED Index to Physical Position - { 0, 0}, { 15, 0}, { 30, 0}, { 45, 0}, { 60, 0}, { 75, 0}, { 90, 0}, {105, 0}, {120, 0}, {135, 0}, {150, 0}, {165, 0}, {180, 0}, {202, 0}, {225, 0}, // Esc, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, -, =, Backspace, Delete - { 4, 16}, { 22, 16}, { 37, 16}, { 52, 16}, { 67, 16}, { 82, 16}, { 97, 16}, {112, 16}, {127, 16}, {142, 16}, {157, 16}, {172, 16}, {187, 16}, {206, 16}, {225, 16}, // Tab, Q, W, E, R, T, Y, U, I, O, P, [, ], backslash , Home - { 6, 32}, { 26, 32}, { 41, 32}, { 56, 32}, { 71, 32}, { 86, 32}, {101, 32}, {116, 32}, {131, 32}, {146, 32}, {161, 32}, {176, 32}, {201, 32}, {225, 32}, // Capslock, A, S, D, F, G, H, J, K, L, ;, ', Enter, Page up - { 9, 48}, { 34, 48}, { 49, 48}, { 64, 48}, { 79, 48}, { 94, 48}, {109, 48}, {124, 48}, {139, 48}, {154, 48}, {169, 48}, {189, 48}, {208, 48}, {225, 48}, // LShift, Z, X, C, V, B, N, M, ,, ., /, Shift, Up, Page Down - { 2, 64}, { 21, 64}, { 39, 64}, { 94, 64}, {148, 64}, {163, 64}, {193, 64}, {208, 64}, {225, 64}, // Ctrl, GUI, Alt, Space, RAlt, FN, Ctrl, Left, Down, Right - -}, { - // LED Index to Flag - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, // Esc, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, -, =, Backspace, Delete - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // Tab, Q, W, E, R, T, Y, U, I, O, P, [, ], backslash , Home - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, // Capslock, A, S, D, F, G, H, J, K, L, ;, ', Enter, Page up - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, // LShift, Z, X, C, V, B, N, M, ,, ., /, Shift, Up, Page Down - 1, 1, 1, 4, 1, 1, 1, 1, 1, // Ctrl, GUI, Alt, Space, Alt, FN, Left, Down, Right - -} }; - - bool rgb_matrix_indicators_kb(void) { if (!rgb_matrix_indicators_user()) { return false; } - if (host_keyboard_led_state().caps_lock) { + if (host_keyboard_led_state().caps_lock) { rgb_matrix_set_color(30, 0xFF, 0xFF, 0xFF); } return true; From d69b44e68a3e00a229df860b1f0af01790bf49ca Mon Sep 17 00:00:00 2001 From: Will Hedges <36576135+will-hedges@users.noreply.github.com> Date: Wed, 10 Jul 2024 19:15:35 -0500 Subject: [PATCH 208/519] refactor bear_face/v1, v2 (#24060) Co-authored-by: jack --- keyboards/bear_face/info.json | 22 ++-- keyboards/bear_face/rules.mk | 1 - keyboards/bear_face/v1/keyboard.json | 6 +- .../bear_face/v1/keymaps/default/keymap.c | 32 ++---- keyboards/bear_face/v2/keyboard.json | 100 +++++++++++++++++- .../bear_face/v2/keymaps/default/keymap.c | 22 +--- .../bear_face/v2/keymaps/default/readme.md | 4 + .../bear_face/v2/keymaps/default_iso/keymap.c | 22 +--- .../bear_face/v3/keymaps/default/keymap.c | 2 +- .../bear_face/v3/keymaps/default_iso/keymap.c | 2 +- 10 files changed, 135 insertions(+), 78 deletions(-) delete mode 100644 keyboards/bear_face/rules.mk diff --git a/keyboards/bear_face/info.json b/keyboards/bear_face/info.json index ad5b1dd7d9d..90191299d87 100644 --- a/keyboards/bear_face/info.json +++ b/keyboards/bear_face/info.json @@ -1,22 +1,18 @@ { - "keyboard_name": "bear_face", - "manufacturer": "chemicalwill", - "url": "https://github.com/chemicalwill/bear_face_pcb", - "maintainer": "chemicalwill", - "debounce": 6, + "manufacturer": "will-hedges", + "url": "https://github.com/will-hedges", + "maintainer": "will-hedges", "usb": { "vid": "0xFEED", - "pid": "0x09F5", - "force_nkro": true + "pid": "0x09F5" }, "features": { "backlight": true, - "bootmagic": false, + "bootmagic": true, "command": false, "console": false, "extrakey": true, - "mousekey": false, - "nkro": true + "mousekey": false }, "qmk": { "locking": { @@ -24,16 +20,14 @@ "resync": true } }, - "indicators": { - "caps_lock": "F7" - }, "matrix_pins": { "cols": ["B5", "C7", "C6", "F0", "E6", "B7", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4"], "rows": ["F5", "F6", "F4", "F1", "B0", "B6"] }, "diode_direction": "COL2ROW", "backlight": { - "driver": "timer", + "as_caps_lock": true, + "driver": "software", "pin": "F7" }, "processor": "atmega32u4", diff --git a/keyboards/bear_face/rules.mk b/keyboards/bear_face/rules.mk deleted file mode 100644 index f11303978e8..00000000000 --- a/keyboards/bear_face/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = bear_face/v1 diff --git a/keyboards/bear_face/v1/keyboard.json b/keyboards/bear_face/v1/keyboard.json index 8dedc0b1c7b..8c60089bbbb 100644 --- a/keyboards/bear_face/v1/keyboard.json +++ b/keyboards/bear_face/v1/keyboard.json @@ -1,9 +1,13 @@ { + "keyboard_name": "bear_face v1", "usb": { "device_version": "1.0.0" }, + "backlight": { + "on_state": 0 + }, "layouts": { - "LAYOUT_83_ansi": { + "LAYOUT": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1.5}, {"matrix": [0, 1], "x": 1.5, "y": 0}, diff --git a/keyboards/bear_face/v1/keymaps/default/keymap.c b/keyboards/bear_face/v1/keymaps/default/keymap.c index fc92c783dbe..e615a3915d8 100644 --- a/keyboards/bear_face/v1/keymaps/default/keymap.c +++ b/keyboards/bear_face/v1/keymaps/default/keymap.c @@ -1,19 +1,5 @@ -/* -Copyright 2020 chemicalwill - -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 . -*/ +/* Copyright 2024 will-hedges */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ #include QMK_KEYBOARD_H @@ -28,13 +14,13 @@ enum layers { //custom keycode enums enum custom_keycodes { - BASE_QWER = SAFE_RANGE, + BASE_QWER = QK_USER, BASE_COLE, BASE_DVOR }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QWER] = LAYOUT_83_ansi( + [_QWER] = LAYOUT( KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, 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_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, @@ -43,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - [_COLE] = LAYOUT_83_ansi( + [_COLE] = LAYOUT( KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, 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_HOME, KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP, @@ -52,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - [_DVOR] = LAYOUT_83_ansi( + [_DVOR] = LAYOUT( KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, 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_LBRC, KC_RBRC, KC_BSPC, KC_HOME, KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSLS, KC_PGUP, @@ -61,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - [_FN1] = LAYOUT_83_ansi( + [_FN1] = LAYOUT( _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, BASE_QWER, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, BASE_COLE, @@ -71,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* - [_BLANK] = LAYOUT_83_ansi( + [_BLANK] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -82,8 +68,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ }; -//macros to allow the user to set whatever default layer they want, even after reboot +// macros to allow the user to set whatever default layer they want, even after reboot bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case BASE_QWER: diff --git a/keyboards/bear_face/v2/keyboard.json b/keyboards/bear_face/v2/keyboard.json index 908165babb0..456c920066f 100644 --- a/keyboards/bear_face/v2/keyboard.json +++ b/keyboards/bear_face/v2/keyboard.json @@ -1,8 +1,106 @@ { + "keyboard_name": "bear_face v2", "usb": { - "device_version": "2.0.0" + "device_version": "2.1.0" + }, + "backlight": { + "on_state": 0 }, "layouts": { + "LAYOUT_all": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "w": 1.5}, + {"matrix": [0, 1], "x": 1.5, "y": 0}, + {"matrix": [0, 2], "x": 2.5, "y": 0}, + {"matrix": [0, 3], "x": 3.5, "y": 0}, + {"matrix": [0, 4], "x": 4.5, "y": 0}, + {"matrix": [0, 5], "x": 5.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": 10.5, "y": 0}, + {"matrix": [0, 11], "x": 11.5, "y": 0}, + {"matrix": [0, 12], "x": 12.5, "y": 0}, + {"matrix": [0, 13], "x": 13.5, "y": 0}, + {"matrix": [0, 14], "x": 14.5, "y": 0, "w": 1.5}, + + {"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, 14], "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, 13], "x": 13.5, "y": 2, "w": 1.5}, + {"matrix": [2, 14], "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": [3, 13], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, + {"matrix": [3, 14], "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, 13], "x": 14, "y": 4}, + {"matrix": [4, 14], "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, 5], "x": 3.75, "y": 5, "w": 6.25}, + {"matrix": [5, 9], "x": 10, "y": 5}, + {"matrix": [5, 10], "x": 11, "y": 5}, + {"matrix": [5, 11], "x": 12, "y": 5}, + {"matrix": [5, 12], "x": 13, "y": 5}, + {"matrix": [5, 13], "x": 14, "y": 5}, + {"matrix": [5, 14], "x": 15, "y": 5} + ] + }, "LAYOUT_83_ansi": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1.5}, diff --git a/keyboards/bear_face/v2/keymaps/default/keymap.c b/keyboards/bear_face/v2/keymaps/default/keymap.c index 0d536b68f38..08f193052ad 100644 --- a/keyboards/bear_face/v2/keymaps/default/keymap.c +++ b/keyboards/bear_face/v2/keymaps/default/keymap.c @@ -1,19 +1,5 @@ -/* -Copyright 2020 chemicalwill - -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 . -*/ +/* Copyright 2024 will-hedges */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ #include QMK_KEYBOARD_H @@ -28,7 +14,7 @@ enum layers { //custom keycode enums enum custom_keycodes { - BASE_QWER = SAFE_RANGE, + BASE_QWER = QK_USER, BASE_COLE, BASE_DVOR }; @@ -82,8 +68,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ }; -//macros to allow the user to set whatever default layer they want, even after reboot +// macros to allow the user to set whatever default layer they want, even after reboot bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case BASE_QWER: diff --git a/keyboards/bear_face/v2/keymaps/default/readme.md b/keyboards/bear_face/v2/keymaps/default/readme.md index 5f9e635dfec..517baa5726c 100644 --- a/keyboards/bear_face/v2/keymaps/default/readme.md +++ b/keyboards/bear_face/v2/keymaps/default/readme.md @@ -13,3 +13,7 @@ This layout replaces the stock layout on the Vortex Race 3. * 'Reset' will put the keyboard into DFU mode * 'APP' sends 'KC_APP' * Base layer toggles for QWERTY, COLEMAK, and DVORAK layouts (will persist after reboot) + +- New things in v2: + * Option of ANSI or ISO layout + * Optional stepped caps (will require compatible plate) diff --git a/keyboards/bear_face/v2/keymaps/default_iso/keymap.c b/keyboards/bear_face/v2/keymaps/default_iso/keymap.c index e9e6c837f4d..a5e96207f69 100644 --- a/keyboards/bear_face/v2/keymaps/default_iso/keymap.c +++ b/keyboards/bear_face/v2/keymaps/default_iso/keymap.c @@ -1,19 +1,5 @@ -/* -Copyright 2020 chemicalwill - -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 . -*/ +/* Copyright 2024 will-hedges */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ #include QMK_KEYBOARD_H @@ -28,7 +14,7 @@ enum layers { //custom keycode enums enum custom_keycodes { - BASE_QWER = SAFE_RANGE, + BASE_QWER = QK_USER, BASE_COLE, BASE_DVOR }; @@ -82,8 +68,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ }; -//macros to allow the user to set whatever default layer they want, even after reboot +//macros to allow the user to set whatever default layer they want, even after reboot bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case BASE_QWER: diff --git a/keyboards/bear_face/v3/keymaps/default/keymap.c b/keyboards/bear_face/v3/keymaps/default/keymap.c index 77f161a7104..f6e71f1b34e 100644 --- a/keyboards/bear_face/v3/keymaps/default/keymap.c +++ b/keyboards/bear_face/v3/keymaps/default/keymap.c @@ -14,7 +14,7 @@ enum layers { //custom keycode enums enum custom_keycodes { - BASE_QWER = QK_KB_0, + BASE_QWER = QK_USER, BASE_COLE, BASE_DVOR }; diff --git a/keyboards/bear_face/v3/keymaps/default_iso/keymap.c b/keyboards/bear_face/v3/keymaps/default_iso/keymap.c index 73a1155b6a5..cc97d54a9be 100644 --- a/keyboards/bear_face/v3/keymaps/default_iso/keymap.c +++ b/keyboards/bear_face/v3/keymaps/default_iso/keymap.c @@ -14,7 +14,7 @@ enum layers { //custom keycode enums enum custom_keycodes { - BASE_QWER = SAFE_RANGE, + BASE_QWER = QK_USER, BASE_COLE, BASE_DVOR }; From f5319d891185d4c8099861a303701d312bfca9d1 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 11 Jul 2024 01:17:08 +0100 Subject: [PATCH 209/519] Remove DEFAULT_FOLDER from maple_computing/lets_split_eh (#24054) --- data/mappings/keyboard_aliases.hjson | 5 ++++- keyboards/maple_computing/lets_split_eh/{eh => }/config.h | 0 keyboards/maple_computing/lets_split_eh/eh/rules.mk | 2 -- .../maple_computing/lets_split_eh/{eh => }/keyboard.json | 3 ++- .../lets_split_eh/{eh/eh.c => lets_split_eh.c} | 0 keyboards/maple_computing/lets_split_eh/readme.md | 2 +- keyboards/maple_computing/lets_split_eh/rules.mk | 3 ++- 7 files changed, 9 insertions(+), 6 deletions(-) rename keyboards/maple_computing/lets_split_eh/{eh => }/config.h (100%) delete mode 100644 keyboards/maple_computing/lets_split_eh/eh/rules.mk rename keyboards/maple_computing/lets_split_eh/{eh => }/keyboard.json (98%) rename keyboards/maple_computing/lets_split_eh/{eh/eh.c => lets_split_eh.c} (100%) diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 57585aae923..14eec52e313 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -1060,7 +1060,7 @@ "target": "lyso1/lefishe" }, "lets_split_eh/eh": { - "target": "maple_computing/lets_split_eh/eh" + "target": "maple_computing/lets_split_eh" }, "ls_60": { "target": "weirdo/ls_60" @@ -1080,6 +1080,9 @@ "macro1": { "target": "laneware/macro1" }, + "maple_computing/lets_split_eh/eh": { + "target": "maple_computing/lets_split_eh" + }, "massdrop/thekey": { "target": "drop/thekey/v1" }, diff --git a/keyboards/maple_computing/lets_split_eh/eh/config.h b/keyboards/maple_computing/lets_split_eh/config.h similarity index 100% rename from keyboards/maple_computing/lets_split_eh/eh/config.h rename to keyboards/maple_computing/lets_split_eh/config.h diff --git a/keyboards/maple_computing/lets_split_eh/eh/rules.mk b/keyboards/maple_computing/lets_split_eh/eh/rules.mk deleted file mode 100644 index 271780b75ec..00000000000 --- a/keyboards/maple_computing/lets_split_eh/eh/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -# Disable unsupported hardware -AUDIO_SUPPORTED = no diff --git a/keyboards/maple_computing/lets_split_eh/eh/keyboard.json b/keyboards/maple_computing/lets_split_eh/keyboard.json similarity index 98% rename from keyboards/maple_computing/lets_split_eh/eh/keyboard.json rename to keyboards/maple_computing/lets_split_eh/keyboard.json index f40b15098f5..62d489d60c4 100644 --- a/keyboards/maple_computing/lets_split_eh/eh/keyboard.json +++ b/keyboards/maple_computing/lets_split_eh/keyboard.json @@ -19,6 +19,7 @@ "rgblight": { "led_count": 12, "split_count": [6, 6], + "sleep": true, "animations": { "breathing": true, "rainbow_mood": true, @@ -42,7 +43,7 @@ "processor": "atmega32u4", "bootloader": "atmel-dfu", "features": { - "bootmagic": false, + "bootmagic": true, "mousekey": false, "extrakey": true, "nkro": true, diff --git a/keyboards/maple_computing/lets_split_eh/eh/eh.c b/keyboards/maple_computing/lets_split_eh/lets_split_eh.c similarity index 100% rename from keyboards/maple_computing/lets_split_eh/eh/eh.c rename to keyboards/maple_computing/lets_split_eh/lets_split_eh.c diff --git a/keyboards/maple_computing/lets_split_eh/readme.md b/keyboards/maple_computing/lets_split_eh/readme.md index 90ae5393d1c..dc769b72c44 100644 --- a/keyboards/maple_computing/lets_split_eh/readme.md +++ b/keyboards/maple_computing/lets_split_eh/readme.md @@ -8,6 +8,6 @@ Keyboard Maintainer: [Christopher Poole (That-Canadian)](https://github.com/That Make example for this keyboard (after setting up your build environment): - make maple_computing/lets_split_eh/eh:default + make maple_computing/lets_split_eh:default See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. diff --git a/keyboards/maple_computing/lets_split_eh/rules.mk b/keyboards/maple_computing/lets_split_eh/rules.mk index 9bae45fde84..271780b75ec 100644 --- a/keyboards/maple_computing/lets_split_eh/rules.mk +++ b/keyboards/maple_computing/lets_split_eh/rules.mk @@ -1 +1,2 @@ -DEFAULT_FOLDER = maple_computing/lets_split_eh/eh +# Disable unsupported hardware +AUDIO_SUPPORTED = no From efa5b30cfdc0649c18ba5315a11cb3294c928dbd Mon Sep 17 00:00:00 2001 From: era <73109780+eerraa@users.noreply.github.com> Date: Thu, 11 Jul 2024 11:50:09 +0900 Subject: [PATCH 210/519] [Keyboard] Add Linx3 FAve65S (#24034) Co-authored-by: Duncan Sutherland --- keyboards/era/linx3/fave65s/config.h | 8 + keyboards/era/linx3/fave65s/fave65s.c | 16 + keyboards/era/linx3/fave65s/keyboard.json | 771 ++++++++++++++++++ .../linx3/fave65s/keymaps/default/keymap.c | 21 + .../era/linx3/fave65s/keymaps/via/keymap.c | 21 + .../era/linx3/fave65s/keymaps/via/rules.mk | 1 + keyboards/era/linx3/fave65s/readme.md | 26 + 7 files changed, 864 insertions(+) create mode 100644 keyboards/era/linx3/fave65s/config.h create mode 100644 keyboards/era/linx3/fave65s/fave65s.c create mode 100644 keyboards/era/linx3/fave65s/keyboard.json create mode 100644 keyboards/era/linx3/fave65s/keymaps/default/keymap.c create mode 100644 keyboards/era/linx3/fave65s/keymaps/via/keymap.c create mode 100644 keyboards/era/linx3/fave65s/keymaps/via/rules.mk create mode 100644 keyboards/era/linx3/fave65s/readme.md diff --git a/keyboards/era/linx3/fave65s/config.h b/keyboards/era/linx3/fave65s/config.h new file mode 100644 index 00000000000..28d7f4f370d --- /dev/null +++ b/keyboards/era/linx3/fave65s/config.h @@ -0,0 +1,8 @@ +// Copyright 2024 Hyojin Bak (@eerraa) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +/* Reset */ +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 2000U diff --git a/keyboards/era/linx3/fave65s/fave65s.c b/keyboards/era/linx3/fave65s/fave65s.c new file mode 100644 index 00000000000..751594bc933 --- /dev/null +++ b/keyboards/era/linx3/fave65s/fave65s.c @@ -0,0 +1,16 @@ +// Copyright 2024 Hyojin Bak (@eerraa) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "quantum.h" + +bool rgb_matrix_indicators_kb(void) { + if (!rgb_matrix_indicators_user()) { + return false; + } + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(0, 0, 128, 128); + } else { + rgb_matrix_set_color(0, 0, 0, 0); + } + return true; +} diff --git a/keyboards/era/linx3/fave65s/keyboard.json b/keyboards/era/linx3/fave65s/keyboard.json new file mode 100644 index 00000000000..9bb1e456949 --- /dev/null +++ b/keyboards/era/linx3/fave65s/keyboard.json @@ -0,0 +1,771 @@ +{ + "manufacturer": "eerraa", + "keyboard_name": "FAve65S", + "maintainer": "eerraa", + "bootloader": "rp2040", + "build": { + "debounce_type": "sym_defer_pk" + }, + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "matrix_pins": { + "cols": ["GP28", "GP27", "GP26", "GP0", "GP1", "GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP9", "GP12", "GP11", "GP10"], + "rows": ["GP25", "GP29", "GP18", "GP23", "GP24"] + }, + "processor": "RP2040", + "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, + "dual_beacon": true, + "flower_blooming": true, + "gradient_left_right": true, + "gradient_up_down": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "jellybean_raindrops": true, + "pixel_flow": true, + "pixel_fractal": true, + "pixel_rain": true, + "rainbow_beacon": true, + "rainbow_moving_chevron": true, + "rainbow_pinwheels": true, + "raindrops": true, + "riverflow": true, + "starlight": true, + "starlight_dual_hue": true, + "starlight_dual_sat": true + }, + "default": { + "animation": "rainbow_moving_chevron" + }, + "driver": "ws2812", + "layout": [ + {"matrix": [2, 0], "x": 10, "y": 39, "flags": 8}, + {"x": 0, "y": 0, "flags": 2}, + {"x": 13, "y": 0, "flags": 2}, + {"x": 26, "y": 0, "flags": 2}, + {"x": 40, "y": 0, "flags": 2}, + {"x": 53, "y": 0, "flags": 2}, + {"x": 66, "y": 0, "flags": 2}, + {"x": 79, "y": 0, "flags": 2}, + {"x": 92, "y": 0, "flags": 2}, + {"x": 105, "y": 0, "flags": 2}, + {"x": 119, "y": 0, "flags": 2}, + {"x": 132, "y": 0, "flags": 2}, + {"x": 145, "y": 0, "flags": 2}, + {"x": 158, "y": 0, "flags": 2}, + {"x": 171, "y": 0, "flags": 2}, + {"x": 184, "y": 0, "flags": 2}, + {"x": 198, "y": 0, "flags": 2}, + {"x": 211, "y": 0, "flags": 2}, + {"x": 224, "y": 0, "flags": 2}, + {"x": 224, "y": 13, "flags": 2}, + {"x": 224, "y": 26, "flags": 2}, + {"x": 224, "y": 38, "flags": 2}, + {"x": 224, "y": 51, "flags": 2}, + {"x": 224, "y": 64, "flags": 2}, + {"x": 211, "y": 64, "flags": 2}, + {"x": 198, "y": 64, "flags": 2}, + {"x": 184, "y": 64, "flags": 2}, + {"x": 171, "y": 64, "flags": 2}, + {"x": 158, "y": 64, "flags": 2}, + {"x": 145, "y": 64, "flags": 2}, + {"x": 132, "y": 64, "flags": 2}, + {"x": 119, "y": 64, "flags": 2}, + {"x": 105, "y": 64, "flags": 2}, + {"x": 92, "y": 64, "flags": 2}, + {"x": 79, "y": 64, "flags": 2}, + {"x": 66, "y": 64, "flags": 2}, + {"x": 53, "y": 64, "flags": 2}, + {"x": 40, "y": 64, "flags": 2}, + {"x": 26, "y": 64, "flags": 2}, + {"x": 13, "y": 64, "flags": 2}, + {"x": 0, "y": 64, "flags": 2}, + {"x": 0, "y": 51, "flags": 2}, + {"x": 0, "y": 38, "flags": 2}, + {"x": 0, "y": 26, "flags": 2}, + {"x": 0, "y": 13, "flags": 2} + ], + "sleep": true + }, + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x0011", + "vid": "0x4552" + }, + "ws2812": { + "driver": "vendor", + "pin": "GP19" + }, + "community_layouts": ["65_ansi_blocker", "65_ansi_blocker_split_bs", "65_ansi_blocker_tsangan", "65_ansi_blocker_tsangan_split_bs", "65_iso_blocker", "65_iso_blocker_split_bs", "65_iso_blocker_tsangan", "65_iso_blocker_tsangan_split_bs"], + "layouts": { + "LAYOUT_65_ansi_blocker": { + "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, 14], "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}, + {"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, 14], "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, 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}, + {"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, 14], "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, 5], "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, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + }, + "LAYOUT_65_ansi_blocker_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, "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, 14], "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, 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}, + {"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, 14], "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, 5], "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, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + }, + "LAYOUT_65_ansi_blocker_tsangan": { + "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, 14], "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}, + {"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, 14], "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, 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}, + {"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, 14], "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}, + {"matrix": [4, 5], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + }, + "LAYOUT_65_ansi_blocker_tsangan_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, "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, 14], "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, 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}, + {"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, 14], "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}, + {"matrix": [4, 5], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + }, + "LAYOUT_65_iso_blocker": { + "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, 14], "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}, + {"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, 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": 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}, + {"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, 14], "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, 5], "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, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + }, + "LAYOUT_65_iso_blocker_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, "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, 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": 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}, + {"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, 14], "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, 5], "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, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + }, + "LAYOUT_65_iso_blocker_tsangan": { + "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, 14], "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}, + {"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, 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": 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}, + {"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, 14], "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}, + {"matrix": [4, 5], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + }, + "LAYOUT_65_iso_blocker_tsangan_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, "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, 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": 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}, + {"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, 14], "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}, + {"matrix": [4, 5], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + }, + "LAYOUT_all": { + "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, 14], "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, 14], "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, 5], "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, 13], "x": 13, "y": 4}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + } + } +} diff --git a/keyboards/era/linx3/fave65s/keymaps/default/keymap.c b/keyboards/era/linx3/fave65s/keymaps/default/keymap.c new file mode 100644 index 00000000000..85eb4fb4ee2 --- /dev/null +++ b/keyboards/era/linx3/fave65s/keymaps/default/keymap.c @@ -0,0 +1,21 @@ +// Copyright 2024 QMK (@qmk) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + QK_GESC, 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_BSPC, KC_INS, + 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_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_PGUP, + 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_PGDN, + KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + KC_GRV, 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_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/era/linx3/fave65s/keymaps/via/keymap.c b/keyboards/era/linx3/fave65s/keymaps/via/keymap.c new file mode 100644 index 00000000000..85eb4fb4ee2 --- /dev/null +++ b/keyboards/era/linx3/fave65s/keymaps/via/keymap.c @@ -0,0 +1,21 @@ +// Copyright 2024 QMK (@qmk) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + QK_GESC, 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_BSPC, KC_INS, + 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_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_PGUP, + 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_PGDN, + KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + KC_GRV, 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_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/era/linx3/fave65s/keymaps/via/rules.mk b/keyboards/era/linx3/fave65s/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/era/linx3/fave65s/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/era/linx3/fave65s/readme.md b/keyboards/era/linx3/fave65s/readme.md new file mode 100644 index 00000000000..e31b3acef94 --- /dev/null +++ b/keyboards/era/linx3/fave65s/readme.md @@ -0,0 +1,26 @@ +# FAve 65S, Solder Ver + +![head](https://i.imgur.com/4Sc42zO.jpg) +![tail](https://i.imgur.com/hgCPtWg.jpg) + +* Keyboard Maintainer: [ERA](https://github.com/eerraa) +* Hardware supported: LINWORKS +* Hardware availability: [LINWORKS](https://allthatkeyboard.com/) + +Make example for this keyboard (after setting up your build environment): + + make era/linx3/fave65s:default + +Flashing example for this keyboard: + + make era/linx3/fave65s: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 ESC(0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly short the `RESET` and `GND` pads on the SWD header twice, or short the `BOOT` header and plug in keyboard +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available \ No newline at end of file From 494af672ced0f10bf5c60f9d5a8dac68d579640f Mon Sep 17 00:00:00 2001 From: jack Date: Thu, 11 Jul 2024 00:14:49 -0600 Subject: [PATCH 211/519] Fixup boardsource/the_q RGB matrix coordinates (#24086) --- keyboards/boardsource/the_q/keyboard.json | 86 +++++++++++------------ 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/keyboards/boardsource/the_q/keyboard.json b/keyboards/boardsource/the_q/keyboard.json index 61ff49330ed..b48b5e080b4 100644 --- a/keyboards/boardsource/the_q/keyboard.json +++ b/keyboards/boardsource/the_q/keyboard.json @@ -40,53 +40,53 @@ "max_brightness": 150, "driver": "ws2812", "layout": [ - {"x": 112.2, "y": 10.6, "flags": 2}, - {"x": 181, "y": 5.3, "flags": 2}, - {"x": 215.4, "y": 53.3, "flags": 2}, - {"x": 112.2, "y": 64, "flags": 2}, - {"x": 26.2, "y": 53.3, "flags": 2}, - {"x": 43.4, "y": 5.3, "flags": 2}, - {"matrix": [0, 1], "x": 17.6, "y": 0, "flags": 4}, - {"matrix": [1, 1], "x": 17.6, "y": 42.7, "flags": 4}, - {"matrix": [2, 1], "x": 17.6, "y": 21.4, "flags": 4}, - {"matrix": [2, 2], "x": 34.8, "y": 21.4, "flags": 4}, - {"matrix": [1, 2], "x": 34.8, "y": 42.7, "flags": 4}, - {"matrix": [0, 2], "x": 34.8, "y": 0, "flags": 4}, + {"x": 112, "y": 10, "flags": 2}, + {"x": 181, "y": 5, "flags": 2}, + {"x": 215, "y": 53, "flags": 2}, + {"x": 112, "y": 64, "flags": 2}, + {"x": 26, "y": 53, "flags": 2}, + {"x": 43, "y": 5, "flags": 2}, + {"matrix": [0, 1], "x": 17, "y": 0, "flags": 4}, + {"matrix": [1, 1], "x": 17, "y": 42, "flags": 4}, + {"matrix": [2, 1], "x": 17, "y": 21, "flags": 4}, + {"matrix": [2, 2], "x": 34, "y": 21, "flags": 4}, + {"matrix": [1, 2], "x": 34, "y": 42, "flags": 4}, + {"matrix": [0, 2], "x": 34, "y": 0, "flags": 4}, {"matrix": [0, 3], "x": 52, "y": 0, "flags": 4}, - {"matrix": [1, 3], "x": 52, "y": 42.7, "flags": 4}, - {"matrix": [2, 3], "x": 52, "y": 21.4, "flags": 4}, - {"matrix": [2, 4], "x": 69.2, "y": 21.4, "flags": 4}, - {"matrix": [1, 4], "x": 69.2, "y": 42.7, "flags": 4}, - {"matrix": [0, 4], "x": 69.2, "y": 0, "flags": 4}, - {"matrix": [0, 5], "x": 86.4, "y": 0, "flags": 4}, - {"matrix": [1, 5], "x": 86.4, "y": 42.7, "flags": 4}, - {"matrix": [2, 5], "x": 86.4, "y": 21.4, "flags": 4}, - {"matrix": [3, 0], "x": 69.2, "y": 20, "flags": 1}, - {"matrix": [3, 1], "x": 86.4, "y": 20, "flags": 1}, - {"matrix": [3, 2], "x": 103.6, "y": 64, "flags": 1}, - {"matrix": [3, 3], "x": 120.8, "y": 64, "flags": 1}, + {"matrix": [1, 3], "x": 52, "y": 42, "flags": 4}, + {"matrix": [2, 3], "x": 52, "y": 21, "flags": 4}, + {"matrix": [2, 4], "x": 69, "y": 21, "flags": 4}, + {"matrix": [1, 4], "x": 69, "y": 42, "flags": 4}, + {"matrix": [0, 4], "x": 69, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 86, "y": 0, "flags": 4}, + {"matrix": [1, 5], "x": 86, "y": 42, "flags": 4}, + {"matrix": [2, 5], "x": 86, "y": 21, "flags": 4}, + {"matrix": [3, 0], "x": 69, "y": 20, "flags": 1}, + {"matrix": [3, 1], "x": 86, "y": 20, "flags": 1}, + {"matrix": [3, 2], "x": 103, "y": 64, "flags": 1}, + {"matrix": [3, 3], "x": 120, "y": 64, "flags": 1}, {"matrix": [3, 4], "x": 138, "y": 20, "flags": 1}, - {"matrix": [3, 5], "x": 155.2, "y": 20, "flags": 1}, - {"matrix": [4, 5], "x": 138, "y": 21.4, "flags": 4}, - {"matrix": [5, 5], "x": 138, "y": 42.7, "flags": 4}, + {"matrix": [3, 5], "x": 155, "y": 20, "flags": 1}, + {"matrix": [4, 5], "x": 138, "y": 21, "flags": 4}, + {"matrix": [5, 5], "x": 138, "y": 42, "flags": 4}, {"matrix": [6, 5], "x": 138, "y": 0, "flags": 4}, - {"matrix": [6, 4], "x": 155.2, "y": 0, "flags": 4}, - {"matrix": [5, 4], "x": 155.2, "y": 42.7, "flags": 4}, - {"matrix": [4, 4], "x": 155.2, "y": 21.4, "flags": 4}, - {"matrix": [4, 3], "x": 172.4, "y": 21.4, "flags": 4}, - {"matrix": [5, 3], "x": 172.4, "y": 42.7, "flags": 4}, - {"matrix": [6, 3], "x": 172.4, "y": 0, "flags": 4}, - {"matrix": [6, 2], "x": 189.6, "y": 0, "flags": 4}, - {"matrix": [5, 2], "x": 189.6, "y": 42.7, "flags": 4}, - {"matrix": [4, 2], "x": 189.6, "y": 21.4, "flags": 4}, - {"matrix": [4, 1], "x": 206.8, "y": 21.4, "flags": 4}, - {"matrix": [5, 1], "x": 206.8, "y": 42.7, "flags": 4}, - {"matrix": [6, 1], "x": 206.8, "y": 0, "flags": 4}, + {"matrix": [6, 4], "x": 155, "y": 0, "flags": 4}, + {"matrix": [5, 4], "x": 155, "y": 42, "flags": 4}, + {"matrix": [4, 4], "x": 155, "y": 21, "flags": 4}, + {"matrix": [4, 3], "x": 172, "y": 21, "flags": 4}, + {"matrix": [5, 3], "x": 172, "y": 42, "flags": 4}, + {"matrix": [6, 3], "x": 172, "y": 0, "flags": 4}, + {"matrix": [6, 2], "x": 189, "y": 0, "flags": 4}, + {"matrix": [5, 2], "x": 189, "y": 42, "flags": 4}, + {"matrix": [4, 2], "x": 189, "y": 21, "flags": 4}, + {"matrix": [4, 1], "x": 206, "y": 21, "flags": 4}, + {"matrix": [5, 1], "x": 206, "y": 42, "flags": 4}, + {"matrix": [6, 1], "x": 206, "y": 0, "flags": 4}, {"matrix": [6, 0], "x": 224, "y": 0, "flags": 1}, - {"matrix": [5, 0], "x": 224, "y": 42.7, "flags": 1}, - {"matrix": [4, 0], "x": 224, "y": 21.4, "flags": 1}, - {"matrix": [2, 0], "x": 0, "y": 21.4, "flags": 1}, - {"matrix": [1, 0], "x": 0, "y": 42.7, "flags": 1}, + {"matrix": [5, 0], "x": 224, "y": 42, "flags": 1}, + {"matrix": [4, 0], "x": 224, "y": 21, "flags": 1}, + {"matrix": [2, 0], "x": 0, "y": 21, "flags": 1}, + {"matrix": [1, 0], "x": 0, "y": 42, "flags": 1}, {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1} ] }, From b066c86e432347e8abd52eb0faffc3db26dd4ede Mon Sep 17 00:00:00 2001 From: zvecr Date: Thu, 11 Jul 2024 11:03:11 +0100 Subject: [PATCH 212/519] bad_kb_funcs1 --- keyboards/40percentclub/ut47/ut47.c | 2 ++ keyboards/acheron/athena/alpha/alpha.c | 2 ++ keyboards/acheron/elongate/delta/delta.c | 2 ++ keyboards/clueboard/2x1800/2021/2021.c | 2 ++ keyboards/converter/xmk/xmk.c | 2 ++ keyboards/durgod/k310/k310.c | 2 ++ keyboards/durgod/k320/k320.c | 2 ++ keyboards/evyd13/gud70/gud70.c | 2 ++ keyboards/handwired/aek64/aek64.c | 13 +++++-------- .../battleship_gamepad/battleship_gamepad.c | 2 ++ keyboards/ibm/model_m/mschwingen/mschwingen.c | 2 ++ keyboards/idb/idb_60/idb_60.c | 2 ++ keyboards/kbdfans/phaseone/phaseone.c | 2 ++ keyboards/matrix/falcon/falcon.c | 1 + keyboards/mechlovin/zed1800/zed1800.c | 4 ++++ keyboards/monsgeek/m3/m3.c | 2 ++ keyboards/system76/launch_1/launch_1.c | 6 +++++- .../overnumpad_1xb/overnumpad_1xb.c | 2 ++ .../overnumpad_1xb/overnumpad_1xb.c | 2 ++ keyboards/wilba_tech/wt70_jb/wt70_jb.c | 2 ++ keyboards/yandrstudio/nz64/nz64.c | 4 ++++ keyboards/yandrstudio/nz67v2/nz67v2.c | 4 ++++ 22 files changed, 55 insertions(+), 9 deletions(-) diff --git a/keyboards/40percentclub/ut47/ut47.c b/keyboards/40percentclub/ut47/ut47.c index d5675e1047c..867d8c02024 100644 --- a/keyboards/40percentclub/ut47/ut47.c +++ b/keyboards/40percentclub/ut47/ut47.c @@ -19,6 +19,8 @@ void matrix_init_kb(void) { uart_init(9600); + + matrix_init_user(); } #endif diff --git a/keyboards/acheron/athena/alpha/alpha.c b/keyboards/acheron/athena/alpha/alpha.c index 8fe47eff821..4dea24b93d6 100644 --- a/keyboards/acheron/athena/alpha/alpha.c +++ b/keyboards/acheron/athena/alpha/alpha.c @@ -24,6 +24,8 @@ void board_init(void) { void keyboard_post_init_kb(void){ // Defining the backlight pin (A6) as an floating (no pullup or pulldown resistor) opendrain output pin palSetLineMode(BACKLIGHT_PIN, PAL_MODE_ALTERNATE(2) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_OSPEED_HIGHEST | PAL_STM32_PUPDR_FLOATING); + + keyboard_post_init_user(); } void led_init_ports(void) { diff --git a/keyboards/acheron/elongate/delta/delta.c b/keyboards/acheron/elongate/delta/delta.c index 98b60bae614..839151521a2 100755 --- a/keyboards/acheron/elongate/delta/delta.c +++ b/keyboards/acheron/elongate/delta/delta.c @@ -74,4 +74,6 @@ layer_state_t layer_state_set_kb(layer_state_t state) { // Since the keyboard starts at layer 0, the init function starts LED4 as lit up. void keyboard_post_init_kb(void){ gpio_write_pin(LED4_PIN, 0); + + keyboard_post_init_user(); } diff --git a/keyboards/clueboard/2x1800/2021/2021.c b/keyboards/clueboard/2x1800/2021/2021.c index 2a3f1304c7e..e575a7544cb 100644 --- a/keyboards/clueboard/2x1800/2021/2021.c +++ b/keyboards/clueboard/2x1800/2021/2021.c @@ -90,6 +90,8 @@ void matrix_init_kb(void) { #elif defined(DRAWING_TOY_MODE) max7219_set_led(0, 0, true); #endif + + matrix_init_user(); } __attribute__ ((weak)) diff --git a/keyboards/converter/xmk/xmk.c b/keyboards/converter/xmk/xmk.c index e0df96fc2d2..8a24e5f9648 100644 --- a/keyboards/converter/xmk/xmk.c +++ b/keyboards/converter/xmk/xmk.c @@ -10,5 +10,7 @@ void keyboard_post_init_kb(void) { debug_enable=true; debug_matrix=true; debug_keyboard=true; + + keyboard_post_init_user(); } #endif diff --git a/keyboards/durgod/k310/k310.c b/keyboards/durgod/k310/k310.c index 7879b13f4ea..c176587ef27 100644 --- a/keyboards/durgod/k310/k310.c +++ b/keyboards/durgod/k310/k310.c @@ -87,4 +87,6 @@ void keyboard_pre_init_kb(void) { bootloader_jump(); } #endif + + keyboard_pre_init_user(); } diff --git a/keyboards/durgod/k320/k320.c b/keyboards/durgod/k320/k320.c index 0a544fe3189..50b87d7241b 100644 --- a/keyboards/durgod/k320/k320.c +++ b/keyboards/durgod/k320/k320.c @@ -87,4 +87,6 @@ void keyboard_pre_init_kb(void) { bootloader_jump(); } #endif + + keyboard_pre_init_user(); } diff --git a/keyboards/evyd13/gud70/gud70.c b/keyboards/evyd13/gud70/gud70.c index 5c400455211..118c68e5667 100644 --- a/keyboards/evyd13/gud70/gud70.c +++ b/keyboards/evyd13/gud70/gud70.c @@ -19,4 +19,6 @@ void keyboard_pre_init_kb(void) { // Enable top LED gpio_set_pin_output(B3); gpio_write_pin_low(B3); + + keyboard_pre_init_user(); } diff --git a/keyboards/handwired/aek64/aek64.c b/keyboards/handwired/aek64/aek64.c index 130d014616c..21589b6910b 100644 --- a/keyboards/handwired/aek64/aek64.c +++ b/keyboards/handwired/aek64/aek64.c @@ -16,21 +16,18 @@ along with this program. If not, see . */ #include "quantum.h" -/* - * Hardware function pre initialisation. - * See https://docs.qmk.fm/#/custom_quantum_functions?id=example-keyboard_pre_init_user-implementation - */ -void keyboard_pre_init_user(void) { - // Call the keyboard pre init code. - +void keyboard_pre_init_kb(void) { // Set our LED pins as output gpio_set_pin_output(C3); + + keyboard_pre_init_user(); } void matrix_init_kb(void) { - // Flash the led 1 sec on startup. gpio_write_pin_high(C3); wait_ms(1000); gpio_write_pin_low(C3); + + matrix_init_user(); } diff --git a/keyboards/handwired/battleship_gamepad/battleship_gamepad.c b/keyboards/handwired/battleship_gamepad/battleship_gamepad.c index 7b5e65a9907..6bfcb17fd43 100644 --- a/keyboards/handwired/battleship_gamepad/battleship_gamepad.c +++ b/keyboards/handwired/battleship_gamepad/battleship_gamepad.c @@ -19,4 +19,6 @@ /* joystick button code (thumbstick pressed) */ void keyboard_pre_init_kb(void) { gpio_set_pin_input_high(F6); + + keyboard_pre_init_user(); } diff --git a/keyboards/ibm/model_m/mschwingen/mschwingen.c b/keyboards/ibm/model_m/mschwingen/mschwingen.c index 7112ab63a57..11407d12062 100644 --- a/keyboards/ibm/model_m/mschwingen/mschwingen.c +++ b/keyboards/ibm/model_m/mschwingen/mschwingen.c @@ -114,6 +114,8 @@ void keyboard_pre_init_kb(void) { gpio_set_pin_output(SR_CLK_PIN); gpio_set_pin_output(SR_DOUT_PIN); // MOSI - unused gpio_write_pin_low(SR_CLK_PIN); + + keyboard_pre_init_user(); } #ifdef KEYBOARD_ibm_model_m_mschwingen_led_ws2812 diff --git a/keyboards/idb/idb_60/idb_60.c b/keyboards/idb/idb_60/idb_60.c index 77485a42734..183892f3632 100644 --- a/keyboards/idb/idb_60/idb_60.c +++ b/keyboards/idb/idb_60/idb_60.c @@ -3,6 +3,8 @@ void keyboard_pre_init_kb(void) { gpio_set_pin_output(C4); gpio_set_pin_output(C5); + + keyboard_pre_init_user(); } inline void _idb_60_caps_led_on(void) { diff --git a/keyboards/kbdfans/phaseone/phaseone.c b/keyboards/kbdfans/phaseone/phaseone.c index a44e5011090..97cc7d2d2ac 100644 --- a/keyboards/kbdfans/phaseone/phaseone.c +++ b/keyboards/kbdfans/phaseone/phaseone.c @@ -18,4 +18,6 @@ void keyboard_pre_init_kb(void) { gpio_set_pin_output(D4); + + keyboard_pre_init_user(); } diff --git a/keyboards/matrix/falcon/falcon.c b/keyboards/matrix/falcon/falcon.c index 74677ab0d1f..bfc878a79c7 100644 --- a/keyboards/matrix/falcon/falcon.c +++ b/keyboards/matrix/falcon/falcon.c @@ -25,4 +25,5 @@ void matrix_init_kb(void) gpio_set_pin_output(LED_POWER_PIN); gpio_write_pin_high(LED_POWER_PIN); + matrix_init_user(); } diff --git a/keyboards/mechlovin/zed1800/zed1800.c b/keyboards/mechlovin/zed1800/zed1800.c index e86b4d5a5a8..a7b526b7a6f 100644 --- a/keyboards/mechlovin/zed1800/zed1800.c +++ b/keyboards/mechlovin/zed1800/zed1800.c @@ -27,9 +27,13 @@ RGBLIGHT_LAYERS_LIST( my_numlock_layer, my_scroll_layer ); + void keyboard_post_init_kb(void) { rgblight_layers = my_rgb_layers; + + keyboard_post_init_user(); } + // Activate rgb layer for caps when capslock is enabled bool led_update_kb(led_t led_state) { rgblight_set_layer_state(0, led_state.caps_lock); diff --git a/keyboards/monsgeek/m3/m3.c b/keyboards/monsgeek/m3/m3.c index 04a9f0ca96f..1752ddc3b3a 100644 --- a/keyboards/monsgeek/m3/m3.c +++ b/keyboards/monsgeek/m3/m3.c @@ -140,6 +140,8 @@ void matrix_init_kb(void) { gpio_write_pin_low(LED_MAC_OS_PIN); gpio_set_pin_output(LED_WIN_LOCK_PIN); // LED3 Win Lock gpio_write_pin_low(LED_WIN_LOCK_PIN); + + matrix_init_user(); } void housekeeping_task_kb(void){ diff --git a/keyboards/system76/launch_1/launch_1.c b/keyboards/system76/launch_1/launch_1.c index 7a5000d9baa..630305194ea 100644 --- a/keyboards/system76/launch_1/launch_1.c +++ b/keyboards/system76/launch_1/launch_1.c @@ -139,6 +139,8 @@ void matrix_init_kb(void) { } system76_ec_rgb_layer(layer_state); + + matrix_init_user(); } void matrix_scan_kb(void) { @@ -238,9 +240,11 @@ layer_state_t layer_state_set_kb(layer_state_t layer_state) { } #ifdef CONSOLE_ENABLE -void keyboard_post_init_user(void) { +void keyboard_post_init_kb(void) { debug_enable = true; debug_matrix = false; debug_keyboard = false; + + keyboard_post_init_user(); } #endif // CONSOLE_ENABLE diff --git a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.c b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.c index f441285c9ad..488ace3f91d 100644 --- a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.c +++ b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.c @@ -23,6 +23,8 @@ void keyboard_post_init_kb(void) gpio_set_pin_output(C11); // middle led, always off on Spacesaver M gpio_write_pin(C11, 0); gpio_set_pin_output(C10); // right-most led, normally Scroll Lock, but on Spacesaver M indicates function layer + + keyboard_post_init_user(); } diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.c b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.c index bad0c76e433..9f5f592ff6b 100644 --- a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.c +++ b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.c @@ -23,6 +23,8 @@ void keyboard_post_init_kb(void) gpio_set_pin_output(C11); // middle led, always off on Spacesaver M gpio_write_pin(C11, 0); gpio_set_pin_output(C10); // right-most led, normally Scroll Lock, but on Spacesaver M indicates function layer + + keyboard_post_init_user(); } layer_state_t layer_state_set_kb(layer_state_t state) { diff --git a/keyboards/wilba_tech/wt70_jb/wt70_jb.c b/keyboards/wilba_tech/wt70_jb/wt70_jb.c index ad480ece227..e4d0efc5e48 100644 --- a/keyboards/wilba_tech/wt70_jb/wt70_jb.c +++ b/keyboards/wilba_tech/wt70_jb/wt70_jb.c @@ -42,6 +42,8 @@ void keyboard_post_init_kb(void) { if ( g_first_execution ) { rgblight_mode(RGBLIGHT_MODE_RGB_TEST); } + + keyboard_post_init_user(); } #endif // VIA_ENABLE diff --git a/keyboards/yandrstudio/nz64/nz64.c b/keyboards/yandrstudio/nz64/nz64.c index b5a53273dfc..66ba9fb6ee0 100644 --- a/keyboards/yandrstudio/nz64/nz64.c +++ b/keyboards/yandrstudio/nz64/nz64.c @@ -84,10 +84,14 @@ bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { void eeconfig_init_kb(void) { kb_cums.raw = 0; eeconfig_update_kb(kb_cums.raw); + + eeconfig_init_user(); } void keyboard_post_init_kb(void) { kb_cums.underground_rgb_sw = eeconfig_read_kb(); + + keyboard_post_init_user(); } #endif diff --git a/keyboards/yandrstudio/nz67v2/nz67v2.c b/keyboards/yandrstudio/nz67v2/nz67v2.c index 346556c25ed..c3162dd9611 100644 --- a/keyboards/yandrstudio/nz67v2/nz67v2.c +++ b/keyboards/yandrstudio/nz67v2/nz67v2.c @@ -85,10 +85,14 @@ bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { void eeconfig_init_kb(void) { kb_cums.raw = 0; eeconfig_update_kb(kb_cums.raw); + + eeconfig_init_user(); } void keyboard_post_init_kb(void) { kb_cums.underground_rgb_sw = eeconfig_read_kb(); + + keyboard_post_init_user(); } #endif From f8cf58a512d3e85f491b884672353acefab2f7bc Mon Sep 17 00:00:00 2001 From: Dasky <32983009+daskygit@users.noreply.github.com> Date: Thu, 11 Jul 2024 13:10:28 +0100 Subject: [PATCH 213/519] Remove a user keymap from crkbd. (#24091) remove personal keymap --- keyboards/crkbd/keymaps/colemak_luna/config.h | 115 ------ keyboards/crkbd/keymaps/colemak_luna/keymap.c | 385 ------------------ .../crkbd/keymaps/colemak_luna/readme.md | 17 - keyboards/crkbd/keymaps/colemak_luna/rules.mk | 7 - 4 files changed, 524 deletions(-) delete mode 100644 keyboards/crkbd/keymaps/colemak_luna/config.h delete mode 100644 keyboards/crkbd/keymaps/colemak_luna/keymap.c delete mode 100644 keyboards/crkbd/keymaps/colemak_luna/readme.md delete mode 100644 keyboards/crkbd/keymaps/colemak_luna/rules.mk diff --git a/keyboards/crkbd/keymaps/colemak_luna/config.h b/keyboards/crkbd/keymaps/colemak_luna/config.h deleted file mode 100644 index 546e01bdba9..00000000000 --- a/keyboards/crkbd/keymaps/colemak_luna/config.h +++ /dev/null @@ -1,115 +0,0 @@ -/* -Copyright 2019 @foostan -Copyright 2023 @asdfire1 - -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 . -*/ - -#pragma once - -/* Select hand configuration */ - -#define MASTER_LEFT -// #define MASTER_RIGHT -// #define EE_HANDS - -#ifdef RGBLIGHT_ENABLE - #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_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_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects -# define RGB_MATRIX_SLEEP // turn off effects when suspended -//# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -// # define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 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_HUE_STEP 8 -# define RGB_MATRIX_SAT_STEP 8 -# define RGB_MATRIX_VAL_STEP 8 -# define RGB_MATRIX_SPD_STEP 10 - -/* Enable the animations you want/need. You may need to enable only a small number of these because * - * they take up a lot of space. Enable and confirm that you can still successfully compile your firmware. */ -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define ENABLE_RGB_MATRIX_ALPHAS_MODS -//# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN -//# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT -//# define ENABLE_RGB_MATRIX_BREATHING -//# define ENABLE_RGB_MATRIX_BAND_SAT -//# define ENABLE_RGB_MATRIX_BAND_VAL -//# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT -//# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL -//# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT -//# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL -//# define ENABLE_RGB_MATRIX_CYCLE_ALL -//# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT -# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN -//# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON -//# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN -//# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL -//# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL -//# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL -//# define ENABLE_RGB_MATRIX_DUAL_BEACON -//# define ENABLE_RGB_MATRIX_RAINBOW_BEACON -//# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS -//# define ENABLE_RGB_MATRIX_RAINDROPS -//# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS -//# define ENABLE_RGB_MATRIX_HUE_BREATHING -//# define ENABLE_RGB_MATRIX_HUE_PENDULUM -//# define ENABLE_RGB_MATRIX_HUE_WAVE -//# define ENABLE_RGB_MATRIX_PIXEL_RAIN -//# define ENABLE_RGB_MATRIX_PIXEL_FLOW -//# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL -// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined -//# define ENABLE_RGB_MATRIX_TYPING_HEATMAP -//# define ENABLE_RGB_MATRIX_DIGITAL_RAIN -// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined -//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE -//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE -//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE -//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE -//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS -//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS -//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS -//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS -//# define ENABLE_RGB_MATRIX_SPLASH -//# define ENABLE_RGB_MATRIX_MULTISPLASH -//# define ENABLE_RGB_MATRIX_SOLID_SPLASH -//# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH -#endif -#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c" -#define SPLIT_LAYER_STATE_ENABLE -#define SPLIT_WPM_ENABLE //Enable WPM across split keyboards (+268). -#define NO_ACTION_ONESHOT -//#define SPLIT_OLED_ENABLE - -#define DYNAMIC_KEYMAP_LAYER_COUNT 6 \ No newline at end of file diff --git a/keyboards/crkbd/keymaps/colemak_luna/keymap.c b/keyboards/crkbd/keymaps/colemak_luna/keymap.c deleted file mode 100644 index 39cfd1ca256..00000000000 --- a/keyboards/crkbd/keymaps/colemak_luna/keymap.c +++ /dev/null @@ -1,385 +0,0 @@ -/* -Copyright 2019 @foostan -Copyright 2021 @HellSingCoder -Copyright 2023 @asdfire1 - -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 . -*/ - -#include QMK_KEYBOARD_H -//#include - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - //COLEMAK - [0] = LAYOUT_split_3x6_3( - //,-----------------------------------------------------. ,-----------------------------------------------------. - KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_LSFT, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ESC, - //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| - KC_LGUI, MO(3), KC_SPC, KC_ENT, MO(4), KC_RALT - //`--------------------------' `--------------------------' - - ), - //GAME1 - [1] = LAYOUT_split_3x6_3( - //,-----------------------------------------------------. ,-----------------------------------------------------. - KC_ESC, 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_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ESC, - //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| - KC_LALT, MO(2), KC_SPC, KC_ENT, MO(4), KC_RALT - //`--------------------------' `--------------------------' - ), - //GAME2 - [2] = LAYOUT_split_3x6_3( - //,-----------------------------------------------------. ,-----------------------------------------------------. - KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_LSFT, KC_F1, KC_F2, XXXXXXX, XXXXXXX, KC_6, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_LCTL, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F13, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F13, - //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| - KC_LGUI, _______, KC_SPC, KC_ENT, MO(5), KC_RALT - //`--------------------------' `--------------------------' - ), - //LOWER - [3] = LAYOUT_split_3x6_3( - //,-----------------------------------------------------. ,-----------------------------------------------------. - KC_TAB, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, KC_MPRV, XXXXXXX, KC_MINS, KC_P7, KC_P8, KC_P9, KC_DEL, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_LSFT, KC_LEFT, KC_DOWN,KC_RIGHT, XXXXXXX, KC_MPLY, XXXXXXX, KC_PLUS, KC_P4, KC_P5, KC_P6, XXXXXXX, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_LCTL, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MNXT, XXXXXXX, KC_EQL, KC_P1, KC_P2, KC_P3, KC_F13, - //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| - KC_LGUI, _______, KC_SPC, KC_SPC, MO(5), KC_P0 - //`--------------------------' `--------------------------' - ), - //RAISE - [4] = LAYOUT_split_3x6_3( - //,-----------------------------------------------------. ,-----------------------------------------------------. - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_PGUP, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_CAPS, KC_CIRC, KC_AMPR, KC_LCBR, KC_LBRC, KC_LPRN, KC_RPRN, KC_RBRC, KC_RCBR, XXXXXXX, KC_END, KC_PGDN, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_LCTL, KC_ASTR, KC_UNDS, KC_BSLS, KC_PIPE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, - //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| - KC_LGUI, MO(5), KC_BSPC, _______, _______, KC_LALT - //`--------------------------' `--------------------------' - ), - //ADJUST - [5] = LAYOUT_split_3x6_3( - //,-----------------------------------------------------. ,-----------------------------------------------------. - QK_BOOT, TG(1), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| - KC_LGUI, _______, _______, _______, _______, KC_LALT - //`--------------------------' `--------------------------' - ) -}; -// clang-format on - -#ifdef OLED_ENABLE - - -/* 32 * 32 logo */ -static void render_logo(void) { - static const char PROGMEM hexagram_logo[] = { - 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x70, 0x18, 0x06, - 0x06, 0x18, 0x70, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x07, 0x1f, 0x32, 0x66, 0xc4, 0x6c, 0x38, 0x1e, 0x37, 0x61, 0xc0, 0x80, 0x80, - 0x80, 0x80, 0xc0, 0x61, 0x37, 0x1e, 0x38, 0x6c, 0xc4, 0x66, 0x32, 0x1f, 0x07, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x80, 0xe0, 0xf8, 0x4c, 0x66, 0x23, 0x36, 0x1c, 0x78, 0xec, 0x86, 0x03, 0x01, 0x01, - 0x01, 0x01, 0x03, 0x86, 0xec, 0x78, 0x1c, 0x36, 0x23, 0x66, 0x4c, 0xf8, 0xe0, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0e, 0x18, 0x60, - 0x60, 0x18, 0x0e, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00 -}; - oled_write_raw_P(hexagram_logo, sizeof(hexagram_logo)); -} - - - -/* KEYBOARD PET START */ - -/* settings */ -# define MIN_WALK_SPEED 10 -# define MIN_RUN_SPEED 40 - -/* advanced settings */ -# define ANIM_FRAME_DURATION 200 // how long each frame lasts in ms -# define ANIM_SIZE 96 // number of bytes in array. If you change sprites, minimize for adequate firmware size. max is 1024 - -/* timers */ -uint32_t anim_timer = 0; -uint32_t anim_sleep = 0; - -/* current frame */ -uint8_t current_frame = 0; - -/* status variables */ -int current_wpm = 0; -led_t led_usb_state; - -bool isSneaking = false; -bool isJumping = false; -bool showedJump = true; -bool isBarking = false; - -/* logic */ -static void render_luna(int LUNA_X, int LUNA_Y) { - /* Sit */ - static const char PROGMEM sit[2][ANIM_SIZE] = {/* 'sit1', 32x22px */ - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x1c, 0x02, 0x05, 0x02, 0x24, 0x04, 0x04, 0x02, 0xa9, 0x1e, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, 0x68, 0x10, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x82, 0x7c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x0c, 0x10, 0x10, 0x20, 0x20, 0x20, 0x28, 0x3e, 0x1c, 0x20, 0x20, 0x3e, 0x0f, 0x11, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - }, - - /* 'sit2', 32x22px */ - {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x1c, 0x02, 0x05, 0x02, 0x24, 0x04, 0x04, 0x02, 0xa9, 0x1e, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x90, 0x08, 0x18, 0x60, 0x10, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0e, 0x82, 0x7c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x0c, 0x10, 0x10, 0x20, 0x20, 0x20, 0x28, 0x3e, 0x1c, 0x20, 0x20, 0x3e, 0x0f, 0x11, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}; - - /* Walk */ - static const char PROGMEM walk[2][ANIM_SIZE] = {/* 'walk1', 32x22px */ - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x10, 0x90, 0x90, 0x90, 0xa0, 0xc0, 0x80, 0x80, 0x80, 0x70, 0x08, 0x14, 0x08, 0x90, 0x10, 0x10, 0x08, 0xa4, 0x78, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x08, 0xfc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x18, 0xea, 0x10, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1c, 0x20, 0x20, 0x3c, 0x0f, 0x11, 0x1f, 0x03, 0x06, 0x18, 0x20, 0x20, 0x3c, 0x0c, 0x12, 0x1e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - }, - - /* 'walk2', 32x22px */ - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x20, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x28, 0x10, 0x20, 0x20, 0x20, 0x10, 0x48, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x20, 0xf8, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x30, 0xd5, 0x20, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x20, 0x30, 0x0c, 0x02, 0x05, 0x09, 0x12, 0x1e, 0x02, 0x1c, 0x14, 0x08, 0x10, 0x20, 0x2c, 0x32, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - }}; - - /* Run */ - static const char PROGMEM run[2][ANIM_SIZE] = {/* 'run1', 32x22px */ - { - 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, 0x08, 0xc8, 0xb0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x3c, 0x14, 0x04, 0x08, 0x90, 0x18, 0x04, 0x08, 0xb0, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0xc4, 0xa4, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc8, 0x58, 0x28, 0x2a, 0x10, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x09, 0x04, 0x04, 0x04, 0x04, 0x02, 0x03, 0x02, 0x01, 0x01, 0x02, 0x02, 0x04, 0x08, 0x10, 0x26, 0x2b, 0x32, 0x04, 0x05, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, - }, - - /* 'run2', 32x22px */ - { - 0x00, 0x00, 0x00, 0xe0, 0x10, 0x10, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x78, 0x28, 0x08, 0x10, 0x20, 0x30, 0x08, 0x10, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x10, 0x11, 0xf9, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x10, 0xb0, 0x50, 0x55, 0x20, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x0c, 0x10, 0x20, 0x28, 0x37, 0x02, 0x1e, 0x20, 0x20, 0x18, 0x0c, 0x14, 0x1e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - }}; - - /* Bark */ - static const char PROGMEM bark[2][ANIM_SIZE] = {/* 'bark1', 32x22px */ - { - 0x00, 0xc0, 0x20, 0x10, 0xd0, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x3c, 0x14, 0x04, 0x08, 0x90, 0x18, 0x04, 0x08, 0xb0, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x10, 0x11, 0xf9, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc8, 0x48, 0x28, 0x2a, 0x10, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x0c, 0x10, 0x20, 0x28, 0x37, 0x02, 0x02, 0x04, 0x08, 0x10, 0x26, 0x2b, 0x32, 0x04, 0x05, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - }, - - /* 'bark2', 32x22px */ - { - 0x00, 0xe0, 0x10, 0x10, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x2c, 0x14, 0x04, 0x08, 0x90, 0x18, 0x04, 0x08, 0xb0, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x10, 0x11, 0xf9, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x48, 0x28, 0x2a, 0x10, 0x0f, 0x20, 0x4a, 0x09, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x0c, 0x10, 0x20, 0x28, 0x37, 0x02, 0x02, 0x04, 0x08, 0x10, 0x26, 0x2b, 0x32, 0x04, 0x05, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - }}; - - /* Sneak */ - static const char PROGMEM sneak[2][ANIM_SIZE] = {/* 'sneak1', 32x22px */ - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x80, 0x00, 0x80, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x21, 0xf0, 0x04, 0x02, 0x02, 0x02, 0x02, 0x03, 0x02, 0x02, 0x04, 0x04, 0x04, 0x03, 0x01, 0x00, 0x00, 0x09, 0x01, 0x80, 0x80, 0xab, 0x04, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1c, 0x20, 0x20, 0x3c, 0x0f, 0x11, 0x1f, 0x02, 0x06, 0x18, 0x20, 0x20, 0x38, 0x08, 0x10, 0x18, 0x04, 0x04, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, - }, - - /* 'sneak2', 32x22px */ - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xa0, 0x20, 0x40, 0x80, 0xc0, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x41, 0xf0, 0x04, 0x02, 0x02, 0x02, 0x03, 0x02, 0x02, 0x02, 0x04, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x40, 0x40, 0x55, 0x82, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x20, 0x30, 0x0c, 0x02, 0x05, 0x09, 0x12, 0x1e, 0x04, 0x18, 0x10, 0x08, 0x10, 0x20, 0x28, 0x34, 0x06, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, - }}; - - /* animation */ - void animate_luna(void) { - /* jump */ - if (isJumping || !showedJump) { - /* clear */ - oled_set_cursor(LUNA_X, LUNA_Y + 2); - oled_write(" ", false); - - oled_set_cursor(LUNA_X, LUNA_Y - 1); - - showedJump = true; - } else { - /* clear */ - oled_set_cursor(LUNA_X, LUNA_Y - 1); - oled_write(" ", false); - - oled_set_cursor(LUNA_X, LUNA_Y); - } - - /* switch frame */ - current_frame = (current_frame + 1) % 2; - - /* current status */ - if (led_usb_state.caps_lock) { - oled_write_raw_P(bark[abs(1 - current_frame)], ANIM_SIZE); - - } else if (isSneaking) { - oled_write_raw_P(sneak[abs(1 - current_frame)], ANIM_SIZE); - - } else if (current_wpm <= MIN_WALK_SPEED) { - oled_write_raw_P(sit[abs(1 - current_frame)], ANIM_SIZE); - - } else if (current_wpm <= MIN_RUN_SPEED) { - oled_write_raw_P(walk[abs(1 - current_frame)], ANIM_SIZE); - - } else { - oled_write_raw_P(run[abs(1 - current_frame)], ANIM_SIZE); - } - } - - /* animation timer */ - if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) { - anim_timer = timer_read32(); - animate_luna(); - } - - /* this fixes the screen on and off bug */ - if (current_wpm > 0) { - oled_on(); - anim_sleep = timer_read32(); - } else if(timer_elapsed32(anim_sleep) > OLED_TIMEOUT) { - /* clear */ - oled_set_cursor(0,0); - oled_write(" ", false); - oled_off(); - oled_set_cursor(LUNA_X,LUNA_Y); - } -} - -/* KEYBOARD PET END */ - -static void print_logo_narrow(void) { - render_logo(); -if (current_wpm > 0) { - anim_sleep = timer_read32(); - /* wpm counter */ - oled_set_cursor(0, 14); - oled_write(get_u8_str(get_current_wpm(), '0'), false); - - oled_set_cursor(0, 15); - oled_write(" wpm", false); - - /* this fixes the screen on and off bug */ - - } else if(timer_elapsed32(anim_sleep) > OLED_TIMEOUT) { - /* clear */ - oled_set_cursor(0,0); - oled_write(" ", false); - oled_off(); - - - } -} - -layer_state_t layer_state_set_user(layer_state_t state) { - switch (get_highest_layer(state)) { - case 0: - rgb_matrix_reload_from_eeprom(); - break; - case 1: - rgb_matrix_mode_noeeprom(RGB_MATRIX_ALPHAS_MODS); - rgb_matrix_sethsv_noeeprom(HSV_TEAL); - break; - case 2: - rgb_matrix_mode_noeeprom(RGB_MATRIX_ALPHAS_MODS); - rgb_matrix_sethsv_noeeprom(HSV_PURPLE); - break; - case 5: - rgb_matrix_mode_noeeprom(RGB_MATRIX_ALPHAS_MODS); - rgb_matrix_sethsv_noeeprom(HSV_YELLOW); - break; - } - return state; -} - -static void print_status_narrow(void) { - - - /* Print current layer */ - oled_write("LAYER", false); - - oled_set_cursor(0, 6); - - switch (get_highest_layer(layer_state)) { - case 0: - oled_write("Base ", false); - break; - case 1: - oled_write("Game ", false); - break; - case 2: - oled_write("Game2", false); - break; - case 3: - oled_write("Lower", false); - break; - case 4: - oled_write("Raise", false); - break; - case 5: - oled_write("Adj ", false); - break; - default: - oled_write("Undef", false); - } - - - /* KEYBOARD PET RENDER START */ - - render_luna(0, 13); - - /* KEYBOARD PET RENDER END */ -} - -oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_270; } - -bool oled_task_user(void) { - /* KEYBOARD PET VARIABLES START */ - - current_wpm = get_current_wpm(); - led_usb_state = host_keyboard_led_state(); - - /* KEYBOARD PET VARIABLES END */ - - if (is_keyboard_master()) { - print_status_narrow(); - } else { - print_logo_narrow(); - } - return false; -} - -#endif - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - /* KEYBOARD PET STATUS START */ - - case KC_LCTL: - isSneaking = record->event.pressed; - break; - case KC_SPC: - isJumping = record->event.pressed; - if (isJumping) { - showedJump = false; - } - break; - case KC_CAPS: - isBarking = record->event.pressed; - break; - - /* KEYBOARD PET STATUS END */ -} - -return true; -} diff --git a/keyboards/crkbd/keymaps/colemak_luna/readme.md b/keyboards/crkbd/keymaps/colemak_luna/readme.md deleted file mode 100644 index 0f729e702ce..00000000000 --- a/keyboards/crkbd/keymaps/colemak_luna/readme.md +++ /dev/null @@ -1,17 +0,0 @@ -# Personal keymap for the CRKBD -My own keymap with some custom OLED features, Colemak base layer and gaming layers. The F13 key on multiple layers can be bound to something, I use it as toggle mute microphone on Discord. -## Layers -- Colemak - Default layer -- Lower - Has numbers and arrows -- Raise - Has symbols -- Game1 - A QWERTY Gaming layer -- Game2 - An alternate lower layer when Game1 is active, has numbers and other keys that may be needed -- Adjust - Has F-keys and settings, allows to set the Game1 as base layer. -## Custom OLED -- Left side: - - Layer indicator - - Keyboard pet Luna from @HellSingCoder -- Right side - - Unicursal hexagram pixel art logo - - WPM counter - diff --git a/keyboards/crkbd/keymaps/colemak_luna/rules.mk b/keyboards/crkbd/keymaps/colemak_luna/rules.mk deleted file mode 100644 index 9ff3128931a..00000000000 --- a/keyboards/crkbd/keymaps/colemak_luna/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -MOUSEKEY_ENABLE = no # Mouse keys -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes # Enable WS2812 RGB underlight. -VIA_ENABLE = yes # Enable VIA -OLED_ENABLE = yes -LTO_ENABLE = yes -WPM_ENABLE = yes From e3ef5b2d9d3e9d97f86b0da42d1a2e2bd2ae194b Mon Sep 17 00:00:00 2001 From: tarxvf Date: Thu, 11 Jul 2024 08:46:54 -0400 Subject: [PATCH 214/519] mntre_v3: fix matrix bottom row (#24077) --- keyboards/mntre_v3/keyboard.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/keyboards/mntre_v3/keyboard.json b/keyboards/mntre_v3/keyboard.json index d9cee6aede8..e00fe1deb28 100644 --- a/keyboards/mntre_v3/keyboard.json +++ b/keyboards/mntre_v3/keyboard.json @@ -108,12 +108,12 @@ {"matrix": [5, 2], "x": 2.75, "y": 5, "w": 1.5}, {"matrix": [5, 3], "x": 4.25, "y": 5, "w": 1.5}, {"matrix": [5, 4], "x": 5.75, "y": 5,"w": 2}, - {"matrix": [5, 5], "x": 7.75, "y": 5,"w": 1.5}, - {"matrix": [5, 6], "x": 9.25, "y": 5}, - {"matrix": [5, 7], "x": 10.25, "y": 5}, - {"matrix": [5, 8], "x": 11.25, "y": 5}, - {"matrix": [5, 9], "x": 12.25, "y": 5}, - {"matrix": [5, 10], "x": 13.25, "y": 5,"w": 1.25} + {"matrix": [5, 6], "x": 7.75, "y": 5,"w": 1.5}, + {"matrix": [5, 7], "x": 9.25, "y": 5}, + {"matrix": [5, 8], "x": 10.25, "y": 5}, + {"matrix": [5, 9], "x": 11.25, "y": 5}, + {"matrix": [5, 10], "x": 12.25, "y": 5}, + {"matrix": [5, 11], "x": 13.25, "y": 5,"w": 1.25} ] } } From e0809eade5b054035a2bc0d00b1a8e9a02ba0d19 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 11 Jul 2024 13:47:53 +0100 Subject: [PATCH 215/519] Various fixes for keyboards not implementing callbacks correctly (#24092) --- keyboards/aeboards/ext65/rev3/rev3.c | 4 +++- keyboards/clueboard/2x1800/2021/2021.c | 2 ++ .../commissions/mini1800/mini1800.c | 18 +++++++++++------- keyboards/exclusive/e6_rgb/e6_rgb.c | 4 ++++ keyboards/handwired/selene/selene.c | 4 +++- keyboards/inett_studio/sqx/hotswap/hotswap.c | 4 ++++ .../inett_studio/sqx/universal/universal.c | 4 ++++ .../mechlovin/adelais/rgb_led/rev2/rev2.c | 4 ++++ keyboards/mechlovin/hannah60rgb/rev2/rev2.c | 4 ++++ keyboards/mechlovin/kay65/kay65.c | 6 +++--- .../zed65/no_backlight/wearhaus66/wearhaus66.c | 5 +++-- keyboards/omnikeyish/omnikeyish.c | 8 ++++++-- keyboards/projectd/75/ansi/ansi.c | 3 +++ keyboards/yandrstudio/nz64/nz64.c | 4 ++++ 14 files changed, 58 insertions(+), 16 deletions(-) diff --git a/keyboards/aeboards/ext65/rev3/rev3.c b/keyboards/aeboards/ext65/rev3/rev3.c index f8fc2ef5023..7b0f2018c2c 100644 --- a/keyboards/aeboards/ext65/rev3/rev3.c +++ b/keyboards/aeboards/ext65/rev3/rev3.c @@ -19,10 +19,12 @@ // Tested and verified working on EXT65 Rev3 void matrix_io_delay(void) { __asm__ volatile("nop\nnop\nnop\n"); } -void keyboard_pre_init_user(void) { +void keyboard_pre_init_kb(void) { // Call the keyboard pre init code. // Set our LED pins as output gpio_set_pin_output(LED_LAYERS_PIN); + + keyboard_pre_init_user(); } layer_state_t layer_state_set_kb(layer_state_t state) { diff --git a/keyboards/clueboard/2x1800/2021/2021.c b/keyboards/clueboard/2x1800/2021/2021.c index e575a7544cb..5274f76e9c2 100644 --- a/keyboards/clueboard/2x1800/2021/2021.c +++ b/keyboards/clueboard/2x1800/2021/2021.c @@ -26,6 +26,8 @@ void matrix_scan_kb(void) { max7219_message_sign_task(true); led_frame_timer = timer_read(); } + + matrix_scan_user(); } #endif diff --git a/keyboards/enviousdesign/commissions/mini1800/mini1800.c b/keyboards/enviousdesign/commissions/mini1800/mini1800.c index 86757dab8af..4f4be779ca7 100644 --- a/keyboards/enviousdesign/commissions/mini1800/mini1800.c +++ b/keyboards/enviousdesign/commissions/mini1800/mini1800.c @@ -1,23 +1,27 @@ -/* SPDX-License-Identifier: GPL-2.0-or-later */ +// SPDX-License-Identifier: GPL-2.0-or-later #include "quantum.h" -void matrix_init_user(void) { +void matrix_init_kb(void) { gpio_set_pin_output(GP9); //init gpio gpio_write_pin_low(GP9); gpio_set_pin_output(GP11); //init and turn off inverted power led gpio_write_pin_high(GP11); + + matrix_init_user(); } //layer, capslock and numlock -layer_state_t layer_state_set_user(layer_state_t state) { +__attribute__((weak)) layer_state_t layer_state_set_user(layer_state_t state) { gpio_write_pin(GP9, layer_state_cmp(state, 1)); - return state; + return state; } -bool led_update_user(led_t led_state) { +bool led_update_kb(led_t led_state) { + bool res = led_update_user(led_state); + if(res) { led_state.num_lock = !led_state.num_lock; led_update_ports(led_state); - return false; + } + return res; } - diff --git a/keyboards/exclusive/e6_rgb/e6_rgb.c b/keyboards/exclusive/e6_rgb/e6_rgb.c index 19dd96a073d..9a7856306bb 100644 --- a/keyboards/exclusive/e6_rgb/e6_rgb.c +++ b/keyboards/exclusive/e6_rgb/e6_rgb.c @@ -168,6 +168,10 @@ led_config_t g_led_config = { { #endif bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (!process_record_user(keycode, record)) { + return false; + } + if (record->event.pressed) { switch(keycode) { #if defined(RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) diff --git a/keyboards/handwired/selene/selene.c b/keyboards/handwired/selene/selene.c index 3d0ef667cf1..49df43314b3 100644 --- a/keyboards/handwired/selene/selene.c +++ b/keyboards/handwired/selene/selene.c @@ -17,6 +17,8 @@ #include "quantum.h" -void keyboard_post_init_user(void) { +void keyboard_post_init_kb(void) { rgblight_setrgb(0xff, 0xff, 0xff); + + keyboard_post_init_user(); } diff --git a/keyboards/inett_studio/sqx/hotswap/hotswap.c b/keyboards/inett_studio/sqx/hotswap/hotswap.c index 079889e7274..c04d7ef02cc 100644 --- a/keyboards/inett_studio/sqx/hotswap/hotswap.c +++ b/keyboards/inett_studio/sqx/hotswap/hotswap.c @@ -165,6 +165,10 @@ bool rgb_matrix_indicators_kb(void) { #endif //RGB_MATRIX_ENABLE bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (!process_record_user(keycode, record)) { + return false; + } + if (record->event.pressed) { switch(keycode) { #if defined(RGB_MATRIX_DISABLE_KEYCODES) diff --git a/keyboards/inett_studio/sqx/universal/universal.c b/keyboards/inett_studio/sqx/universal/universal.c index 519df575055..6c2af3a3b99 100644 --- a/keyboards/inett_studio/sqx/universal/universal.c +++ b/keyboards/inett_studio/sqx/universal/universal.c @@ -169,6 +169,10 @@ bool rgb_matrix_indicators_kb(void) { #endif //RGB_MATRIX_ENABLE bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (!process_record_user(keycode, record)) { + return false; + } + if (record->event.pressed) { switch(keycode) { #if defined(RGB_MATRIX_DISABLE_KEYCODES) diff --git a/keyboards/mechlovin/adelais/rgb_led/rev2/rev2.c b/keyboards/mechlovin/adelais/rgb_led/rev2/rev2.c index d49d16e85a1..cc3853cacd1 100644 --- a/keyboards/mechlovin/adelais/rgb_led/rev2/rev2.c +++ b/keyboards/mechlovin/adelais/rgb_led/rev2/rev2.c @@ -131,6 +131,10 @@ bool rgb_matrix_indicators_kb(void) { #endif bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (!process_record_user(keycode, record)) { + return false; + } + if (record->event.pressed) { switch(keycode) { #ifdef RGBLIGHT_ENABLE diff --git a/keyboards/mechlovin/hannah60rgb/rev2/rev2.c b/keyboards/mechlovin/hannah60rgb/rev2/rev2.c index c6943cc3578..3fdc5713801 100644 --- a/keyboards/mechlovin/hannah60rgb/rev2/rev2.c +++ b/keyboards/mechlovin/hannah60rgb/rev2/rev2.c @@ -223,6 +223,10 @@ layer_state_t layer_state_set_user(layer_state_t state) { #endif bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (!process_record_user(keycode, record)) { + return false; + } + if (record->event.pressed) { switch(keycode) { #ifdef RGB_MATRIX_DISABLE_KEYCODES diff --git a/keyboards/mechlovin/kay65/kay65.c b/keyboards/mechlovin/kay65/kay65.c index f59f23e13d9..b125cf1f798 100644 --- a/keyboards/mechlovin/kay65/kay65.c +++ b/keyboards/mechlovin/kay65/kay65.c @@ -17,9 +17,9 @@ along with this program. If not, see . #include "quantum.h" -void keyboard_pre_init_user(void) { - // Call the keyboard pre init code. - +void keyboard_pre_init_kb(void) { // Set our LED pins as output gpio_set_pin_output(D7); + + keyboard_pre_init_user(); } diff --git a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/wearhaus66.c b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/wearhaus66.c index a6942a2cb82..de1c73a0e03 100644 --- a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/wearhaus66.c +++ b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/wearhaus66.c @@ -17,8 +17,9 @@ along with this program. If not, see . #include "quantum.h" -void keyboard_pre_init_user(void) { - // Call the keyboard pre init code. +void keyboard_pre_init_kb(void) { // Set our LED pins as output gpio_set_pin_output(B7); + + keyboard_pre_init_user(); } diff --git a/keyboards/omnikeyish/omnikeyish.c b/keyboards/omnikeyish/omnikeyish.c index 4a8a7fa4d6c..8e7e316524e 100644 --- a/keyboards/omnikeyish/omnikeyish.c +++ b/keyboards/omnikeyish/omnikeyish.c @@ -1,10 +1,12 @@ #include "omnikeyish.h" -void keyboard_pre_init_user(void) { +void keyboard_pre_init_kb(void) { dynamic_macro_init(); + + keyboard_pre_init_user(); } -void keyboard_post_init_user(void) { +void keyboard_post_init_kb(void) { /* Customise these values to desired behaviour */ //debug_enable = true; //debug_matrix=true; @@ -19,6 +21,8 @@ void keyboard_post_init_user(void) { /* Send numlock keycode to attempt to force numlock back on. */ register_code(KC_NUM_LOCK); unregister_code(KC_NUM_LOCK); + + keyboard_post_init_user(); } bool process_record_user(uint16_t keycode, keyrecord_t *record) { diff --git a/keyboards/projectd/75/ansi/ansi.c b/keyboards/projectd/75/ansi/ansi.c index 8257cf39c26..3bb695b5590 100644 --- a/keyboards/projectd/75/ansi/ansi.c +++ b/keyboards/projectd/75/ansi/ansi.c @@ -162,6 +162,9 @@ bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { } bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (!process_record_user(keycode, record)) { + return false; + } switch (keycode) { diff --git a/keyboards/yandrstudio/nz64/nz64.c b/keyboards/yandrstudio/nz64/nz64.c index 66ba9fb6ee0..928b0b5114f 100644 --- a/keyboards/yandrstudio/nz64/nz64.c +++ b/keyboards/yandrstudio/nz64/nz64.c @@ -97,6 +97,10 @@ void keyboard_post_init_kb(void) { #endif bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (!process_record_user(keycode, record)) { + return false; + } + switch(keycode) { #ifdef RGB_MATRIX_ENABLE case URGB_K: From 3d10171e2ced2923568d197a5a5f53d8d9355243 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 11 Jul 2024 22:49:45 +1000 Subject: [PATCH 216/519] `mt/mt84`: move RGB Matrix config to data driven (#24090) --- keyboards/mt/mt84/config.h | 2 - keyboards/mt/mt84/keyboard.json | 91 +++++++++++++++++++++++++++++++++ keyboards/mt/mt84/mt84.c | 23 --------- 3 files changed, 91 insertions(+), 25 deletions(-) diff --git a/keyboards/mt/mt84/config.h b/keyboards/mt/mt84/config.h index 9b115d527d5..e2b30400a93 100644 --- a/keyboards/mt/mt84/config.h +++ b/keyboards/mt/mt84/config.h @@ -18,8 +18,6 @@ #define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND #define IS31FL3737_I2C_ADDRESS_2 IS31FL3737_I2C_ADDRESS_VCC -#define RGB_MATRIX_LED_COUNT 84 - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ diff --git a/keyboards/mt/mt84/keyboard.json b/keyboards/mt/mt84/keyboard.json index 8833f77ed98..fd03c2cf71f 100644 --- a/keyboards/mt/mt84/keyboard.json +++ b/keyboards/mt/mt84/keyboard.json @@ -57,6 +57,97 @@ "animation": "cycle_all" }, "driver": "is31fl3737", + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1}, + {"matrix": [0, 1], "x": 15, "y": 0, "flags": 1}, + {"matrix": [0, 2], "x": 30, "y": 0, "flags": 1}, + {"matrix": [0, 3], "x": 45, "y": 0, "flags": 1}, + {"matrix": [0, 4], "x": 60, "y": 0, "flags": 1}, + {"matrix": [0, 5], "x": 75, "y": 0, "flags": 1}, + {"matrix": [0, 6], "x": 90, "y": 0, "flags": 1}, + {"matrix": [0, 7], "x": 105, "y": 0, "flags": 1}, + {"matrix": [0, 8], "x": 119, "y": 0, "flags": 1}, + {"matrix": [0, 9], "x": 134, "y": 0, "flags": 1}, + {"matrix": [0, 10], "x": 149, "y": 0, "flags": 1}, + {"matrix": [0, 11], "x": 164, "y": 0, "flags": 1}, + {"matrix": [0, 12], "x": 179, "y": 0, "flags": 1}, + {"matrix": [0, 13], "x": 194, "y": 0, "flags": 1}, + {"matrix": [0, 14], "x": 209, "y": 0, "flags": 1}, + {"matrix": [4, 14], "x": 224, "y": 0, "flags": 1}, + + {"matrix": [1, 0], "x": 0, "y": 13, "flags": 1}, + {"matrix": [1, 1], "x": 15, "y": 13, "flags": 4}, + {"matrix": [1, 2], "x": 30, "y": 13, "flags": 4}, + {"matrix": [1, 3], "x": 45, "y": 13, "flags": 4}, + {"matrix": [1, 4], "x": 60, "y": 13, "flags": 4}, + {"matrix": [1, 5], "x": 75, "y": 13, "flags": 4}, + {"matrix": [1, 6], "x": 90, "y": 13, "flags": 4}, + {"matrix": [1, 7], "x": 105, "y": 13, "flags": 4}, + {"matrix": [1, 8], "x": 119, "y": 13, "flags": 4}, + {"matrix": [1, 9], "x": 134, "y": 13, "flags": 4}, + {"matrix": [1, 10], "x": 149, "y": 13, "flags": 4}, + {"matrix": [1, 11], "x": 164, "y": 13, "flags": 4}, + {"matrix": [1, 12], "x": 179, "y": 13, "flags": 4}, + {"matrix": [1, 13], "x": 202, "y": 13, "flags": 4}, + {"matrix": [1, 14], "x": 224, "y": 13, "flags": 1}, + + {"matrix": [2, 0], "x": 4, "y": 26, "flags": 1}, + {"matrix": [2, 1], "x": 22, "y": 26, "flags": 4}, + {"matrix": [2, 2], "x": 37, "y": 26, "flags": 4}, + {"matrix": [2, 3], "x": 52, "y": 26, "flags": 4}, + {"matrix": [2, 4], "x": 67, "y": 26, "flags": 4}, + {"matrix": [2, 5], "x": 82, "y": 26, "flags": 4}, + {"matrix": [2, 6], "x": 97, "y": 26, "flags": 4}, + {"matrix": [2, 7], "x": 112, "y": 26, "flags": 4}, + {"matrix": [2, 8], "x": 127, "y": 26, "flags": 4}, + {"matrix": [2, 9], "x": 142, "y": 26, "flags": 4}, + {"matrix": [2, 10], "x": 157, "y": 26, "flags": 4}, + {"matrix": [2, 11], "x": 172, "y": 26, "flags": 4}, + {"matrix": [2, 12], "x": 187, "y": 26, "flags": 4}, + {"matrix": [2, 13], "x": 205, "y": 26, "flags": 4}, + {"matrix": [2, 14], "x": 224, "y": 26, "flags": 1}, + + {"matrix": [3, 0], "x": 6, "y": 38, "flags": 1}, + {"matrix": [3, 1], "x": 26, "y": 38, "flags": 4}, + {"matrix": [3, 2], "x": 41, "y": 38, "flags": 4}, + {"matrix": [3, 3], "x": 56, "y": 38, "flags": 4}, + {"matrix": [3, 4], "x": 71, "y": 38, "flags": 4}, + {"matrix": [3, 5], "x": 86, "y": 38, "flags": 4}, + {"matrix": [3, 6], "x": 101, "y": 38, "flags": 4}, + {"matrix": [3, 7], "x": 116, "y": 38, "flags": 4}, + {"matrix": [3, 8], "x": 131, "y": 38, "flags": 4}, + {"matrix": [3, 9], "x": 146, "y": 38, "flags": 4}, + {"matrix": [3, 10], "x": 161, "y": 38, "flags": 4}, + {"matrix": [3, 11], "x": 175, "y": 38, "flags": 4}, + {"matrix": [3, 12], "x": 200, "y": 38, "flags": 4}, + {"matrix": [3, 14], "x": 224, "y": 38, "flags": 1}, + + {"matrix": [4, 0], "x": 9, "y": 51, "flags": 1}, + {"matrix": [4, 1], "x": 34, "y": 51, "flags": 4}, + {"matrix": [4, 2], "x": 49, "y": 51, "flags": 4}, + {"matrix": [4, 3], "x": 63, "y": 51, "flags": 4}, + {"matrix": [4, 4], "x": 78, "y": 51, "flags": 4}, + {"matrix": [4, 5], "x": 93, "y": 51, "flags": 4}, + {"matrix": [4, 6], "x": 108, "y": 51, "flags": 4}, + {"matrix": [4, 7], "x": 123, "y": 51, "flags": 4}, + {"matrix": [4, 8], "x": 138, "y": 51, "flags": 4}, + {"matrix": [4, 9], "x": 153, "y": 51, "flags": 4}, + {"matrix": [4, 10], "x": 168, "y": 51, "flags": 4}, + {"matrix": [4, 11], "x": 189, "y": 51, "flags": 4}, + {"matrix": [4, 12], "x": 209, "y": 51, "flags": 4}, + {"matrix": [4, 13], "x": 224, "y": 51, "flags": 1}, + + {"matrix": [5, 0], "x": 2, "y": 64, "flags": 1}, + {"matrix": [5, 1], "x": 21, "y": 64, "flags": 1}, + {"matrix": [5, 2], "x": 39, "y": 64, "flags": 1}, + {"matrix": [5, 5], "x": 95, "y": 64, "flags": 4}, + {"matrix": [5, 9], "x": 149, "y": 64, "flags": 1}, + {"matrix": [5, 10], "x": 164, "y": 64, "flags": 1}, + {"matrix": [5, 11], "x": 179, "y": 64, "flags": 1}, + {"matrix": [5, 12], "x": 194, "y": 64, "flags": 4}, + {"matrix": [5, 13], "x": 209, "y": 64, "flags": 4}, + {"matrix": [5, 14], "x": 224, "y": 64, "flags": 4} + ], "led_flush_limit": 26, "led_process_limit": 20, "max_brightness": 200 diff --git a/keyboards/mt/mt84/mt84.c b/keyboards/mt/mt84/mt84.c index 276c92fc065..1ac61e87c02 100644 --- a/keyboards/mt/mt84/mt84.c +++ b/keyboards/mt/mt84/mt84.c @@ -114,27 +114,4 @@ const is31fl3737_led_t PROGMEM g_is31fl3737_leds[IS31FL3737_LED_COUNT] = { {1, SW4_CS10, SW5_CS10, SW6_CS10}, {1, SW7_CS10, SW8_CS10, SW9_CS10} }; - -led_config_t g_led_config = {{ - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }, - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 }, - { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44 }, - { 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73 }, - {74, 75, 76, 77, 78, 79, 80, 81, 82, 83 } -}, { - { 0, 0 }, { 15, 0 }, { 30, 0 }, { 45, 0 }, { 60, 0 }, { 75, 0 }, { 90, 0 }, { 105, 0 }, { 120, 0 }, { 135, 0 }, { 150, 0 }, { 165, 0 }, { 180, 0 }, { 195, 0 }, { 210, 0 }, { 224, 0 }, - { 0, 13 }, { 15, 13 }, { 30, 13 }, { 45, 13 }, { 60, 13 }, { 75, 13 }, { 90, 13 }, { 105, 13 }, { 120, 13 }, { 135, 13 }, { 150, 13 }, { 165, 13 }, { 180, 13 }, { 205, 13 }, { 224, 13 }, - { 3, 26 }, { 18, 26 }, { 33, 26 }, { 48, 26 }, { 63, 26 }, { 78, 26 }, { 93, 26 }, { 108, 26 }, { 123, 26 }, { 138, 26 }, { 153, 26 }, { 168, 26 }, { 183, 26 }, { 205, 26 },{ 224, 26 }, - { 6, 39 }, { 20, 39 }, { 36, 39 }, { 52, 39 }, { 68, 39 }, { 84, 39 }, { 100, 39 }, { 116, 39 }, { 132, 39 }, { 148, 39 }, { 164, 39 }, { 180, 39 }, { 212, 39 }, { 224, 39 }, - { 9, 52 }, { 27, 52 }, { 43, 52 }, { 59, 52 }, { 75, 52 }, { 91, 52 }, { 107, 52 }, { 123, 52 }, { 139, 52 }, { 155, 52 }, { 171, 52 }, { 187, 52 }, { 212, 52 }, { 224, 52 }, -{ 2, 64 }, { 18, 64 }, { 33, 64 }, { 93, 64 }, { 150, 64 }, { 165, 64 }, { 180, 64 }, { 195, 64 }, { 210, 64 }, { 224, 64 } -}, { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 1, 1, 4, 1, 1, 1, 4, 4, 4, -}}; #endif From 9be6d76c61f5b760e7ceaf03fe80da3f07a29d8a Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 11 Jul 2024 22:50:26 +1000 Subject: [PATCH 217/519] `mt/mt64rgb`: move RGB Matrix config to data driven (#24089) --- keyboards/mt/mt64rgb/config.h | 2 - keyboards/mt/mt64rgb/keyboard.json | 70 +++++++++++++++++++ keyboards/mt/mt64rgb/keymaps/default/keymap.c | 3 - keyboards/mt/mt64rgb/keymaps/via/keymap.c | 3 - keyboards/mt/mt64rgb/mt64rgb.c | 20 ------ 5 files changed, 70 insertions(+), 28 deletions(-) diff --git a/keyboards/mt/mt64rgb/config.h b/keyboards/mt/mt64rgb/config.h index f69c778b8b6..ad034ceec8d 100644 --- a/keyboards/mt/mt64rgb/config.h +++ b/keyboards/mt/mt64rgb/config.h @@ -16,5 +16,3 @@ #pragma once #define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND - -#define RGB_MATRIX_LED_COUNT 64 diff --git a/keyboards/mt/mt64rgb/keyboard.json b/keyboards/mt/mt64rgb/keyboard.json index 0858e85ecae..451be59f8f5 100644 --- a/keyboards/mt/mt64rgb/keyboard.json +++ b/keyboards/mt/mt64rgb/keyboard.json @@ -60,6 +60,76 @@ "solid_multisplash": true }, "driver": "is31fl3733", + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1}, + {"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": 216, "y": 0, "flags": 1}, + + {"matrix": [1, 0], "x": 4, "y": 16, "flags": 1}, + {"matrix": [1, 1], "x": 24, "y": 16, "flags": 4}, + {"matrix": [1, 2], "x": 40, "y": 16, "flags": 4}, + {"matrix": [1, 3], "x": 56, "y": 16, "flags": 4}, + {"matrix": [1, 4], "x": 72, "y": 16, "flags": 4}, + {"matrix": [1, 5], "x": 88, "y": 16, "flags": 4}, + {"matrix": [1, 6], "x": 104, "y": 16, "flags": 4}, + {"matrix": [1, 7], "x": 120, "y": 16, "flags": 4}, + {"matrix": [1, 8], "x": 136, "y": 16, "flags": 4}, + {"matrix": [1, 9], "x": 152, "y": 16, "flags": 4}, + {"matrix": [1, 10], "x": 168, "y": 16, "flags": 4}, + {"matrix": [1, 11], "x": 184, "y": 16, "flags": 4}, + {"matrix": [1, 12], "x": 200, "y": 16, "flags": 4}, + {"matrix": [1, 13], "x": 220, "y": 16, "flags": 1}, + + {"matrix": [2, 0], "x": 6, "y": 32, "flags": 1}, + {"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": 214, "y": 32, "flags": 1}, + + {"matrix": [3, 0], "x": 8, "y": 48, "flags": 1}, + {"matrix": [3, 1], "x": 32, "y": 48, "flags": 4}, + {"matrix": [3, 2], "x": 48, "y": 48, "flags": 4}, + {"matrix": [3, 3], "x": 64, "y": 48, "flags": 4}, + {"matrix": [3, 4], "x": 80, "y": 48, "flags": 4}, + {"matrix": [3, 5], "x": 96, "y": 48, "flags": 4}, + {"matrix": [3, 6], "x": 112, "y": 48, "flags": 4}, + {"matrix": [3, 7], "x": 128, "y": 48, "flags": 4}, + {"matrix": [3, 8], "x": 144, "y": 48, "flags": 4}, + {"matrix": [3, 9], "x": 160, "y": 48, "flags": 4}, + {"matrix": [3, 10], "x": 176, "y": 48, "flags": 4}, + {"matrix": [3, 11], "x": 192, "y": 48, "flags": 4}, + {"matrix": [3, 12], "x": 208, "y": 48, "flags": 4}, + {"matrix": [3, 13], "x": 224, "y": 48, "flags": 1}, + + {"matrix": [4, 0], "x": 2, "y": 64, "flags": 1}, + {"matrix": [4, 1], "x": 22, "y": 64, "flags": 1}, + {"matrix": [4, 2], "x": 42, "y": 64, "flags": 1}, + {"matrix": [4, 5], "x": 102, "y": 64, "flags": 4}, + {"matrix": [4, 9], "x": 160, "y": 64, "flags": 1}, + {"matrix": [4, 10], "x": 176, "y": 64, "flags": 1}, + {"matrix": [4, 11], "x": 192, "y": 64, "flags": 4}, + {"matrix": [4, 12], "x": 208, "y": 64, "flags": 4}, + {"matrix": [4, 13], "x": 224, "y": 64, "flags": 4} + ], "led_flush_limit": 26, "led_process_limit": 20, "max_brightness": 160 diff --git a/keyboards/mt/mt64rgb/keymaps/default/keymap.c b/keyboards/mt/mt64rgb/keymaps/default/keymap.c index 7cff3be34c8..6c0d1a83fd7 100644 --- a/keyboards/mt/mt64rgb/keymaps/default/keymap.c +++ b/keyboards/mt/mt64rgb/keymaps/default/keymap.c @@ -37,9 +37,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; bool rgb_matrix_indicators_user(void) { - if (layer_state_is(1)) { - rgb_matrix_set_color(77,0xFF, 0x80, 0x00); - } if (host_keyboard_led_state().caps_lock) { rgb_matrix_set_color(28, 0xFF, 0xFF, 0xFF); } diff --git a/keyboards/mt/mt64rgb/keymaps/via/keymap.c b/keyboards/mt/mt64rgb/keymaps/via/keymap.c index df4884a3a35..7340b89ebbb 100644 --- a/keyboards/mt/mt64rgb/keymaps/via/keymap.c +++ b/keyboards/mt/mt64rgb/keymaps/via/keymap.c @@ -34,9 +34,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; bool rgb_matrix_indicators_user(void) { - if (layer_state_is(1)) { - rgb_matrix_set_color(77,0xFF, 0x80, 0x00); - } if (host_keyboard_led_state().caps_lock) { rgb_matrix_set_color(28, 0xFF, 0xFF, 0xFF); } diff --git a/keyboards/mt/mt64rgb/mt64rgb.c b/keyboards/mt/mt64rgb/mt64rgb.c index bcf26de2313..d08d87de46d 100644 --- a/keyboards/mt/mt64rgb/mt64rgb.c +++ b/keyboards/mt/mt64rgb/mt64rgb.c @@ -93,24 +93,4 @@ const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = { {0, SW10_CS10, SW11_CS10, SW12_CS10}, {0, SW10_CS15, SW11_CS15, SW12_CS15} }; - -led_config_t g_led_config = {{ - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 }, - { 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 }, - { 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40}, - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54 }, - { 55, 56, 57, 58, 59, 60, 61, 62, 63} -}, { - { 0, 0 }, { 16, 0 }, { 32, 0 }, { 48, 0 }, { 64, 0 }, { 80, 0 }, { 96, 0 }, { 112, 0 }, { 128, 0 }, { 144, 0 }, { 160, 0 }, { 176, 0 }, { 192, 0 }, { 216, 0 }, - { 4, 16 }, { 18, 16 }, { 34, 16 }, { 50, 16 }, { 66, 16 }, { 82, 16 }, { 98, 16 }, { 114, 16 }, { 130, 16 }, { 146, 16 }, { 162, 16 }, { 178, 16 }, { 194, 16 }, { 220, 16 }, - { 6, 32 }, { 20, 32 }, { 36, 32 }, { 52, 32 }, { 68, 32 }, { 84, 32 }, { 100, 32 }, { 116, 32 }, { 132, 32 }, { 148, 32 }, { 164, 32 }, { 180, 32 }, { 212, 32 }, - { 9, 48 }, { 27, 48 }, { 43, 48 }, { 59, 48 }, { 75, 48 }, { 91, 48 }, { 107, 48 }, { 123, 48 }, { 139, 48 }, { 155, 48 }, { 171, 48 }, { 187, 48 }, { 203, 48 }, { 219, 48 }, - { 2, 64 }, { 16, 64 }, { 32, 64 }, { 64, 64 }, { 114, 64 }, { 130, 64 }, { 146, 64 }, { 204, 64 }, { 224, 64 } -}, { - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 1, 1, 4, 1, 1, 4, 4, 4, -}}; #endif From 0c4fd514f1146224c8407591a5e42a0db456b536 Mon Sep 17 00:00:00 2001 From: 4pplet Date: Thu, 11 Jul 2024 14:51:43 +0200 Subject: [PATCH 218/519] Adding support for IBE60 (#24075) --- keyboards/4pplet/ibe60/keyboard.json | 94 +++++++++++++++++++ .../4pplet/ibe60/keymaps/default/keymap.c | 34 +++++++ keyboards/4pplet/ibe60/keymaps/via/keymap.c | 35 +++++++ keyboards/4pplet/ibe60/keymaps/via/rules.mk | 1 + keyboards/4pplet/ibe60/readme.md | 24 +++++ keyboards/4pplet/ibe60/rules.mk | 2 + 6 files changed, 190 insertions(+) create mode 100644 keyboards/4pplet/ibe60/keyboard.json create mode 100644 keyboards/4pplet/ibe60/keymaps/default/keymap.c create mode 100644 keyboards/4pplet/ibe60/keymaps/via/keymap.c create mode 100644 keyboards/4pplet/ibe60/keymaps/via/rules.mk create mode 100644 keyboards/4pplet/ibe60/readme.md create mode 100644 keyboards/4pplet/ibe60/rules.mk diff --git a/keyboards/4pplet/ibe60/keyboard.json b/keyboards/4pplet/ibe60/keyboard.json new file mode 100644 index 00000000000..dd674c6ab98 --- /dev/null +++ b/keyboards/4pplet/ibe60/keyboard.json @@ -0,0 +1,94 @@ +{ + "manufacturer": "4pplet", + "keyboard_name": "IBE60 Rev A", + "maintainer": "4pplet", + "bootloader": "stm32-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "key_lock": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["B2", "A5", "A4", "A3", "F1", "F0", "C15", "C14", "C13", "B9", "B8", "B7", "A15", "B3"], + "rows": ["B14", "A9", "B6", "B5", "B4"] + }, + "processor": "STM32F072", + "usb": { + "device_version": "0.0.1", + "pid": "0x0001", + "vid": "0x4448" + }, + "indicators": { + "caps_lock": "A8" + }, + "community_layouts": ["60_hhkb"], + "layouts": { + "LAYOUT_60_hhkb": { + "layout": [ + {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "!", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "@", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "#", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "$", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "%", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "^", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "&", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "*", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "(", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": ")", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "_", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "+", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "|", "matrix": [0, 13], "x": 13, "y": 0}, + {"label": "~", "matrix": [2, 13], "x": 14, "y": 0}, + {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1}, + {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1}, + {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1}, + {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1}, + {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1}, + {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1}, + {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1}, + {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1}, + {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1}, + {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1}, + {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1}, + {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1}, + {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, + {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2}, + {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2}, + {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2}, + {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2}, + {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2}, + {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2}, + {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2}, + {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2}, + {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2}, + {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2}, + {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2}, + {"label": "Enter", "matrix": [3, 13], "x": 12.75, "y": 2, "w": 2.25}, + {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3}, + {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3}, + {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3}, + {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3}, + {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3}, + {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3}, + {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3}, + {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3}, + {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3}, + {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3}, + {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"label": "Fn", "matrix": [4, 13], "x": 14, "y": 3}, + {"label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4}, + {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"label": "Alt", "matrix": [4, 9], "x": 11, "y": 4, "w": 1.5}, + {"label": "Win", "matrix": [4, 10], "x": 12.5, "y": 4} + ] + } + } +} diff --git a/keyboards/4pplet/ibe60/keymaps/default/keymap.c b/keyboards/4pplet/ibe60/keymaps/default/keymap.c new file mode 100644 index 00000000000..9ec56d48099 --- /dev/null +++ b/keyboards/4pplet/ibe60/keymaps/default/keymap.c @@ -0,0 +1,34 @@ +/* +Copyright 2020 Stefan Sundin "4pplet" <4pplet@protonmail.com> + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_60_hhkb( + 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_GRV, + 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_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, MO(1), + KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI), +// basic function layer +[1] = LAYOUT_60_hhkb( + QK_BOOT, 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_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +}; \ No newline at end of file diff --git a/keyboards/4pplet/ibe60/keymaps/via/keymap.c b/keyboards/4pplet/ibe60/keymaps/via/keymap.c new file mode 100644 index 00000000000..710b5ce8497 --- /dev/null +++ b/keyboards/4pplet/ibe60/keymaps/via/keymap.c @@ -0,0 +1,35 @@ +/* +Copyright 2020 Stefan Sundin "4pplet" <4pplet@protonmail.com> + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_60_hhkb( + 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_GRV, + 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_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, MO(1), + KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI), +// basic function layer +[1] = LAYOUT_60_hhkb( + QK_BOOT, 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_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +}; + diff --git a/keyboards/4pplet/ibe60/keymaps/via/rules.mk b/keyboards/4pplet/ibe60/keymaps/via/rules.mk new file mode 100644 index 00000000000..1e5b99807cb --- /dev/null +++ b/keyboards/4pplet/ibe60/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/4pplet/ibe60/readme.md b/keyboards/4pplet/ibe60/readme.md new file mode 100644 index 00000000000..24ed159952d --- /dev/null +++ b/keyboards/4pplet/ibe60/readme.md @@ -0,0 +1,24 @@ +# IBE60 + +PCB mounted 60% PCB for the IBE60 in fixed true HHKB layout + +* Keyboard Maintainer: [Stefan Sundin](https://github.com/4pplet) +* Hardware Supported: IBE60 Solder PCB + +Make example for this keyboard (after setting up your build environment): + + make 4pplet/ibe60:default + +Flashing example for this keyboard: + + make 4pplet/ibe60: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 Escape key and plug in the keyboard +* **Physical reset button**: Short the reset-header (labled BL/RESET) on the back of the PCB for about 2 seconds for the keyboard to enter bootloader +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/4pplet/ibe60/rules.mk b/keyboards/4pplet/ibe60/rules.mk new file mode 100644 index 00000000000..04fe1eba2ac --- /dev/null +++ b/keyboards/4pplet/ibe60/rules.mk @@ -0,0 +1,2 @@ +# Wildcard to allow APM32 MCU +DFU_SUFFIX_ARGS = -p FFFF -v FFFF From cc62eb503d8e0b1cb1be869597a5a972ebbca5f6 Mon Sep 17 00:00:00 2001 From: jack Date: Thu, 11 Jul 2024 07:39:45 -0600 Subject: [PATCH 219/519] [Keyboard] Add boardsource/sessenta (#23823) --- keyboards/boardsource/sessanta/keyboard.json | 255 ++++++++++++++++++ .../sessanta/keymaps/default/keymap.json | 21 ++ .../sessanta/keymaps/via/keymap.json | 26 ++ keyboards/boardsource/sessanta/readme.md | 27 ++ 4 files changed, 329 insertions(+) create mode 100644 keyboards/boardsource/sessanta/keyboard.json create mode 100644 keyboards/boardsource/sessanta/keymaps/default/keymap.json create mode 100644 keyboards/boardsource/sessanta/keymaps/via/keymap.json create mode 100644 keyboards/boardsource/sessanta/readme.md diff --git a/keyboards/boardsource/sessanta/keyboard.json b/keyboards/boardsource/sessanta/keyboard.json new file mode 100644 index 00000000000..c129e3acf59 --- /dev/null +++ b/keyboards/boardsource/sessanta/keyboard.json @@ -0,0 +1,255 @@ +{ + "manufacturer": "Boardsource", + "keyboard_name": "Sessanta", + "maintainer": "waffle87", + "development_board": "promicro", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "matrix_pins": { + "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "D3"], + "rows": ["D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"] + }, + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "band_sat": true, + "band_val": true, + "breathing": true, + "gradient_left_right": true + }, + "driver": "ws2812", + "layout": [ + {"x": 224, "y": 4, "flags": 2}, + {"x": 156, "y": 0, "flags": 2}, + {"x": 82, "y": 0, "flags": 2}, + {"x": 13, "y": 4, "flags": 2}, + {"x": 24, "y": 50, "flags": 2}, + {"x": 68, "y": 52, "flags": 2}, + {"x": 121, "y": 52, "flags": 2}, + {"x": 220, "y": 52, "flags": 2}, + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1}, + {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 30, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 45, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 60, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 75, "y": 0, "flags": 4}, + {"matrix": [0, 6], "x": 90, "y": 0, "flags": 4}, + {"matrix": [0, 7], "x": 105, "y": 0, "flags": 4}, + {"matrix": [0, 8], "x": 119, "y": 0, "flags": 4}, + {"matrix": [1, 0], "x": 134, "y": 0, "flags": 4}, + {"matrix": [1, 1], "x": 149, "y": 0, "flags": 4}, + {"matrix": [1, 2], "x": 164, "y": 0, "flags": 4}, + {"matrix": [1, 3], "x": 179, "y": 0, "flags": 4}, + {"matrix": [1, 4], "x": 202, "y": 0, "flags": 1}, + {"matrix": [1, 5], "x": 4, "y": 16, "flags": 1}, + {"matrix": [1, 6], "x": 22, "y": 16, "flags": 4}, + {"matrix": [1, 7], "x": 37, "y": 16, "flags": 4}, + {"matrix": [1, 8], "x": 52, "y": 16, "flags": 4}, + {"matrix": [2, 0], "x": 67, "y": 16, "flags": 4}, + {"matrix": [2, 1], "x": 82, "y": 16, "flags": 4}, + {"matrix": [2, 2], "x": 97, "y": 16, "flags": 4}, + {"matrix": [2, 3], "x": 112, "y": 16, "flags": 4}, + {"matrix": [2, 4], "x": 127, "y": 16, "flags": 4}, + {"matrix": [2, 5], "x": 142, "y": 16, "flags": 4}, + {"matrix": [2, 6], "x": 157, "y": 16, "flags": 4}, + {"matrix": [2, 7], "x": 172, "y": 16, "flags": 4}, + {"matrix": [2, 8], "x": 187, "y": 16, "flags": 4}, + {"matrix": [3, 0], "x": 205, "y": 16, "flags": 1}, + {"matrix": [3, 1], "x": 6, "y": 32, "flags": 1}, + {"matrix": [3, 2], "x": 26, "y": 32, "flags": 4}, + {"matrix": [3, 3], "x": 41, "y": 32, "flags": 4}, + {"matrix": [3, 4], "x": 56, "y": 32, "flags": 4}, + {"matrix": [3, 5], "x": 71, "y": 32, "flags": 4}, + {"matrix": [3, 6], "x": 86, "y": 32, "flags": 4}, + {"matrix": [3, 7], "x": 101, "y": 32, "flags": 4}, + {"matrix": [3, 8], "x": 116, "y": 32, "flags": 4}, + {"matrix": [4, 0], "x": 131, "y": 32, "flags": 4}, + {"matrix": [4, 1], "x": 146, "y": 32, "flags": 4}, + {"matrix": [4, 2], "x": 161, "y": 32, "flags": 4}, + {"matrix": [4, 3], "x": 175, "y": 32, "flags": 4}, + {"matrix": [4, 4], "x": 200, "y": 32, "flags": 1}, + {"matrix": [4, 5], "x": 224, "y": 32, "flags": 1}, + {"matrix": [4, 6], "x": 9, "y": 48, "flags": 1}, + {"matrix": [4, 7], "x": 34, "y": 48, "flags": 4}, + {"matrix": [4, 8], "x": 49, "y": 48, "flags": 4}, + {"matrix": [5, 0], "x": 63, "y": 48, "flags": 4}, + {"matrix": [5, 1], "x": 78, "y": 48, "flags": 4}, + {"matrix": [5, 2], "x": 93, "y": 48, "flags": 4}, + {"matrix": [5, 3], "x": 108, "y": 48, "flags": 4}, + {"matrix": [5, 4], "x": 123, "y": 48, "flags": 4}, + {"matrix": [5, 5], "x": 138, "y": 48, "flags": 4}, + {"matrix": [5, 6], "x": 153, "y": 48, "flags": 4}, + {"matrix": [5, 7], "x": 168, "y": 48, "flags": 4}, + {"matrix": [5, 8], "x": 196, "y": 48, "flags": 1}, + {"matrix": [6, 0], "x": 224, "y": 48, "flags": 1}, + {"matrix": [6, 1], "x": 2, "y": 64, "flags": 1}, + {"matrix": [6, 2], "x": 21, "y": 64, "flags": 1}, + {"matrix": [6, 3], "x": 39, "y": 64, "flags": 1}, + {"matrix": [6, 4], "x": 95, "y": 64, "flags": 4}, + {"matrix": [6, 5], "x": 151, "y": 64, "flags": 1}, + {"matrix": [6, 6], "x": 170, "y": 64, "flags": 1}, + {"matrix": [6, 7], "x": 189, "y": 64, "flags": 1}, + {"matrix": [6, 8], "x": 207, "y": 64, "flags": 1}, + {"matrix": [7, 0], "x": 224, "y": 64, "flags": 1} + ], + "max_brightness": 150, + "sleep": true + }, + "url": "https://boardsource.xyz", + "usb": { + "device_version": "1.0.0", + "pid": "0x17AC", + "vid": "0x4273" + }, + "ws2812": { + "pin": "D2" + }, + "layouts": { + "LAYOUT_625_bar": { + "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": [1, 0], "x": 9, "y": 0}, + {"matrix": [1, 1], "x": 10, "y": 0}, + {"matrix": [1, 2], "x": 11, "y": 0}, + {"matrix": [1, 3], "x": 12, "y": 0}, + {"matrix": [1, 4], "x": 13, "y": 0, "w": 2}, + {"matrix": [1, 5], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [1, 6], "x": 1.5, "y": 1}, + {"matrix": [1, 7], "x": 2.5, "y": 1}, + {"matrix": [1, 8], "x": 3.5, "y": 1}, + {"matrix": [2, 0], "x": 4.5, "y": 1}, + {"matrix": [2, 1], "x": 5.5, "y": 1}, + {"matrix": [2, 2], "x": 6.5, "y": 1}, + {"matrix": [2, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [2, 5], "x": 9.5, "y": 1}, + {"matrix": [2, 6], "x": 10.5, "y": 1}, + {"matrix": [2, 7], "x": 11.5, "y": 1}, + {"matrix": [2, 8], "x": 12.5, "y": 1}, + {"matrix": [3, 0], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [3, 1], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [3, 2], "x": 1.75, "y": 2}, + {"matrix": [3, 3], "x": 2.75, "y": 2}, + {"matrix": [3, 4], "x": 3.75, "y": 2}, + {"matrix": [3, 5], "x": 4.75, "y": 2}, + {"matrix": [3, 6], "x": 5.75, "y": 2}, + {"matrix": [3, 7], "x": 6.75, "y": 2}, + {"matrix": [3, 8], "x": 7.75, "y": 2}, + {"matrix": [4, 0], "x": 8.75, "y": 2}, + {"matrix": [4, 1], "x": 9.75, "y": 2}, + {"matrix": [4, 2], "x": 10.75, "y": 2}, + {"matrix": [4, 3], "x": 11.75, "y": 2}, + {"matrix": [4, 4], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [4, 5], "x": 15, "y": 2}, + {"matrix": [4, 6], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [4, 7], "x": 2.25, "y": 3}, + {"matrix": [4, 8], "x": 3.25, "y": 3}, + {"matrix": [5, 0], "x": 4.25, "y": 3}, + {"matrix": [5, 1], "x": 5.25, "y": 3}, + {"matrix": [5, 2], "x": 6.25, "y": 3}, + {"matrix": [5, 3], "x": 7.25, "y": 3}, + {"matrix": [5, 4], "x": 8.25, "y": 3}, + {"matrix": [5, 5], "x": 9.25, "y": 3}, + {"matrix": [5, 6], "x": 10.25, "y": 3}, + {"matrix": [5, 7], "x": 11.25, "y": 3}, + {"matrix": [5, 8], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [6, 0], "x": 15, "y": 3}, + {"matrix": [6, 1], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [6, 2], "x": 1.25, "y": 4, "w": 1.25}, + {"matrix": [6, 3], "x": 2.5, "y": 4, "w": 1.25}, + {"matrix": [6, 4], "x": 3.75, "y": 4, "w": 6.25}, + {"matrix": [6, 5], "x": 10, "y": 4, "w": 1.25}, + {"matrix": [6, 6], "x": 11.25, "y": 4, "w": 1.25}, + {"matrix": [6, 7], "x": 12.5, "y": 4, "w": 1.25}, + {"matrix": [6, 8], "x": 13.75, "y": 4, "w": 1.25}, + {"matrix": [7, 0], "x": 15, "y": 4} + ] + }, + "LAYOUT_all": { + "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": [1, 0], "x": 9, "y": 0}, + {"matrix": [1, 1], "x": 10, "y": 0}, + {"matrix": [1, 2], "x": 11, "y": 0}, + {"matrix": [1, 3], "x": 12, "y": 0}, + {"matrix": [1, 4], "x": 13, "y": 0, "w": 2}, + {"matrix": [1, 5], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [1, 6], "x": 1.5, "y": 1}, + {"matrix": [1, 7], "x": 2.5, "y": 1}, + {"matrix": [1, 8], "x": 3.5, "y": 1}, + {"matrix": [2, 0], "x": 4.5, "y": 1}, + {"matrix": [2, 1], "x": 5.5, "y": 1}, + {"matrix": [2, 2], "x": 6.5, "y": 1}, + {"matrix": [2, 3], "x": 7.5, "y": 1}, + {"matrix": [2, 4], "x": 8.5, "y": 1}, + {"matrix": [2, 5], "x": 9.5, "y": 1}, + {"matrix": [2, 6], "x": 10.5, "y": 1}, + {"matrix": [2, 7], "x": 11.5, "y": 1}, + {"matrix": [2, 8], "x": 12.5, "y": 1}, + {"matrix": [3, 0], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [3, 1], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [3, 2], "x": 1.75, "y": 2}, + {"matrix": [3, 3], "x": 2.75, "y": 2}, + {"matrix": [3, 4], "x": 3.75, "y": 2}, + {"matrix": [3, 5], "x": 4.75, "y": 2}, + {"matrix": [3, 6], "x": 5.75, "y": 2}, + {"matrix": [3, 7], "x": 6.75, "y": 2}, + {"matrix": [3, 8], "x": 7.75, "y": 2}, + {"matrix": [4, 0], "x": 8.75, "y": 2}, + {"matrix": [4, 1], "x": 9.75, "y": 2}, + {"matrix": [4, 2], "x": 10.75, "y": 2}, + {"matrix": [4, 3], "x": 11.75, "y": 2}, + {"matrix": [4, 4], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [4, 5], "x": 15, "y": 2}, + {"matrix": [4, 6], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [4, 7], "x": 2.25, "y": 3}, + {"matrix": [4, 8], "x": 3.25, "y": 3}, + {"matrix": [5, 0], "x": 4.25, "y": 3}, + {"matrix": [5, 1], "x": 5.25, "y": 3}, + {"matrix": [5, 2], "x": 6.25, "y": 3}, + {"matrix": [5, 3], "x": 7.25, "y": 3}, + {"matrix": [5, 4], "x": 8.25, "y": 3}, + {"matrix": [5, 5], "x": 9.25, "y": 3}, + {"matrix": [5, 6], "x": 10.25, "y": 3}, + {"matrix": [5, 7], "x": 11.25, "y": 3}, + {"matrix": [5, 8], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [6, 0], "x": 15, "y": 3}, + {"matrix": [6, 1], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [6, 2], "x": 1.25, "y": 4, "w": 1.25}, + {"matrix": [6, 3], "x": 2.5, "y": 4, "w": 1.25}, + {"matrix": [7, 1], "x": 3.75, "y": 4, "w": 1.5}, + {"matrix": [7, 2], "x": 5.25, "y": 4}, + {"matrix": [6, 4], "x": 6.25, "y": 4, "w": 1.25}, + {"matrix": [7, 3], "x": 7.5, "y": 4}, + {"matrix": [7, 4], "x": 8.5, "y": 4, "w": 1.5}, + {"matrix": [6, 5], "x": 10, "y": 4, "w": 1.25}, + {"matrix": [6, 6], "x": 11.25, "y": 4, "w": 1.25}, + {"matrix": [6, 7], "x": 12.5, "y": 4, "w": 1.25}, + {"matrix": [6, 8], "x": 13.75, "y": 4, "w": 1.25}, + {"matrix": [7, 0], "x": 15, "y": 4} + ] + } + } +} diff --git a/keyboards/boardsource/sessanta/keymaps/default/keymap.json b/keyboards/boardsource/sessanta/keymaps/default/keymap.json new file mode 100644 index 00000000000..b99333c46d7 --- /dev/null +++ b/keyboards/boardsource/sessanta/keymaps/default/keymap.json @@ -0,0 +1,21 @@ +{ + "keyboard": "boardsource/sessanta", + "keymap": "default", + "layout": "LAYOUT_625_bar", + "layers": [ + [ + "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_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_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_VOLU", + "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_MPLY", + "KC_LCTL", "KC_LGUI", "KC_LALT", "KC_SPC", "MO(1)", "KC_RALT", "KC_RGUI", "KC_RCTL", "KC_VOLD" + ], + [ + "QK_BOOT", "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_F13", + "QK_RBT", "RGB_MOD", "RGB_VAI", "RGB_HUI", "RGB_SAI", "RGB_TOG", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "EE_CLR", "RGB_RMOD", "RGB_VAD", "RGB_HUD", "RGB_SAD", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______" + ] + ] +} diff --git a/keyboards/boardsource/sessanta/keymaps/via/keymap.json b/keyboards/boardsource/sessanta/keymaps/via/keymap.json new file mode 100644 index 00000000000..68e8e5fb208 --- /dev/null +++ b/keyboards/boardsource/sessanta/keymaps/via/keymap.json @@ -0,0 +1,26 @@ +{ + "keyboard": "boardsource/sessanta", + "keymap": "via", + "layout": "LAYOUT_all", + "config": { + "features": { + "via": true + } + }, + "layers": [ + [ + "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_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_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_VOLU", + "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_MPLY", + "KC_LCTL", "KC_LGUI", "KC_LALT", "KC_SPC", "KC_SPC", "KC_SPC", "KC_SPC", "KC_SPC", "MO(1)", "KC_RALT", "KC_RGUI", "KC_RCTL", "KC_VOLD" + ], + [ + "QK_BOOT", "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_F13", + "QK_RBT", "RGB_MOD", "RGB_VAI", "RGB_HUI", "RGB_SAI", "RGB_TOG", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "EE_CLR", "RGB_RMOD", "RGB_VAD", "RGB_HUD", "RGB_SAD", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______" + ] + ] +} diff --git a/keyboards/boardsource/sessanta/readme.md b/keyboards/boardsource/sessanta/readme.md new file mode 100644 index 00000000000..35c841271c3 --- /dev/null +++ b/keyboards/boardsource/sessanta/readme.md @@ -0,0 +1,27 @@ +# Sessanta + +![image](https://i.imgur.com/ALvvC53.jpeg) + +A 60% keyboard offered in an MX or Choc PCB with per-key RGB + +* Keyboard Maintainer: [waffle87](https://github.com/waffle87) +* Hardware Supported: Sessanta PCB w/ Pro Micro compatible microcontroller +* Hardware Availability: [boardsource.xyz](https://boardsource.xyz) + +Make example for this keyboard (after setting up your build environment): + + make boardsource/sessanta:default + +Flashing example for this keyboard: + + make boardsource/sessanta: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 and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB near microcontroller +* **Keycode in layout**: Press the key mapped to `QK_BOOT` From 2623a258f1cc2a1687ef4529892b8fe6fb9be5f0 Mon Sep 17 00:00:00 2001 From: leyew <102467346+itsme-zeix@users.noreply.github.com> Date: Thu, 11 Jul 2024 21:40:54 +0800 Subject: [PATCH 220/519] [Keyboard] Rename dnworks/9973 to dnworks/tkl87 (#23692) --- data/mappings/keyboard_aliases.hjson | 3 +++ keyboards/dnworks/{9973 => tkl87}/config.h | 0 keyboards/dnworks/{9973 => tkl87}/keyboard.json | 2 +- .../{9973 => tkl87}/keymaps/default/keymap.c | 0 .../dnworks/{9973 => tkl87}/keymaps/via/keymap.c | 0 .../dnworks/{9973 => tkl87}/keymaps/via/rules.mk | 0 keyboards/dnworks/{9973 => tkl87}/readme.md | 16 ++++++++-------- 7 files changed, 12 insertions(+), 9 deletions(-) rename keyboards/dnworks/{9973 => tkl87}/config.h (100%) rename keyboards/dnworks/{9973 => tkl87}/keyboard.json (99%) rename keyboards/dnworks/{9973 => tkl87}/keymaps/default/keymap.c (100%) rename keyboards/dnworks/{9973 => tkl87}/keymaps/via/keymap.c (100%) rename keyboards/dnworks/{9973 => tkl87}/keymaps/via/rules.mk (100%) rename keyboards/dnworks/{9973 => tkl87}/readme.md (54%) diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 14eec52e313..174704e99ac 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -1528,5 +1528,8 @@ }, "kprepublic/jj50": { "target": "kprepublic/jj50/rev1" + }, + "dnworks/9973": { + "target": "dnworks/tkl87" } } diff --git a/keyboards/dnworks/9973/config.h b/keyboards/dnworks/tkl87/config.h similarity index 100% rename from keyboards/dnworks/9973/config.h rename to keyboards/dnworks/tkl87/config.h diff --git a/keyboards/dnworks/9973/keyboard.json b/keyboards/dnworks/tkl87/keyboard.json similarity index 99% rename from keyboards/dnworks/9973/keyboard.json rename to keyboards/dnworks/tkl87/keyboard.json index 61696060262..6b56435ae3f 100644 --- a/keyboards/dnworks/9973/keyboard.json +++ b/keyboards/dnworks/tkl87/keyboard.json @@ -1,5 +1,5 @@ { - "keyboard_name": "DN 997.3", + "keyboard_name": "DN TKL F12", "maintainer": "itsme-zeix", "manufacturer": "dnworks", "processor": "RP2040", diff --git a/keyboards/dnworks/9973/keymaps/default/keymap.c b/keyboards/dnworks/tkl87/keymaps/default/keymap.c similarity index 100% rename from keyboards/dnworks/9973/keymaps/default/keymap.c rename to keyboards/dnworks/tkl87/keymaps/default/keymap.c diff --git a/keyboards/dnworks/9973/keymaps/via/keymap.c b/keyboards/dnworks/tkl87/keymaps/via/keymap.c similarity index 100% rename from keyboards/dnworks/9973/keymaps/via/keymap.c rename to keyboards/dnworks/tkl87/keymaps/via/keymap.c diff --git a/keyboards/dnworks/9973/keymaps/via/rules.mk b/keyboards/dnworks/tkl87/keymaps/via/rules.mk similarity index 100% rename from keyboards/dnworks/9973/keymaps/via/rules.mk rename to keyboards/dnworks/tkl87/keymaps/via/rules.mk diff --git a/keyboards/dnworks/9973/readme.md b/keyboards/dnworks/tkl87/readme.md similarity index 54% rename from keyboards/dnworks/9973/readme.md rename to keyboards/dnworks/tkl87/readme.md index 790f236cb77..121cdccddfa 100644 --- a/keyboards/dnworks/9973/readme.md +++ b/keyboards/dnworks/tkl87/readme.md @@ -1,20 +1,20 @@ -# 997.3 TKL +# dnworks TKL (F12) ![997.3 TKL](https://i.imgur.com/iPPLKg1h.jpeg) -PCB that supports the 997.3 TKL designed by dnworks, including its variants. +PCB that supports the F12 TKLs designed by dnworks. * Keyboard Maintainer: [Zeix](https://github.com/itsme-zeix) -* Hardware Supported: 997.3 Solder PCB rev1 -* Hardware Availability: dnworks.co +* Hardware Supported: 997.3 Solder PCB rev1, 765LT Solder PCB rev1 and Best Friend Solder PCB Rev1. +* Hardware Availability: https://dnworks.co/products Make example for this keyboard (after setting up your build environment): - make dnworks/997pt3:default + make dnworks/tkl87:default Flashing example for this keyboard: - make dnworks/997pt3:default:flash + make dnworks/tkl87: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). @@ -22,6 +22,6 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to Enter the bootloader in 3 ways: -* **Bootmagic reset**: Hold down the top left key and plug in the keyboard -* **Physical reset button**: Briefly press the `RESET` button twice or short the `USB_BOOT` and `GND` pads and plug in the keyboard +* **Bootmagic reset**: Hold down escape and plug in the keyboard +* **Physical reset button**: Short the 'USB_BOOT' button and plug in keyboard or press the 'RESET' button twice with the keyboard plugged in. * **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available \ No newline at end of file From 1b8b6801d4f896409a765d302e7e0d50ff089692 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Thu, 11 Jul 2024 23:43:26 +1000 Subject: [PATCH 221/519] [CI] Add index page generator. (#23737) --- .github/workflows/ci_build_major_branch.yml | 24 +++- .gitignore | 1 + util/ci/index_generator.py | 109 +++++++++++++++ util/ci/requirements.txt | 2 + util/ci/templates/index.html.j2 | 139 ++++++++++++++++++++ 5 files changed, 269 insertions(+), 6 deletions(-) create mode 100755 util/ci/index_generator.py create mode 100644 util/ci/templates/index.html.j2 diff --git a/.github/workflows/ci_build_major_branch.yml b/.github/workflows/ci_build_major_branch.yml index 77755ba71f4..0e772c7d536 100644 --- a/.github/workflows/ci_build_major_branch.yml +++ b/.github/workflows/ci_build_major_branch.yml @@ -77,44 +77,56 @@ jobs: runs-on: ubuntu-latest steps: + - name: Disable safe.directory check + run: | + git config --global --add safe.directory '*' + + - name: Checkout QMK Firmware + uses: actions/checkout@v4 + - name: Download firmwares uses: actions/download-artifact@v4 with: pattern: firmware-* - path: firmwares + path: . merge-multiple: true + - name: Generate index page + run: | + python3 -m pip install -r ./util/ci/requirements.txt + ./util/ci/index_generator.py > index.html + - name: Upload to https://ci.qmk.fm/${{ inputs.branch || github.ref_name }}/${{ github.sha }} uses: jakejarvis/s3-sync-action@master with: - args: --acl public-read --follow-symlinks --delete + args: --acl public-read --follow-symlinks --delete --exclude '*' --include 'index.html' --include '*.hex' --include '*.bin' --include '*.uf2' env: AWS_S3_BUCKET: ${{ vars.CI_QMK_FM_SPACES_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.CI_QMK_FM_SPACES_KEY }} AWS_SECRET_ACCESS_KEY: ${{ secrets.CI_QMK_FM_SPACES_SECRET }} AWS_REGION: ${{ vars.CI_QMK_FM_SPACES_REGION }} AWS_S3_ENDPOINT: ${{ vars.CI_QMK_FM_SPACES_ENDPOINT }} - SOURCE_DIR: firmwares + SOURCE_DIR: . DEST_DIR: ${{ inputs.branch || github.ref_name }}/${{ github.sha }} - name: Upload to https://ci.qmk.fm/${{ inputs.branch || github.ref_name }}/latest uses: jakejarvis/s3-sync-action@master with: - args: --acl public-read --follow-symlinks --delete + args: --acl public-read --follow-symlinks --delete --exclude '*' --include 'index.html' --include '*.hex' --include '*.bin' --include '*.uf2' env: AWS_S3_BUCKET: ${{ vars.CI_QMK_FM_SPACES_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.CI_QMK_FM_SPACES_KEY }} AWS_SECRET_ACCESS_KEY: ${{ secrets.CI_QMK_FM_SPACES_SECRET }} AWS_REGION: ${{ vars.CI_QMK_FM_SPACES_REGION }} AWS_S3_ENDPOINT: ${{ vars.CI_QMK_FM_SPACES_ENDPOINT }} - SOURCE_DIR: firmwares + SOURCE_DIR: . DEST_DIR: ${{ inputs.branch || github.ref_name }}/latest - name: Check if failure marker file exists id: check_failure_marker uses: andstor/file-existence-action@v3 with: - files: firmwares/.failed + files: ./.failed - name: Fail build if needed if: steps.check_failure_marker.outputs.files_exists == 'true' diff --git a/.gitignore b/.gitignore index 35b128606d7..5de38c161cd 100644 --- a/.gitignore +++ b/.gitignore @@ -25,6 +25,7 @@ *.la *.stackdump *.sym +index.html # QMK-specific api_data/v1 diff --git a/util/ci/index_generator.py b/util/ci/index_generator.py new file mode 100755 index 00000000000..b6440bbffb7 --- /dev/null +++ b/util/ci/index_generator.py @@ -0,0 +1,109 @@ +#!/usr/bin/env python3 + +import os +import re +import shlex +import subprocess +from pathlib import Path + +from ansi2html import Ansi2HTMLConverter +from jinja2 import Environment, FileSystemLoader, select_autoescape + +orig_cwd = os.getcwd() +qmk_firmware_dir = Path(os.path.realpath(__file__)).parents[2] +build_dir = qmk_firmware_dir / ".build" + +KEYBOARD_PATTERN = re.compile("CI Metadata: KEYBOARD=(?P.*)\r?\n") +KEYMAP_PATTERN = re.compile("CI Metadata: KEYMAP=(?P.*)\r?\n") + +env = Environment( + loader=FileSystemLoader(Path(os.path.realpath(__file__)).parent / "templates"), + autoescape=select_autoescape(), +) + + +def _run(command, capture_output=True, combined_output=False, text=True, **kwargs): + if isinstance(command, str): + command = shlex.split(command) + if capture_output: + kwargs["stdout"] = subprocess.PIPE + kwargs["stderr"] = subprocess.PIPE + if combined_output: + kwargs["stderr"] = subprocess.STDOUT + if "stdin" in kwargs and kwargs["stdin"] is None: + del kwargs["stdin"] + if text: + kwargs["universal_newlines"] = True + return subprocess.run(command, **kwargs) + + +def _ansi2html(value): + return Ansi2HTMLConverter().convert(value, full=False) + + +def _ansi2html_styles(): + from ansi2html.style import get_styles + + styles = get_styles(scheme="dracula") + return "\n".join([str(s) for s in styles]) + + +def _git_log(count = 4): + os.chdir(qmk_firmware_dir) + ret = _run(f"git log -n {count} --color=always --no-merges --topo-order --stat").stdout.strip() + os.chdir(orig_cwd) + return ret + +def _git_describe(): + os.chdir(qmk_firmware_dir) + ret = _run("git describe --tags --always --dirty").stdout.strip() + os.chdir(orig_cwd) + return ret + +def _git_revision(): + os.chdir(qmk_firmware_dir) + ret = _run("git rev-parse HEAD").stdout.strip() + os.chdir(orig_cwd) + return ret + + +env.filters["ansi2html"] = _ansi2html + +binaries = [] +binaries.extend(qmk_firmware_dir.glob("*.bin")) +binaries.extend(qmk_firmware_dir.glob("*.hex")) +binaries.extend(qmk_firmware_dir.glob("*.uf2")) +binaries = list(sorted(binaries)) + +failures = [] +for mdfile in list(sorted(build_dir.glob("failed.log.*"))): + txt = Path(mdfile).read_text() + + m_kb = KEYBOARD_PATTERN.search(txt) + if not m_kb: + raise Exception("Couldn't determine the keyboard from the failure output") + m_km = KEYMAP_PATTERN.search(txt) + if not m_km: + raise Exception("Couldn't determine the keymap from the failure output") + + txt = KEYBOARD_PATTERN.sub("", KEYMAP_PATTERN.sub("", txt)).strip() + + failures.append( + { + "stdout": txt, + "keyboard": m_kb.group("keyboard"), + "keymap": m_km.group("keymap"), + } + ) + +template = env.get_template("index.html.j2") +print( + template.render( + ansi2html_styles=_ansi2html_styles(), + git_log=_git_log(), + git_describe=_git_describe(), + git_revision=_git_revision(), + binaries=binaries, + failures=failures, + ) +) diff --git a/util/ci/requirements.txt b/util/ci/requirements.txt index 3196568e1a7..47acf85644f 100644 --- a/util/ci/requirements.txt +++ b/util/ci/requirements.txt @@ -1 +1,3 @@ discord-webhook +Jinja2 +ansi2html diff --git a/util/ci/templates/index.html.j2 b/util/ci/templates/index.html.j2 new file mode 100644 index 00000000000..18086987db0 --- /dev/null +++ b/util/ci/templates/index.html.j2 @@ -0,0 +1,139 @@ + + + + + + + + + +
+
+
+ +
+
+
+ CI Build {% if failures | length > 0 %}❌{% else %}✅{% endif %} +
+
+ {{ git_describe }} +
+
+ {{ git_revision }} +
+
+ {{ failures | length }} failure{% if failures | length != 1 %}s{% endif %} +
+
+ + {% if binaries | length > 0 %}Firmwares | {% endif %} + Commit info + {% if failures | length > 0 %} | Failure Logs{% endif %} + +
+
+
+ +
+

Git commit

+
+
{{ git_log | ansi2html }}
+
+
+ {% if failures | length > 0 %} + +
+

Build failure logs

+ +
+ {% for failure in failures %} + +
+

Build failure — {{ failure.keyboard }}:{{ failure.keymap }}

+
+
{{ failure.stdout | ansi2html }}
+
+
+ {% endfor %} + {% endif %} +
+ {% if binaries | length > 0 %} +
+ +
+

Firmware downloads

+
+ {% for binary in binaries %} + + {%- endfor %} +
+
+
+ {% endif %} + + + From 2e671cfd8be1a867cb6717732f1045fc026aeba0 Mon Sep 17 00:00:00 2001 From: QMK Bot Date: Thu, 11 Jul 2024 23:50:39 +1000 Subject: [PATCH 222/519] [CI] Format code according to conventions (#24095) Format code according to conventions --- util/ci/index_generator.py | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/util/ci/index_generator.py b/util/ci/index_generator.py index b6440bbffb7..f2f7f4d4167 100755 --- a/util/ci/index_generator.py +++ b/util/ci/index_generator.py @@ -48,18 +48,20 @@ def _ansi2html_styles(): return "\n".join([str(s) for s in styles]) -def _git_log(count = 4): +def _git_log(count=4): os.chdir(qmk_firmware_dir) ret = _run(f"git log -n {count} --color=always --no-merges --topo-order --stat").stdout.strip() os.chdir(orig_cwd) return ret + def _git_describe(): os.chdir(qmk_firmware_dir) ret = _run("git describe --tags --always --dirty").stdout.strip() os.chdir(orig_cwd) return ret + def _git_revision(): os.chdir(qmk_firmware_dir) ret = _run("git rev-parse HEAD").stdout.strip() @@ -88,22 +90,18 @@ for mdfile in list(sorted(build_dir.glob("failed.log.*"))): txt = KEYBOARD_PATTERN.sub("", KEYMAP_PATTERN.sub("", txt)).strip() - failures.append( - { - "stdout": txt, - "keyboard": m_kb.group("keyboard"), - "keymap": m_km.group("keymap"), - } - ) + failures.append({ + "stdout": txt, + "keyboard": m_kb.group("keyboard"), + "keymap": m_km.group("keymap"), + }) template = env.get_template("index.html.j2") -print( - template.render( - ansi2html_styles=_ansi2html_styles(), - git_log=_git_log(), - git_describe=_git_describe(), - git_revision=_git_revision(), - binaries=binaries, - failures=failures, - ) -) +print(template.render( + ansi2html_styles=_ansi2html_styles(), + git_log=_git_log(), + git_describe=_git_describe(), + git_revision=_git_revision(), + binaries=binaries, + failures=failures, +)) From 063f1444c68a64a02fe2f5c3de2f8fa765f53533 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 11 Jul 2024 23:48:43 +0100 Subject: [PATCH 223/519] Add json index of files to CI uploads (#24097) --- .github/workflows/ci_build_major_branch.yml | 5 ++-- .gitignore | 1 + util/ci/firmware_list_generator.py | 26 +++++++++++++++++++++ util/ci/templates/index.html.j2 | 3 ++- 4 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 util/ci/firmware_list_generator.py diff --git a/.github/workflows/ci_build_major_branch.yml b/.github/workflows/ci_build_major_branch.yml index 0e772c7d536..ba5d1c246fe 100644 --- a/.github/workflows/ci_build_major_branch.yml +++ b/.github/workflows/ci_build_major_branch.yml @@ -95,11 +95,12 @@ jobs: run: | python3 -m pip install -r ./util/ci/requirements.txt ./util/ci/index_generator.py > index.html + ./util/ci/firmware_list_generator.py > firmware_list.json - name: Upload to https://ci.qmk.fm/${{ inputs.branch || github.ref_name }}/${{ github.sha }} uses: jakejarvis/s3-sync-action@master with: - args: --acl public-read --follow-symlinks --delete --exclude '*' --include 'index.html' --include '*.hex' --include '*.bin' --include '*.uf2' + args: --acl public-read --follow-symlinks --delete --exclude '*' --include 'index.html' --include 'firmware_list.json' --include '*.hex' --include '*.bin' --include '*.uf2' env: AWS_S3_BUCKET: ${{ vars.CI_QMK_FM_SPACES_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.CI_QMK_FM_SPACES_KEY }} @@ -112,7 +113,7 @@ jobs: - name: Upload to https://ci.qmk.fm/${{ inputs.branch || github.ref_name }}/latest uses: jakejarvis/s3-sync-action@master with: - args: --acl public-read --follow-symlinks --delete --exclude '*' --include 'index.html' --include '*.hex' --include '*.bin' --include '*.uf2' + args: --acl public-read --follow-symlinks --delete --exclude '*' --include 'index.html' --include 'firmware_list.json' --include '*.hex' --include '*.bin' --include '*.uf2' env: AWS_S3_BUCKET: ${{ vars.CI_QMK_FM_SPACES_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.CI_QMK_FM_SPACES_KEY }} diff --git a/.gitignore b/.gitignore index 5de38c161cd..c3f2f063cd1 100644 --- a/.gitignore +++ b/.gitignore @@ -26,6 +26,7 @@ *.stackdump *.sym index.html +firmware_list.json # QMK-specific api_data/v1 diff --git a/util/ci/firmware_list_generator.py b/util/ci/firmware_list_generator.py new file mode 100644 index 00000000000..926939f4c3e --- /dev/null +++ b/util/ci/firmware_list_generator.py @@ -0,0 +1,26 @@ +import os +import json +from pathlib import Path +from time import gmtime, strftime + +DATETIME_FORMAT = '%Y-%m-%d %H:%M:%S %Z' + +def current_datetime(): + return strftime(DATETIME_FORMAT, gmtime()) + + +qmk_firmware_dir = Path(os.path.realpath(__file__)).parents[2] + +binaries = [] +binaries.extend(qmk_firmware_dir.glob("*.bin")) +binaries.extend(qmk_firmware_dir.glob("*.hex")) +binaries.extend(qmk_firmware_dir.glob("*.uf2")) +binaries = list(sorted(binaries)) + +data = [] +for binary in binaries: + data.append(binary.name) + +keyboard_all_json = json.dumps({'last_updated': current_datetime(), 'files': data}, separators=(',', ':')) + +print(keyboard_all_json) diff --git a/util/ci/templates/index.html.j2 b/util/ci/templates/index.html.j2 index 18086987db0..1199a0819d3 100644 --- a/util/ci/templates/index.html.j2 +++ b/util/ci/templates/index.html.j2 @@ -3,6 +3,7 @@ +