我正在尝试进行清理功能,我基本上希望它在emacs结束时删除文件夹中的所有文件。我已经决定编写单个文件名,但是,当文件不存在时,Emacs错误(实际上不允许我退出)。
(defun delete-Navi-empty-files ()
(delete-file "/emacs-24.1/.emacs.d/Navi-empty/empty_flymake.tex" nil)
(delete-file "/emacs-24.1/.emacs.d/Navi-empty/empty_flymake.log" nil)
)
(add-hook 'kill-emacs-hook 'delete-Navi-empty-files)
任何想法如何摆脱“没有这样的文件存在”,或如何只是清理文件夹? 感谢。
答案 0 :(得分:0)
最简单的方法是在尝试删除文件之前检查文件是否存在:
(when (file-exists-p filename) (delete-file filename))
由于看起来你会反复使用它,所以将它包装在一个函数中可能是有意义的:
(defun my-delete (filename)
"If the given file exists, delete it; otherwise do nothing."
(when (file-exists-p filename) (delete-file filename)))