diff lisp/emacs-lisp/easy-mmode.el @ 107843:64cb38b81502

(define-minor-mode): A nil argument to the minor mode turns the mode ON.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Mon, 12 Apr 2010 21:03:04 -0400
parents 1d1d5d9bd884
children c46b2d0614cb
line wrap: on
line diff
--- a/lisp/emacs-lisp/easy-mmode.el	Mon Apr 12 19:49:29 2010 -0400
+++ b/lisp/emacs-lisp/easy-mmode.el	Mon Apr 12 21:03:04 2010 -0400
@@ -222,15 +222,10 @@
 	 (interactive (list (or current-prefix-arg 'toggle)))
 	 (let ((,last-message (current-message)))
            (setq ,mode
-                 (cond
-                  ((eq arg 'toggle) (not ,mode))
-                  (arg (> (prefix-numeric-value arg) 0))
-                  (t
-                   (if (null ,mode) t
-                     (message
-                      "Toggling %s off; better pass an explicit argument."
-                      ',mode)
-                     nil))))
+                 (if (eq arg 'toggle)
+                     (not ,mode)
+                   ;; A nil argument also means ON now.
+                   (> (prefix-numeric-value arg) 0)))
            ,@body
            ;; The on/off hooks are here for backward compatibility only.
            (run-hooks ',hook (if ,mode ',hook-on ',hook-off))