(define-minor-mode): A nil argument to the minor mode turns the mode ON.
This commit is contained in:
parent
01f5787b8a
commit
3b7e1d5fe9
3 changed files with 11 additions and 9 deletions
2
etc/NEWS
2
etc/NEWS
|
@ -140,6 +140,8 @@ Secret Service API requires D-Bus for communication.
|
|||
|
||||
* Incompatible Lisp Changes in Emacs 24.1
|
||||
|
||||
** Passing a nil argument to a minor mode function now turns the mode
|
||||
ON unconditionally.
|
||||
|
||||
* Lisp changes in Emacs 24.1
|
||||
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* emacs-lisp/easy-mmode.el (define-minor-mode): Passing a nil argument
|
||||
to the minor mode function now turns the mode ON unconditionally.
|
||||
|
||||
2010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* vc-dir.el (vc-dir-kill-line): New command.
|
||||
|
|
|
@ -222,15 +222,10 @@ With zero or negative ARG turn mode off.
|
|||
(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))
|
||||
|
|
Loading…
Add table
Reference in a new issue