Compare commits

..

173 Commits

Author SHA1 Message Date
b07a68230d Fix version check in Fedora install script to be >= 39 (#24281) 2024-08-15 12:10:35 +01:00
dccada95aa Remove debugging prints. (#24271) 2024-08-12 23:25:29 +10:00
380e0c9cad Userspace: add support for adding environment variables during build (#22887) 2024-08-12 22:34:22 +10:00
158aaef78c ChibiOS update script updates. (#24267) 2024-08-12 20:35:56 +10:00
5acc3b2b7b Add extra compatibility to Sat75 HS PCB (#24156) 2024-08-07 14:40:31 -06:00
78900720fd JJ50 v2 Support (#24212)
* add support for JJ50 V2 PCB

* fix bootloader config

* update mousekey setting

* run format-json

---------

Co-authored-by: Steve Jacobs <sjacobs@truefit.io>
2024-08-07 14:34:21 -06:00
c67c3d375b Add support for bunnygirl65 (#24244)
* Add support for bunnygirl65

* Update keyboard.json

* Update keymap.c

* Update keymap.c

* Update keyboards/sawnsprojects/bunnygirl65/readme.md

Co-authored-by: Joel Challis <git@zvecr.com>

* Update keyboards/sawnsprojects/bunnygirl65/keyboard.json

Co-authored-by: Joel Challis <git@zvecr.com>

* Update keyboards/sawnsprojects/bunnygirl65/keyboard.json

---------

Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: jack <jack@pngu.org>
2024-08-07 14:28:41 -06:00
75402109e9 Add Void65h (#24183) 2024-08-04 00:46:12 +01:00
fa657fef70 atlantis/ak81_ve: move RGB Matrix LED config to data driven (#24115) 2024-08-04 00:38:26 +01:00
eb78ca1c1a handwired/p65rgb: move RGB Matrix LED config to data driven (#24124) 2024-08-04 00:37:57 +01:00
d28a50e176 FX19 Support (#24220) 2024-08-03 23:11:49 +01:00
c7662e4f36 [Keyboard] Add archerkeyboard/desire65 (#23776)
Co-authored-by: jack <0x6a73@protonmail.com>
2024-07-31 10:07:51 +10:00
73cb6fd89f cipulot/ec_60x: Fix VIA layout options (#24217)
This fixes the issue of one layout option not being applied correctly because it was out of bound.
2024-07-30 22:21:42 +01:00
d538451adb Remove AVR GCC version warning (#24206) 2024-07-28 19:16:15 +01:00
cf84ea7662 Fix Reverb lockup when using GCC14 (#24199) 2024-07-26 01:41:54 +01:00
8c35011d0a [CLI] Only generate files if contents change. (#24038)
Don't overwrite if the content doesn't change.
2024-07-24 06:16:51 +01:00
8c5acdea12 Update to automatic-approve-action fork (#24188) 2024-07-24 04:50:38 +01:00
60c5ad821c Bump actions/labeler from 4 to 5 (#22608)
* Bump actions/labeler from 4 to 5

Bumps [actions/labeler](https://github.com/actions/labeler) from 4 to 5.
- [Release notes](https://github.com/actions/labeler/releases)
- [Commits](https://github.com/actions/labeler/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/labeler
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: zvecr <git@zvecr.com>
2024-07-24 00:05:50 +01:00
622dc56250 kingly_keys/ave: adjust layout names (#24179) 2024-07-23 21:20:17 +10:00
d079372580 meme: adjust layout names (#24178) 2024-07-23 21:03:02 +10:00
af70e3759a [docs] update serial.md (#24182)
capabilites -> capabilities
2024-07-23 11:37:19 +01:00
4bcc80ad46 merge/um80: reduce firmware size (#24177) 2024-07-22 17:12:55 +01:00
d09c11dc78 kprepublic/bm40hsrgb/rev2: reduce firmware size (#24176) 2024-07-22 17:12:34 +01:00
82f9019cc9 melgeek/mojo68/rev1: reduce firmware size (#24171) 2024-07-23 01:29:40 +10:00
4e2effc538 rubi: reduce firmware size (#24170) 2024-07-23 01:16:00 +10:00
8d5517fa63 doro67/rgb: reduce firmware size (#24169) 2024-07-23 01:04:34 +10:00
ee1505971f handwired/hnah108: reduce firmware size (#24168) 2024-07-23 00:52:31 +10:00
b6e1a20950 Keycult TKL (#24148)
Co-authored-by: yiancar <yiancar@gmail.com>
2024-07-21 13:29:45 -07:00
f2c789bb4a Fix build failures noticed in #24163 CI log. (#24164) 2024-07-21 09:56:39 +10:00
fab50be817 mwstudio/mw75: reduce size (#24161) 2024-07-21 07:59:45 +10:00
f04fd13dff mechlovin/delphine/rgb_led: reduce size (#24160) 2024-07-21 07:57:10 +10:00
eb60235cd5 handwired/tractyl_manuform/5x6_right/arduinomicro: reduce size (#24159) 2024-07-21 07:53:04 +10:00
2fb9816c77 Remove incorrect use of split.main (#24158) 2024-07-20 14:03:57 +01:00
6fbe91aecd keychron/q2: fix RGB Matrix config for JIS variant (#24138) 2024-07-20 10:56:51 +01:00
a6857872f2 kopibeng/xt60/xt60_singa: reduce firmware size (#24149) 2024-07-19 06:56:00 +01:00
56323f75c6 pixelspace/capsule65i: reduce firmware size (#24150) 2024-07-19 06:54:50 +01:00
11031adc1b clueboard/66/rev3: reduce firmware size (#24152) 2024-07-19 06:53:56 +01:00
d79f46e408 vertex/angler2: reduce firmware size (#24140) 2024-07-19 08:04:40 +10:00
2ddfd60be7 amjkeyboard/amj60: reduce firmware size (#24139) 2024-07-18 08:10:45 +01:00
63ef6516d3 Avoid path issues with qmk flash on Windows (#24130) 2024-07-17 20:31:18 +01:00
522bf1daf2 Skelett40 (#24121)
Co-authored-by: yiancar <yiancar@gmail.com>
2024-07-15 21:43:26 -07:00
a763dd5bbd matrix/noah: move RGB Matrix LED config to data driven (#24117) 2024-07-15 18:41:44 +10:00
c70c99367a Add matchstickworks normiepad (#23183)
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2024-07-14 22:29:37 -07:00
b5b06f1094 checkerboards/axon40: adjust layout name (#24119) 2024-07-15 06:04:27 +01:00
caa7599b83 checkerboards/pursuit40: adjust layout name (#24118) 2024-07-15 06:04:00 +01:00
c2dbbc060a Add MMkeyboard Class60 (#22972)
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
2024-07-14 21:58:35 -07:00
875eb43a28 dp60: move RGB Matrix LED config to data driven (#24022) 2024-07-13 23:40:36 +10:00
2908f0b846 Add Aums Work keyboard (#23600) 2024-07-13 06:24:11 -07:00
a3d938d822 ryanskidmore/rskeys100: move RGB Matrix LED config to data driven (#24114) 2024-07-13 14:19:07 +01:00
6dfd7ed46f Fix i2c received value in georgi and bajjak (#24113) 2024-07-13 22:43:52 +10:00
7b5d7907df adds veilid SAO macropad (#23868)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: c0ldbru <c0ldbrusec@gmail.com>
2024-07-12 19:11:00 -07:00
79ad561b67 Fix typo in Keychron comments: "lcok" to "lock" (#24107) 2024-07-12 14:46:38 -06:00
5a5f68038e mechwild/bbpad: fix build (#24106) 2024-07-12 10:35:32 +01:00
4d4d7b76b0 [CI] Disable Discord webhook when CI run is cancelled. (#24104)
* Disable Discord webhook when CI run is cancelled.

* Include link to binaries in Discord output.
2024-07-12 01:19:33 +01:00
c58c5fa8fa Fix missing hashbang 2024-07-12 01:18:50 +01:00
565bb704e0 fixup CI exec flag 2024-07-12 09:48:38 +10:00
890909c2d7 [CI] Remove via keymap builds. (#24103) 2024-07-12 09:19:04 +10:00
f15fff3258 [CI] Pull full history before generating index (#24102)
For some reason the history generation is way out.
2024-07-12 00:01:20 +01:00
7d94db8661 [CI] Format code according to conventions (#24100) 2024-07-12 08:58:57 +10:00
063f1444c6 Add json index of files to CI uploads (#24097) 2024-07-12 08:48:43 +10:00
2e671cfd8b [CI] Format code according to conventions (#24095)
Format code according to conventions
2024-07-11 14:50:39 +01:00
1b8b6801d4 [CI] Add index page generator. (#23737) 2024-07-11 14:43:26 +01:00
cc62eb503d [Keyboard] Add boardsource/sessenta (#23823) 2024-07-11 14:39:45 +01:00
0c4fd514f1 Adding support for IBE60 (#24075) 2024-07-11 13:51:43 +01:00
9be6d76c61 mt/mt64rgb: move RGB Matrix config to data driven (#24089) 2024-07-11 13:50:26 +01:00
3d10171e2c mt/mt84: move RGB Matrix config to data driven (#24090) 2024-07-11 13:49:45 +01:00
e3ef5b2d9d mntre_v3: fix matrix bottom row (#24077) 2024-07-11 13:46:54 +01:00
f8cf58a512 Remove a user keymap from crkbd. (#24091)
remove personal keymap
2024-07-11 13:10:28 +01:00
era
efa5b30cfd [Keyboard] Add Linx3 FAve65S (#24034)
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2024-07-10 19:50:09 -07:00
fb54a59bba jadookb/jkb65: move RGB Matrix LED config to data driven (#24080) 2024-07-10 17:09:41 -07:00
fbbc71ec34 kakunpc/rabbit_capture_plan: update keymap layout name (#24079)
`kakunpc/rabbit_capture_plan`: update keymap layout names
2024-07-08 10:27:09 -06:00
a0bb7ff992 latinpad/latin60rgb: move RGB Matrix LED config to data driven (#24076) 2024-07-08 15:57:45 +10:00
6eb6e3048a pearlboards/zeuspad: add additional layouts (#24066) 2024-07-08 15:57:29 +10:00
d08da05cb8 mechlovin/olly/octagon: move LED Matrix LED config to data driven (#24069) 2024-07-08 15:57:13 +10:00
8336b5c72f ash1800: add additional layouts (#24065) 2024-07-08 15:56:57 +10:00
b23ddb9ad8 [keyboard] mechwild/bbpad (#24072)
* Initial bbpad commit

* refactor: bbpad

---------

Co-authored-by: Kyle McCreery <mccreery.kyle@gmail.com>
2024-07-07 13:09:48 -06:00
67d512e639 Fix enter for two ANSI layouts on the TKD Cycle7 (#24070) 2024-07-07 00:58:04 +01:00
4fbb395602 ano: fix layout name (#24067) 2024-07-06 09:21:11 +01:00
300505bd9e [docs] Fixup home link. (#24068) 2024-07-06 16:08:55 +10:00
38f07e1fd2 handwired/swiftrax/bumblebee: fix layout name (#24064) 2024-07-06 03:23:54 +01:00
b82f6ac402 [docs] Update RGBLight (Underglow) keycode names (#23999) 2024-07-06 11:14:09 +10:00
be967d42d2 playkbtw/pk64rgb: move RGB Matrix LED config to data driven (#24062) 2024-07-05 23:41:32 +01:00
af72a58c8f 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] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-05 23:25:48 +01:00
9fb51cfe2b kbdfans/baguette66: fix layout name (#24061) 2024-07-05 11:57:39 +01:00
6d21898c14 Add support for Equinox XL (#23695) 2024-07-05 11:55:25 +01:00
096dc672c1 kakunpc/rabbit_capture_plan: add additional layouts (#24059) 2024-07-05 16:35:48 +10:00
8e64ff574a kakunpc/angel64: add additional layouts (#24058) 2024-07-05 16:35:35 +10:00
5e2368984e ash_xiix: add additional layouts (#24057) 2024-07-05 16:35:15 +10:00
15af5d7d0d handwired/tkk: fix layout name (#24056) 2024-07-04 23:25:00 -06:00
62c1787d72 dc01/arrow: fix layout name (#24025) 2024-07-05 15:10:02 +10:00
8fe667a1a4 Add Sleepy Craft Studios Sleepy Keeb Split (#23844) 2024-07-04 18:35:29 -07:00
031ccd4887 salicylic_acid3/setta21: fix RGB Matrix LED config (#24041) 2024-07-05 00:49:05 +01:00
43fc7b5a4f kikoslab/kl90: add additional layouts (#24024) 2024-07-05 00:44:23 +01:00
4ced8d9371 Fixes duplicate pid/vid for sofle_choc (#24030) 2024-07-04 13:49:55 -06:00
1c6cdb8d74 [Keyboard] Addition of EC 60X (#24028)
* Addition of EC 60X

* Update keyboards/cipulot/ec_60x/keymaps/via/keymap.c

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Update keyboards/cipulot/ec_60x/keymaps/default/keymap.c

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Update keyboards/cipulot/ec_60x/keyboard.json

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Update keyboards/cipulot/ec_60x/keyboard.json

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Update keyboards/cipulot/ec_60x/keyboard.json

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Update keyboards/cipulot/ec_60x/keyboard.json

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* 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 <drashna@live.com>

---------

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-07-03 20:42:07 -06:00
c663f5e9f3 [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 <dunk2k_2000@hotmail.com>

* switch image url to source from imgur instead of github

---------

Co-authored-by: chalex <alejandrelee+magbogbro@gmail.com>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2024-07-03 20:40:24 -06:00
977918982d monsgeek/m5: make numlock and capslock LEDs work (#24027) 2024-07-03 20:38:38 -06:00
c2f7974c8e [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
2024-07-03 20:34:17 -06:00
bc8ac86422 Minimum python version listing. (#23989) 2024-07-03 22:00:53 +10:00
33adb8cba0 vertex/arc60h: add additional layouts (#24023) 2024-07-03 20:31:49 +10:00
e754c9f2b4 Update keymap for KLC x TGR Lena (#23688) 2024-07-03 01:38:57 -07:00
869b7d9ae6 Fix index EC Dolice (#24033)
* Update keyboard.json

Fixed wrong index in keyboard.json

* Small touch layout
2024-07-02 15:35:26 -06:00
3ffe8d917a Fix 'qmk new-keyboard' processing of development_board (#23996) 2024-06-30 03:39:49 +01:00
12379dc1eb Fix ploopy Adept/Madromys link (#24018) 2024-06-30 02:57:35 +01:00
d6bfbdb6b1 horrortroll/handwired_k552: fix RGB Matrix LED config (#24014) 2024-06-29 20:56:29 +10:00
cc0b2f9814 jels/boaty: adjust layout name (#24013) 2024-06-29 10:20:11 +01:00
5624804c68 h0oni/deskpad and hotduck: adjust layout names (#24004) 2024-06-29 10:19:51 +01:00
2bde8ce206 ez_maker: adjust layout names (#24015) 2024-06-29 07:54:52 +01:00
086e8e938e tzarc/djinn: adjust layout name (#24012) 2024-06-29 16:00:05 +10:00
cd374b1500 clueboard/card: Swap layout and alias (#24007) 2024-06-29 04:07:42 +01:00
9d02ac37f7 Add Nyquist Rev. 5 (#23971)
* Add Nyquist Rev. 5

* Remove unused keymap
2024-06-27 13:37:41 -04:00
603586800c [Keyboard] Add Elysian (#23949)
* adding Elysian

* corrections from zvecr
2024-06-26 21:56:16 -06:00
90b043e01c 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
2024-06-26 21:55:47 -06:00
5f794217b4 xelus/snap96: add matrix diagram and some additional layouts (#23992) 2024-06-26 14:35:45 +10:00
b71b81d539 hs60/v2/hhkb: Adjust layout name (#23998) 2024-06-26 05:28:45 +01:00
17ae6f9b53 helix/pico and rev2: add keyboard.jsons (#23964) 2024-06-26 13:47:36 +10:00
cebe521b11 Fix docker_cmd.sh when userspace is not configured (#23997) 2024-06-26 11:34:24 +10:00
0b572a1be6 Remove some redundant 'blank' files (#23995) 2024-06-25 07:38:56 +01:00
378dbd32bd custommk/ergostrafer_rgb: move to keyboard.json (#23990) 2024-06-24 18:19:48 +10:00
03e688e91f Add support for userspace to docker build commands. (#23988) 2024-06-24 12:29:30 +10:00
d5e0562a70 Rename layouts containing keyboard name (#23930) 2024-06-23 19:33:26 +01:00
191c8cca33 handwired/symmetric70_proto: add keyboard.json (#23966) 2024-06-23 03:57:50 +01:00
7aa2ce2b38 Update documentation suggestion in top level readme (#23978) 2024-06-22 05:45:04 +01:00
6f03d20a92 Fix 'qmk import-kbfirmware' WS2812 config (#23976) 2024-06-22 04:27:57 +01:00
e5c80fc6b3 Update what's powering QMK docs (#23977) 2024-06-22 04:27:15 +01:00
aa11ef5bcf Fix leftover reference to previous AW20216S EN pin definition (#23974) 2024-06-22 01:53:59 +01:00
a6ef34cd16 [Keyboard] fixes for ZSA Voyager (#23912) 2024-06-20 09:08:57 +01:00
4fdde75333 Update 'qmk import-kbfirmware' to use 'keyboard.json' (#23960) 2024-06-20 02:59:29 +01:00
dafc46f1d1 Update RGB matrix indicator example (#23947)
Changed the example in indicator-examples-2 to use a compound literal, otherwise the code fails to compile.
2024-06-17 20:30:57 +01:00
baa564bddf Remove references to bootloadHID flashing page in keyboard readmes (#23942)
* Remove references to bootloadHID flashing page in keyboard readmes

* Remove bootloadHID flashing page
2024-06-17 20:23:45 +01:00
3f44231d2d Strip decimals from RGB Matrix layout positions (#23943) 2024-06-17 20:12:26 +10:00
4864d5afca Mechwild OBE/Waka60: Fix build warnings (#23929) 2024-06-17 14:47:33 +10:00
089a819179 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
2024-06-16 21:57:37 +01:00
751fbd75d3 Add Chiri CE (#23926)
* Add Chiri CE

* Add more layers for dynamic keymap

* Move EEPROM clear

* Convert to keymap.json

* Change bootmagic matrix position
2024-06-16 12:16:05 -06:00
3c868b9316 ergodox_ez/base: Add missing features object (#23935) 2024-06-16 22:52:47 +10:00
7ac1a34a34 [CLI] Older python compat. (#23933) 2024-06-16 19:53:03 +10:00
ad82c4703a [Keyboard] ErgoStrafer RGB (#22936)
* adding ergostrafer rgb

* removing comment
2024-06-15 21:46:22 -07:00
0262161914 [CLI] Don't exit() when certain exceptions occur. (#23442) 2024-06-15 10:37:47 +01:00
d4654ab893 Various keyboard fixes (#23919) 2024-06-14 22:58:13 +01:00
aec7569a04 [Keyboard] Add Altair (#23878)
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-06-14 13:26:21 -07:00
0594121b68 [Keyboard] Add Altair-X (#23879)
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-06-14 13:26:00 -07:00
4e8b740dd7 fix keymap for kprepublic bm60hsrgb_iso (#23733)
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2024-06-14 00:34:06 -07:00
c92becc57e [Keyboard] Enable dip switch for Keychron Q4 (#23889) 2024-06-13 21:10:23 -07:00
cd565a95a0 Remove suggestion of creating issues for unsupported keyboards. (#23918) 2024-06-14 00:23:57 +01:00
caf13bb9db Fix order of RGB LEDs to correct one for Iris CE (#23914) 2024-06-13 15:36:26 -07:00
4a4eda4c3c Add missing encode enable for BAMFK-1 (#23821)
Add missing encode enable
2024-06-13 09:00:42 -04:00
942c2a8d5a Fix nonunique anchors (#23910) 2024-06-13 13:31:03 +10:00
be9dfe65dd Add API reference section for LED/RGB Matrix docs (#23902) 2024-06-13 12:55:47 +10:00
fa40356250 Ensure documentation pull requests build (#23908) 2024-06-13 02:59:37 +01:00
7247039742 Fixup docs. (#23906) 2024-06-13 02:55:52 +01:00
e69d30a9e9 VIA keymap deprecation notice. (#23905) 2024-06-13 09:48:24 +10:00
bdd10ef8e7 Remove VIA_ENABLE from default keymaps. (#23903) 2024-06-12 17:43:09 +10:00
031ca3b40b [Keyboard] Fix settings for 4pplet/waffling60 (#23862) 2024-06-12 00:11:50 -07:00
8041a88f5d Slight clarification of LED/RGB Matrix custom effect docs (#23897) 2024-06-12 01:50:25 +01:00
8b5cdfabf5 Re-implement eeprom_write_qword as define (#23890) 2024-06-10 01:23:25 +01:00
df4538d894 Fix Iris/Irispad keymaps (#23856) 2024-06-09 13:14:48 -07:00
e484a3a179 [Keyboard] add jaykeeb jk60 (#23876) 2024-06-09 12:47:48 -07:00
9dc183afe4 Fix Tri-Layer Keycode Descriptions (#23888) 2024-06-09 10:57:45 -07:00
e7a08ef1a9 Fix broken link in PR checklist (#23877) 2024-06-07 23:25:20 +10:00
950d765370 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 <syenasweta@gmail.com>
Co-authored-by: jack <0x6a73@protonmail.com>
2024-06-06 19:17:21 -06:00
260e9a546e Fix documentation error (#23872)
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: Ryan <fauxpark@gmail.com>
2024-06-06 12:09:44 +10:00
a4da5f219f Fixup build failures. (#23869) 2024-06-05 12:20:57 +10:00
6d365dd8f1 Add helper make targets for formatting and pytest. (#23858) 2024-06-04 12:23:25 +10:00
8253697a63 [FIX] ChibiOS: USB Digitizer and Joystick IN endpoint compilation (#23854)
Co-authored-by: Ryan <fauxpark@gmail.com>
2024-06-03 22:35:46 +10:00
282253a7e0 [docs] Add ability to redirect based on input path. (#23851) 2024-06-03 08:55:03 +10:00
41dbb4c86c Fix Vitamins Included Keymap Formatting (#23803) 2024-06-01 20:19:23 -07:00
78a0adfbb4 [docs] Organize driver & feature docs into subfolders (#23848)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2024-06-02 12:42:24 +10:00
fa6d23235b [docs] Remove gitbook directory (#23839) 2024-06-01 10:37:40 +10:00
119e54e9e3 Docs theme updates (#23832) 2024-05-31 10:34:30 +10:00
32af90ae84 [docs] Fix old anchor IDs (#23831) 2024-05-30 19:26:32 +10:00
8a394503c7 [docs] Update "Get Started" blocks (#23830)
Update "Get Started" blocks
2024-05-30 19:10:00 +10:00
8b84fa6b50 [docs] Better logo SVG (#23828) 2024-05-30 19:09:07 +10:00
b39285807e [docs] Fix code blocks overflowing page width (#23829)
Fix code blocks overflowing page width
2024-05-30 10:00:28 +01:00
753 changed files with 18909 additions and 3862 deletions

82
.github/labeler.yml vendored
View File

@ -1,46 +1,56 @@
core:
- quantum/**/*
- tmk_core/**/*
- drivers/**/*
- tests/**/*
- util/**/*
- platforms/**/*
- builddefs/**/*
- Makefile
- '*.mk'
- changed-files:
- any-glob-to-any-file:
- quantum/**
- tmk_core/**
- drivers/**
- tests/**
- util/**
- platforms/**
- builddefs/*.mk
- Makefile
- '*.mk'
dependencies:
- any:
- 'lib/**/*'
- '!lib/python/**/*'
- all:
- changed-files:
- any-glob-to-any-file: lib/**
- all-globs-to-all-files: '!lib/python/**'
keyboard:
- any:
- 'keyboards/**/*'
- '!keyboards/**/keymaps/**/*'
- all:
- changed-files:
- any-glob-to-any-file: keyboards/**
- all-globs-to-all-files: '!keyboards/**/keymaps/**'
keymap:
- users/**/*
- layouts/**/*
- keyboards/**/keymaps/**/*
- changed-files:
- any-glob-to-any-file:
- users/**
- layouts/**
- keyboards/**/keymaps/**
via:
- keyboards/**/keymaps/via/*
- changed-files:
- any-glob-to-any-file:
- keyboards/**/keymaps/via/*
cli:
- requirements.txt
- lib/python/**/*
- changed-files:
- any-glob-to-any-file:
- requirements.txt
- lib/python/**
python:
- '**/*.py'
- changed-files:
- any-glob-to-any-file:
- '**/*.py'
documentation:
- docs/**/*
translation:
- docs/fr-fr/**/*
- docs/es/**/*
- docs/ja/**/*
- docs/he-il/**/*
- docs/pt-br/**/*
- docs/zh-cn/**/*
- docs/de/**/*
- docs/ru-ru/**/*
- changed-files:
- any-glob-to-any-file:
- docs/**
- builddefs/docsgen/**
CI:
- .github/**/*
- changed-files:
- any-glob-to-any-file:
- .github/**
dd:
- data/constants/**/*
- data/mappings/**/*
- data/schemas/**/*
- changed-files:
- any-glob-to-any-file:
- data/constants/**
- data/mappings/**
- data/schemas/**

View File

@ -13,8 +13,8 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: mheap/automatic-approve-action@v1
- uses: zvecr/automatic-approve-action@safe_files
with:
token: ${{ secrets.QMK_BOT_TOKEN }}
workflows: "format.yml,lint.yml,unit_test.yml"
dangerous_files: "lib/python/,Makefile,paths.mk,builddefs/"
workflows: "labeler.yml,lint.yml,docs.yml"
safe_files: "keyboards/,docs/"

View File

@ -52,9 +52,9 @@ jobs:
run: |
target_count=$( {
qmk find -km default 2>/dev/null
qmk find -km via 2>/dev/null
# qmk find -km xap 2>/dev/null
} | sort | uniq | wc -l)
slice_length=$((target_count / ($CONCURRENT_JOBS - 1))) # Err on the side of caution as we're splitting default and via
slice_length=$((target_count / ($CONCURRENT_JOBS - 1))) # Err on the side of caution
echo "slice_length=$slice_length" >> $GITHUB_OUTPUT
build_targets:
@ -63,7 +63,8 @@ jobs:
strategy:
fail-fast: false
matrix:
keymap: [default, via]
keymap: [default]
# keymap: [default, xap]
uses: ./.github/workflows/ci_build_major_branch_keymap.yml
with:
branch: ${{ inputs.branch || github.ref_name }}
@ -77,44 +78,59 @@ 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
with:
fetch-depth: 0
- 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
./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
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 }}
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 '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 }}
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'

View File

@ -172,10 +172,10 @@ jobs:
targets-${{ inputs.keymap }}
- name: 'CI Discord Notification'
if: always()
if: always() && !cancelled()
working-directory: util/ci/
env:
DISCORD_WEBHOOK: ${{ secrets.CI_DISCORD_WEBHOOK }}
run: |
python3 -m pip install -r requirements.txt
python3 ./discord-results.py --branch ${{ inputs.branch || github.ref_name }} --keymap ${{ inputs.keymap }} --url ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
python3 ./discord-results.py --branch ${{ inputs.branch || github.ref_name }} --sha $(git rev-parse HEAD) --keymap ${{ inputs.keymap }} --url ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}

View File

@ -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,40 +47,19 @@ 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'
uses: JamesIves/github-pages-deploy-action@v4.6.1
if: ${{ github.event_name == 'push' && github.repository == 'qmk/qmk_firmware' }}
uses: JamesIves/github-pages-deploy-action@v4.6.3
with:
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

View File

@ -1,18 +1,13 @@
name: "Pull Request Labeler"
permissions:
contents: read
pull-requests: write
on:
pull_request_target:
types: [opened, synchronize, reopened, ready_for_review, locked]
- pull_request_target
jobs:
triage:
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v4
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
configuration-path: '.github/labeler.yml'
- uses: actions/labeler@v5

2
.gitignore vendored
View File

@ -25,6 +25,8 @@
*.la
*.stackdump
*.sym
index.html
firmware_list.json
# QMK-specific
api_data/v1

View File

@ -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"

View File

@ -34,10 +34,13 @@ ifeq ($(strip $(DUMP_CI_METADATA)),yes)
endif
# Force expansion
TARGET := $(TARGET)
override TARGET := $(TARGET)
ifneq ($(FORCE_LAYOUT),)
TARGET := $(TARGET)_$(FORCE_LAYOUT)
override TARGET := $(TARGET)_$(FORCE_LAYOUT)
endif
ifneq ($(CONVERT_TO),)
override TARGET := $(TARGET)_$(CONVERT_TO)
endif
# Object files and generated keymap directory
@ -58,9 +61,6 @@ ifdef SKIP_GIT
VERSION_H_FLAGS += --skip-git
endif
# Generate the board's version.h file.
$(shell $(QMK_BIN) generate-version-h $(VERSION_H_FLAGS) -q -o $(INTERMEDIATE_OUTPUT)/src/version.h)
# Determine which subfolders exist.
KEYBOARD_FOLDER_PATH_1 := $(KEYBOARD)
KEYBOARD_FOLDER_PATH_2 := $(patsubst %/,%,$(dir $(KEYBOARD_FOLDER_PATH_1)))
@ -218,6 +218,9 @@ endif
include $(BUILDDEFS_PATH)/converters.mk
# Generate the board's version.h file.
$(shell $(QMK_BIN) generate-version-h $(VERSION_H_FLAGS) -q -o $(INTERMEDIATE_OUTPUT)/src/version.h)
MCU_ORIG := $(MCU)
include $(wildcard $(PLATFORM_PATH)/*/mcu_selection.mk)

View File

@ -32,9 +32,6 @@ ifneq ($(CONVERT_TO),)
PLATFORM_KEY = $(shell echo $(CONVERTER) | cut -d "/" -f2)
# force setting as value can be from environment
override TARGET := $(TARGET)_$(CONVERT_TO)
# Configure any defaults
OPT_DEFS += -DCONVERT_TO_$(shell echo $(CONVERT_TO) | tr '[:lower:]' '[:upper:]')
OPT_DEFS += -DCONVERTER_TARGET=\"$(CONVERT_TO)\"

View File

@ -28,12 +28,12 @@ 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: "./" }],
nav: [{ text: "Home", link: "/" }],
search: {
provider: "local",

View File

@ -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);
}

View File

@ -1,19 +1,19 @@
/* Override <kbd> 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: 100%;
--vp-nav-logo-height: 32px;
--vp-layout-max-width: calc(98% + 64px);
--vp-sidebar-width: 300px;
}
.logo {
padding-bottom: 0.2em;
}
.VPNavBarTitle.has-sidebar .title {
border-bottom: 0;
.VPDoc.has-aside .content-container {
max-width: unset !important;
}

View File

@ -16,12 +16,6 @@
"type": "object",
"additionalProperties": {"type": "boolean"}
},
"build_target": {
"oneOf": [
{"$ref": "#/keyboard_keymap_tuple"},
{"$ref": "#/json_file_path"}
]
},
"filename": {
"type": "string",
"minLength": 1,
@ -40,7 +34,8 @@
"pattern": "^[0-9a-z_/\\-]+\\.json$"
},
"key_unit": {
"type": "number"
"type": "number",
"minimum": 0
},
"keyboard": {
"type": "string",
@ -52,6 +47,19 @@
{"$ref": "#/keyboard"},
{"$ref": "#/filename"}
],
"minItems": 2,
"maxItems": 2,
"unevaluatedItems": false
},
"keyboard_keymap_env": {
"type": "array",
"prefixItems": [
{"$ref": "#/keyboard"},
{"$ref": "#/filename"},
{"$ref": "#/kvp_object"}
],
"minItems": 3,
"maxItems": 3,
"unevaluatedItems": false
},
"keycode": {
@ -86,6 +94,10 @@
"maxLength": 7,
"pattern": "^[A-Z][A-Zs_0-9]*$"
},
"kvp_object": {
"type": "object",
"additionalProperties": {"type": "string"}
},
"layout_macro": {
"oneOf": [
{

View File

@ -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"}
}
}

View File

@ -3,6 +3,14 @@
"$id": "qmk.user_repo.v1",
"title": "User Repository Information",
"type": "object",
"definitions": {
"build_target": {
"oneOf": [
{"$ref": "qmk.definitions.v1#/keyboard_keymap_tuple"},
{"$ref": "qmk.definitions.v1#/json_file_path"}
]
},
},
"required": [
"userspace_version",
"build_targets"
@ -15,7 +23,7 @@
"build_targets": {
"type": "array",
"items": {
"$ref": "qmk.definitions.v1#/build_target"
"$ref": "#/definitions/build_target"
}
}
}

View File

@ -0,0 +1,31 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema#",
"$id": "qmk.user_repo.v1_1",
"title": "User Repository Information",
"type": "object",
"definitions": {
"build_target": {
"oneOf": [
{"$ref": "qmk.definitions.v1#/keyboard_keymap_tuple"},
{"$ref": "qmk.definitions.v1#/keyboard_keymap_env"},
{"$ref": "qmk.definitions.v1#/json_file_path"}
]
},
},
"required": [
"userspace_version",
"build_targets"
],
"properties": {
"userspace_version": {
"type": "string",
"enum": ["1.1"]
},
"build_targets": {
"type": "array",
"items": {
"$ref": "#/definitions/build_target"
}
}
}
}

View File

@ -2,8 +2,6 @@
"keyboard_name": "%KEYBOARD%",
"maintainer": "%USER_NAME%",
"manufacturer": "%REAL_NAME%",
"processor": "%MCU%",
"bootloader": "%BOOTLOADER%",
"diode_direction": "COL2ROW",
"matrix_pins": {
"cols": ["C2"],

View File

@ -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 <kbd>Shift+2</kbd> normally results in an <kbd>@</kbd> on US-ANSI keyboard layouts -- the new key overrides allow for adding similar functionality, but for any <kbd>modifier + key</kbd> 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 <kbd>Shift+2</kbd> normally results in an <kbd>@</kbd> on US-ANSI keyboard layouts -- the new key overrides allow for adding similar functionality, but for any <kbd>modifier + key</kbd> press.
To illustrate, it's now possible to use the key overrides feature to translate <kbd>Shift + Backspace</kbd> into <kbd>Delete</kbd> -- 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))

View File

@ -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}

View File

@ -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}

View File

@ -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.

View File

@ -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}

View File

@ -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}

View File

@ -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}

View File

@ -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}

View File

@ -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}

View File

@ -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)

View File

@ -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:

View File

@ -41,7 +41,7 @@ Unrelated to styling, high-level tech.
![QMK Light](./public/badge-community-light.svg)
![QMK Dark](./public/badge-community-dark.svg)
<img src="./gitbook/images/color-wheel.svg" alt="HSV Color Wheel" width="250"/>
<img src="./public/color-wheel.svg" alt="HSV Color Wheel" width="250"/>
### Lists
@ -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:

Some files were not shown because too many files have changed in this diff Show More