从运行时路径选项导出 vimfiles 目录

从运行时路径选项导出 vimfiles 目录

我想$VIMFILES在我的文件中设置一个变量vimrc,以非平台特定的方式确定我的vimfiles目录的文件路径(a la如何获取 Vim 主目录?)。这应该很简单(事实上,我认为它应该是一个内置变量),但我找不到一个可靠的方法来做到这一点。使用插件的方法要求您放置任何实际的代码用途目录中的这个变量after,在我看来,这几乎使插件毫无用处。用于if has确定操作系统并手动设置变量的方法似乎非常脆弱和繁琐。

所以我只想假设该runtimepath选项的默认值的第一个组件就是vimfiles我想要的目录。

然而,我不知道如何提取第一的组件rtp。这看起来应该很简单,但&rtp[0]扩展到第一个特点运行时路径,因为显然&rtp实际上是一个字符串,即使它在语义上显然是一个列表(!!?)。

那么...我如何获取运行时路径的第一个组件?有没有更好的方法可以做到这一点?

答案1

我想我已经明白了:

set rtp&
let $VIMFILES=split(&rtp,",")[0]

仍然看起来过于手动,但它并不像我担心的那么丑陋。

相关内容