78 votes

Comment effectuez-vous une recherche dans l'historique des commandes de vim?

J'aimerais aussi avoir la recherche suivante dans Vim

 (reverse-i-search)`':
 

Entrez un mot de votre commande précédente et vous obtiendrez la commande complète.

Je connais l'outil chronologique de Vim

 q:
 

Cependant, ce n'est pas très utile comme recherche inversée.

Comment pouvez-vous effectuer une recherche inverse similaire dans Vim et dans Terminal?

122voto

sumek Points 3803

Tapez q: en mode normal pour ouvrir la fenêtre de commandes. Vous pouvez rechercher / éditer ici en utilisant les commandes vim habituelles. Vous commencez en mode normal. Appuyez sur 'Entrée' pour exécuter une commande.

Cette approche vous permet de rechercher dans toute la commande et pas seulement au début de la ligne.

83voto

Mykola Golubyev Points 21210

Entrez les premières lettres de votre commande précédente et appuyez sur la flèche <Haut>.

 :set li<up>
:set lines=75
 

N'oubliez pas de vérifier l'option d'historique et de la définir sur une valeur suffisamment grande

 :set history=1000
 

12voto

Chas. Owens Points 40887

Voici la documentation de l'historique de la ligne de commande de Vim , ainsi que cette partie de la documentation sur l'historique de la ligne de commande de Vim qui couvre les liaisons de touches dans l'historique. On dirait que vous pouvez dire :foo et ensuite appuyer sur la flèche vers le haut pour trouver la dernière commande qui a commencé avec foo.

5voto

Vic Goldfeld Points 426

Je cherchais aussi (enfin après vous vous demandez pourquoi il n'a pas été construit pour un certain temps), et décidé que je ne pouvais pas résister à fouetter jusqu'à une mise en œuvre, donc, ici, vous allez: https://github.com/goldfeld/ctrlr.vim

Il devrait fonctionner comme le shell--eh bien, il reste encore une ou deux choses de base manquantes (comme appuyer sur ^R une fois de plus pour passer au prochain match), mais tout ce que j'utilise est dans cette première version, et j'ai l'intention d'ajouter le reste dans les semaines à venir, car j'ai du temps.

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