Windows環境下 Gvim 安裝 Vundle/Ctags/taglist
目錄
一、安裝Vundle for Windows
1、安裝Git
2 要配置PATH,以便於在任意地方都可以使用git程式
3通過命令檢查安裝是否就位
2、安裝Curl
拓展:cURL是一個利用URL語法在命令列下工作的檔案傳輸工具,1997年首次發行。它支援檔案上傳和下載,所以是綜合傳輸工具,但按傳統,習慣稱cURL為下載工具。cURL還包含了用於程式開發的libcurl。
cURL支援的通訊協議有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP和RTSP。
curl還支援SSL認證、HTTP POST、HTTP PUT、FTP上傳, HTTP form based upload、proxies、HTTP/2、cookies、使用者名稱+密碼認證(Basic, Plain, Digest, CRAM-MD5, NTLM, Negotiate and Kerberos)、file transfer resume、proxy tunneling
win10系統自帶Curl,檢查一下,如下所示
3、安裝Vundle
說明:Gvim on windows 是用配置檔案
_vimrc
代替了.vimrc,用
vimfiles目錄
代替.vim目錄。
1 配置$VIM環境變數,例如 $VIM = d:\Vim81
2 執行如下命令,從github將Vundle拷下來
git clone https://github.com/VundleVim/Vundle.vim.git $VIM/vimfiles/bundle/Vundle.vim
,
3 配置_vimrc檔案
filetype off set nocompatible set rtp+=$VIM/vimfiles/bundle/Vundle.vim call vundle#begin('$VIM/vimfiles/bundle') " let Vundle manage Vundle, required Plugin 'VundleVim/Vundle.vim' Bundle 'taglist.vim' " All of your Plugins must be added before the following line " call vundle#end() " required filetype plugin indent on " required " To ignore plugin indent changes, instead use: "filetype plugin on " " Brief help " :PluginList - lists configured plugins " :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate " :PluginSearch foo - searches for foo; append `!` to refresh local cache " :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal " " see :h vundle for more details or wiki for FAQ " Put your non-Plugin stuff after this line
二、ctags下載與安裝
這個安裝非常簡單,在http://ctags.sourceforge.net/下載windows的版本ctags58.zip,但官網太慢,可以在CSDN中有各種下載
然後解壓出來,在Path裡新增.exe所在的路徑即可,或者就放在$VIM/Vim81下面和gvim.exe放在一起,這樣就可以免去配置PATH。
安裝完成後用":ctags -R"可以在目錄下生成tags檔案,記錄索引
ctag是一個工具,是專門用來生成tags檔案的(在原檔案目錄下),可以理解為為原始檔做各種標籤的工具檔案,生成tags檔案就具備了交叉檢視的能力,而taglist可以理解為是進一步方便使用tags檔案的Vim的外掛,故安不安裝taglist,用Vim自身都可實現檢視。
1、生成Tag檔案
命令:ctags -R –c++-kinds=+px –fields=+iaS –extra=+q
- R:ctags
迴圈生成子目錄的tags–c++-kinds=+px
ctags記錄c++檔案中的函式宣告和各種外部和前向宣告–fields=+iaS
ctags要求描述的資訊,其中i表示如果有繼承,則標識出父類;a表示如果元素是類成員的話,要標明其呼叫許可權(即是public還是private);S表示如果是函式,則標識函式的signature。–extra=+q
強制要求ctags做如下操作—如果某個語法元素是類的一個成員,ctags預設會給其記錄一行,可以要求ctags對同一個語法元素再記一行,這樣可以保證在VIM中多個同名函式可以通過路徑不同來區分。
2、程式碼的快速瀏覽
- Ctrl + ]找到游標所在位置的標籤定義的地方,相當與查詢定義
- Ctrl + T回到跳轉之前的識別符號。這裡只能回跳上“一步”,所以只能在當前識別符號和上一步的識別符號之間來回切換。
- Ctrl + O注意這裡是字母“O”,這個命令和上面命令的區別在於可以一直向上回溯識別符號
- Ctrl + [l查詢全域性識別符號. Vim會列出它所找出的匹配行,不僅在當前檔案內查詢,還會在所有的包含檔案中查詢。
- Ctrl + [i從當前檔案起始位置開始查詢第一處包含游標所指識別符號的位置
- Ctrl + i]類似上面的[i,但這裡是從游標當前位置開始往下搜尋。這個命令還挺常用的
- [{ }] [( )] [/ /] 這幾個命令放在一起說,首先是[ ] 這類似一個定位區塊的命令,其作用是定位當前游標所處位置的區塊的兩端,{ } 代表要定位游標所處的{}的區塊,( ) 代表定位游標所處的()區塊, / 跳轉游標所處位置的註釋的區塊的兩端,只對/*....*/ 風格的註釋有效
- { 跳轉到上一個空行處
- } 跳轉到下一個空行處
- gd 跳轉到游標所處的識別符號的定義
- * 轉到當前游標所指的識別符號下一次出現的地方。
- # 轉到當前游標所指的識別符號上一次出現的地方。
三、Taglist下載和安裝
Taglist是vim的一個外掛,提供原始碼符號的結構化檢視。
1)從http://www.vim.org/scripts/script.php?script_id=273下載安裝包,也可以從http://vim-taglist.sourceforge.net/index.html下載。
2)進入$VIM/vimfile目錄,將Taglist安裝包解壓,將解壓後的plugin和doc目錄拷貝到$VIM/vimfile目錄。
3)在Vim下執行"help tags"命令,檢視taglist幫助。
1、在_vimrc中設定tagslist
“讓taglist窗口出現在Vim的左邊邊
let Tlist_Use_Left_Window = 1
“當同時顯示多個檔案中的tag時,設定為1,可使taglist只顯示當前檔案tag,其它檔案的tag都被摺疊起來。
let Tlist_File_Fold_Auto_Close = 1
“只顯示一個檔案中的tag,預設為顯示多個
let Tlist_Show_One_File = 1
“Tag的排序規則,以名字排序。預設是以在檔案中出現的順序排序
let Tlist_Sort_Type =’name’
“Taglist視窗開啟時,立刻切換為有焦點狀態
let Tlist_GainFocus_On_ToggleOpen = 1
“如果taglist視窗是最後一個視窗,則退出vim
let Tlist_Exit_OnlyWindow = 1
“設定窗體寬度為32,可以根據自己喜好設定
let Tlist_WinWidth = 32
設定ctags的位置,因為在前邊已經設定好路徑
let Tlist_Ctags_Cmd ='ctags'
“熱鍵設定,我設定成Leader+t來撥出和關閉Taglist
map <F2> :TlistToggle<CR>
2、taglist的配置與使用
taglist依賴ctags,所以需要安裝好ctags,並生成tag檔案,然後才可以使用taglist,如果沒有設定為vim啟動時自動開啟taglist,可以
- 使用 “:TlistToggle” 在開啟和關閉間切換
- 使用 “:TlistOpen” 開啟taglist視窗,用“:TlistClose”關閉taglist視窗。
- 使用 “ctrl+w+w” 在正常編輯區域和tags區域中切換
-
定位指定內容在tags區域中,把游標移動到變數、函式名稱上,然後敲回車(或者是雙擊某個tag),就會自動在正常編輯區域中定位到指定內容了。
-
回車
跳到游標下tag所定義的位置,用滑鼠雙擊此tag功能也一樣 o
在一個新開啟的視窗中顯示游標下tag空格
(空格)顯示游標下的tag的原型定義u
更新taglist視窗中的tags
更改排序方式,在按名字排序和按出現順序排序間切換x
taglist視窗放大和縮小,方便檢視較長的tag+
開啟一個摺疊,同zo-
將tag摺疊起來,同zc*
開啟所有的摺疊,同zR=
將所有tag摺疊起來,同zM[[
跳到前一個檔案]]
跳到後一個檔案q
關閉taglist視窗
四、網盤下載:包括:gvim81、ctags、taglist、git
連結:https://pan.baidu.com/s/1KgbJ7QGlaK0gYmqncqwl1A
提取碼:8dix