【IT168 编译】“程序员一旦进入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!"退出,但它仅仅是退出了编辑器,并不能保存修改内容。