#endif
#ifdef UNICODEMAP_ENABLE
QK_UNICODEMAP = 0x8000,
- QK_UNICODEMAP_MAX = 0x83FF,
+ QK_UNICODEMAP_MAX = 0xBFFF,
+ QK_UNICODEMAP_PAIR = 0xC000,
+ QK_UNICODEMAP_PAIR_MAX = 0xFFFF,
#endif
// Loose keycodes - to be used directly
KC_LOCK,
#endif
- #ifdef TERMINAL_ENABLE
- TERM_ON,
- TERM_OFF,
- #endif
-
- EEPROM_RESET,
-
- UNICODE_MODE_FORWARD,
- UNICODE_MODE_REVERSE,
-
- UNICODE_MODE_OSX,
- UNICODE_MODE_LNX,
- UNICODE_MODE_WIN,
- UNICODE_MODE_BSD,
- UNICODE_MODE_WINC,
-
- HPT_ON,
- HPT_OFF,
- HPT_TOG,
- HPT_RST,
- HPT_FBK,
- HPT_BUZ,
- HPT_MODI,
- HPT_MODD,
- HPT_DWLI,
- HPT_DWLD,
-
- // always leave at the end
- SAFE_RANGE
- };
+#ifdef TERMINAL_ENABLE
+ TERM_ON,
+ TERM_OFF,
+#endif
+
+ EEPROM_RESET,
+
+ UNICODE_MODE_FORWARD,
+ UNICODE_MODE_REVERSE,
+ UNICODE_MODE_OSX,
+ UNICODE_MODE_LNX,
+ UNICODE_MODE_WIN,
+ UNICODE_MODE_BSD,
+ UNICODE_MODE_WINC,
+
+ HPT_ON,
+ HPT_OFF,
+ HPT_TOG,
+ HPT_RST,
+ HPT_FBK,
+ HPT_BUZ,
+ HPT_MODI,
+ HPT_MODD,
+ HPT_DWLI,
+ HPT_DWLD,
+
+ // Left control, open paren
+ KC_LCPO,
+
+ // Right control, close paren
+ KC_RCPC,
+
+ // Left control, open paren
+ KC_LAPO,
+
+ // Right control, close paren
+ KC_RAPC,
+
+ // always leave at the end
+ SAFE_RANGE
+};
// Ability to use mods in layouts
#define LCTL(kc) (QK_LCTL | (kc))
#endif
#ifdef UNICODEMAP_ENABLE
// Allows Unicode input up to 0x10FFFF, requires unicode_map
- #define X(i) (QK_UNICODEMAP | (i))
+ #define X(i) (QK_UNICODEMAP | (i))
+ #define XP(i, j) (QK_UNICODEMAP_PAIR | ((i) & 0x7F) | (((j) & 0x7F) << 7)) // 127 max i and j
#endif
#define UC_MOD UNICODE_MODE_FORWARD