回答:
以前の9つのヤンクは、から呼び出されるレジスタに保存され1
ます9
。最後から2番目のヤンクは"1p
で、前のヤンクはで、という"2p
ように呼び出すことができます。このコマンド:reg
は、貼り付けに使用できるレジスターを表示します。
ヤンクの寿命を延ばしたい場合は、レターレジスタを使用してください。
より曖昧なヤンク関連のコマンドについては:help "
、マニュアルを読んでください。
あなたが話しているコマンドは、いわゆる「無名」レジスタを使用します。非常に短期間の使用のみを目的としています。「これをここからヤンクして、あそこに置いてやる」みたいな。
何か他のことを行っている間に数秒以上ホールドしたい場合は、名前付きレジスタを使用する必要があります。
たとえば" a y y、カーソルがある行をa
レジスターにヤンクします。a
レジスタに関連する別のコマンドを入力しない限り、偶然に何かが誤って上書きされることはありません。数分後、数時間後、さらには数日後でも、入力" a pした行のヤンクしたコピーをa
レジスターからカーソルがあるものの下にドロップできます。
(これがうまく機能するためにset viminfo='50,\"1000
は、~/.vimrc
ファイル内に次のような行が必要です。Vimセッション全体でコンテンツを登録するなどのことを覚えておくように指示する必要があります。その後、ヤンクとプットの間で休暇を取ることができます!)
名前付きレジスター(az)は26個あります。これらを上記のように大文字ではなく大文字で指定すると、現在のレジスタの内容を置き換えるのではなく、現在のレジスタの内容に追加します。したがって、たとえば、h
一度に1つずつ登録して、非常に複雑なものを構築し、それをで一度にすべて落とすことができ" h pます。
レジスタ名はオプションであることに注意してください。これは、名前付きレジスタを使用できる場所で、すでに知っていて使用しているコマンドが多数あることを意味します。言う:help registers
の可能性のいくつかのアイデアを得るためにVimの中で。
また、Viマグを入手してください。
ヤンクレジスターを変更せずにdでテキストを削除する必要がある場合(たとえば、他のテキストを削除する前に貼り付ける準備ができていないため、テキストを既にヤンクしているなど)、ブラックホールレジスターを 使用できます_
。
あなたが行う場合は"_dd、たとえば、現在の行はすぐに削除され、忘れ去られます。
実際、私はこのレジスターをあまり使用しません。汎用レジスター(任意の文字レジスター)に保存するよりもキーストロークが少なくありません。汎用レジスターに保存した場合、少なくとも、削除した行は、レジスターを上書きするまで引き続き使用できます。必要が生じます。
削除するときに別のレジスタを使用するのを忘れがちな場合はdd、たとえば次のようにラッパーマクロを定義できます:noremap dd "add
。
y
、でヤンクし、d
やを含めて編集を続行し、ヤンクしたx
テキストをで貼り付けることができます"0p