aboutsummaryrefslogtreecommitdiff
path: root/quantum/quantum_keycodes.h
diff options
context:
space:
mode:
Diffstat (limited to 'quantum/quantum_keycodes.h')
-rw-r--r--quantum/quantum_keycodes.h21
1 files changed, 14 insertions, 7 deletions
diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h
index cc7a5013f..78b02a0de 100644
--- a/quantum/quantum_keycodes.h
+++ b/quantum/quantum_keycodes.h
@@ -41,16 +41,21 @@ enum quantum_keycodes {
41#endif 41#endif
42 QK_TAP_DANCE = 0x5700, 42 QK_TAP_DANCE = 0x5700,
43 QK_TAP_DANCE_MAX = 0x57FF, 43 QK_TAP_DANCE_MAX = 0x57FF,
44#ifdef UNICODEMAP_ENABLE 44 QK_LAYER_TAP_TOGGLE = 0x5800,
45 QK_UNICODE_MAP = 0x5800, 45 QK_LAYER_TAP_TOGGLE_MAX = 0x58FF,
46 QK_UNICODE_MAP_MAX = 0x5BFF,
47#endif
48 QK_MOD_TAP = 0x6000, 46 QK_MOD_TAP = 0x6000,
49 QK_MOD_TAP_MAX = 0x7FFF, 47 QK_MOD_TAP_MAX = 0x7FFF,
48#if defined(UNICODEMAP_ENABLE) && defined(UNICODE_ENABLE)
49 #error "Cannot enable both UNICODEMAP && UNICODE"
50#endif
50#ifdef UNICODE_ENABLE 51#ifdef UNICODE_ENABLE
51 QK_UNICODE = 0x8000, 52 QK_UNICODE = 0x8000,
52 QK_UNICODE_MAX = 0xFFFF, 53 QK_UNICODE_MAX = 0xFFFF,
53#endif 54#endif
55#ifdef UNICODEMAP_ENABLE
56 QK_UNICODE_MAP = 0x8000,
57 QK_UNICODE_MAP_MAX = 0x83FF,
58#endif
54 59
55 // Loose keycodes - to be used directly 60 // Loose keycodes - to be used directly
56 61
@@ -154,9 +159,6 @@ enum quantum_keycodes {
154#ifdef BLUETOOTH_ENABLE 159#ifdef BLUETOOTH_ENABLE
155 OUT_BT, 160 OUT_BT,
156#endif 161#endif
157#ifdef ADAFRUIT_BLE_ENABLE
158 OUT_BLE,
159#endif
160 162
161 // always leave at the end 163 // always leave at the end
162 SAFE_RANGE 164 SAFE_RANGE
@@ -178,6 +180,7 @@ enum quantum_keycodes {
178#define ALTG(kc) (kc | QK_RCTL | QK_RALT) 180#define ALTG(kc) (kc | QK_RCTL | QK_RALT)
179#define SCMD(kc) (kc | QK_LGUI | QK_LSFT) 181#define SCMD(kc) (kc | QK_LGUI | QK_LSFT)
180#define SWIN(kc) SCMD(kc) 182#define SWIN(kc) SCMD(kc)
183#define LCA(kc) (kc | QK_LCTL | QK_LALT)
181 184
182#define MOD_HYPR 0xf 185#define MOD_HYPR 0xf
183#define MOD_MEH 0x7 186#define MOD_MEH 0x7
@@ -304,6 +307,9 @@ enum quantum_keycodes {
304// One-shot mod 307// One-shot mod
305#define OSM(mod) (mod | QK_ONE_SHOT_MOD) 308#define OSM(mod) (mod | QK_ONE_SHOT_MOD)
306 309
310// Layer tap-toggle
311#define TT(layer) (layer | QK_LAYER_TAP_TOGGLE)
312
307// M-od, T-ap - 256 keycode max 313// M-od, T-ap - 256 keycode max
308#define MT(mod, kc) (kc | QK_MOD_TAP | ((mod & 0x1F) << 8)) 314#define MT(mod, kc) (kc | QK_MOD_TAP | ((mod & 0x1F) << 8))
309 315
@@ -331,6 +337,7 @@ enum quantum_keycodes {
331#define ALL_T(kc) MT((MOD_LCTL | MOD_LSFT | MOD_LALT | MOD_LGUI), kc) // see http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/ 337#define ALL_T(kc) MT((MOD_LCTL | MOD_LSFT | MOD_LALT | MOD_LGUI), kc) // see http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/
332#define SCMD_T(kc) MT((MOD_LGUI | MOD_LSFT), kc) 338#define SCMD_T(kc) MT((MOD_LGUI | MOD_LSFT), kc)
333#define SWIN_T(kc) SCMD_T(kc) 339#define SWIN_T(kc) SCMD_T(kc)
340#define LCA_T(kc) MT((MOD_LCTL | MOD_LALT), kc) // Left control and left alt
334 341
335// Dedicated keycode versions for Hyper and Meh, if you want to use them as standalone keys rather than mod-tap 342// Dedicated keycode versions for Hyper and Meh, if you want to use them as standalone keys rather than mod-tap
336#define KC_HYPR HYPR(KC_NO) 343#define KC_HYPR HYPR(KC_NO)