很多笔记本的方向键都很小,我身边的 Dell 用户和 MacBook 用户都曾抱怨过上下键太小。其实习惯了也还好,就是按起来贼憋屈,而且盲操作时,快速正确地落位会有些艰难。然而比较关键的是,16 款 MBP 的方向键似乎是有设计缺陷的,上下键经常不灵,实在是用得我恶心。

后来我看到了很多 geek 的键盘是没有方向键的,原来这帮人疯起来连方向键都可以不要啊。

有些人觉得键盘的按键是越丰富越好,这样会减少记忆负担。

但另一帮人认为键盘越精简越好,主要是便携和逼格。精简的键盘就会导致每个按键的功能变多,增加记忆负担,但这帮人就是喜欢记快捷键。连摸鼠标都觉得远,尽量手不离键盘,最好不离字母区,这样效率会很高。其实形成肌肉记忆之后,的确是很方便了。于是我就想,那应该是有办法戒掉方向键吧。如果说方向键“很远”是一个原因,那么太难按就是导火索。

Vim 流

用 Vim 的人应该都知道 H / J / K / L 可以替代方向键,分别是左 / 下 / 上 / 右。所以在 Vim 中自然是可以不需要方向键了,那别的编辑器呢?当今时代,像样点的编辑器应该都支持 Vim 模式了,比如 Atom 的 Vim-mode 插件,JetBrain 全家自带的 Vim 模式。

与世界分享你刚编的故事。

甚至在知乎里,是可以直接使用 J / K 来切换到下 / 上一个答案,O 键展开 / 折叠一个答案。

Chrome 等支持扩展的浏览器也都有 Vimium 这样的插件,实现 Vim 模式浏览网页,摆脱鼠标滚轮和方向键。鼠标滚轮这么人性化的东西为什么要摆脱呢?因为伸手去摸鼠标很累,右手回到键盘的时候还要定位到标准键位上,很累呀是不是?反正我们这帮人就是这么懒。

Emacs 流

但 Vim 模式能操作的地方还是很有限,比如普通的文本编辑器,网页里的输入框,聊天窗口等都不支持 Vim 模式。这时候就要上 Emacs 流了。

不是说 Vim 和 Emacs 势不两立吗?那是普通人才去争论的事情,我们真的有逼格的人才不去争,发挥各自长处充分利用,比他们不知道高到哪里去了。

有些人说我从没有用过 Emacs 啊,我不学我不学我是 Vim 党。我也不用 Emacs,但用过 Emacs 的快捷键。在终端里敲了很长的命令,发现少个 sudo 怎么办,按住左键等上几秒? ^A(Control + A) 直接跳到行首。其实这就是 Emacs 的快捷键流。

  • ^F 右 / 前进(Forward)一个字符
  • ^B 左 / 后退(Back)一个字符
  • ^P
  • ^N
  • ^A 行首
  • ^E 行尾

其实这里还可以辅助上 ⌥ (Option)按键,实现单词跳转,比如 ^⌥F 向右移动一个单词,类似 Vim 模式下的 w 命令。

macOS 充满了 Unix 的气息,所以不仅仅是终端,几乎所有输入框都是支持这些快捷键的!不过说到这里我就想吐槽一下 M$ Office,一点也不 Unix-friendly,完全不符合 macOS 的快捷键习惯,全用了自家那套逻辑。鸡哥,算了算了,毕竟 macOS 版 Office 是属于那种“能有就很不错了”的软件。

Control 键太远了怎么办啊?按到小指抽筋算了。改键盘映射啊!刚买电脑的时候我还觉得 CapsLock 键挺有用,不舍得拿来当 Control 键,那时候我用 CapsLock 切换中英文状态。后来我发现 macOS 中薛定谔的输入法实在是摸不透,遂放弃,直接用 Control + Space 来切换输入法了。这样一来,就更需要将 CapsLock 直接映射成 Control 了。说出来你可能不信,最初的时候 Control 键就是在那里的,直到 IBM 膝盖中了一箭。

在 macOS 中很多人几乎没有用过 Control 键,因为和 Windows 中 Ctrl 键对应的似乎是 ⌘(Command) 键,这里是有历史原因的。其实 Control 是对应 Ctrl,⌘ 对应 Windows 里的徽标键。Control 应该用于终端控制修饰键, macOS 选择加入  键(后改为 ⌘)用于图形界面相关的修饰键,而 Windows 里仿佛是觉得不存在什么命令行,直接把 Ctrl 应用为图形界面的修饰键。一开始基本是废了 Win 键,很多人就是按它来打开开始菜单的。Windows 7 之后才加入更多的 Win 组合键,但基本全是用来控制系统功能的,第三方软件基本用不到。总之,喜欢 Terminal 和 Emacs 快捷键的用户会在 macOS 中感到非常幸福。

改键流

更新一下,其实自己有一直在用Karabiner-Element(下称KE),一个开源的键盘映射软件,相当无敌好用。前身是Karabiner,只支持到macOS 10.11,所以我刚买来电脑的时候还没法用。后来作者自己貌似也换了新系统,才有了新的版本。

之前纠结方向键需求的时候,KE功能还很简陋,现在已经有了Complex Modifications功能,提供了一个网站可以下载复杂的组合键映射。所以我将Fn组合IJKL键,映射为方向键。简直不要太爽,顺便外接键盘Poker2左下角Fn键可以直接用左手掌按,很舒服。

结语

至此,基本可以告别方向键了。什么?你要玩游戏?macOS 上有啥好玩的啊…… 实在不行在游戏里改键位呗。

其实明明很简单明了又好用的方向键,硬是搞这么复杂,还分出两套快捷键,很容易精分。不过为了追求所谓的效率和逼格,这点苦算什么。