-
-
Save bgkendall/230a78e5288cc6550cb7aa46293340c7 to your computer and use it in GitHub Desktop.
Vial configuration for Gherkin (10×3) with three extra keys and an encoder.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"version": 1, | |
"uid": 4919955219667236387, | |
"layout": [ | |
[ | |
[ | |
"TD(2)", | |
"TD(3)", | |
"KC_D", | |
"KC_P", | |
"KC_F", | |
"KC_J" | |
], | |
[ | |
"KC_L", | |
"KC_O", | |
"KC_Y", | |
"KC_BSPACE", | |
"LCTL_T(KC_A)", | |
"LALT_T(KC_R)" | |
], | |
[ | |
"LGUI_T(KC_S)", | |
"LSFT_T(KC_T)", | |
"KC_G", | |
"KC_M", | |
"RSFT_T(KC_N)", | |
"RGUI_T(KC_E)" | |
], | |
[ | |
"RALT_T(KC_I)", | |
"RCTL_T(KC_U)", | |
"LSFT_T(KC_Z)", | |
"KC_X", | |
"KC_C", | |
"KC_V" | |
], | |
[ | |
"KC_B", | |
"KC_K", | |
"KC_H", | |
"TD(0)", | |
"TD(1)", | |
"KC_ESCAPE" | |
], | |
[ | |
"LT3(KC_SPACE)", | |
-1, | |
"LT4(KC_ENTER)", | |
-1, | |
-1, | |
"LT2(KC_TAB)" | |
], | |
[ | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_NO" | |
] | |
], | |
[ | |
[ | |
"KC_Q", | |
"KC_W", | |
"KC_E", | |
"KC_R", | |
"KC_T", | |
"KC_Y" | |
], | |
[ | |
"KC_U", | |
"KC_I", | |
"KC_O", | |
"KC_P", | |
"KC_A", | |
"KC_S" | |
], | |
[ | |
"KC_D", | |
"KC_F", | |
"KC_G", | |
"KC_H", | |
"KC_J", | |
"KC_K" | |
], | |
[ | |
"KC_L", | |
"KC_BSPACE", | |
"LSFT_T(KC_Z)", | |
"KC_X", | |
"KC_C", | |
"KC_V" | |
], | |
[ | |
"KC_B", | |
"KC_N", | |
"KC_M", | |
"TD(0)", | |
"TD(1)", | |
"KC_ESCAPE" | |
], | |
[ | |
"LT3(KC_SPACE)", | |
-1, | |
"LT4(KC_ENTER)", | |
-1, | |
-1, | |
"LGUI_T(KC_TAB)" | |
], | |
[ | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_NO" | |
] | |
], | |
[ | |
[ | |
"USER02", | |
"USER03", | |
"KC_F3", | |
"RALT(KC_RBRACKET)", | |
"KC_F5", | |
"KC_F6" | |
], | |
[ | |
"LSFT(KC_7)", | |
"LSFT(KC_8)", | |
"SGUI(KC_Z)", | |
"KC_F10", | |
"RALT(KC_LBRACKET)", | |
"0x162f" | |
], | |
[ | |
"LGUI(KC_S)", | |
"0x1630", | |
"LSFT(KC_2)", | |
"0x162d", | |
"RALT(KC_MINUS)", | |
"RALT(KC_SCOLON)" | |
], | |
[ | |
"LSFT(KC_BSLASH)", | |
"LSFT(KC_6)", | |
"LGUI(KC_Z)", | |
"LGUI(KC_X)", | |
"LGUI(KC_C)", | |
"LGUI(KC_V)" | |
], | |
[ | |
"USER01", | |
"KC_GRAVE", | |
"LSFT(KC_3)", | |
"RALT_T(KC_BSLASH)", | |
"RSFT_T(KC_SLASH)", | |
"KC_CAPSLOCK" | |
], | |
[ | |
"KC_TRNS", | |
-1, | |
"MO(5)", | |
-1, | |
-1, | |
"KC_TRNS" | |
], | |
[ | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_J", | |
"KC_NO", | |
"KC_NO" | |
] | |
], | |
[ | |
[ | |
"KC_TAB", | |
"C_S(KC_TAB)", | |
"KC_UP", | |
"LCTL(KC_TAB)", | |
"KC_HOME", | |
"KC_PGUP" | |
], | |
[ | |
"LSFT(KC_GRAVE)", | |
"KC_0", | |
"USER00", | |
"KC_EQUAL", | |
"KC_GRAVE", | |
"KC_LEFT" | |
], | |
[ | |
"KC_DOWN", | |
"KC_RIGHT", | |
"KC_END", | |
"KC_PGDOWN", | |
"KC_RSHIFT", | |
"KC_RGUI" | |
], | |
[ | |
"KC_RALT", | |
"RCTL_T(KC_MINUS)", | |
"LSFT_T(KC_2)", | |
"KC_4", | |
"OSM(MOD_LCTL|MOD_LALT|MOD_LGUI)", | |
"KC_BTN3" | |
], | |
[ | |
"LSFT_T(KC_LBRACKET)", | |
"RSFT_T(KC_RBRACKET)", | |
"KC_SLASH", | |
"KC_NO", | |
"KC_NO", | |
"USER10" | |
], | |
[ | |
"KC_TRNS", | |
-1, | |
"KC_ENTER", | |
-1, | |
-1, | |
"KC_LGUI" | |
], | |
[ | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_C", | |
"KC_NO", | |
"KC_NO" | |
] | |
], | |
[ | |
[ | |
"LSFT(KC_QUOTE)", | |
"KC_KP_7", | |
"KC_KP_8", | |
"KC_KP_9", | |
"KC_KP_MINUS", | |
"LSFT(KC_5)" | |
], | |
[ | |
"LSFT(KC_7)", | |
"KC_KP_ASTERISK", | |
"KC_KP_SLASH", | |
"KC_TRNS", | |
"KC_QUOTE", | |
"KC_KP_4" | |
], | |
[ | |
"KC_KP_5", | |
"KC_KP_6", | |
"KC_KP_PLUS", | |
"KC_LBRACKET", | |
"LSFT(KC_GRAVE)", | |
"LSFT(KC_4)" | |
], | |
[ | |
"LSFT(KC_BSLASH)", | |
"USER05", | |
"LT6(KC_KP_EQUAL)", | |
"KC_KP_1", | |
"KC_KP_2", | |
"KC_KP_3" | |
], | |
[ | |
"KC_KP_DOT", | |
"LSFT(KC_COMMA)", | |
"LSFT(KC_3)", | |
"LSFT(KC_SLASH)", | |
"LSFT(KC_1)", | |
"KC_TRNS" | |
], | |
[ | |
"KC_KP_ENTER", | |
-1, | |
"KC_TRNS", | |
-1, | |
-1, | |
"LT5(KC_KP_0)" | |
], | |
[ | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_G", | |
"KC_NO", | |
"KC_NO" | |
] | |
], | |
[ | |
[ | |
"KC_F1", | |
"KC_F2", | |
"KC_F3", | |
"KC_F4", | |
"KC_F5", | |
"KC_F6" | |
], | |
[ | |
"KC_F7", | |
"KC_F8", | |
"KC_F9", | |
"RESET", | |
"DF(0)", | |
"DF(1)" | |
], | |
[ | |
"KC_SLEP", | |
"KC_BRIU", | |
"0x1a21", | |
"KC_MUTE", | |
"KC_VOLU", | |
"KC_F10" | |
], | |
[ | |
"KC_F11", | |
"KC_F12", | |
"M0", | |
"M1", | |
"0x1d43", | |
"KC_BRID" | |
], | |
[ | |
"KC_NO", | |
"KC_CAPSLOCK", | |
"KC_VOLD", | |
"KC_NO", | |
"KC_NO", | |
"BL_TOGG" | |
], | |
[ | |
"BL_TOGG", | |
-1, | |
"KC_TRNS", | |
-1, | |
-1, | |
"KC_TRNS" | |
], | |
[ | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_M", | |
"KC_NO", | |
"KC_NO" | |
] | |
], | |
[ | |
[ | |
"KC_NUMLOCK", | |
"KC_7", | |
"KC_8", | |
"KC_9", | |
"KC_KP_SLASH", | |
"KC_TRNS" | |
], | |
[ | |
"KC_TRNS", | |
"KC_TRNS", | |
"KC_TRNS", | |
"KC_DELETE", | |
"LGUI(KC_QUOTE)", | |
"KC_4" | |
], | |
[ | |
"KC_5", | |
"KC_6", | |
"KC_KP_ASTERISK", | |
"KC_RBRACKET", | |
"KC_TRNS", | |
"KC_TRNS" | |
], | |
[ | |
"KC_TRNS", | |
"KC_TRNS", | |
"KC_TRNS", | |
"KC_1", | |
"KC_2", | |
"KC_3" | |
], | |
[ | |
"KC_DOT", | |
"LSFT(KC_DOT)", | |
"KC_TRNS", | |
"LSFT(KC_LBRACKET)", | |
"LSFT(KC_RBRACKET)", | |
"KC_TRNS" | |
], | |
[ | |
"KC_TRNS", | |
-1, | |
"KC_TRNS", | |
-1, | |
-1, | |
"KC_0" | |
], | |
[ | |
"KC_NO", | |
"KC_NO", | |
"KC_NO", | |
"KC_S", | |
"KC_NO", | |
"KC_NO" | |
] | |
] | |
], | |
"encoder_layout": [ | |
[ | |
[ | |
"USER06", | |
"USER07" | |
] | |
], | |
[ | |
[ | |
"USER06", | |
"USER07" | |
] | |
], | |
[ | |
[ | |
"USER08", | |
"USER09" | |
] | |
], | |
[ | |
[ | |
"KC_PGDOWN", | |
"KC_PGUP" | |
] | |
], | |
[ | |
[ | |
"KC_TRNS", | |
"KC_TRNS" | |
] | |
], | |
[ | |
[ | |
"BL_DEC", | |
"BL_INC" | |
] | |
], | |
[ | |
[ | |
"KC_TRNS", | |
"KC_TRNS" | |
] | |
] | |
], | |
"layout_options": 5, | |
"macro": [ | |
[], | |
[], | |
[], | |
[ | |
[ | |
"text", | |
"../" | |
] | |
], | |
[], | |
[], | |
[], | |
[], | |
[], | |
[], | |
[], | |
[], | |
[], | |
[], | |
[], | |
[] | |
], | |
"vial_protocol": 6, | |
"via_protocol": 9, | |
"tap_dance": [ | |
[ | |
"KC_COMMA", | |
"LSFT(KC_SLASH)", | |
"KC_SCOLON", | |
"KC_COMMA", | |
160 | |
], | |
[ | |
"KC_DOT", | |
"LSFT(KC_1)", | |
"LSFT(KC_SCOLON)", | |
"M3", | |
160 | |
], | |
[ | |
"KC_Q", | |
"KC_Q", | |
"KC_QUOTE", | |
"KC_QUOTE", | |
175 | |
], | |
[ | |
"KC_W", | |
"KC_W", | |
"LSFT(KC_QUOTE)", | |
"LSFT(KC_QUOTE)", | |
175 | |
] | |
], | |
"combo": [ | |
[ | |
"TD(2)", | |
"TD(3)", | |
"KC_NO", | |
"KC_NO", | |
"KC_ESCAPE" | |
], | |
[ | |
"KC_Y", | |
"KC_BSPACE", | |
"KC_NO", | |
"KC_NO", | |
"KC_MINUS" | |
], | |
[ | |
"LSFT_T(KC_Z)", | |
"KC_X", | |
"KC_NO", | |
"KC_NO", | |
"0x7c73" | |
], | |
[ | |
"TD(0)", | |
"TD(1)", | |
"KC_NO", | |
"KC_NO", | |
"KC_EQUAL" | |
] | |
], | |
"key_override": [ | |
{ | |
"trigger": "KC_BSPACE", | |
"replacement": "KC_DELETE", | |
"layers": 65535, | |
"trigger_mods": 2, | |
"negative_mod_mask": 0, | |
"suppressed_mods": 2, | |
"options": 135 | |
}, | |
{ | |
"trigger": "LGUI_T(KC_S)", | |
"replacement": "LSFT(KC_4)", | |
"layers": 1, | |
"trigger_mods": 64, | |
"negative_mod_mask": 11, | |
"suppressed_mods": 64, | |
"options": 135 | |
}, | |
{ | |
"trigger": "LCTL_T(KC_A)", | |
"replacement": "LSFT(KC_2)", | |
"layers": 1, | |
"trigger_mods": 64, | |
"negative_mod_mask": 11, | |
"suppressed_mods": 64, | |
"options": 135 | |
}, | |
{ | |
"trigger": "TD(0)", | |
"replacement": "LSFT(KC_9)", | |
"layers": 1, | |
"trigger_mods": 34, | |
"negative_mod_mask": 17, | |
"suppressed_mods": 0, | |
"options": 135 | |
}, | |
{ | |
"trigger": "TD(1)", | |
"replacement": "LSFT(KC_0)", | |
"layers": 1, | |
"trigger_mods": 34, | |
"negative_mod_mask": 17, | |
"suppressed_mods": 0, | |
"options": 135 | |
}, | |
{ | |
"trigger": "TD(0)", | |
"replacement": "KC_LBRACKET", | |
"layers": 1, | |
"trigger_mods": 17, | |
"negative_mod_mask": 68, | |
"suppressed_mods": 17, | |
"options": 135 | |
}, | |
{ | |
"trigger": "TD(1)", | |
"replacement": "KC_RBRACKET", | |
"layers": 1, | |
"trigger_mods": 17, | |
"negative_mod_mask": 68, | |
"suppressed_mods": 17, | |
"options": 135 | |
}, | |
{ | |
"trigger": "TD(0)", | |
"replacement": "LSFT(KC_COMMA)", | |
"layers": 1, | |
"trigger_mods": 4, | |
"negative_mod_mask": 1, | |
"suppressed_mods": 4, | |
"options": 135 | |
}, | |
{ | |
"trigger": "TD(1)", | |
"replacement": "LSFT(KC_DOT)", | |
"layers": 1, | |
"trigger_mods": 4, | |
"negative_mod_mask": 17, | |
"suppressed_mods": 4, | |
"options": 135 | |
} | |
], | |
"settings": {} | |
} |
NOTE 3: Some relevant settings:
#define IGNORE_MOD_TAP_INTERRUPT
#define NO_AUTO_SHIFT_ALPHA
#define AUTO_SHIFT_TIMEOUT TAPPING_TERM
#define AUTO_SHIFT_NO_SETUP
#define BOTH_SHIFTS_TURNS_ON_CAPS_WORD
NOTE 4: Description of some of the non-obvious stuff:
- Home row mods — CAGS
- Combos — pair in each corner, clockwise from top-left (
Q
+W
):Escape
-
=
Caps Word
.
- Tap Dances (
tap
tap
andhold
☟):Q
Q
→'
W
W
→"
,
,
→;
,
☟ →?
.
.
→:
.
☟ →!
.
.
☟ → “../”
- Key Overrides:
- Shift +
Backspace
→Delete
- Right Alt (
I
) +S
→$
- Right Alt +
A
→@
- Shift +
,
→(
- Shift +
.
→)
- Control +
,
→[
- Control +
.
→]
- Shift + Control +
,
→{
- Shift + Control +
.
→}
- Left Alt +
,
→<
- Left Alt +
.
→>
- Shift +
- User keys:
- 00 — sends “000” (unused)
- 01 — with modifier keys send variations on my name, email, etc.
- 02, 03 — hold Command and sends Backtick and Tab respectively (i.e., switches windows). Command is released when the layer returns to the default.
- 04 — unused
- 05 — locks the current layer until tapped again
- 06, 07 — left/right. Pressing USER10 will flip to up/down. Pressing USER10 again flips back to left/right.
- 08, 09 — up/down. Pressing USER10 will flip to left/right. Pressing USER10 again flips back to up/down.
- 10 — flips the axis of 06/07 and 08/09
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
NOTE 2: The bottom row is wired to the nearest column. This means that the leftmost key is actually wired to the last column.
So, in the first layer the layout looks like this:
But physically the keys are: