Existe-t-il un moyen plus rapide d'effacer le texte sur une ligne que
- appuyer 0pour sauter au début, puis
- en appuyant sur d$pour supprimer jusqu'à la fin de la ligne?
Et si je voulais tout supprimer sauf l'indentation? Y-a-t-il un moyen de faire ça?
key-bindings
Robbie Wxyz
la source
la source
S
est synonyme decc
Oui. S'il y a une chose que j'aime chez Vim, c'est que la réponse à "Puis-je faire ça?" est presque toujours un oui catégorique .
0D Passe au début, puis supprime jusqu'à la fin de la ligne.
^D (pas Ctrl + D) sautera au premier caractère non blanc, puis supprimera jusqu'à la fin.
(PS, je viens de comprendre cela et je voulais partager avec d'autres noobs. S'il vous plaît laissez-moi savoir s'il y a une meilleure façon.)
la source
Effacer la ligne avec un (décalé) clé: S.
Cela conserve également le retrait.
Vous passez en mode insertion à la première position après le retrait, ou au début de la ligne - juste ce dont vous avez besoin pour remplacer une ligne - donc le nom
S
- comme substitut.:help S
la source
S
est une excellente clé.Avec le plugin " vim-textobj-line " de Kana , vous pouvez utiliser des opérations sur la ligne en retrait avec
il
(par exempledil
), ou la ligne entière sans la nouvelle ligne, avecal
(par exempleyal
). L'avantage de cette approche est subtil: au lieu d'avoir à penser aux deux mouvements (début, fin) pour l'opération souhaitée, vous spécifiez directement l' objet texte : i n l ine, a l ine.la source