处理VIM中源文件(相对)的源文件的最优雅方式是什么?
我正在编辑一个类似处理VIM中源文件(相对)的源文件的最优雅方式是什么?,vim,Vim,我正在编辑一个类似 带有vim的/path/to/file.txt,因此当前目录为 /path/to 现在,我有一个目录 /other/path/to/vim/files 它包含sourceA.vim。另外,在 /other/path/to/vim/files/lib/sourceB.vim 在sourceA.vim中,我想要sourcesourceB.vim,所以我放了一个 so lib/sourceB.vim 我喜欢它 现在,在我的file.txt中,我做了一个 :so/other/path
带有vim的
/path/to/file.txt
,因此当前目录为
/path/to
现在,我有一个目录/other/path/to/vim/files
它包含
sourceA.vim
。另外,在/other/path/to/vim/files/lib/sourceB.vim
在
sourceA.vim
中,我想要sourcesourceB.vim
,所以我放了一个so lib/sourceB.vim
我喜欢它 现在,在我的file.txt中,我做了一个
:so/other/path/to/vim/files/sourceA.vim
这会失败,因为寻源系统显然没有为相对路径名以及从另一个目录寻源做好准备 为了解决这个问题,我放置了一个
执行“so”。展开(“:p:h”)。“/lib/sourceB.vim”
进入
sourceA.vim
,它满足我的需要
然而,我发现这个解决方案有点笨拙,我想知道是否有更优雅的解决方案
我无法将sourceA.vim或sourceB.vim放入vim的
plugin
文件夹。也许您可以在vimrc或其他地方修改运行时路径:
set runtimepath+=/other/path/to/vim/files
然后在sourceA.vim文件中使用:runtime而不是:source:
runtime lib/sourceB.vim
然后您可以像以前一样使用相同的“:so/../../../../sourceA.vim”命令…对我来说非常有用!谢谢