16.4. Faire Revenir un Tampon

Si vous avez fait des changements importants à un fichier puis changez d'avis, vous pouvez vous en débarasser en lisant la version précédente du fichier. Pour faire ceci, utilisez M-x revert-buffer, qui opère sur le tampon courant. Faire revenir un tampon pouvant occasionner une perte importante de votre travail, vous devez confirmer cette commande avec yes.

revert-buffer laisse le point à la même distance (mesurée en caractères) du début du fichier. Si le fichier n'a été que légèrement édité, vous vous retrouverez dans la même partie de texte que précédemment. Si vous avez fait des changements radicaux, la même valeur du point dans l'ancien fichier peut adresser une partie de texte totalement différente.

Le retour marque le tampon comme "non modifié" avant que de nouveaux changements ne soient faits.

Certains types de tampons dont le contenu représente des bases de données autres que des fichiers, comme des tampons Dired, peuvent aussi être retournés. Pour ceux-là, faire revenir veut dire recalculer leur contenu à partir de la base de données appropriée. Les tampons créés explicitement avec C-x b ne peuvent être retournés ; revert-buffer reporte une erreur lorsqu'on lui demande de le faire.

Lorsque vous éditez un fichier qui change automatiquement et fréquemment--par exemple, un journal en sortie d'un processus qui continue de s'exécuter-il peut être intéressant pour Emacs de faire revenir le fichier sans vous le demander, lorsque vous visitez de nouveau le fichier avec C-x C-f.

Pour demander ce comportement, définissez la variable revert-without-query comme une liste d'expressions rationnelles. Lorsqu'un nom de fichier correspond à l'une de ces expressions rationnelles, find-file et revert-buffer le fera revenir automatiquement s'il a changé--en supposant que le tampon lui-même n'a pas été modifié. (Si vous avez édité le texte, il pourrait être mal venu d'annuler vos changements.)