日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Ubuntu >内容正文

Ubuntu

Ubuntu下创建Vim+Taglist+Cscope+Ctags组合编辑器

發(fā)布時(shí)間:2024/9/3 Ubuntu 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ubuntu下创建Vim+Taglist+Cscope+Ctags组合编辑器 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

ubuntu 中cscope的安裝

Ubuntu給我們安裝軟件提供了很大的便利,比如說(shuō),安裝vim,我們可以直接使用"sudo apt-get install vim"即可安裝!

同樣,cscope和ctags也可以使用相同方法安裝,這是多么暢快淋漓啊!謝謝Ubuntu給我們用戶如此便利!

另外可能需要cscope_maps.vim,下載地址為:http://www.kuaipan.cn/file/id_80368278446281791.htm

對(duì)于Taglist使用這個(gè)方法安裝不了,我們需要先下載,然后安裝完成:

首先上網(wǎng)下載Taglist插件,下載完成后解壓,再將文件下的taglist.vim使用cp命令拷貝到HOME/.vim/plugin文件夾下(cp -r taglist.vim ~/.vim/plugin)

這樣,vim+Taglist+cscope+ctags四種工具我們是創(chuàng)建好了,但是如何使用呢?

vim是一個(gè)非常好用的編輯工具,以下介紹幾個(gè)常用的底行模式命令:
(1). 設(shè)置縮進(jìn)

? ? :set? ? smartindent? ? ? // 設(shè)置縮進(jìn)

? ? ? :set smartindent shiftwidth=4? ? ? // C語(yǔ)言自動(dòng)縮進(jìn),縮進(jìn)值為4個(gè)字符寬度

(2). 顯示光標(biāo)行列信息

? ? ? :set ruler? ? ? ? ? ? // 顯示光標(biāo)信息(右下角)

(3). 查看制表符

? ? ? :set list? ? ? ? ? ? ? // 顯示制表符,以^符號(hào)顯示制表符的位置

(4). 查看行數(shù)信息

? ? :set number? ? ? ? //顯示行號(hào)(左邊)

(5). 關(guān)鍵字高亮

? ? :syntax on? ? ? ? ? ? ? ? ? //關(guān)鍵字高亮

(6).? 多文件編輯 ,在編寫程序時(shí)有可能需要同時(shí)編輯多個(gè)文件,在這種情況下,需要如下設(shè)置


? ? : split two.c? ? ? ? ? ? //? 多文件編輯

當(dāng)然,如果不嫌麻煩,可以在每次打開(kāi)Vim時(shí) 輸入如上命令,如我經(jīng)常用的是:set number :set ruler :syntax on :set smartindent 命令,如果將平時(shí)在底行模式下輸入的命令直接寫入配置文件,則以后使用Vim時(shí)不用再次輸入這些命令。

首先,試著在Vi的底行模式下輸入如下命令,如果不支持的話,去下載一個(gè)Vim的全版本,sudo apt-get install vim-full。

以下是修改配置文件的方法:

(1). 找到Vimrc文件。

(2) 查看文件的權(quán)限:

zhouyl@ubuntu:~$?cd /etc/vim
zhouyl@ubuntu:/etc/vim$?ls
vimrc? vimrc~? vimrc.tiny
zhouyl@ubuntu:/etc/vim$?ls -l vimrc
-rw-r--r-- 1 root root 3449? 9月 11 17:30 vimrc

(3) 如果沒(méi)有寫權(quán)限的話,修改權(quán)限,使我們可以修改該配置文件

? sudo chmod a+w vimrc
?(4)根據(jù)個(gè)人需要將上訴命令寫入配置文件
? ? ? 比如,我個(gè)人的設(shè)置是: syntax on , set ruler ,set number , set smartindent shiftwidth=4

