* Added new section to docs: Checking Modifier State
* Added id anchors to all headers in modifiers docs
* Added a Wikipedia link to bitwise operators and...
crosslinked to the QMK macro docs.
* Added an explanation on the format of mod bitmask
* Added .md extension to hyperlinks to macros docs
* Corrected mod mask order and changed notation
* Documented add_oneshot_mods and del_oneshot_mods
* Mentioned modifier checks in the macro docs
* Explained strict modifier checking
i.e. using `get_mods() & MOD_MASK == MOD_MASK` instead of simply
`get_mods() & MOD_MASK`
* Added (un)register_mods to the docs
* Put left term of comparison in parens
* [Docs] Update layer documentation
* Add layer_state_cmp functions
* Fix cut/copy/paste issue
* Add id tags
* Apply noroads corrections
* Move Layers section to separate document
* Fix ID tag for layers
* Use better name for summary/side bar
* Fix feature page linkage
As well as a small spell error close by
* Remove paper analogy for now
* fix instructions for oneshot layer handling on key release
* use ONESHOT_OTHER_KEY_PRESSED instead of ONESHOT_PRESSED
Co-Authored-By: Drashna Jaelre <drashna@live.com>
* add a tapdance example for creating advanced mod-tap and layer-tap keys
* add optional curly braces to match QMK conventions
* change example to use `register_code16()` and tapdance keycodes more closely matching QMK variants
Many instances in the QMK Docs referenced KEYMAP macros, which is outdated terminology.
Replaced most instances of KEYMAP with LAYOUT, to reflect the desired usage.
Based on conversation with Drashna on Discord, we know that if ONE_SHOT_TAP_TOGGLE is 5, then tapping a one shot mod key 5 times holds the one shot key permanently, but to come out of this, you need to press the same key only once.
* Added callbacks to one shot modifier changes
* Altered signature of callback functions
* Reordered the callback methods, shortened brief documentation
* Added One Shot Modifier callback documentation
* First attempt at unit tests
* Revert "First attempt at unit tests"
This reverts commit 5ec21a782202c0d74cf21cb852bd319f0c8b4842.
* Simplified oneshot function implementations
* Made clear_oneshot_locked_mods to be conform action_util.h, adhering to the (void) signature
* Made used datatypes for oneshot mods consistently unsigned integers
* Corrected callback to call clear callback when clear_oneshot_locked_mods is invoked
* Simplified oneshot equals statements
* Corrected return type and signature of get and set oneshot locked mods
* Consolidated one shot callbacks, added initial layer callback version
* Fixed non-updating one shot layer variable after timeout or other clear, added code comments
* Added better one shot key docs
* Update feature_advanced_keycodes.md
Probably a better way to word it, but I've solved this issue on reddit several times, had to solve this for friends, ect. It's something worth being in the docs as it's a common issue, and not always intuitive. I have offered this change as I was told by several people "It was never mentioned in the docs".
* Update feature_advanced_keycodes.md
Clear up what was meant to be said.
* Add standard ALGR defition, remove (re)definitions from language files
* Use ALGR(kc) consistently in ALTGR(kc) aliases
* Non-Nordic keymaps should not use NO_ALGR
* Add standard KC_ALGR definition
* Update docs with ALGR and KC_ALGR
* Update SS_ALGR and ALGR_T aliases
* Add caveats for shifted characters
And some formatting and grammar corrections.
Closes#1037
* Fix spelling of remote
* Fix spelling error
* Remote not Remove
* Remote not Remove
* Adds Audio Keycodes to both the feature page and master list
* Re-orders the keycode list, so it's alphabetical (mostly)
* Add additional (missing) sections to the keycode list
* Add and update links in the keycode page
* Add and reorder links in sidebar's keycode section
* Macro for a momentary layer switch with mods
Passes through to the existing ACTION_LAYER_MODS macro, albeit with more
limited options due to lack of space in the quantum_keycodes enum.
* Add documentation for LM layer-mod macro
* Clean up Tap Toggle documentation