C 開発用のもう 1 つの便利なプラグインはcscope
です。Ctags で定義にジャンプできるように、Cscope は呼び出し元の関数にジャンプします。
~/bin/ ディレクトリに cscope がある場合は、以下を .vimrc に追加し、g^] を使用して呼び出し関数に移動します (:help cscope を参照)。
if has("cscope")
set csprg=~/bin/cscope
set csto=0
set cst
set nocsverb
" add any database in current directory
if filereadable("cscope.out")
cs add cscope.out
" else add database pointed to by environment
elseif $CSCOPE_DB != ""
cs add $CSCOPE_DB
endif
endif
ほとんど忘れていました... ctags と同じように、データベースを生成 (および定期的に更新) する必要があります。次のスクリプトを使用します
select_files > cscope.files
ctags -L cscope.files
ctags -e -L cscope.files
cscope -ub -i cscope.files
「select_files」は、Makefile から C およびヘッダー ファイルのリストを抽出する別のスクリプトです。このようにして、プロジェクトで実際に使用されるファイルのみにインデックスを付けます。