8.4. Historique du mini-tampon

Chaque argument que vous entrez dans le mini-tampon est sauvegardé dans une liste historique du mini-tampon ; vous pouvez donc l'utiliser plus tard pour un autre argument. Des commandes spéciales chargent le texte d'un argument précédemment entré dans le mini-tampon. Elles effacent l'ancien contenu du mini-tampon, vous pouvez donc penser à elles comme se déplaçant dans l'historique des arguments précédents.

UP, M-p

Se déplacer sur l'argument précédent sauvegardé dans l'historique du mini-tampon (previous-history-element).

DOWN, M-n

Se déplacer sur l'argument suivant sauvegardé dans l'historique du mini-tampon (next-history-element).

M-r expression-rationnelle RET

Se déplacer sur un argument précédent, dans l'historique du mini-tampon, correspondant à expression-rationnelle (previous-matching-history-element).

M-s expression-rationnelle RET

Se déplacer sur un argument suivant, dans l'historique du mini-tampon, correspondant à expression-rationnelle (next-matching-history-element).

La manière la plus simple de réutiliser un argument sauvegardé dans la liste historique est de se déplacer dans la liste un élément à la fois. Une fois dans le mini-tampon, tapez M-p ou la flèche de curseur vers le haut (previous-history-element) pour "vous déplacer" sur l'entrée dans le mini-tampon précédente, et utilisez M-n ou la flèche de curseur vers le bas (next-history-element) pour "vous déplacer" sur l'entrée suivante.

L'entrée précédente que vous rapportez de l'historique remplace entièrement le contenu du mini-tampon. Pour l'utiliser comme argument, quittez le mini-tampon de manière classique avec RET. Vous pouvez aussi éditer le texte avant de le réutiliser ; cela ne modifie pas l'élément de l'historique sur lequel vous vous êtes déplacé, mais votre nouvel argument va en fin d'historique comme il se doit.

Pour beaucoup d'arguments, il y a une valeur "par défaut". Dans certains cas, les commandes d'historique du mini-tampon connaissent la valeur par défaut. Vous pouvez alors insérer la valeur par défaut dans le mini-tampon en utilisant M-n pour vous déplacer "dans le futur" de l'historique. Nous espérons un jour rendre cette possibilité disponible toutes les fois où le mini-tampon a une valeur par défaut.

Il existe aussi des commandes qui recherchent en avant ou en arrière dans l'historique ; elles cherchent des éléments de l'historique qui correspondent à une expression rationnelle que vous aurez spécifiée dans le mini-tampon. M-r (previous-matching-history-element) recherche des éléments plus anciens dans l'historique, alors que M-s (next-matching-history-element) recherche dans les éléments plus récents. Par dispense spéciale, ces commandes peuvent utiliser le mini-tampon pour lire leurs arguments alors que vous êtes déjà dans le mini-tampon lorsque vous les appelez. Comme avec la recherche incrémentale, une lettre majuscule dans une expression rationnelle rend la recherche sensible à la casse.

Toutes les opérations dans le mini-tampon sont enregistrées dans une liste historique, mais il y a différentes listes historiques selon les types d'arguments. Par exemple, il y a une liste pour les noms de fichiers, utilisée par toutes les commandes attendant un nom de fichier. (Comme caractéristique spéciale, cette liste historique enregistre le nom de fichier absolu, ni plus ni moins, même si ce n'est pas de cette manière que vous avez entré le nom de fichier.)

Il y a plusieurs autres listes historiques très spécifiques, dont une pour les noms de commandes lues par M-x, une pour les noms de tampons, une pour les arguments de commandes comme query-replace, et une pour les commandes de compilation lues par compile. Finalement, il y a une liste historique "divers" que la plupart des arguments du mini-tampon utilisent.

La variable history-length spécifie la longueur maximale d'une liste historique ; une fois qu'une liste atteint cette longueur, l'élément le plus ancien est supprimé à chaque fois qu'un élément est rajouté. Si la valeur de history-length est t, cependant, la liste n'est pas limitée en longueur et les éléments ne sont jamais supprimés.