我正在尝试更新Vim配置脚本.我的~/.vim目录中有许多子目录,我不确定它们的具体内容,也不确定为什么有一些似乎是多余的.
这是我的~/.vim目录树的样子
|-after
|---ftplugin
|---syntax
|-autoload
|-compiler
|-doc
|-ftplugin
|---latex-suite
|-----dictionaries
|-----macros
|-----packages
|-----templates
|---python
|-indent
|-plugin
|-spell
|-syntax
Run Code Online (Sandbox Code Playgroud)
现在针对具体问题.
pluginvs ftplugin?plugin和之间有什么区别autoload?after/...而不是直接放在目录下~/.vim?ske*_*ept 24
无论什么时候进入pluginvim都会加载,而你输入的ftplugin内容只是为它所对应的特定文件类型加载(所以如果你有一个名为python的文件夹,那么打开python文件时会加载所有文件.autoload你应该具有与定义的脚本相对应plugin的功能.此处的功能仅在第一次调用时加载.
在after您应该放置您想要从正常插件加载更改的设置.举个例子,假设您喜欢乳胶的某些插件为您提供的设置,但它重新定义了您在其中的映射.vimrc.您可以使用自动命令或在后面添加正确的定义来恢复此操作.
我想这可以解释每个文件夹的确切内容:http://learnvimscriptthehardway.stevelosh.com/chapters/42.html
也可能想检查一下:h runtimepath.
希望这可以帮助.:)
所有这些目录都是其中的一部分runtimepath.尝试:h runtimepath,它会将您链接到您的答案:
:h write-plugin:h autoload-functionsafter/...脚本最后执行,因此它们可以覆盖早期脚本的设置.你可以在这里阅读更多相关信息:h runtimepath.