46 votes

Vim - supprimer jusqu'à la chaîne recherchée

Existe-t-il une commande ou une combinaison de touches VIM qui permettrait de faire quelque chose comme dt/mystring (qui ne fonctionne pas) ?

dta essaie de trouver la lettre a sur ligne actuelle mais je voudrais supprimer tout ce qui va jusqu'à la chaîne recherchée (éventuellement sur une autre ligne).

84voto

Greg Reynolds Points 3675

Essayez ceci

d/mystring

Il ne supprimera pas la chaîne elle-même.

20voto

kev Points 1064

d/mystring supprime tout ce qui va jusqu'à mystring

Edit : aww, trop lent :/

19voto

Benoit Points 35553

Greg Reynolds a fourni une solution fonctionnelle.
Alternativement, si le modèle de recherche est déjà défini, utilisez :

dn

le site n motion est exclusif, donc le premier caractère de votre motif ne sera pas mangé.

Une autre alternative avec le Easymotion vous pouvez utiliser le plugin <leader><leader>t<first letter of pattern (le chef de file est généralement une barre oblique inversée) ; le caractère situé juste avant le motif se transforme alors en lettre ; tapez cette lettre et vous avez terminé.

0voto

Possum Gallo Points 71

Comment le faire sans mettre en surbrillance les recherches et sans gâcher votre / tampon :

d:echo search('yourpattern')<CR>

Par exemple, pour supprimer jusqu'à la ligne commençant par 'function' :

d:echo seatch('^function')<CR>

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