我对 Vim 加载插件文件的顺序感到困惑,并且似乎在网上找到了混合的答案。 一些答案似乎表明 vimrc 是在插件之前加载的,而另一些答案则表明它们是在vimrc 的采购过程filetype plugin indent on
中加载的。有人可以澄清一下加载后/目录中的vimrc,插件和插件的顺序,导致每个加载的原因,以及在vim会话期间何时可以重新加载每个(例如,再次采购vimrc时会发生什么,当设置文件类型等)?
问问题
1326 次
3 回答
8
一些答案似乎表明 vimrc 是在插件之前加载的,而另一些答案则表明它们是在 vimrc 的采购过程中加载的,在 filetype plugin indent on 行。
除非您手动获取所有插件(正确术语),否则所有插件均在您之后获取。vimrc
该filetype plugin indent on
行不会更改该顺序的任何内容。
有人可以澄清一下vimrc、插件和after/目录下的插件的加载顺序吗,
假设你有filetype plugin indent on
你的vimrc
:
vimrc
如果有系统。- 你的
vimrc
. - 内置插件。
- 你的插件。
- 内置特定于文件类型的插件。
- 目录里的东西
after/
。
整个事情都在中进行了解释,:help startup
并且可以非常清楚地看到:scriptnames
。
是什么导致每个加载,
一般的值&runtimepath
和:filetype
文件类型特定的东西的命令。
以及何时可以在 vim 会话期间重新加载每个(例如,再次采购 vimrc 时会发生什么,设置文件类型时会发生什么等)?
:source $MYVIMRC
重新执行vimrc
.- 大多数插件的编写方式都可以防止它们被两次获取。如果您想重置它们,请阅读他们的文档/代码。
:help :filetype
.
于 2017-03-16T09:00:22.913 回答
4
.vimrc
在加载插件之前执行:
在启动时,Vim 检查环境变量和文件并相应地设置值。Vim 按以下顺序进行:
(...)
- 从环境变量和/或文件中执行 Ex 命令 环境变量作为一个 Ex 命令行读取,其中多个命令必须用“|”分隔 或者 ””。vimrc exrc 包含初始化命令的文件称为“vimrc”文件。vimrc 文件中的每一行都作为 Ex 命令行执行。
(...)
- 加载插件脚本。
于 2017-03-16T02:23:30.307 回答
0
只需使用:scriptnames
即可查看所有源文件及其在启动期间加载的顺序。
于 2017-03-16T03:48:14.327 回答