* Use less tap dance memory.
Use dynamically allocated sparse array for tap dance state, dynamically allocate tap dance state when needed and free it when the tap dance is done.
* new approach
* Use null, check for null
* Reformat with docker
* Use uint8 with idx rather than uint16 with keycode in state
* fix accidental change
* reformat
* Add null check
* add documentation tip suggested by tzarc
* Only allow tap dance state allocation on key down, not on key up
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
* Only allow tap dance allocation on key down, not on key up
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
* add user action required section
---------
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
* feat: adds a transmit and receive i2c method
* fix: address the i2c transmit and receive length on u16
* Add AVR/LUFA implementation
Didn't add a progmem version, since that would only apply to receive.
Figured it wasn't worth it, but can add.
* Rearrange order of functions
* Add docs
* Fix doc gen error
* Fix lint issues
* fix more lint issues
* Only perform key and mod remapping in keycode_config() and mod_config() when MAGIC_ENABLE is defined.
* If not set, these functions now return the original keycode or modifier unchanged.
* Reduces firmware size, and unnecessary code when MAGIC_ENABLE is not enabled.
* Removed space saving suggestion with magic functions from squeezing AVR documentation
* Indicate <keyboard>.h LAYOUT() deprecation in understanding_qmk.md
Initial documentation uses <keyboard>.json to define matrix pin definitions, rather than having users #define the LAYOUT() macro in <keyboard>.h - This change brings this docs inline with the [porting_guidelines](https://docs.qmk.fm/porting_your_keyboard_to_qmk), QMK MSYS will also throw an error if this is attempted.
* Update understanding_qmk.md
enclosed '<' using backtick
* style guideline, now builds correctly
prior version indicates directory, new indicates config. still the same idea.
* Update tap_hold.md
Minor grammar/punctuation changes;
Added some more tap-hold examples;
Added a link about home row mods to the reference near the end;
Replaced directional quotation marks with symmetric variant, as this seem to be the only page using them;
Standardised formatting of "tap-hold" (hyphenated is slightly more frequent in existing documentation, so I went with that), as well as "Mod-Tap"/"Layer-Tap".
* Update docs/tap_hold.md
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update docs/tap_hold.md
Co-authored-by: Ryan <fauxpark@gmail.com>
---------
Co-authored-by: Ryan <fauxpark@gmail.com>