我将vimrc带到我工作的所有机器上,它自然包含旧vi中不存在的选项.
如果我不小心在vi不是vim的别名和/或vim的别名的机器上启动了vi会话,vi会读取vimrc并抛出一堆恼人的错误让我知道这样的选项不受支持.
我知道我总是可以输入"vim"而不是"vi",并将EDITOR变量设置为vim(对于visudo等...),但是我可以添加一行我将添加到vimrc的顶部以退出脚本如果vi读取文件,请尽早?
小智 36
如果vi实际上不是vim的链接,它不应该读取.vimrc,它应该读取.exrc.它正在读取.vimrc的事实表明它实际上是vim的早期版本.如果是这种情况,您可以使用vim"if"构造来包含较新的功能,如下所示:
:if version >= 500
: version-5-specific-commands
:endif
Run Code Online (Sandbox Code Playgroud)
类型:
:help if
Run Code Online (Sandbox Code Playgroud)
什么时候在vim获取更多信息.
Dar*_*ves 14
如果您想在支票中更具体,您也可以检查个别功能.
我在.vimrc中有这个:
if has("eval")
" Syntax stuff
let java_highlight_all=1
endif
if has("autocmd")
" Buffers
autocmd BufEnter * cd %:p:h
endif
Run Code Online (Sandbox Code Playgroud)