Subject: [PATCH] ; Fix some typos and doc issues

From: Štěpán Němec <[email-masked]>
Date: Sat, 18 Apr 2020 13:37:35 +0200

---
[Rebased on top of current emacs-27]

 ChangeLog.3                     | 16 ++++++++--------
 admin/notes/bug-triage          |  2 +-
 doc/emacs/fixit.texi            | 30 +++++++++++++++---------------
 doc/lispref/display.texi        |  4 ++--
 doc/lispref/functions.texi      |  2 +-
 doc/lispref/os.texi             |  2 +-
 doc/lispref/text.texi           |  4 ++--
 doc/misc/texinfo.tex            |  2 +-
 lib/ieee754.in.h                |  4 ++--
 lisp/emacs-lisp/bytecomp.el     |  2 +-
 lisp/emacs-lisp/checkdoc.el     |  2 +-
 lisp/emacs-lisp/cl-macs.el      |  8 ++++----
 lisp/emacs-lisp/elp.el          |  2 +-
 lisp/emacs-lisp/generator.el    | 32 ++++++++++++++------------------
 lisp/emacs-lisp/gv.el           |  2 +-
 lisp/emacs-lisp/lisp-mode.el    |  2 +-
 lisp/image/exif.el              |  4 ++--
 lisp/international/mule-util.el |  2 +-
 lisp/json.el                    |  2 +-
 lisp/minibuffer.el              |  4 ++--
 lisp/obsolete/cl.el             |  2 +-
 lisp/startup.el                 |  8 ++++----
 lisp/subr.el                    |  6 +++---
 lisp/textmodes/ispell.el        | 10 +++++-----
 src/eval.c                      |  2 +-
 src/lread.c                     |  2 +-
 test/lisp/jsonrpc-tests.el      |  4 ++--
 test/src/thread-tests.el        |  2 +-
 28 files changed, 80 insertions(+), 84 deletions(-)

diff --git a/ChangeLog.3 b/ChangeLog.3
index c5bc7b3120..7f6000fc55 100644
--- a/ChangeLog.3
+++ b/ChangeLog.3
@@ -11660,7 +11660,7 @@
 	Mention the Emacs exit code in batch mode
 
 	* doc/lispref/os.texi (Batch Mode): Mention what the exit code is
-	if an error is signalled (bug#31552).
+	if an error is signaled (bug#31552).
 
 2019-10-12  Kaushal Modi  <[email-masked]>
 
@@ -15059,7 +15059,7 @@
 
 	* lisp/image/exif.el (exif-parse-buffer): New function.
 	(exif-orientation): Ditto.
-	(exif-error): New error symbol, and adjust all error signalling to
+	(exif-error): New error symbol, and adjust all error signaling to
 	only use that signal.
 
 2019-09-22  Andreas Schwab  <[email-masked]>
@@ -25100,7 +25100,7 @@
 
 	* lisp/json.el (json-read): Try to clarify what's returned (bug#34242).
 	(json-encode): Refer to `json-read' about what the input is and
-	say what error is signalled.
+	say what error is signaled.
 
 2019-07-09  Lars Ingebrigtsen  <[email-masked]>
 
@@ -26971,7 +26971,7 @@
 	help-C-file-name shouldn't error out if we can't find the name
 
 	* lisp/help-fns.el (help-C-file-name): Make help-C-file-name
-	return nil instead of signalling an error if we can't find the
+	return nil instead of signaling an error if we can't find the
 	file name (bug#17250).
 
 2019-06-26  Stefan Monnier  <[email-masked]>
@@ -34107,7 +34107,7 @@
 	Remove unused internal function completion-pcm--optimize-pattern
 
 	* lisp/minibuffer.el (completion-pcm--optimize-pattern): Remove
-	unused internal function (that signalled a compilation warning).
+	unused internal function (that signaled a compilation warning).
 
 2019-05-16  Stefan Monnier  <[email-masked]>
 
@@ -40134,10 +40134,10 @@
 
 2019-03-30  Mattias Engdegård  <[email-masked]>
 
-	Release regexp before signalling overflow error
+	Release regexp before signaling overflow error
 
 	* src/search.c (looking_at_1, search_buffer_re): Unfreeze the regexp
-	buffer before signalling a matcher overflow, since the error
+	buffer before signaling a matcher overflow, since the error
 	processing may require quite some regexp use as well (Bug#34910).
 
 2019-03-30  Mattias Engdegård  <[email-masked]>
@@ -88604,7 +88604,7 @@
 	Tweak Fdocumentation's error for an undefined function
 
 	* src/doc.c (Fdocumentation): Restore the pre-25 behavior
-	of signalling a void-function error for an undefined function.
+	of signaling a void-function error for an undefined function.
 	This seems cleaner than Emacs 25's "invalid-function: nil" error,
 	which was (probably) an unintended consequence of changes to
 	Findirect_function.
diff --git a/admin/notes/bug-triage b/admin/notes/bug-triage
index 2974eee179..87fb471c70 100644
--- a/admin/notes/bug-triage
+++ b/admin/notes/bug-triage
@@ -81,7 +81,7 @@ the ones that are not reproducible on the current release.
 * New bug triage process
 
 The goal of the new bug triage process is similar to the backlog triage process,
-except that the focus is on prioritizing the bug, and making sure it is has
+except that the focus is on prioritizing the bug, and making sure it has
 necessary information for others to act on.
 
 For each new bug, ask the following questions:
diff --git a/doc/emacs/fixit.texi b/doc/emacs/fixit.texi
index 3665faf3a8..dc643e19a4 100644
--- a/doc/emacs/fixit.texi
+++ b/doc/emacs/fixit.texi
@@ -201,8 +201,8 @@ Transpose
   A numeric argument to a transpose command serves as a repeat count: it
 tells the transpose command to move the character (or word or
 expression or line) before or containing point across several other
-characters (or words or expressions or lines).  For example, @kbd{C-u
-3 C-t} moves the character before point forward across three other
+characters (or words or expressions or lines).  For example, @w{@kbd{C-u
+3 C-t}} moves the character before point forward across three other
 characters.  It would change @samp{f@point{}oobar} into
 @samp{oobf@point{}ar}.  This is equivalent to repeating @kbd{C-t}
 three times.  @kbd{C-u - 4 M-t} moves the word before point backward
@@ -304,10 +304,10 @@ Spelling
 @cindex spell-checking the active region
   Similarly, the command @kbd{M-x ispell} performs spell-checking in
 the region if one is active, or in the entire buffer otherwise.  The
-commands @kbd{M-x ispell-buffer} and @kbd{M-x ispell-region}
+commands @w{@kbd{M-x ispell-buffer}} and @w{@kbd{M-x ispell-region}}
 explicitly perform spell-checking on the entire buffer or the region
 respectively.  To check spelling in an email message you are writing,
-use @kbd{M-x ispell-message}; that command checks the whole buffer,
+use @w{@kbd{M-x ispell-message}}; that command checks the whole buffer,
 except for material that is indented or appears to be cited from other
 messages.  @xref{Sending Mail}.
 
@@ -365,8 +365,8 @@ Spelling
 @item C-g
 @itemx X
 Quit interactive spell-checking, leaving point at the word that was
-being checked.  You can restart checking again afterward with @kbd{C-u
-M-$}.
+being checked.  You can restart checking again afterward with @w{@kbd{C-u
+M-$}}.
 
 @item x
 Quit interactive spell-checking and move point back to where it was
@@ -384,8 +384,8 @@ Spelling
 (@code{ispell-complete-word}) performs in-buffer completion based on
 spelling correction.  Insert the beginning of a word, and then type
 @kbd{M-@key{TAB}}; this shows a list of completions.  (If your
-window manager intercepts @kbd{M-@key{TAB}}, type @kbd{@key{ESC}
-@key{TAB}} or @kbd{C-M-i}.)  Each completion is listed with a digit or
+window manager intercepts @kbd{M-@key{TAB}}, type @w{@kbd{@key{ESC}
+@key{TAB}}} or @kbd{C-M-i}.)  Each completion is listed with a digit or
 character; type that digit or character to choose it.
 
 @cindex @code{ispell} program
@@ -393,7 +393,7 @@ Spelling
   Once started, the spell-checker subprocess continues
 to run, waiting for something to do, so that subsequent spell-checking
 commands complete more quickly.  If you want to get rid of the
-process, use @kbd{M-x ispell-kill-ispell}.  This is not usually
+process, use @w{@kbd{M-x ispell-kill-ispell}}.  This is not usually
 necessary, since the process uses no processor time except when you do
 spelling correction.
 
@@ -406,7 +406,7 @@ Spelling
 dictionary is specified by the variable @code{ispell-local-dictionary}
 or, if that is @code{nil}, by the variable @code{ispell-dictionary}.
 If both are @code{nil}, the spelling program's default dictionary is
-used.  The command @kbd{M-x ispell-change-dictionary} sets the
+used.  The command @w{@kbd{M-x ispell-change-dictionary}} sets the
 standard dictionary for the buffer and then restarts the subprocess,
 so that it will use a different standard dictionary.  Your personal
 dictionary is specified by the variable
@@ -428,8 +428,8 @@ Spelling
 @findex flyspell-mode
   Flyspell mode is a minor mode that performs automatic spell-checking
 of the text you type as you type it.  When it finds a word that it
-does not recognize, it highlights that word.  Type @kbd{M-x
-flyspell-mode} to toggle Flyspell mode in the current buffer.  To
+does not recognize, it highlights that word.  Type @w{@kbd{M-x
+flyspell-mode}} to toggle Flyspell mode in the current buffer.  To
 enable Flyspell mode in all text mode buffers, add
 @code{flyspell-mode} to @code{text-mode-hook}.  @xref{Hooks}.  Note
 that, as Flyspell mode needs to check each word across which you move,
@@ -445,14 +445,14 @@ Spelling
 of possible corrections and actions.  In addition, @kbd{C-.} or
 @kbd{@key{ESC}-@key{TAB}} (@code{flyspell-auto-correct-word}) will
 propose various successive corrections for the word at point, and
-@kbd{C-c $} (@code{flyspell-correct-word-before-point}) will pop up a
+@w{@kbd{C-c $}} (@code{flyspell-correct-word-before-point}) will pop up a
 menu of possible corrections.  Of course, you can always correct the
 misspelled word by editing it manually in any way you like.
 
 @findex flyspell-prog-mode
   Flyspell Prog mode works just like ordinary Flyspell mode, except
 that it only checks words in comments and string constants.  This
-feature is useful for editing programs.  Type @kbd{M-x
-flyspell-prog-mode} to enable or disable this mode in the current
+feature is useful for editing programs.  Type @w{@kbd{M-x
+flyspell-prog-mode}} to enable or disable this mode in the current
 buffer.  To enable this mode in all programming mode buffers, add
 @code{flyspell-prog-mode} to @code{prog-mode-hook} (@pxref{Hooks}).
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index 2b25d6023c..85e42d331d 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -6929,7 +6929,7 @@ Button Buffer Commands
 is displayed.  Any button with a non-@code{nil} @code{skip} property
 is skipped over.  Returns the button found, and signals an error if no
 buttons can be found.  If @var{no-error} in non-@code{nil}, return nil
-instead of signalling the error.
+instead of signaling the error.
 @end deffn
 
 @deffn Command backward-button n &optional wrap display-message
@@ -6941,7 +6941,7 @@ Button Buffer Commands
 is displayed.  Any button with a non-@code{nil} @code{skip} property
 is skipped over.  Returns the button found, and signals an error if no
 buttons can be found.  If @var{no-error} in non-@code{nil}, return nil
-instead of signalling the error.
+instead of signaling the error.
 @end deffn
 
 @defun next-button pos &optional count-current
diff --git a/doc/lispref/functions.texi b/doc/lispref/functions.texi
index 5cf67ba647..f31bacaed7 100644
--- a/doc/lispref/functions.texi
+++ b/doc/lispref/functions.texi
@@ -2287,7 +2287,7 @@ Declare Form
 case it will be passed to @code{gv-define-simple-setter}, or it can be of the
 form @code{(lambda (@var{arg}) @var{body})} in which case that function will
 additionally have access to the macro (or function)'s arguments and it will
-passed to @code{gv-define-setter}.
+be passed to @code{gv-define-setter}.
 
 @end table
 
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi
index 92aaf24b85..92684c8993 100644
--- a/doc/lispref/os.texi
+++ b/doc/lispref/os.texi
@@ -2616,7 +2616,7 @@ Batch Mode
 This variable is non-@code{nil} when Emacs is running in batch mode.
 @end defvar
 
-If Emacs exits due to signalling an error in batch mode, the exit
+If Emacs exits due to signaling an error in batch mode, the exit
 status of the Emacs command is non-zero:
 
 @example
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi
index ffdf952b08..fe3d48b3ff 100644
--- a/doc/lispref/text.texi
+++ b/doc/lispref/text.texi
@@ -4679,7 +4679,7 @@ Interpolated Strings
 above.  @var{specification} is an alist that has elements where the
 @code{car} is a character and the @code{cdr} is the substitution.
 
-If @code{ONLY-PRESENT} is @code{nil}, errors will be signalled if a
+If @code{ONLY-PRESENT} is @code{nil}, errors will be signaled if a
 format character has been used that's not present in
 @var{specification}.  If it's non-@code{nil}, that format
 specification is left verbatim in the result.
@@ -5725,7 +5725,7 @@ Change Hooks
 @code{after-change-functions} within
 the body of a @code{combine-after-change-calls} form.
 
-@strong{Warning:} if the changes you combine occur in widely scattered
+@strong{Warning:} If the changes you combine occur in widely scattered
 parts of the buffer, this will still work, but it is not advisable,
 because it may lead to inefficient behavior for some change hook
 functions.
diff --git a/doc/misc/texinfo.tex b/doc/misc/texinfo.tex
index 6d9d7113f7..1d05eab65c 100644
--- a/doc/misc/texinfo.tex
+++ b/doc/misc/texinfo.tex
@@ -7589,7 +7589,7 @@
     % commands also insert a nobreak penalty, and we don't want to allow
     % a break between a section heading and a defun.
     %
-    % As a further refinement, we avoid "club" headers by signalling
+    % As a further refinement, we avoid "club" headers by signaling
     % with penalty of 10003 after the very first @deffn in the
     % sequence (see above), and penalty of 10002 after any following
     % @def command.
diff --git a/lib/ieee754.in.h b/lib/ieee754.in.h
index d64bb46e9d..01ca648905 100644
--- a/lib/ieee754.in.h
+++ b/lib/ieee754.in.h
@@ -67,7 +67,7 @@ #define _IEEE754_H 1
 #endif				/* Little endian.  */
       } ieee;
 
-    /* This format makes it easier to see if a NaN is a signalling NaN.  */
+    /* This format makes it easier to see if a NaN is a signaling NaN.  */
     struct
       {
 #if	__BYTE_ORDER == __BIG_ENDIAN
@@ -118,7 +118,7 @@ #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent.  */
 #endif				/* Little endian.  */
       } ieee;
 
-    /* This format makes it easier to see if a NaN is a signalling NaN.  */
+    /* This format makes it easier to see if a NaN is a signaling NaN.  */
     struct
       {
 #if	__BYTE_ORDER == __BIG_ENDIAN
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 73bbc2fe18..688f8cfa4d 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -677,7 +677,7 @@ 111
 (byte-defop 112  1 byte-current-buffer)
 (byte-defop 113  0 byte-set-buffer)
 (byte-defop 114  0 byte-save-current-buffer
-  "To make a binding to record the current buffer")
+  "to make a binding to record the current buffer")
 (byte-defop 115  0 byte-set-mark-OBSOLETE)
 (byte-defop 116  1 byte-interactive-p-OBSOLETE)
 
diff --git a/lisp/emacs-lisp/checkdoc.el b/lisp/emacs-lisp/checkdoc.el
index fa5d1cff41..797493743c 100644
--- a/lisp/emacs-lisp/checkdoc.el
+++ b/lisp/emacs-lisp/checkdoc.el
@@ -2133,7 +2133,7 @@ checkdoc-ispell-docstring-engine
     (checkdoc-ispell-init)
     (unless checkdoc-spellcheck-documentation-flag
       ;; this happens when (checkdoc-ispell-init) can't start `ispell-program-name'
-      (user-error "No spellchecker installed: check the variable `ispell-program-name'."))
+      (user-error "No spellchecker installed: check the variable `ispell-program-name'"))
     (save-excursion
       (skip-chars-forward "^a-zA-Z")
       (let (word sym case-fold-search err word-beginning word-end)
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 9edd85e36b..ce92d45e6a 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -776,7 +776,7 @@ cl-case
   "Eval EXPR and choose among clauses on that value.
 Each clause looks like (KEYLIST BODY...).  EXPR is evaluated and
 compared against each key in each KEYLIST; the corresponding BODY
-is evaluated.  If no clause succeeds, cl-case returns nil.  A
+is evaluated.  If no clause succeeds, `cl-case' returns nil.  A
 single non-nil atom may be used in place of a KEYLIST of one
 atom.  A KEYLIST of t or `otherwise' is allowed only in the final
 clause, and matches if no other keys match.  Key values are
@@ -815,10 +815,10 @@ cl-ecase
 
 ;;;###autoload
 (defmacro cl-typecase (expr &rest clauses)
-  "Evals EXPR, chooses among clauses on that value.
+  "Eval EXPR and choose among clauses on that value.
 Each clause looks like (TYPE BODY...).  EXPR is evaluated and, if it
 satisfies TYPE, the corresponding BODY is evaluated.  If no clause succeeds,
-cl-typecase returns nil.  A TYPE of t or `otherwise' is allowed only in the
+`cl-typecase' returns nil.  A TYPE of t or `otherwise' is allowed only in the
 final clause, and matches if no other keys match.
 \n(fn EXPR (TYPE BODY...)...)"
   (declare (indent 1)
@@ -2707,7 +2707,7 @@ cl-defstruct
 Supported keywords for slots are:
 - `:read-only':  If this has a non-nil value, that slot cannot be set via `setf'.
 - `:documentation': this is a docstring describing the slot.
-- `:type': the type of the field; currently unused.
+- `:type': the type of the field; currently only used for documentation.
 
 \(fn NAME &optional DOCSTRING &rest SLOTS)"
   (declare (doc-string 2) (indent 1)
diff --git a/lisp/emacs-lisp/elp.el b/lisp/emacs-lisp/elp.el
index 7dd3cbd1a2..f68c0faf09 100644
--- a/lisp/emacs-lisp/elp.el
+++ b/lisp/emacs-lisp/elp.el
@@ -238,7 +238,7 @@ elp-instrument-function
     ;; The info vector data structure is a 2 element vector.  The 0th
     ;; element is the call-count, i.e. the total number of times this
     ;; function has been entered.  This value is bumped up on entry to
-    ;; the function so that non-local exists are still recorded. TBD:
+    ;; the function so that non-local exits are still recorded. TBD:
     ;; I haven't tested non-local exits at all, so no guarantees.
     ;;
     ;; The 1st element is the total amount of time in seconds that has
diff --git a/lisp/emacs-lisp/generator.el b/lisp/emacs-lisp/generator.el
index 8a9b01d580..16f0d71238 100644
--- a/lisp/emacs-lisp/generator.el
+++ b/lisp/emacs-lisp/generator.el
@@ -59,7 +59,7 @@
 ;; This raw form of iteration is general, but a bit awkward to use, so
 ;; this library also provides some convenience functions:
 ;;
-;; `iter-do' is like `cl-do', except that instead of walking a list,
+;; `iter-do' is like `dolist', except that instead of walking a list,
 ;; it walks an iterator.  `cl-loop' is also extended with a new
 ;; keyword, `iter-by', that iterates over an iterator.
 ;;
@@ -67,7 +67,7 @@
 ;;; Implementation:
 
 ;;
-;; The internal cps transformation code uses the cps- namespace.
+;; The internal CPS transformation code uses the cps- namespace.
 ;; Iteration functions use the `iter-' namespace.  Generator functions
 ;; are somewhat less efficient than conventional elisp routines,
 ;; although we try to avoid CPS transformation on forms that do not
@@ -89,13 +89,13 @@ cps--gensym
   `(gensym (format ,fmt ,@args)))
 
 (defvar cps--dynamic-wrappers '(identity)
-  "List of transformer functions to apply to atomic forms we
-evaluate in CPS context.")
+  "\
+List of transformer functions applied to atomic forms evaluated in CPS context."
+  )
 
 (defconst cps-standard-special-forms
   '(setq setq-default throw interactive)
-  "List of special forms that we treat just like ordinary
-  function applications." )
+  "List of special forms treated just like ordinary function applications." )
 
 (defun cps--trace-funcall (func &rest args)
   (message "%S: args=%S" func args)
@@ -118,17 +118,15 @@ cps--define-unsupported
        (error "%s not supported in generators" ,function)))
 
 (defmacro cps--with-value-wrapper (wrapper &rest body)
-  "Continue generating CPS code with an atomic-form wrapper
-to the current stack of such wrappers.  WRAPPER is a function that
-takes a form and returns a wrapped form.
+  "Evaluate BODY with WRAPPER added to the stack of atomic-form wrappers.
+WRAPPER is a function that takes an atomic form and returns a wrapped form.
 
 Whenever we generate an atomic form (i.e., a form that can't
 `iter-yield'), we first (before actually inserting that form in our
 generated code) pass that form through all the transformer
 functions.  We use this facility to wrap forms that can transfer
 control flow non-locally in goo that diverts this control flow to
-the CPS state machinery.
-"
+the CPS state machinery."
   (declare (indent 1))
   `(let ((cps--dynamic-wrappers
           (cons
@@ -153,7 +151,7 @@ cps--with-dynamic-binding
      ,@body))
 
 (defun cps--add-state (kind body)
-  "Create a new CPS state with body BODY and return the state's name."
+  "Create a new CPS state of KIND with BODY and return the state's name."
   (declare (indent 1))
   (let* ((state (cps--gensym "cps-state-%s-" kind)))
     (push (list state body cps--cleanup-function) cps--states)
@@ -170,14 +168,12 @@ cps--find-special-form-handler
     (and (fboundp handler) handler)))
 
 (defvar cps-inhibit-atomic-optimization nil
-  "When non-nil, always rewrite forms into cps even when they
-don't yield.")
+  "When non-nil, always rewrite forms into CPS even when they don't yield.")
 
 (defvar cps--yield-seen)
 
 (defun cps--atomic-p (form)
-  "Return whether the given form never yields."
-
+  "Return non-nil if FORM never yields."
   (and (not cps-inhibit-atomic-optimization)
        (let* ((cps--yield-seen))
          (ignore (macroexpand-all
@@ -649,8 +645,8 @@ cps-generate-evaluator
 (defun iter-yield (value)
   "When used inside a generator, yield control to caller.
 The caller of `iter-next' receives VALUE, and the next call to
-`iter-next' resumes execution at the previous
-`iter-yield' point."
+`iter-next' resumes execution with the form immediately following this
+`iter-yield' call."
   (identity value)
   (error "`iter-yield' used outside a generator"))
 
diff --git a/lisp/emacs-lisp/gv.el b/lisp/emacs-lisp/gv.el
index b43e53b9d2..065a968877 100644
--- a/lisp/emacs-lisp/gv.el
+++ b/lisp/emacs-lisp/gv.el
@@ -38,7 +38,7 @@
 ;;
 ;; Instead, we use here a higher-order approach: instead
 ;; of a 5-tuple, a place-expander returns a function.
-;; If you think about types, the old approach return things of type
+;; If you think about types, the old approach returns things of type
 ;;    {vars: List Var, values: List Exp,
 ;;     stores: List Var, getter: Exp, setter: Exp}
 ;; whereas the new approach returns a function of type
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index fbbd389bf9..fa857cd4c6 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -535,7 +535,7 @@ lisp-cl-font-lock-keywords
 
 ;; Support backtrace mode.
 (defconst lisp-el-font-lock-keywords-for-backtraces lisp-el-font-lock-keywords
-  "Default highlighting from Emacs Lisp mod used in Backtrace mode.")
+  "Default highlighting from Emacs Lisp mode used in Backtrace mode.")
 (defconst lisp-el-font-lock-keywords-for-backtraces-1 lisp-el-font-lock-keywords-1
   "Subdued highlighting from Emacs Lisp mode used in Backtrace mode.")
 (defconst lisp-el-font-lock-keywords-for-backtraces-2
diff --git a/lisp/image/exif.el b/lisp/image/exif.el
index 065456dc31..6aeb52c726 100644
--- a/lisp/image/exif.el
+++ b/lisp/image/exif.el
@@ -95,7 +95,7 @@ exif-parse-file
   "Parse FILE (a JPEG file) and return the Exif data, if any.
 The return value is a list of Exif items.
 
-If the data is invalid, an `exif-error' is signalled."
+If the data is invalid, an `exif-error' is signaled."
   (with-temp-buffer
     (set-buffer-multibyte nil)
     (insert-file-contents-literally file)
@@ -105,7 +105,7 @@ exif-parse-buffer
   "Parse BUFFER (which should be a JPEG file) and return the Exif data, if any.
 The return value is a list of Exif items.
 
-If the data is invalid, an `exif-error' is signalled."
+If the data is invalid, an `exif-error' is signaled."
   (setq buffer (or buffer (current-buffer)))
   (with-current-buffer buffer
     (if enable-multibyte-characters
diff --git a/lisp/international/mule-util.el b/lisp/international/mule-util.el
index caa5747817..5cc10b1315 100644
--- a/lisp/international/mule-util.el
+++ b/lisp/international/mule-util.el
@@ -75,7 +75,7 @@ truncate-string-to-width
 width of ELLIPSIS.  If it is non-nil and not a string, then ELLIPSIS
 defaults to `truncate-string-ellipsis'.
 
-If ELLIPSIS-TEXT-PROPERTY in non-nil, a too-long string will not
+If ELLIPSIS-TEXT-PROPERTY is non-nil, a too-long string will not
 be truncated, but instead the elided parts will be covered by a
 `display' text property showing the ellipsis."
   (or start-column
diff --git a/lisp/json.el b/lisp/json.el
index 18d7fda882..ac323dac29 100644
--- a/lisp/json.el
+++ b/lisp/json.el
@@ -735,7 +735,7 @@ json-encode
 
 OBJECT should have a structure like one returned by `json-read'.
 If an error is detected during encoding, an error based on
-`json-error' is signalled."
+`json-error' is signaled."
   (cond ((memq object (list t json-null json-false))
          (json-encode-keyword object))
         ((stringp object)      (json-encode-string object))
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index b81f778eb4..f6e2b236f3 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -163,8 +163,8 @@ complete-with-action
 
 If ACTION is `metadata' or a list where the first element is
 `boundaries', return nil.  If ACTION is nil, this function works
-like `try-completion'; if it's t, this function works like
-`all-completion'; and any other values makes it work like
+like `try-completion'; if it is t, this function works like
+`all-completion'; and any other value makes it work like
 `test-completion'."
   (cond
    ((functionp collection) (funcall collection string predicate action))
diff --git a/lisp/obsolete/cl.el b/lisp/obsolete/cl.el
index 1da4289b69..20bffffd78 100644
--- a/lisp/obsolete/cl.el
+++ b/lisp/obsolete/cl.el
@@ -509,7 +509,7 @@ define-setf-expander
 ARGLIST, as if NAME were going to be expanded as a macro, then
 the BODY forms are executed and must return a list of five elements:
 a temporary-variables list, a value-forms list, a store-variables list
-\(of length one), a store-form, and an access- form.
+\(of length one), a store-form, and an access-form.
 
 See `gv-define-expander', and `gv-define-setter' for better and
 simpler ways to define setf-methods."
diff --git a/lisp/startup.el b/lisp/startup.el
index 5af264e3ef..bff10003f8 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -352,11 +352,11 @@ init-file-user
 
 (defcustom site-run-file (purecopy "site-start")
   "File containing site-wide run-time initializations.
-This file is loaded at run-time before `~/.emacs'.  It contains inits
-that need to be in place for the entire site, but which, due to their
-higher incidence of change, don't make sense to put into Emacs's
+This file is loaded at run-time before `user-init-file'.  It contains
+inits that need to be in place for the entire site, but which, due to
+their higher incidence of change, don't make sense to put into Emacs's
 dump file.  Thus, the run-time load order is: 1. file described in
-this variable, if non-nil; 2. `~/.emacs'; 3. `default.el'.
+this variable, if non-nil; 2. `user-init-file'; 3. `default.el'.
 
 Don't use the `site-start.el' file for things some users may not like.
 Put them in `default.el' instead, so that users can more easily
diff --git a/lisp/subr.el b/lisp/subr.el
index a744cfddfd..33194e4ffa 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -385,7 +385,7 @@ user-error
 This can be overridden by `debug-ignored-errors'.
 
 To signal with MESSAGE without interpreting format characters
-like `%', `\\=`' and `\\='', use (error \"%s\" MESSAGE).
+like `%', `\\=`' and `\\='', use (user-error \"%s\" MESSAGE).
 In Emacs, the convention is that error messages start with a capital
 letter but *do not* end with a period.  Please follow this convention
 for the sake of consistency."
@@ -3290,7 +3290,7 @@ sha1
 
 (defun function-get (f prop &optional autoload)
   "Return the value of property PROP of function F.
-If AUTOLOAD is non-nil and F is autoloaded, try to autoload it
+If AUTOLOAD is non-nil and F is autoloaded, try to load it
 in the hope that it will set PROP.  If AUTOLOAD is `macro', do it only
 if it's an autoloaded macro."
   (let ((val nil))
@@ -4997,7 +4997,7 @@ define-mail-user-agent
 (defun backtrace-frames (&optional base)
   "Collect all frames of current backtrace into a list.
 If non-nil, BASE should be a function, and frames before its
-nearest activation frames are discarded."
+nearest activation frame are discarded."
   (let ((frames nil))
     (mapbacktrace (lambda (&rest frame) (push frame frames))
                   (or base 'backtrace-frames))
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index a9fbd2f04c..65f61644b6 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -800,8 +800,8 @@ ispell-debug-buffer
 
 (defun ispell-create-debug-buffer (&optional append)
   "Create an ispell debug buffer for debugging output.
-If APPEND is non-nil, append the info to previous buffer if exists,
-otherwise is reset.  Returns name of ispell debug buffer.
+If APPEND is non-nil, add output to the old buffer if it exists,
+otherwise the buffer is erased first.  Returns the debug buffer.
 See `ispell-buffer-with-debug' for an example of use."
   (let ((ispell-debug-buffer (get-buffer-create "*ispell-debug*")))
     (with-current-buffer ispell-debug-buffer
@@ -812,7 +812,7 @@ ispell-create-debug-buffer
     ispell-debug-buffer))
 
 (defsubst ispell-print-if-debug (format &rest args)
-  "Print message using FORMAT and ARGS to `ispell-debug-buffer' buffer if enabled."
+  "Print message using FORMAT and ARGS to `ispell-debug-buffer' if enabled."
   (if (boundp 'ispell-debug-buffer)
       (with-current-buffer ispell-debug-buffer
 	(goto-char (point-max))
@@ -3618,8 +3618,8 @@ ispell-buffer
 
 ;;;###autoload
 (defun ispell-buffer-with-debug (&optional append)
-  "`ispell-buffer' with some output sent to `ispell-debug-buffer' buffer.
-If APPEND is non-n il, append the info to previous buffer if exists."
+  "`ispell-buffer' with some output sent to `ispell-debug-buffer'.
+If APPEND is non-nil, don't erase previous debugging output."
   (interactive)
   (let ((ispell-debug-buffer (ispell-create-debug-buffer append)))
     (ispell-buffer)))
diff --git a/src/eval.c b/src/eval.c
index 78a787c4ff..014905ce6d 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1229,7 +1229,7 @@ DEFUN ("condition-case", Fcondition_case, Scondition_case, 2, UNEVALLED, 0,
 single condition name; then it handles all of them.  If the special
 condition name `debug' is present in this list, it allows another
 condition in the list to run the debugger if `debug-on-error' and the
-other usual mechanisms says it should (otherwise, `condition-case'
+other usual mechanisms say it should (otherwise, `condition-case'
 suppresses the debugger).
 
 When a handler handles an error, control returns to the `condition-case'
diff --git a/src/lread.c b/src/lread.c
index af7480a976..f9a8cb3e1a 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -4919,7 +4919,7 @@ syms_of_lread (void)
 `(defface . SYMBOL)', `(define-type . SYMBOL)',
 `(cl-defmethod METHOD SPECIALIZERS)', or `(t . SYMBOL)'.
 Entries like `(t . SYMBOL)' may precede a `(defun . FUNCTION)' entry,
-and means that SYMBOL was an autoload before this file redefined it
+and mean that SYMBOL was an autoload before this file redefined it
 as a function.  In addition, entries may also be single symbols,
 which means that symbol was defined by `defvar' or `defconst'.
 
diff --git a/test/lisp/jsonrpc-tests.el b/test/lisp/jsonrpc-tests.el
index 63c4c32d45..6c08023d4f 100644
--- a/test/lisp/jsonrpc-tests.el
+++ b/test/lisp/jsonrpc-tests.el
@@ -114,7 +114,7 @@ errors-with--32601
     (condition-case err
         (progn
           (jsonrpc-request conn 'delete-directory "~/tmp")
-          (ert-fail "A `jsonrpc-error' should have been signalled!"))
+          (ert-fail "A `jsonrpc-error' should have been signaled!"))
       (jsonrpc-error
        (should (= -32601 (cdr (assoc 'jsonrpc-error-code (cdr err)))))))))
 
@@ -124,7 +124,7 @@ signals-an--32603-JSONRPC-error
     (condition-case err
         (progn
           (jsonrpc-request conn '+ ["a" 2])
-          (ert-fail "A `jsonrpc-error' should have been signalled!"))
+          (ert-fail "A `jsonrpc-error' should have been signaled!"))
       (jsonrpc-error
        (should (= -32603 (cdr (assoc 'jsonrpc-error-code (cdr err)))))))))
 
diff --git a/test/src/thread-tests.el b/test/src/thread-tests.el
index 6673ac4b4e..5d85fc74e5 100644
--- a/test/src/thread-tests.el
+++ b/test/src/thread-tests.el
@@ -112,7 +112,7 @@ threads-join-self
   (should-error (thread-join (current-thread))))
 
 (ert-deftest threads-join-error ()
-  "Test of error signalling from `thread-join'."
+  "Test of error signaling from `thread-join'."
   :tags '(:unstable)
   (skip-unless (featurep 'threads))
   (let ((thread (make-thread #'threads-call-error)))
-- 
2.26.1