Karabiner配置
<?xml version="1.0"?> <root> <item> <name>F19 to F19</name> <appendix>(F19 to Hyper (ctrl+shift+cmd+opt) + F19 Only, send escape)</appendix> <identifier>private.f192f19_escape</identifier> <autogen> --KeyOverlaidModifier-- KeyCode::F19, KeyCode::COMMAND_L, ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, KeyCode::ESCAPE </autogen> </item> <item> <name>Hyper J to Down</name> <appendix>(Hyper-J to Down arrow)</appendix> <identifier>private.hyper-j-down</identifier> <autogen> --KeyToKey-- KeyCode::J, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, KeyCode::CURSOR_DOWN </autogen> </item> <item> <name>Hyper K to Up</name> <appendix>(Hyper-K to Up arrow)</appendix> <identifier>private.hyper-K-up</identifier> <autogen> --KeyToKey-- KeyCode::K, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, KeyCode::CURSOR_UP </autogen> </item> <item> <name>Hyper H to Left</name> <appendix>(Hyper-H to Left arrow)</appendix> <identifier>private.hyper-h-left</identifier> <autogen> --KeyToKey-- KeyCode::H, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, KeyCode::CURSOR_LEFT </autogen> </item> <item> <name>Hyper L to Right</name> <appendix>(Hyper-L to Right arrow)</appendix> <identifier>private.hyper-l-right</identifier> <autogen> --KeyToKey-- KeyCode::L, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, KeyCode::CURSOR_RIGHT </autogen> </item> <item> <name>Hyper N to Beginning of Line</name> <appendix>(Hyper-N to Beginning of Line)</appendix> <identifier>private.hyper-n-beginning-of-line</identifier> <autogen> --KeyToKey-- KeyCode::N, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, KeyCode::CURSOR_LEFT, ModifierFlag::COMMAND_L </autogen> </item> <item> <name>Hyper ; to End of Line</name> <appendix>(Hyper-; to End of Line)</appendix> <identifier>private.hyper-;-end-of-line</identifier> <autogen> --KeyToKey-- KeyCode::SEMICOLON, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, KeyCode::CURSOR_RIGHT, ModifierFlag::COMMAND_L </autogen> </item> <item> <name>Hyper I to Top</name> <appendix>(Hyper-I to Top)</appendix> <identifier>private.hyper-i-top</identifier> <autogen> --KeyToKey-- KeyCode::I, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, KeyCode::CURSOR_UP, ModifierFlag::COMMAND_L </autogen> </item> <item> <name>Hyper M to Bottom</name> <appendix>(Hyper-M to Bottom)</appendix> <identifier>private.hyper-m-bottom</identifier> <autogen> --KeyToKey-- KeyCode::M, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, KeyCode::CURSOR_DOWN, ModifierFlag::COMMAND_L </autogen> </item> <item> <name>Hyper + Space To Capslock</name> <appendix>Hyper(cmd+ctrl+shift+opt)+space, send Capslock</appendix> <identifier>private.hyperspace2enter</identifier> <autogen> --KeyToKey-- KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L | ModifierFlag::COMMAND_L, KeyCode::CAPSLOCK </autogen> </item> <item> <name>Change Escape to Mission Control</name> <identifier>private.escape_to_mission_control</identifier> <autogen> --KeyToKey-- KeyCode::ESCAPE, KeyCode::CURSOR_UP, ModifierFlag::CONTROL_L </autogen> </item> <item> <name>Change F11 Key to END</name> <identifier>private.f11_to_end2</identifier> <autogen>__KeyToKey__ KeyCode::F11, KeyCode::END</autogen> </item> <item> <name>Change Fn Key to F18</name> <identifier>private.fn_to_f182</identifier> <autogen>__KeyToKey__ KeyCode::FN, KeyCode::F18</autogen> </item> </root>
注意:最后一个item中的FN 中的n要大写
功能:
(1)把F11 转化为end
(2)caps lock 和space 同时按下 大小写切换
(3)caps lock 单独按下 ,转化为escape
---2017年3月13日 更新------
之前想把mac 右边的alt/option设置成为F16,然后设置成为idea 的build 快捷键,但是
不能占用右边的alt(option),因为IDEA的两个快捷键需要:
1.根据提示自动补全
2.多行注释
改为:
caps S触发build
后来通过Karabiner 解决了一个问题
通过 --KeyOverlaidModifier--设置 单独按下时的目标key
<item> <name>OPTION_R to HOME</name> <appendix>(OPTION_R Only, send OPTION_R)</appendix> <identifier>private.option_r2option_r</identifier> <autogen> --KeyOverlaidModifier-- KeyCode::OPTION_R, KeyCode::OPTION_R, KeyCode::HOME </autogen> </item>
单独按下右边的alt/option 触发HOME键,但是不影响与其他键的配合
press control_l only equals "command +R ",to refresh browser
单独按下左边的control ,触发浏览器刷新
<!-- press control_l only equals "command +R ",to refresh browser --> <item> <name>CONTROL_L to COMMAND_L+R</name> <appendix>(CONTROL_L Only, send COMMAND+R,refresh browser)</appendix> <identifier>private.control_l_only2control_and_r</identifier> <autogen> --KeyOverlaidModifier-- KeyCode::CONTROL_L, KeyCode::CONTROL_L, KeyCode::R, ModifierFlag::COMMAND_L </autogen> </item>