# HG changeset patch # User Richard M. Stallman # Date 1123589354 0 # Node ID 583d71cf38e25e88effc27d71246ee13aad34287 # Parent 054baac7534927a7fdc84a90186893ba55811fa5 (Defining Minor Modes): Explain when init-value can be non-nil. diff -r 054baac75349 -r 583d71cf38e2 lispref/modes.texi --- a/lispref/modes.texi Tue Aug 09 12:06:59 2005 +0000 +++ b/lispref/modes.texi Tue Aug 09 12:09:14 2005 +0000 @@ -1373,7 +1373,8 @@ mode, with @var{doc} as its documentation string. It also defines a variable named @var{mode}, which is set to @code{t} or @code{nil} by enabling or disabling the mode. The variable is initialized to -@var{init-value}. +@var{init-value}. Except in unusual circumstances (see below), this +value must be @code{nil}. The string @var{lighter} says what to display in the mode line when the mode is enabled; if it is @code{nil}, the mode is not displayed @@ -1424,6 +1425,14 @@ variable @code{@var{mode}-hook}. @end defmac + The initial value must be @code{nil} except in cases where (1) the +mode is preloaded in Emacs, or (2) it is painless to for loading to +enable the mode even though the user did not request it. For +instance, if the mode has no effect unless something else is enabled, +and will always be loaded by that time, enabling it by default is +harmless. But these are unusual circumstances. Normally, the +initial value must be @code{nil}. + @findex easy-mmode-define-minor-mode The name @code{easy-mmode-define-minor-mode} is an alias for this macro.