Vimはブロックに書き込みをしたい

Vimはブロックに書き込みをしたい

このファイルがあります。

dvb-apps:
dvb-apps:
dvb-apps:       
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
~                                                                                                                                     
~   

DVBを適用した後、ブロックに説明(コピーして貼り付け)を入力したいのですが、結果は次のとおりです。

dvb-apps:
dvb-apps:
dvb-apps:       
dvb-apps:
dvb-apps:
dvb-apps: Bla bla,description bla bla bla
dvb-apps: Bla bla,description bla bla bla
dvb-apps: Bla bla,description bla bla bla
dvb-apps: Bla bla,description bla bla bla
dvb-apps:
dvb-apps:

コンソールで標準貼り付けを使用すると、次の結果が表示されます。

dvb-apps: Bla bla,description bla bla bla
Bla bla,description bla bla bla
Bla bla,description bla bla bla
Bla bla,description bla bla bla
dvb-apps:
dvb-apps:
dvb-apps:

ブロックに貼り付ける方法は?

答え1

Xでは、マウスの中央ボタンを使用し、挿入モードを使用してコンテンツをvimのドキュメントにコピーしますが、別の行にコピーします。

次に、新しく挿入された最初の行の最初の列に移動し、CTRL+vコンテンツを選択できるビジュアルブロックモードに入ります。ここで唯一の問題は、行の長さが異なるため、視覚ブロック内でコンテンツ全体を選択するのが難しいことです。すべての行のすべての列を選択する前に、最後の行にスペースを追加する必要があるかもしれません。

これを完了したら、[d削除]キーを押して最初のターゲット行の正しい列に移動し、[貼り付け]を使用しますp

あるいは、タスクを実行しても問題に対する実際の解決策ではなく、vimで実行する必要がある場合は、2つの別々のファイルが作成されます。

dvb-apps:
dvb-apps:
dvb-apps:       
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
dvb-apps:
~       

そして




たぶん、あえて、説明します。
たぶん、あえて、説明します。
たぶん、あえて、説明します。
たぶん、あえて、説明します。


~

その後、使用

paste <FILE1> <FILE2> > <OUTPUTFILE>

両方のファイルをまとめてみてください。

答え2

そして私無条件プラグインの貼り付け、強制的に貼り付けることができます。ブロックする、それはあなたが望むものです。したがって、挿入モードに移動してマウスの中央ボタンを使用して貼り付けるのではなく(すでに実行したと仮定)、"*プラグgbpインマッピングと一緒にレジスタを使用します。

答え3

xclip1つ(または同様のもの)がある場合は、sudo apt-get install xclipコマンドラインからシステム(Xorgなど)のクリップボードにアクセスできますxclip -o。このようにして、!paste - <(xclip -o)キーマップ(たとえば<LEADER>p)を次のように定義できます。

:map <LEADER>p .,$!paste - <(xclip -o)<NL>

現在の<LEADER>pXクリップボードの内容を貼り付けるために使用されます。

<LEADER>デフォルトは\(したがって上記の例では\p貼り付けコマンドが実行されます)ですが、何でも変更できます-(例:via :let mapleader="-")。

関連情報