257 votes

raccourci vi pour supprimer "jusqu'au prochain caractère X".

Je comprends que vi dispose de touches de raccourci pour supprimer des caractères, des mots et des lignes avec différentes options.

Cependant, je n'ai pas pu trouver cela :

  • supprimer du curseur jusqu'au prochain caractère spécifié

Par exemple, je pourrais taper du" s'attendant à ce que le rédacteur en chef "supprime jusqu'au prochain " le caractère est trouvé"

Le plus proche que je connaisse est d9w9 est le nombre de mots à supprimer.

Quelqu'un sait-il si cela est possible ?

2voto

yAnGwAwA Points 21

Je suggère d'utiliser delete with pattern ,

d/<pattern>

d est une action de suppression

/ vim est un signe de recherche

Par exemple, le texte suivant est une chaîne de connexion MySQL. Je veux changer le mot de passe redhat au nouveau

root:redhat@tcp(localhost:3306)/?parseTime=True

En mode commande, je clique sur w (passer au mot suivant), le curseur se déplace sur " :", cliquez sur w déplace le curseur sur le premier caractère r de mot de passe redhat . maintenant cliquez d/@ supprimera les caractères éventuels jusqu'à ce que @ qui, dans ce cas, supprimera le redhat . d/@tcp est préférable si la chaîne a plus d'un @ le modèle plus particulier est plus précis.

2voto

Googooboyy Points 145

Personne n'en a parlé, alors j'ai pensé que je devais partager cela aussi.
Si vous voulez supprimer jusqu'à un caractère, vous pouvez utiliser dt et tapez le caractère souhaité. Si vous voulez supprimer jusqu'à un caractère mais que celui-ci se trouve également au milieu, par exemple (hell(o) world) et que vous voulez supprimer de hell(o) jusqu'à la dernière ) et votre curseur est sur le h vous pouvez taper un nombre, dans ce cas 2dt) cela fera sauter le premier ) .

Vous pouvez également utiliser de (supprimer la fin), ici par "fin" il faut penser "fin du mot (pas de la ligne)" donc si vous voulez supprimer par exemple .world sur (hello.world) et que votre curseur est sur le point, vous pouvez taper de .

J'espère que cela vous aidera

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X