2016-07-15 2 views
0

vimの限られた範囲内で一致するものを検索してコピーしようとしています。 as mentioned in this answer。 私はvimの検索結果を新しいタブにコピーして貼り付ける方法

:'<,'>g/foo/y A 

が、ときに開いて新しいタブ:tabnewを使用して、新しいvimのタブに結果をコピーして、表示されるp 何を貼り付けないようにしようとしようとしています。
1.私の質問は、私は新しいタブにgsearchの出力をリダイレクトできますか?
2.出力をレジスタに正しくコピーして、レジスタから新しいタブに貼り付けるにはどうすればよいですか?オプション1のため

+0

出力を新しいタブに貼り付けることができます。 – SibiCoder

+2

あなたは同じレジスタから置く必要があるように 'a'を登録しようとしています: – romainl

答えて

2

ソリューション:

リダイレクトマッチしたテキストを新しいタブに

:tabnew | :normal! i^R/ 

^Rを置くためには、あなたはCtrlキーとV、その後、Rを押す必要があります。

上記のコマンドは、あなたのケースではfooである検索レジスタの内容を貼り付けます。他のレジスタの内容を入れたい場合は、その文字をスラッシュの代わりに置くことができます。

:tabnew | :normal! i^Ra 

これはグローバル検索コマンドの出力を保存しているレジスタaの内容を、貼り付けられます。オプション2のための

ソリューション:! は正しくコマンドが完璧に動作レジスタを介して

をコピーして貼り付けますグローバル検索の出力をレジスタaにコピーします。だから、あなたは直接:tabnewで別のタブを開き、iを押してモードを挿入し、その後CtrlキーRを押して貼り付け、または行くために"apを押して、aことができます。レジスタaの内容がそこに貼り付けられます。

+1

私は新しいタップで「Ap」を使い果たしていたと思います。私はレジスタAにコピーすると、それは前のコピーに追加されますか、それとも古いコピーがクリアされ、新しいコピーのみが保持されますか? –

+0

大文字を入力すると、同じレジスタに内容が追加されます。 pで貼り付けようとすると、最近削除/コピーされたテキストがペーストされます。コマンドラインモードで ':registers'とタイプすると、レジスタの内容を見ることができます。小文字を使用して何かをレジスターにコピーすると、その古い内容は消去されます。 – SibiCoder

関連する問題