D: Come posso inserire / modificare il testo in un buffer senza undonotarlo?
Ecco il caso d'uso. Ho un blocco di commenti all'inizio di ogni file che, tra le altre cose, aggiorna un timestamp per l'ultima modifica a un file. Mi piacerebbe essere in grado di modificare quel timestamp senza che le undostrutture lo notino.
Il motivo per cui voglio cortocircuitare undoqui è dovuto al seguente caso limite, che emerge durante la modifica / compilazione di documenti LaTeX (e probabilmente altri, ma questo è quello che mi fa impazzire più frequentemente):
- Apporta una piccola modifica al file per vedere come influirà sul documento compilato
- Salva il file (che aggiorna il timestamp)
- Esegui
latexsul file - Decidi che il cambiamento è negativo
undoi cambiamenti
Il problema al passaggio (5) ( undo) è che non annulla la modifica apportata al passaggio (1), ma piuttosto annulla l'aggiornamento del timestamp nel passaggio (2). Ciò non mi disturberà (potrei solo di undonuovo), tranne per il fatto che si sposta anche fino al timestamp nella parte superiore del file, che è quasi sempre a molte, molte righe di distanza dall'effettivo cambiamento sostanziale. È molto sconcertante e rompe completamente la mia concentrazione.
Sto ponendo la domanda rispetto a un file che sto visitando, ma è più in generale sulla modifica dei buffer.
Quindi: come posso evitare undodi notare una specifica modifica a un buffer?
undosi annullerebbero entrambi.
with-undo-collapsemacro che è stata molto utile: emacs.stackexchange.com/a/7560/2418