diff options
| author | Jarrett Drouillard <jarrett@thestyl.us> | 2018-05-30 17:49:20 -0400 |
|---|---|---|
| committer | Drashna Jaelre <drashna@live.com> | 2018-05-30 14:49:20 -0700 |
| commit | 258954dc3e884dfa9a057f10f96c4544737e9e81 (patch) | |
| tree | 06f0cdf1638ce1161770fe9834d2faee7498b0b6 | |
| parent | 835431330c26021b6d3e7c1f4169d8ea075961bc (diff) | |
| download | qmk_firmware-258954dc3e884dfa9a057f10f96c4544737e9e81.tar.gz qmk_firmware-258954dc3e884dfa9a057f10f96c4544737e9e81.zip | |
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
| -rw-r--r-- | keyboards/preonic/keymaps/kuatsure/config.h | 43 | ||||
| -rw-r--r-- | keyboards/preonic/keymaps/kuatsure/keymap.c | 216 | ||||
| -rw-r--r-- | keyboards/preonic/keymaps/kuatsure/readme.md | 1 | ||||
| -rw-r--r-- | keyboards/preonic/keymaps/kuatsure/rules.mk | 1 | ||||
| -rw-r--r-- | quantum/audio/song_list.h | 14 | ||||
| -rw-r--r-- | users/kuatsure/kuatsure.c | 111 | ||||
| -rw-r--r-- | users/kuatsure/kuatsure.h | 31 | ||||
| -rw-r--r-- | users/kuatsure/readme.md | 14 | ||||
| -rw-r--r-- | users/kuatsure/rules.mk | 1 |
9 files changed, 431 insertions, 1 deletions
diff --git a/keyboards/preonic/keymaps/kuatsure/config.h b/keyboards/preonic/keymaps/kuatsure/config.h new file mode 100644 index 000000000..ba0ed525e --- /dev/null +++ b/keyboards/preonic/keymaps/kuatsure/config.h | |||
| @@ -0,0 +1,43 @@ | |||
| 1 | #ifndef CONFIG_USER_H | ||
| 2 | #define CONFIG_USER_H | ||
| 3 | |||
| 4 | #include "config_common.h" | ||
| 5 | |||
| 6 | #ifdef AUDIO_ENABLE | ||
| 7 | #define STARTUP_SONG SONG(PREONIC_SOUND) | ||
| 8 | // #define STARTUP_SONG SONG(NO_SOUND) | ||
| 9 | |||
| 10 | #define GAME_SOUND VICTORY_FANFARE_SHORT | ||
| 11 | |||
| 12 | #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ | ||
| 13 | SONG(GAME_SOUND) \ | ||
| 14 | } | ||
| 15 | #endif | ||
| 16 | |||
| 17 | #define MUSIC_MASK (keycode != KC_NO) | ||
| 18 | |||
| 19 | /* | ||
| 20 | * MIDI options | ||
| 21 | */ | ||
| 22 | |||
| 23 | /* Prevent use of disabled MIDI features in the keymap */ | ||
| 24 | //#define MIDI_ENABLE_STRICT 1 | ||
| 25 | |||
| 26 | /* enable basic MIDI features: | ||
| 27 | - MIDI notes can be sent when in Music mode is on | ||
| 28 | */ | ||
| 29 | |||
| 30 | #define MIDI_BASIC | ||
| 31 | |||
| 32 | /* enable advanced MIDI features: | ||
| 33 | - MIDI notes can be added to the keymap | ||
| 34 | - Octave shift and transpose | ||
| 35 | - Virtual sustain, portamento, and modulation wheel | ||
| 36 | - etc. | ||
| 37 | */ | ||
| 38 | //#define MIDI_ADVANCED | ||
| 39 | |||
| 40 | /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ | ||
| 41 | //#define MIDI_TONE_KEYCODE_OCTAVES 2 | ||
| 42 | |||
| 43 | #endif | ||
diff --git a/keyboards/preonic/keymaps/kuatsure/keymap.c b/keyboards/preonic/keymaps/kuatsure/keymap.c new file mode 100644 index 000000000..63c3937fc --- /dev/null +++ b/keyboards/preonic/keymaps/kuatsure/keymap.c | |||
| @@ -0,0 +1,216 @@ | |||
| 1 | /* Copyright 2015-2017 Jack Humbert | ||
| 2 | * | ||
| 3 | * This program is free software: you can redistribute it and/or modify | ||
| 4 | * it under the terms of the GNU General Public License as published by | ||
| 5 | * the Free Software Foundation, either version 2 of the License, or | ||
| 6 | * (at your option) any later version. | ||
| 7 | * | ||
| 8 | * This program is distributed in the hope that it will be useful, | ||
| 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 11 | * GNU General Public License for more details. | ||
| 12 | * | ||
| 13 | * You should have received a copy of the GNU General Public License | ||
| 14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 15 | */ | ||
| 16 | |||
| 17 | #include QMK_KEYBOARD_H | ||
| 18 | #include "kuatsure.h" | ||
| 19 | |||
| 20 | enum preonic_layers { | ||
| 21 | _QWERTY, | ||
| 22 | _GAME, | ||
| 23 | _GAME_MOD, | ||
| 24 | _LOWER, | ||
| 25 | _RAISE, | ||
| 26 | _ADJUST, | ||
| 27 | }; | ||
| 28 | |||
| 29 | enum preonic_keycodes { | ||
| 30 | QWERTY = SAFE_RANGE, | ||
| 31 | GAME, | ||
| 32 | GAME_MOD, | ||
| 33 | LOWER, | ||
| 34 | RAISE, | ||
| 35 | }; | ||
| 36 | |||
| 37 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 38 | |||
| 39 | /* Qwerty | ||
| 40 | * ,-----------------------------------------------------------------------------------. | ||
| 41 | * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | | ||
| 42 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 43 | * | Tab | Q | W | E | R | T | Y | U | I | O | P | \ | | ||
| 44 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 45 | * | Ctrl | A | S | D | F | G | H | J | K | L | ; | ' | | ||
| 46 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 47 | * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | | ||
| 48 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 49 | * |Leader| Game | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | | ||
| 50 | * `-----------------------------------------------------------------------------------' | ||
| 51 | */ | ||
| 52 | [_QWERTY] = LAYOUT_preonic_grid_wrapper( \ | ||
| 53 | KC_ESC, _________________NUMBER_L1_________________, _________________NUMBER_R1_________________, KC_BSPC, \ | ||
| 54 | KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSLS, \ | ||
| 55 | KC_LCTL, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, \ | ||
| 56 | KC_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_ENT, \ | ||
| 57 | KC_LEAD, GAME, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ | ||
| 58 | ), | ||
| 59 | |||
| 60 | /* Game | ||
| 61 | * ,-----------------------------------------------------------------------------------. | ||
| 62 | * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | | ||
| 63 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 64 | * | Tab | Q | W | E | R | T | Y | U | I | O | P | \ | | ||
| 65 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 66 | * | Ctrl | A | S | D | F | G | H | J | K | L | ; | ' | | ||
| 67 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 68 | * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | | ||
| 69 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 70 | * |Leader|Qwerty| Alt | Spc |Game+ | Space |Game+ | Left | Down | Up |Right | | ||
| 71 | * `-----------------------------------------------------------------------------------' | ||
| 72 | */ | ||
| 73 | [_GAME] = LAYOUT_preonic_grid_wrapper( \ | ||
| 74 | KC_ESC, _________________NUMBER_L1_________________, _________________NUMBER_R1_________________, KC_BSPC, \ | ||
| 75 | KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSLS, \ | ||
| 76 | KC_LCTL, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, \ | ||
| 77 | KC_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_ENT, \ | ||
| 78 | KC_LEAD, QWERTY, KC_LALT, KC_SPC, GAME_MOD, KC_SPC, KC_SPC, GAME_MOD, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ | ||
| 79 | ), | ||
| 80 | |||
| 81 | /* Game Modifiers | ||
| 82 | * ,-----------------------------------------------------------------------------------. | ||
| 83 | * | | | | | | | | | | | | | | ||
| 84 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 85 | * | | F9 | F10 | F11 | F12 | ` | | 7 | 8 | 9 | | | | ||
| 86 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 87 | * | | F5 | F6 | F7 | F8 | ~ | | 4 | 5 | 6 | | | | ||
| 88 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 89 | * |Shift | F1 | F2 | F3 | F4 | | | 1 | 2 | 3 | | | | ||
| 90 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 91 | * | | | | | | | | 0 | 0 | | | | ||
| 92 | * `-----------------------------------------------------------------------------------' | ||
| 93 | */ | ||
| 94 | [_GAME_MOD] = LAYOUT_preonic_grid_wrapper( \ | ||
| 95 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | ||
| 96 | _______, ____________FUNCTION_3____________, KC_GRV, _______, KC_7, KC_8, KC_9, _______, _______, \ | ||
| 97 | _______, ____________FUNCTION_2____________, KC_TILD, _______, KC_4, KC_5, KC_6, _______, _______, \ | ||
| 98 | KC_LSFT, ____________FUNCTION_1____________, _______, _______, KC_1, KC_2, KC_3, _______, _______, \ | ||
| 99 | _______, _______, _______, _______, _______, _______, _______, _______, KC_0, KC_0, _______, _______ \ | ||
| 100 | ), | ||
| 101 | |||
| 102 | /* Lower | ||
| 103 | * ,-----------------------------------------------------------------------------------. | ||
| 104 | * | ~ | ! | @ | # | $ | % | ^ | < | > | | | | | ||
| 105 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 106 | * | | | | Up | | ` | | { | } | _ | | | | | ||
| 107 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 108 | * | | Del | Left | Down | Right| ~ | = | ( | ) | + | : | " | | ||
| 109 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 110 | * | | Vol- | Prev | Play | Next | Vol+ | - | [ | ] | | ? | | | ||
| 111 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 112 | * | | Mute | | | | Esc | | Home | PgUp | PgDwn| End | | ||
| 113 | * `-----------------------------------------------------------------------------------' | ||
| 114 | */ | ||
| 115 | [_LOWER] = LAYOUT_preonic_grid_wrapper( \ | ||
| 116 | KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_LT, KC_GT, _______, _______, _______, \ | ||
| 117 | _______, _______, _______, KC_UP, _______, KC_GRV, _______, KC_LCBR, KC_RCBR, KC_UNDS, _______, KC_PIPE, \ | ||
| 118 | _______, KC_DEL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TILD, KC_EQL, KC_LPRN, KC_RPRN, KC_PLUS, KC_COLN, KC_DQT , \ | ||
| 119 | _______, KC_VOLD, KC_MRWD, KC_MPLY, KC_MFFD, KC_VOLU, KC_MINS, KC_LBRC, KC_RBRC, _______, KC_QUES, _______, \ | ||
| 120 | _______, KC_MUTE, _______, _______, _______, KC_ESC, KC_ESC, _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END \ | ||
| 121 | ), | ||
| 122 | |||
| 123 | /* Raise | ||
| 124 | * ,-----------------------------------------------------------------------------------. | ||
| 125 | * | E`~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | | | ||
| 126 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 127 | * | | F9 | F10 | F11 | F12 | | | | | | | Bksp | | ||
| 128 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 129 | * | | F5 | F6 | F7 | F8 | | | | | | | | | ||
| 130 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 131 | * | | F1 | F2 | F3 | F4 | | | | | | | | | ||
| 132 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 133 | * | | | | | | Enter | | Home | PgUp | PgDwn| End | | ||
| 134 | * `-----------------------------------------------------------------------------------' | ||
| 135 | */ | ||
| 136 | [_RAISE] = LAYOUT_preonic_grid_wrapper( \ | ||
| 137 | KC_GESC, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, \ | ||
| 138 | _______, ____________FUNCTION_3____________, _______, _______, _______, _______, _______, _______, KC_BSPC, \ | ||
| 139 | _______, ____________FUNCTION_2____________, _______, _______, _______, _______, _______, _______, _______, \ | ||
| 140 | _______, ____________FUNCTION_1____________, _______, _______, _______, _______, _______, _______, _______, \ | ||
| 141 | _______, _______, _______, _______, _______, KC_ENT, KC_ENT, _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END \ | ||
| 142 | ), | ||
| 143 | |||
| 144 | /* Adjust (Lower + Raise) | ||
| 145 | * ,-----------------------------------------------------------------------------------. | ||
| 146 | * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | | ||
| 147 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 148 | * | | Reset| Debug| | | | | | | | | Del | | ||
| 149 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 150 | * | | | | | |Aud on|AudOff| | | | | | | ||
| 151 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 152 | * | | | | |MusMod|Mus on|MusOff| | | | | | | ||
| 153 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 154 | * | | | | | | | |Qwerty| Game | | | | ||
| 155 | * `-----------------------------------------------------------------------------------' | ||
| 156 | */ | ||
| 157 | [_ADJUST] = LAYOUT_preonic_grid_wrapper( \ | ||
| 158 | ____________FUNCTION_1____________, ____________FUNCTION_2____________, ____________FUNCTION_3____________, \ | ||
| 159 | _______, RESET, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \ | ||
| 160 | _______, _______, _______, _______, _______, AU_ON, AU_OFF, _______, _______, _______, _______, _______, \ | ||
| 161 | _______, _______, _______, _______, MU_MOD, MU_ON, MU_OFF, _______, _______, _______, _______, _______, \ | ||
| 162 | _______, _______, _______, _______, _______, _______, _______, _______, QWERTY, GAME, _______, _______ \ | ||
| 163 | ), | ||
| 164 | |||
| 165 | }; | ||
| 166 | |||
| 167 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 168 | switch (keycode) { | ||
| 169 | case QWERTY: | ||
| 170 | if (record->event.pressed) { | ||
| 171 | set_single_persistent_default_layer(_QWERTY); | ||
| 172 | } | ||
| 173 | return false; | ||
| 174 | break; | ||
| 175 | |||
| 176 | case GAME: | ||
| 177 | if (record->event.pressed) { | ||
| 178 | set_single_persistent_default_layer(_GAME); | ||
| 179 | } | ||
| 180 | return false; | ||
| 181 | break; | ||
| 182 | |||
| 183 | case GAME_MOD: | ||
| 184 | if (record->event.pressed) { | ||
| 185 | layer_on(_GAME_MOD); | ||
| 186 | } else { | ||
| 187 | layer_off(_GAME_MOD); | ||
| 188 | } | ||
| 189 | return false; | ||
| 190 | break; | ||
| 191 | |||
| 192 | case LOWER: | ||
| 193 | if (record->event.pressed) { | ||
| 194 | layer_on(_LOWER); | ||
| 195 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 196 | } else { | ||
| 197 | layer_off(_LOWER); | ||
| 198 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 199 | } | ||
| 200 | return false; | ||
| 201 | break; | ||
| 202 | |||
| 203 | case RAISE: | ||
| 204 | if (record->event.pressed) { | ||
| 205 | layer_on(_RAISE); | ||
| 206 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 207 | } else { | ||
| 208 | layer_off(_RAISE); | ||
| 209 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 210 | } | ||
| 211 | return false; | ||
| 212 | break; | ||
| 213 | |||
| 214 | } | ||
| 215 | return true; | ||
| 216 | }; | ||
diff --git a/keyboards/preonic/keymaps/kuatsure/readme.md b/keyboards/preonic/keymaps/kuatsure/readme.md new file mode 100644 index 000000000..64cf5ae28 --- /dev/null +++ b/keyboards/preonic/keymaps/kuatsure/readme.md | |||
| @@ -0,0 +1 @@ | |||
| # The kuatsure Preonic layout - largely based on the Preonic's & Keyboard Paradise V60's layout | |||
diff --git a/keyboards/preonic/keymaps/kuatsure/rules.mk b/keyboards/preonic/keymaps/kuatsure/rules.mk new file mode 100644 index 000000000..76d73acef --- /dev/null +++ b/keyboards/preonic/keymaps/kuatsure/rules.mk | |||
| @@ -0,0 +1 @@ | |||
| BACKLIGHT_ENABLE = no | |||
diff --git a/quantum/audio/song_list.h b/quantum/audio/song_list.h index 1ddcfb345..8bcc1a922 100644 --- a/quantum/audio/song_list.h +++ b/quantum/audio/song_list.h | |||
| @@ -187,7 +187,7 @@ | |||
| 187 | Q__NOTE(_AS5 ), \ | 187 | Q__NOTE(_AS5 ), \ |
| 188 | Q__NOTE(_B5), \ | 188 | Q__NOTE(_B5), \ |
| 189 | Q__NOTE(_C6 ), \ | 189 | Q__NOTE(_C6 ), \ |
| 190 | Q__NOTE(_CS6 ), | 190 | Q__NOTE(_CS6 ), |
| 191 | 191 | ||
| 192 | #define MAJOR_SOUND \ | 192 | #define MAJOR_SOUND \ |
| 193 | Q__NOTE(_A5 ), \ | 193 | Q__NOTE(_A5 ), \ |
| @@ -423,4 +423,16 @@ | |||
| 423 | H__NOTE(_FS5), \ | 423 | H__NOTE(_FS5), \ |
| 424 | H__NOTE(_D5 ), \ | 424 | H__NOTE(_D5 ), \ |
| 425 | 425 | ||
| 426 | #define VICTORY_FANFARE_SHORT \ | ||
| 427 | ED_NOTE(_C6), \ | ||
| 428 | ED_NOTE(_C6), \ | ||
| 429 | ED_NOTE(_C6), \ | ||
| 430 | ED_NOTE(_C6), \ | ||
| 431 | W__NOTE(_REST), \ | ||
| 432 | QD_NOTE(_GS5), \ | ||
| 433 | QD_NOTE(_AS5), \ | ||
| 434 | Q__NOTE(_C6), \ | ||
| 435 | Q__NOTE(_AS5), \ | ||
| 436 | Q__NOTE(_C6), \ | ||
| 437 | |||
| 426 | #endif | 438 | #endif |
diff --git a/users/kuatsure/kuatsure.c b/users/kuatsure/kuatsure.c new file mode 100644 index 000000000..a18713626 --- /dev/null +++ b/users/kuatsure/kuatsure.c | |||
| @@ -0,0 +1,111 @@ | |||
| 1 | #include "kuatsure.h" | ||
| 2 | |||
| 3 | void tmux_prefix(void) { | ||
| 4 | register_code(KC_LCTL); | ||
| 5 | register_code(KC_SPC); | ||
| 6 | |||
| 7 | unregister_code(KC_LCTL); | ||
| 8 | unregister_code(KC_SPC); | ||
| 9 | } | ||
| 10 | |||
| 11 | void tmux_pane_zoom(void) { | ||
| 12 | tmux_prefix(); | ||
| 13 | |||
| 14 | register_code(KC_Z); | ||
| 15 | unregister_code(KC_Z); | ||
| 16 | } | ||
| 17 | |||
| 18 | void tmux_pane_switch(uint16_t keycode) { | ||
| 19 | tmux_prefix(); | ||
| 20 | |||
| 21 | register_code(KC_Q); | ||
| 22 | unregister_code(KC_Q); | ||
| 23 | |||
| 24 | register_code(keycode); | ||
| 25 | unregister_code(keycode); | ||
| 26 | } | ||
| 27 | |||
| 28 | void tmux_window_switch(uint16_t keycode) { | ||
| 29 | tmux_prefix(); | ||
| 30 | |||
| 31 | register_code(keycode); | ||
| 32 | unregister_code(keycode); | ||
| 33 | } | ||
| 34 | |||
| 35 | LEADER_EXTERNS(); | ||
| 36 | void matrix_scan_user(void) { | ||
| 37 | LEADER_DICTIONARY() { | ||
| 38 | leading = false; | ||
| 39 | leader_end(); | ||
| 40 | |||
| 41 | // Available seqs | ||
| 42 | // SEQ_ONE_KEY, SEQ_TWO_KEYS, SEQ_THREE_KEYS | ||
| 43 | // anything you can do in a macro https://docs.qmk.fm/macros.html | ||
| 44 | // https://docs.qmk.fm/feature_leader_key.html | ||
| 45 | |||
| 46 | // Whole Screen Shot | ||
| 47 | SEQ_ONE_KEY(KC_A) { | ||
| 48 | register_code(KC_LGUI); | ||
| 49 | register_code(KC_LSFT); | ||
| 50 | register_code(KC_3); | ||
| 51 | |||
| 52 | unregister_code(KC_3); | ||
| 53 | unregister_code(KC_LSFT); | ||
| 54 | unregister_code(KC_LGUI); | ||
| 55 | } | ||
| 56 | |||
| 57 | // Selective Screen Shot | ||
| 58 | SEQ_ONE_KEY(KC_S) { | ||
| 59 | register_code(KC_LGUI); | ||
| 60 | register_code(KC_LSFT); | ||
| 61 | register_code(KC_4); | ||
| 62 | |||
| 63 | unregister_code(KC_4); | ||
| 64 | unregister_code(KC_LSFT); | ||
| 65 | unregister_code(KC_LGUI); | ||
| 66 | } | ||
| 67 | |||
| 68 | // TMUX - shift to pane 1 and zoom | ||
| 69 | SEQ_ONE_KEY(KC_J) { | ||
| 70 | tmux_pane_switch(KC_1); | ||
| 71 | tmux_pane_zoom(); | ||
| 72 | } | ||
| 73 | |||
| 74 | // TMUX - shift to pane 2 and zoom | ||
| 75 | SEQ_ONE_KEY(KC_K) { | ||
| 76 | tmux_pane_switch(KC_2); | ||
| 77 | tmux_pane_zoom(); | ||
| 78 | } | ||
| 79 | |||
| 80 | // TMUX - shift to pane 3 and zoom | ||
| 81 | SEQ_ONE_KEY(KC_L) { | ||
| 82 | tmux_pane_switch(KC_3); | ||
| 83 | tmux_pane_zoom(); | ||
| 84 | } | ||
| 85 | |||
| 86 | // TMUX - shift to last pane and zoom | ||
| 87 | SEQ_ONE_KEY(KC_SCOLON) { | ||
| 88 | tmux_prefix(); | ||
| 89 | |||
| 90 | register_code(KC_SCOLON); | ||
| 91 | unregister_code(KC_SCOLON); | ||
| 92 | |||
| 93 | tmux_pane_zoom(); | ||
| 94 | } | ||
| 95 | |||
| 96 | // TMUX - shift to first window | ||
| 97 | SEQ_ONE_KEY(KC_U) { | ||
| 98 | tmux_window_switch(KC_1); | ||
| 99 | } | ||
| 100 | |||
| 101 | // TMUX - shift to second window | ||
| 102 | SEQ_ONE_KEY(KC_I) { | ||
| 103 | tmux_window_switch(KC_2); | ||
| 104 | } | ||
| 105 | |||
| 106 | // TMUX - shift to third window | ||
| 107 | SEQ_ONE_KEY(KC_O) { | ||
| 108 | tmux_window_switch(KC_3); | ||
| 109 | } | ||
| 110 | } | ||
| 111 | } | ||
diff --git a/users/kuatsure/kuatsure.h b/users/kuatsure/kuatsure.h new file mode 100644 index 000000000..56fb684ec --- /dev/null +++ b/users/kuatsure/kuatsure.h | |||
| @@ -0,0 +1,31 @@ | |||
| 1 | #ifndef KUATSURE | ||
| 2 | #define KUATSURE | ||
| 3 | |||
| 4 | #include "quantum.h" | ||
| 5 | |||
| 6 | void tmux_prefix(void); | ||
| 7 | void tmux_pane_zoom(void); | ||
| 8 | void tmux_pane_switch(uint16_t keycode); | ||
| 9 | void tmux_window_switch(uint16_t keycode); | ||
| 10 | |||
| 11 | #undef LEADER_TIMEOUT | ||
| 12 | #define LEADER_TIMEOUT 300 | ||
| 13 | |||
| 14 | #define LAYOUT_preonic_grid_wrapper(...) LAYOUT_preonic_grid(__VA_ARGS__) | ||
| 15 | |||
| 16 | #define _________________NUMBER_L1_________________ KC_1, KC_2, KC_3, KC_4, KC_5 | ||
| 17 | #define _________________NUMBER_R1_________________ KC_6, KC_7, KC_8, KC_9, KC_0 | ||
| 18 | |||
| 19 | #define _________________QWERTY_L1_________________ KC_Q, KC_W, KC_E, KC_R, KC_T | ||
| 20 | #define _________________QWERTY_L2_________________ KC_A, KC_S, KC_D, KC_F, KC_G | ||
| 21 | #define _________________QWERTY_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_B | ||
| 22 | |||
| 23 | #define _________________QWERTY_R1_________________ KC_Y, KC_U, KC_I, KC_O, KC_P | ||
| 24 | #define _________________QWERTY_R2_________________ KC_H, KC_J, KC_K, KC_L, KC_SCLN | ||
| 25 | #define _________________QWERTY_R3_________________ KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH | ||
| 26 | |||
| 27 | #define ____________FUNCTION_1____________ KC_F1, KC_F2, KC_F3, KC_F4 | ||
| 28 | #define ____________FUNCTION_2____________ KC_F5, KC_F6, KC_F7, KC_F8 | ||
| 29 | #define ____________FUNCTION_3____________ KC_F9, KC_F10, KC_F11, KC_F12 | ||
| 30 | |||
| 31 | #endif | ||
diff --git a/users/kuatsure/readme.md b/users/kuatsure/readme.md new file mode 100644 index 000000000..b6d10224f --- /dev/null +++ b/users/kuatsure/readme.md | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | Copyright 2018 Jarrett Drouillard jarrett@thestyl.us @kuatsure | ||
| 2 | |||
| 3 | This program is free software: you can redistribute it and/or modify | ||
| 4 | it under the terms of the GNU General Public License as published by | ||
| 5 | the Free Software Foundation, either version 2 of the License, or | ||
| 6 | (at your option) any later version. | ||
| 7 | |||
| 8 | This program is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 11 | GNU General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU General Public License | ||
| 14 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
diff --git a/users/kuatsure/rules.mk b/users/kuatsure/rules.mk new file mode 100644 index 000000000..11262d0ec --- /dev/null +++ b/users/kuatsure/rules.mk | |||
| @@ -0,0 +1 @@ | |||
| SRC += kuatsure.c | |||
