forked from mirrors/qmk_userspace
macros
This commit is contained in:
parent
9514ee8df7
commit
4454ded0af
3 changed files with 57 additions and 6 deletions
|
@ -33,15 +33,19 @@ action_t action_for_key(uint8_t layer, keypos_t key)
|
|||
// 16bit keycodes - important
|
||||
uint16_t keycode = keymap_key_to_keycode(layer, key);
|
||||
|
||||
if (keycode > 0x00FF && keycode < 0x2000) {
|
||||
if (keycode >= 0x0100 && keycode < 0x2000) {
|
||||
// Has a modifier
|
||||
action_t action;
|
||||
// Split it up
|
||||
action.code = ACTION_MODS_KEY(keycode >> 8, keycode & 0xFF);
|
||||
return action;
|
||||
} else if (keycode > 0x1FFF && keycode < 0x3000) {
|
||||
} else if (keycode >= 0x2000 && keycode < 0x3000) {
|
||||
// Is a shortcut for function layer, pull last 12bits
|
||||
return keymap_func_to_action(keycode & 0xFFF);
|
||||
} else if (keycode >= 0x3000 && keycode < 0x4000) {
|
||||
action_t action;
|
||||
action.code = ACTION_MACRO(keycode & 0xFF);
|
||||
return action;
|
||||
}
|
||||
|
||||
switch (keycode) {
|
||||
|
@ -173,9 +177,8 @@ action_t keymap_fn_to_action(uint16_t keycode)
|
|||
return (action_t){ .code = pgm_read_word(&fn_actions[FN_INDEX(keycode)]) };
|
||||
}
|
||||
|
||||
/* translates Fn keycode to action */
|
||||
action_t keymap_func_to_action(uint16_t keycode)
|
||||
{
|
||||
// For FUNC without 8bit limit
|
||||
return (action_t){ .code = pgm_read_word(&fn_actions[(int)keycode]) };
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue