Commit graph

741 commits

Author SHA1 Message Date
Ryan
102c42b14b
qmk find: usability improvements (#20440) 2023-05-20 22:14:43 +10:00
Peter
7b31c18d46
Fix English word list retrieval in qmk generate-autocorrect-data (#20915) 2023-05-20 22:11:57 +10:00
Ryan
dc75c23f5c
CLI: Improve keymap folder resolution (#20981) 2023-05-19 16:05:43 +10:00
Nick Brassel
433dc60686
Merge remote-tracking branch 'upstream/master' into develop 2023-05-15 22:10:42 +10:00
Nick Brassel
507e32b28c
Generate make dependency file during build for info.json's etc. (#20451) 2023-05-15 21:58:12 +10:00
Ryan
578102b400
Fix test_json2c_no_json() (#20756) 2023-05-06 14:00:27 +01:00
Ryan
998a4d744e
Remove FLIP_HALF layouts and move to data driven (#20588) 2023-04-30 01:51:45 +10:00
Nick Brassel
d054112de1
Update ChibiOS to latest stable 21.11.x (#20470) 2023-04-19 16:05:06 +10:00
Nick Brassel
c9f619124d
Encodermap direction define. (#20454) 2023-04-15 16:18:44 +01:00
QMK Bot
6c172772db Merge remote-tracking branch 'origin/master' into develop 2023-04-09 16:42:12 +00:00
Dasky
6e0acf0548
Add autocomplete to generate-compilation-database (#20387) 2023-04-09 17:41:30 +01:00
QMK Bot
4aa2cd45a1 Merge remote-tracking branch 'origin/master' into develop 2023-04-07 13:08:43 +00:00
Joel Challis
e9b36bebb2
Avoid generating empty ENCODER_RESOLUTION (#20179) 2023-04-07 14:07:59 +01:00
QMK Bot
5bc514036b Merge remote-tracking branch 'origin/master' into develop 2023-04-07 06:37:46 +00:00
Nick Brassel
2e766a9c7a
Add Discord webhook at end of each CI run. (#20355) 2023-04-07 16:37:06 +10:00
QMK Bot
0e7acb777a Merge remote-tracking branch 'origin/master' into develop 2023-04-04 05:10:36 +00:00
Nick Brassel
687883cf7d
Resolve keyboard names for qmk mass-compile. (#20335) 2023-04-04 15:09:55 +10:00
Ryan
81f321d331
qmk info: account for ISO enter when calculating layout X offset (#20325) 2023-04-04 01:15:35 +01:00
Albert Y
47a51fda5d
Append user variables to the end of make command (#20177) 2023-04-03 15:20:39 +10:00
QMK Bot
8686c527f7 Merge remote-tracking branch 'origin/master' into develop 2023-03-30 21:41:53 +00:00
Nick Brassel
c3c401f91d
[QP] Fix up delta frame boundaries (#20296) 2023-03-31 08:41:11 +11:00
QMK Bot
66f19518b4 Merge remote-tracking branch 'origin/master' into develop 2023-03-29 12:01:55 +00:00
Joel Challis
f56580404d
Minify content published to API (#20285) 2023-03-29 13:01:16 +01:00
QMK Bot
2026165d8c Merge remote-tracking branch 'origin/master' into develop 2023-03-29 10:26:46 +00:00
Nick Brassel
5bb8f7ae84
Add ability for qmk mass-compile to build specified targets (#20294) 2023-03-29 21:26:05 +11:00
Joel Challis
f186abdf29
Reduce _validate complexity (#20274) 2023-03-28 02:53:28 +01:00
Joel Challis
79b0f9168e
Custom keycodes in JSON (#19925) 2023-03-27 20:01:07 +01:00
Joel Challis
e35bb8ebfa
Add force support to 'qmk git-submodule' (#19705) 2023-03-27 19:15:25 +01:00
QMK Bot
2ae5a4a535 Merge remote-tracking branch 'origin/master' into develop 2023-03-24 02:47:22 +00:00
Ryan
d6ce42ae5b
Check for multiple matrix positions assigned to same key (#20039) 2023-03-24 13:46:42 +11:00
Joel Challis
fa4dfb542f
Strip API specific output from qmk info (#20234) 2023-03-23 11:19:30 +00:00
Albert Y
0e1e543836
Increase verbosity of make command (#20172) 2023-03-21 01:25:08 -07:00
QMK Bot
79ae14ae0a Merge remote-tracking branch 'origin/master' into develop 2023-03-16 20:36:32 +00:00
Nick Brassel
1b3f7fcf7d
Add qmk find command, reuse logic for qmk mass-compile. (#20139) 2023-03-16 20:35:49 +00:00
QMK Bot
291834b162 Merge remote-tracking branch 'origin/master' into develop 2023-03-14 21:31:50 +00:00
Nick Brassel
e62fc866db
Let's use workflows to parallelise the builds. (#20120)
* Let's use workflows to parallelise the builds.

* Nofail if files aren't present.

* Formatting.
2023-03-15 08:31:10 +11:00
Ryan
91e0457b0e
JSON encoder: improve sorting of layout dict keys (#19974) 2023-03-13 23:20:54 +11:00
QMK Bot
57112d700a Merge remote-tracking branch 'origin/master' into develop 2023-03-09 22:39:30 +00:00
Ryan
76fb534269
qmk info: add warning when layout is offset (#20070) 2023-03-09 20:27:04 +00:00
Joel Challis
c3c40dfda8
Remove some use of keymap.h (#19980) 2023-03-03 11:26:53 +00:00
QMK Bot
0a7f15964c Merge remote-tracking branch 'origin/master' into develop 2023-03-01 23:57:53 +00:00
Ryan
6fabc330e3
Check all keys have matrix positions when parsing C LAYOUT macros (#19781) 2023-03-02 10:56:45 +11:00
Ryan
9b09e7c6d7
Check all rows have the correct number of columns when parsing g_led_config (#19954) 2023-03-01 01:51:18 +00:00
Joel Challis
9f2cd9119f
Reallocate user/kb keycode ranges (#19907) 2023-02-23 09:50:09 +11:00
Nick Brassel
1283863c0e
Add mass-compile ability to filter by key existence. (#19885) 2023-02-18 18:04:50 -08:00
Stefan Kerkmann
e922b46a86
Update pico-sdk to 1.5.0 (#19829) 2023-02-13 15:51:51 +01:00
Joel Challis
6ceff1367d
Tidy up use of keycode range helpers (#19813) 2023-02-12 17:09:34 +00:00
Joel Challis
90f3d6201a
Reduce false positives in layout name validation (#19646) 2023-02-11 20:36:11 +00:00
Nick Brassel
9991894514
Generate encodermap output from keymap.json. (#18915)
Co-authored-by: Joel Challis <git@zvecr.com>
2023-02-11 13:45:51 +11:00
Jouke Witteveen
3137883956
Typographic updates to source generation (#19160) 2023-02-10 22:39:13 +00:00
Joel Challis
1d0b4c8d38
Tidy up use of keycode range helpers (#19756) 2023-02-10 21:10:14 +00:00
Pablo Martínez
d55b07696b
Add commit info to version.h (#19542)
* Initial commit

* Fix import order

* Fix deleted code instead of debug print line

* Format

* Update lib/python/qmk/cli/generate/version_h.py

Co-authored-by: Ryan <fauxpark@gmail.com>

* Renaming

* Update lib/python/qmk/cli/generate/version_h.py

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

* Update lib/python/qmk/git.py

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

---------

Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
2023-02-02 18:23:27 +00:00
fauxpark
ef6505ad75 Merge remote-tracking branch 'upstream/master' into develop 2023-01-30 18:55:36 +11:00
Ryan
2c878b1b16
Clean up qmk generate-autocorrect-data (#19710) 2023-01-30 03:37:02 +00:00
QMK Bot
d14863c00b Merge remote-tracking branch 'origin/master' into develop 2023-01-24 14:20:10 +00:00
Natan-P
b24fa2f9db
escaped stray backslash in bux.py (#19667) 2023-01-24 14:19:34 +00:00
Joel Challis
fe6502f12e
Publish keymap.json to API (#19167) 2023-01-20 03:38:19 +00:00
Joel Challis
4973950ddc
Print distro in doctor output (#19633) 2023-01-19 10:25:47 +00:00
QMK Bot
3723c0e3d5 Merge remote-tracking branch 'origin/master' into develop 2023-01-19 01:06:08 +00:00
Nick Brassel
327f7ee9a7
Fixup ChibiOS header inclusion search ordering. (#19623)
* Add STM32F446-Nucleo onekey. 

* Fixup onekey build for F446, all keymaps.

* Fixup board inclusion search ordering.
2023-01-19 01:05:29 +00:00
Joel Challis
0b25528b6b
Fix 'No LAYOUTs defined' check (#19537) 2023-01-19 00:27:11 +00:00
Joel Challis
0ce3f6bcfe
De-duplicate platform detection (#19603) 2023-01-19 00:27:00 +00:00
Joel Challis
a1f253cbef
qmk compile/qmk flash - Validate keymap argument (#19530) 2023-01-19 00:24:13 +00:00
Nick Brassel
4723f308ad
Remove CLI commands: multibuild, cformat, fileformat, pyformat. (#19629) 2023-01-19 10:56:15 +11:00
Joel Challis
88ec588ae7
Remove make all-<platform> build targets (#19496) 2023-01-19 10:44:41 +11:00
QMK Bot
364a910b92 Merge remote-tracking branch 'origin/master' into develop 2023-01-18 22:37:06 +00:00
Nick Brassel
17c9388af5
Allow for wildcard filtering in qmk mass-compile (#19625) 2023-01-18 22:36:32 +00:00
David Hoelscher
45851a10f6
Add RGB565 and RGB888 color support to Quantum Painter (#19382) 2023-01-14 21:24:54 +11:00
Stefan Kerkmann
ec09087543
Update ChibiOS[-Contrib], SIO driver, configs (#17915)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-01-12 21:47:36 +11:00
Joel Challis
46c85c93f0
Revert "De-duplicate platform detection (#19545)" (#19564)
This reverts commit e11235ee14.
2023-01-11 19:58:27 +00:00
Joel Challis
e11235ee14
De-duplicate platform detection (#19545) 2023-01-11 02:13:32 +00:00
Joel Challis
20474ae232
Fix CLI community detection (#19562) 2023-01-11 12:38:35 +11:00
Joel Challis
b57714f793
qmk doctor - Handle timeouts while checking binaries (#19549) 2023-01-09 09:27:41 +00:00
Joel Challis
1b045b1e60
Handle doctor permission issues while checking udev (#19548) 2023-01-09 08:21:21 +00:00
Joel Challis
974a1eaf2a
Ignore defaults.hjson values if already set (#19511)
* Ignore defaults.hjson values if already set

* Add warning when nothing is merged
2023-01-07 17:05:53 +00:00
Joel Challis
5c730d971e
Migrate submodule dirty check to CLI (#19488) 2023-01-06 04:16:52 +00:00
QMK Bot
b2384f1809 Merge remote-tracking branch 'origin/master' into develop 2023-01-05 23:41:28 +00:00
Sergey Vlasov
4a7d65b9d7
Fix MATRIX_COLS and MATRIX_ROWS generation for custom matrix (#19508)
The code which generated the MATRIX_COLS and MATRIX_ROWS defines from
the JSON information was checking the presence of the `matrix_pins` key,
which may not exist if a custom matrix is used.  Check the presence of
`matrix_size` instead.
2023-01-05 23:40:53 +00:00
zvecr
115c241f21 Merge remote-tracking branch 'origin/master' into develop 2023-01-04 04:17:58 +00:00
Nick Brassel
691668340c
Add qmk mass-compile, which intends to supercede qmk multibuild whilst providing support for filtering as per data-driven definitions. (#18971) 2023-01-04 04:10:18 +00:00
Joel Challis
c345278101
Replace list_keyboards.sh with CLI calls (#19485) 2023-01-03 14:15:29 +11:00
Joel Challis
b297531dbf
Migrate 'make git-submodule' to CLI command (#19479) 2023-01-03 09:11:57 +11:00
Joel Challis
3a5a4c708f
Report submodule status when not valid work-tree (#19474) 2023-01-03 09:00:29 +11:00
Joel Challis
24adecd922
Implement XAP style merge semantics for DD keycodes (#19397) 2023-01-01 19:16:38 +00:00
Joel Challis
e4cfbd2532
Allow CLI to flash .uf2 files (#19462) 2023-01-01 15:51:29 +11:00
QMK Bot
422fd8aed8 Merge remote-tracking branch 'origin/master' into develop 2023-01-01 00:44:40 +00:00
Joel Challis
b8e12eed80
WSL qmk flash firmware.bin workaround (#19434) 2023-01-01 11:44:33 +11:00
Joel Challis
61696fda83
CLI flashers should allow files outside qmk_firmware folder (#19454) 2023-01-01 11:43:30 +11:00
jack
003cee0098
Validate keyboard name before accepting further input (#19394) 2022-12-23 18:18:57 +00:00
QMK Bot
8f506b5bc2 Merge remote-tracking branch 'origin/master' into develop 2022-12-23 11:12:33 +00:00
Joel Challis
ab1898e660
Minor alignment of rgb_breathe_table generator (#19403) 2022-12-23 11:11:56 +00:00
Joel Challis
e5721bbd37
Remaining DD keymap_extras migration (#19110)
* Parse headers to data

* Regen headers from data
2022-12-21 23:35:23 +00:00
Stefan Kerkmann
962e4c0e18
[Test] Reset timer for every unit test and provide timestamps for log messages (#17028) 2022-12-15 02:31:08 +11:00
jpe230
102f22f7e9
[Core] Quantum Painter - LVGL Integration (#18499)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-12-13 07:51:14 +11:00
Stefan Kerkmann
9dc3f79196
[RP2040] update i2c drivers to reflect peripheral number (#19277) 2022-12-11 14:04:29 +01:00
Joel Challis
9bc7e9afbd
Initial uk+us DD keymap_extras migration (#19031) 2022-12-09 00:54:52 +00:00
QMK Bot
5a2ed77a08 Merge remote-tracking branch 'origin/master' into develop 2022-12-08 16:31:37 +00:00
Joel Challis
6e6039995b
Add lint check for keyboard/keymap license header (#19215) 2022-12-09 03:31:02 +11:00
Joel Challis
32dabd5320
Align new-keymap with new-keyboard (#19229) 2022-12-03 12:04:06 +00:00
Joel Challis
82760bcea6
Apply suggested workaround for #18371 (#19226)
Fixes undefined
2022-12-03 11:42:54 +11:00
Joel Challis
3e59bbd731
Automate "Data Driven" migrations (#17820) 2022-11-30 20:08:54 +00:00
Joel Challis
5d516ac2e2
Ignore some layout macro names from lint (#19207) 2022-11-30 06:39:41 +00:00
Joel Challis
17fec52b0f
Extend layout lint checks (#19200)
* Extend layout lint checks

* Apply suggestions from code review

Co-authored-by: Ryan <fauxpark@gmail.com>

* Fix function comment

Co-authored-by: Ryan <fauxpark@gmail.com>
2022-11-30 04:27:48 +00:00
Joel Challis
cb57ec9c02
Revert lib/usbhost changes (#19165) 2022-11-27 02:05:04 +00:00
QMK Bot
2582992381 Merge remote-tracking branch 'origin/master' into develop 2022-11-25 17:32:45 +00:00
Ryan
8f9b49dc5b
Fix build failures for bastardkb/tbk and jels/boaty (#19152) 2022-11-25 17:31:58 +00:00
Joel Challis
af6aa225eb
Additional DD backlight config (#19124)
* Additional dd backlight config

* Update docs
2022-11-23 18:48:22 +00:00
Joel Challis
dfa53900dc
Publish constants metadata to API (#19143)
* Publish metadata

* Ensure content is sorted
2022-11-23 18:01:07 +00:00
Drashna Jaelre
1a3f2130d5
Revert "Add pointing device support to data driven config (#18215)" (#19063) 2022-11-15 17:44:09 +11:00
Drashna Jaelre
d3073ef494
Add pointing device support to data driven config (#18215)
Co-authored-by: Joel Challis <git@zvecr.com>
2022-11-14 03:05:46 +11:00
Joel Challis
dc9162438d
Reject json with duplicate keys? (#18108) 2022-11-09 15:50:43 +00:00
Ryan
d789b4b7d9
Improve LED config parsing error messages (#19007) 2022-11-09 14:02:44 +00:00
Nick Brassel
9daf77b593
Add raw output option for QGF/QFF files. (#18998) 2022-11-08 15:47:07 +00:00
Joel Challis
7666c966d5
Publish hjson files as json (#18996) 2022-11-08 03:03:02 +00:00
Ryan
479d8de622
Format DD mappings and schemas (#18924) 2022-11-08 01:05:08 +00:00
Nick Brassel
4d33f356a6
Macro keycode name refactoring (#18958) 2022-11-05 23:22:11 +11:00
Joel Challis
a69ab05dd6
Initial DD keycode migration (#18643)
* Initial DD keycode migration

* Sort magic keycodes
2022-11-05 10:30:09 +00:00
Joel Challis
345f19a5d7
Add converter support to keymap.json (#18776) 2022-10-20 18:21:17 -07:00
Joel Challis
0b41c13509
[CLI] Ensure consistent clean behaviour (#18781) 2022-10-20 14:35:27 +01:00
Joel Challis
aa8e0a3e7a
Build correctly when out of tree (#18775) 2022-10-19 17:43:25 +01:00
Joel Challis
fc0330a54a
Correctly build keymap.json containing additional config (#18766) 2022-10-19 11:29:44 +01:00
QMK Bot
e93dc66733 Merge remote-tracking branch 'origin/master' into develop 2022-10-12 21:41:29 +00:00
Joel Challis
4dec07741b
Remove unused LED_INDICATORS constant (#18686) 2022-10-12 22:40:53 +01:00
Stefan Kerkmann
976f454df0
[Bug] Update ChibiOS-Contrib for USB IRQ and bus handling fixes (#18574) 2022-10-03 18:57:13 +01:00
Ryan
675d91b813
Generate DD RGBLight/LED/RGB Matrix animation defines (#18459) 2022-09-26 01:04:21 +01:00
Stefan Kerkmann
828a1db035
Update chibios-contrib for RP2040 i2c fixes take 2 (#18455)
...includes missing system locking inside a timeout waiting condition and
updates to the rp2040 linker file.
2022-09-22 20:57:50 +01:00
Ryan
2f48d300f4
Normalise info_config.h define generation (#18439)
* Normalise info_config.h define generation

* format

* Fix tests

* Update lib/python/qmk/cli/generate/config_h.py

Co-authored-by: Nick Brassel <nick@tzarc.org>

Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-09-21 18:31:57 +01:00
Ryan
591701cdf9
Fix incorrect g_led_config generation (#18431) 2022-09-21 02:41:18 +01:00
Stefan Kerkmann
5a563444ac
Update ChibiOS to latest 21.11.2 (#18428)
This includes a hotfix for RP2040 deadlocks due to XIP cache misses in
the ChibiOS virtual timer implementation.
2022-09-20 01:14:43 +01:00
Stefan Kerkmann
613e3f68b5
Update pico-sdk to version 1.4.0 (#18423)
...which contains fixes for GCC warnings.
2022-09-19 19:30:16 +01:00
Joel Challis
20f142a772
Tidy up LAYOUT macro generation (#18262) 2022-09-19 01:35:46 +01:00
Drashna Jaelre
fb29c0ae53
[Core] Add getreuer's Autocorrect feature to core (#15699)
Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>
2022-09-17 17:50:54 +10:00
QMK Bot
cf0494e458 Merge remote-tracking branch 'origin/master' into develop 2022-09-16 08:19:51 +00:00
Nick Brassel
cf88d95613
Add ability to remove temporary files during multibuild. (#18381) 2022-09-16 09:19:10 +01:00
Ryan
bc0756f294
Disconnect usb.device_ver (#18259) 2022-09-16 12:05:25 +10:00
Joshua Diamond
23e12497b2 Merge remote-tracking branch 'origin/master' into develop 2022-09-12 18:57:58 -04:00
Joel Challis
725df1278b
Fix '_RIGHT' matrix pins lint error (#18320) 2022-09-09 21:22:55 +01:00
Ryan
bb6f028833
Move bootloader.mk to platforms (#18228) 2022-08-31 07:17:24 -07:00
QMK Bot
ba7030d216 Merge remote-tracking branch 'origin/master' into develop 2022-08-31 05:20:33 +00:00
Ryan
6f804f76b4
qmk lint: fix TypeError (#18226) 2022-08-31 15:20:00 +10:00
Jeff Epler
9632360caa
Use a macro to compute the size of arrays at compile time (#18044)
* Add ARRAY_SIZE and CEILING utility macros

* Apply a coccinelle patch to use ARRAY_SIZE

* fix up some straggling items

* Fix 'make test:secure'

* Enhance ARRAY_SIZE macro to reject acting on pointers

The previous definition would not produce a diagnostic for
```
int *p;
size_t num_elem = ARRAY_SIZE(p)
```
but the new one will.

* explicitly get definition of ARRAY_SIZE

* Convert to ARRAY_SIZE when const is involved

The following spatch finds additional instances where the array is
const and the division is by the size of the type, not the size of
the first element:
```
@ rule5a using "empty.iso" @
type T;
const T[] E;
@@

- (sizeof(E)/sizeof(T))
+ ARRAY_SIZE(E)

@ rule6a using "empty.iso" @
type T;
const T[] E;
@@

- sizeof(E)/sizeof(T)
+ ARRAY_SIZE(E)
```

* New instances of ARRAY_SIZE added since initial spatch run

* Use `ARRAY_SIZE` in docs (found by grep)

* Manually use ARRAY_SIZE

hs_set is expected to be the same size as uint16_t, though it's made
of two 8-bit integers

* Just like char, sizeof(uint8_t) is guaranteed to be 1

This is at least true on any plausible system where qmk is actually used.

Per my understanding it's universally true, assuming that uint8_t exists:
https://stackoverflow.com/questions/48655310/can-i-assume-that-sizeofuint8-t-1

* Run qmk-format on core C files touched in this branch

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-08-30 10:20:04 +02:00
Ryan
3adaf6a46a
Handle escaping of manufacturer/product strings (#18194) 2022-08-28 19:35:17 +01:00
Ryan
d983251c10
Switch over MANUFACTURER and PRODUCT to string literals (#18183) 2022-08-28 09:59:40 -07:00
Ryan
24720400a8
Update LUFA submodule (#18168) 2022-08-26 12:19:34 +10:00
QMK Bot
129c60946c Merge remote-tracking branch 'origin/master' into develop 2022-08-24 19:26:18 +00:00
Joel Challis
3d8c624698
Update invalid pip install flag (#18146) 2022-08-24 20:25:16 +01:00
Sergey Vlasov
7ee55b1754
Fix PID value for the Keyboardio Atreus 2 bootloader (#18116)
Copy the correct PID from `util/udev/50-qmk.rules`.
2022-08-20 15:59:17 +01:00
Erovia
5e2ffe7d8f
CLI: Teaching the CLI to flash binaries (#16584)
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-08-20 15:39:19 +10:00
Joel Challis
3c745caf61
Remove legacy bootmagic cli parsing (#18099) 2022-08-19 01:56:48 +01:00
Joel Challis
9550cc464c
Fix new-keyboard default for RP2040 bootloader (#18100) 2022-08-19 01:48:33 +01:00