3 * @Date: 2018-04-30 14:32:13
4 * @Last Modified by: hailbreno
5 * @Last Modified time: 2018-05-03 11:19:34
8 #include QMK_KEYBOARD_H
12 extern keymap_config_t keymap_config;
34 * ,-----------------------------------------------------------------------------------------.
35 * | | | | | | | | | | | | | | | |
36 * |-----------------------------------------------------------------------------------------+
37 * | | | | | | | | | | | | | | |
38 * |-----------------------------------------------------------------------------------------+
39 * | | | | | | | | | | | | | |
40 * |-----------------------------------------------------------------------------------------+
41 * | | | | | | | | | | | | | | |
42 * |-----------------------------------------------------------------------------------------+
43 * | | | | | | | | | | | |
44 * `-----------------------------------------------------------------------------------------'
46 [LAYOUT] = LAYOUT_all(
47 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
48 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
49 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
50 _______, X, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
51 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
54 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
57 * ,-----------------------------------------------------------------------------------------.
58 * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ~ |
59 * |-----------------------------------------------------------------------------------------+
60 * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Del |
61 * |-----------------------------------------------------------------------------------------+
62 * | Caps | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
63 * |-----------------------------------------------------------------------------------------+
64 * | Shift | Z | X | C | V | B | N | M | , | . | / |Shift| Up | Bl |
65 * |-----------------------------------------------------------------------------------------+
66 * | Ctrl | Alt | Gui | Backspace | Fn2 | Space | Alt | App | Left| Down|Right|
67 * `-----------------------------------------------------------------------------------------'
69 [_QWERTY] = LAYOUT_all(
70 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
71 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_DEL,
72 LT(_FUNC,KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
73 KC_LSPO, X, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, KC_UP, RGB,
74 KC_LCTL, KC_LALT, KC_LGUI, KC_BSPC, FUNC2, KC_SPC, KC_RALT, KC_APP, KC_LEFT, KC_DOWN, KC_RGHT),
77 * ,-----------------------------------------------------------------------------------------.
78 * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | ~ | Del |
79 * |-----------------------------------------------------------------------------------------+
80 * | Tab | Q | W | F | P | G | J | L | U | Y | ; | [ | ] | \ |
81 * |-----------------------------------------------------------------------------------------+
82 * | Caps | A | R | S | T | D | H | N | E | I | O | ' | Enter |
83 * |-----------------------------------------------------------------------------------------+
84 * | Shift | Z | X | C | V | B | K | M | , | . | / |Shift| Up | Bl |
85 * |-----------------------------------------------------------------------------------------+
86 * | Ctrl | Alt | Gui | Backspace | Fn2 | Space | Alt | App | Left| Down|Right|
87 * `-----------------------------------------------------------------------------------------'
89 [_COLEMAK] = LAYOUT_all(
90 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
91 KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_DEL,
92 LT(_FUNC,KC_CAPS), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT,
93 KC_LSPO, X, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, KC_UP, RGB,
94 KC_LCTL, KC_LALT, KC_LGUI, KC_BSPC, FUNC2, KC_SPC, KC_RALT, KC_APP, KC_LEFT, KC_DOWN, KC_RGHT),
97 * ,-----------------------------------------------------------------------------------------.
98 * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | [ | ] | ~ | Del |
99 * |-----------------------------------------------------------------------------------------+
100 * | Tab | " | , | . | P | Y | F | G | C | R | L | / | = | \ |
101 * |-----------------------------------------------------------------------------------------+
102 * | Bckspc | A | O | E | U | I | D | H | T | N | S | - | Enter |
103 * |-----------------------------------------------------------------------------------------+
104 * | Shift | ; | Q | J | K | X | B | M | W | V | Z |Shift| Up | Bl |
105 * |-----------------------------------------------------------------------------------------+
106 * | Ctrl | Alt | Gui | Backspace | Fn2 | Space | Alt | App | Left| Down|Right|
107 * `-----------------------------------------------------------------------------------------'
109 [_DVORAK] = LAYOUT_all(
110 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_BSLS, KC_GRV,
111 KC_TAB, KC_QUOTE, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_DEL,
112 LT(_FUNC,KC_CAPS), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT,
113 KC_LSPO, X, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSPC, KC_UP, RGB,
114 KC_LCTL, KC_LALT, KC_LGUI, KC_BSPC, FUNC2, KC_SPC, KC_RALT, KC_APP, KC_LEFT, KC_DOWN, KC_RGHT),
117 * ,-----------------------------------------------------------------------------------------.
118 * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Prnt| Ins |
119 * |-----------------------------------------------------------------------------------------+
120 * | | | | | | | | | Up | | | | | Bspc |
121 * |-----------------------------------------------------------------------------------------+
122 * | | | | | | | | Left| Down| Rght| | | |
123 * |-----------------------------------------------------------------------------------------+
124 * | | | | | | | | | | | | | PgUp| |
125 * |-----------------------------------------------------------------------------------------+
126 * | | | | | | | | | Home| PgDn| End |
127 * `-----------------------------------------------------------------------------------------'
129 [_FUNC] = LAYOUT_all(
130 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_INS,
131 _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_UP, KC_PGDN, KC_CIRC, _______, _______, KC_BSPC,
132 _______, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_TILD, _______,
133 _______, X, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, _______, KC_PGUP, _______,
134 _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END),
137 * ,-----------------------------------------------------------------------------------------.
138 * | | | | | | | | | | | | | | | |
139 * |-----------------------------------------------------------------------------------------+
140 * | | | | | | | | | | | | | | |
141 * |-----------------------------------------------------------------------------------------+
142 * | | | | | | | | | | | | | |
143 * |-----------------------------------------------------------------------------------------+
144 * | | | | | | | | | | | | | | |
145 * |-----------------------------------------------------------------------------------------+
146 * | | | | | | | | | | | |
147 * `-----------------------------------------------------------------------------------------'
149 [_FUNC2] = LAYOUT_all(
150 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
151 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
152 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
153 _______, X, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
154 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
157 * ,-----------------------------------------------------------------------------------------.
158 * | | | | | | | | | | | | | | | |
159 * |-----------------------------------------------------------------------------------------+
160 * | | | | | | | | | | | | | | |
161 * |-----------------------------------------------------------------------------------------+
162 * | | | | | | | | | | | | | |
163 * |-----------------------------------------------------------------------------------------+
164 * | | | | | | | | | | | | | Tog | |
165 * |-----------------------------------------------------------------------------------------+
166 * | | | | | | | | | | | |
167 * `-----------------------------------------------------------------------------------------'
170 _______, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, _______, _______, _______, _______, _______, _______,
171 _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
172 _______, RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______,
173 _______, X, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______,
174 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
176 /* Adjust (Func + Func2)
177 * ,-----------------------------------------------------------------------------------------.
178 * | | | | | | | | | | | | | | |Reset|
179 * |-----------------------------------------------------------------------------------------+
180 * | | | | | | | | | | | | | | |
181 * |-----------------------------------------------------------------------------------------+
182 * | | | | | | | | | | | | | |
183 * |-----------------------------------------------------------------------------------------+
184 * | | | | | | | | | | | | | | |
185 * |-----------------------------------------------------------------------------------------+
186 * | | | | | | | | |Qwerty|Colemk|Dvorak|
187 * `-----------------------------------------------------------------------------------------'
189 [_ADJUST] = LAYOUT_all(
190 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET,
191 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
192 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
193 _______, X, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
194 _______, _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK),
198 float plover_song[][2] = SONG(PLOVER_SOUND);
199 float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND);
202 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
205 if (record->event.pressed) {
206 set_single_persistent_default_layer(_QWERTY);
211 if (record->event.pressed) {
212 set_single_persistent_default_layer(_COLEMAK);
217 if (record->event.pressed) {
218 set_single_persistent_default_layer(_DVORAK);
223 if (record->event.pressed) {
225 update_tri_layer(_FUNC, _FUNC2, _ADJUST);
228 update_tri_layer(_FUNC, _FUNC2, _ADJUST);
233 if (record->event.pressed) {
235 update_tri_layer(_FUNC, _FUNC2, _ADJUST);
238 update_tri_layer(_FUNC, _FUNC2, _ADJUST);
243 if (record->event.pressed) {