是否可以在vimrc文件中包含要获取源代码的外部文件?

是否只需添加source somefile就这么简单?

#1 楼

:source不同,:runtime不需要绝对路径即可工作。在构建便携式设置方面,它比:source更好。

请参见:help :runtime

在以下示例中,我们告诉Vim在目录指定的目录中查找vimrc文件。 runtimepath变量。由于~/.vim/是列表中的第一个目录,因此runtime vimrc的工作原理与:source ~/.vim/vimrc相同,而无需提供系统相关的路径。

~/.vimrc中:

#2 楼

答案应取决于您要分散在多个文件中的内容。在几个文件中进行配置有几种不同的方法。注意:已经描述了runtimesource之间的区别,在此不再赘述。

所以。您还必须考虑到什么。如今,我们几乎不需要使用.vimrc中的soru。但是,我仍然仅在两种情况下这样做:


确保在.vimrc结束之前加载非自动加载插件(以定义依赖于此插件的其他内容) )
加载操作系统特定的设置

对于其他情况:


用于函数定义,有自动加载插件;
用于突出显示语法,colorschemes,在同义目录中有专用文件;
对于文件类型特定的设置,有文件类型插件(.vimrc中具有自动命令是一个较差的解决方案,不能扩展);
对于项目特定的设置,有一些像local_vimrc这样的插件;
对于任何其他一组复杂的映射或功能,有一些插件可以重新组合主题定义;

最后,我在我的.vimrc:


:set设置的全局选项

我正在使用的插件管理器所需的过程
我对插件的各种配置使用(我覆盖默认值.vimrc中的键绑定)
和一些东西(实际上太多了),我已经拖了20年了。


#3 楼

是的,甚至只是so somefile。请参阅:help so

#4 楼

作为补充,我的vimrc中有这些内容可能会让您感兴趣。然后,我使用它来获取不保存在dotfiles源代码控制中的本地vimrc:

对您来说很有趣,但是在采购文件之前检查文件是否可以来源的第二部分可能很有趣。

请注意,:h source指出:从文件}。这些是以“:”开头的命令。因此,这将允许您获取包含vimscript的文件,但即使使用这种方法也无法直接获取包含另一种语言的文件如果第一行包含正确的shebang(#!/bin/...