刚新装了系统,不过忘记备份之前的.vimrc了,为此重新配置了下,特发此博客,为新手作下指导。
我想大多数人都是用vim来编程的,当然它只是个编辑器。我们可能会希望vim具有很多IDE具有的方便功能,比如代码补全,括号引号补全,自动缩进等,这些完全不是问题,因为vim不仅仅是一个编辑器!
下面是我的.vimrc文件,我将以注释的形式来做简单介绍。
"设置gvim不再兼容vi的按键配置set nocompatible"开启文件类型识别filetype on"选择lucius配色方案,之前的candy配色不知道为什么不能用了"只能推而求其次选择lucius,大家根据自己的喜好选择吧colorscheme lucius"这个是lucius的配色选择,lucius有light和black两种模式LuciusBlack"关闭图标栏set guioptions-=T"clang++自动编译函数,大家如果使用的是g++,直接将clang++替换即可map:call CompileRunGcc() func! CompileRunGcc() exec "w" exec "!clang++ -std=c++11 % -o %<" exec "!./%<"endfunc"显示行号set number"不自动备份,去掉讨厌的~文件set nobackup"符号匹配模式开启set showmatch"格式选项set formatoptions=tcrqn"开启自动缩进set autoindentset smartindentset cindent"设置缩进为4个空格set tabstop=4set softtabstop=4set shiftwidth=4"括号自动补全inoremap ( () iinoremap [ [] iinoremap { { } Oautocmd Syntax html,vim inoremap < > i| inoremap > =ClosePair('>') inoremap ) =ClosePair(')') inoremap ] =ClosePair(']') inoremap } =CloseBracket() inoremap " =QuoteDelim('"') inoremap ' =QuoteDelim("'") function ClosePair(char) if getline('.')[col('.') - 1] == a:char return "\ " else return a:char endifendffunction CloseBracket() if match(getline(line('.') + 1), '\s*}') < 0 return "\ }" else return "\ j0f}a" endifendffunction QuoteDelim(char) let line = getline('.') let col = col('.') if line[col - 2] == "\\" return a:char elseif line[col - 1] == a:char return "\ " else return a:char.a:char."\ i" endifendf"neocolmplcache是一个代码提醒插件,这个大家自己去vim网站上下载,十分好用let g:neocomplcache_enable_at_startup=1