F: Wie füge ich Text in einen Puffer ein / ändere ihn, ohne es zu undo
merken?
Hier ist der Anwendungsfall. Ich habe am Anfang jeder Datei einen Kommentarblock, der unter anderem einen Zeitstempel für die letzte Änderung an einer Datei aktualisiert. Ich möchte diesen Zeitstempel ändern können, ohne dass die undo
Einrichtungen dies bemerken.
Der Grund, warum ich undo
hier kurzschließen möchte, ist der folgende Randfall, der beim Bearbeiten / Kompilieren von LaTeX-Dokumenten auftritt (und wahrscheinlich auch andere, aber dies ist derjenige, der mich am häufigsten verrückt macht):
- Nehmen Sie eine kleine Änderung an der Datei vor, um zu sehen, wie sich dies auf das kompilierte Dokument auswirkt
- Speichern Sie die Datei (wodurch der Zeitstempel aktualisiert wird).
- Führen Sie
latex
die Datei aus - Entscheide, dass die Änderung schlecht ist
undo
die Veränderungen
Das Problem in Schritt (5) ( undo
) besteht darin, dass die in Schritt (1) vorgenommene Änderung nicht rückgängig gemacht wird, sondern die in Schritt (2) aktualisierte Zeitstempel-Aktualisierung rückgängig gemacht wird. Das würde mich nicht stören (ich könnte es einfach noch undo
einmal tun ), außer dass es sich auch bis zum Zeitstempel oben in der Datei bewegt, was fast immer viele, viele Zeilen von der eigentlichen inhaltlichen Änderung entfernt ist. Es ist sehr irritierend und bricht meine Konzentration völlig.
Ich stelle die Frage in Bezug auf eine Datei, die ich besuche, aber es geht allgemeiner darum, Puffer zu ändern.
Also: Wie kann ich verhindern, undo
dass eine bestimmte Änderung an einem Puffer bemerkt wird?
undo
würden beide rückgängig gemacht.
with-undo-collapse
Makro, das sehr nützlich war: emacs.stackexchange.com/a/7560/2418