2017-05-13 15 views
0

これはとコペンは私が再帰的にいくつかのディレクトリ内のパターンを検索する必要がある場合に何をすべきかです:だからチェーンvimgrepとVimの

:copen 20 

:vimgrep 'some-pattern' app/views/** 

、その後、私は入力する必要があります最終的に20行のquikfixウィンドウに "some-pattern"を含むファイルのリストを見ることができます。

これは私のニーズに完全に合っていますが、それらの2つのコマンドをチェーンする方法はありますので、vimgrepを求めるたびに結果をquickfixウィンドウにパイプします。 "?

可能な限り、私は標準のもの(.vimrcベースの方法)に固執し、ファイルを見つけるためにプラグインを使用しないことをお勧めします。

ちょうど1週間前にVimに切り替えました。ありがとうございました。

答えて

2

あなたのvimrcにこのスニペットを追加することができます:あなたは資格の一致があるクイックフィックス/ロケーションリストを移入:vimgrepまたは他のコマンドを実行するたび

augroup qf 
    autocmd! 
    autocmd QuickFixCmdPost [^l]* cwindow 
    autocmd QuickFixCmdPost l* cwindow 
    autocmd VimEnter  *  cwindow 
augroup END 

これは自動的にクイックフィックスウインドウを開きます。

例:

:vim foo **/*.js 
:lgrep bar *.rb 
$ vim -q <(grep baz test.txt) 

:help autocmd:help :cwindowを参照してください。

+0

まさに私が探していたものです、ありがとう! – gbarillot

0

ハハ!パイプ、ええ...私はただランダムに試しました:

:vimgrep 'some-pattern' app/views/** | copen 20 

それは働いた!とにかく、誰もが各vimgrepの後に自動的にそれを追加するヒントを持っている場合、私の質問はまだ開いています...(それは可能性があります悪い考えでも正当化することができます)。

+0

これはパイプではありません。 vimでは、これは 'bar'と呼ばれます。 ':help:bar'を試してください – lang2