急いでいる人のために
Windows
- Cusorから
Microsoft の C/C++拡張
をuninstall -
http://adoxa.altervista.org/global/
から Win32用 binariesをダウンロード - ダウンロードしたzipを解凍。ここでは解凍したフォルダ名を
gnuglobal
に変更 -
gnuglobal
フォルダをC:\Program Files
内に移動 -
PATH
環境変数にC:\Program Files\gnuglobal\bin
を追加 - Cursorに
sailsxu.gtags
拡張を入れる - ここでCursorを再起動(PATHの有効化)
-
初回、および、関数・変数を追加・変更・削除した適当な時に プロジェクトルートから
gtags.exe
を実行してインデックス作り直す。これで、関数ジャンプができるようになります - 次のgtags作業ファイル名を.gitignoreにいれておくとよいと思います
GPATH GPOS GRTAGS GTAGS
関数・enum・structやマクロなどの定義へのジャンプできるようになりました。
(注:上記設定だけでは変数へのジャンプはできません)
TODO: llvm構成
macosx
- Cusorから
Microsoft の C/C++拡張
をuninstall brew install global
- Cursorに
sailsxu.gtags
拡張を入れる -
初回、および、関数・変数を追加・変更・削除した適当な時に gtagsコマンドを実行してインデックス作り直す (C/C++ソースが
src
フォルダにあるとしたら、プロジェクトルートでgtags -C src
を実行) - 次のgtags作業ファイル名を.gitignoreにいれておくとよいと思います
GPATH GPOS GRTAGS GTAGS
解説
MSのC/C++拡張の代わりに gtags を使用します。完全に代わりにはならないと思いますが、関数や変数名をクリックしての移動などには問題なく使えます。
gtagsでシンボルへのジャンプ情報インデックスを作成しています。そのインデックスを解釈するCursorの拡張で、sailsxu.gtagsを使っていますが、他のgtags拡張でもよいと思います。