ロードされたバッファ/ファイルが2つあり、それらが両方とも分割ウィンドウで表示されているとします。アクティブなものではないバッファからラインをヤンクします
1つのバッファに留まる方法がありますか、他のバッファの行を指定し、それをアクティブなバッファに入れることができるようにヤンクしますか?
ロードされたバッファ/ファイルが2つあり、それらが両方とも分割ウィンドウで表示されているとします。アクティブなものではないバッファからラインをヤンクします
1つのバッファに留まる方法がありますか、他のバッファの行を指定し、それをアクティブなバッファに入れることができるようにヤンクしますか?
:let @0 = join (getbufline ('#' , 42), "\n") . "\n"
(他のバッファ内の行番号を他のバッファの名前と42
で#
を交換してください。)
両方のバッファがディスクに保存され、システム上でsedが利用可能な場合は、これを使用できます。
:r !sed -n -e 42p #
代替バッファからコピーする行に42を置き換えます。
このコマンドは、「その他」#
ファイルからのみ(-n
)印刷p
ライン42
に指示されている!sed
(がプログラムをSED)、からの出力を:read
ます。内容は現在の(%
)バッファの現在の行の下に挿入されます。
あなたは似たファイルを編集/比較していますか?おそらく、
:vert diffsplit otherfilename
または(bufferesが既に開いていた場合)
:windo diffthis
は合理的です。 diffmodeにおいて、グラブおよび挿入/他のバッファからのラインを交換するコマンド
:diffput
:diffget
およびそれらの通常のコマンドの等価物((_obtain)O DP、D)があります。
ニース、私は 'getbufline()'について知らなかった。ヤンクして1ステップで挿入するには、この ':put = getbufline( '#'、42)'を使うことができます。 – glts