本人使用的vim配置
" vundle插件管理 BEGIN--------------------------------------------------
" vundle安裝命令
" git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
filetype off
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
" 插件配置
" tagbar配置(側窗口顯示文件內宏、變量、函數)
Bundle 'majutsushi/tagbar'
let g:tagbar_ctags_bin='ctags' " ctags程序的路徑
let g:tagbar_width=25 " 窗口寬度的設置
map <F3> :Tagbar<CR>
"autocmd BUfReadPost *.cpp,*.c,*.h,*.hpp,*.cc,*.cxx call tagbar#autoopen()
" NERDTree配置(側窗口顯示文件樹)
Bundle 'scrooloose/nerdtree'
let NERDTreeWinPos='left'
let NERDTreeWinSize=25
map <F2> :NERDTreeToggle<CR>
" MiniBufExplorer(多文件同時編輯功能)
Bundle 'fholgado/minibufexpl.vim'
let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1
let g:miniBufExplMoreThanOne=0
map <F11> :MBEbp<CR>
map <F12> :MBEbn<CR>
" vim-airline(狀態欄增強)
Bundle 'bling/vim-airline'
set laststatus=2
filetype plugin indent on
" vundle插件管理 END-----------------------------------------------------
" 自動語法高亮
syntax on
" 顯示行號
set nu
" 文件改動時自動載入
set autoread
" 允許安裝插件
filetype plugin on
" 共享剪切板
set clipboard=unnamed
" 突出顯示當前行
set cursorline
" C程序自動縮進
set smartindent
" 自動縮進
set autoindent
" Tab鍵寬度
set tabstop=4
" 統一縮進爲4
set softtabstop=4
set shiftwidth=4
" 不要用空格代替製表符
set noexpandtab
" 在行和段開始處使用製表符
set smarttab
" 設置編碼
set enc=utf-8
" 可以使用鼠標
set mouse=a
set selection=exclusive
set selectmode=mouse,key
" 高亮顯示匹配的括號
set showmatch
" 匹配括號高亮的時間(單位是十分之一秒)
set matchtime=1
" 打開文件類型檢測, 加了這句纔可以用智能補全
set completeopt=longest,menu
" 設置tags文件路徑(自動識別路徑)
set tags=tags;
set autochdir
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 新文件標題
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"新建.c,.h,.sh,.cpp文件,自動插入文件頭
autocmd BufNewFile *.cpp,*.[ch],*.sh, exec ":call SetTitle()"
""定義函數SetTitle,自動插入文件頭
func SetTitle()
"如果文件類型爲.sh文件
if &filetype == 'sh'
call setline(1, "##########################################################################")
call append(line("."), "# File Name: ".expand("%"))
call append(line(".")+1, "# Description: ")
call append(line(".")+2, "# Author: eurphan")
call append(line(".")+3, "# mail: [email protected]")
call append(line(".")+4, "# Created Time:".strftime("%c"))
call append(line(".")+5, "#########################################################################")
call append(line(".")+6, "#!/bin/sh")
call append(line(".")+7, "")
else
call setline(1, "/*************************************************************************")
call append(line("."), "# File Name: " .expand("%"))
call append(line(".")+1, "# Description:")
call append(line(".")+2, "# Author: eurphan")
call append(line(".")+3, "# Mail: [email protected] ")
call append(line(".")+4, "# Created Time:".strftime("%c"))
call append(line(".")+5, " ************************************************************************/")
call append(line(".")+6, "")
endif
"新建文件後,自動定位到文件末尾
autocmd BufNewFile * normal G
endfunc