“程序员一旦进入 Vim ,就再难以脱身。”这听起来像是一个恐怖故事,但是却真实的发生在程序员的身上, Stack Overflow 上关于如何退出 Vim 的问题,其点击量已有上百万次了。
问题原文为:
I'm stuck and cannot escape. It says:
"type :quit<Enter> to quit VIM"
But when I type that it simply appears in the object body.
你可能认为“我使用 Vim 很久了,我认为 Vim 很好用,没必要退出啊!”但是用户觉得没必要退出和 Vim 不能退出其实是两个概念,对于 Vim 退出问题的讨论可以追溯到2014年。
2014年 国外著名 Reddit 网站就有关于此的问答:
Q: How do you generate a random string?
A: Put a Windows user in front of vi, and tell them to exit
2015年,关于 Vim 的退出问题就像滚雪球一样,程序员的反馈越来越多,甚至有程序员表示:“我使用Vim已有两年时间,主要原因不是它的强大,而是因为我不知道如何退出。”
过去的一年中,如何退出 Vim 编辑器这一问题占据了 Stack Overflow 问题流量的0.005%,这就意味着 Stack Overflow 每有两万个问题的访问,其中就有一个是访问如何退出 Vim 编辑器,如果按 Stack Overflow 来计算的话,那么每一小时就有80个人在求助如何退出 Vim 。
更有趣的是,这个问题在 Stack Overflow 上出现之后就持续受到程序员的关注。而相比 Stack Overflow ,网络上“ Vim 如何退出”的热度似乎更甚,据 Google Trends 显示,自2004年开始 Vim 退出的热度就一直在增长,这发生在 Stack Overflow 关于 Vim 退出问题的提出之前,2010年该问题的热度就激增,呈现出了线性增长的趋势。
Stack Overflow 数据也揭示了一些很有趣的事情,如程序员常用的标签其实可以更倾向于对他们所用技术进行分类,例如 JavaScript 工程师和 Web 工程师通常会在 C#,Android,ios,PHP,Java 等等的标签停留,而在 Vim 中停留的程序员往往更关注 IDE,如 Visual Studio,Eclipse,Xcode 等等。
如果毫不客气的说,Vim 不仅是一座监狱(让程序员易进难出),还是一个陷阱,它会让程序员通过链接或者其它方式落入陷阱,一旦进来就很难出去。
现在如果你去谷歌搜索“如何退出 Vim ”,一般都会得到以下的回复,如果当前是处于 Insert 和 Append 模式下,那么可以按 Esc 退出。或者是输入“:q!"退出,但它仅仅是退出了编辑器,并不能保存修改内容。