Created
October 29, 2021 19:30
-
-
Save eyemyth/67acbdb8aedce5078ee4fe30e998e03d to your computer and use it in GitHub Desktop.
My karabiner config
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
| { | |
| "global": { | |
| "check_for_updates_on_startup": true, | |
| "show_in_menu_bar": true, | |
| "show_profile_name_in_menu_bar": false | |
| }, | |
| "profiles": [ | |
| { | |
| "complex_modifications": { | |
| "parameters": { | |
| "basic.simultaneous_threshold_milliseconds": 150, | |
| "basic.to_delayed_action_delay_milliseconds": 500, | |
| "basic.to_if_alone_timeout_milliseconds": 1000, | |
| "basic.to_if_held_down_threshold_milliseconds": 500, | |
| "mouse_motion_to_scroll.speed": 100 | |
| }, | |
| "rules": [ | |
| { | |
| "description": "Vi Mode [D as Trigger Key]", | |
| "manipulators": [ | |
| { | |
| "conditions": [ | |
| { | |
| "name": "vi_mode", | |
| "type": "variable_if", | |
| "value": 1 | |
| } | |
| ], | |
| "from": { | |
| "key_code": "j", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "down_arrow", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| }, | |
| "simultaneous": [ | |
| { | |
| "key_code": "d" | |
| }, | |
| { | |
| "key_code": "j" | |
| } | |
| ], | |
| "simultaneous_options": { | |
| "detect_key_down_uninterruptedly": true, | |
| "key_down_order": "strict", | |
| "key_up_order": "strict_inverse", | |
| "to_after_key_up": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 0 | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 1 | |
| } | |
| }, | |
| { | |
| "key_code": "down_arrow", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "conditions": [ | |
| { | |
| "name": "vi_mode", | |
| "type": "variable_if", | |
| "value": 1 | |
| } | |
| ], | |
| "from": { | |
| "key_code": "k", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "up_arrow", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| }, | |
| "simultaneous": [ | |
| { | |
| "key_code": "d" | |
| }, | |
| { | |
| "key_code": "k" | |
| } | |
| ], | |
| "simultaneous_options": { | |
| "detect_key_down_uninterruptedly": true, | |
| "key_down_order": "strict", | |
| "key_up_order": "strict_inverse", | |
| "to_after_key_up": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 0 | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 1 | |
| } | |
| }, | |
| { | |
| "key_code": "up_arrow", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "conditions": [ | |
| { | |
| "name": "vi_mode", | |
| "type": "variable_if", | |
| "value": 1 | |
| } | |
| ], | |
| "from": { | |
| "key_code": "h", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "left_arrow", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| }, | |
| "simultaneous": [ | |
| { | |
| "key_code": "d" | |
| }, | |
| { | |
| "key_code": "h" | |
| } | |
| ], | |
| "simultaneous_options": { | |
| "detect_key_down_uninterruptedly": true, | |
| "key_down_order": "strict", | |
| "key_up_order": "strict_inverse", | |
| "to_after_key_up": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 0 | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 1 | |
| } | |
| }, | |
| { | |
| "key_code": "left_arrow", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "conditions": [ | |
| { | |
| "name": "vi_mode", | |
| "type": "variable_if", | |
| "value": 1 | |
| } | |
| ], | |
| "from": { | |
| "key_code": "l", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "right_arrow", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| }, | |
| "simultaneous": [ | |
| { | |
| "key_code": "d" | |
| }, | |
| { | |
| "key_code": "l" | |
| } | |
| ], | |
| "simultaneous_options": { | |
| "detect_key_down_uninterruptedly": true, | |
| "key_down_order": "strict", | |
| "key_up_order": "strict_inverse", | |
| "to_after_key_up": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 0 | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 1 | |
| } | |
| }, | |
| { | |
| "key_code": "right_arrow", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "conditions": [ | |
| { | |
| "name": "vi_mode", | |
| "type": "variable_if", | |
| "value": 1 | |
| } | |
| ], | |
| "from": { | |
| "key_code": "f", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "fn", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| }, | |
| "simultaneous": [ | |
| { | |
| "key_code": "d" | |
| }, | |
| { | |
| "key_code": "f" | |
| } | |
| ], | |
| "simultaneous_options": { | |
| "detect_key_down_uninterruptedly": true, | |
| "key_down_order": "strict", | |
| "key_up_order": "strict_inverse", | |
| "to_after_key_up": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 0 | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 1 | |
| } | |
| }, | |
| { | |
| "key_code": "fn", | |
| "modifiers": [] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "conditions": [ | |
| { | |
| "name": "vi_mode", | |
| "type": "variable_if", | |
| "value": 1 | |
| } | |
| ], | |
| "from": { | |
| "key_code": "b", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "left_arrow", | |
| "modifiers": [ | |
| "left_option" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| }, | |
| "simultaneous": [ | |
| { | |
| "key_code": "d" | |
| }, | |
| { | |
| "key_code": "b" | |
| } | |
| ], | |
| "simultaneous_options": { | |
| "detect_key_down_uninterruptedly": true, | |
| "key_down_order": "strict", | |
| "key_up_order": "strict_inverse", | |
| "to_after_key_up": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 0 | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 1 | |
| } | |
| }, | |
| { | |
| "key_code": "left_arrow", | |
| "modifiers": [ | |
| "left_option" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "conditions": [ | |
| { | |
| "name": "vi_mode", | |
| "type": "variable_if", | |
| "value": 1 | |
| } | |
| ], | |
| "from": { | |
| "key_code": "w", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "right_arrow", | |
| "modifiers": [ | |
| "left_option" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| }, | |
| "simultaneous": [ | |
| { | |
| "key_code": "d" | |
| }, | |
| { | |
| "key_code": "w" | |
| } | |
| ], | |
| "simultaneous_options": { | |
| "detect_key_down_uninterruptedly": true, | |
| "key_down_order": "strict", | |
| "key_up_order": "strict_inverse", | |
| "to_after_key_up": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 0 | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 1 | |
| } | |
| }, | |
| { | |
| "key_code": "right_arrow", | |
| "modifiers": [ | |
| "left_option" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "conditions": [ | |
| { | |
| "name": "vi_mode", | |
| "type": "variable_if", | |
| "value": 1 | |
| } | |
| ], | |
| "from": { | |
| "key_code": "0", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "a", | |
| "modifiers": [ | |
| "left_control" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| }, | |
| "simultaneous": [ | |
| { | |
| "key_code": "d" | |
| }, | |
| { | |
| "key_code": "0" | |
| } | |
| ], | |
| "simultaneous_options": { | |
| "detect_key_down_uninterruptedly": true, | |
| "key_down_order": "strict", | |
| "key_up_order": "strict_inverse", | |
| "to_after_key_up": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 0 | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 1 | |
| } | |
| }, | |
| { | |
| "key_code": "a", | |
| "modifiers": [ | |
| "left_control" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "conditions": [ | |
| { | |
| "name": "vi_mode", | |
| "type": "variable_if", | |
| "value": 1 | |
| } | |
| ], | |
| "from": { | |
| "key_code": "4", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "e", | |
| "modifiers": [ | |
| "left_control" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| }, | |
| "simultaneous": [ | |
| { | |
| "key_code": "d" | |
| }, | |
| { | |
| "key_code": "4" | |
| } | |
| ], | |
| "simultaneous_options": { | |
| "detect_key_down_uninterruptedly": true, | |
| "key_down_order": "strict", | |
| "key_up_order": "strict_inverse", | |
| "to_after_key_up": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 0 | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "set_variable": { | |
| "name": "vi_mode", | |
| "value": 1 | |
| } | |
| }, | |
| { | |
| "key_code": "e", | |
| "modifiers": [ | |
| "left_control" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| } | |
| ] | |
| }, | |
| { | |
| "description": "Change caps_lock to control if pressed with other keys, to escape if pressed alone.", | |
| "manipulators": [ | |
| { | |
| "from": { | |
| "key_code": "caps_lock", | |
| "modifiers": { | |
| "optional": [ | |
| "any" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "left_control" | |
| } | |
| ], | |
| "to_if_alone": [ | |
| { | |
| "key_code": "escape" | |
| } | |
| ], | |
| "type": "basic" | |
| } | |
| ] | |
| }, | |
| { | |
| "description": "Better Shifting: Parentheses on shift keys", | |
| "manipulators": [ | |
| { | |
| "from": { | |
| "key_code": "left_shift" | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "left_shift" | |
| } | |
| ], | |
| "to_if_alone": [ | |
| { | |
| "key_code": "9", | |
| "modifiers": [ | |
| "left_shift" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| }, | |
| { | |
| "from": { | |
| "key_code": "right_shift" | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "right_shift" | |
| } | |
| ], | |
| "to_if_alone": [ | |
| { | |
| "key_code": "0", | |
| "modifiers": [ | |
| "right_shift" | |
| ] | |
| } | |
| ], | |
| "type": "basic" | |
| } | |
| ] | |
| }, | |
| { | |
| "description": "Remap LCommand + q to q in Safari only", | |
| "manipulators": [ | |
| { | |
| "conditions": [ | |
| { | |
| "bundle_identifiers": [ | |
| "^com.apple.Safari" | |
| ], | |
| "type": "frontmost_application_if" | |
| } | |
| ], | |
| "from": { | |
| "key_code": "q", | |
| "modifiers": { | |
| "mandatory": [ | |
| "left_command" | |
| ] | |
| } | |
| }, | |
| "to": [ | |
| { | |
| "key_code": "q" | |
| } | |
| ], | |
| "type": "basic" | |
| } | |
| ] | |
| } | |
| ] | |
| }, | |
| "devices": [ | |
| { | |
| "disable_built_in_keyboard_if_exists": false, | |
| "fn_function_keys": [], | |
| "identifiers": { | |
| "is_keyboard": true, | |
| "is_pointing_device": false, | |
| "product_id": 24647, | |
| "vendor_id": 6127 | |
| }, | |
| "ignore": false, | |
| "manipulate_caps_lock_led": false, | |
| "simple_modifications": [ | |
| { | |
| "from": { | |
| "key_code": "left_command" | |
| }, | |
| "to": { | |
| "key_code": "left_option" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "left_option" | |
| }, | |
| "to": { | |
| "key_code": "left_command" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "print_screen" | |
| }, | |
| "to": { | |
| "key_code": "right_option" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "right_option" | |
| }, | |
| "to": { | |
| "key_code": "right_command" | |
| } | |
| } | |
| ] | |
| } | |
| ], | |
| "fn_function_keys": [ | |
| { | |
| "from": { | |
| "key_code": "f1" | |
| }, | |
| "to": { | |
| "consumer_key_code": "eject" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f2" | |
| }, | |
| "to": { | |
| "consumer_key_code": "display_brightness_increment" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f3" | |
| }, | |
| "to": { | |
| "key_code": "mission_control" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f4" | |
| }, | |
| "to": { | |
| "key_code": "launchpad" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f5" | |
| }, | |
| "to": { | |
| "key_code": "illumination_decrement" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f6" | |
| }, | |
| "to": { | |
| "key_code": "illumination_increment" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f7" | |
| }, | |
| "to": { | |
| "consumer_key_code": "rewind" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f8" | |
| }, | |
| "to": { | |
| "consumer_key_code": "play_or_pause" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f9" | |
| }, | |
| "to": { | |
| "consumer_key_code": "fastforward" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f10" | |
| }, | |
| "to": { | |
| "consumer_key_code": "mute" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f11" | |
| }, | |
| "to": { | |
| "consumer_key_code": "volume_decrement" | |
| } | |
| }, | |
| { | |
| "from": { | |
| "key_code": "f12" | |
| }, | |
| "to": { | |
| "consumer_key_code": "volume_increment" | |
| } | |
| } | |
| ], | |
| "name": "Default profile", | |
| "parameters": { | |
| "delay_milliseconds_before_open_device": 1000 | |
| }, | |
| "selected": true, | |
| "simple_modifications": [ | |
| { | |
| "from": { | |
| "key_code": "escape" | |
| }, | |
| "to": { | |
| "key_code": "fn" | |
| } | |
| } | |
| ], | |
| "virtual_hid_keyboard": { | |
| "country_code": 0, | |
| "mouse_key_xy_scale": 100 | |
| } | |
| } | |
| ] | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment