10

標準の GNUetagsは、 exuberant のようなディレクトリの再帰的なウォークをサポートしていませんctags -R。GNU etag にしかアクセスできない場合、bash シェル マジックを使用して etags を取得し、現在のディレクトリ内のすべての C++ ファイル*.cpp*.hファイル、および現在のディレクトリの下にあるすべてのディレクトリの TAGS テーブルを再帰的に生成して、TAGS テーブルを作成するにはどうすればよいですか? emacsTAGS テーブルのエントリを解決するための適切なパス名を持つ現在のディレクトリ。

4

4 に答える 4

19

多くの場合、 Emacs Wikiは、一般的な問題やベスト プラクティスに対する回答の良い情報源です。特定の問題については、Windows と Unixen の両方に解決策があります。

http://www.emacswiki.org/emacs/RecursiveTags#toc2

基本的に、コマンドを実行して.cppすべての.hファイルを検索し (たとえば、異なるファイル末尾を使用する場合はファイル セレクターを変更します.C)、結果を etags にパイプします。Windows には xargs がないようなので、標準入力から読み取れる最新バージョンの etags が必要です (標準入力を表す行末のダッシュに注意してください)。もちろん、最近のバージョンの etags を使用している場合は、xargs の代わりに dash パラメーターを使用することもできます。

:

cd c:\source-root
dir /b /s *.cpp *.h *.hpp | etags --your_options -

ユニックス:

cd /path/to/source-root
find . -name "*.cpp" -print -or -name "*.h" -print | xargs etags --append
于 2012-05-25T02:09:35.007 に答える
0

検索を使用します。男はあなたがする必要があるかどうかを見つけます。

于 2012-05-24T13:17:15.793 に答える