熱搜:win11繞過(guò)硬件限制安裝 一鍵重裝Win10系統(tǒng) 最干凈的u盤(pán)啟動(dòng)盤(pán) 真正純凈版的win7系統(tǒng)
時(shí)間:2015-01-12 11:28:00 作者:qipeng 來(lái)源:系統(tǒng)之家 1. 掃描二維碼隨時(shí)看資訊 2. 請(qǐng)使用手機(jī)瀏覽器訪(fǎng)問(wèn): https://m.xitongzhijia.net/xtjc/20150112/34535.html 手機(jī)查看 評(píng)論 反饋
Source Insight是一款編輯器,擁有強(qiáng)大的功能,但適用于Windows系統(tǒng),那么Ubuntu系統(tǒng)該使用哪種編輯器呢?Vim就是Linux下很好的編輯器,下面小編就給大家介紹下如何在Ubuntu上安裝vim插件。
source insight是windows下的優(yōu)秀編輯器,適合閱讀管理代碼,主要有以下功能:
查找函數(shù),變量或者宏的定義。
查找函數(shù),變量或者宏的引用位置。
查找函數(shù)被調(diào)用的位置
查找某個(gè)符號(hào)在工程內(nèi)的所有匹配
由于unix哲學(xué)主張一個(gè)工具只做好一件事情,所以linux下并沒(méi)有這種集多樣功能于一體的軟件。vim是非常優(yōu)秀的編輯器,本文介紹如何通過(guò)安裝插件將vim武裝成和source insight一樣甚至更強(qiáng)大的工具。
我的環(huán)境是ubuntu12.04 LTS+vim version 7.3
1. ctags
ctags插件用來(lái)查找函數(shù),變量或者宏的定義,ubuntu下可以非常方便的安裝,
sudo apt-get install exuberant-ctag
在源文件目錄下執(zhí)行命令
ctags -R
會(huì)生成一個(gè)tags文件,里面包含了所有源文件的符號(hào)信息。在vim中,快捷鍵ctrl+]會(huì)跳到當(dāng)前函數(shù)的定義處。為了方便生產(chǎn)tags,設(shè)置快捷鍵F5生成tag,將下面命令加入到~/.vimrc
nnoremap 《F5》 :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q !禖R》
nnoremap 表示vim普通模式的鍵映射,
--c++-kinds=+p : 為標(biāo)簽添加函數(shù)原型(prototype)信息
--fields=+iaS : 為標(biāo)簽添加繼承信息(inheritance),訪(fǎng)問(wèn)控制(access)信息,函數(shù)特征(function Signature,如參數(shù)表或原型等)
--extra=+q : 為類(lèi)成員標(biāo)簽添加類(lèi)標(biāo)識(shí)
如果項(xiàng)目有多層文件結(jié)構(gòu),一般只在根目錄生成一個(gè)tag文件,那么子目錄訪(fǎng)問(wèn)不到tag文件,在子目錄中直接打開(kāi)源文件將找不到函數(shù)的tag,一個(gè)方便的做法是在.vimrc中將tag加到tags的查找路徑中,每個(gè)項(xiàng)目一項(xiàng)。
“project1”
set tags+=/project1/tags
ctags的快捷鍵:
ctrl+] 切換到定義處
g+ctrl+] 如果多處匹配,列出匹配tag列表供選擇
count+ctrl+t 后退count個(gè)tag
:count+tag 前進(jìn)count個(gè)tag
。簍s 列出匹配tag列表,存在多個(gè)匹配時(shí)
。簍n 跳到下一處匹配tag
。簍p 跳到上一處匹配tag
:tf 跳到地一個(gè)匹配tag
。簍l 跳到最后一個(gè)匹配tag
。簊et tags? 查看tags文件路徑
2.cscope
Ctags只能找到符號(hào)定義的地方,如果要像sourceinsight一樣,具備查找類(lèi)似函數(shù)調(diào)用查找,符號(hào)引用查找等高級(jí)功能,就要借助于cscope了。Cscope是類(lèi)似于ctags的工具,不過(guò)它的功能比ctags強(qiáng)大多了。
在當(dāng)前源文件目錄下執(zhí)行
cscope–Rbq
其中
-R:遞歸處理子層目錄
-b:生成數(shù)據(jù)庫(kù)后自動(dòng)退出
-q:生成cscope.in.out和cscope.po.out文件,加快cscope的索引速度
vim打開(kāi)源文件后,增加cscope數(shù)據(jù)庫(kù)到當(dāng)前環(huán)境中
。篶sadd cscope.out
發(fā)表評(píng)論
共0條
評(píng)論就這些咯,讓大家也知道你的獨(dú)特見(jiàn)解
立即評(píng)論以上留言?xún)H代表用戶(hù)個(gè)人觀點(diǎn),不代表系統(tǒng)之家立場(chǎng)