231 votes

Dans Vim, j'aimerais revenir en arrière d'un mot. Le contraire de "w".

Lorsque vous utilisez vim, vous pouvez avancer mot par mot avec w . Comment faire pour revenir en arrière ?

9 votes

viemu.com/vi-vim-cheat-sheet.gif Il contient un grand nombre de clés vim dans un format graphique simple. Je recommande vivement de l'imprimer et de l'avoir à côté de votre ordinateur si vous avez l'intention d'utiliser vim de manière intensive.

0 votes

1 votes

Voir aussi : stackoverflow.com/questions/5125270/ si vous souhaitez revenir en arrière jusqu'à la fin du mot précédent - en utilisant ge et gE

310voto

gefei Points 7319

Utilisez b pour revenir en arrière d'un mot.

Vous pouvez également consulter W y B avancer/retourner a WORD (qui consiste en une séquence de caractères non-blancs séparés par un espace blanc, selon la norme :h WORD ).

53 votes

Par souci d'exhaustivité ge va revenir en arrière jusqu'à la fin d'un mot. gE ira en arrière jusqu'à la fin d'un WORD

4 votes

@Peter Rincker : et e y E ira de l'avant.

3 votes

Quelle est la différence entre b et B ? Ou w et W ? Le comportement semble le même.

91voto

Steve McKinney Points 943

Ça m'aide d'y penser comme suit :

b pour aller au début du mot actuel ou précédent

w pour aller au début du mot suivant

e pour aller à la fin du mot courant ou suivant

ge pour aller à la fin du mot précédent

Essayez :h word-motions pour plus de détails et pour savoir comment les combiner avec des opérations.

8voto

FreudianSlip Points 1421

Utiliser "b" pour revenir en arrière - juste testé dans vi - fonctionne bien.

4voto

brother-bilo Points 280

Alternativement, si vous utilisez w , b , W y B pour naviguer dans les lignes en sautant par-dessus les mots, considérez les alternatives suivantes qui peuvent être plus rapides si elles sont utilisées correctement.

f<char>    # jump to next occurrence of <char> to right (inclusive)

ou

F<char>    # jump back to next occurrence of <char> to left (inclusive)

Si vos mots sont séparés par des espaces

Si vos mots sont séparés par <space> vous pouvez sauter sur les mots par des espaces :

f<space>;;;; donde ; répète la commande précédente, de sorte que vous avancez d'un pas par espaces

F<space>;; sauter en arrière par l'espace

Si vos mots sont séparés par une ponctuation et non par des espaces

remplacez simplement <char> avec une ponctuation, par exemple .

La méthode de ponctuation n'est pas efficace pour le défilement, mais si vous savez où vous voulez sauter, elle peut généralement y arriver en un saut ou deux.

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