由于缓冲区"ido.last",emacs不会关闭

plo*_*ppy 8 emacs

当我尝试关闭emacs时,我收到了消息

"缓冲ido.last修改;杀死无论如何?"

无论我回答什么,emacs都会保持开放状态.但我无法打开此缓冲区并且ido.last文件不存在.如何关闭我的emacs?

Jör*_*erg 5

如果您使用emacs作为另一个用户,例如root,则.ido.last文件可能由root拥有,因此您不能删除或保存它.

当你得到"buffer .ido.last modified"-question时,只需删除.ido.last文件,然后再回答是(如果你在shell中使用emacs,只需要Cz,删除文件,然后用%继续).然后.ido.last文件将作为所有者写入磁盘.


Jér*_*dix 4

IDO尝试将调用的文件保存ido.last~/.emacs.d目录中。但是,就您的情况而言,IDO 似乎无法做到这一点。也许您的~/.emacs.d目录由于特定原因是只读的,或者您的磁盘已满,等等。因此 IDO 会引发一个错误,阻止您的 emacs 关闭。

如果您不使用 IDO,请尝试从 .emacs 中删除此类行:

(require 'ido)
(ido-mode t)
Run Code Online (Sandbox Code Playgroud)

  • 感谢您的帮助。我查找了这些行,在它们下面找到了行 << ido-save-directory-list-file "~/.emacs.d/cache/ido.last" >> 没有任何真正的线索,我认为这意味着, ido.last 应该保存到这个“缓存”目录中,该目录不存在。我删除了“/cache”,此后问题就没有出现了:) (2认同)