如果你也因为高强度的 Coding 导致手腕难受,想摆脱触控板,又不想让双手离开键盘,那这个简单的纯键盘工作流配置可能对你有所帮助。
TL;DR 通过使用 Vim 和 Emacs 的基础键位来大幅增加纯键盘工作的比例。
并非苹果的触控板不好用,只是来回使用到一定强度之后,手腕实在是承受不住。 也不是说用鼠标就有多慢,只是习惯了双手不离开键盘太多,心意在指尖即达的快感。
之前学习 Emacs 时就发现,用快捷键来调整光标的近距离移动,就能几乎不打断思维的修改文本。 但由于其高级功能带来了太多组合键和个性化配置,最终也没有探索太远,留在了一个记事本的程度,还是回去用 IDE 了。 最近偶然碰到一个浏览器插件,突然发现只使用简单的键位就足够覆盖大多数使用情况了,并不需要掌握的很深。
Vimium
这个插件就是 Vimium
,使用 Vim 的基础键位来控制浏览器。非常简单,即使你从来没有学过也能在三分钟内掌握。
几个按键对应不同操作:
- j,页面向下滚动。
- k,页面向上滚动。
- f,页面上的链接旁出现字母,按下即可跳转。
- H 和 L,前进后退。
大多数时候其实也就这几个操作,刚好还在手自然放置的区域,用两下就记住了。 再配合上页面切换,激活输入框等等,感觉就像换成遥控器看电视,可以自然舒服的盲操。
Vim 插件
主要的工作环境除了浏览器就是 VSCode 了,常用键位最好能通用,这样快速切换时就不会误操作了。 基于之前踩坑的经历,不强求 Vim 和 Emacs 风格只选一种,以高效舒适为目标,自己的习惯最重要。
由于浏览器上已经选择了 Vim 键位,所以 IDE 中也以此为基础,安装对应插件。 配置中保留原有的快捷键,这样不影响我们已经习惯的复制粘贴,保存等操作。 网上的教程多如牛毛,随便找两个看看基础部分,如何切换模式,普通模式如何浏览翻页即可。
解决中文编辑问题
Vim 设计为浏览和编辑分离,默认编辑时无法修改光标位置。尤其写中文的时候,调整光标切换模式比较麻烦。 这里使用 Emacs 的方式来解决,在插件的配置中,对编辑模式添加快捷键绑定:
- c-f,光标前移一个字符。
- c-b,光标向后一个字符。
- c-a,回到行首。
- c-e,回到行尾。
- c-p,向上一行。
- c-n,向下一行。
都是 Ctrl 的组合键,方便起见可以在系统菜单中把大写锁定改为 Ctrl。 乍一看也需要记,其实对应的单词依次为:front,back,ahead,end,pre,next。 只要知道了含义,就不会忘记了。习惯之后就成了肌肉记忆。
这样就能够在编辑的时候也快速移动光标了。当然如果移动距离比较远远,还是用 Vim 自身的方法更好。
配置一致的快捷键
Vimium 使用 Shift + J/K 来左右切换浏览器标签页,在 VSCode 插件的配置中,也可以加入类似的快捷键来切换编辑区。
为了不影响编辑模式下正常输入大写字母 J 和 K,此处选择了 Ctrl + J/K 进行绑定。差别不大,按错了也能很快发现调整。
普通模式下也可以添加 Shift + H/L 来移动光标到行首行尾,对应 Vimium 中的左右滑动。
VSCode 自身快捷键
送佛送到西,好人做到底,编辑区现在基本可以不用鼠标和触控板了,但是切换文件,焦点转移到内置的终端还没有解决。
这一类问题单独给 VSCode 的不同 action 设置快捷键即可。打开 Keyboard Shortcuts 页面,搜索相关功能的关键词。 需要激活焦点的一般名称中包含 xxx focus。如果想要全局互相切换,可以清空对应功能的 when 字段。 常见的几个有:编辑区,目录栏和终端的焦点激活。
配置完成后,在一个如下所示的典型流程中,你就可以完全通过键盘操作了。
- 浏览器查询资料
- 多个标签页对比
- 找到答案返回 IDE
- 打开对应文件
- 修改保存
- 跳转到终端执行命令
恭喜!现在你已经可以用纯键盘完成大部分工作了 :)