Desabilitar o prompt para recuperar automaticamente quando os dados salvos automaticamente forem iguais ao arquivo


8

Quando eu mato o emacs (com killall emacsum prompt do shell, por exemplo), e eu estava editando um arquivo, o Emacs reinicia com uma mensagem

filename tem dados salvos automaticamente; considere Mx recuperar esse arquivo

Se eu havia salvado o arquivo recentemente, modificado e desfeito as alterações, para que pareçam com a versão salva, essa mensagem será exibida, mesmo que o arquivo de salvamento automático não tenha alterações (visto pelo tamanho do arquivo ou M-x diff)

Como isso pode ser desativado?

Não encontrei algo na documentação oficial nem no emacswiki .

Respostas:


4

Eu não acho que exista um mecanismo interno para isso, então você pode precisar criar o seu próprio.

Não tenho uma resposta direta, mas tenho algo semelhante na minha configuração: não quero que seja solicitada confirmação ao matar um arquivo que corresponda ao que está no disco. Para verificar isso, estou executando o diff e, em seguida, verificando a saída - você provavelmente pode fazer algo semelhante para o seu caso de uso.

(defun my/matches-file-p ()
  "Return t if the current buffer is identical to its associated file."
  (autoload 'diff-no-select "diff")
  (when buffer-file-name
    (diff-no-select buffer-file-name (current-buffer) nil 'noasync)
    (with-current-buffer "*Diff*"
      (search-forward-regexp "^Diff finished \(no differences\)\." (point-max) 'noerror))))

(defun my/kill-buffer ()
  "Kill the current buffer.
Don't prompt for confirmation if the buffer is unmodified or matches its file."
  (interactive)
  (when (my/matches-file-p)
    (set-buffer-modified-p nil))
  (kill-buffer))

Analisando mais o caso de reversão automática. Parece que esse prompt vem after-find-file, que está olhando para timestamps ( file-newer-than-file-p). Não vejo uma maneira direta de personalizar ou aconselhar esse comportamento. Talvez você possa aconselhar after-find-filecomparar o arquivo com o arquivo de salvamento automático e definir o warnargumento como nulo se as coisas corresponderem.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.