VIM検索の優れた機能、つまりすべての検索結果と対応する行番号がリストされています。例えばパイプの検索結果をVIMの他のタブ/ウィンドウ/バッファに返す
:
:g/for.*bar/#
質問:パイプへの「簡単」な方法があります/別のウィンドウ/タブ/バッファにこれを置きますか?
乾杯!
VIM検索の優れた機能、つまりすべての検索結果と対応する行番号がリストされています。例えばパイプの検索結果をVIMの他のタブ/ウィンドウ/バッファに返す
:
:g/for.*bar/#
質問:パイプへの「簡単」な方法があります/別のウィンドウ/タブ/バッファにこれを置きますか?
乾杯!
:g/for.*bar/#
の出力を新しいバッファにパイプする方法がわかりませんが、私はvimgrep
を使用して同じ結果を得る方法を知っています。
試してみてください。
vimgrep "for.*bar" %
:copen
は今、あなたはすべての検索結果とバッファを持っていても:cn
と:cp
でそれらの間を移動することができます。
は受け入れ答えを褒める:help quickfix
これは私が探しているもののように見えます。あなたはとても親切で、「%」が何をしているのか説明できますか?正確に「コペン」を意味するものは、vimgrepの結果はどこに行きますか? – ezdazuzena
@ezdazuzena確かに '%'はコマンドモードで現在のファイルへのパスに置き換えられます。 – Benj
ありがとうございます。私の質問の2番目の部分に関して、私はここで答えを見つけました:http://blogs.gurulabs.com/stuart/archives/2006/08/vimgrep-copen.html – ezdazuzena
私は、バッファへの直接出力をリダイレクトする方法を知りませんが、あなたは、ファイルにそれを送信するためにredir
を使用することができます。
:redir > file
:g/for.*bar/#
:redir END
やレジスタへ:
:redir @a
:g/for.*bar/#
:redir END
詳細については、:help :redir
を参照してください。
...そして、レジスタは ':put! aを新しいバッファに入れます。 –
を見てみましょう:私は、\のSS(ショー検索)でのQuickFixウィンドウの上に直接、最後の検索を開き、あなたの.vimrcに追加したマッピングをした:
" show last search results on the quickfix window at windows bottom
nnoremap <silent><leader>ss :vimgrep /<C-r>\// % <CR> :botright copen <CR>
BR
「このリストと数字を新しいバッファに入れる」という意味ですか? – romainl
@romaini:確かに。例えば、分割ウインドウにコピーするもの、スクロールするもの。今すぐリストを取得しますが、移動すると「消えます」。 – ezdazuzena