将所有 Emacs 自动保存和备份放在一个文件夹中

将所有 Emacs 自动保存和备份放在一个文件夹中

我需要添加什么.emacs才能将我的所有自动保存和备份保存到一个目录中?我没有做很多.emacs配置,我就是无法让 emacsWiki 中的变量正常运行。有人介意分享一下他们是怎么做到的吗?我更愿意将保存的内容放在/tmp/emacs/{username}/{autosaves | backups}

额外奖励,配置与 TRAMP 相同

答案1

尝试这个gnu emacs 备份文件
GNU Emacs

;; Put autosave files (ie #foo#) in one place, *not*
;; scattered all over the file system!
(defvar autosave-dir
 (concat "/tmp/emacs_autosaves/" (user-login-name) "/"))

(make-directory autosave-dir t)

(defun auto-save-file-name-p (filename)
  (string-match "^#.*#$" (file-name-nondirectory filename)))

(defun make-auto-save-file-name ()
  (concat autosave-dir
   (if buffer-file-name
      (concat "#" (file-name-nondirectory buffer-file-name) "#")
    (expand-file-name
     (concat "#%" (buffer-name) "#")))))

;; Put backup files (ie foo~) in one place too. (The backup-directory-alist
;; list contains regexp=>directory mappings; filenames matching a regexp are
;; backed up in the corresponding directory. Emacs will mkdir it if necessary.)
(defvar backup-dir (concat "/tmp/emacs_backups/" (user-login-name) "/"))
(setq backup-directory-alist (list (cons "." backup-dir)))

版本埃马克斯如果你点击这个答案顶部的链接就可以找到。

答案2

emacswiki 上的自动保存

(setq backup-directory-alist
      `((".*" . ,temporary-file-directory)))
(setq auto-save-file-name-transforms
      `((".*" ,temporary-file-directory t)))

还有一些关于使用 TRAMP 调整设置的信息。

相关内容