各位看官們,大家好,歡迎大家一起來聽大型章回體科技小說 :Vim。上一回咱們介紹了Vim插件中的ctags.
這一回,咱們繼續說Vim的插件。這一回我們要說的Vim插件叫:cscope。好了,還是那句話,閒話休提,
言歸正轉。讓我們一起talk Vim吧!
看官們, 咱們這回說的是Vim中的插件:cscope。cscope是一個工具,或者說一個應用軟件,它和ctags
類似,不過它比ctags要強大,但是,它可不是ctags的升級版本,因爲它還有一些ctags沒有的功能。
它也可以通過插件的形式運行在Vim中,這點和ctags是一樣的。cscope 可以把源代碼中文件名稱、函數
名稱、變量名稱收集在一起,然後生成一個數據庫。我們把該數據庫導入到Vim中就能方便地查找到文件、
函數和變量,甚至連函數之間的調用關係都可以找到。cscope 生成的數據庫文件,也可以比喻成地圖。不
過與ctags生成的地圖相比,這張地圖的精確度要高一些,因爲它可以定位一些ctags定位不到的東西,
比如文件名和變量名等。
看官們,咱們使用的Mint中默認沒有安裝cscope,因此需要咱們手動安裝一下。安裝方法如下:
- 1.檢查cscope:
首先使用命令:which cscope 確認系統中是否安裝了cscope,執行該命令後,沒有任何
的結果,這說明系統中沒有安裝cscope。
- 2.安裝cscope:
使用命令:apt-get install cscope 來安裝cscope,執行該命令後(需要使用root
帳戶才能執行該命令),得到下面的結果:
正在讀取軟件包列表... 完成
正在分析軟件包的依賴關係樹
正在讀取狀態信息... 完成
建議安裝的軟件包:
cscope-el
下列【新】軟件包將被安裝:
cscope
升級了 0 個軟件包,新安裝了 1 個軟件包,要卸載 0 個軟件包,有 388 個軟件包未被升級。
需要下載 143 kB 的軟件包。
解壓縮後會消耗掉 756 kB 的額外空間。
獲取:1 http://archive.ubuntu.com/ubuntu/ trusty/universe cscope i386 15.8a-2 [143 kB]
下載 143 kB,耗時 2秒 (70.9 kB/s)
Selecting previously unselected package cscope.
(正在讀取數據庫 ... 系統當前共安裝有 158092 個文件和目錄。)
Preparing to unpack .../cscope_15.8a-2_i386.deb ...
Unpacking cscope (15.8a-2) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
正在設置 cscope (15.8a-2) ...
- 3.確認cscope:
最後,我們還是確認一下是否安裝成功,確認的方法和步驟1中的一樣:which cscope,
執行該命令後,得到以下結果:/usr/bin/cscope。這說明系統中已經成功安裝cscope。
看官們,我們在前一回中說過,使用Vim+ctags 閱讀程序的源代碼時,可以快速地定位到函數定義的地方,
節省我們查找函數的時間,進而提高閱讀程序源代碼的效率。如果在把cscope也加入到Vim的插件中,也
就是Vim+ctags+cscope。那麼Vim的功能就得到了進一步的擴展,它不但可以快速定位函數,而且還可
以快速定位文件和變量,甚至是函數的調用關係也可以定位出來。看官們,是不是聽着都感覺手癢癢了呢,
那麼趕快自己動手試試吧。就像毛爺爺說的:自己動手,豐衣足食。
各位看官,關於Vim的插件:cscope,今天就說到這裏爲止。在後面的章回中,我們還會說其它的Vim插
件。欲知以後還有什麼插件?且聽下回分解。