"------------------------------------------------------------------" -- VIM 配置文件 .vimrc""" 作者: silianbo (其实就是这里抄一点,那里抄一点,文档里学一点)"" 博客:http://www.xupt2013.blog.51cto.com(司联波的新博客)"" 最后修改时间:2013-4-12""-------------------------------------------------------------------set ruler "右下角说明 2013 07 16syntax on " 使用语法高亮filetype plugin indent on " 打开文件类型检测set nocp " 使用不兼容 vi 的模式(vi模式一些操作很不方便)set autoindent "设置自动对齐(缩进):即每行的缩进值与上一行相等;使用 noautoindent 取消设置set smartindent " 智能对齐方式" 标准的4个空格的缩进set tabstop=4 " 设置制表符(tab键)的宽度set softtabstop=4 " 设置软制表符的宽度 set shiftwidth=4 " (自动) 缩进使用的4个空格set cindent " 使用 C/C++ 语言的自动缩进方式set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s "设置C/C++语言的具体缩进方式set backspace=2 " 设置退格键可用set mouse=a " 使用鼠标set number " 显示行号set cul " 显示当前行下划线colorscheme ron " 设置配色方案" MiniBufferExplorer 的设置let g:miniBufExplMapWindowNavVim=1 "按下Ctrl+h/j/k/l,可以切换到当前窗口的上下左右窗口let g:miniBufExplMapWindowNavArrows=1 "按下Ctrl+箭头,可以切换到当前窗口的上下左右窗口let g:miniBufExplMapCTabSwitchBufs=1 "Ctrl+tab移到下一个窗口;Ctrl+Shift+tab移到上一个窗口let g:miniBufExplModSelTarget=1 "不要在不可编辑内容的窗口(如TagList窗口)中打开选中的buffer" 设置分屏浏览let Tlist_Show_One_File=1let Tlist_Exit_OnlyWindow=1let g:winManagerWindowLayout='FileExplorer|TagList'nmap wm :WMToggle<CR>" 修改Zen Coding 默认的快捷键映射imap <C-e> <C-y>," ClosePair 函数的实现function ClosePair(char)if getline('.')[col('.') - 1] == a:charreturn "\<Right>"elsereturn a:charendifendf" 设置键映射" 很无奈下面的小括号匹配和 echofunc 插件不兼容...." 虽然这里注释掉了,但是通过修改 echofunc插件代码在插件内成功实现...^ ^inoremap ( ()<ESC>iinoremap ) <c-r>=ClosePair(')')<CR>inoremap { {}<ESC>iinoremap } <c-r>=ClosePair('}')<CR>inoremap [ []<ESC>iinoremap ] <c-r>=ClosePair(']')<CR>inoremap " ""<ESC>iinoremap ' ''<ESC>i" 设置超级TAB的补全let g:SuperTabRetainCompletionType=0let g:SuperTabDefaultCompletionType="<C-X><C-U>"" 自动补全列表的颜色设置highlight Pmenu ctermfg=blackhighlight PmenuSel ctermfg=white ctermbg=black" clang_complete 自动补全插件设置set completeopt=longest,menulet g:clang_complete_copen=0let g:clang_auto_select=1let g:clang_complete_auto=1let g:clang_complete_macros=1let g:clang_use_library=1let g:clang_user_options="-I/usr/include -I/usr/include/c++/4.6.3 || exit 0"" Java 自动补全设置autocmd Filetype java set omnifunc=javacomplete#Completeautocmd Filetype java set completefunc=javacomplete#CompleteParamsInfoinoremap <buffer> <C-X><C-U> <C-X><C-U><C-P>inoremap <buffer> <C-S-Space> <C-X><C-U><C-P>autocmd Filetype java,javascript,jsp inoremap <buffer> . .<C-X><C-O><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> A A<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> B B<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> C C<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> D D<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> E E<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> F F<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> G G<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> H H<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> I I<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> J J<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> K K<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> L L<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> M M<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> N N<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> O O<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> P P<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> Q Q<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> R R<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> S S<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> T T<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> U U<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> V V<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> W W<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> X X<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> Y Y<C-N><C-P>autocmd Filetype java,javascript,css,html,xml inoremap <buffer> Z Z<C-N><C-P>" ctags 相关设置" 按下F5,在当前目录递归生成tag文件map <F5> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR><CR>imap <F5> <ESC>:!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR><CR>" vim 启动时自动载入以下tags文件set tags=tagsset tags+=./tagsset tags+=/usr/include/tagsset tags+=/usr/include/c++/tagsset tags+=/usr/include/Qt/tagsset tags+=/usr/include/QtGui/tagsset tags+=/usr/include/QtCore/tagsset tags+=/usr/include/QtNetwork/tagsset tags+=/usr/include/QtSql/tagsset tags+=/usr/include/gtk-3.0/tags" QuickFix 插件的设置" 按下F6,执行make编译程序,并打开quickfix窗口,显示编译信息map <F6> :make<CR><CR><CR> :copen<CR><CR>" 按下F7,光标移到上一个错误所在的行map <F7> :cp<CR>" 按下F8,光标移到下一个错误所在的行map <F8> :cn<CR>" 按下F9,执行make cleanmap <F9> :make clean<CR><CR><CR>" 以下的映射是使上面的快捷键在插入模式下也能用imap <F6> <ESC>:make clean<CR><CR><CR>imap <F7> <ESC>:make<CR><CR><CR> :copen<CR><CR>imap <F8> <ESC>:cp<CR>imap <F9> <ESC>:cn<CR>" 按下F12,在当前代码的 .c / .h 之间切换nnoremap <silent> <F10> :A<CR>
vim 配置
最新推荐文章于 2024-04-03 17:22:21 发布