初学vim的时候在网上找过很多vim配置,大多是把所有内容放在 .vimrc 文件中。单个文件内容太多,查找及维护也比较麻烦,不方便多个配置方案的切换。自己抽时间整理了一个方案,共享一下。
1.入口配置文件
.vimrc作为配置的入口。只放简单的配置加载函数。内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | " load lcc {{{ " 如果你不想加载lcc,请取消下面这一行的注释 " let g:lcc_loaded = 1 " 设置配置文件加载方式 let g:lcc_runtime=1 let s:lcc_path=expand( '<sfile>:h' ). '/.lcc' fu ! LoadLCC() let g:lcc_loaded=1 if !exists( '$VIMFILES' ) " 根据配置文件判断加载目录 if g:lcc_runtime == 0 let $VIMFILES=filereadable( split (& rtp , ',' )[0]. '/conf/main.vim' ) ? split (& rtp , ',' )[0] : \ filereadable( split (& rtp , ',' )[1]. '/conf/main.vim' ) ? split (& rtp , ',' )[1] : \ '' " 针对自定义目录 elsei g:lcc_runtime == 4 let $VIMFILES=s:lcc_path exe 'se rtp+=' .escape(s:lcc_path. ',' .s:lcc_path. '/after' , ' ' ) en en " 加载主配置文件 " filereadable so $VIMFILES/ conf /main. vim endf " start lcc happy viming! if !exists( 'g:lcc_loaded' ) | cal LoadLCC() | en " }}} |
lcc_runtime为1时,自动查找rtp的第1个路径和第2个路径,根据是否存在主配置文件来设定配置文件的路径,配置文件可以放在$HOME或者$VIM下面,可同时兼容linux和win。lcc_runtime为4时,根据lcc_path的值指定一个runtime,并加载这个runtime中的配置。
2.主配置文件
$VIMFILES/conf/main.vim文件做为主配置文件,在其中加载各项分割配置文件,定义一些特殊功能等。内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | " -------------------------------------------------- " [分配置文件加载] {{{1 " -------------------------------------------------- " 加载设置选项 访问命令 \es so <sfile> :p:h/ set . vim " 加载插件配置,插件对应热键定义在内 访问命令 \ed so <sfile> :p:h/plugin. vim " 加载自定义函数 访问命令 \ef so <sfile> :p:h/ function . vim " 加载按热键配置 访问命令 \eg so <sfile> :p:h/keyboard. vim " 加载自定义命令 访问命令 \ec so <sfile> :p:h/ command . vim " 加载项目配置文件 访问命令 \ep ru conf /project. vim " 1}}} |
project.vim存放当前开发项目的一些特殊配置,使用ru命令不存在该文件时忽略错误。
2013年5月16日 23:00
好复杂的样子= =
我的 vim 配置除去按 Vim 已有的目录分类的也就仨文件:一个主的,一个 Python 的,一个 local 的。
多用标记分类折叠下主好啦。
另外,vimrc 中我习惯写命令/选项的全称。
2013年5月20日 11:41
分开几个配置文件,是想把一个类型的配置归类到一个文件里面去,使整体看起来更有序。我nginx的配置也是一个host独立放在一个文件里面。冒似我有洁僻,哈哈。@依云: