diff --git a/doc/lispref/control.texi b/doc/lispref/control.texi index 8df8cd215f5..bec627ab4dc 100644 --- a/doc/lispref/control.texi +++ b/doc/lispref/control.texi @@ -2181,7 +2181,8 @@ concept of continuable errors. @subsubsection How Emacs Processes Errors @cindex processing of errors -When an error is signaled, @code{signal} searches for an active +When a Lisp program signals an error, it calls the function +@code{signal}, which searches for an active @dfn{handler} for the error. A handler is a sequence of Lisp expressions designated to be executed if an error happens in part of the Lisp program. If the error has an applicable handler, the handler is @@ -2191,9 +2192,16 @@ established it; all functions called within that @code{condition-case} have already been exited, and the handler cannot return to them. If there is no applicable handler for the error, it terminates the -current command and returns control to the editor command loop. (The -command loop has an implicit handler for all kinds of errors.) The -command loop's handler uses the error symbol and associated data to +current command, flushes all pending unprocessed input events +(@pxref{Input Events})@footnote{ +Pending input is discarded because the user could have typed something +in advance under the assumption that execution will proceed without +errors, so keeping these input events would cause unintended +consequences, like inserting stray characters into an unrelated buffer +or execution of some unintended command. +}, and returns control to the editor command loop. +(The command loop has an implicit handler for all kinds of errors.) The +command loop's handler then uses the error symbol and associated data to print an error message. You can use the variable @code{command-error-function} to control how this is done: diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi index 0852a9ab8e1..bac98962012 100644 --- a/doc/lispref/modes.texi +++ b/doc/lispref/modes.texi @@ -1868,7 +1868,17 @@ marking the @code{define-minor-mode} form as autoloaded. @item :init-value @var{init-value} This is the value to which the @var{mode} variable is initialized. Except in unusual circumstances (see below), this value must be -@code{nil}. +@code{nil}. If the mode is global (see below), and the initial value is +@code{t}, i.e., the mode is turned on by default, you should consider +forcing Emacs to run the mode function at startup, like this: + +@lisp + :initialize #'custom-initialize-delay +@end lisp + +@noindent +otherwise, the minor mode might not appear in the @file{*Help*} buffer +generated by @kbd{C-h m} (@pxref{Mode Help}). @item :lighter @var{lighter} The string @var{lighter} says what to display in the mode line diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi index 943d08579ed..c6e3b1bdbec 100644 --- a/doc/lispref/text.texi +++ b/doc/lispref/text.texi @@ -5110,6 +5110,7 @@ having an @acronym{HTML} link text that says one thing, while the underlying @acronym{URL} points somewhere else. @cindex suspicious text strings +@cindex confusable characters To help identify these @dfn{suspicious text strings}, Emacs provides a library to do a number of checks on text. (See @url{https://www.unicode.org/reports/tr39/, UTS #39: Unicode Security @@ -5160,7 +5161,7 @@ suspicious. @var{object} should be a string. @item email-address-header Check whether a full RFC2822 email address header (e.g., -@samp{=?utf-8?Q?=C3=81?= }) looks suspicious. +@samp{=?utf-8?Q?=E2=84=AB?= }) looks suspicious. @var{object} should be a string. @end table