Last active
February 21, 2020 22:48
-
-
Save excalq/0709d8f5dd83a208528c56ea9a0b246c to your computer and use it in GitHub Desktop.
Kepler Dvorak for Karabiner Elements for Mac: Dvorak with Undo,Cut,Copy,Paste preserved as QWERTY
This file contains hidden or 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
| { | |
| "title": "Kepler Dvorak Improved", | |
| "rules": [ | |
| { | |
| "description": "Use with Dvorak KB Layout. This remaps Left⌘+z,x,c,v to preserve QWERTY shortcuts. Right⌘ acts as Dvorak for these.", | |
| "manipulators": [ | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "grave_accent_and_tilde", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "grave_accent_and_tilde" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "1", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "1" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "2", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "2" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "4", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "4" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "5", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "5" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "6", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "6" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "7", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "7" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "8", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "8" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "9", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "9" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "0", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "0" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "hyphen", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "open_bracket" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "equal_sign", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "close_bracket" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "q", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "quote" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "w", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "comma" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "e", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "period" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "r", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "p" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "t", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "y" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "y", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "f" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "u", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "g" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "i", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "c" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "o", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "r" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "p", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "l" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "open_bracket", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "slash" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "close_bracket", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "equal_sign" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "backslash", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "backslash" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "a", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "a" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "s", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "o" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "d", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "e" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "f", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "u" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "g", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "i" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "h", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "d" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "j", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "h" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "k", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "t" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "l", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "n" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "semicolon", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "s" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "quote", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "hyphen" | |
| } | |
| ] | |
| }, | |
| {"__comment__": "Not swapping ctrl/cmd/opt z->; to preserve QWERTY cmd+z UNDO"}, | |
| {"__comment__": "Not swapping ctrl/cmd/opt x->q to preserve QWERTY cmd+x CUT"}, | |
| {"__comment__": "Not swapping ctrl/cmd/opt c->j to preserve QWERTY cmd+c COPY"}, | |
| {"__comment__": "Not swapping ctrl/cmd/opt v->k to preserve QWERTY cmd+v PASTE"}, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "z", | |
| "modifiers": { | |
| "optional": [ | |
| "shift" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "semicolon" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "x", | |
| "modifiers": { | |
| "optional": [ | |
| "shift" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "q" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "c", | |
| "modifiers": { | |
| "optional": [ | |
| "shift" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "j" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "v", | |
| "modifiers": { | |
| "optional": [ | |
| "shift" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "k" | |
| } | |
| ] | |
| }, | |
| {"__comment__": "The following four will map RIGHT_CMD+{Special-Above-Keys} -> LEFT_CMD+{Dvorak-Key}"}, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "x", | |
| "modifiers": { | |
| "mandatory": [ | |
| "right_command" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "q", | |
| "modifiers": [ | |
| "left_command" | |
| ] | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "c", | |
| "modifiers": { | |
| "mandatory": [ | |
| "right_command" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "j", | |
| "modifiers": [ | |
| "left_command" | |
| ] | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "v", | |
| "modifiers": { | |
| "mandatory": [ | |
| "right_command" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "k", | |
| "modifiers": [ | |
| "left_command" | |
| ] | |
| } | |
| ] | |
| }, | |
| {"__comment__": "Back to normal (all modifiers are Dvorak)"}, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "b", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "x" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "n", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "b" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "m", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "m" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "comma", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "w" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "period", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "v" | |
| } | |
| ] | |
| }, | |
| { | |
| "type": "basic", | |
| "from": { | |
| "key_code": "slash", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "z" | |
| } | |
| ] | |
| } | |
| ] | |
| } | |
| ] | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment