下载地址:https://pqrs.org/osx/karabiner/
可以在Misc & Uninstall标签页自己定义private.xml,在其中修改快捷键。
会打开/Users/cyper/Library/Application Support/Karabiner/private.xml, 当前(20160710)我的xml内容如下:
<?xml version="1.0"?>
<root>
<item>
<name>change command h</name>
<append>Change Command+H to Ctrl+H</append>
<identifier>cyper_command_h</identifier>
<not>REMOTEDESKTOPCONNECTION</not>
<autogen>__KeyToKey__ KeyCode::H, VK_COMMAND, KeyCode::H, ModifierFlag::CONTROL_L</autogen>
</item>
<item>
<name>disable command q</name>
<append>Change Command+Q to Ctrl+Q</append>
<identifier>cyper_command_q</identifier>
<not>REMOTEDESKTOPCONNECTION</not>
<autogen>__KeyToKey__ KeyCode::Q, VK_COMMAND, KeyCode::Q, ModifierFlag::CONTROL_L</autogen>
</item>
<item>
<name>Vi Navigation in Preview</name>
<identifier>private.preview.vinav</identifier>
<only>PREVIEW</only>
<appendix>Navigate using the HJKL keys</appendix>
<autogen>__KeyToKey__ KeyCode::J, KeyCode::CURSOR_DOWN</autogen>
<autogen>__KeyToKey__ KeyCode::K, KeyCode::CURSOR_UP</autogen>
<autogen>__KeyToKey__ KeyCode::H, KeyCode::CURSOR_LEFT</autogen>
<autogen>__KeyToKey__ KeyCode::L, KeyCode::CURSOR_RIGHT</autogen>
</item>
</root>
前两个item是我自定义的。我把该死的command+h强制转换成了ctrl+h,再也不担心在eclipse按错搜索键会隐藏掉窗口,然后把该死的command+q换成ctrl+q,避免使用command +w的时候碰到q键导致当前程序闪退。
最后一个是2016新增的, 作用是在mac自带的pdf阅读器中(叫Preview)使用HLJK来控制上下左右滚动(类似vim)
参考: http://superuser.com/questions/983180/how-to-fix-private-xml-from-karabiner-app-for-mac-os-x-to-enable-vim-like-naviga
保存后,在设置的主界面点一下reload XML, 并勾选上这个设置。
另外, 在Menubar一栏可以给你的配置重新取个名字, 比如我把默认的配置取名为mac,我新增的配置取名为win, 这样可以在多种键盘模式下无缝切换
PS: 刚好我的win键和alt键的键帽大小相近。我直接拔出来互换了一下位置,现在我的外接键盘和mac键盘一模一样了。。
最后我把显示/隐藏terminal的快捷键设置成了 键盘上的右键(长得像记事本图标的)。。 一看便知他代表ternimal窗口。。比ubuntu下的ctrl+alt+t更方便。