我喜欢 emacs,但有些东西一直困扰着我。当我通过流浪汉编辑文件时,我似乎无法让 emacs 存储文件的本地备份。

目前,当我编辑本地文件时,一组旧版本存储在/tmp/myusername/emacs_backup 文件夹中。但是,当我通过 Tramp 进行 FTP 传输时,旧版本不会存储在那里(我认为它正在尝试远程存储它们?)。

这是我的 .emacs 设置:

(defvar user-temporary-file-directory
  (concat "/tmp/" user-login-name "/emacs_backup/"))
(make-directory user-temporary-file-directory t)
(setq make-backup-files t)
(setq backup-by-copying t)
(setq version-control t)
(setq delete-old-versions t)
(setq kept-new-versions 10)
(setq backup-directory-alist `(("." . ,user-temporary-file-directory)))
(setq tramp-backup-directory-alist backup-directory-alist)
(setq tramp-auto-save-directory user-temporary-file-directory)
(setq auto-save-list-file-prefix
      (concat user-temporary-file-directory ".auto-saves-"))
(setq auto-save-file-name-transforms
      `((".*" ,user-temporary-file-directory t)))

我不在乎 Tramp su 编辑是否也存储在 tmp 文件夹中 - 在我看来越多越好。任何帮助是极大的赞赏!

最佳答案

tramp-backup-directory-alist 的文档说



我将其解释为在远程机器(“他们的主机”)上备份流浪文件。查看 tramp.el 中的实现,这也是默认实现(如果 tramp-backup-directory-alist 未设置,则 backup-directory-alist 设置)。

TRAMP 假设远程文件的备份也应该始终是远程的,并在进行备份之前明确地预先添加方法/用户/主机位。如果您想更改行为,我认为您必须建议 tramp-handle-find-backup-file-name 调整文件名(因此它是有效的本地文件名)并与 backup-directory-alist 中的条目协调。

FWIW:从长远来看,将备份放在临时文件目录中不会有太大帮助。 “临时”类型违背了备份的目的。

关于linux - 设置 Emacs TRAMP 来存储本地备份,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3893727/

10-11 18:23