Document locally disabling globalized minor modes in the lispref

* doc/lispref/modes.texi (Defining Minor Modes):
Mention disabling global minor modes on a per-major-mode basis.

* etc/NEWS: Clarify entry.
This commit is contained in:
Glenn Morris 2012-02-01 00:32:31 -08:00
parent e2cef717da
commit 7a9a2fc6c8
3 changed files with 15 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2012-02-01 Glenn Morris <rgm@gnu.org>
* modes.texi (Defining Minor Modes):
Mention disabling global minor modes on a per-major-mode basis.
2012-01-31 Chong Yidong <cyd@gnu.org>
* syntax.texi (Parsing Expressions): Clarify intro (Bug#10657).

View file

@ -1521,8 +1521,15 @@ starts, for example by providing a @code{:require} keyword.
Use @code{:group @var{group}} in @var{keyword-args} to specify the
custom group for the mode variable of the global minor mode.
When you define a globalized minor mode, you should generally also
define a non-globalized version to toggle the mode on an individual
buffer basis. This allows users to disable a globally enabled minor
mode in a specific major mode if they wish, by deactivating the local
minor mode in the major mode's hook.
@end defmac
@node Mode Line Format
@section Mode-Line Format
@cindex mode line

View file

@ -1290,8 +1290,9 @@ on-the-fly spell checking for comments and strings.
*** New hook `change-major-mode-after-body-hook', run by
`run-mode-hooks' just before any other mode hooks.
*** Enabled globalized minor modes can be disabled in specific modes,
by running (FOO-mode-hook 0) via a mode hook.
*** Enabled globalized minor modes can be disabled in specific major modes.
If the global mode is global-FOO-mode, then run (FOO-mode -1) in the
major mode's hook, where FOO-mode toggles the mode on a per-buffer basis.
+++
*** `define-minor-mode' accepts a new keyword :variable.