Userspace and keymap addition (#20522)
Co-authored-by: Drashna Jaelre <drashna@live.com>
This commit is contained in:
		
							parent
							
								
									06a36824ad
								
							
						
					
					
						commit
						5bc282eefe
					
				| @ -0,0 +1,13 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #pragma once | ||||
| 
 | ||||
| #    define TAPPING_TERM 160 | ||||
| #    define TAPPING_TERM_PER_KEY | ||||
| #    define HOLD_ON_OTHER_KEY_PRESS | ||||
| #    define QUICK_TAP_TERM TAPPING_TERM / 2 | ||||
| #    define QUICK_TAP_TERM_PER_KEY | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
							
								
								
									
										290
									
								
								keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/keymap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										290
									
								
								keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/keymap.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,290 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #include "miketronic.h" | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
| 
 | ||||
|   /* Workman  
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │ TAB │ Q   │ D   │ R   │ W   │ B   │   │ J   │ F   │ U   │ P   │ BSPC│ BSPC│ | ||||
|   * │ ESC │ ESC │     │     │     │ SYM │   │ SYM │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┼─────┤ | ||||
|   * │ TAB │ A   │ S   │ H   ┃ T   ┃ G   │   │ Y   ┃ N   ┃ E   │ O   │ I   │     │ | ||||
|   * │SHIFT│     │     │     ┃ EX  ┃     │   │     ┃     ┃     │     │ENTER│ENTER│ | ||||
|   * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┼─────┤ | ||||
|   * │SHIFT| Z   │ X   │ M   │ C   │ V   │   │ K   │ L   │ SPC │ SPC │ /   │ UP  | | ||||
|   * │     │     │     │     │     │     │   │     │     │ ,   │ .   │     │RIGHT| | ||||
|   * ├─────┼─────┼─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │ FN  │CTRL │ OS  │ ALT │LOWER│     │   │     │RAISE│ SS  │CLIP │COPY │ DN  │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │PASTE│LEFT │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┘   └─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   */ | ||||
| 
 | ||||
|  [_WM] = LAYOUT_ortho_4x12_wrapper ( | ||||
|                                                                                      RGB_TOG,  | ||||
|     _____________WORKMAN_412_001_L_____________, _____________WORKMAN_412_001_R_____________, | ||||
|     _____________WORKMAN_412_002_L_____________, _____________WORKMAN_412_002_R_____________, | ||||
|     _____________WORKMAN_412_003_L_____________, _____________WORKMAN_412_003_R_____________, | ||||
|     _____________WORKMAN_412_004_L_____________, _____________WORKMAN_412_004_R_____________ | ||||
|   ), | ||||
| 
 | ||||
|  [_QW] = LAYOUT_ortho_4x12_wrapper ( | ||||
|                                                                                                        RGB_TOG, | ||||
|     KC_TAB,  _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, | ||||
|     KC_ESC,  _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, | ||||
|     KC_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_ENT, | ||||
|              _____________WORKMAN_412_004_L_____________, _____________WORKMAN_412_004_R_____________ | ||||
|     ), | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|   /* Lower 
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │     │ ()  │ []  │ /\  │     │     │   │     │ 7   │ 8   │ 9   │     │     │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┼─────┤ | ||||
|   * │     │ @ # │ & % │     ┃     ┃     │   │     ┃ 4   ┃ 5   │ 6   │     │     │ | ||||
|   * │     │     │     │     ┃     ┃     │   │     ┃     ┃     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │     │     │   │ 0   │ 1   │ 2   │ 3   │     │ UP  │ | ||||
|   * │     │     │     │     │     │     │   │     │     │ 0   │     │     │RIGHT│ | ||||
|   * ├─────┼─────┼─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │LOWER│     │   │     │BPSC │ SPC │  .  │     │ DN  │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │ ENT │     │LEFT │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┘   └─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   */ | ||||
|     [_LOWER] = LAYOUT_ortho_4x12_wrapper ( | ||||
|                                                                                        KC_MUTE, | ||||
|       _______________LOWER_412_L1________________, _______________LOWER_412_R1________________, | ||||
|       _______________LOWER_412_L2________________, _______________LOWER_412_R2________________, | ||||
|       _______________LOWER_412_L3________________, _______________LOWER_412_R3________________, | ||||
|       _______________LOWER_412_L4________________, _______________LOWER_412_R4________________ | ||||
|     ), | ||||
| 
 | ||||
| 
 | ||||
|  /* RAISE
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │BOOT │DEBUG│     │     │     │MAKE │   │     │     │ F7  │ F8  │ F9  │ F10 │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┼─────┤ | ||||
|   * │     │ RGB | RGB | RGB ┃ RGB ┃ WM  │   │     ┃ / \ ┃ F4  │ F5  │ F6  │ F11 │ | ||||
|   * │     │ TOG │ MOD │ HUI ┃ HUD ┃     │   │     ┃     ┃     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┼─────┤ | ||||
|   * │     │ RGB │ RGB │ RGB │ RGB │ QW  │   │     │  _  │ F1  | F2  | F3  │ F12 │ | ||||
|   * │     │ SAI │ SAD │ VAI │ VAD │     │   │     │  -  │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │     │     │   │     │RAISE│     │     │     │     │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┘   └─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   */ | ||||
|   [_RAISE] = LAYOUT_ortho_4x12_wrapper ( | ||||
|                                                                                      KC_MUTE, | ||||
|     _______________RAISE_412_L1________________, _______________RAISE_412_R1________________, | ||||
|     _______________RAISE_412_L2________________, _______________RAISE_412_R2________________, | ||||
|     _______________RAISE_412_L3________________, _______________RAISE_412_R3________________, | ||||
|     _________________BLANK_6___________________, _________________BLANK_6___________________ | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
|   /* EXTRAS
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │     │ !   │     │     │     │     │   │     │ /\  |  [  |  ]  |  ;  │     │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┼─────┤ | ||||
|   * │SHIFT│     |     |EXTRA┃     ┃     │   │     ┃ @ # ┃ & % |     |  '  |     │ | ||||
|   * │     │     │     │     ┃     ┃     │   │     ┃     ┃     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │     │     │   │     │     │  ,  |  .  |  ?  │     │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┘   └─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   */ | ||||
|   [_EX] = LAYOUT_ortho_4x12_wrapper ( | ||||
|                                                                                      KC_MUTE, | ||||
|     ______________EXTRAS_412_L1________________, ______________EXTRAS_412_R1________________, | ||||
|     ______________EXTRAS_412_L2________________, ______________EXTRAS_412_R2________________, | ||||
|     ______________EXTRAS_412_L3________________, ______________EXTRAS_412_R3________________, | ||||
|     ______________EXTRAS_412_L4________________, ______________EXTRAS_412_R4________________ | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|   /* FUNCTION
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │COPY │CLIP │ SS  │     │     │     │   │     │ /\  │ UP  │     │     │ DEL │ | ||||
|   * │PASTE│     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┼─────┤ | ||||
|   * │TAB  │ M05 | M06 | M07 ┃ M08 ┃     │   │     ┃LEFT ┃DOWN │RIGHT│     │UP   │ | ||||
|   * │SHIFT│     │     │     ┃     ┃     │   │     ┃     ┃     │     │     │RIGHT│ | ||||
|   * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┼─────┤ | ||||
|   * │     │ M01 │ M02 │ M03 │ M04 │     │   │     │     │ ,   | .   | ?   │DOWN │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │LEFT │ | ||||
|   * ├─────┼─────┼─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │RGB1 │RGB2 │RGB3 │RGB4 │     │   │     │     │     │     │     │     │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┘   └─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   */ | ||||
|   [_FN] = LAYOUT_ortho_4x12_wrapper ( | ||||
|                                                                                        KC_MUTE, | ||||
|     _____________FUNCTION_412_L1_______________,   _____________FUNCTION_412_R1_______________, | ||||
|     _____________FUNCTION_412_L2_______________,   _____________FUNCTION_412_R2_______________, | ||||
|     _____________FUNCTION_412_L3_______________,   _____________FUNCTION_412_R3_______________, | ||||
|     _____________FUNCTION_412_L4_______________,   _____________FUNCTION_412_R4_______________ | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
|   /* SYMBOLS
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │     |  $  |  ^  |  <  |  >  │ SYMB│   │ SYMB│  |  |  [  |  ]  |  -  |     | | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┼─────┤ | ||||
|   * │     |  %  |  :  |  ;  ┃  +  ┃  =  │   │     ┃     ┃  (  |  )  |  _  |     | | ||||
|   * │     │     │     │     ┃     ┃     │   │     ┃     ┃     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┼─────┤ | ||||
|   * |     |  &  |  '  |  "  |  *  |  #  │   │  !  |  ?  |  /  |  \  |  @  |     |  | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * │     │     │     │     │     │     │   │     │     │     │     │     │     │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┘   └─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   */ | ||||
| 
 | ||||
|   [_SYMB] = LAYOUT_ortho_4x12_wrapper ( | ||||
|                                                                                                          KC_MUTE, | ||||
|     _______,  _____________SYMBOLS_310_L1________________, _____________SYMBOLS_310_R1________________,  _______, | ||||
|     _______,  _____________SYMBOLS_310_L2________________, _____________SYMBOLS_310_R2________________,  _______, | ||||
|     _______,  _____________SYMBOLS_310_L3________________, _____________SYMBOLS_310_R3________________,  _______, | ||||
|               _________________BLANK_6___________________, _________________BLANK_6___________________ | ||||
|   ) | ||||
| 
 | ||||
| }; | ||||
| 
 | ||||
| #ifndef NUM_DIRECTIONS | ||||
| #    define NUM_DIRECTIONS 2 | ||||
| #endif | ||||
| 
 | ||||
| #if defined(ENCODER_MAP_ENABLE) && defined(KEYBOARD_1upkeyboards_pi40_mit_v1_0) | ||||
| const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { | ||||
|     [_WM]   =  { ENCODER_CCW_CW(LCTL(KC_V), LCTL(KC_C)) }, | ||||
|     [_QW] =  { ENCODER_CCW_CW(KC_VOLD,  KC_VOLU) }, | ||||
|     [_LOWER]   =  { ENCODER_CCW_CW(____,  ____) }, | ||||
|     [_RAISE] =  { ENCODER_CCW_CW(____,  ____) }, | ||||
|     [_EX] =  { ENCODER_CCW_CW(____,  ____) }, | ||||
|     [_FN]  =  { ENCODER_CCW_CW(RGB_MOD,  RGB_RMOD) }, | ||||
|     [_SYMB]  =  { ENCODER_CCW_CW(KC_VOLD,  KC_VOLU) } | ||||
| }; | ||||
| #endif | ||||
| 
 | ||||
| 
 | ||||
| #ifdef OLED_ENABLE | ||||
| bool oled_task_user(void) { | ||||
|     // Host Keyboard Layer Status
 | ||||
|     oled_write_P(PSTR("Layer: "), false); | ||||
| 
 | ||||
|     switch (get_highest_layer(layer_state)) { | ||||
|         case _LOWER: | ||||
|             oled_write_P(PSTR("LOWER"), false); | ||||
|             break; | ||||
|         case _RAISE: | ||||
|             oled_write_P(PSTR("RAISE"), false); | ||||
|             break; | ||||
|         case _EX: | ||||
|             oled_write_P(PSTR("EXTRA"), false); | ||||
|             break; | ||||
|         case _FN: | ||||
|             oled_write_P(PSTR("FUNCTION"), false); | ||||
|             break; | ||||
|         case _WM: | ||||
|             oled_write_P(PSTR("WORKMAN"), false); | ||||
|             break; | ||||
|         case _SYMB: | ||||
|             oled_write_P(PSTR("SYMBOLS"), false); | ||||
|             break; | ||||
|         default: | ||||
|             // Or use the write_ln shortcut over adding '\n' to the end of your string
 | ||||
|             oled_write_ln_P(PSTR("HOME"), false); | ||||
|     } | ||||
| 
 | ||||
| // Host Keyboard LED Status
 | ||||
|    // led_t led_state = host_keyboard_led_state();
 | ||||
|    // oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR("    "), false);
 | ||||
|    // oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR("    "), false);
 | ||||
|    // oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR("    "), false);
 | ||||
|    | ||||
|  return false; | ||||
| } | ||||
| #endif | ||||
|   | ||||
| 
 | ||||
| bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) { | ||||
|     switch (keycode) { | ||||
|         case SFT_T(KC_A): | ||||
|             // Do not force the mod-tap key press to be handled as a modifier
 | ||||
|             // if any other key was pressed while the mod-tap key is held down.
 | ||||
|             return false; | ||||
|         case TEX: | ||||
|             return false; | ||||
|         case CTRLX: | ||||
|             return false; | ||||
|         case FNZ: | ||||
|             return false; | ||||
|         case MGUI: | ||||
|             return false; | ||||
|         case VLOWER: | ||||
|             return false; | ||||
|         case KRAISE: | ||||
|             return false; | ||||
|         default: | ||||
|             // Force the dual-role key press to be handled as a modifier if any
 | ||||
|             // other key was pressed while the mod-tap key is held down.
 | ||||
|             return true; | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| #ifdef AUDIO_ENABLE | ||||
| float leader_start_song[][2] = SONG(ONE_UP_SOUND); | ||||
| float leader_succeed_song[][2] = SONG(ALL_STAR); | ||||
| float leader_fail_song[][2] = SONG(RICK_ROLL); | ||||
| #endif | ||||
| 
 | ||||
| void matrix_scan_user(void); | ||||
| 
 | ||||
| void leader_start_user(void) { | ||||
| #ifdef AUDIO_ENABLE | ||||
|     PLAY_SONG(leader_start_song); | ||||
| #endif | ||||
| } | ||||
| 
 | ||||
| bool did_leader_succeed; | ||||
| 
 | ||||
| void leader_end_user(void) { | ||||
|     did_leader_succeed = false; | ||||
| 
 | ||||
|     if (leader_sequence_one_key(KC_E)) { | ||||
|         SEND_STRING(SS_LCTL(SS_LSFT("t"))); | ||||
|         did_leader_succeed = true; | ||||
|     } else if (leader_sequence_two_keys(KC_E, KC_D)) { | ||||
|         SEND_STRING(SS_LGUI("r") "cmd\n" SS_LCTL("c")); | ||||
|         did_leader_succeed = true;     | ||||
|     } else if (leader_sequence_two_keys(KC_A, KC_T)) { | ||||
|         SEND_STRING("@guidehouse.com"); | ||||
|         did_leader_succeed = true; | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
| #ifdef AUDIO_ENABLE | ||||
|     if (did_leader_succeed) { | ||||
|         PLAY_SONG(leader_succeed_song); | ||||
|     } else { | ||||
|         PLAY_SONG(leader_fail_song); | ||||
|     } | ||||
| #endif | ||||
| } | ||||
| @ -0,0 +1,25 @@ | ||||
| # Common feature for all keyboards
 | ||||
| BOOTMAGIC_ENABLE  = yes			# Enable Bootmagic Lite | ||||
| EXTRAKEY_ENABLE   = yes			# Audio control and System control | ||||
| TAP_DANCE_ENABLE  = yes       	# Tap Dance keys | ||||
| NKRO_ENABLE       = yes     	# Enable N-Key Rollover | ||||
| MACROS_ENABLED    = yes | ||||
| 
 | ||||
| 
 | ||||
| # Keyboard specific
 | ||||
| AUTO_SHIFT_ENABLE     = no  | ||||
| CONSOLE_ENABLE        = no        # Console for debug | ||||
| COMMAND_ENABLE        = no        # Commands for debug and configuration | ||||
| BACKLIGHT_ENABLE      = no        # Enable keyboard backlight functionality | ||||
| RGBLIGHT_ENABLE       = no        # Enable keyboard RGB underglow | ||||
| AUDIO_ENABLE          = no        # Audio output | ||||
| MOUSEKEY_ENABLE       = no        # Mouse keys | ||||
| 
 | ||||
| LEADER_ENABLE         = yes | ||||
| RGB_MATRIX_ENABLE     = yes | ||||
| RGB_MATRIX_DRIVER     = WS2812 | ||||
| WS2812_DRIVER         = vendor | ||||
| ENCODER_ENABLE        = yes | ||||
| ENCODER_MAP_ENABLE    = yes | ||||
| OLED_ENABLE           = yes | ||||
| OLED_DRIVER           = SSD1306 | ||||
							
								
								
									
										16
									
								
								keyboards/hazel/bad_wings/keymaps/miketronic/config.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								keyboards/hazel/bad_wings/keymaps/miketronic/config.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #pragma once | ||||
| 
 | ||||
| #    define TAPPING_TERM 160 | ||||
| #    define TAPPING_TERM_PER_KEY | ||||
| #    define HOLD_ON_OTHER_KEY_PRESS | ||||
| #    define QUICK_TAP_TERM TAPPING_TERM / 2 | ||||
| #    define QUICK_TAP_TERM_PER_KEY | ||||
| 
 | ||||
| #    define CIRQUE_PINNACLE_TAP_ENABLE | ||||
| #    define CIRQUE_PINNACLE_SECONDARY_TAP_ENABLE | ||||
| #    define CIRQUE_PINNACLE_ATTENUATION_4X | ||||
| #    define CIRQUE_PINNACLE_POSITION_MODE  CIRQUE_PINNACLE_RELATIVE_MODE  | ||||
| //#    define CIRQUE_DEVICE_GESTURES_SCROLL_ENABLE 
 | ||||
							
								
								
									
										258
									
								
								keyboards/hazel/bad_wings/keymaps/miketronic/keymap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										258
									
								
								keyboards/hazel/bad_wings/keymaps/miketronic/keymap.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,258 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #include "miketronic.h" | ||||
| 
 | ||||
| 
 | ||||
| /*
 | ||||
| layer_state_t layer_state_set_user(layer_state_t state) { | ||||
|     return update_tri_layer_state(state, 1, 2, 3); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
|     [0] = LAYOUT_split_3x5_3( | ||||
|         KC_Q,       KC_W,           KC_E,           KC_R,           KC_T,           KC_Y,       KC_U,           KC_I,       KC_O,       KC_P,         \ | ||||
|         KC_A,       KC_S,           KC_D,           KC_F,           KC_G,           KC_H,       KC_J,           KC_K,       KC_L,       KC_QUOT,      \ | ||||
|         KC_Z,       LGUI_T(KC_X),   LALT_T(KC_C),   KC_V,           KC_B,           KC_N,       KC_M,           KC_COMM,    KC_DOT,     KC_SLSH,      \ | ||||
|                                     KC_LCTL,        OSL(1),         OSM(MOD_LSFT),  KC_SPC,     LT(2, KC_BSPC), KC_ENT | ||||
|     ), | ||||
|     [1] = LAYOUT_split_3x5_3( | ||||
|         KC_NO,      KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_RBRC,    KC_RCBR,        KC_RPRN,    KC_RABK,    KC_NO,        \ | ||||
|         KC_GRV,     KC_TILD,        KC_UNDS,        KC_EQL,         KC_NO,          KC_LBRC,    KC_LCBR,        KC_LPRN,    KC_LABK,    KC_BACKSLASH, \ | ||||
|         KC_NO,      KC_NO,          KC_PLUS,        KC_MINS,        KC_NO,          KC_NO,      KC_NO,          KC_COLN,    KC_DOT,     KC_SCLN,      \ | ||||
|                                     KC_TRNS,        KC_TRNS,        KC_TRNS,        KC_TRNS,    KC_TRNS,        KC_TRNS | ||||
|     ), | ||||
|     [2] = LAYOUT_split_3x5_3( | ||||
|         KC_EXLM,    KC_AT,          KC_HASH,        KC_DLR,         KC_PERC,        KC_CIRC,    KC_AMPR,        KC_ASTR,    KC_PIPE,    KC_NO,        \ | ||||
|         KC_1,       KC_2,           KC_3,           KC_4,           KC_5,           KC_6,       KC_7,           KC_8,       KC_9,       KC_0,         \ | ||||
|         KC_NO,      KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,      KC_NO,          KC_NO,      KC_DOT,     KC_NO,        \ | ||||
|                                     KC_TRNS,        KC_TRNS,        KC_TRNS,        KC_TRNS,    KC_TRNS,        KC_TRNS | ||||
|     ), | ||||
|     [3] = LAYOUT_split_3x5_3( | ||||
|         KC_ESC,     KC_F1,          KC_F4,          KC_F7,          KC_F10,         KC_NO,      KC_HOME,        KC_UP,      KC_END,     KC_BSPC,      \ | ||||
|         KC_TAB,     KC_F2,          KC_F5,          KC_F8,          KC_F11,         KC_NO,      KC_LEFT,        KC_DOWN,    KC_RIGHT,   KC_ENT,       \ | ||||
|         KC_NO,      KC_F3,          KC_F6,          KC_F9,          KC_F12,         KC_NO,      KC_MPRV,        KC_MPLY,    KC_MNXT,    KC_DEL,       \ | ||||
|                                     KC_TRNS,        KC_TRNS,        KC_TRNS,        KC_TRNS,    KC_TRNS,        KC_TRNS | ||||
|     ) | ||||
| */ | ||||
| 
 | ||||
| 
 | ||||
| const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|  /* WORKMAN
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │ Q   │ D   │ R   │ W   │ B   │   │ J   │ F   │ U   │ P   │ BSPC│ | ||||
|   * │ ESC │     │     │     │ SYM │   │ SYM │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┤ | ||||
|   * │ A   │ S   │ H   ┃ T   ┃ G   │   │ Y   ┃ N   ┃ E   │ O   │ I   │ | ||||
|   * │SHIFT│     │     ┃ EX  ┃     │   │     ┃     ┃     │     │     │ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┤ | ||||
|   * │ Z   │ X   │ M   │ C   │ V   │   │ K   │ L   │ SPC │ SPC │ENTER│ | ||||
|   * │ FN  │ CTRL│ OS  │ ALT │LOWER│   │RAISE│     │  ,  │  .  │     │ | ||||
|   * └─────┴─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┴─────┘ | ||||
|   *             │OSM  │SPACE│LOWER│   │RAISE│ENTER│COPY │ | ||||
|   *             │SHIFT│     │     │   │     │     │PASTE│ | ||||
|   *             └─────┴─────┴─────┘   └─────┴─────┴─────┘                         | ||||
| */ | ||||
|   [_WM] = LAYOUT_split_3x5_3_wrapper ( | ||||
|     _____________WORKMAN_310_001_L_____________, _____________WORKMAN_310_001_R_____________, | ||||
|     _____________WORKMAN_310_002_L_____________, _____________WORKMAN_310_002_R_____________, | ||||
|     _____________WORKMAN_310_003_L_____________, _____________WORKMAN_310_003_R_____________, | ||||
|                   _________3KEY_LEFT___________, _________3KEY_RIGHT__________ | ||||
|   ), | ||||
| 
 | ||||
|   [_QW] = LAYOUT_split_3x5_3_wrapper ( | ||||
|     _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, | ||||
|     _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, | ||||
|     _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, | ||||
|                   _________3KEY_LEFT___________, _________3KEY_RIGHT__________ | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  /* LOWER
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │ ()  │ []  │ /\  │     │     │   │     │ 7   │ 8   │ 9   │     │ | ||||
|   * │     │ <>  │     │     │     │   │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┤ | ||||
|   * │ @ # │ & % │     ┃     ┃     │   │ .   ┃ 4   ┃ 5   │ 6   │ UP  │ | ||||
|   * │     │     │     ┃     ┃     │   │ENTER┃     ┃     │     │RIGHT│ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │     │   │ 0   │ 1   │ 2   │ 3   │ DOWN│ | ||||
|   * │     │     │     │     │LOWER│   │     │     │ 0   │     │ LEFT│ | ||||
|   * └─────┴─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┴─────┘ | ||||
|   *             │OSM  │SPACE│LOWER│   │RAISE│ENTER│COPY │ | ||||
|   *             │SHIFT│     │     │   │     │     │PASTE│ | ||||
|   *             └─────┴─────┴─────┘   └─────┴─────┴─────┘                         | ||||
| */ | ||||
|   [_LOWER] = LAYOUT_split_3x5_3_wrapper ( | ||||
|     _______________LOWER_310_L1________________, _______________LOWER_310_R1________________, | ||||
|     _______________LOWER_310_L2________________, _______________LOWER_310_R2________________, | ||||
|     _______________LOWER_310_L3________________, _______________LOWER_310_R3________________, | ||||
|                   _________3KEY_LEFT___________, _________3KEY_RIGHT__________ | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  /* RAISE
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │ BOOT│DEBUG│     │     │ MAKE│   │     │ F7  │ F8  │ F9  │ F10 │ | ||||
|   * │     │     │     │     │     │   │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┤ | ||||
|   * │     │ RGB │ RGB ┃ RGB ┃ RGB │   │  _  ┃ F4  ┃ F5  │ F6  │ F11 │ | ||||
|   * │     │ TOG │ MOD ┃ HUI ┃ HUD │   │  -  ┃     ┃     │     │     │ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┤ | ||||
|   * │     │ RGB │ RGB │ RGB │ RGB │   │     │ F1  │ F2  │ F3  │ F12 │ | ||||
|   * │     │ SAI │ SAD │ VAI │ VAD │   │RAISE│     │     │     │     │ | ||||
|   * └─────┴─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┴─────┘ | ||||
|   *             │OSM  │SPACE│LOWER│   │RAISE│ENTER│COPY │ | ||||
|   *             │SHIFT│     │     │   │     │     │PASTE│ | ||||
|   *             └─────┴─────┴─────┘   └─────┴─────┴─────┘                         | ||||
| */ | ||||
|   [_RAISE] = LAYOUT_split_3x5_3_wrapper ( | ||||
|     _______________RAISE_310_L1________________, _______________RAISE_310_R1________________, | ||||
|     _______________RAISE_310_L2________________, _______________RAISE_310_R2________________, | ||||
|     _______________RAISE_310_L3________________, _______________RAISE_310_R3________________, | ||||
|                   _________3KEY_LEFT___________, _________3KEY_RIGHT__________ | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  /* EXTRAS
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │  !  │     │     │     │     │   │     │ /\  | ()  | []  |  ;  │ | ||||
|   * │     │     │     │     │     │   │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┤ | ||||
|   * │     │     │     ┃EXTRA┃     │   │     ┃ @ # ┃ & % |     │  '  │ | ||||
|   * │     │     │     ┃     ┃     │   │     ┃     ┃     │     │     │ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │     │   │     │     │  ,  │  .  │  ?  │ | ||||
|   * │     │     │     │     │     │   │     │     │     │     │     │ | ||||
|   * └─────┴─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┴─────┘ | ||||
|   *             │OSM  │SPACE│LOWER│   │RAISE│ENTER│COPY │ | ||||
|   *             │SHIFT│     │     │   │     │     │PASTE│ | ||||
|   *             └─────┴─────┴─────┘   └─────┴─────┴─────┘                         | ||||
| */ | ||||
|   [_EX] = LAYOUT_split_3x5_3_wrapper ( | ||||
|     ______________EXTRAS_310_L1________________, ______________EXTRAS_310_R1________________, | ||||
|     ______________EXTRAS_310_L2________________, ______________EXTRAS_310_R2________________, | ||||
|     ______________EXTRAS_310_L3________________, ______________EXTRAS_310_R3________________, | ||||
|                   _________3KEY_LEFT___________, _________3KEY_RIGHT__________ | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  /* FUNCTION
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │COPY │CLIP │ SS  │     │     │   │     │ /\  │ UP  │     │ DEL │ | ||||
|   * │PASTE│     │     │     │     │   │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┤ | ||||
|   * │ TAB │ M05 │ M06 ┃ M07 ┃ M08 │   │     ┃ LEFT┃ DOWN│RIGHT│ UP  │ | ||||
|   * │     │     │     ┃     ┃     │   │     ┃     ┃     │     │RIGHT│ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┤ | ||||
|   * │     │ M01 │ M02 │ M03 │ M04 │   │     │     │  ,  │  .  │DOWN │ | ||||
|   * │ FN  │     │     │     │     │   │     │     │     │     │LEFT │ | ||||
|   * └─────┴─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┴─────┘ | ||||
|   *             │OSM  │SPACE│LOWER│   │RAISE│ENTER│COPY │ | ||||
|   *             │SHIFT│     │     │   │     │     │PASTE│ | ||||
|   *             └─────┴─────┴─────┘   └─────┴─────┴─────┘                         | ||||
| */ | ||||
|   [_FN] = LAYOUT_split_3x5_3_wrapper ( | ||||
|     _____________FUNCTION_310_L1_______________, _____________FUNCTION_310_R1_______________, | ||||
|     _____________FUNCTION_310_L2_______________, _____________FUNCTION_310_R2_______________, | ||||
|     _____________FUNCTION_310_L3_______________, _____________FUNCTION_310_R3_______________, | ||||
|                   _________3KEY_LEFT___________, _________3KEY_RIGHT__________ | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  /* SYMBOLS
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │ $   │ ^   │ <   │ >   │     │   │     │ |   │ [   │ ]   │ -   │ | ||||
|   * │     │     │     │     │ SYMB│   │ SYMB│     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┤ | ||||
|   * │ %   │ :   │ ;   ┃ +   ┃ =   │   │     ┃     ┃ (   │ )   │ _   │ | ||||
|   * │     │     │     ┃     ┃     │   │     ┃     ┃     │     │     │ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┤ | ||||
|   * │ &   │ '   │ "   │ *   │ #   │   │  !  │  ?  │  /  │  \  │ @   │ | ||||
|   * │     │     │     │     │     │   │     │     │     │     │     │ | ||||
|   * └─────┴─────┼─────┼─────┼─────┤   ├─────┼─────┼─────┼─────┴─────┘ | ||||
|   *             │OSM  │SPACE│LOWER│   │RAISE│ENTER│COPY │ | ||||
|   *             │SHIFT│     │     │   │     │     │PASTE│ | ||||
|   *             └─────┴─────┴─────┘   └─────┴─────┴─────┘                         | ||||
| */ | ||||
|   [_SYMB] = LAYOUT_split_3x5_3_wrapper ( | ||||
|     KC_DLR,  KC_CIRC, KC_LABK, KC_RABK,    XXXX, XXXX,    KC_PIPE, KC_LBRC, KC_RBRC, KC_MINS, | ||||
|     KC_PERC, KC_COLN, KC_SCLN, KC_PLUS,  KC_EQL, XXXX,       XXXX, KC_LPRN, KC_RPRN, KC_UNDS, | ||||
|     KC_AMPR, KC_QUOT, KC_DQUO, KC_ASTR, KC_HASH, KC_EXLM, KC_QUES, KC_SLSH, KC_BSLS, KC_AT, | ||||
|                   _________3KEY_LEFT___________, _________3KEY_RIGHT__________ | ||||
|   ), | ||||
| 
 | ||||
| }; | ||||
| 
 | ||||
| 
 | ||||
| bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) { | ||||
|     switch (keycode) { | ||||
|         case SFT_T(KC_A): | ||||
|             // Do not force the mod-tap key press to be handled as a modifier
 | ||||
|             // if any other key was pressed while the mod-tap key is held down.
 | ||||
|             return false; | ||||
|         case TEX: | ||||
|             return false; | ||||
|         case CTRLX: | ||||
|             return false; | ||||
|         case FNZ: | ||||
|             return false; | ||||
|         case MGUI: | ||||
|             return false; | ||||
|         case VLOWER: | ||||
|             return false; | ||||
|         case KRAISE: | ||||
|             return false; | ||||
|         default: | ||||
|             // Force the dual-role key press to be handled as a modifier if any
 | ||||
|             // other key was pressed while the mod-tap key is held down.
 | ||||
|             return true; | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| #ifdef AUDIO_ENABLE | ||||
| float leader_start_song[][2] = SONG(ONE_UP_SOUND); | ||||
| float leader_succeed_song[][2] = SONG(ALL_STAR); | ||||
| float leader_fail_song[][2] = SONG(RICK_ROLL); | ||||
| #endif | ||||
| 
 | ||||
| void matrix_scan_user(void); | ||||
| 
 | ||||
| void leader_start_user(void) { | ||||
| #ifdef AUDIO_ENABLE | ||||
|     PLAY_SONG(leader_start_song); | ||||
| #endif | ||||
| } | ||||
| 
 | ||||
| bool did_leader_succeed; | ||||
| 
 | ||||
| void leader_end_user(void) { | ||||
|     did_leader_succeed = false; | ||||
| 
 | ||||
|     if (leader_sequence_one_key(KC_E)) { | ||||
|         SEND_STRING(SS_LCTL(SS_LSFT("t"))); | ||||
|         did_leader_succeed = true; | ||||
|     } else if (leader_sequence_two_keys(KC_E, KC_D)) { | ||||
|         SEND_STRING(SS_LGUI("r") "cmd\n" SS_LCTL("c")); | ||||
|         did_leader_succeed = true;     | ||||
|     } else if (leader_sequence_two_keys(KC_A, KC_T)) { | ||||
|         SEND_STRING("@guidehouse.com"); | ||||
|         did_leader_succeed = true; | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
| #ifdef AUDIO_ENABLE | ||||
|     if (did_leader_succeed) { | ||||
|         PLAY_SONG(leader_succeed_song); | ||||
|     } else { | ||||
|         PLAY_SONG(leader_fail_song); | ||||
|     } | ||||
| #endif | ||||
| } | ||||
| 
 | ||||
							
								
								
									
										31
									
								
								keyboards/hazel/bad_wings/keymaps/miketronic/rules.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								keyboards/hazel/bad_wings/keymaps/miketronic/rules.mk
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | ||||
| # Common feature for all keyboards
 | ||||
| BOOTMAGIC_ENABLE  = yes		# Enable Bootmagic Lite | ||||
| EXTRAKEY_ENABLE   = yes		# Audio control and System control | ||||
| TAP_DANCE_ENABLE  = yes       	# Tap Dance keys | ||||
| NKRO_ENABLE       = yes     	# Enable N-Key Rollover | ||||
| MACROS_ENABLED    = yes | ||||
| 
 | ||||
| # Keyboard specific
 | ||||
| MOUSEKEY_ENABLE         = yes      # Mouse keys | ||||
| CAPS_WORD_ENABLE	= yes | ||||
| KEY_OVERRIDE_ENABLE	= yes | ||||
| LEADER_ENABLE     = yes | ||||
| 
 | ||||
| 
 | ||||
|   LTO_ENABLE 	        = no       # Enabled this causes longer build time, but smaller file. | ||||
|   AUTO_SHIFT_ENABLE     = no      | ||||
|   UNICODE_ENABLE        = no       # Unicode | ||||
|   CONSOLE_ENABLE        = no       # Console for debug | ||||
|   COMMAND_ENABLE        = no       # Commands for debug and configuration | ||||
|   RGBLIGHT_ENABLE       = no | ||||
|   BACKLIGHT_ENABLE      = no       # Enable keyboard backlight functionality | ||||
|   SLEEP_LED_ENABLE      = no       # Breathing sleep LED during USB suspend (it uses the same timer as BACKLIGHT_ENABLE) | ||||
|   AUDIO_ENABLE          = no       # Audio output on port C6 | ||||
|   MIDI_ENABLE           = no       # MIDI support | ||||
|   BLUETOOTH_ENABLE      = no       # Enable Bluetooth with the Adafruit EZ-Key HID | ||||
|   GRAVE_ESC_ENABLE	= no | ||||
|   SPACE_CADET_ENABLE    = no | ||||
|   COMBO_ENABLE		= no | ||||
|   OLED_ENABLE 		= no | ||||
|   ENCODER_ENABLE       	= no | ||||
|   ENCODER_MAP_ENABLE   	= no | ||||
							
								
								
									
										10
									
								
								keyboards/mechwild/bde/rev2/keymaps/miketronic/config.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								keyboards/mechwild/bde/rev2/keymaps/miketronic/config.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,10 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #pragma once | ||||
| 
 | ||||
| #    define TAPPING_TERM 160 | ||||
| #    define TAPPING_TERM_PER_KEY | ||||
| #    define HOLD_ON_OTHER_KEY_PRESS | ||||
| #    define QUICK_TAP_TERM TAPPING_TERM / 2 | ||||
| #    define QUICK_TAP_TERM_PER_KEY | ||||
							
								
								
									
										221
									
								
								keyboards/mechwild/bde/rev2/keymaps/miketronic/keymap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										221
									
								
								keyboards/mechwild/bde/rev2/keymaps/miketronic/keymap.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,221 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #include "miketronic.h" | ||||
| 
 | ||||
| 
 | ||||
| const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
| 
 | ||||
|  /* WORKMAN
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │ Q   │ D   │ R   │ W   │ B   │ 7   │ 8   │ 9   │ J   │ F   │ U   │ P   │ BSPC│BSPC │ | ||||
|   * │ ESC │     │     │     │ SYM │     │     │     │ SYM │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┤ | ||||
|   * │ A   │ S   │ H   ┃ T   ┃ G   │ 4   │ 5   │ 6   │ Y   ┃ N   ┃ E   │ O   │ I   │UP   │ | ||||
|   * │SHIFT│     │     ┃ EX  ┃     │     │     │     │     ┃     ┃     │     │     │RIGHT│ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┤ | ||||
|   * │ Z   │ X   │ M   │ C   │ V   │ 1   │ 2   │ 3   │ K   │ L   │ SPC │ SPC │ENTER│DOWN │ | ||||
|   * │ FN  │ CTRL│ OS  │ ALT │LOWER│     │ 0   │     │RAISE│RAISE│     │     │     │LEFT │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   *    | ||||
|   */ | ||||
| 
 | ||||
|   [_WM] = LAYOUT_3x14_wrapper ( | ||||
|     _____________WORKMAN_310_001_L_____________, _________NUMBER_01__________, _____________WORKMAN_310_001_R_____________, KC_BSPC, | ||||
|     _____________WORKMAN_310_002_L_____________, _________NUMBER_02__________, _____________WORKMAN_310_002_R_____________, TD_UR, | ||||
|     _____________WORKMAN_310_003_L_____________, _________NUMBER_03__________, _____________WORKMAN_310_003_R_____________, TD_DL | ||||
|   ), | ||||
| 
 | ||||
|    [_QW] = LAYOUT_3x14_wrapper ( | ||||
|     _________________QWERTY_L1_________________, _________NUMBER_01__________, _________________QWERTY_R1_________________, KC_MUTE, | ||||
|     _________________QWERTY_L2_________________, _________NUMBER_02__________, _________________QWERTY_R2_________________, TD_UR, | ||||
|     _________________QWERTY_L3_________________, _________NUMBER_03__________, _________________QWERTY_R3_________________, TD_DL | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
|  /* LOWER
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │ ()  │ []  │ /\  │     │     │     │ 7   │ 8   │ 9   │ 0   │     │     │     │LEAD │ | ||||
|   * │     │     │     │     │     │     │     │     │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │ @ # │ & % │     ┃     ┃     │     ┃ 4   ┃ 5   │ 6   │     │     │     │     │     │ | ||||
|   * │     │     │     ┃     ┃     │     ┃     ┃     │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │     │ 0   │ 1   │ 2   │ 3   │  .  │     │     │     │     │ | ||||
|   * │     │     │     │     │LOWER│     │     │ 0   │     │ ENT │     │     │     │     │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   *    | ||||
|   */ | ||||
| 
 | ||||
|   [_LOWER] = LAYOUT_3x14_wrapper ( | ||||
|     _______________LOWER_310_L1________________, _________NUMBER_01__________, _______________LOWER_310_R1________________, QK_LEAD, | ||||
|     _______________LOWER_310_L2________________, _________NUMBER_02__________, _______________LOWER_310_R2________________, TD_UR, | ||||
|     _______________LOWER_310_L3________________, _________NUMBER_03__________, _______________LOWER_310_R3________________, TD_DL | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
|  /* RAISE
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │ BOOT│DEBUG│     │     │ MAKE│     │ F7  │ F8  │ F9  │ F10 │     │     │     │LEAD │ | ||||
|   * │     │     │     │     │     │     │     │     │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │ RGB │ RGB ┃ RGB ┃ RGB │  _  ┃ F4  ┃ F5  │ F6  │ F11 │     │     │     │     │ | ||||
|   * │     │ TOG │ MOD ┃ HUI ┃ HUD │  -  ┃     ┃  _  │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │ RGB │ RGB │ RGB │ RGB │RAISE│ F1  │ F2  │ F3  │ F12 │     │     │     │     │ | ||||
|   * │     │ SAI │ SAD │ VAI │ VAD │     │     │     │     │     │     │     │     │     │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   *    | ||||
|   */ | ||||
| 
 | ||||
|   [_RAISE] = LAYOUT_3x14_wrapper ( | ||||
|     _______________RAISE_310_L1________________, _________NUMBER_01__________, _______________RAISE_310_R1________________, QK_LEAD, | ||||
|     _______________RAISE_310_L2________________, _________NUMBER_02__________, _______________RAISE_310_R2________________, TD_UR, | ||||
|     _______________RAISE_310_L3________________, _________NUMBER_03__________, _______________RAISE_310_R3________________, TD_DL | ||||
|   ), | ||||
|     | ||||
| 
 | ||||
|  /* EXTRAS
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │  !  │     │     │     │     │     │ /\  | ()  | []  |  ;  │     │     │     │LEAD │ | ||||
|   * │     │     │     │     │     │     │     │     │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │     │     ┃EXTRA┃     │     ┃ @ # ┃ & % |     |  '  |     │     │     │     │ | ||||
|   * │     │     │     ┃     ┃     │     ┃     ┃  _  │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────┼─────┼─────┤ | ||||
|   * │     │     │     │     │     │     │     │  ,  |  .  |  ?  │     │     │     │     │ | ||||
|   * │     │     │     │     │     │     │     │     │     │     │     │     │     │     │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   */ | ||||
| 
 | ||||
|   [_EX] = LAYOUT_3x14_wrapper ( | ||||
|     ______________EXTRAS_310_L1________________, _________NUMBER_01__________, ______________EXTRAS_310_R1________________, QK_LEAD, | ||||
|     ______________EXTRAS_310_L2________________, _________NUMBER_02__________, ______________EXTRAS_310_R2________________, TD_UR, | ||||
|     ______________EXTRAS_310_L3________________, _________NUMBER_03__________, ______________EXTRAS_310_R3________________, TD_DL | ||||
| ), | ||||
| 
 | ||||
| 
 | ||||
|  /* FUNCTION
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │COPY │CLIP │ SS  │     │     │     │     │     │     | /\  │ UP  │     │ DEL │LEAD │ | ||||
|   * │PASTE│     │     │     │     │     │     │     │     │     │     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┤ | ||||
|   * │SHIFT│ M05 │ M06 ┃ M07 ┃ M08 │     │     │     │     ┃ LEFT┃ DOWN│RIGHT│     │ UP  │ | ||||
|   * │     │     │     ┃     ┃     │     │     │     │     ┃     ┃     │     │     │RIGHT│ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┤ | ||||
|   * │     │ M01 │ M02 │ M03 │ M04 │     │     │     |     |     │  ,  │  .  │     │DOWN │ | ||||
|   * │ FN  │     │     │     │     │     │     │     │     │     │     │     │     │LEFT │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ | ||||
|   */ | ||||
| 
 | ||||
|   [_FN] = LAYOUT_3x14_wrapper ( | ||||
|     _____________FUNCTION_310_L1_______________, _________NUMBER_01__________, _____________FUNCTION_310_R1_______________, QK_LEAD, | ||||
|     _____________FUNCTION_310_L2_______________, _________NUMBER_02__________, _____________FUNCTION_310_R2_______________, TD_UR, | ||||
|     _____________FUNCTION_310_L3_______________, _________NUMBER_03__________, _____________FUNCTION_310_R3_______________, TD_DL | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  /* SYMBOLS
 | ||||
|   * ┌─────┬─────┬─────┬─────┬─────┐   ┌─────┬─────┬─────┬─────┬─────┐ | ||||
|   * │ $   │ ^   │ <   │ >   │     │   │     │ |   │ [   │ ]   │ -   │ | ||||
|   * │     │     │     │     │ SYMB│   │ SYMB│     │     │     │     │ | ||||
|   * ├─────┼─────┼─────╆━━━━━╅─────┤   ├─────╆━━━━━╅─────┼─────┼─────┤ | ||||
|   * │ %   │ :   │ ;   ┃ +   ┃ =   │   │     ┃     ┃ (   │ )   │ _   │ | ||||
|   * │     │     │     ┃     ┃     │   │     ┃     ┃     │     │     │ | ||||
|   * ├─────┼─────┼─────╄━━━━━╃─────┤   ├─────╄━━━━━╃─────┼─────┼─────┤ | ||||
|   * │ &   │ '   │ "   │ *   │ #   │   │  !  │  ?  │  /  │  \  │ @   │ | ||||
|   * │     │     │     │     │     │   │     │     │     │     │     │ | ||||
|   * └─────┴─────┴─────┴─────┴─────┘   └─────┴─────┴─────┴─────┴─────┘ | ||||
|  */ | ||||
| 
 | ||||
|   [_SYMB] = LAYOUT_3x14_wrapper ( | ||||
|     _____________SYMBOLS_310_L1________________, _________NUMBER_01__________, _____________SYMBOLS_310_R1________________, QK_LEAD, | ||||
|     _____________SYMBOLS_310_L2________________, _________NUMBER_02__________, _____________SYMBOLS_310_R2________________, TD_UR, | ||||
|     _____________SYMBOLS_310_L3________________, _________NUMBER_03__________, _____________SYMBOLS_310_R3________________, TD_DL | ||||
|   ), | ||||
| 
 | ||||
| 
 | ||||
|      | ||||
| }; | ||||
| 
 | ||||
| 
 | ||||
| #ifndef NUM_DIRECTIONS | ||||
| #    define NUM_DIRECTIONS 2 | ||||
| #endif | ||||
| #ifdef ENCODER_MAP_ENABLE | ||||
| const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { | ||||
|     [_WM]   =  { ENCODER_CCW_CW(LCTL(KC_V), LCTL(KC_C)) }, | ||||
|     [_QW] =  { ENCODER_CCW_CW(KC_VOLD,  KC_VOLU) }, | ||||
|     [_LOWER]   =  { ENCODER_CCW_CW(____,  ____) }, | ||||
|     [_RAISE] =  { ENCODER_CCW_CW(____,  ____) }, | ||||
|     [_EX] =  { ENCODER_CCW_CW(____,  ____) }, | ||||
|     [_FN]  =  { ENCODER_CCW_CW(RGB_MOD,  RGB_RMOD) }, | ||||
|     [_SYMB]  =  { ENCODER_CCW_CW(KC_VOLD,  KC_VOLU) } | ||||
| }; | ||||
| #endif | ||||
| 
 | ||||
| bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) { | ||||
|     switch (keycode) { | ||||
|         case SFT_T(KC_A): | ||||
|             // Do not force the mod-tap key press to be handled as a modifier
 | ||||
|             // if any other key was pressed while the mod-tap key is held down.
 | ||||
|             return false; | ||||
|         case TEX: | ||||
|             return false; | ||||
|         case CTRLX: | ||||
|             return false; | ||||
|         case FNZ: | ||||
|             return false; | ||||
|         case MGUI: | ||||
|             return false; | ||||
|         case VLOWER: | ||||
|             return false; | ||||
|         case KRAISE: | ||||
|             return false; | ||||
|         default: | ||||
|             // Force the dual-role key press to be handled as a modifier if any
 | ||||
|             // other key was pressed while the mod-tap key is held down.
 | ||||
|             return true; | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| #ifdef AUDIO_ENABLE | ||||
| float leader_start_song[][2] = SONG(ONE_UP_SOUND); | ||||
| float leader_succeed_song[][2] = SONG(ALL_STAR); | ||||
| float leader_fail_song[][2] = SONG(RICK_ROLL); | ||||
| #endif | ||||
| 
 | ||||
| void matrix_scan_user(void); | ||||
| 
 | ||||
| void leader_start_user(void) { | ||||
| #ifdef AUDIO_ENABLE | ||||
|     PLAY_SONG(leader_start_song); | ||||
| #endif | ||||
| } | ||||
| 
 | ||||
| bool did_leader_succeed; | ||||
| 
 | ||||
| void leader_end_user(void) { | ||||
|     did_leader_succeed = false; | ||||
| 
 | ||||
|     if (leader_sequence_one_key(KC_E)) { | ||||
|         SEND_STRING(SS_LCTL(SS_LSFT("t"))); | ||||
|         did_leader_succeed = true; | ||||
|     } else if (leader_sequence_two_keys(KC_E, KC_D)) { | ||||
|         SEND_STRING(SS_LGUI("r") "cmd\n" SS_LCTL("c")); | ||||
|         did_leader_succeed = true;     | ||||
|     } else if (leader_sequence_two_keys(KC_A, KC_T)) { | ||||
|         SEND_STRING("@guidehouse.com"); | ||||
|         did_leader_succeed = true; | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
| #ifdef AUDIO_ENABLE | ||||
|     if (did_leader_succeed) { | ||||
|         PLAY_SONG(leader_succeed_song); | ||||
|     } else { | ||||
|         PLAY_SONG(leader_fail_song); | ||||
|     } | ||||
| #endif | ||||
| } | ||||
							
								
								
									
										13
									
								
								keyboards/mechwild/bde/rev2/keymaps/miketronic/rules.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								keyboards/mechwild/bde/rev2/keymaps/miketronic/rules.mk
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,13 @@ | ||||
| BOOTMAGIC_ENABLE  = yes		# Enable Bootmagic Lite | ||||
| EXTRAKEY_ENABLE   = yes		# Audio control and System control | ||||
| TAP_DANCE_ENABLE  = yes     # Tap Dance keys | ||||
| NKRO_ENABLE       = yes     # Enable N-Key Rollover | ||||
| MACROS_ENABLED    = yes | ||||
| LEADER_ENABLE     = yes | ||||
| 
 | ||||
| ENCODER_ENABLE    = yes | ||||
| ENCODER_MAP_ENABLE = yes | ||||
| OLED_ENABLE = yes           # Enable OLED Screen | ||||
| OLED_DRIVER = SSD1306       # Set OLED Driver | ||||
| 
 | ||||
| RGBLIGHT_ENABLE   = yes     # Enable keyboard RGB underglow | ||||
							
								
								
									
										12
									
								
								users/miketronic/config.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								users/miketronic/config.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #pragma once | ||||
| 
 | ||||
| #define DEBOUNCE 10 | ||||
| #if defined(TAP_DANCE_ENABLE) | ||||
| #    define TAP_CODE_DELAY 5 | ||||
| #    define TAP_HOLD_CAPS_DELAY 25 | ||||
| #endif | ||||
| #define MACRO_TIMER 5 | ||||
| #define ENABLE_COMPILE_KEYCODE | ||||
							
								
								
									
										17
									
								
								users/miketronic/miketronic.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								users/miketronic/miketronic.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #include "miketronic.h" | ||||
| 
 | ||||
| 
 | ||||
| __attribute__ ((weak)) void keyboard_post_init_keymap(void) { } | ||||
| 
 | ||||
| // Init effect for RGB boards only
 | ||||
| void keyboard_post_init_user(void) { | ||||
| #ifdef RGB_MATRIX_ENABLE | ||||
|     rgblight_enable_noeeprom(); // enables Rgb, without saving settings
 | ||||
|     rgblight_sethsv_noeeprom(HSV_ORANGE); // sets the color without saving
 | ||||
|     rgb_matrix_mode_noeeprom(RGB_MATRIX_SOLID_COLOR); | ||||
| #endif | ||||
|     keyboard_post_init_keymap(); | ||||
| } | ||||
							
								
								
									
										63
									
								
								users/miketronic/miketronic.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								users/miketronic/miketronic.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,63 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #pragma once | ||||
| #include QMK_KEYBOARD_H | ||||
| 
 | ||||
| #include "quantum.h" | ||||
| #include "wrappers.h" | ||||
| #include "action.h" | ||||
| #include "version.h" | ||||
| #include "process_records.h" | ||||
| #ifdef TAP_DANCE_ENABLE | ||||
| #    include "tapdances.h" | ||||
| #endif | ||||
| 
 | ||||
| enum layer_names { | ||||
|   _WM, | ||||
|   _QW, | ||||
|   _LOWER, | ||||
|   _RAISE, | ||||
|   _EX, | ||||
|   _FN, | ||||
|   _SYMB | ||||
| }; | ||||
| 
 | ||||
| 
 | ||||
| // Layer macros
 | ||||
| #define LOWER MO(_LOWER) | ||||
| #define RAISE MO(_RAISE)  | ||||
| #define FN MO(_FN) | ||||
| #define EX MO(_EX) | ||||
| #define TEX     LT(_EX, KC_T)           // Tap for "T", hold for Extras layer
 | ||||
| #define BSYM    LT(_SYMB, KC_B)         // Tap for "B", hold for Symbols layer
 | ||||
| #define JSYM    LT(_SYMB, KC_J)         // Tap for "J", hold for Symbols layer
 | ||||
| #define FNZ     LT(_FN, KC_Z)           // Tap for "Z", hold for FN layer
 | ||||
| #define VLOWER  LT(_LOWER, KC_V)        // Tap for "V", hold for Lower layer
 | ||||
| #define KRAISE  LT(_RAISE, KC_K)        // Tap for "K", hold for Raise layer
 | ||||
| 
 | ||||
| // Mod Tap
 | ||||
| //#define ASFT    MT(MOD_LSFT, KC_A)      // Tap for "A", hold for Shift
 | ||||
| #define ASFT    SFT_T(KC_A)             // Tap for "A", hold for Shift
 | ||||
| #define GGUI    MT(MOD_LGUI, KC_G)      // Tap for "G", hold for OS Key
 | ||||
| #define MGUI    MT(MOD_LGUI, KC_M)      // Tap for "M", hold for OS Key
 | ||||
| #define CTRLX   MT(MOD_LCTL, KC_X)      // Tap for "X", hold for Ctrl
 | ||||
| #define CALT    MT(MOD_LALT, KC_C)      // Tap for "C", hold for Alt
 | ||||
| #define L_ALT   MT(MOD_RALT, KC_L)      // Tap for "L", hold for Alt
 | ||||
| #define TBSHFT  MT(MOD_LSFT, KC_TAB)    // Tap for Tab, hold for Shift
 | ||||
| #define SLSHFT  MT(MOD_RSFT, KC_SLSH)   // Tap for Slash, hold for Shift
 | ||||
| #define SFT_ENT RSFT_T(KC_ENT)          // Tap for Enter, hold for Shift
 | ||||
| #define OSSFT   OSM(MOD_LSFT)           // One shot left Shift
 | ||||
| 
 | ||||
| // MISC
 | ||||
| #define CALTDEL LCTL(LALT(KC_DEL))	    // Ctrl Alt Del
 | ||||
| #define TSKMGR  LCTL(LSFT(KC_ESC))	    // Task Manager
 | ||||
| #define CLIP    LCTL(LALT(KC_Q))	    	// Clipboard (Ditto)
 | ||||
| #define SS      LCTL(LALT(KC_G))		    // Greenshot region
 | ||||
| #define NUM     LSFT(KC_3) | ||||
| #define AT      LSFT(KC_2) | ||||
| #define COPY    LCTL(KC_C) | ||||
| #define PASTE   LCTL(KC_V) | ||||
| #define ____    KC_TRNS | ||||
| #define XXXX    KC_NO | ||||
| #define XXXXXXX KC_NO | ||||
							
								
								
									
										151
									
								
								users/miketronic/process_records.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										151
									
								
								users/miketronic/process_records.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,151 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #include "miketronic.h" | ||||
| #include "process_records.h" | ||||
| 
 | ||||
| __attribute__((weak)) bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { | ||||
|     return true; | ||||
| } | ||||
| 
 | ||||
| __attribute__((weak)) bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { | ||||
|     return true; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||||
| 
 | ||||
|     switch (keycode) { | ||||
|         case VERSION: | ||||
|             if (!record->event.pressed) { | ||||
|                 send_string_with_delay_P(PSTR(QMK_KEYBOARD ":" QMK_KEYMAP "\nVersion:" QMK_VERSION ", built: " QMK_BUILDDATE "\n"), MACRO_TIMER); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case M01: | ||||
|             if (record->event.pressed) { | ||||
|                 SEND_STRING("//a11"); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case M02: | ||||
|             if (record->event.pressed) { | ||||
|                 SEND_STRING("//a12"); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case M03: | ||||
|             if (record->event.pressed) { | ||||
|                 SEND_STRING("//a08"); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case M04: | ||||
|             if (record->event.pressed) { | ||||
|                 SEND_STRING("//a09"); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case M05: | ||||
|             if (record->event.pressed) { | ||||
|                 SEND_STRING("//th"); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case M06: | ||||
|             if (record->event.pressed) { | ||||
|                 SEND_STRING("//re"); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case M07: | ||||
|             if (record->event.pressed) { | ||||
|                 SEND_STRING("//yw"); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case M08: | ||||
|             if (record->event.pressed) { | ||||
|                 tap_random_base64(); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case CCCV: // One key copy/paste
 | ||||
|             if (record->event.pressed) { | ||||
|                 copy_paste_timer = timer_read(); | ||||
|             } else { | ||||
|                 if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy
 | ||||
|                     tap_code16(LCTL(KC_C)); | ||||
|                 } else { // Tap, paste
 | ||||
|                     tap_code16(LCTL(KC_V)); | ||||
|                 } | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case IENTER: // Tap for letter "i", slight hold for "enter"
 | ||||
|             if (record->event.pressed) { | ||||
|                 copy_paste_timer = timer_read(); | ||||
|             } else { | ||||
|                 if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, enter
 | ||||
|                     tap_code16(KC_ENT); | ||||
|                 } else { // Tap, "i"
 | ||||
|                     tap_code16(KC_I); | ||||
|                 } | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case PRN: | ||||
|             if (record->event.pressed) { | ||||
|                 SEND_STRING("()"); | ||||
|                 tap_code(KC_LEFT); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case BRACES: | ||||
|             if (record->event.pressed) { | ||||
|                 uint8_t shifted = get_mods() & (MOD_MASK_SHIFT); | ||||
|                     if (shifted) { | ||||
|                         unregister_code(KC_LSFT); | ||||
|                         unregister_code(KC_RSFT); | ||||
|                         SEND_STRING("<>"SS_TAP(X_LEFT)); | ||||
|                     } | ||||
|                     else { | ||||
|                         SEND_STRING("[]"SS_TAP(X_LEFT)); | ||||
|                     } | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
| #if defined(RGBLIGHT_ENABLE) | ||||
|         case RGB1: | ||||
|             if (record->event.pressed) { | ||||
|                 rgblight_sethsv_noeeprom(HSV_BLUE); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case RGB2: | ||||
|             if (record->event.pressed) { | ||||
|                 rgblight_sethsv_noeeprom(HSV_RED); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case RGB3: | ||||
|             if (record->event.pressed) { | ||||
|                 rgblight_sethsv_noeeprom(HSV_ORANGE); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case RGB4: | ||||
|             if (record->event.pressed) { | ||||
|                 rgblight_sethsv_noeeprom(HSV_WHITE); | ||||
|             } | ||||
|             break; | ||||
| 
 | ||||
|         case RGB5: | ||||
|             if (record->event.pressed) { | ||||
|                 rgblight_sethsv_noeeprom(HSV_GREEN); | ||||
|             } | ||||
|             break; | ||||
| #endif | ||||
|     } | ||||
|     return process_record_keymap(keycode, record) && process_record_secrets(keycode, record); | ||||
| } | ||||
							
								
								
									
										38
									
								
								users/miketronic/process_records.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								users/miketronic/process_records.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,38 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #pragma once | ||||
| #include "miketronic.h" | ||||
| 
 | ||||
| 
 | ||||
| bool process_record_secrets(uint16_t keycode, keyrecord_t *record); | ||||
| bool process_record_keymap(uint16_t keycode, keyrecord_t *record); | ||||
| uint16_t copy_paste_timer; | ||||
| 
 | ||||
| enum custom_keycodes { | ||||
|   WM = QK_USER, | ||||
|   QW, | ||||
|   MAKE, | ||||
|   VERSION, | ||||
|   M01, | ||||
|   M02, | ||||
|   M03, | ||||
|   M04, | ||||
|   M05, | ||||
|   M06,  | ||||
|   M07, | ||||
|   M08, | ||||
|   M09, | ||||
|   M10, | ||||
|   M11,  | ||||
|   M12, | ||||
|   RGB1, | ||||
|   RGB2,	 | ||||
|   RGB3, | ||||
|   RGB4, | ||||
|   RGB5, | ||||
|   IENTER, | ||||
|   PRN, | ||||
|   BRACES, | ||||
|   CCCV | ||||
| }; | ||||
							
								
								
									
										25
									
								
								users/miketronic/readme.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								users/miketronic/readme.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,25 @@ | ||||
| Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com> | ||||
| SPDX-License-Identifier: GPL-2.0+ | ||||
| 
 | ||||
| # Layout for ortho 4x12 and 3x10 boards | ||||
| # My current daily drivers: Planck, Pi40 and Satpad | ||||
| 
 | ||||
| **Objective:** I tried to make layouts with core functions that are able to be present on the 3x10 boards and adapt those to the "middle 3x10" of the 4x12 boards to make going back and forth between the two board sizes easier. | ||||
| 
 | ||||
| 
 | ||||
| ##### My Main Layer - Workman | ||||
| 
 | ||||
| |      |      |      |      |      |      |      |      |      |      |      |      | | ||||
| | ---- |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| ----:| | ||||
| | Tab/Esc |   Q/Esc  |   D  |   R  |   W  | B/SYM | J/SYM |   F  |   U  |   P  | BSPC | BSPC | | ||||
| | Tab/Shift |   A  |   S  |   H  | T/EX |   G  |   Y  |   N  |   E  |   O  | I/Enter | Enter| | ||||
| | Shft |   Z  |   X  |   M  |   C  |   V  |   K  |   L  | Spc/, | Spc/. |  /  | Up/Right | | ||||
| | FN   | Ctrl | OS  | Alt  |Lower | Spc/Enter |Spc/Enter |Raise | SS| Clip | CopyPaste | Dn/Left  | | ||||
| 
 | ||||
| SYM - Symbols layer on hold | ||||
| FN - Function layer on hold | ||||
| EX - Extras layer on hold | ||||
| Clip - Macro to my clipboard app (Ditto) | ||||
| SS - Greenshot screenshot region | ||||
| 
 | ||||
| ##### Will add the other layers as I find time | ||||
							
								
								
									
										4
									
								
								users/miketronic/rules.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								users/miketronic/rules.mk
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,4 @@ | ||||
| SRC += miketronic.c process_records.c | ||||
| ifeq ($(strip $(TAP_DANCE_ENABLE)), yes) | ||||
|     SRC += $(USER_PATH)/tapdances.c | ||||
| endif | ||||
							
								
								
									
										33
									
								
								users/miketronic/tapdances.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								users/miketronic/tapdances.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,33 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #include "miketronic.h" | ||||
| #include "tapdances.h" | ||||
| 
 | ||||
| 
 | ||||
| tap_dance_action_t tap_dance_actions[] = { | ||||
| 
 | ||||
|   [T_BRC]  = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC), 		        // Tap once for Left Brace, twice for Right Brace
 | ||||
|   [T_MIN]  = ACTION_TAP_DANCE_DOUBLE(KC_MINUS, KC_EQUAL),		        // Minus, Equals
 | ||||
|   [T_UMIN]  = ACTION_TAP_DANCE_DOUBLE(KC_UNDS, KC_MINS),		        // Underscore, Minus
 | ||||
|   [T_GESC]  = ACTION_TAP_DANCE_DOUBLE(KC_GRAVE, KC_ESCAPE),	            // Grave, Escape
 | ||||
|   [T_SE] = ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_ENT), 		            // Space, Enter
 | ||||
|   [T_MULTDIV] = ACTION_TAP_DANCE_DOUBLE(KC_PAST, KC_PSLS),  		    // Multiply, Divide
 | ||||
|   [T_UR] = ACTION_TAP_DANCE_DOUBLE(KC_UP, KC_RGHT),			            // Up, Right
 | ||||
|   [T_DL] = ACTION_TAP_DANCE_DOUBLE(KC_DOWN, KC_LEFT),		            // Down, Left
 | ||||
|   [T_CP] = ACTION_TAP_DANCE_DOUBLE(LCTL(KC_C), LCTL(KC_V)),             // Copy, Paste
 | ||||
|   [T_DENT] = ACTION_TAP_DANCE_DOUBLE(KC_DOT, KC_ENT),                   // Dot, Enter
 | ||||
|   [T_IENT] = ACTION_TAP_DANCE_DOUBLE(KC_I, KC_ENT),                     // "I", Enter
 | ||||
|   [T_CSPC] = ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_COMM),                  // Space, Comma
 | ||||
|   [T_DSPC] = ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_DOT),                   // Space, Dot
 | ||||
|   [T_QEXC] = ACTION_TAP_DANCE_DOUBLE(KC_QUES, KC_EXLM),                 // "?", "!"  
 | ||||
|   [T_QESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC),                     // "q", Escape
 | ||||
|   [T_TE] = ACTION_TAP_DANCE_DOUBLE(KC_TAB, KC_ESC),                     // Tab, Escape
 | ||||
|   [T_20] = ACTION_TAP_DANCE_DOUBLE(KC_2, KC_0),                         // "2", "0"
 | ||||
|   [T_SL] = ACTION_TAP_DANCE_DOUBLE(KC_SLSH, KC_BSLS),                   // Slash, Backslash
 | ||||
|   [T_XX] = ACTION_TAP_DANCE_DOUBLE(KC_LPRN, KC_RPRN),                   // Left Paren, Right Paren
 | ||||
|   [T_YY] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC),                   // Left Bracket, Right Bracket
 | ||||
|   [T_ATH] = ACTION_TAP_DANCE_DOUBLE(KC_AT, KC_HASH),	                // "@", "#"
 | ||||
|   [T_PRAM] = ACTION_TAP_DANCE_DOUBLE(KC_PERC, KC_AMPR)                  // "%", "&"
 | ||||
| }; | ||||
| 
 | ||||
							
								
								
									
										57
									
								
								users/miketronic/tapdances.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								users/miketronic/tapdances.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,57 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #pragma once | ||||
| #include "quantum.h" | ||||
| 
 | ||||
| 
 | ||||
| #define TD_BRC   TD(T_BRC) | ||||
| #define TD_ATH   TD(T_ATH) | ||||
| #define TD_CSPC  TD(T_CSPC) | ||||
| #define TD_DSPC  TD(T_DSPC) | ||||
| #define TD_CP    TD(T_CP) | ||||
| #define TD_DENT  TD(T_DENT) | ||||
| #define TD_IENT  TD(T_IENT) | ||||
| #define TD_MIN   TD(T_MIN) | ||||
| #define TD_UMIN  TD(T_UMIN) | ||||
| #define TD_GESC  TD(T_GESC) | ||||
| #define TD_QESC  TD(T_QESC) | ||||
| #define TD_QEXC  TD(T_QEXC) | ||||
| #define TD_PRAM  TD(T_PRAM) | ||||
| #define TD_SE    TD(T_SE) | ||||
| #define TD_MD    TD(T_MULTDIV) | ||||
| #define TD_UR    TD(T_UR) | ||||
| #define TD_DL    TD(T_DL) | ||||
| #define TD_TE    TD(T_TE) | ||||
| #define TD_20    TD(T_20) | ||||
| #define TD_SL    TD(T_SL) | ||||
| #define TD_XX    TD(T_XX) | ||||
| #define TD_YY    TD(T_YY) | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // Tap Dance
 | ||||
| enum tapdance_id{ | ||||
|   T_BRC = 0, | ||||
|   T_ATH, | ||||
|   T_CSPC, | ||||
|   T_DSPC, | ||||
|   T_CP, | ||||
|   T_DENT, | ||||
|   T_IENT, | ||||
|   T_MIN, | ||||
|   T_UMIN, | ||||
|   T_GESC, | ||||
|   T_QESC, | ||||
|   T_QEXC, | ||||
|   T_SE, | ||||
|   T_MULTDIV, | ||||
|   T_UR, | ||||
|   T_DL, | ||||
|   T_TE, | ||||
|   T_20, | ||||
|   T_SL, | ||||
|   T_XX, | ||||
|   T_YY, | ||||
|   T_PRAM | ||||
| }; | ||||
							
								
								
									
										226
									
								
								users/miketronic/wrappers.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										226
									
								
								users/miketronic/wrappers.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,226 @@ | ||||
| // Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
 | ||||
| // SPDX-License-Identifier: GPL-2.0+
 | ||||
| 
 | ||||
| #pragma once | ||||
| #include "miketronic.h" | ||||
| 
 | ||||
| /*  Pattern adapted from users/drashna/wrapper.h
 | ||||
|     Define per-layout keymap sections. Also requires a wrapper. | ||||
|     Example: | ||||
|         #define LAYOUT_:name_wrapper(...)            LAYOUT_:name(__VA_ARGS__) | ||||
|         const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|         [_MODS] = LAYOUT_:name _wrapper( | ||||
|             _______, ___________________BLANK___________________, ... | ||||
|             ... | ||||
|         ), | ||||
|         } | ||||
| */ | ||||
| 
 | ||||
| 
 | ||||
| // clang-format off
 | ||||
| #   define LAYOUT_ortho_4x12_wrapper(...)  LAYOUT_ortho_4x12(__VA_ARGS__) | ||||
| #   define LAYOUT_planck_grid_wrapper(...)  LAYOUT_planck_grid(__VA_ARGS__) | ||||
| #if (defined(KEYBOARD_hazel_satpad)) | ||||
| #   define LAYOUT_3x11_wrapper(...)  LAYOUT(__VA_ARGS__) | ||||
| #endif | ||||
| #if (defined(KEYBOARD_mechwild_bde_rev2)) | ||||
| #   define LAYOUT_3x14_wrapper(...)  LAYOUT(__VA_ARGS__) | ||||
| #endif | ||||
| #if (defined(KEYBOARD_hazel_bad_wings)) | ||||
| #   define LAYOUT_split_3x5_3_wrapper(...)  LAYOUT_split_3x5_3(__VA_ARGS__) | ||||
| #endif | ||||
| #if (defined(KEYBOARD_idobao_id75_v1)) | ||||
| #   define LAYOUT_ortho_5x15_wrapper(...)  LAYOUT_ortho_5x15(__VA_ARGS__) | ||||
| #endif | ||||
| 
 | ||||
| 
 | ||||
| #define _________NUMBER_01__________                       KC_7,   KC_8,     KC_9 | ||||
| #define _________NUMBER_02__________                       KC_4,   KC_5,     KC_6 | ||||
| #define _________NUMBER_03__________                       KC_1,   TD_20,    KC_3 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| #define _________________QWERTY_L1_________________        KC_Q,    KC_W,    KC_E,    KC_R,    KC_T | ||||
| #define _________________QWERTY_L2_________________        KC_A,    KC_S,    KC_D,    KC_F,    KC_G | ||||
| #define _________________QWERTY_L3_________________        FNZ,     KC_X,    KC_C,    VLOWER,  KC_B | ||||
| 
 | ||||
| #define _________________QWERTY_R1_________________        KC_Y,    KC_U,    KC_I,    KC_O,    KC_P | ||||
| #define _________________QWERTY_R2_________________        KC_H,    KC_J,    KRAISE,  KC_L,    KC_SCLN | ||||
| #define _________________QWERTY_R3_________________        KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLASH | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| #define ________________NUMBER_LEFT________________       KC_1,    KC_2,    KC_3,    KC_4,    KC_5 | ||||
| #define ________________NUMBER_RIGHT_______________       KC_6,    KC_7,    KC_8,    KC_9,    KC_0 | ||||
| #define _________________FUNC_LEFT_________________       KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5 | ||||
| #define _________________FUNC_RIGHT________________       KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10 | ||||
| 
 | ||||
| #define ______________LONG_FUNC_LEFT_______________       KC_F1,  KC_F2,  KC_F3, KC_F4,  KC_F5,  KC_F6 | ||||
| #define ______________LONG_FUNC_RIGHT______________       KC_F7,  KC_F8,  KC_F9, KC_F10, KC_F11, KC_F12 | ||||
| 
 | ||||
| #define _________________BLANK_5___________________        _______, _______, _______, _______, _______ | ||||
| #define _________________BLANK_6___________________        _______, _______, _______, _______, _______, _______ | ||||
| 
 | ||||
| #define _________________LOWER_L1__________________        KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC | ||||
| #define _________________LOWER_L2__________________        _________________FUNC_LEFT_________________ | ||||
| #define _________________LOWER_L3__________________        _________________FUNC_RIGHT________________ | ||||
| 
 | ||||
| #define _________________LOWER_R1__________________        KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN | ||||
| #define _________________LOWER_R2__________________        _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR | ||||
| #define _________________LOWER_R3__________________        _______, KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT | ||||
| 
 | ||||
| #define _______________LOWER_310_L1________________            PRN,  BRACES,   TD_SL, _______, _______ | ||||
| #define _______________LOWER_310_L2________________         TD_ATH, TD_PRAM, _______, _______, _______ | ||||
| #define _______________LOWER_310_L3________________        _______, _______, _______, _______, _______ | ||||
| 
 | ||||
| #define _______________LOWER_310_R1________________        _______,    KC_7,    KC_8,    KC_9, _______ | ||||
| #define _______________LOWER_310_R2________________        TD_DENT,    KC_4,    KC_5,    KC_6,   TD_UR | ||||
| #define _______________LOWER_310_R3________________           KC_0,    KC_1,   TD_20,    KC_3,   TD_DL | ||||
| 
 | ||||
| #define _______________LOWER_412_L1________________        _______,     PRN,  BRACES,   TD_SL, _______, _______ | ||||
| #define _______________LOWER_412_L2________________        _______,  TD_ATH, TD_PRAM, _______, _______, _______ | ||||
| #define _______________LOWER_412_L3________________        _______, _______, _______, _______, _______, _______ | ||||
| #define _______________LOWER_412_L4________________        _______, _______, _______, _______, _______, _______ | ||||
| 
 | ||||
| #define _______________LOWER_412_R1________________        _______,    KC_7,    KC_8,    KC_9, _______, _______ | ||||
| #define _______________LOWER_412_R2________________        TD_DENT,    KC_4,    KC_5,    KC_6, _______, _______ | ||||
| #define _______________LOWER_412_R3________________           KC_0,    KC_1,   TD_20,    KC_3, _______,   TD_UR | ||||
| #define _______________LOWER_412_R4________________        _______, _______, KC_BSPC, KC_SPC,  TD_DENT,   TD_DL | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| #define _________________RAISE_L1__________________        ________________NUMBER_LEFT________________ | ||||
| #define _________________RAISE_L2__________________        ___________________BLANK___________________ | ||||
| #define _________________RAISE_L3__________________        ___________________BLANK___________________ | ||||
| 
 | ||||
| #define _________________RAISE_R1__________________        ________________NUMBER_RIGHT_______________ | ||||
| #define _________________RAISE_R2__________________        _______, KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC | ||||
| #define _________________RAISE_R3__________________        _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END | ||||
| 
 | ||||
| #define _______________RAISE_310_L1________________        QK_BOOT, DB_TOGG, _______, _______, QK_MAKE | ||||
| #define _______________RAISE_310_L2________________        KC_LSFT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD | ||||
| #define _______________RAISE_310_L3________________        _______, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD | ||||
| 
 | ||||
| #define _______________RAISE_310_R1________________        _______, KC_F7,   KC_F8,   KC_F9,   KC_F10 | ||||
| #define _______________RAISE_310_R2________________        TD_UMIN, KC_F4,   KC_F5,   KC_F6,   KC_F11 | ||||
| #define _______________RAISE_310_R3________________        _______, KC_F1,   KC_F2,   KC_F3,   KC_F12 | ||||
| 
 | ||||
| #define _______________RAISE_412_L1________________        QK_BOOT, DB_TOGG, _______, _______, _______, QK_MAKE | ||||
| #define _______________RAISE_412_L2________________        KC_LSFT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, WM | ||||
| #define _______________RAISE_412_L3________________        _______, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, QW | ||||
| 
 | ||||
| #define _______________RAISE_412_R1________________        _______, _______, KC_F7,   KC_F8,   KC_F9,   KC_F10 | ||||
| #define _______________RAISE_412_R2________________        _______, _______, KC_F4,   KC_F5,   KC_F6,   KC_F11 | ||||
| #define _______________RAISE_412_R3________________        _______, TD_UMIN, KC_F1,   KC_F2,   KC_F3,   KC_F12 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| #define ______________EXTRAS_310_L1________________        KC_EXLM, _______, _______, _______, _______ | ||||
| #define ______________EXTRAS_310_L2________________        KC_LSFT, _______, _______, _______, _______ | ||||
| #define ______________EXTRAS_310_L3________________        _______, _______, _______, _______, _______ | ||||
| 
 | ||||
| #define ______________EXTRAS_310_R1________________        _______,   TD_SL,     PRN,  BRACES, KC_SCLN | ||||
| #define ______________EXTRAS_310_R2________________        QK_LEAD,  TD_ATH, TD_PRAM, _______, KC_QUOT | ||||
| #define ______________EXTRAS_310_R3________________        _______, _______, KC_COMM,  KC_DOT, KC_QUES | ||||
| 
 | ||||
| #define ______________EXTRAS_412_L1________________        _______, KC_EXLM, _______, _______, _______, _______ | ||||
| #define ______________EXTRAS_412_L2________________        KC_LSFT, _______, _______, _______, _______, _______ | ||||
| #define ______________EXTRAS_412_L3________________        _______, _______, _______, _______, _______, _______ | ||||
| #define ______________EXTRAS_412_L4________________        _______, _______, _______, _______, _______, TD_SE | ||||
| 
 | ||||
| #define ______________EXTRAS_412_R1________________        _______,   TD_SL,     PRN,  BRACES, KC_SCLN, _______ | ||||
| #define ______________EXTRAS_412_R2________________        QK_LEAD,  TD_ATH, TD_PRAM, _______, KC_QUOT, _______ | ||||
| #define ______________EXTRAS_412_R3________________        _______, _______, KC_COMM,  KC_DOT, KC_QUES, _______ | ||||
| #define ______________EXTRAS_412_R4________________        TD_SE,   _______, _______, _______, _______, _______ | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| #define _____________FUNCTION_310_L1_______________        CCCV,       CLIP,      SS, _______, _______ | ||||
| #define _____________FUNCTION_310_L2_______________        TBSHFT,      M05,     M06,     M07,     M08 | ||||
| #define _____________FUNCTION_310_L3_______________        _______,     M01,     M02,     M03,     M04 | ||||
| 
 | ||||
| #define _____________FUNCTION_310_R1_______________        _______,   TD_SL,   KC_UP, _______,  KC_DEL | ||||
| #define _____________FUNCTION_310_R2_______________        _______, KC_LEFT, KC_DOWN, KC_RGHT,   TD_UR | ||||
| #define _____________FUNCTION_310_R3_______________        _______, _______, KC_COMM,  KC_DOT,   TD_DL | ||||
| 
 | ||||
| #define _____________FUNCTION_412_L1_______________        CCCV,       CLIP,      SS, _______, _______, _______ | ||||
| #define _____________FUNCTION_412_L2_______________        TBSHFT,      M05,     M06,     M07,     M08, _______ | ||||
| #define _____________FUNCTION_412_L3_______________        _______,     M01,     M02,     M03,     M04, _______ | ||||
| #define _____________FUNCTION_412_L4_______________        _______,     RGB1,   RGB2,    RGB3,    RGB4, _______ | ||||
| 
 | ||||
| #define _____________FUNCTION_412_R1_______________        _______,    T_SL,   KC_UP, _______, _______,  KC_DEL | ||||
| #define _____________FUNCTION_412_R2_______________        _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______ | ||||
| #define _____________FUNCTION_412_R3_______________        _______, _______, KC_COMM,  KC_DOT, KC_QUES,    T_UR | ||||
| #define _____________FUNCTION_412_R4_______________        _______, _______, _______, _______, _______,    T_DL | ||||
| 
 | ||||
| #define ____________FUNCTION_ID75_TOP_R____________        M06,      M07,     M08,     M09,     M10,      KC_DEL | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| #define _____________SYMBOLS_310_L1________________        KC_DLR,  KC_CIRC, KC_LABK, KC_RABK,    ____ | ||||
| #define _____________SYMBOLS_310_L2________________        KC_PERC, KC_COLN, KC_SCLN, KC_PLUS,  KC_EQL | ||||
| #define _____________SYMBOLS_310_L3________________        KC_AMPR, KC_QUOT, KC_DQUO, KC_ASTR, KC_HASH | ||||
| 
 | ||||
| #define _____________SYMBOLS_310_R1________________        ____,    KC_PIPE, KC_LBRC, KC_RBRC, KC_MINS | ||||
| #define _____________SYMBOLS_310_R2________________        XXXX,       XXXX, KC_LPRN, KC_RPRN, KC_UNDS | ||||
| #define _____________SYMBOLS_310_R3________________        KC_EXLM, KC_QUES, KC_SLSH, KC_BSLS,   KC_AT | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| #define _________________ADJUST_L1_________________        RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG | ||||
| #define _________________ADJUST_L2_________________        MU_TOGG, CK_TOGG, AU_ON,   AU_OFF,  AG_NORM | ||||
| #define _________________ADJUST_L3_________________        RGB_RMOD,RGB_HUD,RGB_SAD, RGB_VAD, KC_RGB_T | ||||
| 
 | ||||
| #define _________________ADJUST_R1_________________        KC_SEC1, KC_SEC2, KC_SEC3, KC_SEC4, KC_SEC5 | ||||
| #define _________________ADJUST_R2_________________        AG_SWAP, QWERTY,  COLEMAK, DVORAK,  WORKMAN | ||||
| #define _________________ADJUST_R3_________________        MG_NKRO, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT | ||||
| 
 | ||||
| 
 | ||||
| #define _________FOUR_001__________                        KC_BSPC,  M08,     M08,     KC_MUTE | ||||
| #define _________FOUR_002__________                        KC_ENT,   M08,     PRN,     TD_UR | ||||
| #define _________FOUR_003__________                        KC_BSLS,  TD_ATH,  BRACES,  TD_DL | ||||
| 
 | ||||
| #define _________3KEY_LEFT___________                      OSSFT,    KC_SPC,  LOWER | ||||
| #define _________3KEY_RIGHT__________                      RAISE,    KC_ENT,  CCCV | ||||
| 
 | ||||
| #define ________3KEY_ID75_01_________                      OSSFT,    QK_LEAD, LOWER | ||||
| #define ________3KEY_ID75_02_________                      KC_7,     KC_8,    KC_9 | ||||
| #define ________3KEY_ID75_03_________                      KC_4,     KC_5,    KC_6 | ||||
| #define ________3KEY_ID75_04_________                      KC_1,     TD_20,   KC_3 | ||||
| #define ________3KEY_ID75_05_________                      KC_SPC,   TD_DENT, KC_ENT | ||||
| 
 | ||||
| 
 | ||||
| #define _____________WORKMAN_310_001_L_____________        TD_QESC,  KC_D,    KC_R,    KC_W,     BSYM | ||||
| #define _____________WORKMAN_310_001_R_____________        JSYM,     KC_F,    KC_U,    KC_P,     KC_BSPC | ||||
| #define _____________WORKMAN_310_002_L_____________        ASFT,     KC_S,    KC_H,    TEX,      KC_G | ||||
| #define _____________WORKMAN_310_002_R_____________        KC_Y,     KC_N,    KC_E,    KC_O,     KC_I | ||||
| #define _____________WORKMAN_310_003_L_____________        FNZ,      CTRLX,   MGUI,    CALT,     VLOWER | ||||
| #define _____________WORKMAN_310_003_R_____________        KRAISE,   KC_L,    TD_CSPC, TD_DSPC,  SFT_ENT | ||||
| #define _____________WORKMAN_310_004_L_____________        FN,       KC_LCTL, KC_LGUI, KC_LALT,  LOWER | ||||
| #define _____________WORKMAN_310_004_R_____________        RAISE,    SS,      CLIP,    CCCV,     FN | ||||
| 
 | ||||
| #define _____________WORKMAN_410_003_L_____________        FNZ,      KC_X,    KC_M,    KC_C,     KC_V | ||||
| #define _____________WORKMAN_410_003_R_____________        KC_K,     KC_L,    TD_CSPC, TD_DSPC,  SFT_ENT | ||||
| 
 | ||||
| #define _____________WORKMAN_311_001_L_____________        TD_QESC,   KC_D,    KC_R,    KC_W,    BSYM | ||||
| #define _____________WORKMAN_311_001_R_____________        JSYM,      KC_F,    KC_U,    KC_P,    KC_BSPC | ||||
| #define _____________WORKMAN_311_002_L_____________        ASFT,      KC_S,    KC_H,    TEX,     KC_G | ||||
| #define _____________WORKMAN_311_002_R_____________        KC_Y,      KC_N,    KC_E,    KC_O,    KC_I | ||||
| #define _____________WORKMAN_311_003_L_____________        FNZ,       CTRLX,   MGUI,    CALT,    VLOWER,   KC_ENT | ||||
| #define _____________WORKMAN_311_003_R_____________        KRAISE,    KC_L,    TD_CSPC, TD_DSPC, SFT_ENT | ||||
| 
 | ||||
| #define _____________WORKMAN_412_001_L_____________        TD_TE,    TD_QESC, KC_D,    KC_R,    KC_W,     BSYM | ||||
| #define _____________WORKMAN_412_001_R_____________        JSYM,     KC_F,    KC_U,    KC_P,    KC_BSPC,  KC_BSPC | ||||
| #define _____________WORKMAN_412_002_L_____________        TBSHFT,   KC_A,    KC_S,    KC_H,    TEX,      KC_G | ||||
| #define _____________WORKMAN_412_002_R_____________        KC_Y,     KC_N,    KC_E,    KC_O,    KC_I,     KC_ENT | ||||
| #define _____________WORKMAN_412_003_L_____________        KC_LSFT,  KC_Z,    KC_X,    KC_M,    KC_C,     KC_V | ||||
| #define _____________WORKMAN_412_003_R_____________        KC_K,     KC_L,    TD_CSPC, TD_DSPC, SFT_ENT,  TD_UR | ||||
| #define _____________WORKMAN_412_004_L_____________        FN,       KC_LCTL, KC_LGUI, KC_LALT, LOWER,    TD_SE | ||||
| #define _____________WORKMAN_412_004_R_____________        TD_SE,    RAISE,   SS,      CLIP,    CCCV,     TD_DL  | ||||
| 
 | ||||
| #define _____________WORKMAN_ID75_TOP_L____________        KC_ESC,   M01,     M02,     M03,     M04,      M05 | ||||
| #define _____________WORKMAN_ID75_TOP_R____________        M06,      M07,     M08,     M09,     M10,      KC_BSPC | ||||
| #define _____________WORKMAN_ID75_BOT_L____________        FN,       KC_LCTL, KC_LGUI, KC_LALT, LOWER,    KC_SPC | ||||
| #define _____________WORKMAN_ID75_BOT_R____________        KC_ENT,   RAISE,   SS,      CLIP,    CCCV,     TD_DL  | ||||
| 
 | ||||
| // clang-format on
 | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user