熱搜:win11繞過硬件限制安裝 一鍵重裝Win10系統(tǒng) 最干凈的u盤啟動盤 真正純凈版的win7系統(tǒng)
時間:2015-03-18 17:30:03 作者:qipeng 來源:系統(tǒng)之家 1. 掃描二維碼隨時看資訊 2. 請使用手機瀏覽器訪問: https://m.xitongzhijia.net/xtjc/20150318/41885.html 手機查看 評論 反饋
3.配置.vimrc文件
當vim在啟動時,如果沒有找到vimrc或gvimrc,它缺省工作VI兼容的模式。這意味著,你只能使用VI所具備的功能,而vim中的大量擴展功能將無法使用。也許這就是你的vim如此難用的原因。
vim中自帶了一個vimrc例子,以我所在的CentOS 6.2上的為例,使用下面的命令找到這個文件
locate vimrc_example.vim
發(fā)現(xiàn)它的真實目錄在
/usr/share/vim/vim72/vimrc_sample.vim
將其拷貝到我的主目錄下面
cp -f /usr/share/vim/vim72/vimrc_sample.vim ~/.vimrc
或者你在vim中執(zhí)行下面的命令,和上面的shell命令完成相同的功能:
。海p $VIMRUNTIME/vimrc_example.vim ~/.vimrc
現(xiàn)在,你退出vim后再進入,你的vim和剛才已經(jīng)不一樣了。
你可以先讀一下你的vimrc,看看它都設定了什么:
。篹 ~/.vimrc
這是一個注釋良好的文件,不需要多解釋。
在今后使用vim的日子里,你會頻繁的更改你的vimrc。所以我們需要設置一些快捷方式,使我們能快速的訪問vimrc。
把下面這段內(nèi)容拷貝到你的vimrc中:
1 “Set mapleader
2 let mapleader = ”;“
3
4 ”Fast reloading of the .vimrc
5 map 《silent》 《leader》ss :source ~/.vimrc《cr》
6 “Fast editing of .vimrc
7 map 《silent》 《leader》ee :e ~/.vimrc《cr》
8 ”When .vimrc is edited, reload it
9 autocmd! bufwritepost .vimrc source ~/.vimrc
為了方便解釋,我給每一行都加了一個行號。
在vimrc中,雙引號開頭的行,將被當作注釋忽略。
第2行,用來設置mapleader變量,當mapleader為未設置或為空時,使用缺省的”\”來作為mapleader。mapleader變量是作用是什么呢?看下面的介紹。
第5行定義了一個映射(map),這個映射把《leader》ss,映射為命令:source ~/.vimrc《cr》。當定義一個映射時,可以使用《leader》前綴。而在映射生效時,vim會把《leader》替換成mapleader變量的值。也就是說,我們這里定義的《leader》ss在使用時就變成了”,ss“,當輸入這一快捷方式時,就會source一次~/.vimrc文件(也就是重新執(zhí)行一遍.vimrc文件)。
第7行,定義了《leader》ee快捷鍵,當輸入,ee時,會打開~/.vimrc進行編輯。
第9行,定義了一個自動命令,每次寫入.vimrc后,都會執(zhí)行這個自動命令,source一次~/.vimrc文件。
有了上面的快捷鍵,我們就能快速的打開vimrc文件編輯,快速重新source vimrc文件,方便多了。
相關的配置文件參見趙攀提供的.vimrc文件的內(nèi)容。
注意:最后的源碼結(jié)構(gòu)類似如下:
~--|--.vimrc
|--.vim --|-plugin--
|-doc--
|-autoload
|-vest
4.實戰(zhàn)體驗
4.1下載一個trafficserver的源碼,并以此為例來闡釋使用vim開發(fā)的方法
登陸192.168.16.237上,并在當前主目錄上新建一個program_dev目錄
ssh root@192.168.16.237
cd ~/
mkdir program_dev
wget https://mirror.esocc.com/apache/trafficserver/trafficserver-3.2.4.tar.bz2
下載完成后,解壓縮
tar jxvf trafficserver-3.2.4.tar.bz2
ll
注意:使用首先生成3種類型的標簽,分別是ctags,cscope和lookupfile插件需要用到的標簽。
4.2生成ctags標簽(請參照下一種方法來生成tags并設置)
ctags -R trafficserver-3.2.4
將在trafficserver-3.2.4同級目錄生成一個名為tags的文件
現(xiàn)在進入vim環(huán)境,輸入以下命令
。篶d ~/program_dev/trafficserver-3.2.4 “切換到當前源碼目錄
。簊et tags=~/program_dev/tags ”設置tags選項為當前目錄下的tags文件
注意這里設置tags需要明確寫出絕對路徑,否則將會導致很多函數(shù)找不到。tags文件是個純文本文件,你可以使用vim打開它看一下。
另外,根據(jù).vimrc中的配置,使用下面的快捷鍵來分別生成tags文件和cscope文件
cd trafficserver-3.2.4
find ‘pwd’ -name “*.cpp” -o -name “*.cc” -o -name “*.c” -o -name “*.h” 》 cscope.files
cscope -bqk -i cscope.files
ctags和cscope會自動區(qū)分和處理各自的索引。
這里注意使用cscope的方法,cscope在生成索引文件時,只搜索c,lex和yacc的文件(后綴名為.c,.h,.l,.y),要生成c++的文件索引,就得使用上面的方法,先產(chǎn)生一個文件列表cscope.files,然后讓cscope為這個列表中的每個文件都生成索引。
將上述內(nèi)容寫成一個腳本make_cscope_ctags_index.sh,其內(nèi)容如下:
#!/bin/bash
find 。 -name “*.h” -o -name “*.c” -o -name “*.cc” 》 cscope.files
cscope -bkq -i cscope.files
ctags -R
保存在~/.vim/中,現(xiàn)在將其復制到trafficserver-3.2.4下面,并運行下面的命令
/bin/bash make_cscope_ctags_index.sh
命令在trafficserver-3.2.4下面生成如下文件
cscope.files
cscope.in.out
cscope.out
cscope.po.out
tags
發(fā)表評論
共0條
評論就這些咯,讓大家也知道你的獨特見解
立即評論以上留言僅代表用戶個人觀點,不代表系統(tǒng)之家立場