轉載 wenweiquan 的百度文檔
一、去下載下傳 http://www.xiazaiba.com/html/3347.html gvim并安裝
二、設定VIM的基本配置
1:打開_vimrc配置檔案
2:在behave mswin後面加入source $VIMRUNTIME/setting.vim
3:在vim73目錄下建立setting.vim檔案
4:加入基本配置代碼
“解決中文亂碼
set encoding=utf-8
set fileencodings=utf-8,chinese,latin-1
if has(“win32”)
set fileencoding=chinese
else
set fileencoding=utf-8
endif
“解決菜單亂碼
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
“解決consle輸出亂碼
language messages zh_CN.utf-8
"NERDTree
map <F8> :NERDTreeToggle<CR>
"基本設定
set nocompatible " 關閉 vi 相容模式
syntax on " 自動文法高亮
"colorscheme zmrok " 設定配色方案
set number " 顯示行号
set cursorline " 突出顯示目前行
set ruler " 打開狀态欄标尺
set shiftwidth=4 " 設定 << 和 >> 指令移動時的寬度為 4
set softtabstop=4 " 使得按倒退鍵時可以一次删掉 4 個空格
set tabstop=4 " 設定 tab 長度為 4
set nobackup " 覆寫檔案時不備份
set autochdir " 自動切換目前目錄為目前檔案所在的目錄
au GUIEnter * simalt ~x " 啟動時最大化視窗
filetype plugin indent on " 開啟插件
set backupcopy=yes " 設定備份時的行為為覆寫
set ignorecase smartcase " 搜尋時忽略大小寫,但在有一個或以上大寫字母時仍保持對大小寫敏感
set nowrapscan " 禁止在搜尋到檔案兩端時重新搜尋
set incsearch " 輸入搜尋内容時就顯示搜尋結果
set hlsearch " 搜尋時高亮顯示被找到的文本
set noerrorbells " 關閉錯誤資訊響鈴
set novisualbell " 關閉使用可視響鈴代替呼叫
set t_vb= " 置空錯誤鈴聲的終端代碼
" set showmatch " 插入括号時,短暫地跳轉到比對的對應括号
" set matchtime=2 " 短暫跳轉到比對括号的時間
set magic " 設定魔術
set hidden " 允許在有未儲存的修改時切換緩沖區,此時的修改由 vim 負責儲存
set smartindent " 開啟新行時使用智能自動縮進
set backspace=indent,eol,start
" 不設定在插入狀态無法用倒退鍵和 Delete 鍵删除回車符
set cmdheight=1 " 設定指令行的行數為 1
set laststatus=2 " 顯示狀态欄 (預設值為 1, 無法顯示狀态欄)
set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\
" 設定在狀态行顯示的資訊
set foldenable " 開始折疊
set foldmethod=syntax " 設定文法折疊
set foldcolumn=0 " 設定折疊區域的寬度
setlocal foldlevel=1 " 設定折疊層數為
" set foldclose=all " 設定為自動關閉折疊
" nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR> " 用空格鍵來開關折疊
"傳回到上次編輯檔案的某一行
au BufReadPost * if line("'\"") > 0|if line("'\"") <= line("$")|exe("norm '\"")|else|exe "norm $"|endif|endif
三、配置PHP代碼補全
1:同樣在setting.vim檔案裡面加入如下代碼 php_funclist.txt為函數清單檔案名稱,放在vim安裝目錄下vimfiles/doc/?檔案夾下。
"PHPseting
set tags=tags;
set autochdir
set completeopt=longest,menu " 設定代碼提示為彈出層
function AddPHPFuncList()
set dictionary-=$VIM/vimfiles/doc/php_funclist.txt
set dictionary+=$VIM/vimfiles/doc/php_funclist.txt
set complete-=k complete+=k
endfunction
au FileType php call AddPHPFuncList()
"在 Vim 中實作括号自動補全:
:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
:inoremap { {}<ESC>i
:inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap < <><ESC>i
:inoremap > <c-r>=ClosePair('>')<CR>
function ClosePair(char)
if getline('.')[col('.') - 1] == a:char
return "\<Right>"
else
return a:char
endif
endf
四、用 NERDTree 實作目錄導航
下載下傳位址:http://www.vim.org/scripts/script.php?script_id=1658
下載下傳檔案:NERD_tree.zip
解壓縮時,要把壓縮包中的目錄結構完整的解壓縮到 $VIM\vimfiles 目錄中。完成後,應該分别找到 $VIM\vimfiles\doc\NERD_tree.txt 檔案和 $VIM\vimfiles\plugin\NERD_tree.vim 檔案。然後在 vim 中輸入指令 :helptags $VIM\vimfiles\doc,将 NERDTree 的幫助文檔添加到 vim 中。
最後在setting.vim 添加如下内容:
" NERDTree
map <F10> :NERDTreeToggle<CR>
重新開機 vim 後,按下 F10 鍵,就可以在左側看到一個目錄樹了。在目錄樹視窗中按下 ? 鍵可以檢視詳細的幫助資訊。
五、用 taglist 實作代碼導航
解決了目錄和檔案導航問題,我們還要為代碼之間的跳轉提供輔助手段,taglist 就是這樣一個插件。taglist 可以列出已打開檔案中定義的類、函數、常量,甚至變量。
下載下傳位址:http://www.vim.org/scripts/script.php?script_id=273
下載下傳檔案:taglist_45.zip
壓縮包需要完整解壓縮到 $VIM\vimfiles 目錄,并且用 :helptags $VIM\vimfiles\doc 指令索引 taglist 插件的幫助文檔。taglist 插件需要依賴 ctags 程式才能工作。目前常用的 ctags 版本是 Exuberant Ctags。
在setting.vim添加如下内容
"Tlist
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1
map <F12> ::TlistToggle<CR>
let NERDTreeWinPos = "right" "where NERD tree window is placed on the screen
let Tlist_Enable_Fold_Column = 0
let Tlist_Exit_OnlyWindow = 0
let Tlist_File_Fold_Auto_Close = 0
let Tlist_GainFocus_On_ToggleOpen = 1
let Tlist_Hightlight_Tag_On_BufEnter = 1
let Tlist_Inc_Winwidth = 0
let Tlist_Max_Submenu_Items = 1
let Tlist_Max_Tag_Length = 30
let Tlist_Process_File_Always = 0
let Tlist_Show_Menu = 0
let Tlist_Show_One_File = 0
let Tlist_Sort_Type = "order"
let Tlist_Use_Horiz_Window = 0
let Tlist_Use_Right_Window = 1
let Tlist_WinWidth = 40
let tlist_php_settings = 'php;c:class;i:interfaces;d:constant;f:function'
重新開機 vim 後,按下 F12 鍵,就可以在左側看到代碼導航
六、使用AutoComplPop實作代碼自動提示
下載下傳位址:http://www.vim.org/scripts/script.php?script_id=1879
下載下傳的是一個zip檔案,解壓後會有三個檔案夾,分别是autoload,doc,plugin。到Vim的根目錄下,找到名字
和這三個一樣的檔案夾。不同系統目錄位置不同。我的fedora是/usr/share/vim/vimfiles
按照檔案夾對應的把裡面的acp.vim和其他的什麼檔案都copy過去。然後重新開機Vim。
這時候可能會有錯誤提示
Error detected while processing /home/carlos/.vim/plugin/acp.vim:
line 13:
***** L9 library must be installed! *****
這是插件放出的一個錯誤提示,檢視plugin裡的acp.vim可以看到。是缺少L9 library庫。這個也是需要下載下傳的。位址在下面
http://www.vim.org/scripts/script.php?script_id=3252
下載下傳下來,它也是一個插件形式,以同樣的方式copy到Vim目錄下
七、vim檢視php手冊
下載下傳 http://blog.planetxml.de/uploads/vim-php-manual.tgz
解壓到 $HOME/.vim/vim-php-manual/doc(一定要有這個doc)
doc 目錄裡面是一堆 txt檔案 還有一個沒有字尾名的 tags 檔案
用vim打開 tags 然後輸入 :%sort 指令回車 然後 :w 儲存 再 :q 退出
修改 vim 配置檔案
加上
set runtimepath+=$vim/vim-php-manual
在setting.vim裡面加入如下代碼
autocmd BufNewFile,Bufread *.module,*.inc,*.php set keywordprg="help"
八、使用ctags插件實作函數名跟蹤
ctags
下載下傳位址:http://ctags.sourceforge.net/
解壓ctags,放在VIM根目錄,把ctags.exe copy在gvim.exe同級目錄
使用ctags
在相應的源碼目錄運作ctags -R産生相應的tags檔案
cd ~/www/website
ctags -R *
這時會在~/www/website目錄下生成一個tags檔案
在setting.vim檔案裡加入如下代碼
set tags=tags; 設定ctags自動查找到tags檔案
set autochdir
在代碼使用時按ctrl+]值即可跳轉到函數生命點
九、VIM官方插件下載下傳位址 http://www.vim.org/download.php
十、VIM配色方案的下載下傳位址及修改方法
1:打開該網址http://vimcolorschemetest.googlecode.com/svn/html
2:選中相應的配色方案,并另存為color.vim 存放在colors目錄
3:在setting.vim查找colorscheme ,并設定上另為存的配色方案名
如:colorscheme color " 設定配色方案
注:如果需要相關的配置方法可聯系:zero<[email protected]>