34

現在、多くのクラス、メソッド、関数、変数などを使用するファイルに取り組んでいます。それらすべての宣言に行くことは可能ですか? これらの宣言の一部は同じファイルにありますが、他のファイルは別のファイルにあることを考慮してください (開かれていない可能性があり、宣言がどこにあるかはわかりませんが、存在します)。宣言がディレクトリの 1 レベル上にある場合はどうなるでしょうか。それが1レベル下の場合はどうなりますか?

これは、話しているプログラミング言語によって異なる方法で行われますか、または宣言を見つける手順は言語に関係なく同じですか?

私は読んでいて、解決策はタグに関連しているようです。ただし、特に場合によっては他のファイルの定義について話していることを考慮して、これをどのように達成できるかを(段階的に)知りたいと思います。

これは IDE で実行できることは知っていますが、vim でどれだけ異なることができるか知りたいです。

Vim の新規インストールしかありません。プラグインはまだインストールしていませんが、必要に応じてインストールします。おそらく、これはプラグインの有無にかかわらず実行できます。

前もって感謝します!

4

3 に答える 3

30

タグの設定はそれほど難しくありませんが (Vim のほとんどのものと同様)、IDE に比べて自動ではありません。

  1. まず、ctagsツールが必要です。現在最も一般的なのはExuberant Ctagsで、ctags.sourceforge.netにあります。
  2. 次に、プロジェクト内のすべてのファイルのタグ データベース(ファイル名tags)を作成する必要があります。これは通常ctags -R .、プロジェクト ルートから実行することによって行われます (また、Vim 内からも 経由で実行されます:!ctags ...)。Exuberant Ctags は41 の言語をサポートしており、正規表現を使用して拡張することもできます。
  3. 最後に、タグ データベースを取得するように Vim を構成する必要があります。を使用:set tags=./tags;すると、ファイルのディレクトリをルート ディレクトリまで検索します。特定のグローバル インクルード ディレクトリがある場合は、それらを追加できます。
  4. <C-]>これで、や などの Vim のタグ機能を使い始めることができます:tag

タグ データベースを定期的に更新する必要があります。これを自動的に実行できるプラグイン ( easytags.vim など) があります。

于 2013-11-13T09:46:50.967 に答える