Skip to content

Instantly share code, notes, and snippets.

@narze
Created October 12, 2014 22:08
Show Gist options
  • Save narze/f931f916fd62809ee2ed to your computer and use it in GitHub Desktop.
Save narze/f931f916fd62809ee2ed to your computer and use it in GitHub Desktop.
Karabiner mirror mode
<?xml version="1.0"?>
<root>
<item>
<name>Mirror Mode</name>
<modifierdef>MIRROR_MODE</modifierdef>
<item>
<name>Mirror Mode</name>
<identifier vk_config="true">notsave.net.narze.simultaneouskeypresses_mirrormode</identifier>
<autogen>__ShowStatusMessage__ Mirror Mode</autogen>
<appendix>To activate, push the keys of your choice simultaneously and hold them down.</appendix>
<autogen>__KeyToKey__ KeyCode::Q, KeyCode::P</autogen>
<autogen>__KeyToKey__ KeyCode::W, KeyCode::O</autogen>
<autogen>__KeyToKey__ KeyCode::E, KeyCode::I</autogen>
<autogen>__KeyToKey__ KeyCode::R, KeyCode::U</autogen>
<autogen>__KeyToKey__ KeyCode::T, KeyCode::Y</autogen>
<autogen>__KeyToKey__ KeyCode::Y, KeyCode::T</autogen>
<autogen>__KeyToKey__ KeyCode::U, KeyCode::R</autogen>
<autogen>__KeyToKey__ KeyCode::I, KeyCode::E</autogen>
<autogen>__KeyToKey__ KeyCode::O, KeyCode::W</autogen>
<autogen>__KeyToKey__ KeyCode::P, KeyCode::Q</autogen>
<autogen>__KeyToKey__ KeyCode::A, KeyCode::SEMICOLON</autogen>
<autogen>__KeyToKey__ KeyCode::S, KeyCode::L</autogen>
<autogen>__KeyToKey__ KeyCode::D, KeyCode::K</autogen>
<autogen>__KeyToKey__ KeyCode::F, KeyCode::J</autogen>
<autogen>__KeyToKey__ KeyCode::G, KeyCode::H</autogen>
<autogen>__KeyToKey__ KeyCode::H, KeyCode::G</autogen>
<autogen>__KeyToKey__ KeyCode::J, KeyCode::F</autogen>
<autogen>__KeyToKey__ KeyCode::K, KeyCode::D</autogen>
<autogen>__KeyToKey__ KeyCode::L, KeyCode::S</autogen>
<autogen>__KeyToKey__ KeyCode::SEMICOLON, KeyCode::A</autogen>
<autogen>__KeyToKey__ KeyCode::Z, KeyCode::SLASH</autogen>
<autogen>__KeyToKey__ KeyCode::X, KeyCode::DOT</autogen>
<autogen>__KeyToKey__ KeyCode::C, KeyCode::COMMA</autogen>
<autogen>__KeyToKey__ KeyCode::V, KeyCode::M</autogen>
<autogen>__KeyToKey__ KeyCode::B, KeyCode::N</autogen>
<autogen>__KeyToKey__ KeyCode::N, KeyCode::B</autogen>
<autogen>__KeyToKey__ KeyCode::M, KeyCode::V</autogen>
<autogen>__KeyToKey__ KeyCode::COMMA, KeyCode::C</autogen>
<autogen>__KeyToKey__ KeyCode::DOT, KeyCode::X</autogen>
<autogen>__KeyToKey__ KeyCode::SLASH, KeyCode::Z</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_1, KeyCode::KEY_0</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_2, KeyCode::KEY_9</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_3, KeyCode::KEY_8</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_4, KeyCode::KEY_7</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_5, KeyCode::KEY_6</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_6, KeyCode::KEY_5</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_7, KeyCode::KEY_4</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_8, KeyCode::KEY_3</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_9, KeyCode::KEY_2</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_0, KeyCode::KEY_1</autogen>
</item>
<item>
<name>Enable mirror mode with Space+F</name>
<identifier>remap.net_narze_simultaneouskeypresses_mirrormode_space_f</identifier>
<autogen>
__SimultaneousKeyPresses__
KeyCode::F, KeyCode::SPACE,
KeyCode::VK_CONFIG_SYNC_KEYDOWNUP_notsave_net_narze_simultaneouskeypresses_mirrormode
</autogen>
</item>
<item>
<name>Enable mirror mode toggling</name>
<identifier>remap.net_narze_simultaneouskeypresses_mirrormode_setting</identifier>
<autogen>__KeyToKey__ KeyCode::Q, ModifierFlag::MIRROR_MODE, KeyCode::P</autogen>
<autogen>__KeyToKey__ KeyCode::W, ModifierFlag::MIRROR_MODE, KeyCode::O</autogen>
<autogen>__KeyToKey__ KeyCode::E, ModifierFlag::MIRROR_MODE, KeyCode::I</autogen>
<autogen>__KeyToKey__ KeyCode::R, ModifierFlag::MIRROR_MODE, KeyCode::U</autogen>
<autogen>__KeyToKey__ KeyCode::T, ModifierFlag::MIRROR_MODE, KeyCode::Y</autogen>
<autogen>__KeyToKey__ KeyCode::Y, ModifierFlag::MIRROR_MODE, KeyCode::T</autogen>
<autogen>__KeyToKey__ KeyCode::U, ModifierFlag::MIRROR_MODE, KeyCode::R</autogen>
<autogen>__KeyToKey__ KeyCode::I, ModifierFlag::MIRROR_MODE, KeyCode::E</autogen>
<autogen>__KeyToKey__ KeyCode::O, ModifierFlag::MIRROR_MODE, KeyCode::W</autogen>
<autogen>__KeyToKey__ KeyCode::P, ModifierFlag::MIRROR_MODE, KeyCode::Q</autogen>
<autogen>__KeyToKey__ KeyCode::A, ModifierFlag::MIRROR_MODE, KeyCode::SEMICOLON</autogen>
<autogen>__KeyToKey__ KeyCode::S, ModifierFlag::MIRROR_MODE, KeyCode::L</autogen>
<autogen>__KeyToKey__ KeyCode::D, ModifierFlag::MIRROR_MODE, KeyCode::K</autogen>
<autogen>__KeyToKey__ KeyCode::F, ModifierFlag::MIRROR_MODE, KeyCode::J</autogen>
<autogen>__KeyToKey__ KeyCode::G, ModifierFlag::MIRROR_MODE, KeyCode::H</autogen>
<autogen>__KeyToKey__ KeyCode::H, ModifierFlag::MIRROR_MODE, KeyCode::G</autogen>
<autogen>__KeyToKey__ KeyCode::J, ModifierFlag::MIRROR_MODE, KeyCode::F</autogen>
<autogen>__KeyToKey__ KeyCode::K, ModifierFlag::MIRROR_MODE, KeyCode::D</autogen>
<autogen>__KeyToKey__ KeyCode::L, ModifierFlag::MIRROR_MODE, KeyCode::S</autogen>
<autogen>__KeyToKey__ KeyCode::SEMICOLON, ModifierFlag::MIRROR_MODE, KeyCode::A</autogen>
<autogen>__KeyToKey__ KeyCode::Z, ModifierFlag::MIRROR_MODE, KeyCode::SLASH</autogen>
<autogen>__KeyToKey__ KeyCode::X, ModifierFlag::MIRROR_MODE, KeyCode::DOT</autogen>
<autogen>__KeyToKey__ KeyCode::C, ModifierFlag::MIRROR_MODE, KeyCode::COMMA</autogen>
<autogen>__KeyToKey__ KeyCode::V, ModifierFlag::MIRROR_MODE, KeyCode::M</autogen>
<autogen>__KeyToKey__ KeyCode::B, ModifierFlag::MIRROR_MODE, KeyCode::N</autogen>
<autogen>__KeyToKey__ KeyCode::N, ModifierFlag::MIRROR_MODE, KeyCode::B</autogen>
<autogen>__KeyToKey__ KeyCode::M, ModifierFlag::MIRROR_MODE, KeyCode::V</autogen>
<autogen>__KeyToKey__ KeyCode::COMMA, ModifierFlag::MIRROR_MODE, KeyCode::C</autogen>
<autogen>__KeyToKey__ KeyCode::DOT, ModifierFlag::MIRROR_MODE, KeyCode::X</autogen>
<autogen>__KeyToKey__ KeyCode::SLASH, ModifierFlag::MIRROR_MODE, KeyCode::Z</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_1, ModifierFlag::MIRROR_MODE, KeyCode::KEY_0</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_2, ModifierFlag::MIRROR_MODE, KeyCode::KEY_9</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_3, ModifierFlag::MIRROR_MODE, KeyCode::KEY_8</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_4, ModifierFlag::MIRROR_MODE, KeyCode::KEY_7</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_5, ModifierFlag::MIRROR_MODE, KeyCode::KEY_6</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_6, ModifierFlag::MIRROR_MODE, KeyCode::KEY_5</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_7, ModifierFlag::MIRROR_MODE, KeyCode::KEY_4</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_8, ModifierFlag::MIRROR_MODE, KeyCode::KEY_3</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_9, ModifierFlag::MIRROR_MODE, KeyCode::KEY_2</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_0, ModifierFlag::MIRROR_MODE, KeyCode::KEY_1</autogen>
<autogen>__KeyToKey__ KeyCode::ESCAPE, ModifierFlag::MIRROR_MODE, KeyCode::VK_LOCK_MIRROR_MODE_FORCE_OFF</autogen>
</item>
<item>
<name>Toggle mirror mode with Shift+ESC</name>
<identifier>remap.net_narze_simultaneouskeypresses_mirrormode_shift_escape</identifier>
<autogen>
__KeyToKey__
KeyCode::ESCAPE, ModifierFlag::SHIFT_L,
KeyCode::VK_LOCK_MIRROR_MODE
</autogen>
</item>
<item>
<name>Toggle mirror mode with Shift+F19</name>
<identifier>remap.net_narze_simultaneouskeypresses_mirrormode_shift_hyper</identifier>
<autogen>
__SimultaneousKeyPresses__
KeyCode::SPACE, KeyCode::F19,
KeyCode::VK_LOCK_MIRROR_MODE
</autogen>
</item>
</item>
</root>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment