8

レジスタへの録音については知っていますが、最後の短い編集コマンドqを呼び出すのとほぼ同じ方法で、最後の録音をすばやく呼び出すように何かを設定できるかどうか疑問に思っていました(の説明については、こちらを参照してください)。..

私は知っていますが、レジスタがどこで使用されているか@@を実行した後にのみ機能するようです。たとえば、録音を行うには、 とタイプし、続けて作業を行う必要があります。次に、録音を実行するには、開始する前にそれを繰り返す必要があります。@zzqzq@z@@

nnoremap , @q私のハックソリューションは現在、で録音しqqて終了できるバインドqです。もっと良いものはありますか (たとえば、単一のキーストロークで特定のレジスタに記録するもの、または最後に記録されたマクロを具体的に繰り返すもの) 確かに、それはすでにかなり最適化されているため、大きな改善ではありません.

私にとって、使いやすい単一のレジスターは、一般に、取得するのに少し手間がかかる多数のレジスターよりも便利です。これは、私が物事を覚えるのが苦手で、自分が複数のことを効果的に利用しているとは思えないだけかもしれません.

4

2 に答える 2

2

すべてのマクロに同じレジスタを使用し、必要に応じて上書き記録したい場合は、そのレジスタを _vimrc ファイルに設定して実行し、@@「プライミング」することができます。

_vimrc ファイルに以下を追加します。

let @z = ''
execute 'normal @z'

これで、 register にマクロを記録するとすぐに、 でzすぐに実行できます@@

于 2013-05-23T20:39:13.800 に答える
0

あなたが尋ねたことと同様のことをするいくつかのプラグインを試すことができます:

RepeatLast.vimrecord-repeat.vim

別のオプションは、いくつかの関数を使用して、それをrepeat.vimに関連付けることです。

于 2013-05-23T20:55:09.657 に答える