Skip to content

Instantly share code, notes, and snippets.

@TomoakiNagahara
Last active August 29, 2015 14:03
Show Gist options
  • Save TomoakiNagahara/fd7910e3be8ce9999de4 to your computer and use it in GitHub Desktop.
Save TomoakiNagahara/fd7910e3be8ce9999de4 to your computer and use it in GitHub Desktop.
KeyRemap4MacBook
<?xml version="1.0"?>
<root>
<appdef>
<appname>PARALLELS</appname>
<equal>com.parallels.desktop.console</equal>
</appdef>
<appdef>
<appname>NETBEANS</appname>
<equal>org.netbeans.ide.baseide.201107282000</equal>
</appdef>
<appdef>
<appname>COTEDITOR</appname>
<equal>com.aynimac.CotEditor</equal>
</appdef>
<appdef>
<appname>BBEDIT</appname>
<equal>com.barebones.bbedit</equal>
</appdef>
<appdef>
<appname>SAFARI</appname>
<equal>com.apple.Safari</equal>
</appdef>
<appdef>
<appname>CHROME</appname>
<equal>com.google.Chrome</equal>
</appdef>
<appdef>
<appname>FIREFOX</appname>
<equal>org.mozilla.firefox</equal>
</appdef>
<appdef>
<appname>BROWSER</appname>
<equal>com.apple.Safari</equal>
<equal>com.google.Chrome</equal>
<equal>org.mozilla.firefox</equal>
</appdef>
<appdef>
<appname>MONODEVELOP</appname>
<equal>com.ximian.monodevelop</equal>
</appdef>
<item>
<name>Holding Escape to "Pass Through Mode"</name>
<appendix>Pass Through Mode is disable all settings temporarily.</appendix>
<appendix>Turn on a checkbox, and enable "Pass Through Mode".</appendix>
<identifier>private.pass_through_mode</identifier>
<autogen>
__HoldingKeyToKey__
KeyCode::ESCAPE, ModifierFlag::NONE,
KeyCode::ESCAPE,
KeyCode::VK_NONE,
KeyCode::VK_LOCK_ALL_FORCE_OFF,
KeyCode::VK_CONFIG_TOGGLE_notsave_passthrough,
Option::NOREPEAT,
Option::IGNORE_PASSTHROUGH,
</autogen>
</item>
<item>
<name>Spase to Shift (SandS)</name>
<appendix>Change the space key to the left shift key.</appendix>
<appendix>Send a space key event when the space key is pressed alone.</appendix>
<appendix>Send a space key event when the space key is released before another key is released.</appendix>
<appendix>For input of upper case to easy.</appendix>
<identifier>private.sands</identifier>
<autogen>
__KeyOverlaidModifier__
KeyCode::SPACE,
KeyCode::SHIFT_L, ModifierFlag::SANDS2,
KeyCode::SPACE,
</autogen>
<block>
<modifier_only>ModifierFlag::SANDS2</modifier_only>
<autogen>__BlockUntilKeyUp__ KeyCode::SPACE</autogen>
</block>
</item>
<item>
<name>Change of Window in Application</name>
<appendix>Control + 1/2</appendix>
<identifier>private.change_window</identifier>
<block>
<not>TERMINAL</not>
<autogen>--KeyToKey-- KeyCode::KEY_1, VK_CONTROL, KeyCode::F1, ModifierFlag::COMMAND_L</autogen>
<autogen>--KeyToKey-- KeyCode::KEY_2, VK_CONTROL, KeyCode::F1, ModifierFlag::COMMAND_L | ModifierFlag::SHIFT_L</autogen>
</block>
</item>
<item>
<name>Change of Tab only in Terminal</name>
<appendix>Control + 1/2</appendix>
<identifier>private.change_tab</identifier>
<autogen>--KeyToKey-- KeyCode::KEY_1, VK_CONTROL, KeyCode::CURSOR_LEFT, ModifierFlag::COMMAND_L | ModifierFlag::SHIFT_L</autogen>
<autogen>--KeyToKey-- KeyCode::KEY_2, VK_CONTROL, KeyCode::CURSOR_RIGHT, ModifierFlag::COMMAND_L | ModifierFlag::SHIFT_L</autogen>
</item>
<item>
<name>Diamond Cursor</name>
<appendix>The modern diamond cursor</appendix>
<appendix>Control + I/K/J/L to up/down/left/right </appendix>
<identifier>private.moden_diamond_cursor</identifier>
<autogen>--KeyToKey-- KeyCode::I, VK_CONTROL, KeyCode::CURSOR_UP, ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::K, VK_CONTROL, KeyCode::CURSOR_DOWN, ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::J, VK_CONTROL, KeyCode::CURSOR_LEFT, ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::L, VK_CONTROL, KeyCode::CURSOR_RIGHT, ModifierFlag::NONE</autogen>
</item>
<item>
<name>Does not quit from shortcut command.</name>
<appendix>Only Terminal, Firefox</appendix>
<identifier>private.shortcut_quit</identifier>
<only>FIREFOX, TERMINAL</only>
<autogen>--KeyToKey-- KeyCode::Q, VK_COMMAND, KeyCode::Q, ModifierFlag::NONE</autogen>
</item>
<item>
<name>Control-key's combination to meta-key</name>
<appendix>Control-key's combination to Return, Delete, Forward Delete, Tab, Escape</appendix>
<appendix>Control + N=Return, H=Delete, G(or Shift + H)=Forward Delete, T=Tab, E=Escape</appendix>
<identifier>private.control_combination</identifier>
<autogen>--KeyToKey-- KeyCode::N, VK_CONTROL, KeyCode::RETURN</autogen>
<autogen>--KeyToKey-- KeyCode::H, VK_CONTROL, KeyCode::DELETE</autogen>
<autogen>--KeyToKey-- KeyCode::DELETE, VK_SHIFT, KeyCode::FORWARD_DELETE</autogen>
<autogen>--KeyToKey-- KeyCode::G, VK_CONTROL, KeyCode::FORWARD_DELETE</autogen>
<autogen>--KeyToKey-- KeyCode::T, VK_CONTROL, KeyCode::TAB</autogen>
<autogen>--KeyToKey-- KeyCode::E, VK_CONTROL, KeyCode::ESCAPE</autogen>
</item>
<item>
<name>Command combination to Control</name>
<appendix>Command combination to Control</appendix>
<appendix>Control + C is Copy, Control + V is Paste, Control + A is All, And more</appendix>
<identifier>private.command_combination</identifier>
<block>
<not>TERMINAL</not>
<autogen>--KeyToKey-- KeyCode::C, VK_CONTROL, KeyCode::C, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
</block>
<block>
<not>SAFARI</not>
<not>CHROME</not>
<not>FIREFOX</not>
<not>TERMINAL</not>
<not>COTEDITOR</not>
<not>MONODEVELOP</not>
<autogen>--KeyToKey-- KeyCode::S, VK_CONTROL, KeyCode::S, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
</block>
<autogen>--KeyToKey-- KeyCode::V, VK_CONTROL, KeyCode::V, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::X, VK_CONTROL, KeyCode::X, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::Z, VK_CONTROL, KeyCode::Z, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::A, VK_CONTROL, KeyCode::A, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::F, VK_CONTROL, KeyCode::F, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::N, VK_CONTROL, KeyCode::N, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::W, VK_CONTROL, KeyCode::W, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
<autogen>--KeyToKey-- KeyCode::R, VK_CONTROL, KeyCode::R, ModifierFlag::COMMAND_L | ModifierFlag::NONE</autogen>
</item>
<item>
<name>Word Jump &amp; Line Jump</name>
<appendix>Control + Comma(,) or Dot(.) is Word-jump.</appendix>
<appendix>Control + Semicolon(;) or Colon(:) is Jump to Line-head or Line-tail.</appendix>
<appendix>ATTENTION: This setting is only JP-keyboard. (JP-KB is rotting)</appendix>
<identifier>private.word_line_jump</identifier>
<autogen>--KeyToKey-- KeyCode::COMMA, VK_CONTROL, KeyCode::CURSOR_LEFT, ModifierFlag::OPTION_L</autogen>
<autogen>--KeyToKey-- KeyCode::DOT, VK_CONTROL, KeyCode::CURSOR_RIGHT, ModifierFlag::OPTION_L</autogen>
<autogen>--KeyToKey-- KeyCode::SEMICOLON, VK_CONTROL, KeyCode::CURSOR_LEFT, ModifierFlag::COMMAND_L</autogen>
<autogen>--KeyToKey-- KeyCode::QUOTE, VK_CONTROL, KeyCode::CURSOR_RIGHT, ModifierFlag::COMMAND_L</autogen>
</item>
<item>
<name>PageUp &amp; PageDown, Home &amp; End</name>
<appendix> Ctrl + [ is PageUp</appendix>
<appendix> Ctrl + [ is PageUp</appendix>
<appendix> Ctrl + Shift + ] is Home</appendix>
<appendix> Ctrl + Shift + ] is End</appendix>
<identifier>private.page_and_home_and_end</identifier>
<block>
<not>TERMINAL</not>
<autogen>--KeyToKey--
KeyCode::JIS_BRACKET_LEFT, ModifierFlag::CONTROL_L | ModifierFlag::NONE,
KeyCode::PAGEUP, ModifierFlag::NONE
</autogen>
<autogen>--KeyToKey--
KeyCode::JIS_BRACKET_RIGHT, ModifierFlag::CONTROL_L | ModifierFlag::NONE,
KeyCode::PAGEDOWN, ModifierFlag::NONE
</autogen>
<autogen>--KeyToKey--
KeyCode::JIS_BRACKET_LEFT, ModifierFlag::CONTROL_L | ModifierFlag::SHIFT_L | ModifierFlag::NONE,
KeyCode::HOME, ModifierFlag::NONE
</autogen>
<autogen>--KeyToKey--
KeyCode::JIS_BRACKET_RIGHT, ModifierFlag::CONTROL_L | ModifierFlag::SHIFT_L | ModifierFlag::NONE,
KeyCode::END, ModifierFlag::NONE
</autogen>
</block>
</item>
<item>
<name>Swap Minus &amp; Equal</name>
<appendix>Minus to Equal, Equal to Minus</appendix>
<identifier>private.swap_minus_equal</identifier>
<autogen>--KeyToKey-- KeyCode::MINUS, ModifierFlag::NONE, KeyCode::MINUS, ModifierFlag::SHIFT_L</autogen>
<autogen>--KeyToKey-- KeyCode::MINUS, ModifierFlag::SHIFT_L, KeyCode::MINUS, ModifierFlag::NONE</autogen>
</item>
<item>
<name>For programmers</name>
<appendix>Ctrl + / to $</appendix>
<appendix>Ctrl + Yen to Backslash</appendix>
<identifier>private.for_programmers</identifier>
<autogen>
--KeyToKey--
KeyCode::JIS_YEN, VK_CONTROL,
KeyCode::JIS_YEN, ModifierFlag::OPTION_L
</autogen>
<autogen>
--KeyToKey--
KeyCode::SLASH, VK_CONTROL,
KeyCode::KEY_4, ModifierFlag::SHIFT_L
</autogen>
</item>
<item>
<name>Swap my favorite key position (US LIKE)</name>
<appendix>Shift + ; to ' </appendix>
<appendix>Shift + : to " </appendix>
<appendix>Shift + 7 to * </appendix>
<appendix>Shift + 0 to + </appendix>
<identifier>private.my_favorite</identifier>
<autogen>--KeyToKey-- KeyCode::SEMICOLON, VK_SHIFT, KeyCode::KEY_7, ModifierFlag::SHIFT_L</autogen>
<autogen>--KeyToKey-- KeyCode::QUOTE, VK_SHIFT, KeyCode::KEY_2, ModifierFlag::SHIFT_L</autogen>
<autogen>--KeyToKey-- KeyCode::KEY_7, VK_SHIFT, KeyCode::QUOTE, ModifierFlag::SHIFT_L</autogen>
<autogen>--KeyToKey-- KeyCode::KEY_0, VK_SHIFT, KeyCode::SEMICOLON, ModifierFlag::SHIFT_L</autogen>
</item>
<item>
<name>MonoDevelop</name>
<appendix>Space is not output, when press the KANA & EISUU.</appendix>
<identifier>private.monodevelop</identifier>
<block>
<only>MONODEVELOP</only>
<autogen>--KeyToKey-- KeyCode::JIS_KANA, KeyCode::ESCAPE</autogen>
<autogen>--KeyToKey-- KeyCode::JIS_EISUU, KeyCode::ESCAPE</autogen>
</block>
</item>
<list>
<item>
<name>THIS IS TEST SAMPLE</name>
<list>
<item>
<name>TEST SAMPLE</name>
<appendix>This is test.</appendix>
<appendix>Press SPACE-key, Output TAB-key-code, Only no modifiers.</appendix>
<identifier>private.this_is_uniq_key</identifier>
<autogen>
--KeyToKey--
KeyCode::SPACE, ModifierFlag::NONE,
KeyCode::TAB, ModifierFlag::NONE
</autogen>
</item>
</list>
</item>
</list>
</root>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment