使用Vim中的keybind命令来源多个文件

时间:2013-11-07 20:37:19

标签: vim

这是我的绑定:

nnoremap <Leader>L :so $MYVIMRC<CR>:so ~/.vim/after/plugin/*.vim<CR>

直到我在插件文件夹中添加了第二个配置文件,它才能正常工作。现在我得到E77::so[urce]命令中的文件名太多了。

我发现this并没有真正明白如何从命令字符串中做到这一点,就像在keybind中一样。

如何在keybind中编写循环?必须声明一个函数吗?

P.S。我在.vim/after/plugin/中有任何脚本的原因是因为某些插件的某些配置命令必须在运行初始化后运行,插件加载脚本在vimrc之后运行。 (所以他们不能进入vimrc)。

2 个答案:

答案 0 :(得分:2)

:source只接受一个参数,但您可以使用:runtime命令:

runtime! after/plugin/*.vim

这几乎就是:help :runtime下给出的第二个例子。

答案 1 :(得分:0)

您也可以将命令链接在一起,但它不如romainl的答案那么好,但您可以突破终端并在那里运行源代码。

nnoremap <Leader>L :so $MYVIMRC|:!source `find ~/.vim/after/plugin/ -name "*.vim"`<CR>