Como posso ver as alterações feitas em um buffer modificado desde o último salvamento?

Respostas:

27

Você quer o comando M-x diff-buffer-with-file. Veja o manual:

diff-buffer-with-file é uma função Lisp compilada e interativa, carregada automaticamente, no `diff.el '.

(diff-buffer-with-file &optional BUFFER)

Veja as diferenças entre o BUFFER e seu arquivo associado. Isso requer que o programa externo diffesteja no seu exec-path.


Você também pode estar interessado em highlight-changes-modedestacar automaticamente e interativamente as alterações feitas no buffer depois que ele foi ativado.

PythonNut
fonte
Na mesma linha, highlight-changes-modehá também o diff-hlpacote no GNU ELPA.
Stefan
Sim, mas no momento só funciona para mostrar diferenças entre o buffer (salvo) e uma vcrevisão. Eu trabalhei na diferenciação do buffer (em oposição ao seu arquivo de backup) no diff-hl # 33 , mas ele está bloqueado em um bug no núcleo do Emacs.
precisa saber é o seguinte
Você tem um número de relatório de bug para isso?
Stefan
@ Stefan, ainda não cheguei a isso.
precisa saber é o seguinte
Foi consertado (provavelmente) há muito tempo: funciona em 2019! :)
mistige 27/07
13

Comando ediff-current-file:

ediff-current-file is an interactive autoloaded Lisp function in
`ediff.el'.

(ediff-current-file)

Start ediff between current buffer and its file on disk.
This command can be used instead of `revert-buffer'.  If there is
nothing to revert then this command fails.
Desenhou
fonte
1
ediff-current-filepossui alguns benefícios diff-buffer-with-filese você quiser uma revisão interativa das alterações, em vez de uma comparação simples. A revisão interativa ainda permite reverter seletivamente algumas partes, caso você não queira salvá-las. Consulte também emacs.stackexchange.com/a/3778/10614 para obter uma resposta mais completa.
Stéphane Gourichon