1 #include QMK_KEYBOARD_H
3 extern keymap_config_t keymap_config;
14 enum custom_keycodes {
29 #define KC_X3 MO(_SYS)
30 #define KC_X4 MT(MOD_LSFT, KC_ENT)
32 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
34 [_QWERTY] = LAYOUT_kc(
35 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
36 TAB , Q , W , E , R , T , Y , U , I , O , P ,MINS,
37 //|----+----+----+----+----+----| |----+----+----+----+----+----|
38 BSPC, A , S , D , F , G , H , J , K , L ,SCLN,QUOT,
39 //|----+----+----+----+----+----| |----+----+----+----+----+----|
40 LSFT, Z , X , C , V , B , N , M ,COMM,DOT ,SLSH, X4 ,
41 //|----+----+----+----+----+----| |----+----+----+----+----+----|
42 X3 ,LCTL,LALT,LGUI, X1 ,LALT, SPC , X2 ,LEFT,DOWN, UP ,RGHT
43 //`----+----+----+----+----+----' `----+----+----+----+----+----'
46 [_COLEMAK] = LAYOUT_kc(
47 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
48 TAB , Q , W , F , P , G , J , L , U , Y ,SCLN,MINS,
49 //|----+----+----+----+----+----| |----+----+----+----+----+----|
50 BSPC, A , R , S , T , D , H , N , E , I , O ,QUOT,
51 //|----+----+----+----+----+----| |----+----+----+----+----+----|
52 LSFT, Z , X , C , V , B , K , M ,COMM,DOT ,SLSH, X4 ,
53 //|----+----+----+----+----+----| |----+----+----+----+----+----|
54 X3 ,LCTL,LALT,LGUI, X1 ,LALT, SPC , X2 ,LEFT,DOWN, UP ,RGHT
55 //`----+----+----+----+----+----' `----+----+----+----+----+----'
59 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
60 TAB , Q , W , E , R , T , Y , U , I , O , P ,MINS,
61 //|----+----+----+----+----+----| |----+----+----+----+----+----|
62 ESC , A , S , D , F , G , H , J , K , L ,SCLN,QUOT,
63 //|----+----+----+----+----+----| |----+----+----+----+----+----|
64 LSFT, Z , X , C , V , B , N , M ,COMM,DOT ,SLSH, X4 ,
65 //|----+----+----+----+----+----| |----+----+----+----+----+----|
66 X3 ,LCTL,LALT,LGUI, X2 , SPC, SPC , X1 ,LEFT,DOWN, UP ,RGHT
67 //`----+----+----+----+----+----' `----+----+----+----+----+----'
71 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
72 TILD,EXLM, AT ,HASH,DLR ,PERC, CIRC,AMPR,ASTR,LPRN,RPRN, DEL,
73 //|----+----+----+----+----+----| |----+----+----+----+----+----|
74 GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,UNDS,
75 //|----+----+----+----+----+----| |----+----+----+----+----+----|
76 , ,MPRV,MNXT,MPLY, , ,VOLD,VOLU,MUTE, , ,
77 //|----+----+----+----+----+----| |----+----+----+----+----+----|
78 , , , , ,LALT, , , , , ,
79 //`----+----+----+----+----+----' `----+----+----+----+----+----'
83 //,----+------+----+----+----+----. ,----+----+----+----+----+----.
84 ESC , , , UP , , , PGUP,HOME,LPRN,RPRN,BSLS,PIPE,
85 //|----+------+----+----+----+----| |----+----+----+----+----+----|
86 CAPS,SELECT,LEFT,DOWN,RGHT,DEL , PGDN, END,LBRC,RBRC,MINS,UNDS,
87 //|----+------+----+----+----+----| |----+----+----+----+----+----|
88 LSFT, UNDO ,CUT ,COPY,PASTE, , LEFT,RGHT,LCBR,RCBR,PLUS,PEQL,
89 //|----+------+----+----+----+----| |----+----+----+----+----+----|
90 , , , , ,LALT, , , , , ,
91 //`----+------+----+----+----+----' `----+----+----+----+----+----'
95 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
96 , , , , , , , , , , , ,
97 //|----+----+----+----+----+----| |----+----+----+----+----+----|
98 F12 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,
99 //|----+----+----+----+----+----| |----+----+----+----+----+----|
100 , , , , , , , , , , , ,
101 //|----+----+----+----+----+----| |----+----+----+----+----+----|
102 , , , , , , , , , , ,
103 //`----+----+----+----+----+----' `----+----+----+----+----+----'
106 /* Adjust (Lower + Raise)
107 * ,-----------------------------------------------------------------------------------.
108 * | | Reset|RGB Tg|RGB Md|Hue Up|Hue Dn|Sat Up|Sat Dn|Val Up|Val Dn| | |
109 * |------+------+------+------+------+-------------+------+------+------+------+------|
110 * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
111 * |------+------+------+------+------+------|------+------+------+------+------+------|
112 * | | | | | | | | | | | | |
113 * |------+------+------+------+------+------+------+------+------+------+------+------|
114 * | | | | | | | | | | | |
115 * `-----------------------------------------------------------------------------------'
117 [_ADJUST] = LAYOUT_ortho_4x12( \
118 _______, RESET , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, _______, \
119 _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, GAME , _______, _______, \
120 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
121 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
127 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
130 if (record->event.pressed) {
131 set_single_persistent_default_layer(_QWERTY);
136 if (record->event.pressed) {
137 set_single_persistent_default_layer(_COLEMAK);
142 if (record->event.pressed) {
143 set_single_persistent_default_layer(_GAME);
148 if (record->event.pressed) {
150 update_tri_layer(_NUMB, _CODE, _ADJUST);
153 update_tri_layer(_NUMB, _CODE, _ADJUST);
158 if (record->event.pressed) {
160 update_tri_layer(_NUMB, _CODE, _ADJUST);
163 update_tri_layer(_NUMB, _CODE, _ADJUST);
168 if (record->event.pressed) {