Dans vim, comment puis-je retourner à l'endroit où j'étais avant une recherche?

StackOverflow https://stackoverflow.com/questions/53911

  •  09-06-2019
  •  | 
  •  

Question

Programmation dans vim, je vais souvent chercher quelque chose, tirer, puis revenir à l'endroit où j'étais, insérer, modifier.

Le problème est qu'après que j'ai chercher et de trouver, j'ai besoin de trouver MANUELLEMENT mon chemin de retour à l'endroit où j'étais.

Est-il un moyen automatique de revenir à l'endroit où j'étais quand j'ai entamé ma dernière recherche?

Était-ce utile?

La solution

Ctrl+O me prend à l'emplacement précédent.Ne sais pas à propos de l'emplacement avant la recherche.

Edit:Aussi, `. vous amène à la dernière modification que vous avez fait.

Autres conseils

Utilisation `` pour revenir à la position exacte vous étiez avant que vous avez cherché/a sauté, ou '' pour revenir au début de la ligne où vous étiez avant que vous avez cherché/a sauté.

Je l'ai toujours fait par réglage d'une marque.

  1. En mode commande, appuyez sur m [lettre].Par exemple, m a définit une marque à la ligne actuelle à l'aide de un comme la marque identifiant.

  2. Pour revenir à la marque de presse '[lettre].Par exemple, "un vous permet de revenir à la marque à l'étape 1.

Pour voir toutes les marques que défini actuellement, type :les marques.


Un peu sans rapport avec la note, je viens de découvrir autre chose chouette sur les marques.

Disons que vous sauter à la marque b en faisant "b.Vim définit automatiquement la marque ' (c'est un guillemet simple) pour être selon la ligne que vous étiez avant de sauter à la marque b.

Cela signifie que vous pouvez faire "b pour accéder à cette marque, alors n' '' (2 citations) de sauter en arrière pour qu'vous étiez avant.

J'ai découvert cette accidentellement à l'aide de la :les marques commande, qui affiche une liste de toutes les marques.

Vous devriez vraiment lire :help jumplist il explique tout cela très bien.

CTRL+O et CTRL+I, pour sauter en arrière et en avant.

La façon la plus simple est de mettre une marque, avec m[letter], puis y revenir avec '[letter]

J'utilise celui-ci:

nnoremap / ms/
nnoremap ? ms?

Ensuite, si je recherche quelque chose en utilisant des / ou ?, Je peux revenir en arrière rapidement par `s.Vous pouvez remplacer la lettre s à chaque lettre que vous aimez.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top