Digamos que estoy en la línea 20 y me gustaría tirar de la línea 4, ¿cómo puedo hacer eso?
Y de manera similar, ¿cómo puedo tirar de una línea en relación con la posición de mi cursor, digamos la 3 líneas arriba?
cut-copy-paste
pfrenssen
fuente
fuente
Respuestas:
De
:help :yank
:Entonces, para tirar de la línea 4, uno escribiría:
Tenga en cuenta que puede hacerlo fácilmente desde el modo de inserción con
<C-o>
; esto le permite ejecutar un comando, después del cual vuelve al modo de inserción; por ejemplo:Por supuesto, también puede usar otros rangos. Algunos ejemplos:
:1,3yank
:%yank
:.,$:yank
:.,+3yank
:-3,.yank
:-3yank
Las cosas más útiles para recordar acerca de los rangos:
:line1,line2command
..
es la línea actual (puede omitir el punto en la mayoría de los casos;:.,+3yank
y:,+3yank
son lo mismo)+n
y-n
.Ver
:help [range]
para más información.fuente
:4yank
con:4y
Además de la respuesta de Carpetsmoker, debo señalar lo increíble
:help :m
y:help :t
.Si desea copiar la línea 4 justo debajo de la línea actual, puede hacer esto:
o eso, si quieres copiar esa línea justo encima de la línea actual:
fuente
Además de los comandos ex-mode que tienes, también puedes lograrlo en modo comando, por ejemplo:
4GY''
- que significa: ir a la línea 4 (4G
), tirar de la línea (Y
) y volver a la línea anterior (''
).También puedes usar marcas de salto; para su segunda pregunta, por ejemplo:
mm3kY'm
- lo que significa: establecer la marca m (mm
), ir tres líneas hacia arriba (3k
), tirar de la línea (Y
), volver a la marca m ('m
).fuente
Simplemente escriba
tirar de la línea 4
irá al registro sin nombre. Luego, (por ejemplo) puede usar
p
para ponerlo en otro lugar. También puede usar[n]p
, por ejemplo, 10p para pegarlo 10 veces.Puede ponerlo en un registro con nombre como "a" con
fuente
4G"ayy
.Tu puedes hacer
Configurar el número relativo también ayuda a moverse entre líneas de código.
Ahora puede copiar la quinta línea sobre el cursor con:
fuente