 03e53dc8a2
			
		
	
	
		03e53dc8a2
		
	
	
	
	
		
			
			* feat-user-kuatsure: abstract symbol row out * feat-user-kuatsure: abstract grouped bracket, brace, paren out * fix-preonic-kuatsure: remove eol as requested by @drashna * feat-user-kuatsure: add KC_MAKE and KC_FLSH thanks to @drashna for the help * chore-preonic-kuatsure: remove auto shift * chore-user-kuatsure: move leader seq's to macro syntax * feat-user-kuatsure: add `KC_VRSN` key plus use it preonic keymap * chore-user-kuatsure: namespace keyboard macros `KB` * chore-preonic-kuatsure: move some keyboardy keys around * chore-preonic-kuatsure: remove parens, brackets, braces from lower * chore-user-kuatsure: move tmux window shifts to dbl press leaders * feat-user-kuatsure: add a computer lock leader seq * fix-preonic-kuatsure: go back to lower brackets * chore-preonic-kuatsure: clear out raise * feat-various-kuatsure: add meh + tab mod tap * chore-preonic-kuatsure: `raise` eats `game_mod` layer * fix-preonic-kuatsure: reverse pg up and pg down * chore-user-kuatsure: add double tap to turn off music * chore-user-kuatsure: move like seqs together * chore-preonic-kuatsure: add a few more items to the num pad on raise * feat-user-kuatsure: re-enable td for <> keys * chore-user-kuatsure: give a little more grace period for leader * fix-user-kuatsure: give lock leader a gui buffer no timer or anything, but alfred doesn't boot up as quickly as I would like sometimes gui doesn't do anything but gives a little bit of a time bump * fix-user-kuatsure: changes from @drashna review
		
			
				
	
	
		
			139 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			139 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #include "kuatsure.h"
 | |
| #include "version.h"
 | |
| 
 | |
| qk_tap_dance_action_t tap_dance_actions[] = {
 | |
|   [TD_LBRC] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_LT),
 | |
|   [TD_RBRC] = ACTION_TAP_DANCE_DOUBLE(KC_RBRC, KC_GT)
 | |
| };
 | |
| 
 | |
| __attribute__ ((weak))
 | |
| bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
 | |
|   return true;
 | |
| }
 | |
| 
 | |
| bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 | |
|   switch (keycode) {
 | |
|     case KB_MAKE:
 | |
|       if (!record->event.pressed) {
 | |
|         SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP SS_TAP(X_ENTER));
 | |
|       }
 | |
|       return false;
 | |
|       break;
 | |
| 
 | |
|     case KB_VRSN:
 | |
|       if (!record->event.pressed) {
 | |
|         SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
 | |
|       }
 | |
|       return false;
 | |
|       break;
 | |
| 
 | |
|     case KB_FLSH:
 | |
|       if (!record->event.pressed) {
 | |
|         SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP
 | |
|           #if  (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU))
 | |
|             ":dfu "
 | |
|           #elif defined(BOOTLOADER_HALFKAY)
 | |
|             ":teensy "
 | |
|           #elif defined(BOOTLOADER_CATERINA)
 | |
|             ":avrdude "
 | |
|           #endif
 | |
|           SS_TAP(X_ENTER)
 | |
|         );
 | |
| 
 | |
|         reset_keyboard();
 | |
|       }
 | |
|       return false;
 | |
|       break;
 | |
|   }
 | |
| 
 | |
|   return process_record_keymap(keycode, record);
 | |
| }
 | |
| 
 | |
| void tmux_prefix(void) {
 | |
|   tap_code16(LCTL(KC_SPC));
 | |
| }
 | |
| 
 | |
| void tmux_pane_zoom(void) {
 | |
|   tmux_prefix();
 | |
| 
 | |
|   SEND_STRING("z");
 | |
| }
 | |
| 
 | |
| LEADER_EXTERNS();
 | |
| void matrix_scan_user(void) {
 | |
|   LEADER_DICTIONARY() {
 | |
|     leading = false;
 | |
|     leader_end();
 | |
| 
 | |
|     // Available seqs
 | |
|     // SEQ_ONE_KEY, SEQ_TWO_KEYS, SEQ_THREE_KEYS
 | |
|     // anything you can do in a macro https://docs.qmk.fm/macros.html
 | |
|     // https://docs.qmk.fm/feature_leader_key.html
 | |
| 
 | |
|     // Stop music and lock computer via alfred
 | |
|     SEQ_ONE_KEY(KC_H) {
 | |
|       SEND_STRING(SS_LGUI(" ") SS_TAP(X_LGUI) "afk" SS_TAP(X_ENTER));
 | |
|     }
 | |
| 
 | |
|     // Stop music and lock computer via alfred
 | |
|     SEQ_TWO_KEYS(KC_H, KC_H) {
 | |
|       SEND_STRING(SS_LGUI(" ") SS_TAP(X_LGUI) "afk" SS_TAP(X_ENTER) SS_TAP(X_MEDIA_PLAY_PAUSE));
 | |
|     }
 | |
| 
 | |
|     // Whole Screen Shot
 | |
|     SEQ_ONE_KEY(KC_A) {
 | |
|       SEND_STRING(SS_LGUI(SS_LSFT("3")));
 | |
|     }
 | |
| 
 | |
|     // Selective Screen Shot
 | |
|     SEQ_ONE_KEY(KC_S) {
 | |
|       SEND_STRING(SS_LGUI(SS_LSFT("4")));
 | |
|     }
 | |
| 
 | |
|     // TMUX - shift to pane 1 and zoom
 | |
|     SEQ_ONE_KEY(KC_J) {
 | |
|       tmux_prefix();
 | |
|       SEND_STRING("q1");
 | |
|       tmux_pane_zoom();
 | |
|     }
 | |
| 
 | |
|     // TMUX - shift to first window
 | |
|     SEQ_TWO_KEYS(KC_J, KC_J) {
 | |
|       tmux_prefix();
 | |
|       SEND_STRING("1");
 | |
|     }
 | |
| 
 | |
|     // TMUX - shift to pane 2 and zoom
 | |
|     SEQ_ONE_KEY(KC_K) {
 | |
|       tmux_prefix();
 | |
|       SEND_STRING("q2");
 | |
|       tmux_pane_zoom();
 | |
|     }
 | |
| 
 | |
|     // TMUX - shift to second window
 | |
|     SEQ_TWO_KEYS(KC_K, KC_K) {
 | |
|       tmux_prefix();
 | |
|       SEND_STRING("2");
 | |
|     }
 | |
| 
 | |
|     // TMUX - shift to pane 3 and zoom
 | |
|     SEQ_ONE_KEY(KC_L) {
 | |
|       tmux_prefix();
 | |
|       SEND_STRING("q3");
 | |
|       tmux_pane_zoom();
 | |
|     }
 | |
| 
 | |
|     // TMUX - shift to third window
 | |
|     SEQ_TWO_KEYS(KC_L, KC_L) {
 | |
|       tmux_prefix();
 | |
|       SEND_STRING("3");
 | |
|     }
 | |
| 
 | |
|     // TMUX - shift to last pane and zoom
 | |
|     SEQ_ONE_KEY(KC_SCOLON) {
 | |
|       tmux_prefix();
 | |
|       SEND_STRING(";");
 | |
|       tmux_pane_zoom();
 | |
|     }
 | |
|   }
 | |
| }
 |