diff options
author | jamesofarrell <jofarrell@gmail.com> | 2017-06-17 07:56:50 +1000 |
---|---|---|
committer | skullydazed <skullydazed@users.noreply.github.com> | 2017-06-16 14:56:50 -0700 |
commit | 98316ef0170c6e0f994a45e1f62959ae0f278177 (patch) | |
tree | 7e1981d5966d09e1bd8c53cdeef0edb37a9dd0c1 | |
parent | ff2b01da49ccf2d57e61bb70cdbaacb40799299c (diff) | |
download | qmk_firmware-98316ef0170c6e0f994a45e1f62959ae0f278177.tar.gz |
Added Grave Escape (#1391)
* added QK_GRAVE_ESC and KC_GESC
* fixed name
* Fixed keycode emnu
* Removed layer check, added left and right GUI mod detection for OSX GUI+~
-rw-r--r-- | quantum/quantum.c | 8 | ||||
-rw-r--r-- | quantum/quantum_keycodes.h | 3 |
2 files changed, 11 insertions, 0 deletions
diff --git a/quantum/quantum.c b/quantum/quantum.c index 4f4cee4e9..f5fb1e35c 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -437,6 +437,14 @@ bool process_record_quantum(keyrecord_t *record) { return false; // break; } + case GRAVE_ESC: { + void (*method)(uint8_t) = (record->event.pressed) ? &add_key : &del_key; + uint8_t shifted = get_mods() & ((MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT) + |MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))); + + method(shifted ? KC_GRAVE : KC_ESCAPE); + send_keyboard_report(); + } default: { shift_interrupted[0] = true; shift_interrupted[1] = true; diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 7354ae0da..c34ecafa5 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -104,6 +104,7 @@ enum quantum_keycodes { MAGIC_UNHOST_NKRO, MAGIC_UNSWAP_ALT_GUI, MAGIC_TOGGLE_NKRO, + GRAVE_ESC, // Leader key #ifndef DISABLE_LEADER @@ -514,6 +515,8 @@ enum quantum_keycodes { #define MACROTAP(kc) (kc | QK_MACRO | FUNC_TAP<<8) #define MACRODOWN(...) (record->event.pressed ? MACRO(__VA_ARGS__) : MACRO_NONE) +#define KC_GESC GRAVE_ESC + // L-ayer, T-ap - 256 keycode max, 16 layer max #define LT(layer, kc) (kc | QK_LAYER_TAP | ((layer & 0xF) << 8)) |