使用在 Windows 上启用 ido 模式的 Emacs,Emacs 会在退出时尝试保存历史文件 .ido.last。该文件位于 C:/.ido.last 中,但失败并显示权限被拒绝消息。这很奇怪,因为我实际上可以访问该文件夹。然而:
是否有命令更改保存 .ido.last 文件的目录?
简短的回答:(setq ido-save-directory-list-file "/some/file/name")
。
长答案:
我将所有能记住 Emacs 状态的小文件保存在user-emacs-directory
. 我不确定这在 Windows 上是什么,但我认为它是C:\Users\<username>\Application Data\.emacs.d\
. 在 Unix 上,它是~/.emacs.d/
. 该变量user-emacs-directory
应由 Emacs 定义,无需设置。
(setq emacs-persistence-directory (concat user-emacs-directory "persistence/"))
(unless (file-exists-p emacs-persistence-directory)
(make-directory emacs-persistence-directory t))
(setq ido-save-directory-list-file (concat emacs-persistence-directory
"ido-last"))
您可能想查看no-littering
包,它为此类文件设置了更好的默认位置。