スパム対策として書込み時にID/PWを要求されますが、ローマ字で ほげ/ホゲ で書き込めるようになります。

C/C++ 関数一覧

メッセージ

現在のファイルにある関数の一覧を表示する。

ctags を使う方法

VimTip? 79: How to use :grep to get a clickable list of function names
http://www.vim.org/tips/tip.php?tip_id=79

以下の関数を実行すると、エラーウィンドウに関数一覧を出力するので、
リストの上で<CR>を押せば定義位置にジャンプすることができる。
実行すると自動的にカレントバッファを保存するので注意。

function! ShowFunc()
   let gf_s = &grepformat
   let gp_s = &grepprg

   let &grepformat = '%*\k%*\sfunction%*\s%l%*\s%f %*\s%m'
   let &grepprg = 'ctags -x --c-types=f --sort=no -o -'

   write " カレントバッファを保存。ここをコメントアウトすれば保存しなくなる。
   silent! grep %
   cwindow

   let &grepformat = gf_s
   let &grepprg = gp_s
endfunc

スクリプト

上の tip を改良して、スクリプトに仕上げたものがここからダウンロードできる。
http://www.vim.org/scripts/script.php?script_id=397

C/C++ の他にも awk, Java, Javascript, Per, Python, Ruby ... など
Exuberant Ctags が対応する言語ほとんどに対応している。
けっこうまめにメンテナンスされているもよう。

簡易版

ctags など外部プログラムを使わなくてもできる方法。

:g/^\w\+.*(.*\_s*{

単に 行頭の[A-Za-z_]からなる単語→.* → (.* → 改行を含む空白 → { を検索しているだけ。
適用範囲は大分狭いので、コーディングスタイルが完全に限定されているとき向け。





トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-10-14 (火) 01:13:17 (1402d)