forked from forks/qmk_firmware
a3357d078e
A macro key can now be easily set to act as a modifier on hold, and press a shifted key when tapped. Or to switch layers when held, and again press a shifted key when tapped. Various other helper defines have been created which send macros when the key is pressed, released and tapped, cleaning up the action_get_macro function inside keymap definitions. The layer switching macros require a GCC extension - 'compound statements enclosed within parentheses'. The use of this extension is already present within the macro subsystem of this project, so its use in this commit should not cause any additional issues. MACRO_NONE had to be cast to a (macro_t*) to suppress compiler warnings within some tapping macros. |
||
---|---|---|
.. | ||
api | ||
audio | ||
keymap_extras | ||
process_keycode | ||
serial_link | ||
template | ||
tools | ||
visualizer | ||
analog.c | ||
analog.h | ||
api.c | ||
api.h | ||
config_common.h | ||
dynamic_macro.h | ||
keycode_config.c | ||
keycode_config.h | ||
keymap.h | ||
keymap_common.c | ||
light_ws2812.c | ||
light_ws2812.h | ||
matrix.c | ||
pincontrol.h | ||
quantum.c | ||
quantum.h | ||
quantum_keycodes.h | ||
rgblight.c | ||
rgblight.h | ||
variable_trace.c | ||
variable_trace.h |