vim
コマンドラインモードを使用して特定のレジスタの値を挿入するのに問題があります。
normal
モードでは、レジスタ値を現在の行の下に配置するシーケンスを入力できます。"*p
"*
"*put
コマンドラインにコマンドを入力しようとすると、何も起こりません。一方、先ほどコマンドを実行すると、put
名前のないレジスタの値が配置されます。
その場合、問題は、コマンドラインモードを使用して名前付きレジスタの内容をどのように入力できるかということです。
編集#1
いくつかの追加テストを行った後、解決策を見つけました。
qz1"cpq
まず、シーケンスから貼り付けレジスタをキャプチャする場所を使用します。
qz -> start recording into register z
1 -> goto line 1
"cp -> put content of register c
q -> end recording
マクロを:@z
実行して必要な手順を実行できます。以下で使用する場合bufdo
:
:bufdo execute "normal @z"
このレジスタは、開いているすべてのバッファに新しい行として追加できます。
これは作業方法ですが、マクロなしで同じ作業を行うより効率的な方法があると思います。
答え1
これを行うには、次のコマンドラインバージョンを使用できますput
。
:put z
完全な構文についてはを:[line]pu[t] [x]
参照してください:help :put
。
注:Vimオタクの牡蠣は次のとおりです。この方法。