我的 Vim 学习之路

date
Aug 24, 2023
slug
Vim
status
Published
tags
Vim
summary
谨以此文缅怀 Vim 作者 Bram Moolenaar
type
Post

初识

我想大约是 17 年初的时候,在我看了一篇介绍的 Vim 和 Emacs 文章后,我对 Vim 这种编辑模式产生了浓厚的兴趣,文中介绍使用 Vim 你可以完全脱离鼠标工作,大幅提升 Coding 的效率,对当时的我产生了很大的震撼,这太酷了。
为了使用 Vim,我立即安装了一个 Ubuntu 16 的虚拟机,然后调出命令行,兴奋的敲下命令:
$vim test
notion image
接着,我发现键盘的⬆️⬇️⬅️➡️没有任何反应,我甚至无法打出 hello world。
对此,我的反应和大多数 Vim 初学者一样,感到沮丧。
但是下一秒,我发现我沮丧得太早了,因为我根本无法退出这个界面,于是我不得不换台电脑,搜索那个经典的问题:
 
如何退出 Vim? 这个经典问题在 StackOverflow 上面已经有快 300 万次浏览了 😄
notion image
于是:q成为了我第一个掌握的命令。
经过这次折腾,我对 Vim 没有太多的好感,但我始终保持了对 Vim 的敬畏,我认为这些从上个世纪开始持续称霸数十年的工具都是不可冒犯的,尤其是大多数人都一致好评的情况下。
当时大学的课程进行到学习 C 了,写代码就需要用 IDE,我下载了 Dev-C++ 作为我第一个 IDE 进行编程,开始写课本上的练习题,当学期结束时,我也把 IDE 换成了 Visual Studio。
我已经忘了要学习 Vim 这件事情了。

学习 Vim

人做某件事情总是需要推动力的,而我开始学习 Vim 的转折点来自加入学校的 C++ 实验室。
所谓实验室其实就是计算机学院划出了一部分办公室,提供设备和场地给学生学习,虽然我大部分时间都在那里打游戏。
18 年的夏天,在实验室的书架上,我发现了一本书,长得黑漆漆的,就是它:
notion image
花了大约三周的时间读完这本书后,我开始觉得这些古老的指针、Unix 操作系统、C 悠久的历史太有魅力了,我陷入了某种对 C 的皈依狂热中,这种狂热在我读完《LinuxC编程一站式学习》后达到了顶峰。
这种影响是巨大的,我立即放弃了 Visual Studio,转而开始刀耕火种式的编程,我强迫用命令行来写 C,自己生成可执行文件,在这一过程中, Vim 是必须要掌握的工具,出于教徒的虔诚,我开始认真的学习它。
过了大半年的学习,我的 Vim 技巧已经能支持我像使用 IDE 一样流畅的编写代码了,也就是说我终于不用写到一半去搜索 Vim 的命令,或者复制粘贴到 IDE 中完成剩余的代码编写了,这让我看起来像一个正常人一样,真是令人振奋的进步。
在旧的博客上,我还记录了 Vim 的一些使用技巧,下面就是当时我掌握的技能
尽管并不多,我还是花了很多时间去学习 Vim,足以证明 Vim 的学习曲线有多么陡峭。
一些主流编辑器的学习曲线
notion image

持续学习 Vim

又经过一段时间的学习,我接触了 Java 和 C#,我对现代化 IDE 的需求与日俱增,为了使用 C#,我重新开始使用 Visual Studio,为了学习 Java,下载了 IDEA。这些现代 IDE 使得我丝滑地忘记了那段狂热的时光,唯一存在过的证明是我会在第一时间下载 Vim 插件到这些 IDE 里,使用 Vim 的编辑模式来 Coding。
Vim 是如此博大精深,直到前几天,我才刚刚掌握了 :vsplit 来分屏操作 : ),但学习 Vim 的过程是充满趣味的,这种苦行僧式的修行,一开始会疯狂的折磨你,然后会度过一个瓶颈期,接着,你会感觉到快感,随着你的技巧不断提升,快感甚至能进化为喜悦。

人生苦短

2023年8月5日,我在 V2EX 上刷到了 Vim 作者去世的消息,点开链接查看,当即有一种人生苦短的感慨。回头看,我学习 Vim 的时间不过几年,而这几年的时光里,我们看到了太多新技术的诞生,看到了互联网的退潮,看到了各种人才陨落的消息,Life is short …
notion image
老实说,我并不是一名虔诚的 Vim 使用者,我只是使用 Vim 的编辑模式来编程,而我也并不了解 Vim 的作者和他背后的历史。在这之后,我阅读了一些关于 Bram 的文章,我越来越对 Bram 感到敬佩。
notion image
R.I.P.!Vim 程式編輯器作者 Bram Moolenaar 享壽 62 歲 - INSIDE Moolenaar 設定 Vim 的使用條款寫到,如果願意支持的話使用者可以捐款給烏干達的兒童,而不是要求捐款給 Moolenaar 自己。 目前 Vim 每年約有 30000 歐元的捐款,這換算下來大約可以資助 50 名烏干達兒童完成從小學到大學的學費。
直到今日,帮助乌干达贫困儿童的口号仍然挂在 Vim 的首页。
notion image
如此伟大的作品,如此伟大的人,文章的最后,让我们一起缅怀这名程序员吧。
notion image

:wq
 
 

© hhmy 2019 - 2024