2010-02-12 11 views
37

Sé que para eliminar n líneas, el comando es [n] dd, donde n es el número de líneas para eliminar.Eliminando hasta cierta línea en Vim

Pero, ¿qué ocurre si quiero eliminar hasta cierto número de línea? Diga, si estoy en la línea 65 y quiero eliminar hasta la línea 126 sin tener que hacer los cálculos, ¿cómo podría hacerlo?

+3

Los comandos "eliminar", "cortar", etc., son muy genéricos en vim: pueden tomar cualquier "operador de movimiento". 'd/hello' eliminará del cursor al siguiente' hello' por ejemplo. 'd''' eliminará de la posición actual a la línea de la última posición, etc. –

Respuesta

57

d126G

Borrar, número de línea, vaya.

Muchos comandos en Vim pueden ir seguidos de un comando de movimiento para especificar el alcance.

+0

+1' esto porque requiere menos caracteres (y al menos para mí, encaja mucho más en el "lenguaje de vim") que las otras opciones. – Amber

+0

Me gusta esto porque no tiene que usar el comando:, que parece relativamente torpe. – neuromancer

+0

Expone que puedes registrar tus comandos ':' en algún archivo (viminfo), y luego puede reutilizarlo. Me encanta 'q:' luego '/ searchforsomething' y luego presiono enter ... –

10
:,126d 

todo hecho.

+0

¡No creo que haya una sintaxis más corta que esta! (Pero estaré muy contento si estoy equivocado) – JohnnyQ

33

Use este comando:
65,126d

16
:.,126d 

. es la línea real. Si desea eliminar de la siguiente línea, puede usar .+1 en su lugar.

+1

+1 porque así es como lo hago ;-) –

+0

Esto es más seguro para mí, porque no siempre puedo mirar el teclado y verificar el número. – JohnnyQ

Cuestiones relacionadas