ホームページ >バックエンド開発 >PHPチュートリアル >ctags 対 gtags 対 phpctags
この 2 日間で、ソースコード解析ツールを ctags から gtags に移行し、phpctags も試しました。
以前の ctag の使用には 2 つの問題がありました。1 つは、同じタグに複数の定義がある場合、Ctrl+] を押しても最初のタグにしかジャンプできないことです。もう 1 つは、cscope を使用してタグの呼び出しレコードをクエリすると、一部のタグで結果が見つからないことです。
数年前に gtag に出会いましたが、当時は世界最高の言語をサポートしていなかったので役に立ちませんでした。今回のテストにより、前の 2 つの ctag の問題は解決できます。
インストール後、gtags.vim と gtags-cscope.vim を vim のプラグイン ディレクトリに手動でコピーし、次のように設定する必要があります:
let Gtags_Close_When_Single = 1let Gtags_Auto_Update = 0let g:cscope_silent = 1au FileType php,python,c,cpp,javascript,go map <C-]> :Gtags<CR><CR>au FileType php,python,c,cpp,javascript,go map <C-[> :Gtags -r<CR><CR>nnoremap <leader><C-]> :execute 'Unite gtags/def:'.expand('<cword>')<CR>nnoremap <leader><C-[> :execute 'Unite gtags/ref:'.expand('<cword>')<CR>
他のオプションについては、前の 2 つのファイルのコメントを参照してください。
ctags と互換性があり、php に最適化されていると言われている phpctags も試しました。実際の使用効果と ctags に違いはありませんが、ctags を使用した tagbar よりも tagbar-phpctags の方が優れています。