ビジュアルブロック挿入新しい行


10

私はビジュアルブロックモードで多くの作業を行っています。これは、多くの行にわたる迅速な変更に非常に役立ちます。

しかし、私が苦労しているのは、次のように改行を挿入することです。

選択は次のように示され[]ます:

Some [t]ext
Some [t]ext
Some [t]ext
Some [t]ext
Some [t]ext

を押すIと、前に挿入するテキストを追加できますt

Some other text
Some [t]ext
Some [t]ext
Some [t]ext
Some [t]ext

を押す<Esc>と、次のようになります。

Some other text
Some other text
Some other text
Some other text
Some other text

しかし<CR>、追加したいテキストの代わりにを押すと、必要に応じて改行が挿入されますが、他の行には挿入されません。結果は次のとおりです。

Some 
text
Some text
Some text
Some text
Some text

これが機能しない理由を知っていますか?

注:これは機能しcrなぜこれが機能しないのかわかりません...


選択した行の一部の文字の後に新しい行を作成する場合は、マクロを試すことができます。n番目の列に移動して新しい行を入力し、選択
範囲

はい、または置換も機能する可能性がありますが、私の意図は、ビジュアルブロックモード内で行う方法を考え出すことです。
nobe4 2016年

4
残念ながら、これはビジュアルブロックモードでは実行できません。代わりに代替または録音を使用してください。
romainl 2016年

回答:


4

ビジュアルブロックIはそのように機能しません。おそらくあなたができる最善は次のようなものです。

ビジュアルブロックモードで列を[b]強調表示します(質問のように強調表示された文字を示します)。

aaa[b]bb
aaa[b]bb
aaa[b]bb
aaa[b]bb
cccccc

で視覚領域の置換を実行し\%Vます:

:'<,'>s/\%V/\r/

Vimは'<,'>を押すとを挿入する:ので、そのビットを入力する必要はありません。

そしてその結果:

aaa
bbb
aaa
bbb
aaa
bbb
aaa
bbb
cccccc

ビジュアルブロックでラインを頻繁に分割する必要がある場合、履歴ですぐに使用できる可能性が高く、ハイライト以外に何もする必要がない場合があります:<up><return>


\%Vそれが私が望んでいたものでなくても、うまく利用します私はこれを受け入れます(しかし、私が望むものはとにかく不可能に思えます^^)
nobe4
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.