adds keycode shortcuts for OSL and OSM

This commit is contained in:
Jack Humbert 2016-05-05 21:50:51 -04:00
parent 74e97eefd7
commit 41b3e399b1
2 changed files with 14 additions and 0 deletions

View file

@ -272,6 +272,14 @@ static action_t keycode_to_action(uint16_t keycode)
// Set default layer
int layer = keycode & 0xFF;
action.code = ACTION_LAYER_TOGGLE(layer);
} else if (type == 0x5) {
// OSL(layer) - One-shot layer
int layer = keycode & 0xFF;
action.code = ACTION_LAYER_ONESHOT(layer);
} else if (type == 0x6) {
// OSM(mod) - One-shot mod
int mod = keycode & 0xFF;
action.code = ACTION_MODS_ONESHOT(mod);
}
break;
#ifdef MIDI_ENABLE

View file

@ -205,6 +205,12 @@ extern const uint16_t fn_actions[];
// Toggle to layer - 256 layer max
#define TG(layer) (layer | 0x5400)
// One-shot layer - 256 layer max
#define OSL(layer) (layer | 0x5500)
// One-shot mod
#define OSM(layer) (layer | 0x5600)
// M-od, T-ap - 256 keycode max
#define MT(mod, kc) (kc | 0x7000 | ((mod & 0xF) << 8))
#define CTL_T(kc) MT(0x1, kc)