diff options
| author | Erez Zukerman <bulk@ezuk.org> | 2016-07-24 18:04:59 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-07-24 18:04:59 -0700 |
| commit | 488522515934216666d02817d92a9e18b1edbff9 (patch) | |
| tree | 4fd192b80fa96628166f8ba15495f1bd84db5e25 | |
| parent | 1e944a4991e836cbb1a8ccc5d418934f7b3c1a29 (diff) | |
| parent | f4cb84c9402cd58628b6cf895fc24fc34fcffdbd (diff) | |
| download | qmk_firmware-488522515934216666d02817d92a9e18b1edbff9.tar.gz qmk_firmware-488522515934216666d02817d92a9e18b1edbff9.zip | |
Merge pull request #534 from willwm/teckinesis
Teckinesis for ErgoDox EZ
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/keymap.c | 455 | ||||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/ordinary-special.png | bin | 0 -> 63065 bytes | |||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/ordinary-special.txt | 27 | ||||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/readme.md | 45 | ||||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-base.json | 434 | ||||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-base.png | bin | 0 -> 93743 bytes | |||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-media.json | 436 | ||||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-media.png | bin | 0 -> 112216 bytes | |||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-symbol.json | 422 | ||||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-symbol.png | bin | 0 -> 97350 bytes |
11 files changed, 1820 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore index 7c1e434e3..849143352 100644 --- a/.gitignore +++ b/.gitignore | |||
| @@ -26,3 +26,4 @@ CMakeLists.txt | |||
| 26 | .project | 26 | .project |
| 27 | .settings/ | 27 | .settings/ |
| 28 | .idea | 28 | .idea |
| 29 | .browse.VC.db* \ No newline at end of file | ||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/keymap.c b/keyboards/ergodox_ez/keymaps/teckinesis/keymap.c new file mode 100644 index 000000000..ec6ceb96b --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/keymap.c | |||
| @@ -0,0 +1,455 @@ | |||
| 1 | #include "ergodox_ez.h" | ||
| 2 | #include "led.h" | ||
| 3 | #include "debug.h" | ||
| 4 | #include "action_layer.h" | ||
| 5 | #include "action_util.h" | ||
| 6 | #include "mousekey.h" | ||
| 7 | |||
| 8 | #define BASE 0 // default layer | ||
| 9 | #define SYMB 1 // symbols layer | ||
| 10 | #define MDIA 2 // media layer | ||
| 11 | #define SPEC 3 // special layer | ||
| 12 | |||
| 13 | #define LCaps 10 // left caps-shift key | ||
| 14 | #define LSymb 11 // left symbol-shift key | ||
| 15 | #define LMdia 12 // left media-shift key | ||
| 16 | #define LSpec 13 // left special-shift key | ||
| 17 | #define RCaps 14 // right caps-shift key | ||
| 18 | #define RSymb 15 // right symbol-shift key | ||
| 19 | #define RMdia 16 // right media-shift key | ||
| 20 | #define RSpec 17 // right special-shift key | ||
| 21 | |||
| 22 | #define MUL 20 // mouse up left | ||
| 23 | #define MUR 21 // mouse up right | ||
| 24 | #define MDL 22 // mouse down left | ||
| 25 | #define MDR 23 // mouse down right | ||
| 26 | |||
| 27 | /* | ||
| 28 | * teckinesis layout for ErgoDox (EZ) | ||
| 29 | * | ||
| 30 | * Modifications from The Ordinary Layout v4 by Will Wolff-Myren willwm@gmail.com | ||
| 31 | * Modifications from default by Nicholas Keene ergodoxez@nicholaskeene.com | ||
| 32 | * | ||
| 33 | * No rights reserved. This software is in the public domain. | ||
| 34 | * Credit me if you are friendly but if you're a jerk don't bother. | ||
| 35 | * | ||
| 36 | * Details: readme.md | ||
| 37 | * https://github.com/willwm/qmk_firmware/tree/master/keyboard/ergodox_ez/keymaps/teckinesis | ||
| 38 | */ | ||
| 39 | |||
| 40 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 41 | |||
| 42 | /******* Base Layer ******************************************************************************************************** | ||
| 43 | * | ||
| 44 | * ,------------------------------------------------------. ,------------------------------------------------------. | ||
| 45 | * | Special =+ | 1 | 2 | 3 | 4 | 5 | ESC | | ` | 6 | 7 | 8 | 9 | 0 | -_ Special | | ||
| 46 | * |------------+------+------+------+------+-------------| |------+------+------+------+------+------+------------| | ||
| 47 | * | Media Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \| Media | | ||
| 48 | * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------| | ||
| 49 | * | Symbol | A | S | D | F | G |------| |------| H | J | K | L | ; | '" Symbol | | ||
| 50 | * |------------+------+------+------+------+------|Shift | | Tab |------+------+------+------+------+------------| | ||
| 51 | * | Capitals | Z | X | C | V | B | -Tab | | | N | M | , | . | / | Capitals | | ||
| 52 | * `------------+------+------+------+------+-------------' `-------------+------+------+------+------+------------' | ||
| 53 | * | LCtrl |Meh/\ |Hypr//| LAlt | LGui | | RGui | RAlt |Hypr/[|Meh/] | RCtrl | | ||
| 54 | * `-----------------------------------' `-----------------------------------' | ||
| 55 | * ,-------------. ,-------------. | ||
| 56 | * | Home | End | | Left | Right| | ||
| 57 | * ,------|------|------| |------+------+------. | ||
| 58 | * | | | PgUp | | Up | | | | ||
| 59 | * |Backsp| Del |------| |------| Enter| Space| | ||
| 60 | * | | | PgDn | | Down | | | | ||
| 61 | * `--------------------' `--------------------' | ||
| 62 | */ | ||
| 63 | [BASE] = KEYMAP( | ||
| 64 | // left hand | ||
| 65 | F(LSpec),KC_1,KC_2,KC_3 ,KC_4 ,KC_5 ,KC_ESC | ||
| 66 | ,F(LMdia) ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC | ||
| 67 | ,M(LSymb) ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G | ||
| 68 | ,M(LCaps) ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSFT(KC_TAB) | ||
| 69 | ,KC_LCTL,MEH_T(KC_BSLS),ALL_T(KC_SLSH),KC_LALT,KC_LGUI | ||
| 70 | ,KC_HOME,KC_END | ||
| 71 | ,KC_PGUP | ||
| 72 | ,KC_BSPC,KC_DEL ,KC_PGDN | ||
| 73 | // right hand | ||
| 74 | ,KC_GRV ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,F(RSpec) | ||
| 75 | ,KC_RBRC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,F(RMdia) | ||
| 76 | ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,F(RSymb) | ||
| 77 | ,KC_TAB ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH ,M(RCaps) | ||
| 78 | ,KC_RGUI,KC_RALT,ALL_T(KC_LBRC),MEH_T(KC_RBRC),KC_RCTL | ||
| 79 | ,KC_LEFT ,KC_RGHT | ||
| 80 | ,KC_UP | ||
| 81 | ,KC_DOWN ,KC_ENT ,KC_SPC | ||
| 82 | ), | ||
| 83 | |||
| 84 | /******* Symbols Layer ***************************************************************************************************** | ||
| 85 | * | ||
| 86 | * ,-----------------------------------------------------. ,-----------------------------------------------------. | ||
| 87 | * | | F1 | F2 | F3 | F4 | F5 | Esc | | - | F6 | F7 | F8 | F9 | F10 | | | ||
| 88 | * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| | ||
| 89 | * | | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | | | ||
| 90 | * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| | ||
| 91 | * | | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | | | ||
| 92 | * |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------| | ||
| 93 | * | | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | | | ||
| 94 | * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' | ||
| 95 | * | LCtrl | Meh |Hyper | LAlt | LGui | |RGui/0|RAlt/.|Hypr/=|Meh/+ |RCtrl/Ent| | ||
| 96 | * `-----------------------------------' `-------------------------------------' | ||
| 97 | * ,-------------. ,-------------. | ||
| 98 | * | Left | Right| | Home | End | | ||
| 99 | * ,------|------|------| |------+------+------. | ||
| 100 | * | | | Up | | PgUp | | | | ||
| 101 | * |Space |Enter |------| |------|BackSp| Del | | ||
| 102 | * | | | Down | | PgDn | | | | ||
| 103 | * `--------------------' `--------------------' | ||
| 104 | */ | ||
| 105 | [SYMB] = KEYMAP( | ||
| 106 | // left hand | ||
| 107 | KC_TRNS ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_ESC | ||
| 108 | ,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) | ||
| 109 | ,KC_TRNS ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV | ||
| 110 | ,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB | ||
| 111 | ,KC_LCTL ,KC_MEH ,KC_HYPR ,KC_LALT ,KC_LGUI | ||
| 112 | ,KC_LEFT ,KC_RGHT | ||
| 113 | ,KC_UP | ||
| 114 | ,KC_SPC ,KC_ENT ,KC_DOWN | ||
| 115 | // right hand | ||
| 116 | ,KC_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_TRNS | ||
| 117 | ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,KC_TRNS | ||
| 118 | ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,KC_TRNS | ||
| 119 | ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS | ||
| 120 | ,GUI_T(KC_0),ALT_T(KC_DOT),ALL_T(KC_EQL),MEH_T(KC_PLUS),CTL_T(KC_ENT) | ||
| 121 | ,KC_HOME ,KC_END | ||
| 122 | ,KC_PGUP | ||
| 123 | ,KC_PGDN ,KC_BSPC ,KC_DEL | ||
| 124 | ), | ||
| 125 | |||
| 126 | /******* Media Layer ******************************************************************************************************* | ||
| 127 | * | ||
| 128 | * ,---------------------------------------------------------------. ,---------------------------------------------------------------. | ||
| 129 | * | | F11 | F12 | F13 | F14 | F15 | Esc | | | F16 | F17 | F18 | F19 | F20 | | | ||
| 130 | * |------+---------+---------+---------+---------+----------------| |------+---------+---------+---------+---------+---------+------| | ||
| 131 | * | | |MouseUpLf|Mouse Up |MouseUpRg|Volume Up|Scroll| |Scroll|PrintScrn| Home | Up | PgUp | | | | ||
| 132 | * |------+---------+---------+---------+---------+---------| Up | | Up |---------+---------+---------+---------+---------+------| | ||
| 133 | * | | |MouseLeft|MouseDown|MouseRght|Volume Dn|------| |------| Num Lock| Left | Down | Right | | | | ||
| 134 | * |------+---------+---------+---------+---------+---------|Scroll| |Scroll|---------+---------+---------+---------+---------+------| | ||
| 135 | * | | |MouseDnLf|MouseDown|MouseDnRg| Mute | Down | | Down | | End | Down | PgDn | | | | ||
| 136 | * `------+---------+---------+---------+---------+----------------' `----------------+---------+---------+---------+---------+------' | ||
| 137 | * |LCtrl| Meh | MClick | LClick | R Click| |Cmd/Insrt|Optn/Del | Hyper | Meh |RCtrl| | ||
| 138 | * `---------------------------------------------' `---------------------------------------------' | ||
| 139 | * ,-------------. ,-------------. | ||
| 140 | * | Stop |Refrsh| | Prev | Next | | ||
| 141 | * ,------|------|------| |------+------+------. | ||
| 142 | * |Brwser|Brwser|Search| |VolUp | | | | ||
| 143 | * |Back | Fwd |------| |------| Stop | Play-| | ||
| 144 | * | | | Home | |VolDn | | Pause| | ||
| 145 | * `--------------------' `--------------------' | ||
| 146 | */ | ||
| 147 | [MDIA] = KEYMAP( | ||
| 148 | // left hand | ||
| 149 | KC_TRNS ,KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,KC_ESC | ||
| 150 | ,KC_TRNS ,KC_NO ,M(MUL) ,KC_MS_U ,M(MUR) ,KC_VOLU ,KC_WH_U | ||
| 151 | ,KC_TRNS ,KC_NO ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_VOLD | ||
| 152 | ,KC_TRNS ,KC_NO ,M(MDL) ,KC_MS_D ,M(MDR) ,KC_MUTE ,KC_WH_D | ||
| 153 | ,KC_LCTL ,KC_MEH ,KC_BTN3 ,KC_BTN1 ,KC_BTN2 | ||
| 154 | ,KC_WSTP ,KC_WREF | ||
| 155 | ,KC_WSCH | ||
| 156 | ,KC_WBAK ,KC_NO ,KC_WHOM | ||
| 157 | // right hand | ||
| 158 | ,KC_NO ,KC_F16 ,KC_F17 ,KC_F18 ,KC_F19 ,KC_F20 ,KC_TRNS | ||
| 159 | ,KC_WH_U ,KC_PSCR ,KC_HOME ,KC_UP ,KC_PGUP ,KC_NO ,KC_TRNS | ||
| 160 | ,KC_NLCK ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_NO ,KC_TRNS | ||
| 161 | ,KC_WH_D ,KC_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_NO ,KC_TRNS | ||
| 162 | ,GUI_T(KC_INS),ALT_T(KC_DEL),KC_HYPR ,KC_MEH ,KC_RCTL | ||
| 163 | ,KC_MPRV ,KC_MNXT | ||
| 164 | ,KC_VOLU | ||
| 165 | ,KC_VOLD ,KC_MSTP ,KC_MPLY | ||
| 166 | ), | ||
| 167 | |||
| 168 | /******* Special Layer ***************************************************************************************************** | ||
| 169 | * | ||
| 170 | * ,-----------------------------------------------------. ,-----------------------------------------------------. | ||
| 171 | * | | Esc | | | | | | | | | | | | Bspc | | | ||
| 172 | * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| | ||
| 173 | * | | | | | | | | | | | | | | | | | ||
| 174 | * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| | ||
| 175 | * | | | | | | |------| |------| | | | | | | | ||
| 176 | * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| | ||
| 177 | * | | | | | | | | | | | | | | | RShift | | ||
| 178 | * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' | ||
| 179 | * | | | | | | | | | | | | | ||
| 180 | * `----------------------------------' `----------------------------------' | ||
| 181 | * ,-------------. ,-------------. | ||
| 182 | * | | | | | | | ||
| 183 | * ,------|------|------| |------+------+------. | ||
| 184 | * | | | | | | | | | ||
| 185 | * | | |------| |------| | | | ||
| 186 | * | | | | | | | | | ||
| 187 | * `--------------------' `--------------------' | ||
| 188 | */ | ||
| 189 | [SPEC] = KEYMAP( | ||
| 190 | // left hand | ||
| 191 | KC_TRNS ,KC_ESC ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS | ||
| 192 | ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS | ||
| 193 | ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS | ||
| 194 | ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS | ||
| 195 | ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS | ||
| 196 | |||
| 197 | ,KC_TRNS ,KC_TRNS | ||
| 198 | ,KC_TRNS | ||
| 199 | ,KC_TRNS,KC_TRNS ,KC_TRNS | ||
| 200 | // right hand | ||
| 201 | ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_BSPC ,KC_TRNS | ||
| 202 | ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS | ||
| 203 | ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS | ||
| 204 | ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_RSFT | ||
| 205 | ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS | ||
| 206 | |||
| 207 | ,KC_TRNS ,KC_TRNS | ||
| 208 | ,KC_TRNS | ||
| 209 | ,KC_TRNS ,KC_TRNS ,KC_TRNS | ||
| 210 | ) | ||
| 211 | }; | ||
| 212 | |||
| 213 | const uint16_t PROGMEM fn_actions[] = { | ||
| 214 | // the faux shift keys are implemented as macro taps | ||
| 215 | [LCaps] = ACTION_MACRO_TAP(LCaps) | ||
| 216 | ,[LSymb] = ACTION_MACRO_TAP(LSymb) | ||
| 217 | ,[LMdia] = ACTION_MACRO_TAP(LMdia) | ||
| 218 | ,[LSpec] = ACTION_MACRO_TAP(LSpec) | ||
| 219 | ,[RCaps] = ACTION_MACRO_TAP(RCaps) | ||
| 220 | ,[RSymb] = ACTION_MACRO_TAP(RSymb) | ||
| 221 | ,[RMdia] = ACTION_MACRO_TAP(RMdia) | ||
| 222 | ,[RSpec] = ACTION_MACRO_TAP(RSpec) | ||
| 223 | }; | ||
| 224 | |||
| 225 | uint16_t caps_shift = 0; | ||
| 226 | uint16_t symb_shift = 0; | ||
| 227 | uint16_t mdia_shift = 0; | ||
| 228 | |||
| 229 | bool symb_lock = false; | ||
| 230 | bool mdia_lock = false; | ||
| 231 | |||
| 232 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | ||
| 233 | { | ||
| 234 | switch(id) { | ||
| 235 | // There are two shift keys for each layer so we increment a layer_shift var when one | ||
| 236 | // is pressed and decrement when one is released. If both are pressed at the same time | ||
| 237 | // then the layer is locked (or unlocked). The shift counts are bound between 0 and 2 | ||
| 238 | // only because sometimes rapid pressing led to irregular events; this way the states | ||
| 239 | // are self healing during use. | ||
| 240 | |||
| 241 | case LCaps: // both caps-shift keys trigger Left Shift | ||
| 242 | case RCaps: // so they don't interfere with the magic combo | ||
| 243 | if (record->event.pressed && !record->tap.count) { | ||
| 244 | if(++caps_shift > 2) caps_shift = 2; | ||
| 245 | if(caps_shift == 2) { | ||
| 246 | register_code(KC_CAPS); | ||
| 247 | unregister_code(KC_CAPS); | ||
| 248 | } else if(caps_shift == 1) { | ||
| 249 | register_code(KC_LSFT); | ||
| 250 | } | ||
| 251 | } else { | ||
| 252 | if(--caps_shift < 0) caps_shift = 0; | ||
| 253 | if(caps_shift == 0) unregister_code(KC_LSFT); | ||
| 254 | } | ||
| 255 | break; | ||
| 256 | |||
| 257 | case LSymb: | ||
| 258 | if (record->event.pressed) { | ||
| 259 | if(++symb_shift > 2) symb_shift = 2; | ||
| 260 | if(symb_shift == 2) { | ||
| 261 | symb_lock = !symb_lock; | ||
| 262 | } else if(symb_shift == 1) { | ||
| 263 | layer_on(SYMB); | ||
| 264 | } | ||
| 265 | } else { | ||
| 266 | if(--symb_shift < 0) symb_shift = 0; | ||
| 267 | if((symb_shift == 0) && (!symb_lock)) layer_off(SYMB); | ||
| 268 | } | ||
| 269 | break; | ||
| 270 | |||
| 271 | case LMdia: | ||
| 272 | if (record->event.pressed) { | ||
| 273 | if (record->tap.count && (!mdia_shift) && (!mdia_lock)) { | ||
| 274 | register_code(KC_TAB); | ||
| 275 | } else { | ||
| 276 | if(++mdia_shift > 2) mdia_shift = 2; | ||
| 277 | if(mdia_shift == 2) { | ||
| 278 | mdia_lock = !mdia_lock; | ||
| 279 | } else if(mdia_shift == 1) { | ||
| 280 | layer_on(MDIA); | ||
| 281 | } | ||
| 282 | } | ||
| 283 | } else { | ||
| 284 | if(record->tap.count && (!mdia_shift) && (!mdia_lock)) { | ||
| 285 | unregister_code(KC_TAB); | ||
| 286 | } else { | ||
| 287 | if(--mdia_shift < 0) mdia_shift = 0; | ||
| 288 | if((!mdia_shift) && (!mdia_lock)) layer_off(MDIA); | ||
| 289 | } | ||
| 290 | } | ||
| 291 | break; | ||
| 292 | |||
| 293 | case LSpec: | ||
| 294 | if (record->event.pressed) { | ||
| 295 | if (record->tap.count && !record->tap.interrupted) { | ||
| 296 | register_code(KC_EQL); | ||
| 297 | } else { | ||
| 298 | layer_on(SPEC); | ||
| 299 | } | ||
| 300 | } else { | ||
| 301 | if(record->tap.count && !record->tap.interrupted) { | ||
| 302 | unregister_code(KC_EQL); | ||
| 303 | } else { | ||
| 304 | layer_off(SPEC); | ||
| 305 | } | ||
| 306 | } | ||
| 307 | break; | ||
| 308 | |||
| 309 | case RSymb: | ||
| 310 | if (record->event.pressed) { | ||
| 311 | if (record->tap.count && (!symb_shift) && (!symb_lock)) { | ||
| 312 | register_code(KC_QUOT); | ||
| 313 | } else { | ||
| 314 | if(++symb_shift > 2) symb_shift = 2; | ||
| 315 | if(symb_shift == 2) { | ||
| 316 | symb_lock = !symb_lock; | ||
| 317 | } else if(symb_shift == 1) { | ||
| 318 | layer_on(SYMB); | ||
| 319 | } | ||
| 320 | } | ||
| 321 | } else { | ||
| 322 | if(record->tap.count && symb_shift == 0) { | ||
| 323 | unregister_code(KC_QUOT); | ||
| 324 | } else { | ||
| 325 | if(--symb_shift < 0) symb_shift = 0; | ||
| 326 | if((!symb_shift) && (!symb_lock)) layer_off(SYMB); | ||
| 327 | } | ||
| 328 | } | ||
| 329 | break; | ||
| 330 | |||
| 331 | case RMdia: | ||
| 332 | if (record->event.pressed) { | ||
| 333 | if (record->tap.count && (!mdia_shift) && (!mdia_lock)) { | ||
| 334 | register_code(KC_BSLS); | ||
| 335 | } else { | ||
| 336 | if(++mdia_shift > 2) mdia_shift = 2; | ||
| 337 | if(mdia_shift == 2) { | ||
| 338 | mdia_lock = !mdia_lock; | ||
| 339 | } else if(mdia_shift == 1) { | ||
| 340 | layer_on(MDIA); | ||
| 341 | } | ||
| 342 | } | ||
| 343 | } else { | ||
| 344 | if(record->tap.count && (!mdia_shift) && (!mdia_lock)) { | ||
| 345 | unregister_code(KC_BSLS); | ||
| 346 | } else { | ||
| 347 | if(--mdia_shift < 0) mdia_shift = 0; | ||
| 348 | if((!mdia_shift) && (!mdia_lock)) layer_off(MDIA); | ||
| 349 | } | ||
| 350 | } | ||
| 351 | break; | ||
| 352 | |||
| 353 | case RSpec: | ||
| 354 | if (record->event.pressed) { | ||
| 355 | if (record->tap.count && !record->tap.interrupted) { | ||
| 356 | register_code(KC_MINS); | ||
| 357 | } else { | ||
| 358 | layer_on(SPEC); | ||
| 359 | } | ||
| 360 | } else { | ||
| 361 | if(record->tap.count && !record->tap.interrupted) { | ||
| 362 | unregister_code(KC_MINS); | ||
| 363 | } else { | ||
| 364 | layer_off(SPEC); | ||
| 365 | } | ||
| 366 | } | ||
| 367 | break; | ||
| 368 | |||
| 369 | // mouse diagonals | ||
| 370 | |||
| 371 | case MUL: // mouse up left | ||
| 372 | if (record->event.pressed) { | ||
| 373 | mousekey_on(KC_MS_UP); | ||
| 374 | mousekey_on(KC_MS_LEFT); | ||
| 375 | mousekey_send(); | ||
| 376 | } else { | ||
| 377 | mousekey_off(KC_MS_UP); | ||
| 378 | mousekey_off(KC_MS_LEFT); | ||
| 379 | mousekey_send(); | ||
| 380 | } | ||
| 381 | break; | ||
| 382 | |||
| 383 | case MUR: // mouse up right | ||
| 384 | if (record->event.pressed) { | ||
| 385 | mousekey_on(KC_MS_UP); | ||
| 386 | mousekey_on(KC_MS_RIGHT); | ||
| 387 | mousekey_send(); | ||
| 388 | } else { | ||
| 389 | mousekey_off(KC_MS_UP); | ||
| 390 | mousekey_off(KC_MS_RIGHT); | ||
| 391 | mousekey_send(); | ||
| 392 | } | ||
| 393 | break; | ||
| 394 | |||
| 395 | case MDL: // mouse down left | ||
| 396 | if (record->event.pressed) { | ||
| 397 | mousekey_on(KC_MS_DOWN); | ||
| 398 | mousekey_on(KC_MS_LEFT); | ||
| 399 | mousekey_send(); | ||
| 400 | } else { | ||
| 401 | mousekey_off(KC_MS_DOWN); | ||
| 402 | mousekey_off(KC_MS_LEFT); | ||
| 403 | mousekey_send(); | ||
| 404 | } | ||
| 405 | break; | ||
| 406 | |||
| 407 | case MDR: // mouse down right | ||
| 408 | if (record->event.pressed) { | ||
| 409 | mousekey_on(KC_MS_DOWN); | ||
| 410 | mousekey_on(KC_MS_RIGHT); | ||
| 411 | mousekey_send(); | ||
| 412 | } else { | ||
| 413 | mousekey_off(KC_MS_DOWN); | ||
| 414 | mousekey_off(KC_MS_RIGHT); | ||
| 415 | mousekey_send(); | ||
| 416 | } | ||
| 417 | break; | ||
| 418 | |||
| 419 | default: | ||
| 420 | // none | ||
| 421 | break; | ||
| 422 | } | ||
| 423 | |||
| 424 | return MACRO_NONE; | ||
| 425 | }; | ||
| 426 | |||
| 427 | // Runs just one time when the keyboard initializes. | ||
| 428 | void matrix_init_user(void) { | ||
| 429 | |||
| 430 | }; | ||
| 431 | |||
| 432 | // Runs constantly in the background, in a loop. | ||
| 433 | void matrix_scan_user(void) { | ||
| 434 | // shift or caps lock turns on red light | ||
| 435 | if(caps_shift || (keyboard_report->mods & MOD_BIT(KC_RSFT)) || (host_keyboard_leds() & (1<<USB_LED_CAPS_LOCK))) { | ||
| 436 | ergodox_right_led_1_on(); | ||
| 437 | } else { | ||
| 438 | ergodox_right_led_1_off(); | ||
| 439 | } | ||
| 440 | |||
| 441 | // Symbol layer turns on green light | ||
| 442 | if(layer_state & (1UL<<SYMB)) { | ||
| 443 | ergodox_right_led_2_on(); | ||
| 444 | } else { | ||
| 445 | ergodox_right_led_2_off(); | ||
| 446 | } | ||
| 447 | |||
| 448 | // Media layer turns on blue light | ||
| 449 | if(layer_state & (1UL<<MDIA)) { | ||
| 450 | ergodox_right_led_3_on(); | ||
| 451 | } else { | ||
| 452 | ergodox_right_led_3_off(); | ||
| 453 | } | ||
| 454 | }; | ||
| 455 | |||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/ordinary-special.png b/keyboards/ergodox_ez/keymaps/teckinesis/ordinary-special.png new file mode 100644 index 000000000..6eecf447e --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/ordinary-special.png | |||
| Binary files differ | |||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/ordinary-special.txt b/keyboards/ergodox_ez/keymaps/teckinesis/ordinary-special.txt new file mode 100644 index 000000000..a08827c6d --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/ordinary-special.txt | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | [{x:3.5,a:7},"",{x:10.5},""], | ||
| 2 | [{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], | ||
| 3 | [{y:-0.875,x:5.5},"",{c:"#ff4444",a:4},"Esc",{x:4.5,c:"#cccccc",a:7},"",""], | ||
| 4 | [{y:-0.875,c:"#000000",t:"#ff0000",a:4,w:1.5},"Special\n\n\n\n\n\nShift",{c:"#ff4444",t:"#000000"},"Esc",{x:14.5,c:"#54d6de"},"Back\n\n\n\n\n\nspace",{c:"#000000",t:"#ff0000",w:1.5},"\n\nSpecial\n\n\n\n\nShift"], | ||
| 5 | [{y:-0.375,x:3.5,c:"#cccccc",t:"#000000",a:7},"",{x:10.5},""], | ||
| 6 | [{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], | ||
| 7 | [{y:-0.875,x:5.5},"",{h:1.5},"",{x:4.5,h:1.5},"",""], | ||
| 8 | [{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""], | ||
| 9 | [{y:-0.375,x:3.5},"",{x:10.5},""], | ||
| 10 | [{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], | ||
| 11 | [{y:-0.875,x:5.5},"",{x:6.5},""], | ||
| 12 | [{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""], | ||
| 13 | [{y:-0.625,x:6.5,h:1.5},"",{x:4.5,h:1.5},""], | ||
| 14 | [{y:-0.75,x:3.5},"",{x:10.5},""], | ||
| 15 | [{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], | ||
| 16 | [{y:-0.875,x:5.5},"",{x:6.5},""], | ||
| 17 | [{y:-0.875,w:1.5},"","",{x:14.5},"",{c:"#2277ff",w:1.5},"RShift"], | ||
| 18 | [{y:-0.375,x:3.5,c:"#cccccc"},"",{x:10.5},""], | ||
| 19 | [{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], | ||
| 20 | [{y:-0.75,x:0.5},"","",{x:14.5},"",""], | ||
| 21 | [{r:30,rx:6.5,ry:4.25,y:-1,x:1},"",""], | ||
| 22 | [{h:2},"",{h:2},"",""], | ||
| 23 | [{x:2},""], | ||
| 24 | [{r:-30,rx:13,y:-1,x:-3},"",""], | ||
| 25 | [{x:-3},"",{h:2},"",{h:2},""], | ||
| 26 | [{x:-3},""] | ||
| 27 | |||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/readme.md b/keyboards/ergodox_ez/keymaps/teckinesis/readme.md new file mode 100644 index 000000000..9494a4d4c --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/readme.md | |||
| @@ -0,0 +1,45 @@ | |||
| 1 | # teckinesis Layout | ||
| 2 | |||
| 3 | *A blend of TECK and Kinesis layouts, based on ["The Ordinary Layout" by Nicholas Keene](http://qmk.fm/keyboards/ergodox_ez/keymaps/ordinary/#the-ordinary-layout-a-familiar-and-powerful-layout)* | ||
| 4 | |||
| 5 | I love "The Ordinary Layout", but I still use a [TECK](https://www.trulyergonomic.com/store/index.php) | ||
| 6 | at the office, and I found the transition back and forth to be a bit more difficult than I expected. | ||
| 7 | |||
| 8 | This layout consists of only slight changes to "The Ordinary Layout" based on the layouts of the | ||
| 9 | [(original) TECK Model 209](https://www.trulyergonomic.com/store/layout-designer--configurator--reprogrammable--truly-ergonomic-mechanical-keyboard/#KTo7PD0+P0BBQkNERUw5394rNR4fICEi4yMkJSYnLS4xOBQaCBUXTBwYDBITLzDhBBYHCQorCw0ODzPl4B0bBhkFKhEQNjc05OPiSktOTSwoLFBSUU/mZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAX2BhAFZXAAAAAAAAAAAAXF1eVAAAAAAAAAAAAABZWltVAAAAAAAAAAAAYgBjAAAAAAAAAAAAWFcAAAAAAACTAQAMAiMBAAwBigEADAIhAQAMAZQBAAwBkgEADAGDAQAMALYBAAwAzQEADAC1AQAMAOIBAAwA6gEADADpAQAMALhJAEYAAAAAAEitR64AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACk6Ozw9Pj9AQUJDREVMOd/eKzUeHyAhIuMjJCUmJy0uMTgUGggVF0wcGAwSEy8w4QQWBwkKKwsNDg8z5eMdGwYZBSoREDY3NOfg4kpLTk0sKCxQUlFP5uQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF9gYQBWVwAAAAAAAAAAAFxdXlQAAAAAAAAAAAAAWVpbVQAAAAAAAAAAAGIAYwAAAAAAAAAAAFhXAAAAAAAAkwEADAIjAQAMAYoBAAwCIQEADAGUAQAMAZIBAAwBgwEADAC2AQAMAM0BAAwAtQEADADiAQAMAOoBAAwA6QEADAC4SQBGAAAAAABIrUeuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=) and | ||
| 10 | the [Kinesis Advantage](http://www.kinesis-ergo.com/wp-content/uploads/2013/06/advantage_layout_win.pdf) | ||
| 11 | |||
| 12 | ## The Base Layout ## | ||
| 13 | |||
| 14 | [teckinesis (Base Layer)](http://www.keyboard-layout-editor.com/#/gists/befd4c5800d92114aa9e50d4f7c0dfb0) | ||
| 15 |  | ||
| 16 | |||
| 17 | ### Changes from The Ordinary Layout ### | ||
| 18 | |||
| 19 | * Moved KC_MINS from the key left of the 6 to the RSpec key. | ||
| 20 | * Moved KC_EQL from RSpec to LSpec. | ||
| 21 | * Moved KC_GRV from LSpec to the key left of the 6. | ||
| 22 | * Mdded KC_BSLS to the left Meh key. | ||
| 23 | * Added KC_SLSH to the left Hyper key. | ||
| 24 | * Added KC_LBRC to the right Hyper key. | ||
| 25 | * Added KC_RBRC to the right Meh key. | ||
| 26 | |||
| 27 | ## The Symbols Layer ## | ||
| 28 | |||
| 29 | [teckinesis (Symbols Layer)](http://www.keyboard-layout-editor.com/#/gists/e6ddc4e9e0d194b3e52ac0616238ab61) | ||
| 30 |  | ||
| 31 | |||
| 32 | ### Changes from The Ordinary Layout ### | ||
| 33 | |||
| 34 | * None. | ||
| 35 | |||
| 36 | ## The Media Layer ## | ||
| 37 | |||
| 38 | [teckinesis (Media Layer)](http://www.keyboard-layout-editor.com/#/gists/41ff65e6a7c490211fd6702fb34d9908) | ||
| 39 |  | ||
| 40 | |||
| 41 | ### Changes from The Ordinary Layout ### | ||
| 42 | |||
| 43 | * Removed Power, Sleep, Mail, My Computer keys. | ||
| 44 | (I kept hitting these while using the mouse/cursor. =P) | ||
| 45 | |||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-base.json b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-base.json new file mode 100644 index 000000000..69fe28cf7 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-base.json | |||
| @@ -0,0 +1,434 @@ | |||
| 1 | [ | ||
| 2 | { | ||
| 3 | "name": "teckinesis (Base Layer)", | ||
| 4 | "author": "Will Wolff-Myren", | ||
| 5 | "notes": "# teckinesis Layout # \r\n\r\n*A blend of TECK and Kinesis layouts, based on [\"The Ordinary Layout\" by Nicholas Keene](http://qmk.fm/keyboards/ergodox_ez/keymaps/ordinary/#the-ordinary-layout-a-familiar-and-powerful-layout)*\r\n\r\n## The Base Layout ##\r\n\r\n\r\n\r\n## The Symbols Layer ##\r\n\r\n\r\n\r\n## The Media Layer ##\r\n\r\n(placeholder)\r\n", | ||
| 6 | "switchMount": "cherry", | ||
| 7 | "switchBrand": "gateron", | ||
| 8 | "switchType": "KS-3-Tea" | ||
| 9 | }, | ||
| 10 | [ | ||
| 11 | { | ||
| 12 | "x": 3.5 | ||
| 13 | }, | ||
| 14 | "#\n3", | ||
| 15 | { | ||
| 16 | "x": 10.5 | ||
| 17 | }, | ||
| 18 | "*\n8" | ||
| 19 | ], | ||
| 20 | [ | ||
| 21 | { | ||
| 22 | "y": -0.875, | ||
| 23 | "x": 2.5 | ||
| 24 | }, | ||
| 25 | "@\n2", | ||
| 26 | { | ||
| 27 | "x": 1 | ||
| 28 | }, | ||
| 29 | "$\n4", | ||
| 30 | { | ||
| 31 | "x": 8.5 | ||
| 32 | }, | ||
| 33 | "&\n7", | ||
| 34 | { | ||
| 35 | "x": 1 | ||
| 36 | }, | ||
| 37 | "(\n9" | ||
| 38 | ], | ||
| 39 | [ | ||
| 40 | { | ||
| 41 | "y": -0.875, | ||
| 42 | "x": 5.5 | ||
| 43 | }, | ||
| 44 | "%\n5", | ||
| 45 | { | ||
| 46 | "c": "#ff4444" | ||
| 47 | }, | ||
| 48 | "Esc", | ||
| 49 | { | ||
| 50 | "x": 4.5, | ||
| 51 | "c": "#cccccc" | ||
| 52 | }, | ||
| 53 | "~\n`", | ||
| 54 | "^\n6" | ||
| 55 | ], | ||
| 56 | [ | ||
| 57 | { | ||
| 58 | "y": -0.875, | ||
| 59 | "c": "#2277ff", | ||
| 60 | "w": 1.5 | ||
| 61 | }, | ||
| 62 | "Special\n\n+\n\n\n\nShift\n=", | ||
| 63 | { | ||
| 64 | "c": "#cccccc" | ||
| 65 | }, | ||
| 66 | "!\n1", | ||
| 67 | { | ||
| 68 | "x": 14.5 | ||
| 69 | }, | ||
| 70 | ")\n0", | ||
| 71 | { | ||
| 72 | "c": "#2277ff", | ||
| 73 | "w": 1.5 | ||
| 74 | }, | ||
| 75 | "_\n\nSpecial\n\n\n\n-\nShift" | ||
| 76 | ], | ||
| 77 | [ | ||
| 78 | { | ||
| 79 | "y": -0.375, | ||
| 80 | "x": 3.5, | ||
| 81 | "c": "#cccccc" | ||
| 82 | }, | ||
| 83 | "E", | ||
| 84 | { | ||
| 85 | "x": 10.5 | ||
| 86 | }, | ||
| 87 | "I" | ||
| 88 | ], | ||
| 89 | [ | ||
| 90 | { | ||
| 91 | "y": -0.875, | ||
| 92 | "x": 2.5 | ||
| 93 | }, | ||
| 94 | "W", | ||
| 95 | { | ||
| 96 | "x": 1 | ||
| 97 | }, | ||
| 98 | "R", | ||
| 99 | { | ||
| 100 | "x": 8.5 | ||
| 101 | }, | ||
| 102 | "U", | ||
| 103 | { | ||
| 104 | "x": 1 | ||
| 105 | }, | ||
| 106 | "O" | ||
| 107 | ], | ||
| 108 | [ | ||
| 109 | { | ||
| 110 | "y": -0.875, | ||
| 111 | "x": 5.5 | ||
| 112 | }, | ||
| 113 | "T", | ||
| 114 | { | ||
| 115 | "h": 1.5 | ||
| 116 | }, | ||
| 117 | "{\n\n\n\n\n\n[", | ||
| 118 | { | ||
| 119 | "x": 4.5, | ||
| 120 | "h": 1.5 | ||
| 121 | }, | ||
| 122 | "}\n\n\n\n\n\n]", | ||
| 123 | "Y" | ||
| 124 | ], | ||
| 125 | [ | ||
| 126 | { | ||
| 127 | "y": -0.875, | ||
| 128 | "c": "#2277ff", | ||
| 129 | "fa": [ | ||
| 130 | 0, | ||
| 131 | 0, | ||
| 132 | 4 | ||
| 133 | ], | ||
| 134 | "w": 1.5 | ||
| 135 | }, | ||
| 136 | "Media\n\n<i class='kb kb-Line-Start-End'></i>\n\n\n\nShift", | ||
| 137 | { | ||
| 138 | "c": "#cccccc" | ||
| 139 | }, | ||
| 140 | "Q", | ||
| 141 | { | ||
| 142 | "x": 14.5 | ||
| 143 | }, | ||
| 144 | "P", | ||
| 145 | { | ||
| 146 | "c": "#2277ff", | ||
| 147 | "f": 3, | ||
| 148 | "w": 1.5 | ||
| 149 | }, | ||
| 150 | "|\n\\\nMedia\n\n\n\n\nShift" | ||
| 151 | ], | ||
| 152 | [ | ||
| 153 | { | ||
| 154 | "y": -0.375, | ||
| 155 | "x": 3.5, | ||
| 156 | "c": "#cccccc" | ||
| 157 | }, | ||
| 158 | "D", | ||
| 159 | { | ||
| 160 | "x": 10.5 | ||
| 161 | }, | ||
| 162 | "K" | ||
| 163 | ], | ||
| 164 | [ | ||
| 165 | { | ||
| 166 | "y": -0.875, | ||
| 167 | "x": 2.5 | ||
| 168 | }, | ||
| 169 | "S", | ||
| 170 | { | ||
| 171 | "x": 1 | ||
| 172 | }, | ||
| 173 | "F", | ||
| 174 | { | ||
| 175 | "x": 8.5 | ||
| 176 | }, | ||
| 177 | "J", | ||
| 178 | { | ||
| 179 | "x": 1 | ||
| 180 | }, | ||
| 181 | "L" | ||
| 182 | ], | ||
| 183 | [ | ||
| 184 | { | ||
| 185 | "y": -0.875, | ||
| 186 | "x": 5.5 | ||
| 187 | }, | ||
| 188 | "G", | ||
| 189 | { | ||
| 190 | "x": 6.5 | ||
| 191 | }, | ||
| 192 | "H" | ||
| 193 | ], | ||
| 194 | [ | ||
| 195 | { | ||
| 196 | "y": -0.875, | ||
| 197 | "c": "#2277ff", | ||
| 198 | "w": 1.5 | ||
| 199 | }, | ||
| 200 | "Symbols\n\n\n\n\n\nShift", | ||
| 201 | { | ||
| 202 | "c": "#cccccc" | ||
| 203 | }, | ||
| 204 | "A", | ||
| 205 | { | ||
| 206 | "x": 14.5 | ||
| 207 | }, | ||
| 208 | ":\n;", | ||
| 209 | { | ||
| 210 | "c": "#2277ff", | ||
| 211 | "f": 3, | ||
| 212 | "w": 1.5 | ||
| 213 | }, | ||
| 214 | "\"\n'\nSymbols\n\n\n\n\nShift" | ||
| 215 | ], | ||
| 216 | [ | ||
| 217 | { | ||
| 218 | "y": -0.625, | ||
| 219 | "x": 6.5, | ||
| 220 | "c": "#54d6de", | ||
| 221 | "fa": [ | ||
| 222 | 0, | ||
| 223 | 0, | ||
| 224 | 4, | ||
| 225 | 1 | ||
| 226 | ], | ||
| 227 | "h": 1.5 | ||
| 228 | }, | ||
| 229 | "< Tab\n\n\nShift Tab", | ||
| 230 | { | ||
| 231 | "x": 4.5, | ||
| 232 | "h": 1.5 | ||
| 233 | }, | ||
| 234 | "Tab >\n\n\nTab" | ||
| 235 | ], | ||
| 236 | [ | ||
| 237 | { | ||
| 238 | "y": -0.75, | ||
| 239 | "x": 3.5, | ||
| 240 | "c": "#cccccc" | ||
| 241 | }, | ||
| 242 | "C", | ||
| 243 | { | ||
| 244 | "x": 10.5 | ||
| 245 | }, | ||
| 246 | "<\n," | ||
| 247 | ], | ||
| 248 | [ | ||
| 249 | { | ||
| 250 | "y": -0.875, | ||
| 251 | "x": 2.5 | ||
| 252 | }, | ||
| 253 | "X", | ||
| 254 | { | ||
| 255 | "x": 1 | ||
| 256 | }, | ||
| 257 | "V", | ||
| 258 | { | ||
| 259 | "x": 8.5 | ||
| 260 | }, | ||
| 261 | "M", | ||
| 262 | { | ||
| 263 | "x": 1 | ||
| 264 | }, | ||
| 265 | ">\n." | ||
| 266 | ], | ||
| 267 | [ | ||
| 268 | { | ||
| 269 | "y": -0.875, | ||
| 270 | "x": 5.5 | ||
| 271 | }, | ||
| 272 | "B", | ||
| 273 | { | ||
| 274 | "x": 6.5 | ||
| 275 | }, | ||
| 276 | "N" | ||
| 277 | ], | ||
| 278 | [ | ||
| 279 | { | ||
| 280 | "y": -0.875, | ||
| 281 | "c": "#2277ff", | ||
| 282 | "w": 1.5 | ||
| 283 | }, | ||
| 284 | "Capitals\n\n\n\n\n\nShift", | ||
| 285 | { | ||
| 286 | "c": "#cccccc" | ||
| 287 | }, | ||
| 288 | "Z", | ||
| 289 | { | ||
| 290 | "x": 14.5 | ||
| 291 | }, | ||
| 292 | "?\n/", | ||
| 293 | { | ||
| 294 | "c": "#2277ff", | ||
| 295 | "f": 3, | ||
| 296 | "w": 1.5 | ||
| 297 | }, | ||
| 298 | "\n\nCapitals\n\n\n\n\nShift" | ||
| 299 | ], | ||
| 300 | [ | ||
| 301 | { | ||
| 302 | "y": -0.375, | ||
| 303 | "x": 3.5, | ||
| 304 | "c": "#77aaff", | ||
| 305 | "fa": [ | ||
| 306 | 5, | ||
| 307 | 0, | ||
| 308 | 4, | ||
| 309 | 1 | ||
| 310 | ] | ||
| 311 | }, | ||
| 312 | "<i class='mss mss-Unicode-Option-3'></i>\n\n\nLAlt", | ||
| 313 | { | ||
| 314 | "x": 10.5 | ||
| 315 | }, | ||
| 316 | "<i class='mss mss-Unicode-Option-3'></i>\n\n\nRAlt" | ||
| 317 | ], | ||
| 318 | [ | ||
| 319 | { | ||
| 320 | "y": -0.875, | ||
| 321 | "x": 2.5, | ||
| 322 | "fa": [ | ||
| 323 | 5, | ||
| 324 | 1 | ||
| 325 | ] | ||
| 326 | }, | ||
| 327 | "\nHyper\n?\n/", | ||
| 328 | { | ||
| 329 | "x": 1, | ||
| 330 | "fa": [ | ||
| 331 | 5, | ||
| 332 | 1, | ||
| 333 | 0, | ||
| 334 | 1 | ||
| 335 | ] | ||
| 336 | }, | ||
| 337 | "<i class='mss mss-Unicode-Command-3'></i>\n\n\nSuper", | ||
| 338 | { | ||
| 339 | "x": 8.5 | ||
| 340 | }, | ||
| 341 | "<i class='mss mss-Unicode-Command-3'></i>\n\n\nSuper", | ||
| 342 | { | ||
| 343 | "x": 1, | ||
| 344 | "fa": [ | ||
| 345 | 0, | ||
| 346 | 0, | ||
| 347 | 0, | ||
| 348 | 1 | ||
| 349 | ] | ||
| 350 | }, | ||
| 351 | "{\n[\n\nHyper" | ||
| 352 | ], | ||
| 353 | [ | ||
| 354 | { | ||
| 355 | "y": -0.75, | ||
| 356 | "x": 0.5 | ||
| 357 | }, | ||
| 358 | "Ctrl\n\n\nLCtrl", | ||
| 359 | { | ||
| 360 | "f2": 1 | ||
| 361 | }, | ||
| 362 | "\nMeh\n|\n\\", | ||
| 363 | { | ||
| 364 | "x": 14.5, | ||
| 365 | "fa": [ | ||
| 366 | 0, | ||
| 367 | 0, | ||
| 368 | 1, | ||
| 369 | 1 | ||
| 370 | ] | ||
| 371 | }, | ||
| 372 | "}\n]\n\nMeh", | ||
| 373 | "Ctrl\n\n\nRCtrl" | ||
| 374 | ], | ||
| 375 | [ | ||
| 376 | { | ||
| 377 | "r": 30, | ||
| 378 | "rx": 6.5, | ||
| 379 | "ry": 4.25, | ||
| 380 | "y": -1, | ||
| 381 | "x": 1, | ||
| 382 | "c": "#54d6de" | ||
| 383 | }, | ||
| 384 | "Home", | ||
| 385 | "End" | ||
| 386 | ], | ||
| 387 | [ | ||
| 388 | { | ||
| 389 | "h": 2 | ||
| 390 | }, | ||
| 391 | "< Del\n\n\nBackspace", | ||
| 392 | { | ||
| 393 | "h": 2 | ||
| 394 | }, | ||
| 395 | "Del >\n\n\nDelete", | ||
| 396 | "Page\n\n\n\n\n\nUp" | ||
| 397 | ], | ||
| 398 | [ | ||
| 399 | { | ||
| 400 | "x": 2 | ||
| 401 | }, | ||
| 402 | "Page\n\n\n\n\n\nDown" | ||
| 403 | ], | ||
| 404 | [ | ||
| 405 | { | ||
| 406 | "r": -30, | ||
| 407 | "rx": 13, | ||
| 408 | "y": -1, | ||
| 409 | "x": -3 | ||
| 410 | }, | ||
| 411 | "Left", | ||
| 412 | "Right" | ||
| 413 | ], | ||
| 414 | [ | ||
| 415 | { | ||
| 416 | "x": -3 | ||
| 417 | }, | ||
| 418 | "Up", | ||
| 419 | { | ||
| 420 | "h": 2 | ||
| 421 | }, | ||
| 422 | "Enter", | ||
| 423 | { | ||
| 424 | "h": 2 | ||
| 425 | }, | ||
| 426 | "Space" | ||
| 427 | ], | ||
| 428 | [ | ||
| 429 | { | ||
| 430 | "x": -3 | ||
| 431 | }, | ||
| 432 | "Down" | ||
| 433 | ] | ||
| 434 | ] \ No newline at end of file | ||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-base.png b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-base.png new file mode 100644 index 000000000..7c4584e9f --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-base.png | |||
| Binary files differ | |||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-media.json b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-media.json new file mode 100644 index 000000000..65fe394e8 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-media.json | |||
| @@ -0,0 +1,436 @@ | |||
| 1 | [ | ||
| 2 | { | ||
| 3 | "name": "teckinesis (MediaLayer)", | ||
| 4 | "author": "Will Wolff-Myren", | ||
| 5 | "switchMount": "cherry", | ||
| 6 | "switchBrand": "gateron", | ||
| 7 | "switchType": "KS-3-Tea" | ||
| 8 | }, | ||
| 9 | [ | ||
| 10 | { | ||
| 11 | "x": 3.5, | ||
| 12 | "c": "#99de2a" | ||
| 13 | }, | ||
| 14 | "F13", | ||
| 15 | { | ||
| 16 | "x": 10.5 | ||
| 17 | }, | ||
| 18 | "F18" | ||
| 19 | ], | ||
| 20 | [ | ||
| 21 | { | ||
| 22 | "y": -0.875, | ||
| 23 | "x": 2.5 | ||
| 24 | }, | ||
| 25 | "F12", | ||
| 26 | { | ||
| 27 | "x": 1 | ||
| 28 | }, | ||
| 29 | "F14", | ||
| 30 | { | ||
| 31 | "x": 8.5 | ||
| 32 | }, | ||
| 33 | "F17", | ||
| 34 | { | ||
| 35 | "x": 1 | ||
| 36 | }, | ||
| 37 | "F19" | ||
| 38 | ], | ||
| 39 | [ | ||
| 40 | { | ||
| 41 | "y": -0.875, | ||
| 42 | "x": 5.5 | ||
| 43 | }, | ||
| 44 | "F15", | ||
| 45 | { | ||
| 46 | "c": "#ff4444" | ||
| 47 | }, | ||
| 48 | "Esc", | ||
| 49 | { | ||
| 50 | "x": 4.5 | ||
| 51 | }, | ||
| 52 | "Esc", | ||
| 53 | { | ||
| 54 | "c": "#99de2a" | ||
| 55 | }, | ||
| 56 | "F16" | ||
| 57 | ], | ||
| 58 | [ | ||
| 59 | { | ||
| 60 | "y": -0.875, | ||
| 61 | "x": 1.5 | ||
| 62 | }, | ||
| 63 | "F11", | ||
| 64 | { | ||
| 65 | "x": 14.5 | ||
| 66 | }, | ||
| 67 | "F20" | ||
| 68 | ], | ||
| 69 | [ | ||
| 70 | { | ||
| 71 | "y": -0.995, | ||
| 72 | "c": "#000000", | ||
| 73 | "t": "#ff0000", | ||
| 74 | "w": 1.5 | ||
| 75 | }, | ||
| 76 | "Media\n\n\n\n\n\nShift", | ||
| 77 | { | ||
| 78 | "x": 16.5, | ||
| 79 | "w": 1.5 | ||
| 80 | }, | ||
| 81 | "\n\nMedia\n\n\n\n\nShift" | ||
| 82 | ], | ||
| 83 | [ | ||
| 84 | { | ||
| 85 | "y": -0.3799999999999999, | ||
| 86 | "x": 3.5, | ||
| 87 | "c": "#ff8500", | ||
| 88 | "t": "#000000" | ||
| 89 | }, | ||
| 90 | "Mouse\n\n\n\n\n\nUp", | ||
| 91 | { | ||
| 92 | "x": 10.5 | ||
| 93 | }, | ||
| 94 | "Cursor\n\n\n\n\n\nUp" | ||
| 95 | ], | ||
| 96 | [ | ||
| 97 | { | ||
| 98 | "y": -0.875, | ||
| 99 | "x": 2.5 | ||
| 100 | }, | ||
| 101 | "Mouse\n\n\n\n\n\nUpLeft", | ||
| 102 | { | ||
| 103 | "x": 1 | ||
| 104 | }, | ||
| 105 | "Mouse\n\n\n\n\n\nUpRgt", | ||
| 106 | { | ||
| 107 | "x": 8.5, | ||
| 108 | "c": "#ffb063" | ||
| 109 | }, | ||
| 110 | "Home", | ||
| 111 | { | ||
| 112 | "x": 1 | ||
| 113 | }, | ||
| 114 | "Page\n\n\n\n\n\nUp" | ||
| 115 | ], | ||
| 116 | [ | ||
| 117 | { | ||
| 118 | "y": -0.875, | ||
| 119 | "x": 5.5, | ||
| 120 | "c": "#e6e067" | ||
| 121 | }, | ||
| 122 | "Vol\n\n\n\n\n\nUp", | ||
| 123 | { | ||
| 124 | "c": "#ffb063", | ||
| 125 | "h": 1.5 | ||
| 126 | }, | ||
| 127 | "Scroll\n\n\n\n\n\nUp", | ||
| 128 | { | ||
| 129 | "x": 4.5, | ||
| 130 | "h": 1.5 | ||
| 131 | }, | ||
| 132 | "Scroll\n\n\n\n\n\nUp", | ||
| 133 | { | ||
| 134 | "c": "#e6e067" | ||
| 135 | }, | ||
| 136 | "Print\n\n\n\n\n\nScreen" | ||
| 137 | ], | ||
| 138 | [ | ||
| 139 | { | ||
| 140 | "y": -0.875, | ||
| 141 | "x": 1.5, | ||
| 142 | "c": "#737373", | ||
| 143 | "a": 7 | ||
| 144 | }, | ||
| 145 | "", | ||
| 146 | { | ||
| 147 | "x": 14.5 | ||
| 148 | }, | ||
| 149 | "" | ||
| 150 | ], | ||
| 151 | [ | ||
| 152 | { | ||
| 153 | "y": -0.9950000000000001, | ||
| 154 | "c": "#2277ff", | ||
| 155 | "a": 4, | ||
| 156 | "w": 1.5 | ||
| 157 | }, | ||
| 158 | "Symbols\n\n\n\n\n\nShift", | ||
| 159 | { | ||
| 160 | "x": 16.5, | ||
| 161 | "w": 1.5 | ||
| 162 | }, | ||
| 163 | "\n\nSymbols\n\n\n\n\nShift" | ||
| 164 | ], | ||
| 165 | [ | ||
| 166 | { | ||
| 167 | "y": -0.3799999999999999, | ||
| 168 | "x": 3.5, | ||
| 169 | "c": "#ff8500" | ||
| 170 | }, | ||
| 171 | "Mouse\n\n\n\n\n\nDown", | ||
| 172 | { | ||
| 173 | "x": 10.5 | ||
| 174 | }, | ||
| 175 | "Cursor\n\n\n\n\n\nDown" | ||
| 176 | ], | ||
| 177 | [ | ||
| 178 | { | ||
| 179 | "y": -0.875, | ||
| 180 | "x": 2.5 | ||
| 181 | }, | ||
| 182 | "Mouse\n\n\n\n\n\nLeft", | ||
| 183 | { | ||
| 184 | "x": 1 | ||
| 185 | }, | ||
| 186 | "Mouse\n\n\n\n\n\nRight", | ||
| 187 | { | ||
| 188 | "x": 8.5 | ||
| 189 | }, | ||
| 190 | "Cursor\n\n\n\n\n\nLeft", | ||
| 191 | { | ||
| 192 | "x": 1 | ||
| 193 | }, | ||
| 194 | "Cursor\n\n\n\n\n\nRight" | ||
| 195 | ], | ||
| 196 | [ | ||
| 197 | { | ||
| 198 | "y": -0.875, | ||
| 199 | "x": 5.5, | ||
| 200 | "c": "#e6e067" | ||
| 201 | }, | ||
| 202 | "Vol\n\n\n\n\n\nDown", | ||
| 203 | { | ||
| 204 | "x": 6.5 | ||
| 205 | }, | ||
| 206 | "Num\n\n\n\n\n\nLock" | ||
| 207 | ], | ||
| 208 | [ | ||
| 209 | { | ||
| 210 | "y": -0.875, | ||
| 211 | "x": 1.5, | ||
| 212 | "c": "#737373", | ||
| 213 | "a": 7 | ||
| 214 | }, | ||
| 215 | "", | ||
| 216 | { | ||
| 217 | "x": 14.5 | ||
| 218 | }, | ||
| 219 | "" | ||
| 220 | ], | ||
| 221 | [ | ||
| 222 | { | ||
| 223 | "y": -0.9950000000000001, | ||
| 224 | "c": "#2277ff", | ||
| 225 | "a": 4, | ||
| 226 | "w": 1.5 | ||
| 227 | }, | ||
| 228 | "Capitals\n\n\n\n\n\nShift", | ||
| 229 | { | ||
| 230 | "x": 16.5, | ||
| 231 | "w": 1.5 | ||
| 232 | }, | ||
| 233 | "\n\nCapitals\n\n\n\n\nShift" | ||
| 234 | ], | ||
| 235 | [ | ||
| 236 | { | ||
| 237 | "y": -0.6299999999999999, | ||
| 238 | "x": 6.5, | ||
| 239 | "c": "#ffb063", | ||
| 240 | "h": 1.5 | ||
| 241 | }, | ||
| 242 | "Scroll\n\n\n\n\n\nDown", | ||
| 243 | { | ||
| 244 | "x": 4.5, | ||
| 245 | "h": 1.5 | ||
| 246 | }, | ||
| 247 | "Scroll\n\n\n\n\n\nDown" | ||
| 248 | ], | ||
| 249 | [ | ||
| 250 | { | ||
| 251 | "y": -0.75, | ||
| 252 | "x": 3.5, | ||
| 253 | "c": "#ff8500" | ||
| 254 | }, | ||
| 255 | "Mouse\n\n\n\n\n\nDown", | ||
| 256 | { | ||
| 257 | "x": 10.5 | ||
| 258 | }, | ||
| 259 | "Cursor\n\n\n\n\n\nDown" | ||
| 260 | ], | ||
| 261 | [ | ||
| 262 | { | ||
| 263 | "y": -0.875, | ||
| 264 | "x": 2.5 | ||
| 265 | }, | ||
| 266 | "Mouse\n\n\n\n\n\nDnLeft", | ||
| 267 | { | ||
| 268 | "x": 1 | ||
| 269 | }, | ||
| 270 | "Mouse\n\n\n\n\n\nDnRgt", | ||
| 271 | { | ||
| 272 | "x": 8.5, | ||
| 273 | "c": "#ffb063" | ||
| 274 | }, | ||
| 275 | "End", | ||
| 276 | { | ||
| 277 | "x": 1 | ||
| 278 | }, | ||
| 279 | "Page\n\n\n\n\n\nDown" | ||
| 280 | ], | ||
| 281 | [ | ||
| 282 | { | ||
| 283 | "y": -0.875, | ||
| 284 | "x": 5.5, | ||
| 285 | "c": "#e6e067" | ||
| 286 | }, | ||
| 287 | "Mute", | ||
| 288 | { | ||
| 289 | "x": 6.5, | ||
| 290 | "c": "#737373", | ||
| 291 | "a": 7 | ||
| 292 | }, | ||
| 293 | "" | ||
| 294 | ], | ||
| 295 | [ | ||
| 296 | { | ||
| 297 | "y": -0.875, | ||
| 298 | "x": 1.5 | ||
| 299 | }, | ||
| 300 | "", | ||
| 301 | { | ||
| 302 | "x": 14.5 | ||
| 303 | }, | ||
| 304 | "" | ||
| 305 | ], | ||
| 306 | [ | ||
| 307 | { | ||
| 308 | "y": -0.9950000000000001, | ||
| 309 | "c": "#2277ff", | ||
| 310 | "a": 4, | ||
| 311 | "w": 1.5 | ||
| 312 | }, | ||
| 313 | "Ctrl", | ||
| 314 | { | ||
| 315 | "x": 16.5, | ||
| 316 | "w": 1.5 | ||
| 317 | }, | ||
| 318 | "Ctrl" | ||
| 319 | ], | ||
| 320 | [ | ||
| 321 | { | ||
| 322 | "y": -0.3799999999999999, | ||
| 323 | "x": 3.5, | ||
| 324 | "c": "#ff8500" | ||
| 325 | }, | ||
| 326 | "Middle\n\n\n\n\n\nClick", | ||
| 327 | { | ||
| 328 | "x": 10.5, | ||
| 329 | "c": "#ffb063", | ||
| 330 | "fa": [ | ||
| 331 | 0, | ||
| 332 | 0, | ||
| 333 | 0, | ||
| 334 | 1 | ||
| 335 | ] | ||
| 336 | }, | ||
| 337 | "Delete\n\n\nOption" | ||
| 338 | ], | ||
| 339 | [ | ||
| 340 | { | ||
| 341 | "y": -0.875, | ||
| 342 | "x": 2.5, | ||
| 343 | "c": "#ff8500" | ||
| 344 | }, | ||
| 345 | "Left\n\n\n\n\n\nClick", | ||
| 346 | { | ||
| 347 | "x": 1 | ||
| 348 | }, | ||
| 349 | "Right\n\n\n\n\n\nClick", | ||
| 350 | { | ||
| 351 | "x": 8.5, | ||
| 352 | "c": "#ffb063" | ||
| 353 | }, | ||
| 354 | "Insert\n\n\nCmd", | ||
| 355 | { | ||
| 356 | "x": 1, | ||
| 357 | "c": "#77aaff" | ||
| 358 | }, | ||
| 359 | "Hyper" | ||
| 360 | ], | ||
| 361 | [ | ||
| 362 | { | ||
| 363 | "y": -0.75, | ||
| 364 | "x": 0.5 | ||
| 365 | }, | ||
| 366 | "Alt\n\n\nLAlt", | ||
| 367 | "Meh", | ||
| 368 | { | ||
| 369 | "x": 14.5 | ||
| 370 | }, | ||
| 371 | "Meh", | ||
| 372 | "Alt\n\n\nRAlt" | ||
| 373 | ], | ||
| 374 | [ | ||
| 375 | { | ||
| 376 | "r": 30, | ||
| 377 | "rx": 6.5, | ||
| 378 | "ry": 4.25, | ||
| 379 | "y": -1, | ||
| 380 | "x": 1, | ||
| 381 | "c": "#ccbb00" | ||
| 382 | }, | ||
| 383 | "Stop\n\n\nBrowser", | ||
| 384 | "Reload\n\n\nBrowser" | ||
| 385 | ], | ||
| 386 | [ | ||
| 387 | { | ||
| 388 | "h": 2 | ||
| 389 | }, | ||
| 390 | "< Web\n\n\nBrowser", | ||
| 391 | { | ||
| 392 | "h": 2 | ||
| 393 | }, | ||
| 394 | "Web >\n\n\nBrowser", | ||
| 395 | "Search\n\n\nBrowser" | ||
| 396 | ], | ||
| 397 | [ | ||
| 398 | { | ||
| 399 | "x": 2 | ||
| 400 | }, | ||
| 401 | "Home\n\n\nBrowser" | ||
| 402 | ], | ||
| 403 | [ | ||
| 404 | { | ||
| 405 | "r": -30, | ||
| 406 | "rx": 13, | ||
| 407 | "y": -1, | ||
| 408 | "x": -3 | ||
| 409 | }, | ||
| 410 | "Prev\n\n\nAudio\n\n\nTrack", | ||
| 411 | "Next\n\n\nAudio\n\n\nTrack" | ||
| 412 | ], | ||
| 413 | [ | ||
| 414 | { | ||
| 415 | "x": -3, | ||
| 416 | "c": "#e6e067" | ||
| 417 | }, | ||
| 418 | "Vol\n\n\n\n\n\nUp", | ||
| 419 | { | ||
| 420 | "c": "#ccbb00", | ||
| 421 | "h": 2 | ||
| 422 | }, | ||
| 423 | "Stop\n\n\nAudio", | ||
| 424 | { | ||
| 425 | "h": 2 | ||
| 426 | }, | ||
| 427 | "Play\n\n\nAudio\n\n\nPause" | ||
| 428 | ], | ||
| 429 | [ | ||
| 430 | { | ||
| 431 | "x": -3, | ||
| 432 | "c": "#e6e067" | ||
| 433 | }, | ||
| 434 | "Vol\n\n\n\n\n\nDown" | ||
| 435 | ] | ||
| 436 | ] \ No newline at end of file | ||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-media.png b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-media.png new file mode 100644 index 000000000..cc51605f9 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-media.png | |||
| Binary files differ | |||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-symbol.json b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-symbol.json new file mode 100644 index 000000000..439d0128e --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-symbol.json | |||
| @@ -0,0 +1,422 @@ | |||
| 1 | [ | ||
| 2 | { | ||
| 3 | "name": "teckinesis (Symbol Layer)", | ||
| 4 | "author": "Will Wolff-Myren", | ||
| 5 | "switchMount": "cherry", | ||
| 6 | "switchBrand": "gateron", | ||
| 7 | "switchType": "KS-3-Tea" | ||
| 8 | }, | ||
| 9 | [ | ||
| 10 | { | ||
| 11 | "x": 3.5, | ||
| 12 | "c": "#99de2a" | ||
| 13 | }, | ||
| 14 | "F3", | ||
| 15 | { | ||
| 16 | "x": 10.5 | ||
| 17 | }, | ||
| 18 | "F8" | ||
| 19 | ], | ||
| 20 | [ | ||
| 21 | { | ||
| 22 | "y": -0.875, | ||
| 23 | "x": 2.5 | ||
| 24 | }, | ||
| 25 | "F2", | ||
| 26 | { | ||
| 27 | "x": 1 | ||
| 28 | }, | ||
| 29 | "F4", | ||
| 30 | { | ||
| 31 | "x": 8.5 | ||
| 32 | }, | ||
| 33 | "F7", | ||
| 34 | { | ||
| 35 | "x": 1 | ||
| 36 | }, | ||
| 37 | "F9" | ||
| 38 | ], | ||
| 39 | [ | ||
| 40 | { | ||
| 41 | "y": -0.875, | ||
| 42 | "x": 5.5 | ||
| 43 | }, | ||
| 44 | "F5", | ||
| 45 | { | ||
| 46 | "c": "#ff4444" | ||
| 47 | }, | ||
| 48 | "Esc", | ||
| 49 | { | ||
| 50 | "x": 4.5, | ||
| 51 | "c": "#bbddbb" | ||
| 52 | }, | ||
| 53 | "_\n\n\n\n\n\n-", | ||
| 54 | { | ||
| 55 | "c": "#99de2a" | ||
| 56 | }, | ||
| 57 | "F6" | ||
| 58 | ], | ||
| 59 | [ | ||
| 60 | { | ||
| 61 | "y": -0.875, | ||
| 62 | "c": "#2277ff", | ||
| 63 | "w": 1.5 | ||
| 64 | }, | ||
| 65 | "Special\n\n\n\n\n\nShift", | ||
| 66 | { | ||
| 67 | "c": "#99de2a" | ||
| 68 | }, | ||
| 69 | "F1", | ||
| 70 | { | ||
| 71 | "x": 14.5 | ||
| 72 | }, | ||
| 73 | "F10", | ||
| 74 | { | ||
| 75 | "c": "#2277ff", | ||
| 76 | "w": 1.5 | ||
| 77 | }, | ||
| 78 | "\n\nSpecial\n\n\n\n\nShift" | ||
| 79 | ], | ||
| 80 | [ | ||
| 81 | { | ||
| 82 | "y": -0.375, | ||
| 83 | "x": 3.5, | ||
| 84 | "c": "#bbddbb" | ||
| 85 | }, | ||
| 86 | "{", | ||
| 87 | { | ||
| 88 | "x": 10.5, | ||
| 89 | "c": "#89b087" | ||
| 90 | }, | ||
| 91 | "8" | ||
| 92 | ], | ||
| 93 | [ | ||
| 94 | { | ||
| 95 | "y": -0.875, | ||
| 96 | "x": 2.5, | ||
| 97 | "c": "#bbddbb" | ||
| 98 | }, | ||
| 99 | "@", | ||
| 100 | { | ||
| 101 | "x": 1 | ||
| 102 | }, | ||
| 103 | "}", | ||
| 104 | { | ||
| 105 | "x": 8.5, | ||
| 106 | "c": "#89b087" | ||
| 107 | }, | ||
| 108 | "7", | ||
| 109 | { | ||
| 110 | "x": 1 | ||
| 111 | }, | ||
| 112 | "9" | ||
| 113 | ], | ||
| 114 | [ | ||
| 115 | { | ||
| 116 | "y": -0.875, | ||
| 117 | "x": 5.5, | ||
| 118 | "c": "#bbddbb" | ||
| 119 | }, | ||
| 120 | "&", | ||
| 121 | { | ||
| 122 | "h": 1.5 | ||
| 123 | }, | ||
| 124 | "<", | ||
| 125 | { | ||
| 126 | "x": 4.5, | ||
| 127 | "h": 1.5 | ||
| 128 | }, | ||
| 129 | ">", | ||
| 130 | "|" | ||
| 131 | ], | ||
| 132 | [ | ||
| 133 | { | ||
| 134 | "y": -0.875, | ||
| 135 | "c": "#2277ff", | ||
| 136 | "w": 1.5 | ||
| 137 | }, | ||
| 138 | "Media\n\n\n\n\n\nShift", | ||
| 139 | { | ||
| 140 | "c": "#bbddbb" | ||
| 141 | }, | ||
| 142 | "!", | ||
| 143 | { | ||
| 144 | "x": 14.5, | ||
| 145 | "c": "#89b087" | ||
| 146 | }, | ||
| 147 | "/", | ||
| 148 | { | ||
| 149 | "c": "#2277ff", | ||
| 150 | "w": 1.5 | ||
| 151 | }, | ||
| 152 | "\n\nMedia\n\n\n\n\nShift" | ||
| 153 | ], | ||
| 154 | [ | ||
| 155 | { | ||
| 156 | "y": -0.375, | ||
| 157 | "x": 3.5, | ||
| 158 | "c": "#bbddbb" | ||
| 159 | }, | ||
| 160 | "(", | ||
| 161 | { | ||
| 162 | "x": 10.5, | ||
| 163 | "c": "#89b087" | ||
| 164 | }, | ||
| 165 | "5" | ||
| 166 | ], | ||
| 167 | [ | ||
| 168 | { | ||
| 169 | "y": -0.875, | ||
| 170 | "x": 2.5, | ||
| 171 | "c": "#bbddbb" | ||
| 172 | }, | ||
| 173 | "$", | ||
| 174 | { | ||
| 175 | "x": 1 | ||
| 176 | }, | ||
| 177 | ")", | ||
| 178 | { | ||
| 179 | "x": 8.5, | ||
| 180 | "c": "#89b087" | ||
| 181 | }, | ||
| 182 | "4", | ||
| 183 | { | ||
| 184 | "x": 1 | ||
| 185 | }, | ||
| 186 | "6" | ||
| 187 | ], | ||
| 188 | [ | ||
| 189 | { | ||
| 190 | "y": -0.875, | ||
| 191 | "x": 5.5, | ||
| 192 | "c": "#bbddbb" | ||
| 193 | }, | ||
| 194 | "`", | ||
| 195 | { | ||
| 196 | "x": 6.5 | ||
| 197 | }, | ||
| 198 | "/" | ||
| 199 | ], | ||
| 200 | [ | ||
| 201 | { | ||
| 202 | "y": -0.875, | ||
| 203 | "c": "#000000", | ||
| 204 | "t": "#ff0000", | ||
| 205 | "w": 1.5 | ||
| 206 | }, | ||
| 207 | "Symbols\n\n\n\n\n\nShift", | ||
| 208 | { | ||
| 209 | "c": "#bbddbb", | ||
| 210 | "t": "#000000" | ||
| 211 | }, | ||
| 212 | "#", | ||
| 213 | { | ||
| 214 | "x": 14.5, | ||
| 215 | "c": "#89b087" | ||
| 216 | }, | ||
| 217 | "*", | ||
| 218 | { | ||
| 219 | "c": "#000000", | ||
| 220 | "t": "#ff0000", | ||
| 221 | "w": 1.5 | ||
| 222 | }, | ||
| 223 | "\n\nSymbols\n\n\n\n\nShift" | ||
| 224 | ], | ||
| 225 | [ | ||
| 226 | { | ||
| 227 | "y": -0.625, | ||
| 228 | "x": 6.5, | ||
| 229 | "c": "#54d6de", | ||
| 230 | "t": "#000000", | ||
| 231 | "fa": [ | ||
| 232 | 0, | ||
| 233 | 0, | ||
| 234 | 0, | ||
| 235 | 1 | ||
| 236 | ], | ||
| 237 | "h": 1.5 | ||
| 238 | }, | ||
| 239 | "Tab >\n\n\nTab", | ||
| 240 | { | ||
| 241 | "x": 4.5, | ||
| 242 | "h": 1.5 | ||
| 243 | }, | ||
| 244 | "< Tab\n\n\nShift Tab" | ||
| 245 | ], | ||
| 246 | [ | ||
| 247 | { | ||
| 248 | "y": -0.75, | ||
| 249 | "x": 3.5, | ||
| 250 | "c": "#bbddbb" | ||
| 251 | }, | ||
| 252 | "[", | ||
| 253 | { | ||
| 254 | "x": 10.5, | ||
| 255 | "c": "#89b087" | ||
| 256 | }, | ||
| 257 | "2" | ||
| 258 | ], | ||
| 259 | [ | ||
| 260 | { | ||
| 261 | "y": -0.875, | ||
| 262 | "x": 2.5, | ||
| 263 | "c": "#bbddbb" | ||
| 264 | }, | ||
| 265 | "^", | ||
| 266 | { | ||
| 267 | "x": 1 | ||
| 268 | }, | ||
| 269 | "]", | ||
| 270 | { | ||
| 271 | "x": 8.5, | ||
| 272 | "c": "#89b087" | ||
| 273 | }, | ||
| 274 | "1", | ||
| 275 | { | ||
| 276 | "x": 1 | ||
| 277 | }, | ||
| 278 | "3" | ||
| 279 | ], | ||
| 280 | [ | ||
| 281 | { | ||
| 282 | "y": -0.875, | ||
| 283 | "x": 5.5, | ||
| 284 | "c": "#bbddbb" | ||
| 285 | }, | ||
| 286 | "~", | ||
| 287 | { | ||
| 288 | "x": 6.5 | ||
| 289 | }, | ||
| 290 | "\\" | ||
| 291 | ], | ||
| 292 | [ | ||
| 293 | { | ||
| 294 | "y": -0.875, | ||
| 295 | "c": "#2277ff", | ||
| 296 | "w": 1.5 | ||
| 297 | }, | ||
| 298 | "Capitals\n\n\n\n\n\nShift", | ||
| 299 | { | ||
| 300 | "c": "#bbddbb" | ||
| 301 | }, | ||
| 302 | "%", | ||
| 303 | { | ||
| 304 | "x": 14.5, | ||
| 305 | "c": "#89b087" | ||
| 306 | }, | ||
| 307 | "-", | ||
| 308 | { | ||
| 309 | "c": "#2277ff", | ||
| 310 | "w": 1.5 | ||
| 311 | }, | ||
| 312 | "\n\nCapitals\n\n\n\n\nShift" | ||
| 313 | ], | ||
| 314 | [ | ||
| 315 | { | ||
| 316 | "y": -0.375, | ||
| 317 | "x": 3.5, | ||
| 318 | "c": "#77aaff" | ||
| 319 | }, | ||
| 320 | "<i class='mss mss-Unicode-Option-3'></i>\n\n\nLAlt", | ||
| 321 | { | ||
| 322 | "x": 10.5, | ||
| 323 | "c": "#89b087" | ||
| 324 | }, | ||
| 325 | ".\n\n\nOption" | ||
| 326 | ], | ||
| 327 | [ | ||
| 328 | { | ||
| 329 | "y": -0.875, | ||
| 330 | "x": 2.5, | ||
| 331 | "c": "#77aaff" | ||
| 332 | }, | ||
| 333 | "Hyper", | ||
| 334 | { | ||
| 335 | "x": 1 | ||
| 336 | }, | ||
| 337 | "<i class='mss mss-Unicode-Command-3'></i>\n\n\nSuper", | ||
| 338 | { | ||
| 339 | "x": 8.5, | ||
| 340 | "c": "#89b087" | ||
| 341 | }, | ||
| 342 | "0\n\n\nCmd", | ||
| 343 | { | ||
| 344 | "x": 1 | ||
| 345 | }, | ||
| 346 | "=\n\n\nHyper" | ||
| 347 | ], | ||
| 348 | [ | ||
| 349 | { | ||
| 350 | "y": -0.75, | ||
| 351 | "x": 0.5, | ||
| 352 | "c": "#77aaff" | ||
| 353 | }, | ||
| 354 | "Ctrl\n\n\nLCtrl", | ||
| 355 | "Meh", | ||
| 356 | { | ||
| 357 | "x": 14.5, | ||
| 358 | "c": "#89b087" | ||
| 359 | }, | ||
| 360 | "+\n\n\nMeh", | ||
| 361 | "Enter\n\n\nCtrl" | ||
| 362 | ], | ||
| 363 | [ | ||
| 364 | { | ||
| 365 | "r": 30, | ||
| 366 | "rx": 6.5, | ||
| 367 | "ry": 4.25, | ||
| 368 | "y": -1, | ||
| 369 | "x": 1, | ||
| 370 | "c": "#54d6de" | ||
| 371 | }, | ||
| 372 | "Left", | ||
| 373 | "Right" | ||
| 374 | ], | ||
| 375 | [ | ||
| 376 | { | ||
| 377 | "h": 2 | ||
| 378 | }, | ||
| 379 | "Space", | ||
| 380 | { | ||
| 381 | "h": 2 | ||
| 382 | }, | ||
| 383 | "Enter", | ||
| 384 | "Up" | ||
| 385 | ], | ||
| 386 | [ | ||
| 387 | { | ||
| 388 | "x": 2 | ||
| 389 | }, | ||
| 390 | "Down" | ||
| 391 | ], | ||
| 392 | [ | ||
| 393 | { | ||
| 394 | "r": -30, | ||
| 395 | "rx": 13, | ||
| 396 | "y": -1, | ||
| 397 | "x": -3 | ||
| 398 | }, | ||
| 399 | "Home", | ||
| 400 | "End" | ||
| 401 | ], | ||
| 402 | [ | ||
| 403 | { | ||
| 404 | "x": -3 | ||
| 405 | }, | ||
| 406 | "Page\n\n\n\n\n\nUp", | ||
| 407 | { | ||
| 408 | "h": 2 | ||
| 409 | }, | ||
| 410 | "< Del\n\n\nBackspace", | ||
| 411 | { | ||
| 412 | "h": 2 | ||
| 413 | }, | ||
| 414 | "Del >\n\n\nDelete" | ||
| 415 | ], | ||
| 416 | [ | ||
| 417 | { | ||
| 418 | "x": -3 | ||
| 419 | }, | ||
| 420 | "Page\n\n\n\n\n\nDown" | ||
| 421 | ] | ||
| 422 | ] \ No newline at end of file | ||
diff --git a/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-symbol.png b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-symbol.png new file mode 100644 index 000000000..7ca86cf47 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/teckinesis/teckinesis-symbol.png | |||
| Binary files differ | |||
