* 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>
* 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
* [miryoku] Revert "[Keymap] manna-harbour_miryoku RESET to QK_BOOT (#18755)"
This reverts commit 89dbc181617e69a5b4d91d9d772724daa2d387bb.
* [miryoku] Add keyboardio/model01
* [miryoku] Add handwired/dactyl_manuform/4x6
* [miryoku] Update BT keycodes
- Update BT keycodes on Media inner index:
- Move OUT_AUTO to bottom row
- Move RGB_TOG in vi to pinkie column to match other TOG keycodes, and rotate row
* [miryoku] Add Extra and Tap layers
* [miryoku] Rename config workflow option to custom_config
* [miryoku] Update custom_config.h and custom_rules.mk behaviour
* [miryoku] Make mapping macro customisable globally and per layer
* [miryoku] Add layer lock
* [miryoku] Update RGB order in media-l-invertedt
* [miryoku] Change mouse button order
* [miryoku] Change to X macros for layer list
- Supports adding and removing layers from custom_config.h
- Add "U_" prefix to layer names
- Add layer name strings
- Populate keymaps array from X macro
- Populate layers enum from X macro
- Move layers enum to manna-harbour_miryoku.h
- Rename miryoku_alternatives.h to miryoku_layer_alternatives.h
- Rename miryoku_layer.h to miryoku_layer_selection.h
- Remove miryoku_layer_names.h
- Add miryoku_layer_list.h
* [miryoku] Reformat split_3x6_3 mapping
* [miryoku] Add merge field to workflows
* [miryoku] Update thumb combos with new layer names
* [miryoku] Update cover image
* [miryoku] Add satt/vision
* [miryoku] Update Branches and Building docs
* [miryoku] Update reset keycode
* [miryoku] Add xmk
* [miryoku] Add boardsource/lulu
* [miryoku] Fix keyboardio/model01
Fixes an issue in Ocean Dream that causes flashing after the oled screen
times out and turns off.
This occurs because writing to an OLED screen turns it on as well and we
are both writing then immediately turning the screen off, but only if
the timeout has occurred (no WPM, 30 seconds has passed).
* qmk art 2020+
* fix compilation
* remove functions. translation matrix
* fix edgecases
* whitespace
* fix memory oddity changing the keymap with every string print
* return edge cases
* support workman layout for git strings
* subm
* secrets
* fix git ignore
* rename var
* workman HW feature toggle
* remember lenght for inserting secrets
* blink leds on secret finish
* 75:fix LEDs not reflecting state on boot
* move common led functions to user file
* move common led funcs to separate file
* move funcs file to separate folder
* capsword
* move string functions to a separate file
* consolidate led funcs
* tidy up variables
* email
* fix printing random keys on Mac + temp disable dynamic macro
* make switch lang shortcut configurable
* revert ergodone behaviour
* move git ignore to userspace folder
* ergodone clean up + saving space
* navigation combos
* shift caps always turns on caps lock. more combos
* convert led funcs into header file
* convert string funcs into header file
* fix compilation for split75
* remove git cherry pick
* update legal headers
* more legal headers
* home row macros
* refactor combo names
* redo combos for homerow + f10 11 12
* custom strings implementation (like secrets)
* ergodone: more consistent f keys
* tweak left right combos to minimise typing interference
* ctr z shortcut
* ergodone: move del to a more convenient key
* rename secrets file to a shorter length
* ergodone tweaks
* fix after merge
* removed included .c files
* Update keyboards/ktec/ergodone/keymaps/art/user_config.c.example
* Update keyboards/mt/split75/keymaps/art/user_config.c.example
* Update users/art/secr.h.example
* Update users/art/custom_definitions.h.example
* Update users/art/art_user_config.h.example
* Update users/art/art.h
* 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>