keychron_qmk_firmware/users/kuatsure/kuatsure.c

112 lines
2.1 KiB
C
Raw Normal View History

Add kuatsure map to preonic board (#3087) * preonic-keymap: kuatsure keymap * preonic-kuatsure: move arrows and braces and stuffs * preonic-kuatsure: give more time for leader * preonic-kuatsure: move _ to lower o * preonic-kuatsure: tap dance space to enter * preonic-kuatsure: move vol buttons around conflicted with kaleidoscope file navigation * preonic-kuatsure: lower+spc = esc * preonic-kuatsure: add lock key & remove led stuff * preonic-kuatsure: little bit of tmux leadering * preonic-kuatsure: remove colemak and dvorak * preonic-kuatsure: remove lock key and tap dance * preonic-kuatsure: lower space -> enter -- raise space -> esc * preonice-kuatsure: move tmux stuff to homerow keys * preonic-kuatsure: set tmux prefix to a function * preonic-kuatsure: hello game layers * preonic-kuatsure: instead of zelda, ffvii for game mode :) * preonic-kuatsure: mild changes after playing games to game modes * preonice-kuatsure: omg comma dangles and spaces in switch! * preonic-kuatsure: kinda make lower a shift on special characters * preonic-kuatsure: I don't use these * preonic-kuatsure: move vol- to the begining of media row * preonic-kuatsure: more tmux leader stuff ( pane 3 & last pane ) * preonic-kuatsure: abstract out tmux pane zooming * preonic-kuatsure: abstract pane switch * preonic-kuatsure: game_mod is carries over lower positions starting to wonder if I need game_mod ... lol * preonic-kuatsure: switch lwr/rse esc / ent * preonic-kuatsure: add leaders for window switching * preonic-kuatsure: major pruning of adjust layer * preonic-kuatsure: major rework on raise layer * preonic-kuatsure: game mods f layer is raise now * user-kuatsure: hello * various-kuatsure: use layout format + globalize querty / number keys * preonic-kuatsure: don't use tap dance anymore * various-kuatsure: code formatting * various-kuatsure: add function layer vars * preonic-kuatsure: moar formatting * preonic-kuatsure: add home / end keys
2018-05-31 03:49:20 +06:00
#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);
}
}
}