9 votes

Dans Vim, pourquoi le comportement du sélecteur de mots "w" est-il incohérent lorsqu'il est précédé de "d" par rapport à "v"

Je me demande pourquoi dans Vim la touche w affecte une quantité de texte incohérente lorsqu'elle est précédée par d vs v. Par exemple, supposons que mon curseur se trouve sur le "t" de "two" dans ce texte :

one two three

Maintenant, dw produit :

one three

Mais vwd produit :

one hree

Y a-t-il un paramètre pour rendre cela plus cohérent, ou dois-je écrire ma propre définition personnalisée pour le corriger ?

De plus, le sélecteur en majuscules W est également incohérent, et je me demande s'il existe une touche pour sélectionner visuellement la même partie que ce que dW aurait supprimé ? La meilleure solution que je puisse trouver est vfespace qui est correct mais je me demande s'il existe quelque chose de plus court que j'ai raté et qui est intégré.

18voto

Kent Points 71470

Oui il y a une option : sélection qui par défaut est inclusive. cela fait que v sélectionne le dernier caractère.

:h 'sélection' 

pour vérifier les détails.

w est un mouvement exclusif. mais en mode visuel, cela dépend du réglage de la sélection.

vous pouvez définir sélection sur exclusif pour que vwd et dw se comportent de manière identique.

5voto

jbr Points 3125

La touche w fait la même chose dans les deux cas, elle place le curseur au début du mot suivant.

Ce qui est "incohérent" c'est la commande v.

Dans le premier cas, dw signifie supprimer jusqu'à, mais sans inclure, le curseur.

Dans le deuxième cas, vwd supprime la sélection, cependant la sélection inclut le curseur. Vous pouvez clairement voir cela lorsque vous faites vw.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X