不久前,我读了viemu创建者的一篇文章,澄清了许多关于vi的误解,并解释了为什么它是一个好主意(以及为什么它在过去30多年里非常流行)。同一个人还有一套很棒的图形备忘单,每次教一些基本知识。

我相信。

事实上,在过去的两年里,我一直被说服。但是我仍然没有强迫自己学习vi作为我的主要编辑器,学习曲线太高了。当我开始工作时,可接受的但即时的生产力(使用我当前的编辑器)到目前为止已经超过了进一步的巨大生产力(使用vi)。

有没有人有什么好的建议来帮助你度过学习曲线?它可以是直接的提示,一些其他教程或文章,无论什么。

编辑:注意,我知道vi的vim/gVim, Cream和MacVim(等等)变体。我的问题是指vi家族作为一个整体。谢谢你的精彩回答。

更新(2009年4月)

自去年12月以来,我一直在日常的职业生活中使用Vim(更准确地说,是MacVim)。我不会回去的。

祝大家在掌握Vim的过程中好运。


当前回答

我已经开始使用VI,因为它是除了Windows之外几乎所有操作系统的默认编辑器。我没有在Windows上写太多代码,所以这很有帮助。

如果你想在*NIX/OSX系统上强制使用,只需删除其他编辑器或别名即可。其他的就看你自己了。每次你不使用VI来编辑一个文件,你就不会得到一个cookie。

其他回答

我曾尝试将常见的vi命令保存在一个小的备忘单或便利贴中。我对我使用的IDE做同样的事情。我发现如果我把快捷键或命令贴在显示器上,这有助于我学习它们。一旦我用了足够多的快捷方式,并且认为我记得很清楚,我就会删除便利贴。

我的建议是写一些简单的程序,从头到尾,使用VI。

很有可能,一开始你会因为学习曲线而感到沮丧,无法强迫自己在工作中或任何对时间敏感的环境中使用它们。

为了熟悉环境/编辑器,我以前曾经这样做过,而且效果非常好。

如果你在写作上遇到了困难,我建议你重做你在学校做过的项目(或者你以前做过的任何事情)。这种方法还有一个额外的好处,就是让您看到自己已经成为了一个多么优秀的开发人员。:)

编辑:忘记提到你应该完全从控制台来做这个,以避免任何使用鼠标的诱惑!

谷歌是你的朋友。保持一个窗口或选项卡在手边,当你有一些你需要做几次的事情,比如缩进代码或用正则表达式搜索,查找它。最好的提示网站将变得熟悉,收藏一些,也许打印出一个小抄。

我已经开始使用VI,因为它是除了Windows之外几乎所有操作系统的默认编辑器。我没有在Windows上写太多代码,所以这很有帮助。

如果你想在*NIX/OSX系统上强制使用,只需删除其他编辑器或别名即可。其他的就看你自己了。每次你不使用VI来编辑一个文件,你就不会得到一个cookie。

虽然我是vi的忠实粉丝,特别是vim,但有很多功能强大的编辑器,你不应该觉得你必须使用vi,或者它在某种程度上是某种绝对完美的编辑器,因为它不是。

If you have to force yourself to use vi, I would be concerned that you don't feel productive using it. However, if you insist on persisting, I would probably just make sure I used vi for every single editing task. Whenever I need to do something and I don't quite no the best way to do it, I'd try to find the optimal (in terms of minimal keystrokes) to do it in vi after I did it a non-optimal normal way. I'd then make a post-it note with this little tip (or maybe just a text file) so I would remember it for next time.

随着时间的推移,您使用vi的效率将显著提高。