Entiendo que vi tiene teclas de acceso directo para eliminar caracteres, palabras y líneas con varias opciones.
Sin embargo, no pude encontrar esto:
- eliminar del cursor al siguiente caracter especificado
Por ejemplo, podría escribir du"
esperando que el editor "elimine hasta que se encuentre el siguiente "
carácter"
Lo más cerca que sé es d9w
dónde 9
está la cantidad de palabras que se eliminarán.
¿Alguien sabe si esto es posible?
Respuestas:
Utilice dtc, donde c es cualquier carácter, por ejemplo, para usted, que deseadt"
Esto eliminará hasta pero no incluye c .
Si tuvieras:
Y el cursor estaba en el primer espacio y tecleaste dt!, obtendrías:
También dfc.
Esto eliminará hasta e incluyendo c .
Usar df!el mismo ejemplo anterior te daría:
Casi cualquier "movimiento" se puede utilizar para los
d
,c
,y
y comandos similares.fuente
dT,
ydF,
.d/word
búsquedas hastaword
. Debe ir seguido de enter (para cerrar la búsqueda).Para eliminar reenviar hasta el tipo de carácter 'X' dtX
Para eliminar hacia adelante a través del tipo de carácter 'X' dfX
Para borrar hacia atrás hasta el tipo de carácter 'X' dTX
Para eliminar hacia atrás a través del tipo de carácter 'X' dFX
fuente
La entrada dt # (no un comando: úsalo como un movimiento como G)
se eliminará del cursor hasta, pero sin incluir el #. Puede sustituir cualquier carácter por #.
fuente
Parece que @Arcege ya respondió la pregunta, pero lo hice
d/l
para eliminar hasta el personajel
; otros personajes también funcionarían.fuente
w
se mueve a la siguiente palabra.l
pasa al siguiente personaje.Entonces es
d9l
para eliminar los siguientes 9 caracteres.fuente
l
es la tecla de flecha derecha de Vim, por lo que en realidad está eliminando a la derecha. Por el contrario,d9h
eliminaría 9 caracteres restantes.