changeset 109948:c66428d4b9ed

Doc fix for define-minor-mode (Bug#6880). * doc/lispref/modes.texi (Defining Minor Modes): Doc fix (Bug#6880). * emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix (Bug#6880).
author Chong Yidong <cyd@stupidchicken.com>
date Sun, 22 Aug 2010 15:30:26 -0400
parents 4d912bd88b04
children 53205019b195 3f3acfe9033c
files doc/lispref/ChangeLog doc/lispref/modes.texi lisp/ChangeLog lisp/emacs-lisp/easy-mmode.el
diffstat 4 files changed, 30 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/doc/lispref/ChangeLog	Sun Aug 22 00:13:32 2010 -0400
+++ b/doc/lispref/ChangeLog	Sun Aug 22 15:30:26 2010 -0400
@@ -1,3 +1,7 @@
+2010-08-22  Chong Yidong  <cyd@stupidchicken.com>
+
+	* modes.texi (Defining Minor Modes): Doc fix (Bug#6880).
+
 2010-08-19  Chong Yidong  <cyd@stupidchicken.com>
 
 	* objects.texi (Bool-Vector Type): Minor definition tweak (Bug#6878).
--- a/doc/lispref/modes.texi	Sun Aug 22 00:13:32 2010 -0400
+++ b/doc/lispref/modes.texi	Sun Aug 22 15:30:26 2010 -0400
@@ -1411,14 +1411,20 @@
 when the mode is enabled; if it is @code{nil}, the mode is not displayed
 in the mode line.
 
-The optional argument @var{keymap} specifies the keymap for the minor mode.
-It can be a variable name, whose value is the keymap, or it can be an alist
-specifying bindings in this form:
+The optional argument @var{keymap} specifies the keymap for the minor
+mode.  If non-@code{nil}, it should be a variable name (whose value is
+a keymap), a keymap, or an alist of the form
 
 @example
 (@var{key-sequence} . @var{definition})
 @end example
 
+@noindent
+where each @var{key-sequence} and @var{definition} are arguments
+suitable for passing to @code{define-key} (@pxref{Changing Key
+Bindings}).  If @var{keymap} is a keymap or an alist, this also
+defines the variable @code{@var{mode}-map}.
+
 The above three arguments @var{init-value}, @var{lighter}, and
 @var{keymap} can be (partially) omitted when @var{keyword-args} are
 used.  The @var{keyword-args} consist of keywords followed by
--- a/lisp/ChangeLog	Sun Aug 22 00:13:32 2010 -0400
+++ b/lisp/ChangeLog	Sun Aug 22 15:30:26 2010 -0400
@@ -1,3 +1,7 @@
+2010-08-22  Chong Yidong  <cyd@stupidchicken.com>
+
+	* emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix (Bug#6880).
+
 2010-08-21  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 
 	* whitespace.el: Fix slow cursor movement (Bug#6172).  Reported by
--- a/lisp/emacs-lisp/easy-mmode.el	Sun Aug 22 00:13:32 2010 -0400
+++ b/lisp/emacs-lisp/easy-mmode.el	Sun Aug 22 15:30:26 2010 -0400
@@ -86,25 +86,23 @@
 ;;;###autoload
 (defmacro define-minor-mode (mode doc &optional init-value lighter keymap &rest body)
   "Define a new minor mode MODE.
-This function defines the associated control variable MODE, keymap MODE-map,
-and toggle command MODE.
+This defines the control variable MODE and the toggle command MODE.
+DOC is the documentation for the mode toggle command.
 
-DOC is the documentation for the mode toggle command.
 Optional INIT-VALUE is the initial value of the mode's variable.
 Optional LIGHTER is displayed in the modeline when the mode is on.
-Optional KEYMAP is the default (defvar) keymap bound to the mode keymap.
-  If it is a list, it is passed to `easy-mmode-define-keymap'
-  in order to build a valid keymap.  It's generally better to use
-  a separate MODE-map variable than to use this argument.
-The above three arguments can be skipped if keyword arguments are
-used (see below).
+Optional KEYMAP is the default keymap bound to the mode keymap.
+  If non-nil, it should be a variable name (whose value is a keymap),
+  a keymap, or a list of arguments for `easy-mmode-define-keymap'.
+  If KEYMAP is a keymap or list, this also defines the variable MODE-map.
 
-BODY contains code to execute each time the mode is activated or deactivated.
-  It is executed after toggling the mode,
-  and before running the hook variable `MODE-hook'.
-  Before the actual body code, you can write keyword arguments (alternating
-  keywords and values).  These following keyword arguments are supported (other
-  keywords will be passed to `defcustom' if the minor mode is global):
+BODY contains code to execute each time the mode is enabled or disabled.
+  It is executed after toggling the mode, and before running MODE-hook.
+  Before the actual body code, you can write keyword arguments, i.e.
+  alternating keywords and values.  These following special keywords
+  are supported (other keywords are passed to `defcustom' if the minor
+  mode is global):
+
 :group GROUP	Custom group name to use in all generated `defcustom' forms.
 		Defaults to MODE without the possible trailing \"-mode\".
 		Don't use this default group name unless you have written a