P: Como insiro / modifico o texto em um buffer sem undo
perceber?
Aqui está o caso de uso. Eu tenho um bloco de comentários no início de cada arquivo que, entre outras coisas, atualiza um carimbo de data / hora para a alteração mais recente em um arquivo. Eu gostaria de poder modificar esse carimbo de data / hora sem que as undo
instalações percebam.
A razão pela qual eu quero undo
entrar em curto-circuito aqui é devido ao seguinte caso extremo, que surge ao editar / compilar documentos LaTeX (e provavelmente outros, mas esse é o que mais me deixa louco):
- Faça uma pequena alteração no arquivo para ver como ele afetará o documento compilado
- Salve o arquivo (que atualiza o registro de data e hora)
- Executar
latex
no arquivo - Decida que a mudança é ruim
undo
as mudanças
O problema na etapa (5) ( undo
) é que ela não desfaz a alteração feita na etapa (1), mas desfaz a atualização do registro de data e hora na etapa (2). Isso não me incomodaria (eu poderia apenas undo
novamente), exceto que também move o ponto até o carimbo de data / hora na parte superior do arquivo, que quase sempre está a muitas, muitas linhas da mudança substantiva real. É muito chocante e quebra completamente minha concentração.
Estou apresentando a pergunta em relação a um arquivo que estou visitando, mas geralmente trata-se de modificar buffers.
Então: como impedir que eu undo
observe uma modificação específica em um buffer?
undo
, desfaria os dois.
with-undo-collapse
macro que foi muito útil: emacs.stackexchange.com/a/7560/2418