qmk_firmware/tmk_core/common
Luke Silva a3357d078e Add support for various tapping macros
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.
2017-01-28 18:42:35 +11:00
..
avr Simplified and polished a bit the code changes on tmk_core 2017-01-21 17:18:05 -05:00
chibios Add ChibiOS support for QMK (#465) 2016-07-01 10:04:53 -04:00
mbed Added User Print - A "light" console out option (#8) 2016-09-07 23:50:58 -05:00
action_code.h Fix documentation for TMK actions 2017-01-26 22:44:22 +11:00
action_layer.c Fix compiler warning when PREVENT_STUCK_MODIFIERS is enabled. 2016-07-24 12:56:28 -07:00
action_layer.h Checkin 2016-04-14 18:01:29 -05:00
action_macro.c stops forcing debug_action 2016-04-28 23:23:33 -04:00
action_macro.h Add support for various tapping macros 2017-01-28 18:42:35 +11:00
action_tapping.c Add ChibiOS support for QMK (#465) 2016-07-01 10:04:53 -04:00
action_tapping.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
action_util.c Use keyboard config for nkro (#7) 2016-09-06 23:19:01 -05:00
action_util.h Adds oneshot layer and oneshot tap toggling (#308) 2016-05-05 21:41:37 -04:00
action.c Fix issue #772 Meh and Hyper not working 2016-09-23 01:20:49 +02:00
action.h Add one-hand support. 2016-08-20 17:46:53 -07:00
backlight.c Set backlight status to on if it's at maximum brightness already and the brightness increase keybind is used 2016-11-22 22:12:57 +01:00
backlight.h Backlight Breathing for Planck and Atomic 2016-05-09 13:17:15 -04:00
bootloader.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
bootmagic.c Use keyboard config for nkro (#7) 2016-09-06 23:19:01 -05:00
bootmagic.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
command.c Simplified and polished a bit the code changes on tmk_core 2017-01-21 17:18:05 -05:00
command.h Warning reductions (#430) 2016-06-21 17:42:29 -04:00
debug.c Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
debug.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
eeconfig.c Add ChibiOS support for QMK (#465) 2016-07-01 10:04:53 -04:00
eeconfig.h reduces rgblight warnings, integrates completely (#428) 2016-06-21 12:53:21 -04:00
eeprom.h Add ChibiOS support for QMK (#465) 2016-07-01 10:04:53 -04:00
host_driver.h cleaning up midid 2016-11-21 20:14:16 -05:00
host.c Use keyboard config for nkro (#7) 2016-09-06 23:19:01 -05:00
host.h Use keyboard config for nkro (#7) 2016-09-06 23:19:01 -05:00
keyboard.c added mods status bit to visualizer. 2017-01-17 21:57:32 -05:00
keyboard.h Add keyboard_setup() and matrix_setup() 2015-05-19 00:39:43 +09:00
keycode.h Keycode refactor 2016-12-29 18:28:48 +11:00
led.h Backlight abstraction and other changes (#439) 2016-06-23 22:18:20 -04:00
magic.c Use keyboard config for nkro (#7) 2016-09-06 23:19:01 -05:00
magic.h MAGIC functionality, AG swap in default layout 2016-04-16 18:51:58 -04:00
matrix.h Refactoring Matrix scanning 2016-10-28 16:24:20 -05:00
mousekey.c Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
mousekey.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
nodebug.h Backlight Breathing for Planck and Atomic 2016-05-09 13:17:15 -04:00
print.c Add ChibiOS support for QMK (#465) 2016-07-01 10:04:53 -04:00
print.h Added User Print - A "light" console out option (#8) 2016-09-07 23:50:58 -05:00
progmem.h Add ChibiOS support for QMK (#465) 2016-07-01 10:04:53 -04:00
raw_hid.h Initial version of Raw HID interface 2016-12-01 00:44:54 +11:00
report.h Add ChibiOS support for QMK (#465) 2016-07-01 10:04:53 -04:00
sendchar_null.c Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
sendchar_uart.c Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
sendchar.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
sleep_led.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
suspend.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
timer.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
uart.c Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
uart.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
util.c Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
util.h Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00
virtser.h Added USB Virtual Serial support 2016-08-23 04:16:35 +00:00
wait.h Add ChibiOS support for QMK (#465) 2016-07-01 10:04:53 -04:00