- Comment effacer un mot à gauche? En d'autres termes, supprimez le mot lorsque le curseur se trouve à la fin de celui-ci.
- Comment supprimer des caractères au début de la ligne?
Comment efface-t-on le premier espace à gauche?
D'autres astuces impliquant la suppression de mots?
119
db
mal à vous souvenir:5. dw or d<ctrl+rightarrow>
et6. db or d<ctrl+leftarrow>
d<leftArrow>
faitesdh
plutôt, carh
c'est la clé pour aller à gaucheJ'ai été dans ce scénario plusieurs fois. Je veux me débarrasser de tous les espaces de la ligne 10 pour qu'elle se joigne à la ligne 9 après la virgule.
Il s'agit essentiellement d'une simple jointure de ligne dans VIM.
kJ
fait l'affaire (regardez ci-dessous)la source
k
= Up,J
= Joindre la ligne ci-dessous à la ligne actuelle avec un espace entre les deux. Vous pouvez également fairekgJ
pour rejoindre sans espace.gJ
= Joindre la ligne ci-dessous sans espace entre les deux. Via cheatsheet: vim.rtorr.comPour répondre au point n ° 3,
diw
etdaw
sont excellents.la source
db
supprime les lettres précédant la dernière lettre mais laisse toujours la dernière lettre.i
eta
au milieu de ces commandes? Je sais que le débutd
est «supprimer», et je suppose que la finw
est «mot».:help text-objects
. Le premier paragraphe est très concis et je pense qu'il le décrit très bien.En mode insertion:
Autrement:
la source
En mode commande:
bdw
, retour supprimer le mot.d^
(au premier non-blanc),d0
(au premier caractère)BdW
(aller au premier espace blanc supprimer au prochain espace blanc)(Wiki communautaire, n'hésitez pas à pirater.)
la source
db
(si le curseur est après le mot) oubdw
d0
(oud^
si vous souhaitez supprimer jusqu'au premier caractère non vide)dE
ou dtSpacepour supprimer jusqu'au premier espace ou d/\sEnterpour supprimer jusqu'au prochain caractère d'espace blanc.Éditer
Étant donné que la question a été modifiée de telle sorte que 3 est supprimé par le premier caractère d'espacement à gauche, ma réponse devrait changer en:
dB
ou dShiftTSpacepour supprimer au premier espace ou d?\sEnterpour supprimer au caractère d'espace blanc précédent.Voir:
la source
bdw
. Le personnage restant (celui à l'origine sous le curseur)db
m'ennuyait toujours.Je pense qu'aucune des réponses n'est complète:
En général, vous démarrez généralement une opération de suppression en utilisant
d<motion>
et rarement en utilisantx
.Caractères discrets:
<N>x
- Supprimer N caractères à droited<N><left-arrow>
- Supprimer N caractères à gauched<N><right-arrow>
- Supprimer N caractères à droiteLimites de mots:
d<N>b
- Supprimer du début du N-ième mot précédent à la position actuelled<N>e
- Supprimer de la position actuelle à la fin du Nième mot suivantd<N>w
- Identique àd<N>e
mais comprenant les espaces blancs de findiw
- Supprimer le mot entier sous le curseurdaw
- Identique àdiw
mais comprenant les espaces blancs de finLimites de ligne:
d0
- Supprimer du début de la ligne à la position actuelled^
- Supprimer du premier caractère non-espace à la position actuelled$
- Supprimer de la position actuelle à la fin de la lignela source
/ <CR>x
(recherchez un espace en avant, appuyez sur Entrée pour y aller, x pour supprimer)
Il y a peut-être une façon plus magique de le faire, mais je n'en connais pas.
la source