From 7a5ce36f23624b29b548f9e8f8e3a0b165cdf2a4 Mon Sep 17 00:00:00 2001 From: snyman Date: Tue, 20 Mar 2018 22:59:54 -0400 Subject: 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 --- quantum/quantum_keycodes.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'quantum/quantum_keycodes.h') 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 { QK_TAP_DANCE_MAX = 0x57FF, QK_LAYER_TAP_TOGGLE = 0x5800, QK_LAYER_TAP_TOGGLE_MAX = 0x58FF, + QK_LAYER_MOD = 0x5900, + QK_LAYER_MOD_MAX = 0x59FF, #ifdef STENO_ENABLE QK_STENO = 0x5A00, QK_STENO_BOLT = 0x5A30, @@ -597,6 +599,9 @@ enum quantum_keycodes { // One-shot layer - 256 layer max #define OSL(layer) (layer | QK_ONE_SHOT_LAYER) +// L-ayer M-od: Momentary switch layer with modifiers active - 16 layer max, left mods only +#define LM(layer, mod) (QK_LAYER_MOD | (((layer) & 0xF) << 4) | ((mod) & 0xF)) + // One-shot mod #define OSM(mod) ((mod) | QK_ONE_SHOT_MOD) -- cgit v1.2.3-24-g4f1b