1 #include QMK_KEYBOARD_H
3 // This simple keymap is optimized for xmonad users using super as their modifier key.
4 // M(1) makes it possible to change virtual screens and swap windows between them.
6 // Each layer gets a name for readability, which is then used in the keymap matrix below.
11 const uint16_t PROGMEM keymaps
[][MATRIX_ROWS
][MATRIX_COLS
] = {
12 [_QW
] = LAYOUT_planck_grid( /* Qwerty */
13 KC_TAB
, KC_Q
, KC_W
, KC_E
, KC_R
, KC_T
, KC_Y
, KC_U
, KC_I
, KC_O
, KC_P
, KC_BSPC
,
14 KC_ESC
, KC_A
, KC_S
, KC_D
, KC_F
, KC_G
, KC_H
, KC_J
, KC_K
, KC_L
, KC_SCLN
, KC_QUOT
,
15 KC_LSFT
, KC_Z
, KC_X
, KC_C
, KC_V
, KC_B
, KC_N
, KC_M
, KC_COMM
, KC_DOT
, KC_SLSH
, KC_ENT
,
16 KC_LCTL
, KC_LALT
, KC_LGUI
, M(1), MO(_LW
), KC_SPC
, KC_SPC
, MO(_RS
), KC_LEFT
, KC_DOWN
, KC_UP
, KC_RGHT
18 [_RS
] = LAYOUT_planck_grid( /* RAISE */
19 KC_GRV
, KC_1
, KC_2
, KC_3
, KC_4
, KC_5
, KC_6
, KC_7
, KC_8
, KC_9
, KC_0
, KC_DEL
,
20 KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_MINS
, KC_EQL
, KC_LBRC
, KC_RBRC
, KC_BSLS
,
21 KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
,
22 KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
24 [_LW
] = LAYOUT_planck_grid( /* LOWER */
25 KC_TILD
, KC_EXLM
, KC_AT
, KC_HASH
, KC_DLR
, KC_PERC
, KC_CIRC
, KC_AMPR
, KC_ASTR
, KC_LPRN
, KC_RPRN
, KC_BSPC
,
26 KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_UNDS
, KC_PLUS
, KC_LCBR
, KC_RCBR
, KC_PIPE
,
27 KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_LBRC
, KC_RBRC
, KC_TRNS
,
28 KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
, KC_TRNS
32 const macro_t
*action_get_macro(keyrecord_t
*record
, uint8_t id
, uint8_t opt
)
34 // MACRODOWN only works in this function
37 if (record
->event
.pressed
) {
38 register_code(KC_RSFT
);
39 #ifdef BACKLIGHT_ENABLE
43 unregister_code(KC_RSFT
);
47 if (record
->event
.pressed
) {
48 register_code(KC_LGUI
);
51 unregister_code(KC_LGUI
);