Pegue una línea de corte completa al final de otra línea en vim

Pegue una línea de corte completa al final de otra línea en vim

Corté una línea ddy luego quiero pegar la línea completa al final de otra línea. Pero el problema es que debido a que ddcorta toda la línea, probablemente también incluya el carácter de nueva línea.

Y así, cuando pego vía p, automáticamente lo coloca en la siguiente línea. Y si hago Shift+ p, lo coloca antes de la línea que estoy intentando pegar.

Entonces, ¿hay alguna manera de pegar toda la línea que corté al final de una línea?

Respuesta1

Para cortar una línea sin una nueva línea, puede presionar d$o Ddesde la ubicación del cursor. Para pegarlo al final de otra línea, puedes ir hasta el final y simplemente presionar p. En caso de que no pueda pegar la línea como esperaba, puede ir al final de la línea donde deseaba pegar. Luego, presione iy luego presione <C-R>(Control-R) y "(comillas dobles). Se pegará el texto recientemente cortado o copiado.

Respuesta2

Después de pegar su línea después de la actual, psimplemente presione otra jen la línea anterior para unir las dos líneas, eliminando así el avance de línea no deseado...

Respuesta3

La mejor solución que se me ocurre por ahora es:

A<C-r>+

Significa: habilitar el modo de inserción al final de línea y pegar el contenido del registro +.

También pegará una nueva línea. ddsimplemente está operando en líneas completas (abreviatura de 1dd).

Respuesta4

De hecho, a menudo el caso de uso es el siguiente: desea eliminar una línea completa (incluida la nueva línea, por lo que d$/ Dno funciona, ya que deja una línea vacía), pero pega esto al final o dentro de alguna línea existente. sin crear uno nuevo.

MiComplemento de pegado incondicionalproporciona varias asignaciones que convierten automáticamente el contenido del registro al caso de uso deseado. Su ejemplo sería dd, pasar a la línea de destino $gcp. gcpes el mapeo parapegar con carácter.

información relacionada