我們已經可以通過vim來編寫程序了,但只是局限于只有幾個源文件的情況下,如果想要成為一個強力IDE,還有很多的工作需要支持,我們可以相像一下Eclipse或者VS,作為一個IDE應該具有的功能
1.程序語法及排版支持
2.工程目錄文件管理,工程構建自動化,包括源文件結構和目錄管理
3.代碼結構管理,特別是方便函數及變量查找,函數及變量跟蹤跳轉
4.方便代碼調試
5.自動補全
我們已經滿足了上面第一條的要求,現在我們開始研究vim對工程的支持,功能包括工程目錄源文件
- taglist
借用軍官方的描述
The "Tag List" plugin is a source code browser for the vim editor
更通俗一點來講,taglist在另外一個窗口組織和顯示函數,變量列表,可以實現快速定位.此插件需要ctags的支持
taglist下載 下載安裝,開啟taglist的默認命令是 :TlistToggle, 不太好記,又長,定義一個好記的快捷鍵
map <silent><F6> <ESC>:TlistToggle<CR>
按F6就可以顯示和隱藏,效果如下
![)O4UAA_U{{8ZRBNBLA37K]P )O4UAA_U{{8ZRBNBLA37K]P](http://m.tkk7.com/images/blogjava_net/ktoo/WindowsLiveWriter/LinuxcIDEVIM_AD0D/)O4UAA_U%7B%7B8ZRBNBLA37K%5DP_thumb.jpg)
- nerdtree
我選擇nerdtree完全是因為在vim的官方上面,它的排名比較前,他和winmanager都是文件管理器 NERD tree下載,同taglist,我們也設置一個快捷鍵
map <silent><F3> <ESC>:NERDTreeToggle<CR>

- tabbar 下載
這是從minuBufExplorer衍生出來的一個插件,它可以使用會緩存訪問過的文件,且可以通過alt +數字進行切換
![[_}$F`Q0L9S5A16NR~@P4]S [_}$F`Q0L9S5A16NR~@P4]S](http://m.tkk7.com/images/blogjava_net/ktoo/WindowsLiveWriter/LinuxcIDEVIM_AD0D/%5B_%7D$F%60Q0L9S5A16NR~@P4%5DS_thumb.jpg)
- winmanager 下載
我們已經有大部分需要的插件了,可是現在需要的是把它們整合起來,首先可以先注釋上面所有的配置,沒有必要對每個插件都單獨使用
let g:NERDTree_title='NERD Tree'
let g:winManagerWindowLayout='NERDTree|TagList,Tarbar'
function! NERDTree_Start()
exec 'NERDTree'
endfunction
function! NERDTree_IsValid()
return 1
endfunction
nmap <F4> :WMToggle<cr>:q<cr>
namp <C-F4>:WMToggle<cr>
注意的是winmanager會依賴bufexplorer
.vim插件,使用前需要先安裝,整體效果如下, 可以看到Tarbar,taglist,NERDTree都已經整合

-
project(待續)
- 相關引用和借鑒
Vim插件推薦
vi/vim使用進階
Vimer的程序世界手把手教你把Vim改裝成一個IDE編程環境(圖文)
vim.org打造自己的vim界面--用winmanager合并顯示NERDTree和TagList