Commit Graph

120 Commits (314f6c1ddba09851b33e4f3b4bd43bdbc55f9628)

Author SHA1 Message Date
Joel Challis 961f0b7b2d
Reallocate SAFE_RANGE (#19909) 2023-02-23 09:49:07 +11:00
Joel Challis 11d49d00e7
Remove matrix_init_quantum/matrix_scan_quantum (#19806) 2023-02-11 03:47:17 +00:00
Ryan 043d8e1140
Remove deprecated Quantum keycodes (#19712) 2023-01-29 16:44:16 +00:00
Ryan 1978007fae
Tap Dance: remove `qk_` prefix (#19313) 2022-12-14 12:40:25 -08:00
precondition 515dd18c28
Remove IGNORE_MOD_TAP_INTERRUPT_PER_KEY in favour of HOLD_ON_OTHER_KEY_PRESS_PER_KEY (#15741) 2022-12-13 22:20:07 +11:00
Albert Y cbabc8dbe6
[Core] Replace Tapping Force Hold feature with Quick Tap Term (#17007)
* Replace Tapping Force Hold feature with Quick Tap Term

* Replace keyboard level TAPPING_FORCE_HOLD with QUICK_TAP_TERM 0

* Deprecate force hold in info_config.json

* Before and after quick tap term unit tests

* Quick tap unit tests iteration

* Keymap config.h correction

* Remove TAPPING_FORCE_HOLD_PER_KEY macros that were missed

* Add two more test cases for quick tap

* Replace TAPPING_FORCE_HOLD with QUICK_TAP_TERM in configs #2

* Replace TAPPING_FORCE_HOLD_PER_KEY with QUICK_TAP_TERM_PER_KEY in configs #2

* Add function declaration for get_quick_tap_term

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-12-12 16:52:22 +01:00
Drashna Jaelre 4a87af0e9a
[Keymap] Drashna updates for 0.19 (#19175)
* Fix up bastardkb boards since blackpill support is officially added.
  * Check for blackpill version, not elite c.
  * Add checks in chibiOS config since multiple ARM controllers supported.
  * Rework rules.mk for keymaps to better handle arm vs avr support
* Start moving away from `matrix_*_*` functions.
  * `housekeeping_task_*` instead of `matrix_scan_*`
  * `keyboard_(pre|post)_init_*` instead of `matrix_init_*` 
* Add ℂℴmⅈℂ unicode input method.
* Clean up unicode code to be more compact and flexible.
* Remove/move Pro Micro LED commands to userspace and better filter them
* Fixup OLED code
  * Use newer quantum keycode functions/preprocessors rather than manual bit manipulation
  * Make unicode mode render much more compact/simple.
* Make qmk secrets more self contained
* Remove custom implementation of split watchdog
2022-11-29 11:43:42 -08:00
Ryan e12ca14af8
Change `RGB_MATRIX_STARTUP_*` defines to `RGB_MATRIX_DEFAULT_*` (#19079) 2022-11-27 04:18:24 +11:00
Ryan 5974d989fe
Normalise Unicode keycodes (#18898)
* `UC_MOD`/`UC_RMOD` -> `UC_NEXT`/`UC_PREV`

* `UNICODE_MODE_*` -> `QK_UNICODE_MODE_*`

* `UC_MAC` -> `UNICODE_MODE_MACOS`

* `UC_LNX` -> `UNICODE_MODE_LINUX`

* `UC_WIN` -> `UNICODE_MODE_WINDOWS`

* `UC_BSD` -> `UNICODE_MODE_BSD`

* `UC_WINC` -> `UNICODE_MODE_WINCOMPOSE`

* `UC_EMACS` -> `UNICODE_MODE_EMACS`

* `UC__COUNT` -> `UNICODE_MODE_COUNT`

* `UC_M_MA` -> `UC_MAC`

* `UC_M_LN` -> `UC_LINX`

* `UC_M_WI` -> `UC_WIN`

* `UC_M_BS` -> `UC_BSD`

* `UC_M_WC` -> `UC_WINC`

* `UC_M_EM` -> `UC_EMAC`

* Docs

* Update quantum/unicode/unicode.h
2022-10-31 21:15:12 +00:00
Ryan 2ff1d85290
Normalise Autocorrect keycodes (#18893) 2022-10-28 12:21:24 +01:00
Ryan 90f6b75873
Remove `KC_DELT` (#18882) 2022-10-27 19:33:38 +01:00
Ryan 74223c34a9
Remove legacy keycodes, part 6 (#18740)
* `KC_RSHIFT` -> `KC_RSFT`

* `KC_RCTRL` -> `KC_RCTL`

* `KC_LSHIFT` -> `KC_LSFT`

* `KC_LCTRL` -> `KC_LCTL`
2022-10-16 14:14:40 +01:00
Drashna Jaelre ad8630bd72
Remove RGBLIGHT_ANIMATION and clean up effect defines for layouts+users (#18729) 2022-10-15 09:59:31 -07:00
Drashna Jaelre 64b1ed4550
Fix Per Key LED Indicator Callbacks (#18450)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-10-04 15:24:22 -07:00
Ryan ea2819b2c2
Change `{LED,RGB}_DISABLE_TIMEOUT` to `{LED,RGB}_MATRIX_TIMEOUT` (#18415) 2022-09-26 14:40:15 +10:00
Drashna Jaelre 5abb125b02
[Keymap] develop updates for Drashna Keymaps (#18472) 2022-09-25 13:04:00 -07:00
Ryan 36c410592d
Change `DRIVER_LED_COUNT` to `{LED,RGB}_MATRIX_LED_COUNT` (#18399) 2022-09-23 22:46:23 +10:00
QMK Bot db90919c7a Merge remote-tracking branch 'origin/master' into develop 2022-09-02 15:33:43 +00:00
Drashna Jaelre 90418b371f
[Keymap] Fix bootmagic compilation issue with Drashna keymaps (#18223) 2022-09-02 08:32:38 -07: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
Drashna Jaelre fa08cb2478
[Keymap] Drashna keymap updates for 0.18.0 (#18184)
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-28 12:55:19 -07:00
Stefan Kerkmann f27b617f36
[Core] Process all changed keys in one scan loop, deprecate `QMK_KEYS_PER_SCAN` (#15292) 2022-08-06 20:51:13 +10:00
Drashna Jaelre 1c43410e26
[Keymap] Updates to drashna Keymaps and Userspace (#17543) 2022-07-02 19:55:46 -07:00
Drashna Jaelre cda343acbe
[Keymap] Drashna update for post Q2 merge (#17241) 2022-05-30 22:02:55 -07:00
Drashna Jaelre ff6c70415c
[Keymap] Drashna Mouse keys and oled updates (#16556) 2022-03-06 22:12:17 -08:00
Drashna Jaelre d1cf218b9d
[Keyboard] Overhaul Tractyl Manuform (#16134) 2022-01-30 13:29:43 -08:00
Drashna Jaelre 941b1d35b8
[Keymap] Add oled improvements and cnano keymap for drashna (#16133) 2022-01-30 13:20:33 -08:00
Drashna Jaelre b090ff03ed
[Keymap] Drashna's OLED rewrite (#15981) 2022-01-21 19:36:52 -08:00
Drashna Jaelre c4551d7ef1
[Keymap] Reorganization, cleanup and readmes for drashna code (#15617) 2021-12-29 20:17:34 -08:00
Drashna Jaelre 3fa592a402
[Keymap] Unicode and Pointing Device and Autocorect for drashna keymaps (#15415) 2021-12-14 20:53:36 -08:00
Drashna Jaelre 5b5b36421a
[Keymap] Unicode and cursor sync - drashna keymap (#15328) 2021-11-28 23:41:59 -08:00
QMK Bot b47f3b1853 Merge remote-tracking branch 'origin/master' into develop 2021-11-17 20:46:24 +00:00
Drashna Jaelre 254e26554b
[Keymap] updates for oled, and diablo 2 layer - Drashna (#15194) 2021-11-17 12:45:50 -08:00
Drashna Jaelre 160b0558f5
Require explicit enabling of RGB Matrix modes (#15018) 2021-11-15 10:41:04 -08:00
QMK Bot ed48c0bd8b Merge remote-tracking branch 'origin/master' into develop 2021-11-10 14:10:35 +00:00
Drashna Jaelre 83ab7d41ef
Updates to drashna keymap and minor updates to tractyl manuform (#15101) 2021-11-10 06:10:00 -08:00
Drashna Jaelre 89e5e4e7ad
[Keymap] Fix missing return for oled task in drashna userspace (#15012) 2021-11-02 13:31:15 +11:00
Drashna Jaelre 9d235d4fc5
[Core] Change OLED task function to be boolean (#14864)
* [Core] Add kb level callbacks to OLED driver

* Update keyboards and keymaps

* Update docs

* Update userspace configs

* Add fix for my keymap ...

* update lefty
2021-11-02 09:42:50 +11:00
Drashna Jaelre 9a0addc77e
[Keymap] Drashna Keymap Updates (#14842)
* Fix issues with user split transport code
* Improve OLED (More font stuff, improved keylogger, etc)
* Add `KEYLOCK` macro to disable USB, borrowed from command feature.
* Convert Kyria fully to proton C (no more AVR kyria)
* Add Work Louder Work Board keymap
2021-10-15 22:30:23 -07:00
Drashna Jaelre 1e54796f0c
[Keymap] Update to Drashna Code (#14644) 2021-09-29 11:16:11 -07:00
Drashna Jaelre 37aef4ebe1
[Keymap] Fix Drashna Keymap issues missed before Develop merge (#14271) 2021-09-01 21:08:58 -07:00
Drashna Jaelre bc239cd520
[Keymap] Drashna keymap fixups (#14140) 2021-08-24 01:37:14 -07:00
Xelus22 4e1c5887c5
[Core] Refactor OLED to allow easy addition of other types (#13454)
* add docs

* core changes

* update keyboards to new OLED

* updated users to new OLED

* update layouts to new OLED

* fixup docs

* drashna's suggestion

* fix up docs

* new keyboards with oled

* core split changes

* remaining keyboard files

* Fix The Helix keyboards oled options

* reflect develop

Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: mtei <2170248+mtei@users.noreply.github.com>
2021-08-24 16:28:26 +10:00
Drashna Jaelre 58a5030661
[Keymap] Drashna's Improve OLEDs and custom Split code (#14063)
* Fill the oleds with right mods

* Enable double mods on x32 oleds

* Disable forced NKRO

* Make oleds fancy only on good MCUs

* Overhaul oled display

* Further enhance oled, with kitty!

* Final oled form

* Not working transport

* Transport id of woring

* Add acceleration

* fix button placement for accel macro

* Fix accelartion location and behavior

* Remove OLED sync code

* Fix alignment issue

* Remove audio hack

* Fix up zima keymap

* Add matrix slave scan function and cleanup drashna.h

* Clean up user space

* Allow userspace sync to be disable-able

* Fix weird issue with audio

* Fix alignment issue with user split sync

* Disable second rgb matrix task

* Disable additional animations

* Change dynamic keymap settings

* Hacky fix for borked corne

* Add Blackpill (F411) support to tractyl manuform

* remove manual via eeprom reset

* Remove all references to rgblight twinkle

* Fix issues with config processing
2021-08-21 13:34:44 -07:00
Drashna Jaelre b9dcd5ac38
[Keymap] Drashna split transport improvement (#13905)
* Fix up split stuff

* Fix Split perf issues

* Allow LTO to be disabled

* Fixup WPM and encoders

* Fixup qmk keys per scan

* Add bootloader info

* Change encoder pins

* Fixup corne oled code

* Expand transport sync

* Improve user transport

* Cleanup mouse processing at keymap level

* Improve layer checking for mouse layering
2021-08-07 21:40:48 -07:00
Drashna Jaelre eb46c954dc
[Keymap] Drashna's Defaults cleanup (#13722) 2021-07-26 17:59:49 -07:00
Drashna Jaelre b7cf9a888a
Drashna's split updates (#13350)
Co-authored-by: Ryan <fauxpark@gmail.com>
2021-07-01 00:42:32 -07:00
Drashna Jaelre 6901411bca
Move optical sensor code to drivers folder (#13044) 2021-06-21 21:00:11 +01:00
Drashna Jaelre 7a6e630ffd
Fix RGB/LED Suspend defines (#13146) 2021-06-09 22:59:19 -07:00
Drashna Jaelre f461adbd1d
[Keymap] Update to Drashna keymap and user code (based on develop) (#12936) 2021-05-25 09:24:01 -07:00