From fffb4e60195aa266c6a35a2bd972ad76df8c153b Mon Sep 17 00:00:00 2001 From: Soonho Kong Date: Fri, 3 Oct 2014 09:44:38 -0700 Subject: [PATCH] feat(emacs/lean-server): delete cache file (.clean) after visit/load fix #75 --- src/emacs/lean-server.el | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/emacs/lean-server.el b/src/emacs/lean-server.el index 977f4bcf6..f38a5a1df 100644 --- a/src/emacs/lean-server.el +++ b/src/emacs/lean-server.el @@ -242,11 +242,26 @@ If it's not the same with file-name (default: buffer-file-name), send VISIT cmd. ('WAIT (lean-server-check-current-file)) ('SYNC ))) +(defun lean-server-delete-cache-file () + "Delete the .clean file for the current buffer (if any)" + (let* ((file-name (buffer-file-name)) + (ext (and file-name (f-ext file-name))) + cache-file-name + ) + (when (string= ext "lean") + (setq cache-file-name + (concat (f-no-ext file-name) + ".clean")) + (when (f-file? cache-file-name) + (lean-debug "Delete cache file %s" cache-file-name) + (ignore-errors + (delete-file cache-file-name)))))) + (defun lean-server-after-send-cmd (cmd) "Operations to perform after sending a command." (cl-case (lean-cmd-type cmd) - ('LOAD ()) - ('VISIT ()) + ('LOAD (lean-server-delete-cache-file)) + ('VISIT (lean-server-delete-cache-file)) ('REPLACE ()) ('INSERT ()) ('REMOVE ())