Caps Lock to Hyper key
早就想这么干了,把 Macbook 上的 Caps Lock 改成一个「Hyper」键。
背景
Caps Lock,大写锁定键,现实中使用到的频率相当小(至少对于我来说是这样),但它却占用了一个风水很不错的位置,实在是浪费。Chromebook 把它直接换成了一个搜索键。
替换方法
-
首先,安装
PCKeyboardHackSeil 这个软件[1],通过它我们可以把 Caps Lock 键的功能换成一个键盘上不存在的按键,我这里换成了 F19,keycode 为 80。 -
到 「System Preferences」-> 「Keyboard」 -> 「Modifier Keys...」里面把 Caps Lock 对应的动作设置成 「No Action」。
这时,Caps Lock 已经失去大写锁定功能了,再按它时,大写提示灯是不会亮的了。
-
只是替换成一个 F19 功能键显然还是不够给力的,我们要赋予它更多的功能。这就需要安装和 PCKeyboardHack 同一家的另一个软件 KeyRemap4MacBook [2]。这个软件提供了很多预置的键位修改选项,有兴趣的可以自己折腾,但为了给我的 Hyper 键添加功能,我们需要的是它的自定义设置功能。
在 「Misc & Uninstall」 标签中有个 「Open private.xml」 的按钮,点击它会打开包含了 private.xml 的文件夹,我们要做的就是修改这个文件,加入自己的配置,我目前的配置放到了 gist 上。
-
保存后,回到 KeyRemap4MacBook 的 「Change Key」 标签中,点击一下 「ReloadXML」 这个按钮,你会发现 remapping 下面新的选项出现在最顶部,把它们勾选上,Hyper 键就诞生了!
功能
这个 private.xml 实现了以下几个功能:
-
按下 Hyper 同时也按下其它键时,Hyper = Control + Shift + Option + Command,此时是作为修饰键的,让它可以配合别的键作为热键使用。
-
Hyper + Space = Enter,这个嘛……右手懒得按回车时用。
-
Hyper + J/K/H/L = 下/上/左/右,懒得去按方向键时用。
-
Hyper + Tab = Caps Lock,有时可能还是会用到大写锁定的。
此外,我又利用了下 Alfred 的 Hotkeys 功能,把常用的几个软件都放到了几个顺手的键位上:
-
Hyper + F = Finder
-
Hyper + D = 下载文件夹
-
Hyper + G = Google Chrome
-
Hyper + V = iTerm
-
Hyper + O = Omnifocus
-
Hyper + P = Papers2
-
Hyper + R = Reeder
-
Hyper + S = Sparrow
-
Hyper + E = Sublime Text 2
-
Hyper + T = Tweetbot
Alfred 的 Hotkeys 功能有一个很不错的设定就是「Hide Application if already visible」,勾选它之后就可以用对应的热键来很方便的显示/隐藏相应的程序了,同时这样也比用 Command + Tab 来切换程序要快得多。
看到这里相信各位已经明白了,Hyper 键在 Control、Shift、Option、Command 之外又提供了另外一个很顺手的修饰键,这样一下就多出了很多可用的热键位了。
此外 KeyRemap4MacBook 和 PCKeyboardHack 可以折腾东西还很多,可以看看官方的文档以及别人的折腾[4]。