Bloque visual insertar nueva línea

10

Trabajo mucho con el modo de bloque visual, que encuentro realmente útil para cambios rápidos en muchas líneas.

Pero algo que estoy luchando por hacer es insertar una nueva línea como esta:

La selección se anota como []:

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

Presiono Iy puedo agregar texto para insertar antes de t:

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

Cuando presiono <Esc>me sale lo siguiente:

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

Pero ahora, si presiono en <CR>lugar del texto que quiero agregar, la nueva línea se inserta como se desea, pero no para las otras líneas. El resultado es el siguiente:

Some 
text
Some text
Some text
Some text
Some text

¿Sabes por qué esto no funciona?

Nota: dado que funciona cy rno estoy seguro de por qué esto no funciona ...

nobe4
fuente
Si la intención es crear una nueva línea después de algún carácter para las líneas seleccionadas, podemos probar una macro. Vaya a la enésima columna e ingrese una nueva línea y
repítala
Sí, o una sustitución también podría funcionar, pero mi intención es encontrar la forma de hacerlo dentro del modo de bloqueo visual.
nobe4
44
Esto no se puede hacer en modo de bloqueo visual, desafortunadamente. Use una sustitución o una grabación en su lugar.
romainl

Respuestas:

4

El bloqueo visual Ino funciona así. Lo mejor que probablemente puede hacer es algo como lo siguiente.

Resalte una columna en modo de bloque visual (con [b]un carácter resaltado como en su pregunta):

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

Realice una sustitución en el área visual con \%V:

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

Vim insertará el '<,'>para usted cuando presiona :, por lo que no necesita escribir ese bit.

Y el resultado:

aaa
bbb
aaa
bbb
aaa
bbb
aaa
bbb
cccccc

Si necesita dividir líneas en un bloque visual a menudo, es probable que esté fácilmente disponible en su historial, y es posible que no necesite hacer nada más que resaltar, entonces :<up><return>.

Antonio
fuente
Buen uso de \%Vincluso si no es lo que quería, aceptaré esto (pero lo que quiero parece imposible de todos modos ^^)
nobe4