summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2012-01-30 20:52:29 -0800
committerGlenn Morris <rgm@gnu.org>2012-01-30 20:52:29 -0800
commit60dc2671917d86ac95d767b5e8e385878f00f948 (patch)
treea13e5e780149f03018d04fe9ee4fe7c835adcfbe /lisp/emacs-lisp
parent6c9b47ae84ee5e2f4c7e388d8b1b6fd67daeb61b (diff)
downloademacs-60dc2671917d86ac95d767b5e8e385878f00f948.tar.gz
emacs-60dc2671917d86ac95d767b5e8e385878f00f948.tar.bz2
emacs-60dc2671917d86ac95d767b5e8e385878f00f948.zip
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/easy-mmode.el19
1 files changed, 12 insertions, 7 deletions
diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el
index 9e1a079df5c..efd5ee45d9b 100644
--- a/lisp/emacs-lisp/easy-mmode.el
+++ b/lisp/emacs-lisp/easy-mmode.el
@@ -86,7 +86,8 @@ replacing its case-insensitive matches with the literal string in LIGHTER."
;;;###autoload
(defmacro define-minor-mode (mode doc &optional init-value lighter keymap &rest body)
"Define a new minor mode MODE.
-This defines the control variable MODE and the toggle command MODE.
+This defines the toggle command MODE and (by default) a control variable
+MODE (you can override this with the :variable keyword, see below).
DOC is the documentation for the mode toggle command.
Optional INIT-VALUE is the initial value of the mode's variable.
@@ -113,15 +114,19 @@ BODY contains code to execute each time the mode is enabled or disabled.
buffer-local, so don't make the variable MODE buffer-local.
By default, the mode is buffer-local.
:init-value VAL Same as the INIT-VALUE argument.
+ Not used if you also specify :variable.
:lighter SPEC Same as the LIGHTER argument.
:keymap MAP Same as the KEYMAP argument.
:require SYM Same as in `defcustom'.
-:variable PLACE The location (as can be used with `setf') to use instead
- of the variable MODE to store the state of the mode. PLACE
- can also be of the form (GET . SET) where GET is an expression
- that returns the current state and SET is a function that takes
- a new state and sets it. If you specify a :variable, this
- function assumes it is defined elsewhere.
+:variable PLACE The location to use instead of the variable MODE to store
+ the state of the mode. This can be simply a different
+ named variable, or more generally anything that can be used
+ with the CL macro `setf'. PLACE can also be of the form
+ \(GET . SET), where GET is an expression that returns the
+ current state, and SET is a function that takes one argument,
+ the new state, and sets it. If you specify a :variable,
+ this function does not define a MODE variable (nor any of
+ the terms used in :variable).
For example, you could write
(define-minor-mode foo-mode \"If enabled, foo on you!\"