如何将.vimrc内容组织到多个文件中

3

有没有一种方法可以将.vimrc的内容组织在多个文件中?

目前,我的.vimrc包含所有内容:Plugs语句、remaps、sets、functions、mapleader、自定义插件配置、autogroup等。

我想把它们按语言分别组织到多个文件中。

谢谢!

2个回答

5

您可以将 .vimrc 文件的内容拆分为不同的文件。然后从 vimrc 中调用这些文件。示例:

" File:      vimrc                                                           
" Author:    Jonh Doe                                                

" Options, commands, and auto commands                              
runtime settings.vim

" Maps                              
runtime maps.vim                                                                      
                          
" Functions
runtime functions.vim

" Plugin settings                                             
runtime plug-settings.vim

文件类型特定的设置应存储在~/.vim/ftplugin下,或者不太常见地,存储在~/.vim/after/ftplugin下。例如,HTML设置应该在~/.vim/ftplugin/html.vim中。

建议查看有经验的Vim用户的vimrc设置。 这个代码库应该是一个很好的起点。


1
这既不具有可扩展性,也不具备可移植性。:help :runtime:help :source更受推荐。 - romainl
我明白了,所以source $HOME/.vim/settings.vim不具备可移植性,因为一些操作系统(比如Windows)在路径中使用反斜杠\。更好的选择是runtime settings.vim - builder-7000
@romainlcan 你能详细解释一下吗? - CervEd
@builder-7000 在Windows中,/ \ 都是有效的路径分隔符。\ 更常见。 - CervEd
@builder-7000 在Windows中,/\都是有效的路径分隔符。\更常见。 - undefined

1
在你的~/.vimrc后面,Vim开始引用plugin/脚本。对于自己的映射和自定义命令,您可以将它们放在任何地方,例如~/.vim/plugin/MySuperCommand.vim~/.vim/plugin/MyLifeSaverMappings.vim
对于其他插件的定制或影响插件行为的Vim选项的定制,关键是这些脚本在插件之前执行。通过使用~/.vimrc(通常推荐),可以自动确保这一点。您可以像@Sergio的答案那样明确地从~/.vimrc运行这些脚本,或者也可以将它们定义为插件脚本,但请确保它们首先运行:
  • 如果您以传统方式安装插件(在~/.vim/plugin/中),则可以使用脚本命名(例如00MyStuff.vim)来影响加载顺序。
  • 如果您使用pack插件或包管理器,请确保您自己的插件目录首先出现在'runtimepath'中。
:scriptnames 命令是一个有价值的故障排除工具,用于验证脚本加载顺序是否正确。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接