マクロを必要なレベルまで実行する方法はありますか?これは5@a
私のマクロが5行で実行されることを知っています。例:
set marker with `mc`
record a macro with `qa`
... now what?
明らかに、'c@a
カーソルをcのマークに移動します。バッファリングしようとしましたが、"b'c
それは単にマークに入ります。おそらく、非常に基本的な内容が見つからないか、間違った場所を探しているようです。
答え1
次のことを試すことができます。
:.,'c normal @a
これは以下を使用します。「リモート」:normal
コマンド@a
現在の行から始まり、表示された行まで、各行の最初の列の上にカーソルを置き続け、通常モードコマンドを実行します。氏。マークが大きくてすぐ上にある場合ウィム意思があるかどうか尋ねます範囲反転。
@a
5@a
たとえば、レジスタの内容がカウントを適用するのと必ずしも同じではありません。ㅏ実行するたびに常に1行下に移動する必要はありません(または移動の代わりに検索を使用するj
「マクロ」を検討してくださいk
。複数の一致がある行を完全に処理するには、より高い数が必要です)。
答え2
1つの回避策は、現在の選択を想定して動作するようにマクロを設定し、実行する前に操作したいファイルの部分を選択することです。