多年来,我一直想学习 Vim,它现在是我首选的 Linux 文本编辑器,也是开发者和系统管理员最喜欢的开源工具。 当我说学习,我的意思是真正地学习。精通 可能有点夸张,但我会满足于高级熟练程度。 在我使用 Linux 的大多数年里,我的技能包括打开文件、使用箭头键上下导航、切换到插入模式、更改一些文本、保存和退出。
但这就像最低限度可用的 Vim。我的技能水平使我能够从终端编辑文本文档,但实际上并没有赋予我任何我一直想象的文本编辑超能力。 并且它没有证明使用 Vim 比完全有能力的 Pico 或 Nano 更合理。
那么为什么要学习 Vim 呢? 因为我确实花了很多时间编辑文本,而且我知道我可以更有效率。 为什么不是 Emacs,或者像 Atom 这样更现代的编辑器呢? 因为 Vim 对我来说很有效,而且至少我有一些使用它的最少经验。 也许,重要的是,因为我很少遇到我正在使用的系统上没有 Vim 或其不太完善的表亲 (vi) 的情况。 如果你一直渴望学习 Emacs,祝你好运——我希望这些技巧的 Emacs 类似物对你也有用。
在集中精力提高我的 Vim 使用能力的几周后,我要分享的首要技巧是,你实际上必须使用该工具。 虽然这似乎是一个显而易见的建议,但我实际上发现坚持使用该程序比我预期的要困难得多。 我的大部分工作都在 Web 浏览器中完成,我不得不解除每次需要在浏览器外编辑文本块时触发式打开 Gedit 的习惯。 Gedit 已经进入了我的快速启动器,所以第一步是删除这个快捷方式,并将 Vim 放在那里。
我已经尝试了很多帮助我学习的方法。 如果你也想学习,这里有一些我推荐的方法。
Vimtutor
有时,最好的入门地点离应用程序本身不远。 我发现 Vimtutor 是一个小型应用程序,它基本上是一个文本文件中的教程,你在学习时编辑它,它在向我展示多年来我跳过的命令基础知识方面与任何其他东西一样有用。 Vimtutor 通常在 Vim 的任何地方都可以找到,如果你的系统上还没有安装,可以很容易地从你的包管理器安装。
GVim
我知道不是每个人都会同意这一点,但我发现停止使用终端中的 Vim 版本并开始使用 GVim 来满足我的基本编辑需求很有用。 反对者会争辩说,这鼓励在为键盘设计的环境中使用鼠标,但我发现能够快速在下拉菜单中找到我正在寻找的命令,提醒自己正确的命令,然后用键盘执行它很有帮助。 另一种选择常常是无法弄清楚如何做某事的挫败感,当你在努力学习一个新编辑器时,不断处于这种感觉之下不是一个好主意。 不,每隔几分钟停下来阅读手册页或使用搜索引擎来提醒你按键顺序并不是学习新事物的最佳方式。
键盘布局图
在切换到 GVim 的同时,我还发现手边有一张键盘“备忘单”来提醒我基本的按键操作很有用。 网络上有许多可用的键盘布局图,你可以下载、打印并放在你的工作站旁边,但我选择购买一套用于我的笔记本电脑键盘的贴纸。 它们不到 10 美元,并且还有一个额外的好处,即每次我使用笔记本电脑时都会微妙地提醒我至少尝试一项新事物。
Vimium
正如我所提到的,我一天中的大部分时间都在 Web 浏览器中度过。 我发现有助于加强 Vim 导航方式的技巧之一是使用 Vimium,这是一个 Chrome 的开源扩展,它使 Chrome 模仿 Vim 使用的快捷方式。 我发现我使用的键盘快捷键切换上下文的次数越少,我就越有可能实际使用它们。 类似的扩展程序,例如 Vimerator,也存在于 Firefox 中。
其他人
毫无疑问,获得学习新事物的帮助的最佳方式是向走在你前面的人寻求建议、反馈和解决方案。
如果你住在一个较大的城市地区,你附近可能有一个 Vim 聚会小组。 否则,最佳去处是 Freenode IRC 上的 #vim 频道。 作为 Freenode 上较受欢迎的频道之一,#vim 频道总是挤满了乐于助人的人,他们愿意为你的问题提供帮助。 我发现仅仅听听聊天内容,看看其他人试图解决什么样的问题,就能发现我错过了什么,这很有趣。
那么,如何评价这项努力呢? 到目前为止,一切都很好。 花费的时间可能尚未在节省的时间方面得到回报,但当我发现自己有了新的本能反应,用正确的按键顺序跳过单词,或一些类似的小壮举时,我总是感到有点惊讶和好笑。 我至少可以看出,每一天,这项投资都在让自己离回报更近一步。
这些绝不是学习 Vim 的唯一技巧。 我还喜欢向人们推荐 Vim Adventures,这是一款在线游戏,你可以在其中使用 Vim 按键进行导航。 就在前几天,我偶然发现了一个很棒的可视化学习工具,网址是 Vimgifs.com,它正如你可能期望的那样:用 Vim 举例说明的示例非常小,可以很好地放入 gif 中。
你是否投入时间学习了 Vim,或者说,任何具有键盘密集型界面的程序? 什么对你有效,你是否认为这项努力是值得的? 你的生产力是否像你想象的那样发生了变化? 让我们在下面的评论中分享故事吧。
6 条评论