diff --git a/emacs/data.el b/emacs/data.el index e8b4b03..ad175bb 100644 --- a/emacs/data.el +++ b/emacs/data.el @@ -6,6 +6,9 @@ (defvar agw-mode-map (make-sparse-keymap) "Global keymap for `agw-mode'.") +(defvar-local agw-no-fixes nil + "Fixes files before save if `t' in this buffer.") + (define-minor-mode agw-key-map-mode "Minor mode for key bindings." :global t @@ -34,6 +37,12 @@ standard-indent 2 tab-width 2)) +(defun agw-before-save () + "Hook to be run before saving a file." + (unless agw-no-fixes + (copyright-update) + (delete-trailing-whitespace))) + (defun agw-remove-elc () "Removes an elc file if it exists." (let ((elc (concat buffer-file-name "c"))) diff --git a/emacs/init.el b/emacs/init.el index 1b66e1a..7838222 100644 --- a/emacs/init.el +++ b/emacs/init.el @@ -73,8 +73,7 @@ (add-hook 'reb-lisp-mode-hook #'agw-fp-mode) (add-hook 'scheme-mode-hook #'agw-fp-mode) -(add-hook 'before-save-hook #'copyright-update) -(add-hook 'before-save-hook #'delete-trailing-whitespace) +(add-hook 'before-save-hook #'agw-before-save) (agw-set-key "b d" #'kill-this-buffer) (agw-set-key "b e" #'ibuffer)