主要就是記錄一下linux下vim關於cscope更新資料庫的配置。
平時使用cscope/ctags的時候檢視**還是比較方便的,但是編輯檔案的時候就比較雞肋了,原因在於cscope和ctags沒有整合自動更新,其實這些在配置檔案中新增簡單的幾句話就能實現了,筆者經過測試,認為在大專案中cscope增量更新的方式速度還是可以接受的(原理是不是搜尋目錄下檔案的時間戳?沒研究過)。
整個過程其實就是用了幾條簡單的shell命令,下面看看我的vim跟cscope相關的配置
if has("cscope") && filereadable("/usr/bin/cscope")
set csprg=/usr/bin/cscope
set csto=0
set cst
set nocsverb
" 新增cscope資料庫
if filereadable("cscope.out")
cs add cscope.out
" 新增環境變數中的cscope資料庫
elseif $cscope_db != ""
cs add $cscope_db
endif
set csverb
endif
" 適用於cscope的常規鍵位對映
nmap s :cs find s =expand("")
nmap g :cs find g =expand("")
nmap c :cs find c =expand("")
nmap t :cs find t =expand("")
nmap e :cs find e =expand("")
nmap f :cs find f =expand("")
nmap i :cs find i =expand("")
nmap d :cs find d =expand("")
" 筆者自己新增的鍵位對映
" 關閉資料庫連線
nmap k :cs kill cscope.out
" 開啟資料庫連線
nmap o :cs add cscope.out
" 儲存檔案並且更新資料庫
nmap w :w:!cscope -bqr
" 儲存檔案並且更新ctags
nmap u :w:!ctags -r
" 儲存檔案更新全部
nmap a w u
最後提一下,cscope和ctags的侷限性也比較明顯,但是配置起來是非常方便的,所以筆者的各個工作機上都使用了這些設定。
如果是長期使用的工作環境,建議配置一下clang編譯器,該編譯器的詞法分析功能開放得比較好,可以到網上搜尋一些相應的vimscript,也許對你有用。只是clang安裝起來比較麻煩而且依賴項比較多。
常用快捷鍵IDEA和VIM
idea ctrl shift backspace 退回到上次修改的地方 必備 ctrl shift f12 編輯器最大化 必備 ctrl alt f11 切換全屏模式 ctrl shift 塊注釋 必備 ctrl shift f 根據輸入內容查詢整個專案 或 指定目錄內檔案 必備 ctrl shi...
VIM編寫 C檔案和VIM設定
一 vi以及vim編輯器 首先ubuntu中自帶vi文字編輯器,但用過的人都知道,用它編寫一段程式手續特別繁瑣,寫錯了或者需要刪除的時候需要在各種模式下切換進行修改。vim可以看做是vi的高階版,在vim中編寫程式效率高而且實現了語法高亮。二 ubuntu中vim的安裝 1.ctrl alt t開啟...
linux命令列和vim快捷鍵
目的 快捷鍵可以大大的節省時間,提高效率,是每個學linux必備的一篇,當然有些是支撐我們其他學習必不可少的,所有花時間和精力整理一下是值得的。用的時候查詢一下,用的多了,自然就記住了。1 游標移動 ctrl a 游標回到命令列首。a ahead ctrl e 游標回到命令行尾。e end ctrl...