我想$VIMFILES
在我的文件中设置一个变量vimrc
,以非平台特定的方式确定我的vimfiles
目录的文件路径(a la如何获取 Vim 主目录?)。这应该很简单(事实上,我认为它应该是一个内置变量),但我找不到一个可靠的方法来做到这一点。使用插件的方法要求您放置任何实际的代码用途目录中的这个变量after
,在我看来,这几乎使插件毫无用处。用于if has
确定操作系统并手动设置变量的方法似乎非常脆弱和繁琐。
所以我只想假设该runtimepath
选项的默认值的第一个组件就是vimfiles
我想要的目录。
然而,我不知道如何提取第一的组件rtp
。这看起来应该很简单,但&rtp[0]
扩展到第一个特点运行时路径,因为显然&rtp
实际上是一个字符串,即使它在语义上显然是一个列表(!!?)。
那么...我如何获取运行时路径的第一个组件?有没有更好的方法可以做到这一点?
答案1
我想我已经明白了:
set rtp&
let $VIMFILES=split(&rtp,",")[0]
仍然看起来过于手动,但它并不像我担心的那么丑陋。