123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199 |
- #ifndef USERSPACE
- #define USERSPACE
- #include "quantum.h"
- enum userspace_custom_keycodes {
- KC_MAKE = SAFE_RANGE, // can always be here
- DFAULTS,
- TOGGLE_BACKLIGHT,
- EFFECT,
- EFFECT_END = EFFECT + 20
- };
- #ifndef RESET_LAYER
- #define RESET_LAYER 15
- #endif
- enum layers {
- _BASE = 0,
- _WORKMAN,
- _NORMAN,
- _DVORAK,
- _COLMAK,
- _MALTROFF,
- _GAME,
- _NAV,
- _NUM,
- _ADJUST,
- _RESET = RESET_LAYER,
- };
- enum tap_dancers {
- TD_SEMICOLON,
- TD_GRAVE,
- TD_QUOTE,
- };
- #define MO_NAV MO(_NAV)
- #define MO_ADJ MO(_ADJUST)
- #define MO_RST MO(_RESET)
- #define TG_ADJ TG(_ADJUST)
- #define TG_NUM TG(_NUM)
- #ifdef ENABLE_GAME_LAYER
- #define TG_GAME TG(_GAME)
- #else
- #define TG_GAME KC_NO
- #endif
- #define LY_QWER DF(_BASE)
- #define LY_WORK DF(_WORKMAN)
- #define LY_NRMN DF(_NORMAN)
- #define LY_DVRK DF(_DVORAK)
- #define LY_CLMK DF(_COLMAK)
- #if SPACE_COUNT >= 2
- #define LY_MALT DF(_MALTROFF)
- #else
- #define LY_MALT KC_NO
- #endif
- #define TG_NKRO MAGIC_TOGGLE_NKRO
- #define KC_PTT KC_F24
- #define MS_MID KC_MS_BTN3
- #define FX(x) (EFFECT + x)
- #define CTL_ESC CTL_T(KC_ESC)
- #define US_ENT RCTL_T(KC_ENT)
- #define US_MINS RCTL_T(KC_QUOT)
- #define US_BSLS LCA_T(KC_BSLS)
- #define US_SCLN TD(TD_SEMICOLON)
- #define US_GRV TD(TD_GRAVE)
- #define US_QUOT TD(TD_QUOTE)
- #define US_TAB C_S_T(KC_TAB)
- #define SH_LBRC LSFT_T(KC_LBRC)
- #define SH_RBRC RSFT_T(KC_RBRC)
- #define MLT_E LT(_NUM, KC_E)
- #ifndef SPACE_COUNT
- #define SPACE_COUNT 1
- #endif
- #if (SPACE_COUNT == 1)
- #define KC_SPC1 LT(_NAV, KC_SPC)
- #define KC_SPC2 XXXXXXX
- #define KC_SPC3 XXXXXXX
- #define NV_SPC1 _______
- #define NV_SPC2 _______
- #define NV_SPC3 _______
- #define NM_SPC1 _______
- #define NM_SPC2 _______
- #define NM_SPC3 _______
- #elif (SPACE_COUNT == 2)
- #define KC_SPC1 LT(_NAV,KC_SPC)
- #define KC_SPC2 LT(_NUM,KC_ENT)
- #define NV_SPC1 KC_SPC
- #define NV_SPC2 KC_ENT
- #define NM_SPC1 KC_0
- #define NM_SPC2 KC_SPC
- #define KC_SPC3 XXXXXXX
- #define NV_SPC3 XXXXXXX
- #define NM_SPC3 XXXXXXX
- #elif (SPACE_COUNT == 3)
- #ifdef SWAP_HANDS_ENABLE
- #define KC_SPC1 SH_T(KC_BSPC)
- #else
- #define KC_SPC1 KC_BSPC
- #endif
- #define KC_SPC2 LT(_NUM,KC_ENT)
- #define KC_SPC3 LT(_NAV,KC_SPC)
- #define NV_SPC1 KC_SPC
- #define NV_SPC2 KC_ENT
- #define NV_SPC3 KC_SPC
- #define NM_SPC1 KC_SPC
- #define NM_SPC2 XXXXXXX
- #define NM_SPC3 KC_0
- #else
- #error "Unsupported space count:" SPACE_COUNT
- #endif
- #ifndef ZEAL_RGB
- #define BR_INC KC_NO
- #define BR_DEC KC_NO
- #define EF_INC KC_NO
- #define EF_DEC KC_NO
- #define ES_INC KC_NO
- #define ES_DEC KC_NO
- #define H1_INC KC_NO
- #define H1_DEC KC_NO
- #define S1_INC KC_NO
- #define S1_DEC KC_NO
- #define H2_INC KC_NO
- #define H2_DEC KC_NO
- #define S2_INC KC_NO
- #define S2_DEC KC_NO
- #define FN_MO13 KC_NO
- #define FN_MO2 KC_NO
- #endif
- #ifndef TEMPLATE
- #define _X_ KC_NO
- #define TEMPLATE( \
- KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KJ6, \
- KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, \
- KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \
- KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, KA5, \
- KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1 \
- ) TEMPLATE_TKL ( \
- KJ6, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, KA5, \
- KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, _X_, _X_, _X_, \
- KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, _X_, _X_, _X_, \
- KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \
- KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, _X_, \
- KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1, _X_, _X_, _X_ \
- )
- #endif
- #ifndef TEMPLATE_TKL
- #define TEMPLATE_TKL( \
- KJ6, KI4, KH4, KH2, KH6, KA7, KE6, KD2, KD4, KB4, KB7, KB6, KB0, KC7, KC5, KA5, \
- KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KL4, KO4, KQ4, \
- KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, KK4, KO7, KQ7, \
- KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \
- KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, KO6, \
- KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1, KO0, KK0, KL0 \
- ) TEMPLATE( \
- KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KJ6, \
- KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, \
- KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \
- KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, KA5, \
- KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1 \
- )
- #endif
- #ifndef TEMPLATE_ALT
- #define TEMPLATE_ALT TEMPLATE
- #endif
- #ifndef TEMPLATE_NUM
- #define TEMPLATE_NUM TEMPLATE_ALT
- #endif
- #ifndef TEMPLATE_NAV
- #define TEMPLATE_NAV TEMPLATE_ALT
- #endif
- #ifndef TEMPLATE_ADJUST
- #define TEMPLATE_ADJUST TEMPLATE_ALT
- #endif
- #ifndef TEMPLATE_RESET
- #define TEMPLATE_RESET TEMPLATE_ALT( \
- RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET , \
- RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET , \
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
- RESET , XXXXXXX, XXXXXXX, XXXXXXX, RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX)
- #endif
- #endif
|