diff options
28 files changed, 935 insertions, 287 deletions
diff --git a/keyboards/ergodox/keymaps/belak/LICENSE b/keyboards/ergodox/keymaps/belak/LICENSE new file mode 100644 index 000000000..b462ba30e --- /dev/null +++ b/keyboards/ergodox/keymaps/belak/LICENSE | |||
| @@ -0,0 +1,21 @@ | |||
| 1 | MIT License | ||
| 2 | |||
| 3 | Copyright (c) 2016 Kaleb Elwert | ||
| 4 | |||
| 5 | Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| 6 | of this software and associated documentation files (the "Software"), to deal | ||
| 7 | in the Software without restriction, including without limitation the rights | ||
| 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| 9 | copies of the Software, and to permit persons to whom the Software is | ||
| 10 | furnished to do so, subject to the following conditions: | ||
| 11 | |||
| 12 | The above copyright notice and this permission notice shall be included in all | ||
| 13 | copies or substantial portions of the Software. | ||
| 14 | |||
| 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| 21 | SOFTWARE. | ||
diff --git a/keyboards/ergodox/keymaps/belak/Makefile b/keyboards/ergodox/keymaps/belak/Makefile new file mode 100644 index 000000000..8a6beea59 --- /dev/null +++ b/keyboards/ergodox/keymaps/belak/Makefile | |||
| @@ -0,0 +1,6 @@ | |||
| 1 | TAP_DANCE_ENABLE=yes | ||
| 2 | UNICODE_ENABLE=yes | ||
| 3 | |||
| 4 | ifndef QUANTUM_DIR | ||
| 5 | include ../../../../Makefile | ||
| 6 | endif | ||
diff --git a/keyboards/ergodox/keymaps/belak/README.md b/keyboards/ergodox/keymaps/belak/README.md new file mode 100644 index 000000000..30484e6e2 --- /dev/null +++ b/keyboards/ergodox/keymaps/belak/README.md | |||
| @@ -0,0 +1,79 @@ | |||
| 1 | # Belak's Ergodox Layout | ||
| 2 | |||
| 3 | This has been based off of [emacs\_osx\_dk](https://github.com/jackhumbert/qmk_firmware/tree/master/keyboards/ergodox/keymaps/emacs_osx_dk) | ||
| 4 | from the main qmk repo. However, I've taken some of the ideas for the thumbs | ||
| 5 | from [dvorak\_emacs](https://github.com/jackhumbert/qmk_firmware/tree/master/keyboards/ergodox/keymaps/dvorak_emacs) | ||
| 6 | and tweaked it a bit based on the keycaps I have. | ||
| 7 | |||
| 8 | This keyboard is intended for use in emacs (one of the main reasons for easy | ||
| 9 | access to modifiers) but it could be useful in other instances as well. | ||
| 10 | |||
| 11 | The main repo is used as a testbed, so sometimes the layout may be in a strange | ||
| 12 | state. The qmk version should be relatively stable. | ||
| 13 | |||
| 14 | ## Instructions | ||
| 15 | |||
| 16 | This is currently being used on a regular ergodox, but it should work fine on | ||
| 17 | the infinity as well. Though, you may have to modify the commands to build and | ||
| 18 | flash the firmware to match the separate halves as defined in the infinity | ||
| 19 | documentation. | ||
| 20 | |||
| 21 | If you are using this keymap in the qmk repo, you should be able to just run | ||
| 22 | `make ergodox-belak-teensy`. If you're using this externally (I sometimes make | ||
| 23 | changes before syncing them to qmk), use the following instructions: | ||
| 24 | |||
| 25 | 1. Clone the main qmk repo | ||
| 26 | 2. Clone this to `$QMK/keyboards/ergodox/keymaps/belak-external` | ||
| 27 | 3. Run `make ergodox-belak-external-teensy` from the root of the qmk repo. | ||
| 28 | |||
| 29 | ## Changelog | ||
| 30 | |||
| 31 | Fifth Revision | ||
| 32 | |||
| 33 | * Change layer keys to tap-dance keys which cycle through additional layers | ||
| 34 | * Add a few emoji keys (in preparation for an emoji layer) | ||
| 35 | |||
| 36 | Fourth Revision | ||
| 37 | |||
| 38 | * Remove media layer | ||
| 39 | * Add a layer which swaps control and gui on the thumb keys. | ||
| 40 | * Add some basic code to save settings to the eeprom | ||
| 41 | * Save the state of the keys swapped in the thumb in the eeprom | ||
| 42 | |||
| 43 | Third Revision | ||
| 44 | |||
| 45 | * Add numpad layer and remove numpad from symbols layer | ||
| 46 | * Disable media layer | ||
| 47 | * Add arrow keys on ijkl to the symbols layer | ||
| 48 | * Replace ALT on held enter and held delete with GUI (for better OSX | ||
| 49 | compatibility, as there's already an ALT key relatively close) | ||
| 50 | * Replace keys above enter and delete with temporary layer switch buttons not | ||
| 51 | matching the other layer switch for that hand. | ||
| 52 | * Reindent and space out most of the layer definitions | ||
| 53 | |||
| 54 | Second Revision | ||
| 55 | |||
| 56 | * Clean up definitions to make differences between layers easier to see | ||
| 57 | * Remove old LCD code | ||
| 58 | * Add new LCD code based on fredizzimo's branch | ||
| 59 | |||
| 60 | First Revision | ||
| 61 | |||
| 62 | * Reverse grave and escape | ||
| 63 | |||
| 64 | Initial Version | ||
| 65 | |||
| 66 | * Copy from emacs\_osx\_dk | ||
| 67 | * "Fix" right alt | ||
| 68 | * Change thumb keys to match default layout (backspace, delete, enter, space) | ||
| 69 | * Add modifiers to thumb keys (ctrl to backspace and space, alt to delete and | ||
| 70 | enter) | ||
| 71 | * Replace the RAlt below the brackets with LGui and RGui | ||
| 72 | * Remove LCtrl and RCtrl from the keys above shift | ||
| 73 | * Add browser forward, and move browser back | ||
| 74 | * "Fix" the order of volume keys | ||
| 75 | |||
| 76 | ## Repository | ||
| 77 | |||
| 78 | The original code for this is kept at https://github.com/belak/ergodox-layout and | ||
| 79 | is synced to qmk every few main revisions. | ||
diff --git a/keyboards/ergodox/keymaps/belak/keymap.c b/keyboards/ergodox/keymaps/belak/keymap.c new file mode 100644 index 000000000..d10567a78 --- /dev/null +++ b/keyboards/ergodox/keymaps/belak/keymap.c | |||
| @@ -0,0 +1,367 @@ | |||
| 1 | #include "ergodox.h" | ||
| 2 | #include "debug.h" | ||
| 3 | #include "action_layer.h" | ||
| 4 | #include "eeconfig.h" | ||
| 5 | |||
| 6 | #define LAYER_ON(pos) ((layer_state) & (1<<(pos))) | ||
| 7 | #define _______ KC_TRNS | ||
| 8 | |||
| 9 | #define EECONFIG_BELAK_MAGIC (uint16_t)0xBE42 | ||
| 10 | |||
| 11 | // NOTE: This is just a number that's a bit beyond the end of what's already | ||
| 12 | // defined. As there is no other define we can base this on, it may need to be | ||
| 13 | // changed in the future. The initial value here is used as a placeholder with a | ||
| 14 | // magic word, similar to the normal eeconfig. Note that all the storage being | ||
| 15 | // used needs to fit inside the 32 bytes of the Ergodox Infinity. | ||
| 16 | #define EECONFIG_BELAK (uint16_t *)16 | ||
| 17 | |||
| 18 | // The correct way to do this would be how the normal eeconfig handles it and | ||
| 19 | // use a bitfield. However, the eeprom has a ton of space which isn't being | ||
| 20 | // used so I don't really care and have a separate byte for every setting. | ||
| 21 | #define EECONFIG_BELAK_SWAP_GUI_CTRL (uint8_t *)18 | ||
| 22 | |||
| 23 | static uint8_t swap_gui_ctrl = 0; | ||
| 24 | static uint8_t td_led_override = 0; | ||
| 25 | |||
| 26 | enum belak_keycodes { | ||
| 27 | // Function codes | ||
| 28 | BEL_F0 = SAFE_RANGE, | ||
| 29 | BEL_F1, | ||
| 30 | |||
| 31 | E_SHRUG, | ||
| 32 | E_TFLIP, | ||
| 33 | E_TSET, | ||
| 34 | }; | ||
| 35 | |||
| 36 | inline void tap(uint16_t keycode) { | ||
| 37 | register_code(keycode); | ||
| 38 | unregister_code(keycode); | ||
| 39 | }; | ||
| 40 | |||
| 41 | // TODO: Add LED support to the tap dance by using the advanced macro | ||
| 42 | #define LTOGGLE TD(TD_LAYER_TOGGLE) | ||
| 43 | |||
| 44 | #define BASE 0 // default layer | ||
| 45 | #define SYMB 1 // symbols | ||
| 46 | #define NUMP 2 // numpad | ||
| 47 | #define SWPH 3 // swap gui/ctrl on the hands | ||
| 48 | |||
| 49 | enum belak_td { | ||
| 50 | TD_LAYER_TOGGLE = 0, | ||
| 51 | }; | ||
| 52 | |||
| 53 | void belak_td_each(qk_tap_dance_state_t *state, void *user_data); | ||
| 54 | void belak_td_finished(qk_tap_dance_state_t *state, void *user_data); | ||
| 55 | void belak_td_reset(qk_tap_dance_state_t *state, void *user_data); | ||
| 56 | |||
| 57 | qk_tap_dance_action_t tap_dance_actions[] = { | ||
| 58 | [TD_LAYER_TOGGLE] = ACTION_TAP_DANCE_FN_ADVANCED(belak_td_each, belak_td_finished, belak_td_reset), | ||
| 59 | }; | ||
| 60 | |||
| 61 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 62 | /* Keymap 0: Basic layer | ||
| 63 | * | ||
| 64 | * ,--------------------------------------------------. ,--------------------------------------------------. | ||
| 65 | * | Esc | 1 | 2 | 3 | 4 | 5 | L1 | | L2 | 6 | 7 | 8 | 9 | 0 | = | | ||
| 66 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | ||
| 67 | * | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | - | | ||
| 68 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 69 | * | \ | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | | ||
| 70 | * |--------+------+------+------+------+------| LGui | | RGui |------+------+------+------+------+--------| | ||
| 71 | * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | | ||
| 72 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | ||
| 73 | * |Layers| LCtrl| Left | Right| LAlt | | RAlt | Up | Down | RCtrl|Layers| | ||
| 74 | * `----------------------------------' `----------------------------------' | ||
| 75 | * ,-------------. ,--------------. | ||
| 76 | * | ~L2 | Ins | | Grv | ~L1 | | ||
| 77 | * ,-------|------|------| |------+-------+-------. | ||
| 78 | * | Back | | Home | | PgUp | | | | ||
| 79 | * | Space | Del |------| |------| Enter | Space | | ||
| 80 | * | | | End | | PgDn | | | | ||
| 81 | * `---------------------' `----------------------' | ||
| 82 | */ | ||
| 83 | [BASE] = KEYMAP( // layer 0 : default | ||
| 84 | // left hand | ||
| 85 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, TG(SYMB), | ||
| 86 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, | ||
| 87 | CTL_T(KC_BSLS), KC_A, KC_S, KC_D, KC_F, KC_G, | ||
| 88 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LGUI, | ||
| 89 | LTOGGLE, KC_LCTRL, KC_LEFT,KC_RGHT,KC_LALT, | ||
| 90 | MO(NUMP),KC_INS, | ||
| 91 | KC_HOME, | ||
| 92 | CTL_T(KC_BSPC),GUI_T(KC_DEL),KC_END, | ||
| 93 | // right hand | ||
| 94 | TG(NUMP), KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, | ||
| 95 | KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, | ||
| 96 | KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, | ||
| 97 | KC_RGUI, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, | ||
| 98 | KC_RALT,KC_UP, KC_DOWN,KC_RCTRL, LTOGGLE, | ||
| 99 | KC_GRV, MO(SYMB), | ||
| 100 | KC_PGUP, | ||
| 101 | KC_PGDN, GUI_T(KC_ENT), CTL_T(KC_SPC) | ||
| 102 | ), | ||
| 103 | /* Keymap 1: Symbol Layer | ||
| 104 | * | ||
| 105 | * ,--------------------------------------------------. ,--------------------------------------------------. | ||
| 106 | * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | | ||
| 107 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | ||
| 108 | * | | ! | @ | { | } | | | | | | Up | | Up | | | F12 | | ||
| 109 | * |--------+------+------+------+------+------| TFLIP| | TSET |------+------+------+------+------+--------| | ||
| 110 | * | | # | $ | ( | ) | ` |------| |------| Down | Left | Down | Rght | | | | ||
| 111 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 112 | * | | % | ^ | [ | ] | ~ | SHRUG| | | & | | | | | | | ||
| 113 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | ||
| 114 | * |LClear| | | | | | | | | |LClear| | ||
| 115 | * `----------------------------------' `----------------------------------' | ||
| 116 | * ,-------------. ,-------------. | ||
| 117 | * | TOGL | | | | TOGL | | ||
| 118 | * ,------|------|------| |------+------+------. | ||
| 119 | * | | | | | | | | | ||
| 120 | * | | |------| |------| | | | ||
| 121 | * | | | | | | | | | ||
| 122 | * `--------------------' `--------------------' | ||
| 123 | */ | ||
| 124 | [SYMB] = KEYMAP( | ||
| 125 | // left hand | ||
| 126 | _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, E_TFLIP, | ||
| 127 | _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, E_TSET, | ||
| 128 | _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, | ||
| 129 | _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, E_SHRUG, | ||
| 130 | BEL_F1, _______, _______, _______, _______, | ||
| 131 | BEL_F0, _______, | ||
| 132 | _______, | ||
| 133 | _______, _______, _______, | ||
| 134 | // right hand | ||
| 135 | _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, | ||
| 136 | _______, KC_UP, _______, KC_UP, _______, _______, KC_F12, | ||
| 137 | KC_DOWN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, | ||
| 138 | _______, KC_AMPR, _______, _______, _______, _______, _______, | ||
| 139 | _______, _______, _______, _______, BEL_F1, | ||
| 140 | _______, BEL_F0, | ||
| 141 | _______, | ||
| 142 | _______, _______, _______ | ||
| 143 | ), | ||
| 144 | /* Keymap 2: Numpad Layer | ||
| 145 | * | ||
| 146 | * ,--------------------------------------------------. ,--------------------------------------------------. | ||
| 147 | * | | | | | | | | | | | | | | | | | ||
| 148 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | ||
| 149 | * | | | | | | | | | | | 7 | 8 | 9 | * | | | ||
| 150 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 151 | * | | | | | | |------| |------| | 4 | 5 | 6 | + | | | ||
| 152 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 153 | * | | | | | | | | | | | 1 | 2 | 3 | \ | | | ||
| 154 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | ||
| 155 | * |LClear| | | | | | 0 | 0 | . | = |LClear| | ||
| 156 | * `----------------------------------' `----------------------------------' | ||
| 157 | * ,-------------. ,-------------. | ||
| 158 | * | TOGL | | | | TOGL | | ||
| 159 | * ,------|------|------| |------+------+------. | ||
| 160 | * | | | | | | | | | ||
| 161 | * | | |------| |------| | | | ||
| 162 | * | | | | | | | | | ||
| 163 | * `--------------------' `--------------------' | ||
| 164 | */ | ||
| 165 | [NUMP] = KEYMAP( | ||
| 166 | // left hand | ||
| 167 | _______, _______, _______, _______, _______, _______, _______, | ||
| 168 | _______, _______, _______, _______, _______, _______, _______, | ||
| 169 | _______, _______, _______, _______, _______, _______, | ||
| 170 | _______, _______, _______, _______, _______, _______, _______, | ||
| 171 | BEL_F1, _______, _______, _______, _______, | ||
| 172 | BEL_F0, _______, | ||
| 173 | _______, | ||
| 174 | _______, _______, _______, | ||
| 175 | // right hand | ||
| 176 | _______, _______, _______, _______, _______, _______, _______, | ||
| 177 | _______, _______, KC_7, KC_8, KC_9, KC_ASTR, _______, | ||
| 178 | _______, KC_4, KC_5, KC_6, KC_PLUS, _______, | ||
| 179 | _______, _______, KC_1, KC_2, KC_3, KC_BSLS, _______, | ||
| 180 | KC_0, KC_0, KC_DOT, KC_EQL, BEL_F1, | ||
| 181 | _______, BEL_F0, | ||
| 182 | _______, | ||
| 183 | _______, _______, _______ | ||
| 184 | ), | ||
| 185 | /* Keymap 3: Swap control and gui on the thumb */ | ||
| 186 | [SWPH] = KEYMAP( | ||
| 187 | // left hand | ||
| 188 | _______, _______, _______, _______, _______, _______, _______, | ||
| 189 | _______, _______, _______, _______, _______, _______, _______, | ||
| 190 | _______, _______, _______, _______, _______, _______, | ||
| 191 | _______, _______, _______, _______, _______, _______, _______, | ||
| 192 | _______, _______, _______, _______, _______, | ||
| 193 | _______, _______, | ||
| 194 | _______, | ||
| 195 | GUI_T(KC_BSPC), CTL_T(KC_DEL), _______, | ||
| 196 | // right hand | ||
| 197 | _______, _______, _______, _______, _______, _______, _______, | ||
| 198 | _______, _______, _______, _______, _______, _______, _______, | ||
| 199 | _______, _______, _______, _______, _______, _______, | ||
| 200 | _______, _______, _______, _______, _______, _______, _______, | ||
| 201 | _______, _______, _______, _______, _______, | ||
| 202 | _______, _______, | ||
| 203 | _______, | ||
| 204 | _______, CTL_T(KC_ENT), GUI_T(KC_SPC) | ||
| 205 | ), | ||
| 206 | }; | ||
| 207 | |||
| 208 | // Runs just one time when the keyboard initializes. | ||
| 209 | void matrix_init_user(void) { | ||
| 210 | // If our magic word wasn't set properly, we need to zero out the settings. | ||
| 211 | if (eeprom_read_word(EECONFIG_BELAK) != EECONFIG_BELAK_MAGIC) { | ||
| 212 | eeprom_update_word(EECONFIG_BELAK, EECONFIG_BELAK_MAGIC); | ||
| 213 | eeprom_update_byte(EECONFIG_BELAK_SWAP_GUI_CTRL, 0); | ||
| 214 | } | ||
| 215 | |||
| 216 | if (eeprom_read_byte(EECONFIG_BELAK_SWAP_GUI_CTRL)) { | ||
| 217 | layer_on(SWPH); | ||
| 218 | swap_gui_ctrl = 1; | ||
| 219 | } | ||
| 220 | }; | ||
| 221 | |||
| 222 | // Runs constantly in the background, in a loop. | ||
| 223 | void matrix_scan_user(void) { | ||
| 224 | ergodox_board_led_off(); | ||
| 225 | ergodox_right_led_1_off(); | ||
| 226 | ergodox_right_led_2_off(); | ||
| 227 | ergodox_right_led_3_off(); | ||
| 228 | |||
| 229 | switch (td_led_override) { | ||
| 230 | case 1: | ||
| 231 | ergodox_right_led_1_on(); | ||
| 232 | break; | ||
| 233 | case 2: | ||
| 234 | ergodox_right_led_2_on(); | ||
| 235 | break; | ||
| 236 | default: | ||
| 237 | // Layer 1 and 2 are both overlay layers, so they could both be on. This | ||
| 238 | // means we can't use the lazy check of checking for the first significant | ||
| 239 | // bit. | ||
| 240 | if (LAYER_ON(SYMB)) { | ||
| 241 | ergodox_right_led_1_on(); | ||
| 242 | } | ||
| 243 | if (LAYER_ON(NUMP)) { | ||
| 244 | ergodox_right_led_2_on(); | ||
| 245 | } | ||
| 246 | } | ||
| 247 | }; | ||
| 248 | |||
| 249 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 250 | switch (keycode) { | ||
| 251 | case BEL_F0: | ||
| 252 | if(record->event.pressed){ | ||
| 253 | swap_gui_ctrl = !swap_gui_ctrl; | ||
| 254 | eeprom_update_byte(EECONFIG_BELAK_SWAP_GUI_CTRL, swap_gui_ctrl); | ||
| 255 | |||
| 256 | if (swap_gui_ctrl) { | ||
| 257 | layer_on(SWPH); | ||
| 258 | } else { | ||
| 259 | layer_off(SWPH); | ||
| 260 | } | ||
| 261 | |||
| 262 | return false; | ||
| 263 | } | ||
| 264 | break; | ||
| 265 | case BEL_F1: | ||
| 266 | if(record->event.pressed){ | ||
| 267 | layer_off(SYMB); | ||
| 268 | layer_off(NUMP); | ||
| 269 | |||
| 270 | return false; | ||
| 271 | } | ||
| 272 | break; | ||
| 273 | case E_SHRUG: // ¯\_(ツ)_/¯ | ||
| 274 | if (record->event.pressed) { | ||
| 275 | process_unicode((0x00AF|QK_UNICODE), record); // Hand | ||
| 276 | tap(KC_BSLS); // Arm | ||
| 277 | register_code(KC_RSFT); | ||
| 278 | tap(KC_UNDS); // Arm | ||
| 279 | tap(KC_LPRN); // Head | ||
| 280 | unregister_code(KC_RSFT); | ||
| 281 | process_unicode((0x30C4|QK_UNICODE), record); // Face | ||
| 282 | register_code(KC_RSFT); | ||
| 283 | tap(KC_RPRN); // Head | ||
| 284 | tap(KC_UNDS); // Arm | ||
| 285 | unregister_code(KC_RSFT); | ||
| 286 | tap(KC_SLSH); // Arm | ||
| 287 | process_unicode((0x00AF|QK_UNICODE), record); // Hand | ||
| 288 | } | ||
| 289 | return false; | ||
| 290 | break; | ||
| 291 | case E_TFLIP: // (╯°□°)╯ ︵ ┻━┻ | ||
| 292 | if (record->event.pressed) { | ||
| 293 | register_code(KC_RSFT); | ||
| 294 | tap(KC_9); | ||
| 295 | unregister_code(KC_RSFT); | ||
| 296 | process_unicode((0x256F|QK_UNICODE), record); // Arm | ||
| 297 | process_unicode((0x00B0|QK_UNICODE), record); // Eye | ||
| 298 | process_unicode((0x25A1|QK_UNICODE), record); // Mouth | ||
| 299 | process_unicode((0x00B0|QK_UNICODE), record); // Eye | ||
| 300 | register_code(KC_RSFT); | ||
| 301 | tap(KC_0); | ||
| 302 | unregister_code(KC_RSFT); | ||
| 303 | process_unicode((0x256F|QK_UNICODE), record); // Arm | ||
| 304 | tap(KC_SPC); | ||
| 305 | process_unicode((0x0361|QK_UNICODE), record); // Flippy | ||
| 306 | tap(KC_SPC); | ||
| 307 | process_unicode((0x253B|QK_UNICODE), record); // Table | ||
| 308 | process_unicode((0x2501|QK_UNICODE), record); // Table | ||
| 309 | process_unicode((0x253B|QK_UNICODE), record); // Table | ||
| 310 | } | ||
| 311 | return false; | ||
| 312 | break; | ||
| 313 | case E_TSET: // ┬──┬ ノ( ゜-゜ノ) | ||
| 314 | if (record->event.pressed) { | ||
| 315 | process_unicode((0x252C|QK_UNICODE), record); // Table | ||
| 316 | process_unicode((0x2500|QK_UNICODE), record); // Table | ||
| 317 | process_unicode((0x2500|QK_UNICODE), record); // Table | ||
| 318 | process_unicode((0x252C|QK_UNICODE), record); // Table | ||
| 319 | tap(KC_SPC); | ||
| 320 | process_unicode((0x30CE|QK_UNICODE), record); // Arm | ||
| 321 | register_code(KC_RSFT); | ||
| 322 | tap(KC_9); | ||
| 323 | unregister_code(KC_RSFT); | ||
| 324 | tap(KC_SPC); | ||
| 325 | process_unicode((0x309C|QK_UNICODE), record); // Eye | ||
| 326 | tap(KC_MINS); | ||
| 327 | process_unicode((0x309C|QK_UNICODE), record); // Eye | ||
| 328 | process_unicode((0x30CE|QK_UNICODE), record); // Arm | ||
| 329 | register_code(KC_RSFT); | ||
| 330 | tap(KC_0); | ||
| 331 | unregister_code(KC_RSFT); | ||
| 332 | } | ||
| 333 | return false; | ||
| 334 | break; | ||
| 335 | } | ||
| 336 | |||
| 337 | return true; | ||
| 338 | } | ||
| 339 | |||
| 340 | void belak_td_each(qk_tap_dance_state_t *state, void *user_data) { | ||
| 341 | switch (state->count) { | ||
| 342 | case 1: | ||
| 343 | td_led_override = 1; | ||
| 344 | break; | ||
| 345 | case 2: | ||
| 346 | td_led_override = 2; | ||
| 347 | break; | ||
| 348 | default: | ||
| 349 | reset_tap_dance(state); | ||
| 350 | } | ||
| 351 | } | ||
| 352 | |||
| 353 | void belak_td_finished(qk_tap_dance_state_t *state, void *user_data) { | ||
| 354 | switch (state->count) { | ||
| 355 | case 1: | ||
| 356 | layer_on(SYMB); | ||
| 357 | break; | ||
| 358 | case 2: | ||
| 359 | layer_on(NUMP); | ||
| 360 | break; | ||
| 361 | } | ||
| 362 | td_led_override = 0; | ||
| 363 | } | ||
| 364 | |||
| 365 | void belak_td_reset(qk_tap_dance_state_t *state, void *user_data) { | ||
| 366 | td_led_override = 0; | ||
| 367 | } | ||
diff --git a/keyboards/ergodox/keymaps/belak/visualizer.c b/keyboards/ergodox/keymaps/belak/visualizer.c new file mode 100644 index 000000000..b92890a66 --- /dev/null +++ b/keyboards/ergodox/keymaps/belak/visualizer.c | |||
| @@ -0,0 +1,49 @@ | |||
| 1 | /* | ||
| 2 | Copyright 2017 Fred Sundvik | ||
| 3 | |||
| 4 | This program is free software: you can redistribute it and/or modify | ||
| 5 | it under the terms of the GNU General Public License as published by | ||
| 6 | the Free Software Foundation, either version 2 of the License, or | ||
| 7 | (at your option) any later version. | ||
| 8 | |||
| 9 | This program is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | GNU General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU General Public License | ||
| 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 16 | */ | ||
| 17 | |||
| 18 | // Currently we are assuming that both the backlight and LCD are enabled | ||
| 19 | // But it's entirely possible to write a custom visualizer that use only | ||
| 20 | // one of them | ||
| 21 | #ifndef LCD_BACKLIGHT_ENABLE | ||
| 22 | #error This visualizer needs that LCD backlight is enabled | ||
| 23 | #endif | ||
| 24 | |||
| 25 | #ifndef LCD_ENABLE | ||
| 26 | #error This visualizer needs that LCD is enabled | ||
| 27 | #endif | ||
| 28 | |||
| 29 | #include "simple_visualizer.h" | ||
| 30 | |||
| 31 | static void get_visualizer_layer_and_color(visualizer_state_t* state) { | ||
| 32 | uint8_t saturation = 60; | ||
| 33 | if (state->status.leds & (1u << USB_LED_CAPS_LOCK)) { | ||
| 34 | saturation = 255; | ||
| 35 | } | ||
| 36 | |||
| 37 | if (state->status.layer & 0x4) { | ||
| 38 | state->target_lcd_color = LCD_COLOR(0, saturation, 0xFF); | ||
| 39 | state->layer_text = "Media"; | ||
| 40 | } | ||
| 41 | else if (state->status.layer & 0x2) { | ||
| 42 | state->target_lcd_color = LCD_COLOR(168, saturation, 0xFF); | ||
| 43 | state->layer_text = "Symbols"; | ||
| 44 | } | ||
| 45 | else { | ||
| 46 | state->target_lcd_color = LCD_COLOR(84, saturation, 0xFF); | ||
| 47 | state->layer_text = "Base"; | ||
| 48 | } | ||
| 49 | } | ||
diff --git a/keyboards/kmac/keymaps/default/Makefile b/keyboards/kmac/keymaps/default/Makefile index a8a44889d..8e2d011b3 100644 --- a/keyboards/kmac/keymaps/default/Makefile +++ b/keyboards/kmac/keymaps/default/Makefile | |||
| @@ -15,13 +15,13 @@ | |||
| 15 | 15 | ||
| 16 | 16 | ||
| 17 | # QMK Build Options | 17 | # QMK Build Options |
| 18 | # change to "no" to disable the options, or define them in the Makefile in | 18 | # change to "no" to disable the options, or define them in the Makefile in |
| 19 | # the appropriate keymap folder that will get included automatically | 19 | # the appropriate keymap folder that will get included automatically |
| 20 | # | 20 | # |
| 21 | BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) | 21 | BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) |
| 22 | MOUSEKEY_ENABLE = yes # Mouse keys(+4700) | 22 | MOUSEKEY_ENABLE = yes # Mouse keys(+4700) |
| 23 | EXTRAKEY_ENABLE = yes # Audio control and System control(+450) | 23 | EXTRAKEY_ENABLE = yes # Audio control and System control(+450) |
| 24 | CONSOLE_ENABLE = yes # Console for debug(+400) | 24 | CONSOLE_ENABLE = no # Console for debug(+400) |
| 25 | COMMAND_ENABLE = yes # Commands for debug and configuration | 25 | COMMAND_ENABLE = yes # Commands for debug and configuration |
| 26 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | 26 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work |
| 27 | BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality | 27 | BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality |
| @@ -29,9 +29,9 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) | |||
| 29 | AUDIO_ENABLE = no # Audio output on port C6 | 29 | AUDIO_ENABLE = no # Audio output on port C6 |
| 30 | UNICODE_ENABLE = no # Unicode | 30 | UNICODE_ENABLE = no # Unicode |
| 31 | BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID | 31 | BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID |
| 32 | RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. | 32 | RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. |
| 33 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend | 33 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend |
| 34 | 34 | ||
| 35 | ifndef QUANTUM_DIR | 35 | ifndef QUANTUM_DIR |
| 36 | include ../../../../Makefile | 36 | include ../../../../Makefile |
| 37 | endif | 37 | endif |
diff --git a/keyboards/kmac/keymaps/default/keymap.c b/keyboards/kmac/keymaps/default/keymap.c index 3553e8492..f3ac93abf 100644 --- a/keyboards/kmac/keymaps/default/keymap.c +++ b/keyboards/kmac/keymaps/default/keymap.c | |||
| @@ -26,22 +26,22 @@ | |||
| 26 | #define _FL 1 | 26 | #define _FL 1 |
| 27 | 27 | ||
| 28 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 28 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 29 | [_BL] = KEYMAP( | 29 | [_BL] = KEYMAP( |
| 30 | KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_BRK, \ | 30 | KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_BRK, \ |
| 31 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, \ | 31 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, \ |
| 32 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, \ | 32 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, \ |
| 33 | KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ | 33 | KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ |
| 34 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, \ | 34 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, \ |
| 35 | KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_FL), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \ | 35 | KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_FL), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \ |
| 36 | ), | 36 | ), |
| 37 | [_FL] = KEYMAP( | 37 | [_FL] = KEYMAP( |
| 38 | BL_STEP, M(0), M(1), M(2), M(3), M(4), M(5), M(6), M(7), M(8), M(9), M(10), M(11), _______, _______, _______, \ | 38 | BL_STEP, M(0), M(1), M(2), M(3), M(4), M(5), M(6), M(7), M(8), M(9), M(10), M(11), _______, _______, _______, \ |
| 39 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | 39 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ |
| 40 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | 40 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ |
| 41 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | 41 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ |
| 42 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | 42 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ |
| 43 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ | 43 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ |
| 44 | ), | 44 | ), |
| 45 | }; | 45 | }; |
| 46 | 46 | ||
| 47 | const uint16_t PROGMEM fn_actions[] = { | 47 | const uint16_t PROGMEM fn_actions[] = { |
| @@ -50,32 +50,32 @@ const uint16_t PROGMEM fn_actions[] = { | |||
| 50 | 50 | ||
| 51 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | 51 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) |
| 52 | { | 52 | { |
| 53 | // MACRODOWN only works in this function | 53 | // MACRODOWN only works in this function |
| 54 | switch(id) { | 54 | switch(id) { |
| 55 | case 0: | 55 | case 0: |
| 56 | if (record->event.pressed) { | 56 | if (record->event.pressed) { |
| 57 | SEND_STRING("The"); | 57 | SEND_STRING("The"); |
| 58 | return false; | 58 | return false; |
| 59 | } | 59 | } |
| 60 | break; | 60 | break; |
| 61 | case 1: | 61 | case 1: |
| 62 | if (record->event.pressed) { | 62 | if (record->event.pressed) { |
| 63 | SEND_STRING("Custom"); | 63 | SEND_STRING("Custom"); |
| 64 | return false; | 64 | return false; |
| 65 | } | 65 | } |
| 66 | break; | 66 | break; |
| 67 | case 2: | 67 | case 2: |
| 68 | if (record->event.pressed) { | 68 | if (record->event.pressed) { |
| 69 | SEND_STRING("Keyboard"); | 69 | SEND_STRING("Keyboard"); |
| 70 | return false; | 70 | return false; |
| 71 | } | 71 | } |
| 72 | break; | 72 | break; |
| 73 | case 3: | 73 | case 3: |
| 74 | if (record->event.pressed) { | 74 | if (record->event.pressed) { |
| 75 | return MACRO( D(LCTL), T(C), U(LCTL), T(RGHT), D(LCTL), T(V), U(LCTL), END ); | 75 | return MACRO( D(LCTL), T(C), U(LCTL), T(RGHT), D(LCTL), T(V), U(LCTL), END ); |
| 76 | } | 76 | } |
| 77 | break; | 77 | break; |
| 78 | } | 78 | } |
| 79 | return MACRO_NONE; | 79 | return MACRO_NONE; |
| 80 | }; | 80 | }; |
| 81 | 81 | ||
| @@ -89,7 +89,7 @@ void matrix_scan_user(void) { | |||
| 89 | } | 89 | } |
| 90 | 90 | ||
| 91 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 91 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 92 | return true; | 92 | return true; |
| 93 | } | 93 | } |
| 94 | 94 | ||
| 95 | void led_set_user(uint8_t usb_led) { | 95 | void led_set_user(uint8_t usb_led) { |
diff --git a/keyboards/kmac/keymaps/default/readme.md b/keyboards/kmac/keymaps/default/readme.md index d384e0d6a..aaa6f9bf2 100644 --- a/keyboards/kmac/keymaps/default/readme.md +++ b/keyboards/kmac/keymaps/default/readme.md | |||
| @@ -6,7 +6,7 @@ See [keymap.c](keymap.c) for details. | |||
| 6 | 6 | ||
| 7 | ## Layers | 7 | ## Layers |
| 8 | 8 | ||
| 9 | The keymap have two layers. To access the functions on the second layer, hold down caps lock and press the corresponding key. | 9 | The keymap have two layers. To access the functions on the second layer, hold down `Fn` and press the corresponding key. |
| 10 | 10 | ||
| 11 | ### Layer 1: Default Layer | 11 | ### Layer 1: Default Layer |
| 12 | ,---. ,---------------. ,---------------. ,---------------. ,-----------. | 12 | ,---. ,---------------. ,---------------. ,---------------. ,-----------. |
diff --git a/keyboards/kmac/keymaps/winkeyless/Makefile b/keyboards/kmac/keymaps/winkeyless/Makefile index a8a44889d..8e2d011b3 100644 --- a/keyboards/kmac/keymaps/winkeyless/Makefile +++ b/keyboards/kmac/keymaps/winkeyless/Makefile | |||
| @@ -15,13 +15,13 @@ | |||
| 15 | 15 | ||
| 16 | 16 | ||
| 17 | # QMK Build Options | 17 | # QMK Build Options |
| 18 | # change to "no" to disable the options, or define them in the Makefile in | 18 | # change to "no" to disable the options, or define them in the Makefile in |
| 19 | # the appropriate keymap folder that will get included automatically | 19 | # the appropriate keymap folder that will get included automatically |
| 20 | # | 20 | # |
| 21 | BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) | 21 | BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) |
| 22 | MOUSEKEY_ENABLE = yes # Mouse keys(+4700) | 22 | MOUSEKEY_ENABLE = yes # Mouse keys(+4700) |
| 23 | EXTRAKEY_ENABLE = yes # Audio control and System control(+450) | 23 | EXTRAKEY_ENABLE = yes # Audio control and System control(+450) |
| 24 | CONSOLE_ENABLE = yes # Console for debug(+400) | 24 | CONSOLE_ENABLE = no # Console for debug(+400) |
| 25 | COMMAND_ENABLE = yes # Commands for debug and configuration | 25 | COMMAND_ENABLE = yes # Commands for debug and configuration |
| 26 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | 26 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work |
| 27 | BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality | 27 | BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality |
| @@ -29,9 +29,9 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) | |||
| 29 | AUDIO_ENABLE = no # Audio output on port C6 | 29 | AUDIO_ENABLE = no # Audio output on port C6 |
| 30 | UNICODE_ENABLE = no # Unicode | 30 | UNICODE_ENABLE = no # Unicode |
| 31 | BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID | 31 | BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID |
| 32 | RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. | 32 | RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. |
| 33 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend | 33 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend |
| 34 | 34 | ||
| 35 | ifndef QUANTUM_DIR | 35 | ifndef QUANTUM_DIR |
| 36 | include ../../../../Makefile | 36 | include ../../../../Makefile |
| 37 | endif | 37 | endif |
diff --git a/keyboards/kmac/keymaps/winkeyless/keymap.c b/keyboards/kmac/keymaps/winkeyless/keymap.c index f986dec27..e3d66ea08 100644 --- a/keyboards/kmac/keymaps/winkeyless/keymap.c +++ b/keyboards/kmac/keymaps/winkeyless/keymap.c | |||
| @@ -26,22 +26,22 @@ | |||
| 26 | #define _FL 1 | 26 | #define _FL 1 |
| 27 | 27 | ||
| 28 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 28 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 29 | [_BL] = KEYMAP_WINKEYLESS( | 29 | [_BL] = KEYMAP_WINKEYLESS( |
| 30 | KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_BRK, \ | 30 | KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_BRK, \ |
| 31 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, \ | 31 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, \ |
| 32 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, \ | 32 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, \ |
| 33 | KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ | 33 | KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ |
| 34 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, \ | 34 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, \ |
| 35 | KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FL), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \ | 35 | KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FL), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \ |
| 36 | ), | 36 | ), |
| 37 | [_FL] = KEYMAP_WINKEYLESS( | 37 | [_FL] = KEYMAP_WINKEYLESS( |
| 38 | BL_STEP, M(0), M(1), M(2), M(3), M(4), M(5), M(6), M(7), M(8), M(9), M(10), M(11), _______, _______, _______, \ | 38 | BL_STEP, M(0), M(1), M(2), M(3), M(4), M(5), M(6), M(7), M(8), M(9), M(10), M(11), _______, _______, _______, \ |
| 39 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | 39 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ |
| 40 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | 40 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ |
| 41 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | 41 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ |
| 42 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | 42 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ |
| 43 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ | 43 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ |
| 44 | ), | 44 | ), |
| 45 | }; | 45 | }; |
| 46 | 46 | ||
| 47 | const uint16_t PROGMEM fn_actions[] = { | 47 | const uint16_t PROGMEM fn_actions[] = { |
| @@ -50,32 +50,32 @@ const uint16_t PROGMEM fn_actions[] = { | |||
| 50 | 50 | ||
| 51 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | 51 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) |
| 52 | { | 52 | { |
| 53 | // MACRODOWN only works in this function | 53 | // MACRODOWN only works in this function |
| 54 | switch(id) { | 54 | switch(id) { |
| 55 | case 0: | 55 | case 0: |
| 56 | if (record->event.pressed) { | 56 | if (record->event.pressed) { |
| 57 | SEND_STRING("The"); | 57 | SEND_STRING("The"); |
| 58 | return false; | 58 | return false; |
| 59 | } | 59 | } |
| 60 | break; | 60 | break; |
| 61 | case 1: | 61 | case 1: |
| 62 | if (record->event.pressed) { | 62 | if (record->event.pressed) { |
| 63 | SEND_STRING("Custom"); | 63 | SEND_STRING("Custom"); |
| 64 | return false; | 64 | return false; |
| 65 | } | 65 | } |
| 66 | break; | 66 | break; |
| 67 | case 2: | 67 | case 2: |
| 68 | if (record->event.pressed) { | 68 | if (record->event.pressed) { |
| 69 | SEND_STRING("Keyboard"); | 69 | SEND_STRING("Keyboard"); |
| 70 | return false; | 70 | return false; |
| 71 | } | 71 | } |
| 72 | break; | 72 | break; |
| 73 | case 3: | 73 | case 3: |
| 74 | if (record->event.pressed) { | 74 | if (record->event.pressed) { |
| 75 | return MACRO( D(LCTL), T(C), U(LCTL), T(RGHT), D(LCTL), T(V), U(LCTL), END ); | 75 | return MACRO( D(LCTL), T(C), U(LCTL), T(RGHT), D(LCTL), T(V), U(LCTL), END ); |
| 76 | } | 76 | } |
| 77 | break; | 77 | break; |
| 78 | } | 78 | } |
| 79 | return MACRO_NONE; | 79 | return MACRO_NONE; |
| 80 | }; | 80 | }; |
| 81 | 81 | ||
| @@ -89,7 +89,7 @@ void matrix_scan_user(void) { | |||
| 89 | } | 89 | } |
| 90 | 90 | ||
| 91 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 91 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 92 | return true; | 92 | return true; |
| 93 | } | 93 | } |
| 94 | 94 | ||
| 95 | void led_set_user(uint8_t usb_led) { | 95 | void led_set_user(uint8_t usb_led) { |
diff --git a/keyboards/kmac/keymaps/winkeyless/readme.md b/keyboards/kmac/keymaps/winkeyless/readme.md index b921f7b0f..9c579e9f5 100644 --- a/keyboards/kmac/keymaps/winkeyless/readme.md +++ b/keyboards/kmac/keymaps/winkeyless/readme.md | |||
| @@ -7,7 +7,7 @@ See [keymap.c](keymap.c) for details. | |||
| 7 | 7 | ||
| 8 | ## Layers | 8 | ## Layers |
| 9 | 9 | ||
| 10 | The keymap have two layers. To access the functions on the second layer, hold down caps lock and press the corresponding key. | 10 | The keymap have two layers. To access the functions on the second layer, hold down `Fn` and press the corresponding key. |
| 11 | 11 | ||
| 12 | ### Layer 1: Default Layer | 12 | ### Layer 1: Default Layer |
| 13 | ,---. ,---------------. ,---------------. ,---------------. ,-----------. | 13 | ,---. ,---------------. ,---------------. ,---------------. ,-----------. |
diff --git a/keyboards/kmac/kmac.c b/keyboards/kmac/kmac.c index 34647e81a..6b54294b4 100644 --- a/keyboards/kmac/kmac.c +++ b/keyboards/kmac/kmac.c | |||
| @@ -16,24 +16,24 @@ | |||
| 16 | #include "kmac.h" | 16 | #include "kmac.h" |
| 17 | 17 | ||
| 18 | void matrix_init_kb(void) { | 18 | void matrix_init_kb(void) { |
| 19 | // put your keyboard start-up code here | 19 | // put your keyboard start-up code here |
| 20 | // runs once when the firmware starts up | 20 | // runs once when the firmware starts up |
| 21 | led_init_ports(); | 21 | led_init_ports(); |
| 22 | matrix_init_user(); | 22 | matrix_init_user(); |
| 23 | } | 23 | } |
| 24 | 24 | ||
| 25 | void matrix_scan_kb(void) { | 25 | void matrix_scan_kb(void) { |
| 26 | // put your looping keyboard code here | 26 | // put your looping keyboard code here |
| 27 | // runs every cycle (a lot) | 27 | // runs every cycle (a lot) |
| 28 | 28 | ||
| 29 | matrix_scan_user(); | 29 | matrix_scan_user(); |
| 30 | } | 30 | } |
| 31 | 31 | ||
| 32 | bool process_record_kb(uint16_t keycode, keyrecord_t *record) { | 32 | bool process_record_kb(uint16_t keycode, keyrecord_t *record) { |
| 33 | // put your per-action keyboard code here | 33 | // put your per-action keyboard code here |
| 34 | // runs for every action, just before processing by the firmware | 34 | // runs for every action, just before processing by the firmware |
| 35 | 35 | ||
| 36 | return process_record_user(keycode, record); | 36 | return process_record_user(keycode, record); |
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | void led_init_ports(void) { | 39 | void led_init_ports(void) { |
| @@ -64,12 +64,12 @@ void led_set_kb(uint8_t usb_led) { | |||
| 64 | PORTE |= (1<<6); // HI | 64 | PORTE |= (1<<6); // HI |
| 65 | } | 65 | } |
| 66 | 66 | ||
| 67 | led_set_user(usb_led); | 67 | led_set_user(usb_led); |
| 68 | } | 68 | } |
| 69 | 69 | ||
| 70 | void backlight_init_ports(void) { | 70 | void backlight_init_ports(void) { |
| 71 | DDRB |= (1<<1) | (1<<2) | (1<<3) | (1<<4); // OUT | 71 | DDRB |= (1<<1) | (1<<2) | (1<<3) | (1<<4); // OUT |
| 72 | DDRD |= (1<<7); // OUT | 72 | DDRD |= (1<<7); // OUT |
| 73 | } | 73 | } |
| 74 | 74 | ||
| 75 | /* Backlight pin configuration | 75 | /* Backlight pin configuration |
diff --git a/keyboards/kmac/matrix.c b/keyboards/kmac/matrix.c index bab638bdf..cfafa90e6 100644 --- a/keyboards/kmac/matrix.c +++ b/keyboards/kmac/matrix.c | |||
| @@ -103,7 +103,7 @@ bool matrix_is_on(uint8_t row, uint8_t col) | |||
| 103 | inline | 103 | inline |
| 104 | matrix_row_t matrix_get_row(uint8_t row) | 104 | matrix_row_t matrix_get_row(uint8_t row) |
| 105 | { | 105 | { |
| 106 | return matrix[row]; | 106 | return matrix[row]; |
| 107 | } | 107 | } |
| 108 | 108 | ||
| 109 | void matrix_print(void) | 109 | void matrix_print(void) |
diff --git a/keyboards/kmac/rules.mk b/keyboards/kmac/rules.mk index 54c9aa256..2305de412 100644 --- a/keyboards/kmac/rules.mk +++ b/keyboards/kmac/rules.mk | |||
| @@ -57,14 +57,14 @@ OPT_DEFS += -DBOOTLOADER_SIZE=4096 | |||
| 57 | BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) | 57 | BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) |
| 58 | MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) | 58 | MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) |
| 59 | EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) | 59 | EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) |
| 60 | CONSOLE_ENABLE ?= yes # Console for debug(+400) | 60 | CONSOLE_ENABLE ?= no # Console for debug(+400) |
| 61 | COMMAND_ENABLE ?= yes # Commands for debug and configuration | 61 | COMMAND_ENABLE ?= yes # Commands for debug and configuration |
| 62 | CUSTOM_MATRIX ?= yes # Custom matrix file | 62 | CUSTOM_MATRIX ?= yes # Custom matrix file |
| 63 | # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE | 63 | # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE |
| 64 | SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend | 64 | SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend |
| 65 | # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | 65 | # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work |
| 66 | NKRO_ENABLE ?= yes # USB Nkey Rollover | 66 | NKRO_ENABLE ?= yes # USB Nkey Rollover |
| 67 | BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality | 67 | BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality |
| 68 | MIDI_ENABLE ?= no # MIDI support (+2400 to 4200, depending on config) | 68 | MIDI_ENABLE ?= no # MIDI support (+2400 to 4200, depending on config) |
| 69 | UNICODE_ENABLE ?= no # Unicode | 69 | UNICODE_ENABLE ?= no # Unicode |
| 70 | BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID | 70 | BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID |
diff --git a/keyboards/tv44/keymaps/belak/Makefile b/keyboards/tv44/keymaps/belak/Makefile new file mode 100644 index 000000000..611241124 --- /dev/null +++ b/keyboards/tv44/keymaps/belak/Makefile | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | #BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) | ||
| 2 | MOUSEKEY_ENABLE = no # Mouse keys(+4700) | ||
| 3 | #EXTRAKEY_ENABLE = yes # Audio control and System control(+450) | ||
| 4 | #CONSOLE_ENABLE = yes # Console for debug(+400) | ||
| 5 | #DEBUG_ENABLE = yes | ||
| 6 | #COMMAND_ENABLE = yes # Commands for debug and configuration | ||
| 7 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 8 | TAP_DANCE_ENABLE = yes | ||
| 9 | |||
| 10 | ifndef QUANTUM_DIR | ||
| 11 | include ../../../../Makefile | ||
| 12 | endif | ||
diff --git a/keyboards/tv44/keymaps/belak/keymap.c b/keyboards/tv44/keymaps/belak/keymap.c new file mode 100644 index 000000000..703a1c2dd --- /dev/null +++ b/keyboards/tv44/keymaps/belak/keymap.c | |||
| @@ -0,0 +1,105 @@ | |||
| 1 | #include "tv44.h" | ||
| 2 | #include "action_layer.h" | ||
| 3 | #include "debug.h" | ||
| 4 | #include "eeconfig.h" | ||
| 5 | |||
| 6 | // Layer names. We stick to 3 letters if possible so MO(NAME) fits in 7 | ||
| 7 | // characters and doesn't mess with the grid. | ||
| 8 | #define _QW 0 | ||
| 9 | #define _L1 1 | ||
| 10 | #define _L2 2 | ||
| 11 | #define _L3 3 | ||
| 12 | |||
| 13 | // Curly braces have their own keys. These are defined so they don't mess up the | ||
| 14 | // grid in layer 2. | ||
| 15 | #define L_CURBR LSFT(KC_LBRC) | ||
| 16 | #define R_CURBR LSFT(KC_RBRC) | ||
| 17 | |||
| 18 | #define L1_TAB LT(_L1, KC_TAB) | ||
| 19 | #define L2_ESC LT(_L2, KC_ESC) | ||
| 20 | #define L2_SLSH LT(_L2, KC_SLSH) | ||
| 21 | #define L3_QUOT LT(_L3, KC_QUOT) | ||
| 22 | |||
| 23 | // Tap dance magic | ||
| 24 | #define TD_LGUI TD(BE_TD_GUI) | ||
| 25 | #define TD_LCTL TD(BE_TD_CTL) | ||
| 26 | #define TD_LALT TD(BE_TD_ALT) | ||
| 27 | |||
| 28 | enum belak_td { | ||
| 29 | BE_TD_GUI = 0, | ||
| 30 | BE_TD_CTL, | ||
| 31 | BE_TD_ALT, | ||
| 32 | }; | ||
| 33 | |||
| 34 | void mod_tap_fn(qk_tap_dance_state_t *state, void *user_data); | ||
| 35 | void mod_reset_fn(qk_tap_dance_state_t *state, void *user_data); | ||
| 36 | |||
| 37 | qk_tap_dance_action_t tap_dance_actions[] = { | ||
| 38 | [BE_TD_GUI] = ACTION_TAP_DANCE_FN_ADVANCED(mod_tap_fn, NULL, mod_reset_fn), | ||
| 39 | [BE_TD_CTL] = ACTION_TAP_DANCE_FN_ADVANCED(mod_tap_fn, NULL, mod_reset_fn), | ||
| 40 | [BE_TD_ALT] = ACTION_TAP_DANCE_FN_ADVANCED(mod_tap_fn, NULL, mod_reset_fn), | ||
| 41 | }; | ||
| 42 | |||
| 43 | uint16_t tap_dance_keys[] = { | ||
| 44 | [BE_TD_GUI] = KC_LGUI, | ||
| 45 | [BE_TD_CTL] = KC_LCTL, | ||
| 46 | [BE_TD_ALT] = KC_LALT, | ||
| 47 | }; | ||
| 48 | |||
| 49 | // Fillers to make layering more clear | ||
| 50 | #define _______ KC_TRNS | ||
| 51 | |||
| 52 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 53 | [_QW] = KEYMAP_ARROW_COMMAND( /* Qwerty */ | ||
| 54 | L2_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, | ||
| 55 | L1_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, L3_QUOT, | ||
| 56 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, L2_SLSH, | ||
| 57 | TD_LCTL, MO(_L3), TD_LALT, TD_LGUI, KC_ENT, KC_SPC, MO(_L1), KC_LEFT, KC_DOWN, KC_RGHT | ||
| 58 | ), | ||
| 59 | [_L1] = KEYMAP_ARROW_COMMAND( /* LAYER 1 */ | ||
| 60 | KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, | ||
| 61 | _______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______, | ||
| 62 | _______, KC_ESC, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT, | ||
| 63 | _______, KC_LGUI, _______, _______, _______, _______, _______, _______, _______, _______ | ||
| 64 | ), | ||
| 65 | [_L2] = KEYMAP_ARROW_COMMAND( /* LAYER 2 */ | ||
| 66 | _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, | ||
| 67 | KC_ESC, KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, L_CURBR, R_CURBR, KC_4, KC_5, KC_6, KC_VOLU, KC_ENT, | ||
| 68 | _______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_VOLD, _______, | ||
| 69 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
| 70 | ), | ||
| 71 | [_L3] = KEYMAP_ARROW_COMMAND( /* LAYER 3 */ | ||
| 72 | _______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______, | ||
| 73 | KC_ESC, _______, _______, _______, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, | ||
| 74 | _______, _______, _______, _______, _______, _______, _______, KC_F9, KC_F10, KC_F11, KC_F12, _______, | ||
| 75 | _______, KC_LGUI, _______, _______, _______, _______, _______, _______, _______, _______ | ||
| 76 | ) | ||
| 77 | }; | ||
| 78 | |||
| 79 | const uint16_t PROGMEM fn_actions[] = {}; | ||
| 80 | |||
| 81 | // Tap dance functions | ||
| 82 | void mod_tap_fn(qk_tap_dance_state_t *state, void *user_data) { | ||
| 83 | switch (state->count) { | ||
| 84 | case 1: | ||
| 85 | register_mods(MOD_BIT(tap_dance_keys[state->keycode - QK_TAP_DANCE])); | ||
| 86 | send_keyboard_report(); | ||
| 87 | break; | ||
| 88 | case 2: | ||
| 89 | layer_on(_L2); | ||
| 90 | break; | ||
| 91 | case 3: | ||
| 92 | layer_off(_L2); | ||
| 93 | layer_on(_L1); | ||
| 94 | break; | ||
| 95 | default: | ||
| 96 | reset_tap_dance(state); | ||
| 97 | } | ||
| 98 | } | ||
| 99 | |||
| 100 | void mod_reset_fn(qk_tap_dance_state_t *state, void *user_data) { | ||
| 101 | layer_off(_L1); | ||
| 102 | layer_off(_L2); | ||
| 103 | unregister_mods(MOD_BIT(tap_dance_keys[state->keycode - QK_TAP_DANCE])); | ||
| 104 | send_keyboard_report(); | ||
| 105 | } | ||
diff --git a/keyboards/tv44/keymaps/belak/readme.md b/keyboards/tv44/keymaps/belak/readme.md new file mode 100644 index 000000000..f990c578a --- /dev/null +++ b/keyboards/tv44/keymaps/belak/readme.md | |||
| @@ -0,0 +1,6 @@ | |||
| 1 | # Belak's TV44 (TV46?) layout | ||
| 2 | |||
| 3 | This layout is roughly based on the low-rider arrow-southpaw layout from [the | ||
| 4 | configurator](http://minivan.config.thevankeyboards.com) with a number of | ||
| 5 | changes to make it easier to use and add in missing keys (like adding / and ' | ||
| 6 | to the main layer) | ||
diff --git a/keyboards/tv44/keymaps/default/keymap.c b/keyboards/tv44/keymaps/default/keymap.c index b4a32d6f6..6979ac306 100644 --- a/keyboards/tv44/keymaps/default/keymap.c +++ b/keyboards/tv44/keymaps/default/keymap.c | |||
| @@ -21,48 +21,52 @@ extern keymap_config_t keymap_config; | |||
| 21 | #define DVORAK M(_DV) | 21 | #define DVORAK M(_DV) |
| 22 | #define COLEMAK M(_CM) | 22 | #define COLEMAK M(_CM) |
| 23 | 23 | ||
| 24 | // Curly braces have their own keys. These are defined to make them not mess up | ||
| 25 | // the grid in layer 2. | ||
| 26 | #define L_CURBR LSFT(KC_LBRC) | ||
| 27 | #define R_CURBR LSFT(KC_RBRC) | ||
| 28 | |||
| 24 | // Fillers to make layering more clear | 29 | // Fillers to make layering more clear |
| 25 | #define _______ KC_TRNS | 30 | #define _______ KC_TRNS |
| 26 | #define XXXXXXX KC_NO | ||
| 27 | 31 | ||
| 28 | 32 | ||
| 29 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 33 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 30 | [_QW] = { /* Qwerty */ | 34 | [_QW] = KEYMAP( /* Qwerty */ |
| 31 | {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC }, | 35 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, |
| 32 | {MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MO(_L1) }, | 36 | MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MO(_L1), |
| 33 | {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, | 37 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2), |
| 34 | {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } | 38 | KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, KC_SPC, KC_RALT, KC_ESC, TG(_L3) |
| 35 | }, | 39 | ), |
| 36 | [_DV] = { /* Dvorak */ | 40 | [_DV] = KEYMAP( /* Dvorak */ |
| 37 | {KC_TAB, KC_SLSH, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC }, | 41 | KC_TAB, KC_SLSH, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, |
| 38 | {MO(_L1), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, MO(_L1) }, | 42 | MO(_L1), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, MO(_L1), |
| 39 | {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, MO(_L2) }, | 43 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, MO(_L2), |
| 40 | {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } | 44 | KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, KC_SPC, KC_RALT, KC_ESC, TG(_L3) |
| 41 | }, | 45 | ), |
| 42 | [_CM] = { /* Colemak */ | 46 | [_CM] = KEYMAP( /* Colemak */ |
| 43 | {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC }, | 47 | KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, |
| 44 | {MO(_L1), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, MO(_L1) }, | 48 | MO(_L1), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, MO(_L1), |
| 45 | {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, | 49 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2), |
| 46 | {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } | 50 | KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, KC_SPC, KC_RALT, KC_ESC, TG(_L3) |
| 47 | }, | 51 | ), |
| 48 | [_L1] = { /* LAYER 1 */ | 52 | [_L1] = KEYMAP( /* LAYER 1 */ |
| 49 | {KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL }, | 53 | KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, |
| 50 | {_______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______ }, | 54 | _______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______, |
| 51 | {_______, KC_ESC, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT }, | 55 | _______, KC_ESC, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT, |
| 52 | {_______, KC_LGUI, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, XXXXXXX, _______ } | 56 | _______, KC_LGUI, _______, _______, _______, _______, _______, _______ |
| 53 | }, | 57 | ), |
| 54 | [_L2] = { /* LAYER 2 */ | 58 | [_L2] = KEYMAP( /* LAYER 2 */ |
| 55 | {_______, QWERTY, DVORAK, COLEMAK, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______ }, | 59 | _______, QWERTY, DVORAK, COLEMAK, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______, |
| 56 | {KC_ESC, KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, LSFT(KC_LBRC), LSFT(KC_RBRC), KC_4, KC_5, KC_6, KC_VOLU, KC_ENT }, | 60 | KC_ESC, KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, L_CURBR, R_CURBR, KC_4, KC_5, KC_6, KC_VOLU, KC_ENT, |
| 57 | {_______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_VOLD, _______ }, | 61 | _______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_VOLD, _______, |
| 58 | {_______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, XXXXXXX, _______ } | 62 | _______, _______, _______, _______, _______, _______, _______, _______ |
| 59 | }, | 63 | ), |
| 60 | [_L3] = { /* LAYER 3 */ | 64 | [_L3] = KEYMAP( /* LAYER 3 */ |
| 61 | {_______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______ }, | 65 | _______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______, |
| 62 | {KC_ESC, _______, _______, _______, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______ }, | 66 | KC_ESC, _______, _______, _______, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, |
| 63 | {KC_LSFT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_F9, KC_F10, KC_F11, KC_F12, _______ }, | 67 | KC_LSFT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_F9, KC_F10, KC_F11, KC_F12, _______, |
| 64 | {_______, KC_LSFT, KC_B, KC_SPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_C, _______, _______, XXXXXXX, _______ } | 68 | _______, KC_LSFT, KC_B, KC_SPC, KC_C, _______, _______, _______ |
| 65 | } | 69 | ) |
| 66 | }; | 70 | }; |
| 67 | 71 | ||
| 68 | const uint16_t PROGMEM fn_actions[] = { | 72 | const uint16_t PROGMEM fn_actions[] = { |
diff --git a/keyboards/tv44/keymaps/jeebak/config.h b/keyboards/tv44/keymaps/jeebak/config.h deleted file mode 100644 index a59ef2b70..000000000 --- a/keyboards/tv44/keymaps/jeebak/config.h +++ /dev/null | |||
| @@ -1,21 +0,0 @@ | |||
| 1 | #ifndef CONFIG_USER_H | ||
| 2 | #define CONFIG_USER_H | ||
| 3 | |||
| 4 | #include "../../config.h" | ||
| 5 | |||
| 6 | /** | ||
| 7 | *TV44 keymap definition macro | ||
| 8 | */ | ||
| 9 | #define KEYMAP_TV44( \ | ||
| 10 | K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12, \ | ||
| 11 | K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, K24, \ | ||
| 12 | K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35, K36, \ | ||
| 13 | K37, K38, K39, K40, K41, K42, K43, K44 \ | ||
| 14 | ) { \ | ||
| 15 | { K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12, }, \ | ||
| 16 | { K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, K24, }, \ | ||
| 17 | { K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35, K36, }, \ | ||
| 18 | { K37, K38, K39, K40, KC_NO, KC_NO, KC_NO, K41, K42, K43, KC_NO, K44 } \ | ||
| 19 | } | ||
| 20 | |||
| 21 | #endif | ||
diff --git a/keyboards/tv44/keymaps/jeebak/keymap.c b/keyboards/tv44/keymaps/jeebak/keymap.c index 0d0c07164..6cfa695ce 100644 --- a/keyboards/tv44/keymaps/jeebak/keymap.c +++ b/keyboards/tv44/keymaps/jeebak/keymap.c | |||
| @@ -91,7 +91,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 91 | * | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play | | 91 | * | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play | |
| 92 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' | 92 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' |
| 93 | */ | 93 | */ |
| 94 | [_QWERTY] = KEYMAP_TV44( | 94 | [_QWERTY] = KEYMAP( |
| 95 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 95 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 96 | HPR_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC , | 96 | HPR_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC , |
| 97 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 97 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -113,7 +113,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 113 | * | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play | | 113 | * | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play | |
| 114 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' | 114 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' |
| 115 | */ | 115 | */ |
| 116 | [_COLEMAK] = KEYMAP_TV44( | 116 | [_COLEMAK] = KEYMAP( |
| 117 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 117 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 118 | HPR_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC , | 118 | HPR_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC , |
| 119 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 119 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -135,7 +135,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 135 | * | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play | | 135 | * | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play | |
| 136 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' | 136 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' |
| 137 | */ | 137 | */ |
| 138 | [_DVORAK] = KEYMAP_TV44( | 138 | [_DVORAK] = KEYMAP( |
| 139 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 139 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 140 | HPR_TAB,KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC , | 140 | HPR_TAB,KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC , |
| 141 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 141 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -157,7 +157,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 157 | * | Brite | | | | | | Vol- | Mute | | 157 | * | Brite | | | | | | Vol- | Mute | |
| 158 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' | 158 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' |
| 159 | */ | 159 | */ |
| 160 | [_LOWER] = KEYMAP_TV44( | 160 | [_LOWER] = KEYMAP( |
| 161 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 161 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 162 | KC_TILD,KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC , | 162 | KC_TILD,KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC , |
| 163 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 163 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -179,7 +179,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 179 | * | Brite | | | | | | Vol- | Mute | | 179 | * | Brite | | | | | | Vol- | Mute | |
| 180 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' | 180 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' |
| 181 | */ | 181 | */ |
| 182 | [_RAISE] = KEYMAP_TV44( | 182 | [_RAISE] = KEYMAP( |
| 183 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 183 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 184 | KC_0 , KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC , | 184 | KC_0 , KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC , |
| 185 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 185 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -205,7 +205,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 205 | * seem to work on Mac. Presumably they'll work under Windows. | 205 | * seem to work on Mac. Presumably they'll work under Windows. |
| 206 | */ | 206 | */ |
| 207 | 207 | ||
| 208 | [_TOUCHCURSOR] = KEYMAP_TV44( | 208 | [_TOUCHCURSOR] = KEYMAP( |
| 209 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 209 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 210 | ALT_TAB,CMD_TAB, CTL_TAB, KC_LGUI, KC_LSFT, KC_TILD, KC_INS, KC_HOME, KC_UP, KC_END, KC_BSPC, _______ , | 210 | ALT_TAB,CMD_TAB, CTL_TAB, KC_LGUI, KC_LSFT, KC_TILD, KC_INS, KC_HOME, KC_UP, KC_END, KC_BSPC, _______ , |
| 211 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 211 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -228,7 +228,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 228 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' | 228 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' |
| 229 | */ | 229 | */ |
| 230 | 230 | ||
| 231 | [_MOUSECURSOR] = KEYMAP_TV44( | 231 | [_MOUSECURSOR] = KEYMAP( |
| 232 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 232 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 233 | _______,_______, KC_ACL0, _______, _______, _______, _______, KC_WH_L, KC_MS_U, KC_WH_R, KC_BTN2, _______ , | 233 | _______,_______, KC_ACL0, _______, _______, _______, _______, KC_WH_L, KC_MS_U, KC_WH_R, KC_BTN2, _______ , |
| 234 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 234 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -251,7 +251,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 251 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' | 251 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' |
| 252 | */ | 252 | */ |
| 253 | 253 | ||
| 254 | [_PLOVER] = KEYMAP_TV44( | 254 | [_PLOVER] = KEYMAP( |
| 255 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 255 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 256 | KC_1 , KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 , | 256 | KC_1 , KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 , |
| 257 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 257 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -273,7 +273,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 273 | * | | | | | | | | Reset | | 273 | * | | | | | | | | Reset | |
| 274 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' | 274 | * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------' |
| 275 | */ | 275 | */ |
| 276 | [_ADJUST] = KEYMAP_TV44( | 276 | [_ADJUST] = KEYMAP( |
| 277 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 277 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 278 | _______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , | 278 | _______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , |
| 279 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 279 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
diff --git a/keyboards/tv44/keymaps/smt/config.h b/keyboards/tv44/keymaps/smt/config.h deleted file mode 100644 index f8f0a5078..000000000 --- a/keyboards/tv44/keymaps/smt/config.h +++ /dev/null | |||
| @@ -1,36 +0,0 @@ | |||
| 1 | #ifndef CONFIG_USER_H | ||
| 2 | #define CONFIG_USER_H | ||
| 3 | |||
| 4 | #include "../../config.h" | ||
| 5 | |||
| 6 | /** | ||
| 7 | *TV44 keymap definition macro | ||
| 8 | */ | ||
| 9 | #define KEYMAP_TV44( \ | ||
| 10 | K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12, \ | ||
| 11 | K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, K24, \ | ||
| 12 | K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35, K36, \ | ||
| 13 | K37, K38, K39, K40, K41, K42, K43, K44 \ | ||
| 14 | ) { \ | ||
| 15 | { K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12, }, \ | ||
| 16 | { K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, K24, }, \ | ||
| 17 | { K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35, K36, }, \ | ||
| 18 | { K37, K38, K39, K40, KC_NO, KC_NO, KC_NO, K41, K42, K43, KC_NO, K44 } \ | ||
| 19 | } | ||
| 20 | |||
| 21 | /** | ||
| 22 | *TV45 keymap definition macro (arrows layout) | ||
| 23 | */ | ||
| 24 | #define KEYMAP_TV45( \ | ||
| 25 | K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12, \ | ||
| 26 | K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, K24, \ | ||
| 27 | K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35, K36, \ | ||
| 28 | K37, K38, K39, K40, K41, K42, K43, K44, K45 \ | ||
| 29 | ) { \ | ||
| 30 | { K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12, }, \ | ||
| 31 | { K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, K24, }, \ | ||
| 32 | { K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35, K36, }, \ | ||
| 33 | { K37, K38, K39, K40, KC_NO, KC_NO, KC_NO, K41, K42, K43, K44, K45 } \ | ||
| 34 | } | ||
| 35 | |||
| 36 | #endif | ||
diff --git a/keyboards/tv44/keymaps/smt/keymap.c b/keyboards/tv44/keymaps/smt/keymap.c index dfd624466..0540ad97e 100644 --- a/keyboards/tv44/keymaps/smt/keymap.c +++ b/keyboards/tv44/keymaps/smt/keymap.c | |||
| @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 49 | * | Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl | | 49 | * | Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl | |
| 50 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' | 50 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' |
| 51 | */ | 51 | */ |
| 52 | [_QWERTY] = KEYMAP_TV45( | 52 | [_QWERTY] = KEYMAP_ARROW( |
| 53 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 53 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 54 | HPR_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC , | 54 | HPR_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC , |
| 55 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 55 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 71 | * | Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl | | 71 | * | Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl | |
| 72 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' | 72 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' |
| 73 | */ | 73 | */ |
| 74 | [_COLEMAK] = KEYMAP_TV45( | 74 | [_COLEMAK] = KEYMAP_ARROW( |
| 75 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 75 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 76 | HPR_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC , | 76 | HPR_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC , |
| 77 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 77 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -93,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 93 | * | Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl | | 93 | * | Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl | |
| 94 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' | 94 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' |
| 95 | */ | 95 | */ |
| 96 | [_DVORAK] = KEYMAP_TV45( | 96 | [_DVORAK] = KEYMAP_ARROW( |
| 97 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 97 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 98 | HPR_TAB,KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC , | 98 | HPR_TAB,KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC , |
| 99 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 99 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -115,7 +115,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 115 | * | Brite | | | Home | End | | Left | Down | Right | | 115 | * | Brite | | | Home | End | | Left | Down | Right | |
| 116 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' | 116 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' |
| 117 | */ | 117 | */ |
| 118 | [_LOWER] = KEYMAP_TV45( | 118 | [_LOWER] = KEYMAP_ARROW( |
| 119 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 119 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 120 | ALL_T(KC_0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL , | 120 | ALL_T(KC_0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL , |
| 121 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 121 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -137,7 +137,7 @@ ALT_T(BACKLIT), _______ , _______ , KC_HOME , KC_END , _____ | |||
| 137 | * | Brite | | | Play | Next | | Mute | Vol- | Vol+ | | 137 | * | Brite | | | Play | Next | | Mute | Vol- | Vol+ | |
| 138 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' | 138 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' |
| 139 | */ | 139 | */ |
| 140 | [_RAISE] = KEYMAP_TV45( | 140 | [_RAISE] = KEYMAP_ARROW( |
| 141 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 141 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 142 | ALL_T(KC_TILD),KC_EXLM,KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL , | 142 | ALL_T(KC_TILD),KC_EXLM,KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL , |
| 143 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 143 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
| @@ -159,7 +159,7 @@ ALT_T(BACKLIT), _______ , _______ , KC_MPLY , KC_MNXT , _____ | |||
| 159 | * | | | | | | | | | | | 159 | * | | | | | | | | | | |
| 160 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' | 160 | * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------' |
| 161 | */ | 161 | */ |
| 162 | [_ADJUST] = KEYMAP_TV45( | 162 | [_ADJUST] = KEYMAP_ARROW( |
| 163 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ | 163 | /*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/ |
| 164 | _______, RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET , | 164 | _______, RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET , |
| 165 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ | 165 | /*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/ |
diff --git a/keyboards/tv44/keymaps/smt/readme.md b/keyboards/tv44/keymaps/smt/readme.md index 87bfbb04b..059fd1bbd 100644 --- a/keyboards/tv44/keymaps/smt/readme.md +++ b/keyboards/tv44/keymaps/smt/readme.md | |||
| @@ -4,7 +4,7 @@ This keymap is based on a combination of my Planck keymap and [jeebak's TV44 lay | |||
| 4 | 4 | ||
| 5 | I had been using something close to the default Minivan layout, but after spending a bit of time with the Planck and Preonic, I decided it would be better for me to try to standardize to some degree, where possible. | 5 | I had been using something close to the default Minivan layout, but after spending a bit of time with the Planck and Preonic, I decided it would be better for me to try to standardize to some degree, where possible. |
| 6 | 6 | ||
| 7 | Also, it's worth noting that my Minivan is one with the "arrows" layout, which has a 45th key, so I had to define a new KEYMAP_TV45 macro in config.h. In spite of this, the 45-key Minivan is still technically considered a "TV44" as far as I know. | 7 | Also, it's worth noting that my Minivan is one with the "arrows" layout, which has a 45th key. In spite of this, the 45-key Minivan is still technically considered a "TV44" as far as I know. |
| 8 | 8 | ||
| 9 |  | 9 |  |
| 10 | 10 | ||
| @@ -21,9 +21,9 @@ Also, it's worth noting that my Minivan is one with the "arrows" layout, which h | |||
| 21 | This key modifies with "Hyper" (see [Brett Terpstra's post](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/) on this) when held, and outputs the code for Tab when tapped. On the Mac, I use KeyboardMaestro to remap my hyper-keys to do a lot of crazy things. | 21 | This key modifies with "Hyper" (see [Brett Terpstra's post](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/) on this) when held, and outputs the code for Tab when tapped. On the Mac, I use KeyboardMaestro to remap my hyper-keys to do a lot of crazy things. |
| 22 | 22 | ||
| 23 | 3. **Ctrl/Escape** | 23 | 3. **Ctrl/Escape** |
| 24 | 24 | ||
| 25 | I set up another mod-tap, this time for the Escape key that would act as a Control modifier when held. | 25 | I set up another mod-tap, this time for the Escape key that would act as a Control modifier when held. |
| 26 | 26 | ||
| 27 | 4. **Alt/Backtick** | 27 | 4. **Alt/Backtick** |
| 28 | 28 | ||
| 29 | I don't currently have LEDs on most of my keyboards, and I certainly don't want LED controls on the base layer of a 40%. | 29 | I don't currently have LEDs on most of my keyboards, and I certainly don't want LED controls on the base layer of a 40%. |
diff --git a/keyboards/tv44/keymaps/tong92/keymap.c b/keyboards/tv44/keymaps/tong92/keymap.c index 4a16b3554..aba007c4d 100644 --- a/keyboards/tv44/keymaps/tong92/keymap.c +++ b/keyboards/tv44/keymaps/tong92/keymap.c | |||
| @@ -31,12 +31,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 31 | * | Ftn1 | GUI | Alt | Space/LOWER | Space/RAISE | ' | [ | ] | Alt | | 31 | * | Ftn1 | GUI | Alt | Space/LOWER | Space/RAISE | ' | [ | ] | Alt | |
| 32 | * `--------------------------------------------------------------------------' | 32 | * `--------------------------------------------------------------------------' |
| 33 | */ | 33 | */ |
| 34 | [0] = { | 34 | [0] = KEYMAP_ARROW( |
| 35 | {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, | 35 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, |
| 36 | {KC_LCTL,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_ENT}, | 36 | KC_LCTL,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_ENT, |
| 37 | {KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT,KC_SLSH,KC_RSFT }, | 37 | KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, |
| 38 | {FTN ,KC_LGUI,KC_LALT,LOWER,XXXXXXX,XXXXXXX,XXXXXXX,RAISE,KC_QUOT,KC_LBRC,KC_RBRC,KC_RALT} | 38 | FTN, KC_LGUI,KC_LALT, LOWER, RAISE, KC_QUOT,KC_LBRC,KC_RBRC,KC_RALT |
| 39 | }, | 39 | ), |
| 40 | /* LOWER | 40 | /* LOWER |
| 41 | * ,--------------------------------------------------------------------------. | 41 | * ,--------------------------------------------------------------------------. |
| 42 | * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | | 42 | * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | |
| @@ -48,12 +48,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 48 | * | | | | | | END | LEFT| Down|RIGHT| | 48 | * | | | | | | END | LEFT| Down|RIGHT| |
| 49 | * `--------------------------------------------------------------------------' | 49 | * `--------------------------------------------------------------------------' |
| 50 | */ | 50 | */ |
| 51 | [1] = { | 51 | [1] = KEYMAP_ARROW( |
| 52 | {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______}, | 52 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, |
| 53 | {_______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS,KC_PLUS,KC_LBRC,KC_RBRC,KC_BSLS }, | 53 | _______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS,KC_PLUS,KC_LBRC,KC_RBRC,KC_BSLS, |
| 54 | {_______,KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX,KC_HOME,KC_PGUP,KC_UP ,KC_PGDN }, | 54 | _______,KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX,KC_HOME,KC_PGUP,KC_UP ,KC_PGDN, |
| 55 | {XXXXXXX,_______,_______,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_END, KC_LEFT,KC_DOWN,KC_RIGHT} | 55 | XXXXXXX,_______,_______, _______,XXXXXXX, KC_END, KC_LEFT,KC_DOWN,KC_RIGHT |
| 56 | }, | 56 | ), |
| 57 | /* RAISE | 57 | /* RAISE |
| 58 | * ,--------------------------------------------------------------------------. | 58 | * ,--------------------------------------------------------------------------. |
| 59 | * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | | | 59 | * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | | |
| @@ -65,12 +65,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 65 | * | | | | | | END | LEFT| Down|RIGHT| | 65 | * | | | | | | END | LEFT| Down|RIGHT| |
| 66 | * `--------------------------------------------------------------------------' | 66 | * `--------------------------------------------------------------------------' |
| 67 | */ | 67 | */ |
| 68 | [2] ={ | 68 | [2] = KEYMAP_ARROW( |
| 69 | {KC_TILD,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,_______ }, | 69 | KC_TILD,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,_______, |
| 70 | {_______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS,KC_EQL, KC_LCBR,KC_RCBR,KC_PIPE }, | 70 | _______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS,KC_EQL, KC_LCBR,KC_RCBR,KC_PIPE, |
| 71 | {_______,KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,KC_HOME,KC_PGUP,KC_UP ,KC_PGDN }, | 71 | _______,KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,KC_HOME,KC_PGUP,KC_UP ,KC_PGDN, |
| 72 | {XXXXXXX,_______,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______,KC_END, KC_LEFT,KC_DOWN,KC_RIGHT} | 72 | XXXXXXX,_______,_______, _______,_______, KC_END, KC_LEFT,KC_DOWN,KC_RIGHT |
| 73 | }, | 73 | ), |
| 74 | /* FTN | 74 | /* FTN |
| 75 | * ,--------------------------------------------------------------------------. | 75 | * ,--------------------------------------------------------------------------. |
| 76 | * | ESC |WinOf|WinUp| | |Sh+Ca| | PgUp| UP | PgDo|PrtSc| DELET | | 76 | * | ESC |WinOf|WinUp| | |Sh+Ca| | PgUp| UP | PgDo|PrtSc| DELET | |
| @@ -82,12 +82,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 82 | * | | DeskL | DeskR| Task Manager| DeskX | MOUSE| | | LED | | 82 | * | | DeskL | DeskR| Task Manager| DeskX | MOUSE| | | LED | |
| 83 | * `--------------------------------------------------------------------------' | 83 | * `--------------------------------------------------------------------------' |
| 84 | */ | 84 | */ |
| 85 | [4] = { | 85 | [4] = KEYMAP_ARROW( |
| 86 | {KC_ESC ,LALT(KC_F4) ,LGUI(KC_UP) ,XXXXXXX ,XXXXXXX ,S(KC_CAPS) ,XXXXXXX,KC_PGUP,KC_UP,KC_PGDN,KC_PSCR,KC_DELT}, | 86 | KC_ESC ,LALT(KC_F4) ,LGUI(KC_UP) ,XXXXXXX ,XXXXXXX,S(KC_CAPS) ,XXXXXXX ,KC_PGUP,KC_UP ,KC_PGDN ,KC_PSCR,KC_DELT, |
| 87 | {_______,LGUI(KC_LEFT) ,LGUI(KC_DOWN) ,LGUI(KC_RIGHT) ,XXXXXXX ,LALT(KC_CAPS),KC_CAPS,KC_LEFT,KC_DOWN,KC_RIGHT,XXXXXXX,XXXXXXX}, | 87 | _______,LGUI(KC_LEFT) ,LGUI(KC_DOWN) ,LGUI(KC_RIGHT),XXXXXXX,LALT(KC_CAPS) ,KC_CAPS ,KC_LEFT,KC_DOWN,KC_RIGHT,XXXXXXX,XXXXXXX, |
| 88 | {_______,LGUI(LSFT(KC_LEFT)),LGUI(LSFT(KC_RIGHT)),XXXXXXX ,XXXXXXX ,LCTL(KC_CAPS),KC_SLCK,KC_HOME,XXXXXXX,KC_END,XXXXXXX,KC_RCTL}, | 88 | _______,LGUI(LSFT(KC_LEFT)),LGUI(LSFT(KC_RIGHT)),XXXXXXX ,XXXXXXX,LCTL(KC_CAPS) ,KC_SLCK ,KC_HOME,XXXXXXX,KC_END ,XXXXXXX,KC_RCTL, |
| 89 | {_______,LGUI(LCTL(KC_LEFT)),LGUI(LCTL(KC_RIGHT)),LCTL(LALT(KC_DELT)),XXXXXXX,XXXXXXX,XXXXXXX,LGUI(LCTL(KC_F4)),MOUSE,XXXXXXX,XXXXXXX,M(0)} | 89 | _______,LGUI(LCTL(KC_LEFT)),LGUI(LCTL(KC_RIGHT)), LCTL(LALT(KC_DELT)),LGUI(LCTL(KC_F4)), MOUSE ,XXXXXXX ,XXXXXXX,M(0) |
| 90 | }, | 90 | ), |
| 91 | /* MOUSE | 91 | /* MOUSE |
| 92 | * ,--------------------------------------------------------------------------. | 92 | * ,--------------------------------------------------------------------------. |
| 93 | * | | | |Mo_Up| | | |M_WhL|M_WhU|M_WhR| | RESET | | 93 | * | | | |Mo_Up| | | |M_WhL|M_WhU|M_WhR| | RESET | |
| @@ -99,12 +99,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 99 | * | | | | GO_DEFAULT | GO_DEFAULT | | | | | | 99 | * | | | | GO_DEFAULT | GO_DEFAULT | | | | | |
| 100 | * `--------------------------------------------------------------------------' | 100 | * `--------------------------------------------------------------------------' |
| 101 | */ | 101 | */ |
| 102 | [10] ={ | 102 | [10] = KEYMAP_ARROW( |
| 103 | {XXXXXXX,XXXXXXX,XXXXXXX,KC_MS_U,XXXXXXX,XXXXXXX,XXXXXXX,KC_WH_L,KC_WH_U,KC_WH_R,XXXXXXX,RESET}, | 103 | XXXXXXX,XXXXXXX,XXXXXXX,KC_MS_U,XXXXXXX,XXXXXXX,XXXXXXX,KC_WH_L,KC_WH_U,KC_WH_R,XXXXXXX,RESET, |
| 104 | {XXXXXXX,XXXXXXX,KC_MS_L,KC_MS_D,KC_MS_R,XXXXXXX,XXXXXXX,KC_BTN1,KC_WH_D,KC_BTN2,XXXXXXX,XXXXXXX}, | 104 | XXXXXXX,XXXXXXX,KC_MS_L,KC_MS_D,KC_MS_R,XXXXXXX,XXXXXXX,KC_BTN1,KC_WH_D,KC_BTN2,XXXXXXX,XXXXXXX, |
| 105 | {XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_ACL0,KC_ACL1,KC_ACL2,XXXXXXX,XXXXXXX}, | 105 | XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_ACL0,KC_ACL1,KC_ACL2,XXXXXXX,XXXXXXX, |
| 106 | {XXXXXXX,XXXXXXX,XXXXXXX,GO_DEFT,XXXXXXX,XXXXXXX,XXXXXXX,GO_DEFT,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX} | 106 | XXXXXXX,XXXXXXX,XXXXXXX, GO_DEFT,GO_DEFT, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX |
| 107 | } | 107 | ) |
| 108 | }; | 108 | }; |
| 109 | 109 | ||
| 110 | const uint16_t PROGMEM fn_actions[] = { | 110 | const uint16_t PROGMEM fn_actions[] = { |
| @@ -135,4 +135,4 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | |||
| 135 | break; | 135 | break; |
| 136 | } | 136 | } |
| 137 | return MACRO_NONE; | 137 | return MACRO_NONE; |
| 138 | }; \ No newline at end of file | 138 | }; |
diff --git a/keyboards/tv44/keymaps/xyverz/keymap.c b/keyboards/tv44/keymaps/xyverz/keymap.c index d710d8024..e3028019a 100644 --- a/keyboards/tv44/keymaps/xyverz/keymap.c +++ b/keyboards/tv44/keymaps/xyverz/keymap.c | |||
| @@ -28,47 +28,47 @@ enum planck_keycodes { | |||
| 28 | 28 | ||
| 29 | 29 | ||
| 30 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 30 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 31 | [_DVORAK] = { /* 0: Dvorak */ | 31 | [_DVORAK] = KEYMAP( /* 0: Dvorak */ |
| 32 | {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH}, | 32 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, |
| 33 | {KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS}, | 33 | KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, |
| 34 | {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT}, | 34 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, |
| 35 | {KC_LCTL, KC_LALT, LOWER, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, RAISE, KC_LGUI, XXXXXXX, KC_ENT } | 35 | KC_LCTL, KC_LALT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LGUI, KC_ENT |
| 36 | }, | 36 | ), |
| 37 | 37 | ||
| 38 | [_QWERTY] = { /* 1: Qwerty */ | 38 | [_QWERTY] = KEYMAP( /* 1: Qwerty */ |
| 39 | {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, | 39 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, |
| 40 | {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, | 40 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, |
| 41 | {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT}, | 41 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, |
| 42 | {KC_LCTL, KC_LALT, LOWER, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, RAISE, KC_LGUI, XXXXXXX, KC_ENT } | 42 | KC_LCTL, KC_LALT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LGUI, KC_ENT |
| 43 | }, | 43 | ), |
| 44 | 44 | ||
| 45 | [_COLEMAK] = { /* 2: Colemak */ | 45 | [_COLEMAK] = KEYMAP( /* 2: Colemak */ |
| 46 | {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, | 46 | KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, |
| 47 | {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, | 47 | KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, |
| 48 | {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT}, | 48 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, |
| 49 | {KC_LCTL, KC_LALT, LOWER, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, RAISE, KC_LGUI, XXXXXXX, KC_ENT } | 49 | KC_LCTL, KC_LALT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LGUI, KC_ENT |
| 50 | }, | 50 | ), |
| 51 | 51 | ||
| 52 | [_LOWER] = {/* 1: FN 1 */ | 52 | [_LOWER] = KEYMAP( /* 1: FN 1 */ |
| 53 | {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE}, | 53 | KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE, |
| 54 | {_______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, | 54 | _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, |
| 55 | {KC_CAPS, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______}, | 55 | KC_CAPS, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, |
| 56 | {KC_LEFT, KC_RGHT, _______, KC_DEL, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, _______, KC_UP, XXXXXXX, KC_DOWN} | 56 | KC_LEFT, KC_RGHT, _______, KC_DEL, KC_INS, _______, KC_UP, KC_DOWN |
| 57 | }, | 57 | ), |
| 58 | 58 | ||
| 59 | [_RAISE] = { /* 2: FN 2 */ | 59 | [_RAISE] = KEYMAP( /* 2: FN 2 */ |
| 60 | {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS}, | 60 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, |
| 61 | {_______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, | 61 | _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, |
| 62 | {KC_CAPS, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______}, | 62 | KC_CAPS, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, |
| 63 | {KC_LEFT, KC_RGHT, _______, KC_DEL, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, _______, KC_UP, XXXXXXX, KC_DOWN} | 63 | KC_LEFT, KC_RGHT, _______, KC_DEL, KC_INS, _______, KC_UP, KC_DOWN |
| 64 | }, | 64 | ), |
| 65 | 65 | ||
| 66 | [_ADJUST] = { | 66 | [_ADJUST] = KEYMAP( |
| 67 | {KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12 }, | 67 | KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, |
| 68 | {_______, RESET, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, _______}, | 68 | _______, RESET, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, _______, |
| 69 | {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, | 69 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| 70 | {KC_HOME, KC_END, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_PGUP, XXXXXXX, KC_PGDN} | 70 | KC_HOME, KC_END, _______, _______, _______, _______, KC_PGUP, KC_PGDN |
| 71 | } | 71 | ) |
| 72 | }; | 72 | }; |
| 73 | 73 | ||
| 74 | void persistent_default_layer_set(uint16_t default_layer) { | 74 | void persistent_default_layer_set(uint16_t default_layer) { |
diff --git a/keyboards/tv44/tv44.h b/keyboards/tv44/tv44.h index 65c0b4593..bd6fb90b0 100644 --- a/keyboards/tv44/tv44.h +++ b/keyboards/tv44/tv44.h | |||
| @@ -4,19 +4,64 @@ | |||
| 4 | #include "quantum.h" | 4 | #include "quantum.h" |
| 5 | 5 | ||
| 6 | // This a shortcut to help you visually see your layout. | 6 | // This a shortcut to help you visually see your layout. |
| 7 | // The following is an example using the Planck MIT layout | 7 | // There are a number of variations depending on the layout of your bottom row. |
| 8 | // The first section contains all of the arguements | 8 | // The arrow variant adds an additional key on the bottom-right, while the |
| 9 | // The second converts the arguments into a two-dimensional array | 9 | // command variant adds an additional key on the bottom-left. arrow-command is a |
| 10 | // combination of both of those, having an additional key on both sides. | ||
| 11 | // | ||
| 12 | // Please note that the numbering of the macro arguments are based on the | ||
| 13 | // numbers of the keys on the PCB. | ||
| 14 | |||
| 10 | #define KEYMAP( \ | 15 | #define KEYMAP( \ |
| 11 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ | 16 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ |
| 12 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ | 17 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ |
| 13 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ | 18 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ |
| 14 | K30, K31, K32, K33, K37, K38, K39, K3A, K3B \ | 19 | K30, K31, K32, K33, K37, K38, K39, K3B \ |
| 20 | ) \ | ||
| 21 | { \ | ||
| 22 | { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ | ||
| 23 | { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ | ||
| 24 | { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ | ||
| 25 | { K30, K31, K32, K33, KC_NO, KC_NO, KC_NO, K37, K38, K39, KC_NO, K3B } \ | ||
| 26 | } | ||
| 27 | |||
| 28 | #define KEYMAP_ARROW( \ | ||
| 29 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ | ||
| 30 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ | ||
| 31 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ | ||
| 32 | K30, K31, K32, K33, K37, K38, K39, K3A, K3B \ | ||
| 15 | ) \ | 33 | ) \ |
| 16 | { \ | 34 | { \ |
| 17 | { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ | 35 | { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ |
| 18 | { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ | 36 | { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ |
| 19 | { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ | 37 | { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ |
| 20 | { K30, K31, K32, K33, KC_NO, KC_NO, KC_NO, K37, K38, K39, K3A, K3B } \ | 38 | { K30, K31, K32, K33, KC_NO, KC_NO, KC_NO, K37, K38, K39, K3A, K3B } \ |
| 39 | } | ||
| 40 | |||
| 41 | #define KEYMAP_COMMAND( \ | ||
| 42 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ | ||
| 43 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ | ||
| 44 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ | ||
| 45 | K30, K31, K34, K32, K33, K37, K38, K39, K3B \ | ||
| 46 | ) \ | ||
| 47 | { \ | ||
| 48 | { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ | ||
| 49 | { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ | ||
| 50 | { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ | ||
| 51 | { K30, K31, K32, K33, K34, KC_NO, KC_NO, K37, K38, K39, KC_NO, K3B } \ | ||
| 52 | } | ||
| 53 | |||
| 54 | #define KEYMAP_ARROW_COMMAND( \ | ||
| 55 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ | ||
| 56 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ | ||
| 57 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ | ||
| 58 | K30, K31, K34, K32, K33, K37, K38, K39, K3A, K3B \ | ||
| 59 | ) \ | ||
| 60 | { \ | ||
| 61 | { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ | ||
| 62 | { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ | ||
| 63 | { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ | ||
| 64 | { K30, K31, K32, K33, K34, KC_NO, KC_NO, K37, K38, K39, K3A, K3B } \ | ||
| 65 | } | ||
| 21 | 66 | ||
| 22 | #endif | 67 | #endif |
diff --git a/quantum/quantum.c b/quantum/quantum.c index 4f4cee4e9..f5fb1e35c 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c | |||
| @@ -437,6 +437,14 @@ bool process_record_quantum(keyrecord_t *record) { | |||
| 437 | return false; | 437 | return false; |
| 438 | // break; | 438 | // break; |
| 439 | } | 439 | } |
| 440 | case GRAVE_ESC: { | ||
| 441 | void (*method)(uint8_t) = (record->event.pressed) ? &add_key : &del_key; | ||
| 442 | uint8_t shifted = get_mods() & ((MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT) | ||
| 443 | |MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))); | ||
| 444 | |||
| 445 | method(shifted ? KC_GRAVE : KC_ESCAPE); | ||
| 446 | send_keyboard_report(); | ||
| 447 | } | ||
| 440 | default: { | 448 | default: { |
| 441 | shift_interrupted[0] = true; | 449 | shift_interrupted[0] = true; |
| 442 | shift_interrupted[1] = true; | 450 | shift_interrupted[1] = true; |
diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 7354ae0da..c34ecafa5 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h | |||
| @@ -104,6 +104,7 @@ enum quantum_keycodes { | |||
| 104 | MAGIC_UNHOST_NKRO, | 104 | MAGIC_UNHOST_NKRO, |
| 105 | MAGIC_UNSWAP_ALT_GUI, | 105 | MAGIC_UNSWAP_ALT_GUI, |
| 106 | MAGIC_TOGGLE_NKRO, | 106 | MAGIC_TOGGLE_NKRO, |
| 107 | GRAVE_ESC, | ||
| 107 | 108 | ||
| 108 | // Leader key | 109 | // Leader key |
| 109 | #ifndef DISABLE_LEADER | 110 | #ifndef DISABLE_LEADER |
| @@ -514,6 +515,8 @@ enum quantum_keycodes { | |||
| 514 | #define MACROTAP(kc) (kc | QK_MACRO | FUNC_TAP<<8) | 515 | #define MACROTAP(kc) (kc | QK_MACRO | FUNC_TAP<<8) |
| 515 | #define MACRODOWN(...) (record->event.pressed ? MACRO(__VA_ARGS__) : MACRO_NONE) | 516 | #define MACRODOWN(...) (record->event.pressed ? MACRO(__VA_ARGS__) : MACRO_NONE) |
| 516 | 517 | ||
| 518 | #define KC_GESC GRAVE_ESC | ||
| 519 | |||
| 517 | 520 | ||
| 518 | // L-ayer, T-ap - 256 keycode max, 16 layer max | 521 | // L-ayer, T-ap - 256 keycode max, 16 layer max |
| 519 | #define LT(layer, kc) (kc | QK_LAYER_TAP | ((layer & 0xF) << 8)) | 522 | #define LT(layer, kc) (kc | QK_LAYER_TAP | ((layer & 0xF) << 8)) |
