2

クリーンアップ機能を実行しようとしていますが、基本的には、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)

「そのようなファイルは存在しません」を取り除く方法、またはフォルダーをクリーンアップする方法はありますか? ありがとう。

4

1 に答える 1

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)))
于 2012-10-20T03:24:22.020 に答える