下面貼上我的vimrc文件的配置信息:

  • 顯示行號(hào)? ?
  • set?number? ?
  • ? ?
  • "檢測(cè)文件的類型? ?
  • filetype?on? ?
  • ?
  • "記錄歷史的行數(shù)? ?
  • set?history=1000? ?
  • ?
  • "自動(dòng)對(duì)齊? ?
  • set?autoindent? ?
  • set?cindent? ?
  • ? ?
  • "智能選擇對(duì)齊方式? ?
  • set?smartindent? ?
  • ? ?
  • "tab為4個(gè)空格? ?
  • set?tabstop=4? ?
  • ? ?
  • "當(dāng)前行之間交錯(cuò)時(shí)使用4個(gè)空格? ?
  • set?shiftwidth=4? ?
  • ? ?
  • "設(shè)置匹配模式,輸入做括號(hào)會(huì)出現(xiàn)右括號(hào)? ?
  • set?showmatch? ?
  • ?
  • "編輯時(shí)顯示光標(biāo)狀態(tài)? ?
  • set?ruler? ?
  • ?
  • ?
  • "快速匹配? ?
  • set?incsearch?
  • ?
  • "修改文件自動(dòng)備份? ?
  • if?has("vms")?
  • ? ? set?nobackup?
  • else?
  • ? ? set?backup?
  • endif?
  • ?
  • """""""""""""設(shè)置開(kāi)啟ctags"""""""""""""? ?
  • set?tags=/home/zhouyl/linux-3.4.7/tags;"在這設(shè)置ctags?-R?后生成的tags文件所在目錄,下面有介紹,如果需要配置多個(gè)tags。只需如下再添加即可?
  • set?tags=/home/zhouyl/rap/libpcap-1.3.0/tags;?
  • set?autochdir?
  • ?
  • ?
  • """""""""""""""""Taglist設(shè)置"""""""""""""""""? ? ? ? ?
  • ""let?Tlist_Auto_Open?=?1? ? ? ? ? ? ?
  • let?Tlist_Ctags_Cmd?=?'/usr/bin/ctags'?
  • let?Tlist_Show_One_File?=?1?
  • let?Tlist_Exit_OnlyWindow?=?1?
  • ?
  • ?
  • """"""""""""""""""""""cscope設(shè)置""""""""""""""""""? ?
  • set?cscopequickfix=s-,c-,d-,i-,t-,e-?
  • if?has("cscope")?
  • set?csprg=/usr/bin/cscope?
  • set?csto=1?
  • set?cst?
  • set?nocsverb?
  • "?add?any?database?in?current?directory? ?
  • if?filereadable("cscope.out")?
  • cs?add?cscope.out?
  • endif?
  • set?csverb?
  • endif?


  • 因?yàn)閏scope將“ctrl+空格”作為映射鍵,但是這樣會(huì)調(diào)出輸入法,因此將~/.vim/plugin/cscope_maps.vim文件中的<C-@>替換為<F5>(或者是你沒(méi)有映射過(guò)的你喜歡的快捷鍵)

    進(jìn)入C語(yǔ)言源代碼目錄,建立符號(hào)表:
    mishuang@msh:~/linux/linux0.11/source-0.11> cscope -R
    ctr-D退出后,當(dāng)前目錄會(huì)多一個(gè)文件cscope.out,這個(gè)文件比tags大多了。

    使用指南
    1)使用下面的命令直接進(jìn)入main函數(shù)定義的地方,如果有多個(gè)的話,輸入索引號(hào),回車。
    wsh@wsh:~/linux/linux0.11/source-0.11> vi -t main
    2)將光標(biāo)停留在一個(gè)函數(shù)或變量上,"ctrl+]",將直接跳轉(zhuǎn)到定義該函數(shù)的地方。
    3)將光標(biāo)停留在一個(gè)函數(shù)或變量上,"ctrl+\"再輸入s,這樣就會(huì)出現(xiàn)所有調(diào)用、定義該函數(shù)的地方,輸入索引號(hào),回車即可。
    4)將光標(biāo)停留在一個(gè)函數(shù)或變量上,<F5>再輸入s,這樣就會(huì)出現(xiàn)所有調(diào)用、定義該函數(shù)的地方,輸入索引號(hào),回車后會(huì)以水平方式在另外一個(gè)窗口顯示。
    5)將光標(biāo)停留在一個(gè)函數(shù)或變量上,<F5><F5>再輸入s,這樣就會(huì)出現(xiàn)所有調(diào)用、定義該函數(shù)的地方,輸入索引號(hào),回車后會(huì)以垂直方式在另外一個(gè)窗口顯示。
    6)ctrl+t回到原來(lái)跳轉(zhuǎn)前的地方,連續(xù)按兩下''可以再回去。
    附:
    vim分割窗口的操作
    :split? ?? ?? ?? ?? ?? ?? ?? ?水平(上下)分割窗口
    :vsplit或者CTRL-W v? ?? ?? ?? ?垂直(左右)分割窗口
    :new? ?? ?? ?? ?? ?? ?? ?? ???水平分割窗口,創(chuàng)建空文件
    :vnew? ?? ?? ?? ?? ?? ?? ?? ? 垂直分割窗口,創(chuàng)建空文件
    vim多窗口操作命令
    :qall? ?? ?? ?? ?? ?? ?? ?? ? 退出所有窗口
    :wall? ?? ?? ?? ?? ?? ?? ?? ? 保存所有窗口
    :wqall或者:xall? ?? ?? ?? ?? ? 保存并退出所有窗口
    :wqall!或者:xall!? ?? ?? ?? ? 保存并退出所有窗口,如果有的文件只讀,不需要先設(shè)置寫權(quán)限
    :qall!? ?? ?? ?? ?? ?? ?? ?? ?強(qiáng)制退出所有窗口
    CTRL-W W? ?? ?? ?? ?? ?? ?? ? 在窗口間移動(dòng)
    CTRL-W O? ?? ?? ?? ?? ?? ?? ? 關(guān)閉其他所有窗口

    Ctrl+]:跳轉(zhuǎn)到定義
    Ctrl+o:返回

    Ctrl+/ c:查看調(diào)用
    Ctrl+/ s:查看所有引用

    出現(xiàn)錯(cuò)誤的解決方法如下:

    配置vim插件遇到下面的錯(cuò)誤

    處理 /root/.vim/plugin/cscope_map.vim 時(shí)發(fā)生錯(cuò)誤:
    第??? 1 行:
    E474: 無(wú)效的參數(shù): fileformat=unix^M
    第??? 2 行:
    E492: 不是編輯器的命令: ^M
    第?? 26 行:
    E492: 不是編輯器的命令: ^M
    第?? 27 行:
    E492: 不是編輯器的命令: ^M
    第?? 30 行:
    E15: 無(wú)效的表達(dá)式: has("cscope")^M
    第 166 行:
    E171: 缺少 :endif

    解決辦法

    插件內(nèi)的回車符,使用了^M——這是windows系統(tǒng)下專用的'\r\n'中的'\r'

    解決方法:
    用vim打開(kāi)該插件
    :set ff=unix
    :w
    重啟vim即可。

    :set fileformat=unix

    使用vim是出現(xiàn)了下面的錯(cuò)誤

    處理 /root/.vim/plugin/cscope_map.vim 時(shí)發(fā)生錯(cuò)誤:
    第?? 42 行:
    E568: 重復(fù)的 cscope 數(shù)據(jù)庫(kù)未被加入

    解決辦法:

    .vimrc中加上
    :set nocscopeverbose

    原因是/etc/vimrc中已經(jīng)將cscope.out讀入,在plugin中也讀了一遍,這樣就有兩遍

    <C+\>c 表示:先按ctrl+\,松開(kāi)然后按c


    與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖

    總結(jié)

    以上是生活随笔為你收集整理的Ubuntu下创建Vim+Taglist+Cscope+Ctags组合编辑器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。