Pegue la selección de bloque visual en sus propias líneas

12

No estoy realmente seguro de cómo describir lo que me gustaría hacer. Básicamente, me gustaría usar el modo de bloque visual para seleccionar una región de texto y luego pegarla "como una colección de líneas" en lugar de como un rectángulo.

a b
c d
e f
g h

después de presionar gg0<c-v>Gyel rectángulo a/c/e/gestá en el registro de extracción predeterminado (olvidé cómo se llama).

Si luego pego el rectángulo p, obtengo lo siguiente:

aa b
cc d
ee f
gg h

Me pregunto si es posible pegar una selección de rectángulo / bloque visual en un grupo de líneas por sí mismo, como si fuera una selección visual ordinaria.

a
c
e
g
a b
c d
e f
g h
Gregory Nisbet
fuente
Puede establecer el tipo de registro en linewise antes de pegar. Algo como esto: :call setreg('+', @+, 'V'). Dependiendo de su sistema operativo y su configuración clipboard, es posible que deba hacer esto para los registros *o en su "lugar. Es más largo escribir que la respuesta a continuación, pero aún puede ser útil en contextos más complicados.
lcd047

Respuestas:

15

Prueba esto:

:put! "
  • :put: inserta el contenido del registro especificado
  • !: insertar antes de la línea actual (el valor predeterminado es después)
  • ": el registro sin nombre (verifique los :help registersdetalles)

También puede hacerlo desde el modo de inserción: Ctrl- r+"

mMontu
fuente