如何在.vimrc中检测vi(不是vim)?




我携带一个vimrc到我工作的所有机器,它自然包含不存在于旧vi中的选项.

如果我不小心在一个机器上启动vi会话,其中vi不是vim的别名,而/ / vim没有被安装,则vi会读vimrc并抛出一堆令人讨厌的错误,让我知道这样的选项不受支持.

我知道我可以总是输入“vim”而不是“vi”,并将EDITOR变量设置为vim(对于visudo等),但是有一行我可以添加到vimrc的顶部,该脚本将退出脚本早期如果文件被vi读取?

如果vi实际上不是vim的链接,那么它不应该读取.vimrc,它应该读取.exrc.它正在读取.vimrc的事实表明它实际上是vim的早期版本.如果是这样,您可以使用vim“if”结构来支持较新的功能,如下所示:
:if version >= 500
:  version-5-specific-commands
:endif

类型:

:help if

何时在vim中获取更多信息.

相关文章

解决方案:解决linux下vim乱码的情况:(修改vimrc的内容)全...
Linuxvi/vim所有的UnixLike系统都会内建vi文书编辑器,其他的...
      vim正则匹配:空行:/^$/  /^[\t]*$/注释...
$select-editorSelectaneditor.Tochangelater,run'sele...
上次手贱忘了保存,这次就简单做个备忘吧,把踩过的坑记一下...
Linux之文本编译器小结vim的优势所有的UNIX-LIKE习通都会内置...