ヤンクしたテキストをVIコマンドプロンプトにコピーする方法


118

ヤンクしたテキストをコマンドウィンドウに貼り付ける方法があるかどうかを知りたいです。たとえば、単語をヤンクして、ある場所でgrepしたい場合、 'p'を使用して単語を単純に貼り付けることはできません。ただし、クリップボードにコピーすると、Shift-Insertは同じものを貼り付けます。

ヤンクしたテキストをvimコマンドプロンプトに貼り付けるための微調整はありますか?

Windowsでgvimを使用しています。

回答:


174

使ってみる

<ctrl+r>"

ここで、 "はデフォルトのレジスタを表します。


7
これはコマンドラインだけでなく、通常の挿入モードでも機能することに注意してください。
user55400 2009年

25
*代わりにを使用すると"、代わりにシステムクリップボードの内容が表示されます(便利な場合があります)。
ダッシュトムバン

40

<C-R>"デフォルトのバッファを貼り付けます。または、を使用q:して、次のコマンド用のバッファーを開くことができます。試す:help q:


10
神聖ながらくたは、q:すごいことを超えています
Hubro

19
  • を押して、最初に通常モードであることを確認します Esc
  • 通常モードになったら、 :
  • その後、キーボードの組み合わせを使用ctrl-rして、入力し"

注:相対ファイルパスを含む完全な行をヤンクする場合、ラインフィードも貼り付けられます...すなわち :! touch src/bash/script.sh^M

最後を削除しないと、「\ r」を含む「面白いファイルパス」が作成されます^M...


13

ヤンクのステップを節約するには、Exで使用したい単語の上にカーソルがある場合は、次を使用します。

 <ctl-r><ctl-w>

これは、コマンドラインに貼り付けるためにヤンクを避けます。代わりに、カーソルの下の単語を直接コマンドラインに貼り付けます。例えば:

:%s/<ctl-r><ctl-w>/foo/g

5

コピーしたい単語だけの場合は、 <C-r><C-w>

  1. 単語の上にカーソルを置きます
  2. 次に、次のように入力できます :vim <C-r><C-w> *

3

*名前付きバッファを使用して、クリップボードにヤンクできます。たとえば、現在の行をクリップボードにコピーします。

"*yy

したがって、これを使用して行をコピーし、shift-insertを使用してコマンドラインに貼り付けることができます。

同様に、次のようにクリップボードから貼り付けることができます。

"*p

2

+少なくともMacではクリップボード。したがって"+yy、1行をクリップボードにヤンクし"+pて貼り付けるように書き込みます。ただし、Command-CとCommand-Vはいつでも使用できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.