2009-03-06 17 views
8

que permite decir que tengo este texto:copia vim y reemplazar texto

 
$test = 'lorem'; 
$test2= 'ipsum'; 

y quiero copiar y pegar en lorem ipsum. Traté de hacer yi' en lorem y luego fui a ipsum e hice ci', pero eso reemplazó mi pastebin con ipsum. y mi copia anterior estaba perdida.

Respuesta

7

yi' en lorem, mover a i del ipsum, vep?

+2

Bien, pero ahora el registro contiene ipsum. –

+0

Hm, entonces lo hace. Experimentos con. demuestre que implementa el pegar-reemplazar usando un eliminar, que pone ipsum en su registro predeterminado. Parece que esto es difícil de prevenir; http://stackoverflow.com/questions/290465/vim-how-to-paste-over-without-overwriting-register tiene una solución terriblemente complicada. – chaos

+1

Fácil de arreglar: "kyi 'en lorem, pasar a i de ipsum, ve" kp? Esto arrastra lorem en el registro k, lo pega sobre ipsum desde el registro k, y lo mantiene en el registro k listo para pegar de nuevo en cualquier otro lugar en el que desee colocarlo. ipsum aún termina en el registro predeterminado, pero eso ya no es un problema y también podría ser útil. – sampablokuper

2

¿Por qué no ingresas en un buffer nombrado usando "ayi', luego lo borras y lo pegas con d'i"aP?

5

Normalmente voy al comando sed.

:%s/ipsum/lorem/g 
  • % medios de hacer esto para cada línea
  • s significa sed, o buscar y reemplazar
  • g al final significa reemplazar cada ipsum con lorem; si omites esto, solo reemplaza al primero.
+1

no quiero usar reemplazar ya que eso significa que tengo que escribirlo –

+0

Un poco de trabajo si no quieres escribir ninguna palabra, pero puedes usar CR CW para pegar la palabra debajo del cursor, por ejemplo: :% s//, mueva el cursor a ipsum,: /g –

1

No estoy seguro de qué es lo que quiere exactamente.

Usted tiene esto en dos líneas:

$test = 'lorem'; 
$test2= 'ipsum'; 

Si vas a L y PA, se da un tirón lorem, luego ir a i del ipsum, y CW, y P y que reemplazará ipsum con lorem . Aún tendrá tanto lorem como ipsum en los registros.

Usted puede obtener el contenido de dichos registros con: reg

Si desea pegar algo de ellos y luego "* p, o": p, o "0p (verás que cuando escribe: reg)

0

Las palabras aquí para detener Markdown tratan el código que sigue como texto sin formato.

/lorem 
"adw 
/ipsum 
"aP"bdw 
`` 
"bp 

El primer texto busca 'lorem'; el siguiente borra la palabra en el búfer llamado 'a', dejando un par de citas vacías detrás en el texto. La siguiente búsqueda encuentra 'ipsum'; el "aP saca el búfer llamado 'a' antes de la palabra ipsum; el "bdw borra la palabra en el búfer llamado 'b', dejando atrás 'lorem'. La doble marca de retroceso regresa al lugar de donde provino la última búsqueda: las comillas vacías; y "bp extrae el buffer nombrado después de la primera cita.

También puede omitir el "a y "b, pero de esta manera, los valores están en las memorias intermedias denominadas "a y "b y pueden ser copiados una y otra vez, y otra vez hasta que no necesita los valores más.

3

Ir a la l de lorem, ye (tirar hasta el final de la palabra). Ir a la i de ipsum "_de (Borrar hasta el final de la palabra, poner el texto eliminado en el Registro agujero negro P (pasta registrarse antes del cursor)

En total:.. YEJ" _deP

0

Después lo hace en ci' impsum su lorem es en el registro "0. por lo tanto, se puede hacer ci'^R0 (^R significa Ctrl+r) y pegar el lorem ipsum en lugar de.

ver :help quote_number para obtener más información sobre los registros numerados.

0

vi'y en lorem

vi'p en ipsum

gvy a copiar de nuevo lorem registrar para su posible macro con vi'p

(qa - gvy - j - vi'p - q - @a - @@ - @@ ...)

9

Fácil:

"Kyi en lorem, mover a i del ipsum, cinco" KP

Este tirones lorem en registro k, lo pega más ipsum de registro k, y mantiene en el registro k listo para pegar nuevamente en cualquier otro lugar que desee colocar. ipsum aún termina en el registro predeterminado, pero eso ya no es un problema y también podría ser útil.

Si ya tiene algo en el registro k, puede usar un registro diferente en su lugar (simplemente use una tecla diferente).