人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

vimで指定したディレクトリに対して再帰的にgrepを行うにはどうしたらよいのでしょうか?

一致したキーワードの行一覧を表示し、一覧表示した後は、gfコマンドで該当のファイル(該当ファイルの行)へジャンプしたいと思っています。

grepに関して、便利なvimスクリプトや設定やTipsなどありましたら知りたいです。

windowsではgvim6.3、Linuxではvim6.3を使用しています。

●質問者: guyon
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:GF grep Linux TIPS vim
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● dasm
●35ポイント

Windows の場合は

grep /S pattern files

Linux (UNIX) では

grep -r pattern files

で再帰的に grep できます。

結果は、:copen で表示できます。

参考:

http://pinna.cside4.jp/tips/vim/search.html#GREP

http://pcmania.jp/~moraz/howto/regex.html#recursive_grep

◎質問者からの返答

ご質問どおりの期待結果を得ることができました。どうもありがとうございました。


2 ● たも
●35ポイント

Google で "vim recursive grep" と検索したら、これが最初に出ました。

grep.vim - Grep search tools integration with Vim : vim online

実際に :Rgrep と打ってみたら、検索パターン、ディレクトリ、ファイル名パターンを訊かれて、結果が一覧表示されました。

gf っていうか、結果のファイル名の上でリターンキーを押せば、そのファイルの該当行にジャンプします。

これは便利ですね。良い質問をありがとうございます。

◎質問者からの返答

ご回答ありがとうございます。

対話的にGrepを行うことができて良い感じです。GrepBufferコマンドでバッファをGrepできるのも魅力的です。Linuxのvimでは動作確認をとることができたのですが、winのgvimではgnu Grepやfindもインストールしたり、grep.vimの設定をしてみたりもしましたが、エラーが発生してRgrepコマンドが実行できませんでした。

普段はgvimの方がよく使うので、なんとか使えるようにしたいです。

grep.vimはディレクトリ指定の時に、タブ補完ができないことだけが残念です。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