Allow configuring cleaning white space on save

This condition is checked when saving if the existing
whitespace-cleanup is set instead of when the when prog-mode is is
entered.  This way it can be over-ridden by either dir-locals or
file-local variables.
This commit is contained in:
Nathan Stitt 2013-03-25 17:35:00 -05:00
parent cf9967d0f9
commit 2860441f7e

View file

@ -53,6 +53,12 @@
:type 'boolean :type 'boolean
:group 'prelude) :group 'prelude)
(defcustom prelude-clean-whitespace-on-save t
"Cleanup whitespace from file before it's saved. Will only occur if prelude-whitespace is also enabled"
:type 'boolean
:group 'prelude
)
(defcustom prelude-flyspell t (defcustom prelude-flyspell t
"Non-nil values enable Prelude's flyspell support." "Non-nil values enable Prelude's flyspell support."
:type 'boolean :type 'boolean
@ -218,10 +224,13 @@
(when (and prelude-flyspell (executable-find ispell-program-name)) (when (and prelude-flyspell (executable-find ispell-program-name))
(flyspell-mode +1))) (flyspell-mode +1)))
(defun prelude-cleanup-maybe ()
(when prelude-clean-whitespace-on-save (whitespace-cleanup)))
(defun prelude-enable-whitespace () (defun prelude-enable-whitespace ()
(when prelude-whitespace (when prelude-whitespace
;; keep the whitespace decent all the time (in this buffer) ;; keep the whitespace decent all the time (in this buffer)
(add-hook 'before-save-hook 'whitespace-cleanup nil t) (add-hook 'before-save-hook 'prelude-cleanup-maybe nil t)
(whitespace-mode +1))) (whitespace-mode +1)))
(add-hook 'text-mode-hook 'prelude-enable-flyspell) (add-hook 'text-mode-hook 'prelude-enable-flyspell)