2010-11-12 14 views

Respuesta

353
dgg 

borrará todo desde su línea actual hasta la parte superior del archivo.

d es el comando de eliminación, y gg es un comando de movimiento que dice ir al principio del archivo, por lo que cuando se utilizan juntos, significa eliminar desde mi posición actual al principio del archivo.

+20

Y kdgg hará lo mismo excepto que no eliminará la línea en cuestión. – Rook

+0

¿Qué significa exactamente el 'gg' después de eliminar? – cxdf

+2

gg es un atajo de Vim - ": help gg" dice: Goto line [count], primera línea por defecto, en el primer carácter no en blanco | linewise |. Si startofline 'no está configurado, conserve la misma columna. –

34
kdgg 

borrar todas las líneas encima de la actual.

+5

Esto es un poco confuso; en realidad está moviendo el cursor una línea con 'k', luego borrando la línea actual y arriba con' dgg'. – dimo414

+2

Y use 5kdgg para eliminar todas las líneas 5 líneas por encima de la actual;) –

29

:1,.d borra las líneas 1 a la actual.
:1,.-1d borra las líneas 1 a la actual.

(Personalmente me gustaría usar dgg o kdgg como las otras respuestas, pero TMTOWTDI.)

+23

Intenté 'TMTOWTDI' pero parece que me deja en modo insertar sin borrar nada? –

+10

TMTOWTDI no es una de las más de una formas de hacerlo. – Sarah

+2

La única variante que también funciona en VI – basin

5

d1G = borrar arriba incluyendo la línea actual (vi)

3

Siempre que sabe estos comandos de vim:

1G -> go to first line in file 
G -> go to last line in file 

a continuación, la siguiente más sentido, son más unitaria y más fácil de recordar en mi humilde opinión:

d1G -> delete starting from the line you are on, to the first line of file 
dG -> delete starting from the line you are on, to the last line of file 

Saludos.

Cuestiones relacionadas