diff options
author | snyman <snyman@users.noreply.github.com> | 2018-03-20 22:59:54 -0400 |
---|---|---|
committer | Jack Humbert <jack.humb@gmail.com> | 2018-03-20 22:59:54 -0400 |
commit | 7a5ce36f23624b29b548f9e8f8e3a0b165cdf2a4 (patch) | |
tree | b3d9a72244a49f08b9ef12a1a8376fd05954c67b /quantum/quantum_keycodes.h | |
parent | 4ec03111cc0dd8cb365aaa43a6aaf2c626d72a61 (diff) | |
download | qmk_firmware-7a5ce36f23624b29b548f9e8f8e3a0b165cdf2a4.tar.gz qmk_firmware-7a5ce36f23624b29b548f9e8f8e3a0b165cdf2a4.zip |
Add macro for momentarily switching to a layer while some mods are active (#2460)
* 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
Diffstat (limited to 'quantum/quantum_keycodes.h')
-rw-r--r-- | quantum/quantum_keycodes.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 4a5681c7e..8122bfe73 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h | |||
@@ -71,6 +71,8 @@ enum quantum_keycodes { | |||
71 | QK_TAP_DANCE_MAX = 0x57FF, | 71 | QK_TAP_DANCE_MAX = 0x57FF, |
72 | QK_LAYER_TAP_TOGGLE = 0x5800, | 72 | QK_LAYER_TAP_TOGGLE = 0x5800, |
73 | QK_LAYER_TAP_TOGGLE_MAX = 0x58FF, | 73 | QK_LAYER_TAP_TOGGLE_MAX = 0x58FF, |
74 | QK_LAYER_MOD = 0x5900, | ||
75 | QK_LAYER_MOD_MAX = 0x59FF, | ||
74 | #ifdef STENO_ENABLE | 76 | #ifdef STENO_ENABLE |
75 | QK_STENO = 0x5A00, | 77 | QK_STENO = 0x5A00, |
76 | QK_STENO_BOLT = 0x5A30, | 78 | QK_STENO_BOLT = 0x5A30, |
@@ -597,6 +599,9 @@ enum quantum_keycodes { | |||
597 | // One-shot layer - 256 layer max | 599 | // One-shot layer - 256 layer max |
598 | #define OSL(layer) (layer | QK_ONE_SHOT_LAYER) | 600 | #define OSL(layer) (layer | QK_ONE_SHOT_LAYER) |
599 | 601 | ||
602 | // L-ayer M-od: Momentary switch layer with modifiers active - 16 layer max, left mods only | ||
603 | #define LM(layer, mod) (QK_LAYER_MOD | (((layer) & 0xF) << 4) | ((mod) & 0xF)) | ||
604 | |||
600 | // One-shot mod | 605 | // One-shot mod |
601 | #define OSM(mod) ((mod) | QK_ONE_SHOT_MOD) | 606 | #define OSM(mod) ((mod) | QK_ONE_SHOT_MOD) |
602 | 607 | ||