]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - quantum/quantum_keycodes.h
Add keycodes for swap-hands feature.
[qmk_firmware.git] / quantum / quantum_keycodes.h
index 2d9603064255c579d7591dde9cf3c4de7a84e82e..9040299a74491bc1b7580a980ad5efa2dd5000d0 100644 (file)
@@ -76,6 +76,10 @@ enum quantum_keycodes {
     QK_STENO_BOLT         = 0x5A30,
     QK_STENO_GEMINI       = 0x5A31,
     QK_STENO_MAX          = 0x5A3F,
+#endif
+#ifdef SWAP_HANDS_ENABLE
+    QK_SWAP_HANDS         = 0x5B00,
+    QK_SWAP_HANDS_MAX     = 0x5BFF,
 #endif
     QK_MOD_TAP            = 0x6000,
     QK_MOD_TAP_MAX        = 0x7FFF,
@@ -455,8 +459,8 @@ enum quantum_keycodes {
 #define LCAG(kc) (kc | QK_LCTL | QK_LALT | QK_LGUI)
 #define ALTG(kc) (kc | QK_RCTL | QK_RALT)
 #define SGUI(kc) (kc | QK_LGUI | QK_LSFT)
-#define SCMD(kc) SCMD(kc)
-#define SWIN(kc) SCMD(kc)
+#define SCMD(kc) SGUI(kc)
+#define SWIN(kc) SGUI(kc)
 #define LCA(kc) (kc | QK_LCTL | QK_LALT)
 
 #define MOD_HYPR 0xf
@@ -621,8 +625,8 @@ enum quantum_keycodes {
 #define RCAG_T(kc) MT((MOD_RCTL | MOD_RALT | MOD_RGUI), kc) // Right control alt and gui
 #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/
 #define SGUI_T(kc) MT((MOD_LGUI | MOD_LSFT), kc)
-#define SCMD_T(kc) SCMD_T(kc)
-#define SWIN_T(kc) SCMD_T(kc)
+#define SCMD_T(kc) SGUI_T(kc)
+#define SWIN_T(kc) SGUI_T(kc)
 #define LCA_T(kc) MT((MOD_LCTL | MOD_LALT), kc) // Left control and left alt
 
 // Dedicated keycode versions for Hyper and Meh, if you want to use them as standalone keys rather than mod-tap
@@ -641,4 +645,14 @@ enum quantum_keycodes {
     #define X(n) (n | QK_UNICODE_MAP)
 #endif
 
+#ifdef SWAP_HANDS_ENABLE
+  #define SH_T(key)  (QK_SWAP_HANDS | key)
+  #define SH_TG      (QK_SWAP_HANDS | OP_SH_TOGGLE)
+  #define SH_TT      (QK_SWAP_HANDS | OP_SH_TAP_TOGGLE)
+  #define SH_MON     (QK_SWAP_HANDS | OP_SH_ON_OFF)
+  #define SH_MOFF    (QK_SWAP_HANDS | OP_SH_OFF_ON)
+  #define SH_ON      (QK_SWAP_HANDS | OP_SH_ON)
+  #define SH_OFF     (QK_SWAP_HANDS | OP_SH_OFF)
+#endif
+
 #endif // QUANTUM_KEYCODES_H