forked from forks/qmk_firmware
112 lines
2.1 KiB
C
112 lines
2.1 KiB
C
|
#include "kuatsure.h"
|
||
|
|
||
|
void tmux_prefix(void) {
|
||
|
register_code(KC_LCTL);
|
||
|
register_code(KC_SPC);
|
||
|
|
||
|
unregister_code(KC_LCTL);
|
||
|
unregister_code(KC_SPC);
|
||
|
}
|
||
|
|
||
|
void tmux_pane_zoom(void) {
|
||
|
tmux_prefix();
|
||
|
|
||
|
register_code(KC_Z);
|
||
|
unregister_code(KC_Z);
|
||
|
}
|
||
|
|
||
|
void tmux_pane_switch(uint16_t keycode) {
|
||
|
tmux_prefix();
|
||
|
|
||
|
register_code(KC_Q);
|
||
|
unregister_code(KC_Q);
|
||
|
|
||
|
register_code(keycode);
|
||
|
unregister_code(keycode);
|
||
|
}
|
||
|
|
||
|
void tmux_window_switch(uint16_t keycode) {
|
||
|
tmux_prefix();
|
||
|
|
||
|
register_code(keycode);
|
||
|
unregister_code(keycode);
|
||
|
}
|
||
|
|
||
|
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
|
||
|
|
||
|
// Whole Screen Shot
|
||
|
SEQ_ONE_KEY(KC_A) {
|
||
|
register_code(KC_LGUI);
|
||
|
register_code(KC_LSFT);
|
||
|
register_code(KC_3);
|
||
|
|
||
|
unregister_code(KC_3);
|
||
|
unregister_code(KC_LSFT);
|
||
|
unregister_code(KC_LGUI);
|
||
|
}
|
||
|
|
||
|
// Selective Screen Shot
|
||
|
SEQ_ONE_KEY(KC_S) {
|
||
|
register_code(KC_LGUI);
|
||
|
register_code(KC_LSFT);
|
||
|
register_code(KC_4);
|
||
|
|
||
|
unregister_code(KC_4);
|
||
|
unregister_code(KC_LSFT);
|
||
|
unregister_code(KC_LGUI);
|
||
|
}
|
||
|
|
||
|
// TMUX - shift to pane 1 and zoom
|
||
|
SEQ_ONE_KEY(KC_J) {
|
||
|
tmux_pane_switch(KC_1);
|
||
|
tmux_pane_zoom();
|
||
|
}
|
||
|
|
||
|
// TMUX - shift to pane 2 and zoom
|
||
|
SEQ_ONE_KEY(KC_K) {
|
||
|
tmux_pane_switch(KC_2);
|
||
|
tmux_pane_zoom();
|
||
|
}
|
||
|
|
||
|
// TMUX - shift to pane 3 and zoom
|
||
|
SEQ_ONE_KEY(KC_L) {
|
||
|
tmux_pane_switch(KC_3);
|
||
|
tmux_pane_zoom();
|
||
|
}
|
||
|
|
||
|
// TMUX - shift to last pane and zoom
|
||
|
SEQ_ONE_KEY(KC_SCOLON) {
|
||
|
tmux_prefix();
|
||
|
|
||
|
register_code(KC_SCOLON);
|
||
|
unregister_code(KC_SCOLON);
|
||
|
|
||
|
tmux_pane_zoom();
|
||
|
}
|
||
|
|
||
|
// TMUX - shift to first window
|
||
|
SEQ_ONE_KEY(KC_U) {
|
||
|
tmux_window_switch(KC_1);
|
||
|
}
|
||
|
|
||
|
// TMUX - shift to second window
|
||
|
SEQ_ONE_KEY(KC_I) {
|
||
|
tmux_window_switch(KC_2);
|
||
|
}
|
||
|
|
||
|
// TMUX - shift to third window
|
||
|
SEQ_ONE_KEY(KC_O) {
|
||
|
tmux_window_switch(KC_3);
|
||
|
}
|
||
|
}
|
||
|
}
|