Emacs:更改自動儲存檔案的位置

Emacs:更改自動儲存檔案的位置

我目前有:

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

在我的 中.emacs,但這似乎並沒有改變自動保存文件的保存位置(它已經改變了備份文件的保存位置。M-x describe-variable顯示temporary-file-directory設置為/tmp/,但是當我編輯一個名為testing.md並且有未保存的更改的文件時,我得到一個在同一目錄中呼叫的檔案.#testing.md如何使該檔案轉到其他地方(例如/tmp/)?

我沒有運氣這些建議,歡迎提出任何建議!

如果有幫助的話,我使用的是 GNU Emacs 23.3.1,運行 Ubuntu。

答案1

這些文件不是自動保存的,它們是鎖定文件。嘗試一下ls -l,您會發現它們是指向虛假文件名的符號鏈接,這些文件名實際上是編輯過程的用戶名+pid。 AFAIK,沒有辦法定制它。 (重點是避免兩個不同使用者在編輯同一個檔案時出現問題 - 如果一個使用者更改了鎖定檔案位置,他們將不會知道彼此的編輯內容。)請另參閱這個問題

(順便說一句,使用/tmp保存備份確實不是一個好主意,除非您確定您是電腦上的唯一使用者。)

答案2

; auto save path
(defvar autosave-dir (concat "~/auto-save" "/"))
(make-directory autosave-dir t)
(setq auto-save-file-name-transforms
      `(("\\(?:[^/]*/\\)*\\(.*\\)" ,(concat autosave-dir "\\1") t)))

作業系統:win7 版本:emacs 23.4

相關內容