aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/minidox/keymaps/dustypomerleau/keymap.c104
1 files changed, 35 insertions, 69 deletions
diff --git a/keyboards/minidox/keymaps/dustypomerleau/keymap.c b/keyboards/minidox/keymaps/dustypomerleau/keymap.c
index d0eab98b4..9cfbbfc6c 100644
--- a/keyboards/minidox/keymaps/dustypomerleau/keymap.c
+++ b/keyboards/minidox/keymaps/dustypomerleau/keymap.c
@@ -5,7 +5,7 @@
5 5
6extern keymap_config_t keymap_config; 6extern keymap_config_t keymap_config;
7 7
8enum custom_layers { 8enum my_layers {
9 _CMK_DHM, 9 _CMK_DHM,
10 _QWERTY, 10 _QWERTY,
11 _SYS, 11 _SYS,
@@ -15,7 +15,7 @@ enum custom_layers {
15 _SYM 15 _SYM
16}; 16};
17 17
18enum custom_keycodes { 18enum my_keycodes {
19 CMK_DHM = SAFE_RANGE, 19 CMK_DHM = SAFE_RANGE,
20 QWERTY, 20 QWERTY,
21 SYS, 21 SYS,
@@ -25,25 +25,21 @@ enum custom_keycodes {
25 SYM 25 SYM
26}; 26};
27 27
28typedef struct { 28enum td_keycodes {
29 bool is_press_action; 29 ALT_OP,
30 int state;
31} tap;
32
33enum {
34 SINGLE_TAP = 1,
35 SINGLE_HOLD = 2,
36 DOUBLE_SINGLE_TAP = 3
37};
38
39enum {
40 ALT_OP = 0,
41 CTL_CCB, 30 CTL_CCB,
42 GUI_CP, 31 GUI_CP,
43 SFT_OCB, 32 SFT_OCB,
44 SFT_PLS 33 SFT_PLS
45}; 34};
46 35
36typedef enum {
37 SINGLE_TAP,
38 SINGLE_HOLD,
39 DOUBLE_SINGLE_TAP
40} td_state_t;
41
42static td_state_t td_state;
47int cur_dance (qk_tap_dance_state_t *state); 43int cur_dance (qk_tap_dance_state_t *state);
48void altop_finished (qk_tap_dance_state_t *state, void *user_data); 44void altop_finished (qk_tap_dance_state_t *state, void *user_data);
49void altop_reset (qk_tap_dance_state_t *state, void *user_data); 45void altop_reset (qk_tap_dance_state_t *state, void *user_data);
@@ -153,7 +149,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
153 * If you use QWERTY + the Vanilla numbers primarily, change NUMLK_E to NUMLK_N here. 149 * If you use QWERTY + the Vanilla numbers primarily, change NUMLK_E to NUMLK_N here.
154 * 150 *
155 * ,----------------------------------. ,----------------------------------. 151 * ,----------------------------------. ,----------------------------------.
156 * | RESET|DEBUG |QWERTY|CMKDHM| | | | VOL--| VOL++| | | 152 * | RESET|DEBUG |QWERTY|CMKDHM| | | | VOL--| VOL++|BRITE-|BRITE+|
157 * |------+------+------+------+------| |------+------+------+------+------| 153 * |------+------+------+------+------| |------+------+------+------+------|
158 * | SHIFT| CTRL | ALT | GUI |NAV LK| | POWER| VOL- | VOL+ | MUTE | MPLY | 154 * | SHIFT| CTRL | ALT | GUI |NAV LK| | POWER| VOL- | VOL+ | MUTE | MPLY |
159 * |------+------+------+------+------| |------+------+------+------+------| 155 * |------+------+------+------+------| |------+------+------+------+------|
@@ -201,7 +197,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
201 * |------+------+------+------+------| |------+------+------+------+------| 197 * |------+------+------+------+------| |------+------+------+------+------|
202 * | SFT/7| CTL/5| ALT/3| GUI/1| 9 | | 8 | GUI/0| ALT/2| CTL/4| SFT/6| 198 * | SFT/7| CTL/5| ALT/3| GUI/1| 9 | | 8 | GUI/0| ALT/2| CTL/4| SFT/6|
203 * |------+------+------+------+------| |------+------+------+------+------| 199 * |------+------+------+------+------| |------+------+------+------+------|
204 * | | | F11 | F12 | BSPC | | DEL |NUM LK| | | | 200 * | F11 | F12 | - | SPACE| BSPC | | DEL |NUM LK| | | / |
205 * `----------------------------------' `----------------------------------' 201 * `----------------------------------' `----------------------------------'
206 * ,--------------------. ,--------------------. 202 * ,--------------------. ,--------------------.
207 * | | TAB | | | | | | 203 * | | TAB | | | | | |
@@ -212,7 +208,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
212[_NUM_E] = LAYOUT( \ 208[_NUM_E] = LAYOUT( \
213 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \ 209 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \
214 SFT_7, CTRL_5, ALT_3, GUI_1, KC_9, KC_8, GUI_0, ALT_2, CTRL_4, SFT_6, \ 210 SFT_7, CTRL_5, ALT_3, GUI_1, KC_9, KC_8, GUI_0, ALT_2, CTRL_4, SFT_6, \
215 KC_F11, KC_F12, KC_MINS, KC_SLSH, KC_BSPC, KC_DEL, NUMLK_E, _______, _______, _______, \ 211 KC_F11, KC_F12, KC_MINS, KC_SPC, KC_BSPC, KC_DEL, NUMLK_E, _______, _______, KC_SLSH, \
216 _______, KC_TAB, KC_ESC, _______, _______, _______ \ 212 _______, KC_TAB, KC_ESC, _______, _______, _______ \
217), 213),
218 214
@@ -223,7 +219,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
223 * |------+------+------+------+------| |------+------+------+------+------| 219 * |------+------+------+------+------| |------+------+------+------+------|
224 * | SFT/1| CTL/2| ALT/3| GUI/4| 5 | | 6 | GUI/7| ALT/8| CTL/9| SFT/0| 220 * | SFT/1| CTL/2| ALT/3| GUI/4| 5 | | 6 | GUI/7| ALT/8| CTL/9| SFT/0|
225 * |------+------+------+------+------| |------+------+------+------+------| 221 * |------+------+------+------+------| |------+------+------+------+------|
226 * | | | F11 | F12 | BSPC | | DEL |NUM LK| | | | 222 * | F11 | F12 | - | SPACE| BSPC | | DEL |NUM LK| | | / |
227 * `----------------------------------' `----------------------------------' 223 * `----------------------------------' `----------------------------------'
228 * ,--------------------. ,--------------------. 224 * ,--------------------. ,--------------------.
229 * | | TAB | | | | | | 225 * | | TAB | | | | | |
@@ -232,10 +228,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
232 * `------' `------' 228 * `------' `------'
233 */ 229 */
234[_NUM_N] = LAYOUT( \ 230[_NUM_N] = LAYOUT( \
235 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \ 231 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \
236 SFT_1, CTRL_2, ALT_3, GUI_4, KC_5, KC_6, GUI_7, ALT_8, CTRL_9, SFT_0, \ 232 SFT_1, CTRL_2, ALT_3, GUI_4, KC_5, KC_6, GUI_7, ALT_8, CTRL_9, SFT_0, \
237 KC_F11, KC_F12, KC_MINS, KC_SLSH, KC_BSPC, KC_DEL, NUMLK_N, _______, _______, _______, \ 233 KC_F11, KC_F12, KC_MINS, KC_SPC, KC_BSPC, KC_DEL, NUMLK_N, _______, _______, KC_SLSH, \
238 _______, KC_TAB, KC_ESC, _______, _______, _______ \ 234 _______, KC_TAB, KC_ESC, _______, _______, _______ \
239), 235),
240 236
241 237
@@ -286,17 +282,12 @@ int cur_dance (qk_tap_dance_state_t *state) {
286 else return SINGLE_HOLD; 282 else return SINGLE_HOLD;
287 } 283 }
288 if (state->count == 2) return DOUBLE_SINGLE_TAP; 284 if (state->count == 2) return DOUBLE_SINGLE_TAP;
289 else return 8; 285 else return 3;
290} 286}
291 287
292static tap altop_tap_state = {
293 .is_press_action = true,
294 .state = 0
295};
296
297void altop_finished (qk_tap_dance_state_t *state, void *user_data) { 288void altop_finished (qk_tap_dance_state_t *state, void *user_data) {
298 altop_tap_state.state = cur_dance(state); 289 td_state = cur_dance(state);
299 switch (altop_tap_state.state) { 290 switch (td_state) {
300 case SINGLE_TAP: 291 case SINGLE_TAP:
301 register_mods(MOD_BIT(KC_LSFT)); 292 register_mods(MOD_BIT(KC_LSFT));
302 register_code(KC_9); 293 register_code(KC_9);
@@ -312,7 +303,7 @@ void altop_finished (qk_tap_dance_state_t *state, void *user_data) {
312} 303}
313 304
314void altop_reset (qk_tap_dance_state_t *state, void *user_data) { 305void altop_reset (qk_tap_dance_state_t *state, void *user_data) {
315 switch (altop_tap_state.state) { 306 switch (td_state) {
316 case SINGLE_TAP: 307 case SINGLE_TAP:
317 unregister_code(KC_9); 308 unregister_code(KC_9);
318 unregister_mods(MOD_BIT(KC_LSFT)); 309 unregister_mods(MOD_BIT(KC_LSFT));
@@ -324,17 +315,11 @@ void altop_reset (qk_tap_dance_state_t *state, void *user_data) {
324 unregister_code(KC_9); 315 unregister_code(KC_9);
325 unregister_mods(MOD_BIT(KC_LSFT)); 316 unregister_mods(MOD_BIT(KC_LSFT));
326 } 317 }
327 altop_tap_state.state = 0;
328} 318}
329 319
330static tap ctlccb_tap_state = {
331 .is_press_action = true,
332 .state = 0
333};
334
335void ctlccb_finished (qk_tap_dance_state_t *state, void *user_data) { 320void ctlccb_finished (qk_tap_dance_state_t *state, void *user_data) {
336 ctlccb_tap_state.state = cur_dance(state); 321 td_state = cur_dance(state);
337 switch (ctlccb_tap_state.state) { 322 switch (td_state) {
338 case SINGLE_TAP: 323 case SINGLE_TAP:
339 register_mods(MOD_BIT(KC_LSFT)); 324 register_mods(MOD_BIT(KC_LSFT));
340 register_code(KC_RBRC); 325 register_code(KC_RBRC);
@@ -350,7 +335,7 @@ void ctlccb_finished (qk_tap_dance_state_t *state, void *user_data) {
350} 335}
351 336
352void ctlccb_reset (qk_tap_dance_state_t *state, void *user_data) { 337void ctlccb_reset (qk_tap_dance_state_t *state, void *user_data) {
353 switch (ctlccb_tap_state.state) { 338 switch (td_state) {
354 case SINGLE_TAP: 339 case SINGLE_TAP:
355 unregister_code(KC_RBRC); 340 unregister_code(KC_RBRC);
356 unregister_mods(MOD_BIT(KC_LSFT)); 341 unregister_mods(MOD_BIT(KC_LSFT));
@@ -362,17 +347,11 @@ void ctlccb_reset (qk_tap_dance_state_t *state, void *user_data) {
362 unregister_code(KC_RBRC); 347 unregister_code(KC_RBRC);
363 unregister_mods(MOD_BIT(KC_LSFT)); 348 unregister_mods(MOD_BIT(KC_LSFT));
364 } 349 }
365 ctlccb_tap_state.state = 0;
366} 350}
367 351
368static tap guicp_tap_state = {
369 .is_press_action = true,
370 .state = 0
371};
372
373void guicp_finished (qk_tap_dance_state_t *state, void *user_data) { 352void guicp_finished (qk_tap_dance_state_t *state, void *user_data) {
374 guicp_tap_state.state = cur_dance(state); 353 td_state = cur_dance(state);
375 switch (guicp_tap_state.state) { 354 switch (td_state) {
376 case SINGLE_TAP: 355 case SINGLE_TAP:
377 register_mods(MOD_BIT(KC_LSFT)); 356 register_mods(MOD_BIT(KC_LSFT));
378 register_code(KC_0); 357 register_code(KC_0);
@@ -388,7 +367,7 @@ void guicp_finished (qk_tap_dance_state_t *state, void *user_data) {
388} 367}
389 368
390void guicp_reset (qk_tap_dance_state_t *state, void *user_data) { 369void guicp_reset (qk_tap_dance_state_t *state, void *user_data) {
391 switch (guicp_tap_state.state) { 370 switch (td_state) {
392 case SINGLE_TAP: 371 case SINGLE_TAP:
393 unregister_code(KC_0); 372 unregister_code(KC_0);
394 unregister_mods(MOD_BIT(KC_LSFT)); 373 unregister_mods(MOD_BIT(KC_LSFT));
@@ -400,17 +379,11 @@ void guicp_reset (qk_tap_dance_state_t *state, void *user_data) {
400 unregister_code(KC_0); 379 unregister_code(KC_0);
401 unregister_mods(MOD_BIT(KC_LSFT)); 380 unregister_mods(MOD_BIT(KC_LSFT));
402 } 381 }
403 guicp_tap_state.state = 0;
404} 382}
405 383
406static tap sftocb_tap_state = {
407 .is_press_action = true,
408 .state = 0
409};
410
411void sftocb_finished (qk_tap_dance_state_t *state, void *user_data) { 384void sftocb_finished (qk_tap_dance_state_t *state, void *user_data) {
412 sftocb_tap_state.state = cur_dance(state); 385 td_state = cur_dance(state);
413 switch (sftocb_tap_state.state) { 386 switch (td_state) {
414 case SINGLE_TAP: 387 case SINGLE_TAP:
415 register_mods(MOD_BIT(KC_LSFT)); 388 register_mods(MOD_BIT(KC_LSFT));
416 register_code(KC_LBRC); 389 register_code(KC_LBRC);
@@ -426,7 +399,7 @@ void sftocb_finished (qk_tap_dance_state_t *state, void *user_data) {
426} 399}
427 400
428void sftocb_reset (qk_tap_dance_state_t *state, void *user_data) { 401void sftocb_reset (qk_tap_dance_state_t *state, void *user_data) {
429 switch (sftocb_tap_state.state) { 402 switch (td_state) {
430 case SINGLE_TAP: 403 case SINGLE_TAP:
431 unregister_code(KC_LBRC); 404 unregister_code(KC_LBRC);
432 unregister_mods(MOD_BIT(KC_LSFT)); 405 unregister_mods(MOD_BIT(KC_LSFT));
@@ -438,17 +411,11 @@ void sftocb_reset (qk_tap_dance_state_t *state, void *user_data) {
438 unregister_code(KC_LBRC); 411 unregister_code(KC_LBRC);
439 unregister_mods(MOD_BIT(KC_LSFT)); 412 unregister_mods(MOD_BIT(KC_LSFT));
440 } 413 }
441 sftocb_tap_state.state = 0;
442} 414}
443 415
444static tap sftpls_tap_state = {
445 .is_press_action = true,
446 .state = 0
447};
448
449void sftpls_finished (qk_tap_dance_state_t *state, void *user_data) { 416void sftpls_finished (qk_tap_dance_state_t *state, void *user_data) {
450 sftpls_tap_state.state = cur_dance(state); 417 td_state = cur_dance(state);
451 switch (sftpls_tap_state.state) { 418 switch (td_state) {
452 case SINGLE_TAP: 419 case SINGLE_TAP:
453 register_mods(MOD_BIT(KC_LSFT)); 420 register_mods(MOD_BIT(KC_LSFT));
454 register_code(KC_EQL); 421 register_code(KC_EQL);
@@ -464,7 +431,7 @@ void sftpls_finished (qk_tap_dance_state_t *state, void *user_data) {
464} 431}
465 432
466void sftpls_reset (qk_tap_dance_state_t *state, void *user_data) { 433void sftpls_reset (qk_tap_dance_state_t *state, void *user_data) {
467 switch (sftpls_tap_state.state) { 434 switch (td_state) {
468 case SINGLE_TAP: 435 case SINGLE_TAP:
469 unregister_code(KC_EQL); 436 unregister_code(KC_EQL);
470 unregister_mods(MOD_BIT(KC_LSFT)); 437 unregister_mods(MOD_BIT(KC_LSFT));
@@ -476,7 +443,6 @@ void sftpls_reset (qk_tap_dance_state_t *state, void *user_data) {
476 unregister_code(KC_EQL); 443 unregister_code(KC_EQL);
477 unregister_mods(MOD_BIT(KC_LSFT)); 444 unregister_mods(MOD_BIT(KC_LSFT));
478 } 445 }
479 sftpls_tap_state.state = 0;
480} 446}
481 447
482qk_tap_dance_action_t tap_dance_actions[] = { 448qk_tap_dance_action_t tap_dance_actions[] = {