私はCtagsが大好きですが、私は新しいメソッドを追加するたびにファイルを作り直す必要がありますが、それだけでなく、私のVIMセッションを再開する必要がある場合はさらに悪い私は、ルートフォルダで作成し、すべてのフォルダにアクセスできるようにするよりも、作業するすべてのディレクトリに対してCTagsファイルを作成する必要があることに気付きました。VIMの自動作成CTags
ヒントと推奨事項を教えてください。
私はCtagsが大好きですが、私は新しいメソッドを追加するたびにファイルを作り直す必要がありますが、それだけでなく、私のVIMセッションを再開する必要がある場合はさらに悪い私は、ルートフォルダで作成し、すべてのフォルダにアクセスできるようにするよりも、作業するすべてのディレクトリに対してCTagsファイルを作成する必要があることに気付きました。VIMの自動作成CTags
ヒントと推奨事項を教えてください。
私はすでにあなたが必要とするものを正確に行うためのプラグインを書いています:Indexer。
これは、プロジェクト全体に対して痛みのない自動タグ生成を提供し、タグを最新の状態に保ちます。独立して使用することも、別のプラグインのアドオンとして使用することもできますproject.tar.gz。
最初の方法では、あなたがこのよう~/.indexer_files
でプロジェクトを宣言することができます。
[CoolProject]
/home/user/cool_project
[AnotherProject]
option:ctags_params = "--languages=c++"
/home/user/another_project/src
/home/user/another_project/lib
そして、あなたは/home/user/cool_project
から任意のファイルを開くときに、すべてのこのプロジェクトは、ctagsのでインデックス化されます。タグはバックグラウンドで生成されるので、ctagsがタグを生成する間、待つ必要はありません。別のプロジェクトからタグを開くと、そのタグも生成されます。異なるプロジェクトのタグは決して混在しません。プロジェクトからファイルを保存すると、タグは自動的に更新されます。気にする必要はありません。ただ機能します。
詳細については、Indexer + Vimprjの使用方法を詳しく説明しているVim: convenient code navigation for your projectsの記事を参照してください。これにより
このソリューションをお寄せいただき、ありがとうございます。 「プロジェクト」について詳しく説明できますか?あなたがプロジェクトについて話すとき、私は開発を行うフォルダについて話しています。また、各ファイルタイプを定義する代わりにワイルドカードを使用できますか? *。 * のではなく * 。 c、*。 h ... –
はい、私は "プロジェクト"はあなたのソースファイルのディレクトリです。 (または、いくつかの異なるディレクトリ)。 –
あなた.vimrc
set tags=./tags,tags;$HOME
にVimは、現在のディレクトリに、それは$HOME
に達するまで、最大、まず現在のファイルのディレクトリにtags
ファイルを探します。
自動tags
世代はあなたの.vimrc
にAutoTag様または1つのライナー付きプラグインを使用して行うことができます:http:
autocmd BufWritePost,FileWritePost *.js silent! !jsctags . &
タグファイルを別のディレクトリの下に置くこともできます。私の雇用場所では、各プロジェクトのルートの_localというディレクトリに多くの自動生成されたものを置いています。 'set tags = _local/tags; /'は、プロジェクトディレクトリの上で検索しても見つからない_localという名前のフォルダを探していても、うまく動作します。マインド私はまた、現在のバッファのディレクトリに常に 'lcd'を持っています。 –
@ dash-tom-bang' set autochdir'を試してください。 – romainl
正常に動作していれば 'autochdir'を使用していました。 :)私は具体的なことは覚えていませんが、数年前にvimを使い始めたときにはそれはありませんでした。 (Google検索では、最近の7.3ビルドで修正されたバグがありますが、私の解決策は確実に機能しています。http://vim.wikia.com/wiki/Set_working_directory_to_the_current_fileも参照してください) –
あなたはvimの中でのctagsを自動化に関する既存の問題をすでに見えたが、ここにあるしていることがあります。 //stackoverflow.com/questions/155449/vim-auto-generate-ctags – mwcz