1 #include QMK_KEYBOARD_H
5 #include "split_util.h"
8 extern keymap_config_t keymap_config;
9 extern uint8_t is_master;
12 * ,------------------------------------------------. ,------------------------------------------------.
13 * | ` | | | | | | | | | | | | | | BkSp |
14 * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
15 * | Tab | | | | | | | | | | | | | | \ |
16 * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
17 * | Esc | | | | | | | | | | | | | | ' |
18 * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
19 * | Sft( | | | | | | | | | | | | | | Sft) |
20 * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
21 * | Ctrl | Win | Win | Alt | FN | Space| RGB | | FN | FN | - | = | Down | PgUp | PgDn |
22 * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
23 * | Space| Bksp | | Enter| Space|
24 * `-------------' `--------=----'
26 #define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__)
27 #define _BASE_LAYOUT( \
28 _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, \
29 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, \
30 _20, _21, _22, _23, _24, _25, _26, _27, _28, _29 \
33 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, RGB_MOD, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
34 KC_TAB, _00, _01, _02, _03, _04, KC_LBRC, KC_RBRC, _05, _06, _07, _08, _09, KC_BSLS, \
35 FN_ESC, _10, _11, _12, _13, _14, RGB_SAI, RGB_VAI, _15, _16, _17, _18, _19, KC_QUOT, \
36 KC_LSPO, _20, _21, _22, _23, _24, RGB_SAD, RGB_VAD, _25, _26, _27, _28, _29, KC_RSPC, \
37 KC_LCTL, KC_LGUI, KC_LGUI, KC_LALT, FN, KC_SPC, FN, FN, KC_SPC, KC_MINS, KC_EQL, KC_DOWN, KC_PGUP, KC_PGDN, \
38 KC_SPC, KC_BSPC, KC_ENT, KC_SPC \
40 #define BASE_LAYOUT(...) _BASE_LAYOUT(__VA_ARGS__)
42 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
44 [_QWERTY] = BASE_LAYOUT( \
45 _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, \
46 _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, \
47 _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ \
50 [_COLEMAK] = BASE_LAYOUT( \
51 _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, \
52 _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, \
53 _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ \
56 [_COLEMAK_DH] = BASE_LAYOUT( \
57 ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________, \
58 ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________, \
59 ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________ \
62 [_FN] = EXPAND_LAYOUT( \
63 ________________FUNCTION_L1________________, _______, KC_PSCR, ________________FUNCTION_R1________________, \
64 ________________FUNCTION_L2________________, _______, _______, ________________FUNCTION_R2________________, \
65 ________________FUNCTION_L3________________, _______, _______, ________________FUNCTION_R3________________, \
66 ________________FUNCTION_L4________________, _______, _______, ________________FUNCTION_R4________________, \
67 ________________FUNCTION_L5________________, ADJ, ADJ, ________________FUNCTION_R5________________, \
68 _______, KC_DEL, _______, _______ \
71 [_ADJ] = EXPAND_LAYOUT( \
72 _________________ADJUST_L1_________________, _______, _______, _________________ADJUST_R1_________________, \
73 _________________ADJUST_L2_________________, _______, _______, _________________ADJUST_R2_________________, \
74 _________________ADJUST_L3_________________, _______, _______, _________________ADJUST_R3_________________, \
75 _________________ADJUST_L4_________________, _______, _______, _________________ADJUST_R4_________________, \
76 _________________ADJUST_L5_________________, _______, _______, _________________ADJUST_R5_________________, \
77 _______, _______, _______, _______ \
82 void encoder_update_user(uint8_t index, bool clockwise) {
83 if (index == 0) { /* First encoder */
89 } else if (index == 1) { /* Second encoder*/