一个十年的 Vimmer 说在 AI 时代,Vim 的优势正在被 tab 替换掉,加上 Vim 创始人离世,对 Vim 的前景充满忧虑,考虑放弃 Vim 使用现代代码编辑器+鼠标。

我觉得选择没有对错,只有适合不适合,当下的他认为编辑器+鼠标更适合他,那这个选择对他来说就是最好的选择。

我接触 Vim 时间不长,借此机会,我想谈谈我为什么选择 Vim,我认为 Vim 的优势不在于它快,而是一整套不被打断的工作流。鼠标操作它简单高效,它降低了个人电脑的使用门槛,我觉得个人计算机的普及除了图形化界面,另一个重要的因素就是鼠标的加入。它一定程度上带来了技术平权,让计算机不至于仅仅是极客群体才能使用的工具。

程序员是一个比较特殊的群体,当他开始把头脑里设计好的方案实现时,会有很长的时间对着代码编辑器进行比较重度的输入。这期间可能会设计打开文件或者 git commit 正在实现方案中某个最小实现的 feature,此时就需要使用鼠标进行操作,一般我们在 coding 的时候,速度是相当快的,而鼠标操作相对于键盘输入是要慢一点的,我们不得不从高速输入的状态中减速,使用鼠标去完成对应的操作。

由于鼠标一般离键盘都会有一段距离,这取决于你键盘的配列,配列越大,手移动的距离就会越大。这种物理距离的存在,即便你能很高效的切换,也多少会显得有些手忙脚乱。

这种中断,对我来说不太好,为了避免这样的中断, 我开始关注 vim, 好在 lazyvim 很大程度上降低了入门门槛,在一个 YouTuber 视频的指引下,我开始进入了 lazyvim 的世界。

目前我使用下来整体感觉还是比较好的,没有什么特别明显的不适,加上 lazyvim 可以通过 Lua 编写脚本,这使 lazyvim 有了更高的可定制性,我用 Lua 写了一个代码片段的脚本,整体效果良好,同样的事情我曾经想在 VS Code 里也想做过,由于 VS Code 对代码片段限制有点大,导致我没有实现。

我也不确定 lazyvim 是不是上述状态切换的正确答案,但是它是我目前找到的比较好的答案,如果未来有其他更好的方案,我很乐意去尝试。

我看过一个 YouTuber 使用 Macbook 键盘+ touchpad 来操作,看上去感觉要比鼠标更好一些,因为它移动距离足够小,且 touchpad 的操作效率,某些场景下确实比纯键盘操作更高。

其实说到底无论什么编辑器,最终它都是一个工具,只要使用顺手就可以,无须过多纠结,当你需求产生了,你自己自然就会知道自己需要什么样的代码编辑器。