5 // Each layer gets a name for readability, which is then used in the keymap matrix below.
6 enum userspace_custom_layers {
16 enum userspace_custom_keycodes {
24 // Transparent macro to indicate that this spot is already being pressed
25 // to activate this layer
26 #define _LAYER_ KC_TRNS
28 // == Dual-action keys on most of the modifiers
29 #define CTL_ESC CTL_T(KC_ESC)
30 #define CTL_GRV CTL_T(KC_GRV)
31 #define ALT_TAB ALT_T(KC_TAB)
32 #define SFT_SPC SFT_T(KC_SPC)
34 // == Macro keys for commonly used apps
36 // Move one conversation up/down
37 #define SLACKUP LALT(LSFT(KC_UP))
38 #define SLACKDN LALT(LSFT(KC_DOWN))
40 // -- Browser and OS X
41 // Activate one tab left/right
42 #define TAB_LFT LGUI(LSFT(KC_LBRC))
43 #define TAB_RGT LGUI(LSFT(KC_RBRC))
44 // Go back/forward in history
45 #define BWSR_BK LGUI(KC_LBRC)
46 #define BWSR_FW LGUI(KC_RBRC)
48 // -- Screen management
49 // Make window fill the left/right side
50 #define SCR_LFT HYPR(KC_LEFT)
51 #define SCR_RGT HYPR(KC_RGHT)
52 // Make window fill the whole monitor
53 #define SCR_FUL HYPR(KC_F)
55 // == Extended alpha layer toggles
57 // Pressing U opens up the LWR layer (numpad)
58 #define LWR_U LT(LWR, KC_U)
59 // Pressing H opens up the RSE layer (brackets/parens)
60 #define RSE_H LT(RSE, KC_H)
63 // Pressing F opens up the LWR layer (numpad)
64 #define LWR_F LT(LWR, KC_F)
65 // Pressing J opens up the RSE layer (brackets/parens)
66 #define RSE_J LT(RSE, KC_J)
68 // -- LFT layer (Works on both Qwerty and Dvorak)
69 // Pressing Back space or Enter opens up the LFT layer (media/navigation)
70 #define LFT_BK LT(LFT, KC_BSPC)
71 #define LFT_ENT LT(LFT, KC_ENT)