From 741339d9228704dbd4edfe547903e784816312d7 Mon Sep 17 00:00:00 2001 From: Zhineng Li Date: Mon, 22 Dec 2025 10:59:12 +0800 Subject: add karabiner config --- karabiner/karabiner.json | 122 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 karabiner/karabiner.json diff --git a/karabiner/karabiner.json b/karabiner/karabiner.json new file mode 100644 index 0000000..11a68c6 --- /dev/null +++ b/karabiner/karabiner.json @@ -0,0 +1,122 @@ +{ + "global": { + "check_for_updates_on_startup": false, + "show_in_menu_bar": false + }, + "profiles": [ + { + "complex_modifications": { + "rules": [ + { + "description": "Switch input method (right_option+num)", + "manipulators": [ + { + "from": { + "key_code": "1", + "modifiers": { + "mandatory": ["right_option"], + "optional": ["any"] + } + }, + "to": { "select_input_source": { "language": "en" } }, + "type": "basic" + }, + { + "from": { + "key_code": "2", + "modifiers": { + "mandatory": ["right_option"], + "optional": ["any"] + } + }, + "to": { + "select_input_source": { + "input_mode_id": "com.apple.inputmethod.TCIM.Shuangpin", + "input_source_id": "com.apple.inputmethod.TCIM.Shuangpin", + "language": "zh-Hant" + } + }, + "type": "basic" + }, + { + "from": { + "key_code": "3", + "modifiers": { + "mandatory": ["right_option"], + "optional": ["any"] + } + }, + "to": { + "select_input_source": { + "input_mode_id": "com.apple.inputmethod.SCIM.Shuangpin", + "input_source_id": "com.apple.inputmethod.SCIM.Shuangpin", + "language": "zh-Hans" + } + }, + "type": "basic" + } + ] + }, + { + "description": "VIM-like navigation (right_command+hjkl)", + "manipulators": [ + { + "from": { + "key_code": "h", + "modifiers": { + "mandatory": ["right_command"], + "optional": ["any"] + } + }, + "to": [{ "key_code": "left_arrow" }], + "type": "basic" + }, + { + "from": { + "key_code": "j", + "modifiers": { + "mandatory": ["right_command"], + "optional": ["any"] + } + }, + "to": [{ "key_code": "down_arrow" }], + "type": "basic" + }, + { + "from": { + "key_code": "k", + "modifiers": { + "mandatory": ["right_command"], + "optional": ["any"] + } + }, + "to": [{ "key_code": "up_arrow" }], + "type": "basic" + }, + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": ["right_command"], + "optional": ["any"] + } + }, + "to": [{ "key_code": "right_arrow" }], + "type": "basic" + } + ] + } + ] + }, + "name": "Default profile", + "selected": true, + "simple_modifications": [ + { + "from": { "key_code": "caps_lock" }, + "to": [{ "key_code": "left_control" }] + } + ], + "virtual_hid_keyboard": { "keyboard_type_v2": "ansi" } + } + ] +} \ No newline at end of file -- cgit v1.2.3