¿Cómo copio / pego en modo vim ex?

10

Estoy cada vez más frustrado al escribir esto

:% s / some_really_long_string / some_other_really_really_long_string_that_may_or_may_not_related_to_the_first_one / gc

¿Hay alguna forma de copiar / pegar esas cadenas en modo ex?

iakie
fuente

Respuestas:

10

Puede usar Ctrl-Rpara insertar el valor de un registro en la línea de comando Ex. Si ha introducido algún texto en el registro predeterminado, por ejemplo, puede recuperarlo con Ctrl-R".

También hay atajos para algunos casos comunes. Puede insertar la palabra actual debajo del cursor con Ctrl-RCtrl-Wo el nombre de archivo actual con Ctrl-RCtrl-F.

Consulte estos temas para obtener más información, incluidos varios ejemplos más:

:help c_CTRL-R
:help cmdline.txt

También vale la pena leer los registros:

:help registers
Bill Odom
fuente
Pensé que Ctrl-Rsignificaba que tenía que hacer turno para obtener el capital R. pero cuando lo probé solo necesitas ctrl-rsin turno.
Trevor Boyd Smith el
10

Casi siempre evito escribir la cadena de búsqueda en el comando sustituto ejecutando primero una búsqueda (con /) o una "palabra debajo de la búsqueda del cursor" (con *) y luego ejecutando:

:%s//other_string/gc

Cuando falta el patrón de búsqueda, el comando sustituto usará el último patrón de búsqueda.

Además de hacer que escriba menos caracteres, el primer caso, al buscar /, permite probar primero un patrón de búsqueda complejo antes de ejecutar la sustitución. El segundo caso, buscar con *, permite evitar insertar los átomos de inicio / fin, es decir, \<y \>.

-

Por cierto, puedes evitar la gbandera agregando la línea

set gdefault

en su vimrcarchivo

mrucci
fuente