auto-save-mode
работает с файловыми буферами. Он просто не включается по умолчанию - это обычно происходит в (after-find-file)
.
Итак: Mx auto-save-mode
RET
По умолчанию будет записываться файл автосохранения к default-directory
буфера (или /var/tmp
или ~/
, в зависимости от разрешений на запись, см. C-hv buffer-auto-save-file-name
RET), которые могут быть немного неудобными для выяснения после сбоя, поэтому установка этого на что-то Стандарт, вероятно, является хорошей идеей.
Следующее обеспечило бы, чтобы эти файлы автосохранения записывались в ваш домашний каталог (или Mx customize-variable
RET my-non-file-buffer-auto-save-dir
RET), если auto-save-mode
вызывается в интерактивном режиме , Это, надеюсь, позволит избежать конфликта с другими видами использования auto-save-mode
с нефайлевыми буферами (например, в коде упоминается режим Mail).
(defcustom my-non-file-buffer-auto-save-dir (expand-file-name "~/")
"Directory in which to store auto-save files for non-file buffers,
when `auto-save-mode' is invoked manually.")
(defadvice auto-save-mode (around use-my-non-file-buffer-auto-save-dir)
"Use a standard location for auto-save files for non-file buffers"
(if (and (not buffer-file-name)
(called-interactively-p 'any))
(let ((default-directory my-non-file-buffer-auto-save-dir))
ad-do-it)
ad-do-it))
(ad-activate 'auto-save-mode)