Skip to content

Instantly share code, notes, and snippets.

@zlargon
Created January 25, 2016 07:24
Show Gist options
  • Save zlargon/5d2013101a583e4ca42a to your computer and use it in GitHub Desktop.
Save zlargon/5d2013101a583e4ca42a to your computer and use it in GitHub Desktop.
Karabiner private.xml: arrow symbol shortcuts
<!-- https://pqrs.org/osx/karabiner/faq.html.en#unicode-hex-input -->
<?xml version="1.0"?>
<root>
<item>
<name>Use right option as unicode hex input modifier</name>
<appendix>- right option + ← = ← (U+2190)</appendix>
<appendix>- right option + ↑ = ↑ (U+2191)</appendix>
<appendix>- right option + → = → (U+2192)</appendix>
<appendix>- right option + ↓ = ↓ (U+2193)</appendix>
<identifier>private.unicode_hex_input_modifier</identifier>
<autogen>
__KeyToKey__
KeyCode::OPTION_R,
KeyCode::VK_CONFIG_SYNC_KEYDOWNUP_notsave_private_unicode_hex_input_modifier_flag,
Option::KEYTOKEY_BEFORE_KEYDOWN,
<!-- change input source to Unicode Hex Input -->
KeyCode::VK_CHANGE_INPUTSOURCE_UNICODEHEXINPUT,
<!-- wait until input source will be changed -->
KeyCode::VK_WAIT_100MS,
Option::KEYTOKEY_AFTER_KEYUP,
<!-- change input source to U.S. -->
KeyCode::VK_CHANGE_INPUTSOURCE_US,
</autogen>
<block>
<config_only>notsave.private_unicode_hex_input_modifier_flag</config_only>
<autogen>
<!-- right option + ← = ← (U+2190) -->
__KeyToKey__
KeyCode::CURSOR_LEFT,
KeyCode::KEY_2, ModifierFlag::OPTION_L,
KeyCode::KEY_1, ModifierFlag::OPTION_L,
KeyCode::KEY_9, ModifierFlag::OPTION_L,
KeyCode::KEY_0, ModifierFlag::OPTION_L,
</autogen>
<autogen>
<!-- right option + ↑ = ↑ (U+2191) -->
__KeyToKey__
KeyCode::CURSOR_UP,
KeyCode::KEY_2, ModifierFlag::OPTION_L,
KeyCode::KEY_1, ModifierFlag::OPTION_L,
KeyCode::KEY_9, ModifierFlag::OPTION_L,
KeyCode::KEY_1, ModifierFlag::OPTION_L,
</autogen>
<autogen>
<!-- right option + → = → (U+2192) -->
__KeyToKey__
KeyCode::CURSOR_RIGHT,
KeyCode::KEY_2, ModifierFlag::OPTION_L,
KeyCode::KEY_1, ModifierFlag::OPTION_L,
KeyCode::KEY_9, ModifierFlag::OPTION_L,
KeyCode::KEY_2, ModifierFlag::OPTION_L,
</autogen>
<autogen>
<!-- right option + ↓ = ↓ (U+2193) -->
__KeyToKey__
KeyCode::CURSOR_DOWN,
KeyCode::KEY_2, ModifierFlag::OPTION_L,
KeyCode::KEY_1, ModifierFlag::OPTION_L,
KeyCode::KEY_9, ModifierFlag::OPTION_L,
KeyCode::KEY_3, ModifierFlag::OPTION_L,
</autogen>
</block>
</item>
<item hidden="true">
<identifier vk_config="true">notsave.private_unicode_hex_input_modifier_flag</identifier>
</item>
</root>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment