- ¿Cómo se borra una palabra a la izquierda? En otras palabras, elimine la palabra cuando el cursor se encuentre al final.
- ¿Cómo se borran los caracteres al principio de la línea?
¿Cómo se borra el primer espacio en blanco de la izquierda?
¿Algún otro truco relacionado con la eliminación de palabras?
119
db
difícil recordar:5. dw or d<ctrl+rightarrow>
y6. db or d<ctrl+leftarrow>
d<leftArrow>
hacer en sudh
lugar, ya queh
es la clave para moverse a la izquierdaHe estado en este escenario muchas veces. Quiero deshacerme de todos los espacios en la línea 10 para que se unan a la línea 9 después de la coma.
Esto es básicamente una combinación de línea simple en VIM.
kJ
hace el truco (mira abajo)fuente
k
= Arriba,J
= Unir la línea de abajo a la actual con un espacio en el medio. También podrías hacerkgJ
para unirte sin un espacio.gJ
= Unir la línea de abajo sin espacios entre ellos. Vía cheatsheet: vim.rtorr.comPara responder al punto # 3,
diw
ydaw
son excelentes.fuente
db
borra las letras que preceden a la última letra pero aún deja la última letra.i
ya
lo están haciendo en medio de los comandos? Sé que el principiod
es "eliminar" y supongo que el finalw
es "palabra".:help text-objects
. El párrafo inicial es muy conciso y creo que lo describe muy bien.En modo de inserción:
De otra manera:
fuente
En modo comando:
bdw
, atrás borrar palabra.d^
(al primer no en blanco),d0
(al primer carácter)BdW
(ir al primer espacio en blanco eliminar al siguiente espacio en blanco)(Wiki de la comunidad, siéntete libre de hackear).
fuente
db
(si el cursor está después de la palabra) obdw
d0
(od^
si desea eliminar el primer carácter que no esté en blanco)dE
o dtSpacepara eliminar al primer espacio o d/\sEnterpara eliminar al siguiente carácter de espacio en blanco.Editar
Dado que la pregunta se ha cambiado de modo que 3 es eliminar el primer carácter de espacio en blanco a la izquierda, mi respuesta debería cambiar a:
dB
o dShiftTSpacepara eliminar de nuevo al primer espacio o d?\sEnterpara eliminar al carácter de espacio en blanco anterior.Ver:
fuente
bdw
. El carácter restante (el que originalmente estaba debajo del cursor)db
seguía molestándome.Siento que ninguna de las respuestas está completa:
En general, normalmente inicia una operación de eliminación utilizando
d<motion>
, y rara vez utilizandox
.Caracteres discretos:
<N>x
- Eliminar N caracteres a la derechad<N><left-arrow>
- Eliminar N caracteres a la izquierdad<N><right-arrow>
- Eliminar N caracteres a la derechaLímites de palabras:
d<N>b
- Eliminar desde el principio de la N-ésima palabra anterior hasta la posición actuald<N>e
- Eliminar desde la posición actual hasta el final de la N-ésima palabra siguiented<N>w
- Igual qued<N>e
pero con espacios en blanco finalesdiw
- Eliminar toda la palabra debajo del cursordaw
- Igual quediw
pero con espacios en blanco finalesLímites de línea:
d0
- Eliminar desde el principio de la línea hasta la posición actuald^
- Eliminar desde el primer carácter que no sea un espacio en blanco a la posición actuald$
- Eliminar desde la posición actual hasta el final de la líneafuente
/ <CR>x
(busque un espacio hacia adelante, presione enter para ir allí, x para eliminar)
Puede que haya una forma más mágica de hacerlo, pero no conozco ninguna.
fuente