Merge pull request #1046 from LukeSilva/master
Add Tapping Macros to QMK
This commit is contained in:
commit
3c7fa0acc1
7 changed files with 419 additions and 6 deletions
|
@ -80,7 +80,10 @@ action_t action_for_key(uint8_t layer, keypos_t key)
|
|||
action.code = keymap_function_id_to_action( (int)keycode & 0xFFF );
|
||||
break;
|
||||
case QK_MACRO ... QK_MACRO_MAX:
|
||||
action.code = ACTION_MACRO(keycode & 0xFF);
|
||||
if (keycode & 0x800) // tap macros have upper bit set
|
||||
action.code = ACTION_MACRO_TAP(keycode & 0xFF);
|
||||
else
|
||||
action.code = ACTION_MACRO(keycode & 0xFF);
|
||||
break;
|
||||
case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:
|
||||
action.code = ACTION_LAYER_TAP_KEY((keycode >> 0x8) & 0xF, keycode & 0xFF);
|
||||
|
|
|
@ -256,8 +256,10 @@ enum quantum_keycodes {
|
|||
|
||||
#define M(kc) (kc | QK_MACRO)
|
||||
|
||||
#define MACROTAP(kc) (kc | QK_MACRO | FUNC_TAP<<8)
|
||||
#define MACRODOWN(...) (record->event.pressed ? MACRO(__VA_ARGS__) : MACRO_NONE)
|
||||
|
||||
|
||||
// L-ayer, T-ap - 256 keycode max, 16 layer max
|
||||
#define LT(layer, kc) (kc | QK_LAYER_TAP | ((layer & 0xF) << 8))
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue