物置き

[vim][VisualStudio] visual_studio.vimに「ファイルから検索」を実行する機能をつけてみた

visual_studio.vimには検索結果ウインドウを表示する機能があるのに、
検索そのものを実行する機能がない、というのはなんとも不便だと思ったので、追加してみまんた。

使い方

検索の実行

n」で、実行します。
(ほかの機能をmapしている場合はmapされません。)

実行すると、対話的に検索する単語を入力する状態になります。
デフォルトで、カーソル上にある単語が表示されます。
また、ビジュアルモードでテキストを選択した状態で「n」だと、
選択したテキストが表示されます。



検索単語を入力してEnterキーで、次は検索オプションを入力する状態になります。
この段階でキャンセルするときはで。

オプション一覧

i 大文字小文字を無視する
w 単語単位
r 正規表現を使用する
p プロジェクトから検索(指定しない場合はソリューション単位)



検索が完了すると、結果がQuickfixに表示されます。



この辺のインターフェイスgrep.vimと同じ感じ(のつもり)にしました。

選択対象ファイルの設定

g:visual_studio_find_file_extension変数で、検索対象ファイル拡張子を設定します。
デフォルトでは、「*,c;*.cc;*.cxx;*.c++;*,h;*.hh;*.hxx;*.hpp;*.moc;*.tcc;*.inl」です。

検索対象パスについて

VisualStudio上の検索ダイアログ上からだと、
検索パスを設定することができますが、ここでは、選択対象を
「現在のプロジェクト」か「ソリューション全体」に限定しています。
(特定のパスの検索は:grepを使えばいいと思ったので)

ダウンロード

visual_studio080910.tar.gz

なお、このファイルはd:id:ampmmn:20080811で修正したものに対して、さらに修正を加えたものです。