Commit graph

279 commits

Author SHA1 Message Date
Pascal Getreuer
f5eb9a8e92
Add Repeat Key and Alt Repeat Key to vial-qmk. (#906)
* Repeat Key for vial-qmk.

* Add new keycodes to vial_ensure_keycode.h.
2025-06-29 15:32:04 -06:00
Pascal Getreuer
000d5fd8d3
Fix where -DCAPS_WORD_INVERT_ON_SHIFT is added. (#905) 2025-06-29 00:54:21 -06:00
Pascal Getreuer
15a3bb1ab9
PDF(layer), Caps Word, and Layer Lock for vial-qmk. (#902)
* Caps Word and Layer Lock for vial-qmk.

* Enable Caps Word and Layer Lock. Set CAPS_WORD_INVERT_ON_SHIFT.
* Use the last bits of dynamic_vial_get_number_of_entries to indicate
  optionally supported features.
* Vial protocol version was already bumped to 6, matching the bump on
  made on the GUI side corresponding to this change.

* Add new keycodes to vial_ensure_keycode.h.
2025-06-28 15:52:16 -06:00
Ilya Zhuravlev
c94a57d613 qmk_settings: add flow tap 2025-06-21 19:46:37 -06:00
Ilya Zhuravlev
3af5b0b0f7 qmk_settings: add chordal hold 2025-06-21 19:35:33 -06:00
Ilya Zhuravlev
7b247bc800 Merge remote-tracking branch 'qmk/master' into merge-2025-06-21 2025-06-21 16:00:42 -06:00
dependabot[bot]
c8a39b69a0
Bump vite from 5.4.18 to 5.4.19 in /builddefs/docsgen (#25306)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.18 to 5.4.19.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.19/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.19/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 5.4.19
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-27 18:07:22 +01:00
Stefan Kerkmann
f3b974f216
[Fix] lib8tion: enable fixed scale8 and blend functions (#25272)
lib8tion: enable fixed scale8 and blend functions

These FastLED derived lib8tion functions have been fixed and enabled by
default in FastLED. QMK just never set these defines, there is no reason
to keep the buggy implementation. It is assumed that nobody relied on
the buggy behavior.
2025-05-22 22:52:45 +01:00
Stefan Kerkmann
f686ad9e63
[Core] STM32G0x1 support (#24301) 2025-05-19 15:51:28 +10:00
Nick Brassel
a4ef1ae736
gcc15 AVR compilation fixes (#25238) 2025-05-19 09:22:31 +10:00
Pascal Getreuer
f4171412a6
Enable community modules to define LED matrix and RGB matrix effects. (#25187)
Co-authored-by: Joel Challis <git@zvecr.com>
2025-05-12 09:30:19 +10:00
Joel Challis
3e7ce54902
Fix Wear Leveling compilation (#25254) 2025-05-12 08:39:38 +10:00
Joel Challis
88c094908b
Add raw_hid support to host driver (#25255) 2025-05-12 08:38:48 +10:00
Joel Challis
842c840145
Bind Bluetooth driver to host_driver_t (#25199) 2025-05-05 04:05:04 +01:00
Nick Brassel
bb9dd05c6a
[Bug] Minimise force-included files (#25194) 2025-05-05 10:07:53 +10:00
QMK Bot
acedfc3fcb Merge remote-tracking branch 'origin/master' into develop 2025-04-23 02:26:26 +00:00
dependabot[bot]
e5466df800
Bump vite from 5.4.15 to 5.4.18 in /builddefs/docsgen (#25192)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-23 12:25:47 +10:00
Joel Challis
8cd71917ce
Avoid duplication in generated community modules rules.mk (#25135) 2025-04-23 10:27:47 +10:00
Joel Challis
c7cb7ba976
Implement connection keycode logic (#25176) 2025-04-21 22:27:56 +01:00
Joel Challis
ce8b8414d9
Remove bluefruit_le_read_battery_voltage function (#25129) 2025-04-19 22:52:25 +01:00
Nick Brassel
5c39722ab9
Allow for disabling EEPROM subsystem entirely. (#25173) 2025-04-19 20:20:00 +01:00
Joel Challis
06610c3da6
Remove CTPC/CONVERT_TO_PROTON_C options (#25111) 2025-04-08 01:55:49 +01:00
QMK Bot
b9e4d22765 Merge remote-tracking branch 'origin/master' into develop 2025-03-28 08:56:42 +00:00
dependabot[bot]
6f3b494a4d
Bump vite from 5.4.12 to 5.4.15 in /builddefs/docsgen (#25065)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.12 to 5.4.15.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.15/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.15/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-28 08:56:08 +00:00
Ilya Zhuravlev
6aedbad57c Merge remote-tracking branch 'qmk/master' into merge-2025-03-22 2025-03-22 23:00:09 -06:00
Nick Brassel
2b00b846dc
Non-volatile memory data repository pattern (#24356)
* First batch of eeconfig conversions.

* Offset and length for datablocks.

* `via`, `dynamic_keymap`.

* Fix filename.

* Commentary.

* wilba leds

* satisfaction75

* satisfaction75

* more keyboard whack-a-mole

* satisfaction75

* omnikeyish

* more whack-a-mole

* `generic_features.mk` to automatically pick up nvm repositories

* thievery

* deferred variable resolve

* whitespace

* convert api to structs/unions

* convert api to structs/unions

* convert api to structs/unions

* fixups

* code-side docs

* code size fix

* rollback

* nvm_xxxxx_erase

* Updated location of eeconfig magic numbers so non-EEPROM nvm drivers can use them too.

* Fixup build.

* Fixup compilation error with encoders.

* Build fixes.

* Add `via_ci` keymap to onekey to exercise VIA bindings (and thus dynamic keymap et.al.), fixup compilation errors based on preprocessor+sizeof.

* Build failure rectification.
2025-03-21 23:38:34 +11:00
Stefan Kerkmann
c9d62ddc78
[Core] use keycode_string in unit tests (#25042)
* tests: use keycode_string feature

With a proper keycode to string implementation in qmk there is no need
to use the unit tests only implementation anymore.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

* tests: remove keycode_util feature

This feature is no longer used as we switched the tests to the
keycode string implementation.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
2025-03-21 08:47:22 +01:00
Pascal Getreuer
3484f0a0df
[Core] get_keycode_string(): function to format keycodes as strings, for more readable debug logging. (#24787)
* keycode_string(): Format keycodes as strings.

This adds the `keycode_string()` function described in
https://getreuer.info/posts/keyboards/keycode-string/index.html
as a core feature.

* Fix formatting.

* keycode_string review revisions.

* Rename keycode_string() -> get_keycode_string() for consistency with
  existing string utils like get_u8_str().

* Revise custom keycode names with separate _user and _kb tables.

* Correct indent in builddefs/generic_features.mk.

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

* Add KC_NUHS, KC_NUBS, and KC_CAPS.

* Fix linking error with custom names.

* Attempt at simplifying interface.

* Formatting fix.

* Several fixes and revisions.

* Don't use PSTR in KEYCODE_STRING_NAME, since this fails to build on
  AVR. Store custom names in RAM.
* Revise the internal table of common keycode names to use its own
  storage representation, still in PROGMEM, and now more efficiently
  stored flat in 8 bytes per entry.
* Support Swap Hands keycodes and a few other keycodes.

* Revert "Formatting fix."

This reverts commit 2a2771068c7ee545ffac4103aa07e847a9ec3816.

* Revert "Attempt at simplifying interface."

This reverts commit 8eaf67de76e75bc92d106a8b0decc893fbc65fa5.

* Simplify custom names API by sigprof's suggestion.

* Support more keycodes.

* Add QK_LOCK keycode.
* Add Secure keycodes.
* Add Joystick keycodes.
* Add Programmable Button keycodes.
* Add macro MC_ keycodes.
* For remaining keys in known code ranges, stringify them as
  "QK_<feature>+<number>". For instance, "QK_MIDI+7".

* Bug fix and a few improvements.

* Fix missing right-hand bit when displaying 5-bit mods numerically.
* Support KC_HYPR, KC_MEH, HYPR_T(kc), MEH_T(kc).
* Exclude one-shot keycodes when NO_ACTION_ONESHOT is defined.

---------

Co-authored-by: Ryan <fauxpark@gmail.com>
2025-03-19 20:45:56 +01:00
Pablo Martínez
e62352e606
[Cleanup] Handling of optional *.mk files (#24952)
replace check + `include` with `-include`
2025-02-28 17:39:43 +00:00
Joel Challis
6ee806f376
Implement battery level interface (#24666)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2025-02-28 16:46:14 +11:00
Nick Brassel
1efc82403b
Community modules (#24848) 2025-02-26 22:25:41 +11:00
Ilya Zhuravlev
760225f515 Merge remote-tracking branch 'qmk/master' into merge-2025-02-08 2025-02-08 20:14:59 -06:00
QMK Bot
db68fd88bd Merge remote-tracking branch 'origin/master' into develop 2025-01-29 19:21:51 +00:00
dependabot[bot]
ea3a968510
Bump vite from 5.2.14 to 5.4.12 in /builddefs/docsgen (#24852) 2025-01-30 06:20:08 +11:00
Jaeseok Lee
d290a9755b
fix tapping force hold to use quick tap term internally (#839) 2025-01-25 16:23:56 -06:00
Ryan
a6e931400e
Relocate base WS2812 code (#24850) 2025-01-25 17:38:12 +11:00
Nick Brassel
a6a0dc8039
Consolidate send_string implementations. (#24817) 2025-01-21 08:24:39 +11:00
dependabot[bot]
35c6520560
Bump nanoid from 3.3.7 to 3.3.8 in /builddefs/docsgen (#24713)
Bumps [nanoid](https://github.com/ai/nanoid) from 3.3.7 to 3.3.8.
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ai/nanoid/compare/3.3.7...3.3.8)

---
updated-dependencies:
- dependency-name: nanoid
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-10 20:59:33 +00:00
Joel Challis
a822545da0
Set custom effect defines for LED Matrix (#24745) 2024-12-24 10:26:08 -08:00
Joel Challis
5eb53be671
Avoid loading keymap rules.mk twice (#24665) 2024-12-02 06:24:44 +11:00
Nick Brassel
7d8f193988
Allow codegen of keymap.json => keymap.c without requiring layers/layout etc. (#23451) 2024-11-24 20:32:30 +11:00
Dasky
1f7d10902a
Add pointing tests (#24513) 2024-11-23 16:34:32 +00:00
Joel Challis
4a5bae51cd
[Feature] Add keycode PDF(layer) to set the default layer in EEPROM (#24630)
* [Feature] Add keycode PDF(layer) to set the default layer in EEPROM (#21881)

* Apply suggestions from code review

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

---------

Co-authored-by: Nebuleon <2391500+Nebuleon@users.noreply.github.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2024-11-23 10:09:34 +00:00
Drashna Jaelre
36b5559b99
[Core] Add Layer Lock feature (#23430)
Co-authored-by: Daniel <1767914+iamdanielv@users.noreply.github.com>
Co-authored-by: Pascal Getreuer <getreuer@google.com>
Co-authored-by: Pascal Getreuer <50221757+getreuer@users.noreply.github.com>
2024-11-21 17:31:54 +11:00
HorrorTroll
39161b9ee7
Added MCU support for ArteryTek AT32F415 (#23445) 2024-11-21 17:28:28 +11:00
Ryan
9c86583981
Backward compatibility for new RGB keycode handling (#24490)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2024-11-20 09:53:33 +11:00
QMK Bot
4e77ab66e2 Merge remote-tracking branch 'origin/master' into develop 2024-11-12 02:21:49 +00:00
Ryan
3d4da6de29
[docs] Add "edit this page" link at the bottom (#24585) 2024-11-12 02:20:56 +00:00
QMK Bot
69093f6de9 Merge remote-tracking branch 'origin/master' into develop 2024-11-09 19:04:48 +00:00
Ryan
3eb172d08e
[docs] Turn on icons for external links (#24580) 2024-11-09 12:04:14 -07:00