summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2018-02-17 07:50:28 -0800
committerGlenn Morris <rgm@gnu.org>2018-02-17 07:50:28 -0800
commit4fa90ff8f5fda54fc42049c990c52d3e5236fbe6 (patch)
tree6c0a7893b3aab0166b35938338fa289c3a01df74
parentcb3863370cbe574810f796726faa39ba0de0a429 (diff)
parente5a29330aae4491fd384bacaff6f453c6434d322 (diff)
downloademacs-4fa90ff8f5fda54fc42049c990c52d3e5236fbe6.tar.gz
Merge from origin/emacs-26
e5a2933 (origin/emacs-26) lisp/vc/: documentation fixes f21f8e6 Document 'desktop-files-not-to-save' d8917eb Improve documentation of Profiling features b228839 Improve indexing of "performance" in ELisp manual ab67b3e Minor change in Emacs manual's VC chapter c352434 Avoid memory corruption with specpdl overflow + edebug (Bug#3... 593bbda Document comment-fill-column in the manual (Bug#11636) bd4cc8d * doc/emacs/dired.texi (Marks vs Flags): Copyedits. 69107f3 ; Fix doc typos related to indefinite articles aaad1e6 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac... 5906418 More fixes for the Emacs manual 9ab3df1 ; Fix doc typos related to indefinite articles 66a4e65 ; Fix doc typos related to indefinite articles 35e5c57 ; Fix doc typos related to indefinite articles
-rw-r--r--admin/grammars/c.by4
-rw-r--r--admin/notes/unicode2
-rw-r--r--doc/emacs/dired.texi6
-rw-r--r--doc/emacs/maintaining.texi66
-rw-r--r--doc/emacs/misc.texi5
-rw-r--r--doc/emacs/programs.texi25
-rw-r--r--doc/emacs/rmail.texi2
-rw-r--r--doc/emacs/vc1-xtra.texi7
-rw-r--r--doc/lispintro/emacs-lisp-intro.texi4
-rw-r--r--doc/lispref/buffers.texi2
-rw-r--r--doc/lispref/debugging.texi60
-rw-r--r--doc/lispref/edebug.texi2
-rw-r--r--doc/lispref/package.texi2
-rw-r--r--doc/lispref/text.texi2
-rw-r--r--doc/lispref/windows.texi2
-rw-r--r--doc/misc/autotype.texi2
-rw-r--r--doc/misc/cc-mode.texi2
-rw-r--r--doc/misc/efaq.texi4
-rw-r--r--doc/misc/eshell.texi2
-rw-r--r--doc/misc/gnus-faq.texi8
-rw-r--r--doc/misc/org.texi2
-rw-r--r--doc/misc/sc.texi4
-rw-r--r--etc/CALC-NEWS2
-rw-r--r--etc/ETAGS.EBNF2
-rw-r--r--etc/NEWS.2015
-rw-r--r--etc/NEWS.214
-rw-r--r--etc/NEWS.222
-rw-r--r--etc/ORG-NEWS2
-rw-r--r--lisp/calendar/holidays.el2
-rw-r--r--lisp/calendar/todo-mode.el2
-rw-r--r--lisp/cedet/ede/cpp-root.el2
-rw-r--r--lisp/cedet/ede/files.el2
-rw-r--r--lisp/cedet/semantic/analyze.el2
-rw-r--r--lisp/cedet/semantic/dep.el2
-rw-r--r--lisp/cedet/semantic/lex.el2
-rw-r--r--lisp/cedet/semantic/util-modes.el2
-rw-r--r--lisp/cedet/srecode/el.el2
-rw-r--r--lisp/cus-edit.el2
-rw-r--r--lisp/desktop.el3
-rw-r--r--lisp/emacs-lisp/benchmark.el3
-rw-r--r--lisp/emacs-lisp/edebug.el2
-rw-r--r--lisp/emacs-lisp/elp.el5
-rw-r--r--lisp/emacs-lisp/ewoc.el2
-rw-r--r--lisp/emacs-lisp/package.el2
-rw-r--r--lisp/epa.el2
-rw-r--r--lisp/eshell/esh-cmd.el2
-rw-r--r--lisp/eshell/esh-proc.el2
-rw-r--r--lisp/faces.el2
-rw-r--r--lisp/ffap.el2
-rw-r--r--lisp/filenotify.el2
-rw-r--r--lisp/font-lock.el2
-rw-r--r--lisp/gnus/deuglify.el2
-rw-r--r--lisp/gnus/gnus-agent.el2
-rw-r--r--lisp/gnus/gnus-cache.el2
-rw-r--r--lisp/gnus/gnus-cus.el2
-rw-r--r--lisp/gnus/gnus-fun.el2
-rw-r--r--lisp/gnus/gnus.el6
-rw-r--r--lisp/hexl.el2
-rw-r--r--lisp/htmlfontify.el2
-rw-r--r--lisp/image/gravatar.el4
-rw-r--r--lisp/international/fontset.el2
-rw-r--r--lisp/mail/rmailedit.el2
-rw-r--r--lisp/mh-e/mh-e.el2
-rw-r--r--lisp/mh-e/mh-mime.el2
-rw-r--r--lisp/mh-e/mh-search.el6
-rw-r--r--lisp/net/gnutls.el2
-rw-r--r--lisp/net/mailcap.el4
-rw-r--r--lisp/nxml/xsd-regexp.el6
-rw-r--r--lisp/org/ob-calc.el2
-rw-r--r--lisp/org/ob-core.el6
-rw-r--r--lisp/org/ob-org.el2
-rw-r--r--lisp/org/ob-picolisp.el2
-rw-r--r--lisp/org/org-clock.el2
-rw-r--r--lisp/org/org-eww.el6
-rw-r--r--lisp/org/org-protocol.el2
-rw-r--r--lisp/org/ox-html.el2
-rw-r--r--lisp/org/ox-latex.el2
-rw-r--r--lisp/org/ox-odt.el5
-rw-r--r--lisp/org/ox-texinfo.el2
-rw-r--r--lisp/progmodes/ada-mode.el2
-rw-r--r--lisp/progmodes/ada-stmt.el4
-rw-r--r--lisp/progmodes/antlr-mode.el2
-rw-r--r--lisp/progmodes/cc-engine.el4
-rw-r--r--lisp/progmodes/cc-menus.el2
-rw-r--r--lisp/progmodes/cc-mode.el2
-rw-r--r--lisp/progmodes/compile.el2
-rw-r--r--lisp/progmodes/icon.el2
-rw-r--r--lisp/progmodes/python.el6
-rw-r--r--lisp/progmodes/sh-script.el2
-rw-r--r--lisp/progmodes/sql.el4
-rw-r--r--lisp/progmodes/vhdl-mode.el2
-rw-r--r--lisp/tempo.el2
-rw-r--r--lisp/term/README2
-rw-r--r--lisp/textmodes/artist.el28
-rw-r--r--lisp/textmodes/flyspell.el2
-rw-r--r--lisp/textmodes/reftex-vars.el2
-rw-r--r--lisp/textmodes/rst.el12
-rw-r--r--lisp/thumbs.el2
-rw-r--r--lisp/vc/add-log.el2
-rw-r--r--lisp/vc/vc-git.el2
-rw-r--r--lisp/vc/vc.el5
-rw-r--r--lisp/wid-edit.el4
-rw-r--r--src/.gdbinit2
-rw-r--r--src/character.c2
-rw-r--r--src/character.h2
-rw-r--r--src/charset.c2
-rw-r--r--src/coding.c4
-rw-r--r--src/dbusbind.c2
-rw-r--r--src/eval.c5
-rw-r--r--src/image.c2
-rw-r--r--src/inotify.c2
-rw-r--r--src/keymap.c2
-rw-r--r--src/process.c2
-rw-r--r--src/regex.c2
-rw-r--r--src/syntax.c2
-rw-r--r--src/xdisp.c2
-rw-r--r--src/xsettings.c2
-rw-r--r--test/src/eval-tests.el20
118 files changed, 288 insertions, 240 deletions
diff --git a/admin/grammars/c.by b/admin/grammars/c.by
index 4a52bec07f0..3755c323220 100644
--- a/admin/grammars/c.by
+++ b/admin/grammars/c.by
@@ -917,8 +917,8 @@ variablearg-opt-name
( ,$1 )
| semantic-list arg-list
( (car ( EXPAND $1 function-pointer )) $2)
- ;; Klaus Berndl: This allows variableargs without a arg-name being
- ;; parsed correct even if there several pointers (*)
+ ;; Klaus Berndl: This allows variableargs without an arg-name being
+ ;; parsed correctly even if there several pointers (*)
| opt-stars
( "" ,$1 nil nil nil )
;
diff --git a/admin/notes/unicode b/admin/notes/unicode
index 85ba67bc503..ff0de8aeff9 100644
--- a/admin/notes/unicode
+++ b/admin/notes/unicode
@@ -85,7 +85,7 @@ regard to completeness.
code (keymap.c and print.c).
* Rationalize character syntax and its relationship to the Unicode
- database. (Applies mainly to symbol an punctuation syntax.)
+ database. (Applies mainly to symbol and punctuation syntax.)
* Fontset handling and customization needs work. We want to relate
fonts to scripts, probably based on the Unicode blocks. The
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi
index 3fa35f14746..0a6228564f5 100644
--- a/doc/emacs/dired.texi
+++ b/doc/emacs/dired.texi
@@ -578,9 +578,9 @@ command will look in the buffer without revisiting the file, so the results
might be inconsistent with the file on disk if its contents have changed
since it was last visited. If you don't want this, you may wish to
revert the files you have visited in your buffers, or to turn on
-the @code{auto-revert} mode in those buffers, before invoking this
-command. @xref{Reverting}. If you prefer that this command always
-revisits the file, without having to revert the file or enable
+@code{auto-revert} mode in those buffers, before invoking this
+command. @xref{Reverting}. If you prefer that this command should always
+revisit the file, without you having to revert the file or enable
@code{auto-revert} mode, you might want to set
@code{dired-always-read-filesystem} to non-@code{nil}.
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi
index 1234db84b2f..541bf9708ba 100644
--- a/doc/emacs/maintaining.texi
+++ b/doc/emacs/maintaining.texi
@@ -60,8 +60,8 @@ changed.
The Emacs version control interface is called @dfn{VC}@. VC
commands work with several different version control systems;
currently, it supports Bazaar, CVS, Git, Mercurial, Monotone, RCS,
-SCCS/CSSC, and Subversion. Of these, the GNU project distributes CVS,
-RCS, and Bazaar.
+SRC, SCCS/CSSC, and Subversion. Of these, the GNU project distributes
+CVS, RCS, and Bazaar.
VC is enabled automatically whenever you visit a file governed by a
version control system. To disable VC entirely, set the customizable
@@ -80,9 +80,7 @@ current buffer, use the command @code{vc-refresh-state}. This command
is useful when you perform version control commands outside Emacs
(e.g., from the shell prompt), or if you put the buffer's file under a
different version control system, or remove it from version control
-entirely. A companion command @code{vc-state-refresh} does the same,
-but does not consider switching the version control system or removal
-from VC.
+entirely.
@menu
* Introduction to VC:: How version control works in general.
@@ -185,12 +183,12 @@ everything you can do with RCS can be done through VC.
@cindex CVS
@item
-CVS is the free version control system that was, until recently (circa
-2008), used by the majority of free software projects. Nowadays, it
-is slowly being superseded by newer systems. CVS allows concurrent
-multi-user development either locally or over the network. Unlike
-newer systems, it lacks support for atomic commits and file
-moving/renaming. VC supports all basic editing operations under CVS.
+CVS is the free version control system that was, until circa 2008,
+used by the majority of free software projects. Since then, it has
+been superseded by newer systems. CVS allows concurrent multi-user
+development either locally or over the network. Unlike newer systems,
+it lacks support for atomic commits and file moving/renaming. VC
+supports all basic editing operations under CVS.
@cindex SVN
@cindex Subversion
@@ -322,13 +320,14 @@ possible.
@subsubsection Changeset-based vs File-based Version Control
@cindex file-based version control
- On SCCS, RCS, CVS, and other early version control systems, version
-control operations are @dfn{file-based}: each file has its own comment
-and revision history separate from that of all other files. Newer
-systems, beginning with Subversion, are @dfn{changeset-based}: a
-commit may include changes to several files, and the entire set of
-changes is handled as a unit. Any comment associated with the change
-does not belong to a single file, but to the changeset itself.
+ On SCCS, RCS, CVS, and other early version control systems (and also
+in SRC), version control operations are @dfn{file-based}: each file
+has its own comment and revision history separate from that of all
+other files. Newer systems, beginning with Subversion, are
+@dfn{changeset-based}: a commit may include changes to several files,
+and the entire set of changes is handled as a unit. Any comment
+associated with the change does not belong to a single file, but to
+the changeset itself.
@cindex changeset-based version control
Changeset-based version control is more flexible and powerful than
@@ -344,7 +343,7 @@ all of it.
@cindex distributed version control
Early version control systems were designed around a
@dfn{centralized} model in which each project has only one repository
-used by all developers. SCCS, RCS, CVS, and Subversion share this
+used by all developers. SCCS, RCS, CVS, Subversion, and SRC share this
kind of model. One of its drawbacks is that the repository is a choke
point for reliability and efficiency.
@@ -526,7 +525,7 @@ desired log entry for the new revision, followed by @kbd{C-c C-c} to
commit. @xref{Log Buffer}.
If committing to a shared repository, the commit may fail if the
-repository that has been changed since your last update. In that
+repository has been changed since your last update. In that
case, you must perform an update before trying again. On a
decentralized version control system, use @kbd{C-x v +}
(@pxref{Pulling / Pushing}) or @kbd{C-x v m} (@pxref{Merging}).
@@ -609,7 +608,7 @@ if the fileset can be managed by more than one version control system,
and Emacs fails to detect the correct one.
@item
-Otherwise, if using CVS or RCS, you can specify a revision ID.
+Otherwise, if using CVS, RCS or SRC, you can specify a revision ID.
If the fileset is modified (or locked), this makes Emacs commit with
that revision ID@. You can create a new branch by supplying an
@@ -660,11 +659,10 @@ Author: J. R. Hacker <jrh@@example.com>
@noindent
Apart from the @samp{Author} header, Emacs recognizes the headers
-@samp{Date} (a manually-specified commit time) and @samp{Fixes} (a
-reference to a bug fixed by the change). Not all version control
-systems recognize all headers: Bazaar recognizes all three headers,
-while Git, Mercurial, and Monotone recognize only @samp{Author} and
-@samp{Date}. If you specify a header for a system that does not
+@samp{Summary} (a one-line summary of the changeset), @samp{Date} (a
+manually-specified commit time), and @samp{Fixes} (a reference to a
+bug fixed by the change). Not all version control systems recognize
+all headers. If you specify a header for a system that does not
support it, the header is treated as part of the log entry.
@kindex C-c C-f @r{(Log Edit mode)}
@@ -969,9 +967,9 @@ file listed on the current line.
@findex log-view-toggle-entry-display
@kbd{C-x v L} (@code{vc-print-root-log}) displays a
@file{*vc-change-log*} buffer showing the history of the entire
-version-controlled directory tree (RCS, SCCS, and CVS do not support
-this feature). With a prefix argument, the command prompts for the
-maximum number of revisions to display.
+version-controlled directory tree (RCS, SCCS, CVS, and SRC do not
+support this feature). With a prefix argument, the command prompts
+for the maximum number of revisions to display.
The @kbd{C-x v L} history is shown in a compact form, usually
showing only the first line of each log entry. However, you can type
@@ -1048,7 +1046,7 @@ if you set the value to zero, that removes the limit. You can also
increase the number of revisions shown in an existing
@file{*vc-change-log*} buffer by clicking on the @samp{Show 2X
entries} or @samp{Show unlimited entries} buttons at the end of the
-buffer. However, RCS, SCCS, and CVS do not support this feature.
+buffer. However, RCS, SCCS, CVS, and SRC do not support this feature.
@kindex C-x v h
@findex vc-region-history
@@ -1189,7 +1187,7 @@ but is not yet committed, while @file{temp.txt} is not under version
control (@pxref{Registering}).
The @samp{*} characters next to the entries for @file{README} and
-@file{src/main.c} indicate that the user has marked out these files as
+@file{src/main.c} indicate that the user has marked these files as
the current VC fileset
@iftex
(see below).
@@ -1280,7 +1278,7 @@ point is on a directory entry, unmark all files in that directory tree
files and directories.
@item x
-Hide files with @samp{up-to-date} status
+Hide files with @samp{up-to-date} or @samp{ignored} status
(@code{vc-dir-hide-up-to-date}). With a prefix argument, hide items
whose state is that of the item at point.
@end table
@@ -1352,7 +1350,7 @@ Switch to a branch (@code{vc-retrieve-tag}). @xref{Switching Branches}.
context menu invoked by @kbd{mouse-2}. Furthermore, some VC backends
use the menu to provide extra backend-specific commands. For example,
Git and Bazaar allow you to manipulate @dfn{stashes} and @dfn{shelves}
-(where are a way to temporarily put aside uncommitted changes, and
+(which are a way to temporarily put aside uncommitted changes, and
bring them back at a later time).
@node Branches
@@ -1517,7 +1515,7 @@ is shown in a separate buffer.
prompts for a branch ID, or a pair of revision IDs (@pxref{Switching
Branches}); then it finds the changes from that branch, or the changes
between the two revisions you specified, and merges those changes into
-the current VC fileset. If you just type @key{RET}, Emacs simply
+the current VC fileset. If you just type @kbd{@key{RET}}, Emacs simply
merges any changes that were made on the same branch since you checked
the file out.
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
index ae6f9446f28..cfc689e4641 100644
--- a/doc/emacs/misc.texi
+++ b/doc/emacs/misc.texi
@@ -2434,6 +2434,11 @@ To disable this, set @code{desktop-restore-frames} to @code{nil}.
(See that variable's documentation for some related options
that you can customize to fine-tune this behavior.)
+@vindex desktop-files-not-to-save
+Information about buffers visiting remote files is not saved by
+default. Customize the variable @code{desktop-files-not-to-save} to
+change this.
+
@vindex frameset-filter-alist
When the desktop restores the frame and window configuration, it
uses the recorded values of frame parameters, disregarding any
diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi
index 215717864fe..4a59f4307ed 100644
--- a/doc/emacs/programs.texi
+++ b/doc/emacs/programs.texi
@@ -965,13 +965,13 @@ the line is blank (i.e., empty or containing only whitespace
characters), the comment is indented to the same position where
@kbd{@key{TAB}} would indent to (@pxref{Basic Indent}). If the line
is non-blank, the comment is placed after the last non-whitespace
-character on the line; normally, Emacs tries putting it at the column
-specified by the variable @code{comment-column} (@pxref{Options for
-Comments}), but if the line already extends past that column, it puts
-the comment at some suitable position, usually separated from the
-non-comment text by at least one space. In each case, Emacs places
-point after the comment's starting delimiter, so that you can start
-typing the comment text right away.
+character on the line. Emacs tries to fit the comment between the
+columns specified by the variables @code{comment-column} and
+@code{comment-fill-column} (@pxref{Options for Comments}), if
+possible. Otherwise, it will choose some other suitable position,
+usually separated from the non-comment text by at least one space. In
+each case, Emacs places point after the comment's starting delimiter,
+so that you can start typing the comment text right away.
You can also use @kbd{M-;} to align an existing comment. If a line
already contains the comment-start string, @kbd{M-;} realigns it to
@@ -1064,13 +1064,16 @@ comment. Enable the @code{comment-close-slash} clean-up for this.
@subsection Options Controlling Comments
@vindex comment-column
+@vindex comment-fill-column
@kindex C-x ;
@findex comment-set-column
As mentioned in @ref{Comment Commands}, when the @kbd{M-j} command
-adds a comment to a line, it tries to place the comment at the column
-specified by the buffer-local variable @code{comment-column}. You can
-set either the local value or the default value of this buffer-local
-variable in the usual way (@pxref{Locals}). Alternatively, you can
+adds a comment to a line, it tries to place the comment between the
+columns specified by the buffer-local variables @code{comment-column}
+and @code{comment-fill-column} (or if that is @code{nil}, then the
+value of @code{fill-column}, @pxref{Fill Commands}). You can set
+either the local value or the default value of these buffer-local
+variables in the usual way (@pxref{Locals}). Alternatively, you can
type @kbd{C-x ;} (@code{comment-set-column}) to set the value of
@code{comment-column} in the current buffer to the column where point
is currently located. @kbd{C-u C-x ;} sets the comment column to
diff --git a/doc/emacs/rmail.texi b/doc/emacs/rmail.texi
index 09cb034e372..e9371f39a96 100644
--- a/doc/emacs/rmail.texi
+++ b/doc/emacs/rmail.texi
@@ -1585,7 +1585,7 @@ use it, add the @samp{--tls} flag to @code{rmail-movemail-flags}.
If your incoming mail is stored on a local machine in a format other
than Unix mailbox, you will need the Mailutils @command{movemail} to
retrieve it. @xref{Movemail}, for the detailed description of
-@command{movemail} versions. For example, to access mail from a inbox in
+@command{movemail} versions. For example, to access mail from an inbox in
@code{maildir} format located in @file{/var/spool/mail/in}, you would
include the following in the Rmail inbox list:
diff --git a/doc/emacs/vc1-xtra.texi b/doc/emacs/vc1-xtra.texi
index 7a4b8e47019..35dd6d1235a 100644
--- a/doc/emacs/vc1-xtra.texi
+++ b/doc/emacs/vc1-xtra.texi
@@ -113,8 +113,9 @@ Prompt for a file name, delete the file from the working tree, and
schedule the deletion for committing.
@item M-x vc-rename-file
-Prompt for two file names, @var{var} and @var{old}, rename them in the
-working tree, and schedule the renaming for committing.
+Prompt for two file names, @var{old} and @var{new}, rename them in the
+working tree, and schedule the renaming for committing. The @var{old}
+file defaults to the current buffer's file name if it is under VC.
@end table
@findex vc-delete-file
@@ -268,7 +269,7 @@ with the file's version control type.
@vindex vc-handled-backends
The variable @code{vc-handled-backends} determines which version
control systems VC should handle. The default value is @code{(RCS CVS
-SVN SCCS Bzr Git Hg Mtn Arch)}, so it contains all the version systems
+SVN SCCS SRC Bzr Git Hg Mtn)}, so it contains all the version systems
that are currently supported. If you want VC to ignore one or more of
these systems, exclude its name from the list. To disable VC
entirely, set this variable to @code{nil}.
diff --git a/doc/lispintro/emacs-lisp-intro.texi b/doc/lispintro/emacs-lisp-intro.texi
index 8b24cc1d8ba..137ccfe4a98 100644
--- a/doc/lispintro/emacs-lisp-intro.texi
+++ b/doc/lispintro/emacs-lisp-intro.texi
@@ -11799,7 +11799,7 @@ Uses recursion."
@end group
@end smallexample
-What happens when we call this function with a argument of 7?
+What happens when we call this function with an argument of 7?
The first instance of the @code{triangle-recursively} function adds
the number 7 to the value returned by a second instance of
@@ -20821,7 +20821,7 @@ The function @code{1+} which adds one to its argument, is executed on
Contrast this with @code{apply}, which applies its first argument to
all the remaining.
-(@xref{Readying a Graph, , Readying a Graph}, for a explanation of
+(@xref{Readying a Graph, , Readying a Graph}, for an explanation of
@code{apply}.)
@need 1250
diff --git a/doc/lispref/buffers.texi b/doc/lispref/buffers.texi
index 7e41eb32cce..3750fa60534 100644
--- a/doc/lispref/buffers.texi
+++ b/doc/lispref/buffers.texi
@@ -667,7 +667,7 @@ reason.
@defun ask-user-about-supersession-threat filename
This function is used to ask a user how to proceed after an attempt to
-modify an buffer visiting file @var{filename} when the file is newer
+modify a buffer visiting file @var{filename} when the file is newer
than the buffer text. Emacs detects this because the modification
time of the file on disk is newer than the last save-time and its contents
have changed.
diff --git a/doc/lispref/debugging.texi b/doc/lispref/debugging.texi
index 09692073bf9..2daa8a5578f 100644
--- a/doc/lispref/debugging.texi
+++ b/doc/lispref/debugging.texi
@@ -918,51 +918,65 @@ be cleaner to combine them.
@section Profiling
@cindex profiling
@cindex profile
+@cindex performance analysis
@cindex measuring resource usage
@cindex memory usage
-If your program is working correctly, but you want to make it run more
-quickly or efficiently, the first thing to do is @dfn{profile} your
-code so that you know how it is using resources. If you find that one
-particular function is responsible for a significant portion of the
-runtime, you can start looking for ways to optimize that piece.
+If your program is working correctly, but not fast enough, and you
+want to make it run more quickly or efficiently, the first thing to do
+is @dfn{profile} your code so that you know where it spends most of
+the execution time. If you find that one particular function is
+responsible for a significant portion of the execution time, you can
+start looking for ways to optimize that piece.
Emacs has built-in support for this. To begin profiling, type
@kbd{M-x profiler-start}. You can choose to profile by processor
-usage, memory usage, or both. After doing some work, type
-@kbd{M-x profiler-report} to display a summary buffer for each
-resource that you chose to profile. The names of the report buffers
-include the times at which the reports were generated, so you can
-generate another report later on without erasing previous results.
-When you have finished profiling, type @kbd{M-x profiler-stop} (there
-is a small overhead associated with profiling).
+usage, memory usage, or both. Then run the code you'd like to speed
+up. After that, type @kbd{M-x profiler-report} to display a summary
+buffer for each resource (cpu and memory) that you chose to profile.
+The names of the report buffers include the times at which the reports
+were generated, so you can generate another report later on without
+erasing previous results. When you have finished profiling, type
+@kbd{M-x profiler-stop} (there is a small overhead associated with
+profiling, so we don't recommend leaving it active except when you are
+actually running the code you want to examine).
The profiler report buffer shows, on each line, a function that was
-called, followed by how much resource (processor or memory) it used in
-absolute and percentage times since profiling started. If a given
+called, followed by how much resources (cpu or memory) it used in
+absolute and percentage terms since profiling started. If a given
line has a @samp{+} symbol at the left-hand side, you can expand that
line by typing @kbd{@key{RET}}, in order to see the function(s) called
by the higher-level function. Use a prefix argument (@kbd{C-u
@key{RET}}) to see the whole call tree below a function. Pressing
@kbd{@key{RET}} again will collapse back to the original state.
-Press @kbd{j} or @kbd{mouse-2} to jump to the definition of a function.
-Press @kbd{d} to view a function's documentation.
-You can save a profile to a file using @kbd{C-x C-w}.
-You can compare two profiles using @kbd{=}.
+Press @kbd{j} or @kbd{mouse-2} to jump to the definition of a function
+at point. Press @kbd{d} to view a function's documentation. You can
+save a profile to a file using @kbd{C-x C-w}. You can compare two
+profiles using @kbd{=}.
@c FIXME reversed calltree?
@cindex @file{elp.el}
@cindex timing programs
-The @file{elp} library offers an alternative approach. See the file
-@file{elp.el} for instructions.
+The @file{elp} library offers an alternative approach, which is useful
+when you know in advance which Lisp function(s) you want to profile.
+Using that library, you begin by setting @code{elp-function-list} to
+the list of function symbols---those are the functions you want to
+profile. Then type @w{@kbd{M-x elp-instrument-list @key{RET} nil
+@key{RET}}} to arrange for profiling those functions. After running
+the code you want to profile, invoke @w{@kbd{M-x elp-results}} to
+display the current results. See the file @file{elp.el} for more
+detailed instructions. This approach is limited to profiling
+functions written in Lisp, it cannot profile Emacs primitives.
@cindex @file{benchmark.el}
@cindex benchmarking
-You can check the speed of individual Emacs Lisp forms using the
-@file{benchmark} library. See the functions @code{benchmark-run} and
-@code{benchmark-run-compiled} in @file{benchmark.el}.
+You can measure the time it takes to evaluate individual Emacs Lisp
+forms using the @file{benchmark} library. See the macros
+@code{benchmark-run} and @code{benchmark-run-compiled} in
+@file{benchmark.el}. You can also use the @code{benchmark} command
+for timing forms interactively.
@c Not worth putting in the printed manual.
@ifnottex
diff --git a/doc/lispref/edebug.texi b/doc/lispref/edebug.texi
index 0c17e1e72ef..031fe65266e 100644
--- a/doc/lispref/edebug.texi
+++ b/doc/lispref/edebug.texi
@@ -898,7 +898,7 @@ lines inserted.
@cindex coverage testing (Edebug)
@cindex frequency counts
-@cindex performance analysis
+@cindex performance analysis (Edebug)
Edebug provides rudimentary coverage testing and display of execution
frequency.
diff --git a/doc/lispref/package.texi b/doc/lispref/package.texi
index 877aaf89a35..d179cf56fd2 100644
--- a/doc/lispref/package.texi
+++ b/doc/lispref/package.texi
@@ -199,7 +199,7 @@ standard keyword from the @code{finder-known-keywords} list.
as explained in @ref{Packaging Basics}. In the above example, a magic
comment autoloads @code{superfrobnicator-mode}.
- @xref{Package Archives}, for a explanation of how to add a
+ @xref{Package Archives}, for an explanation of how to add a
single-file package to a package archive.
@node Multi-file Packages
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi
index 299ed0b7d98..51a440cce74 100644
--- a/doc/lispref/text.texi
+++ b/doc/lispref/text.texi
@@ -2981,7 +2981,7 @@ optional argument @var{append} is non-@code{nil}, @var{face} is
appended to the end of the list instead. Note that in a face list,
the first occurring value for each attribute takes precedence.
-For example, the following code would assign a italicized green face
+For example, the following code would assign an italicized green face
to the text between @var{start} and @var{end}:
@example
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi
index 5ab6d6ee6a4..687d5971920 100644
--- a/doc/lispref/windows.texi
+++ b/doc/lispref/windows.texi
@@ -862,7 +862,7 @@ If the optional argument @var{pixelwise} is non-@code{nil},
A positive @var{delta} moves the edge downwards or to the right; a
negative @var{delta} moves it upwards or to the left. If the edge
cannot be moved as far as specified by @var{delta}, this function
-moves it as far as possible but does not signal a error.
+moves it as far as possible but does not signal an error.
This function tries to resize windows adjacent to the edge that is
moved. If this is not possible for some reason (e.g., if that adjacent
diff --git a/doc/misc/autotype.texi b/doc/misc/autotype.texi
index 026c57126d2..3d61d24fa9d 100644
--- a/doc/misc/autotype.texi
+++ b/doc/misc/autotype.texi
@@ -243,7 +243,7 @@ Interesting point. When wrapping skeletons around successive regions, they are
put at these places. Point is left at first @code{_} where nothing is wrapped.
@item @code{>}
Indent line according to major mode. When following element is @code{_}, and
-there is a interregion that will be wrapped here, indent that interregion.
+there is an interregion that will be wrapped here, indent that interregion.
@item @code{&}
Logical and. If preceding element moved point, i.e., usually inserted
something, do following element.
diff --git a/doc/misc/cc-mode.texi b/doc/misc/cc-mode.texi
index 0132ab1775c..2de56fa05c0 100644
--- a/doc/misc/cc-mode.texi
+++ b/doc/misc/cc-mode.texi
@@ -2408,7 +2408,7 @@ could achieve this with code like this in your @file{.emacs}:
@end group
@end example
-In a programming team, a hook is a also a good place for each member
+In a programming team, a hook is also a good place for each member
to put his own personal preferences. For example, you might be the
only person in your team who likes Auto-newline minor mode. You could
have it enabled by default by placing the following in your
diff --git a/doc/misc/efaq.texi b/doc/misc/efaq.texi
index 5392748d00f..da6fda08833 100644
--- a/doc/misc/efaq.texi
+++ b/doc/misc/efaq.texi
@@ -753,7 +753,7 @@ privileges, you have several options:
Info files don't actually need to be installed before being used.
You can use a prefix argument for the @code{info} command and specify
the name of the Info file in the minibuffer. This goes to the node
-named @samp{Top} in that file. For example, to view a Info file named
+named @samp{Top} in that file. For example, to view an Info file named
@file{@var{info-file}} in your home directory, you can type this:
@example
@@ -3419,7 +3419,7 @@ version of Emacs, and see @ref{Current GNU distributions}, for a list of
archive sites that make GNU software available.
@node Finding a package with particular functionality
-@section How do I find a Emacs Lisp package that does XXX?
+@section How do I find an Emacs Lisp package that does XXX?
@cindex Package, finding
@cindex Finding an Emacs Lisp package
@cindex Functionality, finding a particular package
diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi
index 43f8cd63811..1789767dbe2 100644
--- a/doc/misc/eshell.texi
+++ b/doc/misc/eshell.texi
@@ -1022,7 +1022,7 @@ So that the user can enter @samp{info chmod}, for example.
@item Create a mode @code{eshell-browse}
-It would treat the Eshell buffer as a outline. Collapsing the outline
+It would treat the Eshell buffer as an outline. Collapsing the outline
hides all of the output text. Collapsing again would show only the
first command run in each directory
diff --git a/doc/misc/gnus-faq.texi b/doc/misc/gnus-faq.texi
index 14c0117191e..26135b81de7 100644
--- a/doc/misc/gnus-faq.texi
+++ b/doc/misc/gnus-faq.texi
@@ -441,7 +441,7 @@ machine news.yourprovider.net login YourUserName password YourPassword
@noindent
.
Make sure that the file isn't readable to others if you
-work on a OS which is capable of doing so. (Under Unix
+work on an OS which is capable of doing so. (Under Unix
say
@example
chmod 600 ~/.authinfo
@@ -1449,7 +1449,7 @@ all those email addresses?
@subsubheading Answer
-There's an very basic solution for this, mail aliases.
+There's a very basic solution for this, mail aliases.
You can store your mail addresses in a ~/.mailrc file using a simple
alias syntax:
@@ -2012,7 +2012,7 @@ server by typing @samp{J a}. If you
make a mistake, or change your mind, you can undo this
action by typing @samp{J r}. When
you're done, type 'q' to return to the group buffer.
-Now the next time you enter a group on a agentized
+Now the next time you enter a group on an agentized
server, the headers will be stored on disk and read from
there the next time you enter the group.
@@ -2293,7 +2293,7 @@ When the term Emacs is used in this FAQ, it means either GNU
Emacs or XEmacs.
@item Message
-In this FAQ message means a either a mail or a posting to a
+In this FAQ message means either a mail or a posting to a
Usenet Newsgroup or to some other fancy back end, no matter
of which kind it is.
diff --git a/doc/misc/org.texi b/doc/misc/org.texi
index 68aa01ca18c..17931905f1a 100644
--- a/doc/misc/org.texi
+++ b/doc/misc/org.texi
@@ -12989,7 +12989,7 @@ of these examples works:
@subsubheading Embedding clickable images
For clickable images, provide a link whose description is another link to an
-image file. For example, to embed a image @file{org-mode-unicorn.png} which
+image file. For example, to embed an image @file{org-mode-unicorn.png} which
when clicked jumps to @uref{http://Orgmode.org} website, do the following
@example
diff --git a/doc/misc/sc.texi b/doc/misc/sc.texi
index d8faad9099f..f214152b5f4 100644
--- a/doc/misc/sc.texi
+++ b/doc/misc/sc.texi
@@ -1340,7 +1340,7 @@ currently part of Supercite, but contributions are welcome!
Regi works by interpreting frames with the function
@code{regi-interpret}. A frame is a list of arbitrary size where each
-element is a entry of the following form:
+element is an entry of the following form:
@example
(@var{pred} @var{func} [@var{negate-p} [@var{case-fold-search}]])
@@ -1709,7 +1709,7 @@ of information from the info alist.
@item @code{sc-mail-field-query} (@kbd{C-c C-p f})
Allows you to interactively view, modify, add, and delete info alist
key-value pairs. With no argument, you are prompted (with completion)
-for a info key. The value associated with that key is displayed in the
+for an info key. The value associated with that key is displayed in the
minibuffer. With an argument, this command will first ask if you want
to view, modify, add, or delete an info key. Viewing is identical to
running the command with no arguments.
diff --git a/etc/CALC-NEWS b/etc/CALC-NEWS
index 394894ad036..04baf41148e 100644
--- a/etc/CALC-NEWS
+++ b/etc/CALC-NEWS
@@ -70,7 +70,7 @@ For changes in Emacs 23.1 and later, see the main Emacs NEWS file.
* Version 2.02d:
-** Fixed a minor installation problem with a Emacs 19.29 byte-compiler bug.
+** Fixed a minor installation problem with an Emacs 19.29 byte-compiler bug.
** Removed archaic "macedit" package (superseded by "edmacro").
diff --git a/etc/ETAGS.EBNF b/etc/ETAGS.EBNF
index 221078a88a0..23bb9445edd 100644
--- a/etc/ETAGS.EBNF
+++ b/etc/ETAGS.EBNF
@@ -84,7 +84,7 @@ whether it is possible to deduce the tag name from the pattern, and make
an unnamed tag in those cases. The name deduced from the pattern of an
unnamed tag is the implicit name of that tag.
When the user looks for a tag, and Emacs finds no explicit tag names
-that match it, Emacs then looks for an tag whose implicit tag name
+that match it, Emacs then looks for a tag whose implicit tag name
matches the request. etags.c uses implicit tag names when possible, in
order to reduce the size of the tags file.
An implicit tag name is deduced from the pattern by discarding the
diff --git a/etc/NEWS.20 b/etc/NEWS.20
index 3391d3e4682..31e640fa94e 100644
--- a/etc/NEWS.20
+++ b/etc/NEWS.20
@@ -4130,17 +4130,16 @@ is an alternative to using the keymap itself.
** Changes in invisibility features
*** Isearch can now temporarily show parts of the buffer which are
-hidden by an overlay with a invisible property, when the search match
+hidden by an overlay with an invisible property, when the search match
is inside that portion of the buffer. To enable this the overlay
-should have a isearch-open-invisible property which is a function that
-would be called having the overlay as an argument, the function should
-make the overlay visible.
+should have an isearch-open-invisible property, which is a function that
+would be called with the overlay as an argument, and should make it visible.
During incremental search the overlays are shown by modifying the
-invisible and intangible properties, if beside this more actions are
-needed the overlay should have a isearch-open-invisible-temporary
-which is a function. The function is called with 2 arguments: one is
-the overlay and the second is nil when it should show the overlay and
+invisible and intangible properties. If more actions are
+needed, the overlay should have an isearch-open-invisible-temporary property,
+which is a function. The function is called with 2 arguments: one is
+the overlay, and the second is nil when it should show the overlay and
t when it should hide it.
*** add-to-invisibility-spec, remove-from-invisibility-spec
diff --git a/etc/NEWS.21 b/etc/NEWS.21
index 04bde7e3aea..ea4f4212ee0 100644
--- a/etc/NEWS.21
+++ b/etc/NEWS.21
@@ -4348,7 +4348,7 @@ integer. This is a required property.
`:pt-height HEIGHT'
HEIGHT specifies the height of the image in pt (1/72 inch). HEIGHT
-must be a integer. This is an required property.
+must be an integer. This is a required property.
`:bounding-box BOX'
@@ -4868,7 +4868,7 @@ temporarily to nil, for example
(enlarge-window 10))
Likewise, an attempt to split a fixed-height window vertically,
-or a fixed-width window horizontally results in a error.
+or a fixed-width window horizontally results in an error.
** The cursor-type frame parameter is now supported on MS-DOS
terminals. When Emacs starts, it by default changes the cursor shape
diff --git a/etc/NEWS.22 b/etc/NEWS.22
index c1009fc0d02..26054d2c397 100644
--- a/etc/NEWS.22
+++ b/etc/NEWS.22
@@ -4895,7 +4895,7 @@ described above and specifies the total height of the line, causing a
varying number of pixels to be inserted after the line to make it line
exactly that many pixels high.
-If the `line-spacing' property value is an positive integer, the value
+If the `line-spacing' property value is a positive integer, the value
is used as additional pixels to insert after the display line; this
overrides the default frame `line-spacing' and any buffer local value of
the `line-spacing' variable.
diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS
index e7e60bea279..12eab44f0f7 100644
--- a/etc/ORG-NEWS
+++ b/etc/ORG-NEWS
@@ -148,7 +148,7 @@ directories in published site-maps.
**** Scheme: support for tables
**** Scheme: new variable: ~org-babel-scheme-null-to~
-This new custom option allows to use a empty list or null symbol to
+This new custom option allows you to use an empty list or null symbol to
format the table output, initially assigned to ~hlines~.
**** Scheme: new header ~:prologue~
diff --git a/lisp/calendar/holidays.el b/lisp/calendar/holidays.el
index 198c3bb087f..f38308378d6 100644
--- a/lisp/calendar/holidays.el
+++ b/lisp/calendar/holidays.el
@@ -399,7 +399,7 @@ use instead of point."
(defun holidays (&optional arg)
"Display the holidays for last month, this month, and next month.
If called with an optional prefix argument ARG, prompts for month and year.
-This function is suitable for execution in a init file."
+This function is suitable for execution in an init file."
(interactive "P")
(save-excursion
(let* ((completion-ignore-case t)
diff --git a/lisp/calendar/todo-mode.el b/lisp/calendar/todo-mode.el
index 4246ca5a38a..5161ae8d668 100644
--- a/lisp/calendar/todo-mode.el
+++ b/lisp/calendar/todo-mode.el
@@ -623,7 +623,7 @@ Todo mode revisit this file or, with option
file was last visited.
If you call this command before you have created any todo file in
-the current format, and you have an todo file in old format, it
+the current format, and you have a todo file in old format, it
will ask you whether to convert that file and show it.
Otherwise, calling this command before any todo file exists
prompts for a file name and an initial category (defaulting to
diff --git a/lisp/cedet/ede/cpp-root.el b/lisp/cedet/ede/cpp-root.el
index 76afe9b9bfd..bcefb4e340c 100644
--- a/lisp/cedet/ede/cpp-root.el
+++ b/lisp/cedet/ede/cpp-root.el
@@ -137,7 +137,7 @@
;; Need a way to reconfigure a project, and have it affect all open buffers.
;; From Tobias Gerdin:
;;
-;; >>3) Is there any way to refresh a ede-cpp-root-project dynamically? I have
+;; >>3) Is there any way to refresh an ede-cpp-root-project dynamically? I have
;; >>some file open part of the project, fiddle with the include paths and would
;; >>like the open buffer to notice this when I re-evaluate the
;; >>ede-cpp-root-project constructor.
diff --git a/lisp/cedet/ede/files.el b/lisp/cedet/ede/files.el
index 36ec7a1d894..c95402e365d 100644
--- a/lisp/cedet/ede/files.el
+++ b/lisp/cedet/ede/files.el
@@ -25,7 +25,7 @@
;;
;; Basic Model:
;;
-;; A directory belongs to a project if a ede-project-autoload structure
+;; A directory belongs to a project if an ede-project-autoload structure
;; matches your directory.
;;
;; A toplevel project is one where there is no active project above
diff --git a/lisp/cedet/semantic/analyze.el b/lisp/cedet/semantic/analyze.el
index 8f3d5b2b1cf..7c9f102951d 100644
--- a/lisp/cedet/semantic/analyze.el
+++ b/lisp/cedet/semantic/analyze.el
@@ -121,7 +121,7 @@ See `semantic-analyze-scoped-tags' for details.")
:type buffer
:documentation "The buffer this context is derived from.")
(errors :initarg :errors
- :documentation "Any errors thrown an caught during analysis.")
+ :documentation "Any errors thrown and caught during analysis.")
)
"Base analysis data for any context.")
diff --git a/lisp/cedet/semantic/dep.el b/lisp/cedet/semantic/dep.el
index 6f1bde02091..640884d014b 100644
--- a/lisp/cedet/semantic/dep.el
+++ b/lisp/cedet/semantic/dep.el
@@ -67,7 +67,7 @@ For mode authors, use
`defcustom-mode-local-semantic-dependency-system-include-path'
to create a mode-specific variable to control this.
-When searching for a file associated with a name found in an tag of
+When searching for a file associated with a name found in a tag of
class include, this path will be inspected for includes of type
`system'. Some include tags are agnostic to this setting and will
check both the project and system directories.")
diff --git a/lisp/cedet/semantic/lex.el b/lisp/cedet/semantic/lex.el
index 0403e5e7f20..0cc296f09da 100644
--- a/lisp/cedet/semantic/lex.el
+++ b/lisp/cedet/semantic/lex.el
@@ -408,7 +408,7 @@ TYPE name does not exist. Otherwise signal an error."
SPECS must be a list of (TYPE . TOKENS) elements, where:
TYPE is the name of the type symbol to define.
- TOKENS is an list of (TOKSYM . MATCHER) elements, where:
+ TOKENS is a list of (TOKSYM . MATCHER) elements, where:
TOKSYM is any lexical token symbol.
MATCHER is a string or regexp a text must match to be a such
diff --git a/lisp/cedet/semantic/util-modes.el b/lisp/cedet/semantic/util-modes.el
index 6374a0cb089..54c9578773a 100644
--- a/lisp/cedet/semantic/util-modes.el
+++ b/lisp/cedet/semantic/util-modes.el
@@ -782,7 +782,7 @@ If there is no function, disable the header line."
(goto-char (semantic-tag-start tag))
;; Klaus Berndl <klaus.berndl@sdm.de>:
;; goto the tag name; this is especially needed for languages
- ;; like c++ where a often used style is like:
+ ;; like c++ where an often used style is like:
;; void
;; ClassX::methodM(arg1...)
;; {
diff --git a/lisp/cedet/srecode/el.el b/lisp/cedet/srecode/el.el
index f5f1265ccda..ff9e1d53f91 100644
--- a/lisp/cedet/srecode/el.el
+++ b/lisp/cedet/srecode/el.el
@@ -24,7 +24,7 @@
;; Emacs Lisp specific handlers. To use these handlers in your
;; template, add the :name part to your template argument list.
;;
-;; Error if not in a Emacs Lisp mode
+;; Error if not in an Emacs Lisp mode
;;; Code:
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index 8284e91b790..816c7f7881a 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -1192,7 +1192,7 @@ For example, the MH-E package updates this alist as follows:
The value of PACKAGE needs to be unique and it needs to match the
PACKAGE value appearing in the :package-version keyword. Since
-the user might see the value in a error message, a good choice is
+the user might see the value in an error message, a good choice is
the official name of the package, such as MH-E or Gnus.")
;;;###autoload
diff --git a/lisp/desktop.el b/lisp/desktop.el
index 420d62a366f..8bd44658d85 100644
--- a/lisp/desktop.el
+++ b/lisp/desktop.el
@@ -393,7 +393,8 @@ or `desktop-modes-not-to-save'."
;; Skip tramp and ange-ftp files
(defcustom desktop-files-not-to-save
"\\(^/[^/:]*:\\|(ftp)$\\)"
- "Regexp identifying files whose buffers are to be excluded from saving."
+ "Regexp identifying files whose buffers are to be excluded from saving.
+The default value excludes buffers visiting remote files."
:type '(choice (const :tag "None" nil)
regexp)
:group 'desktop)
diff --git a/lisp/emacs-lisp/benchmark.el b/lisp/emacs-lisp/benchmark.el
index 0dc9333d5fa..b86b56b81ec 100644
--- a/lisp/emacs-lisp/benchmark.el
+++ b/lisp/emacs-lisp/benchmark.el
@@ -96,7 +96,8 @@ result. The overhead of the `lambda's is accounted for."
;;;###autoload
(defun benchmark (repetitions form)
"Print the time taken for REPETITIONS executions of FORM.
-Interactively, REPETITIONS is taken from the prefix arg.
+Interactively, REPETITIONS is taken from the prefix arg, and
+the command prompts for the form to benchmark.
For non-interactive use see also `benchmark-run' and
`benchmark-run-compiled'."
(interactive "p\nxForm: ")
diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el
index a0b42086308..4f97712b980 100644
--- a/lisp/emacs-lisp/edebug.el
+++ b/lisp/emacs-lisp/edebug.el
@@ -641,7 +641,7 @@ list of a symbol.")
(defun edebug-form-data-symbol ()
"Return the edebug data symbol of the form where point is in.
-If point is not inside a edebuggable form, cause error."
+If point is not inside an edebuggable form, signal an error."
(or (edebug--form-data-name (edebug-get-form-data-entry (point)))
(error "Not inside instrumented form")))
diff --git a/lisp/emacs-lisp/elp.el b/lisp/emacs-lisp/elp.el
index 2dc18163aa3..012e7cf1cd3 100644
--- a/lisp/emacs-lisp/elp.el
+++ b/lisp/emacs-lisp/elp.el
@@ -278,8 +278,9 @@ Argument FUNSYM is the symbol of a defined function."
(defun elp-instrument-list (&optional list)
"Instrument, for profiling, all functions in `elp-function-list'.
Use optional LIST if provided instead.
-If called interactively, read LIST using the minibuffer."
- (interactive "PList of functions to instrument: ") ;FIXME: Doesn't work?!
+If called interactively, prompt for LIST in the minibuffer;
+type \"nil\" to use `elp-function-list'."
+ (interactive "xList of functions to instrument: ")
(unless (listp list)
(signal 'wrong-type-argument (list 'listp list)))
(mapcar #'elp-instrument-function (or list elp-function-list)))
diff --git a/lisp/emacs-lisp/ewoc.el b/lisp/emacs-lisp/ewoc.el
index b88a1a5097c..262d4d85941 100644
--- a/lisp/emacs-lisp/ewoc.el
+++ b/lisp/emacs-lisp/ewoc.el
@@ -411,7 +411,7 @@ If the EWOC is empty, nil is returned."
((>= pos (ewoc--node-start-marker (ewoc--node-nth dll -2)))
(ewoc--node-nth dll -2))
- ;; We now know that pos is within a elem.
+ ;; We now know that pos is within an elem.
(t
;; Make an educated guess about which of the three known
;; node'es (the first, the last, or GUESS) is nearest.
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index ab02d4255b1..999e0d07524 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -1750,7 +1750,7 @@ with PKG-DESC entry removed."
"Return a list of dependencies for PACKAGE sorted by dependency.
PACKAGE is included as the first element of the returned list.
ONLY is an alist associating package names to package objects.
-Only these packages will be in the return value an their cdrs are
+Only these packages will be in the return value and their cdrs are
destructively set to nil in ONLY."
(let ((out))
(dolist (dep (package-desc-reqs package))
diff --git a/lisp/epa.el b/lisp/epa.el
index 8694de48172..5c237bca9b4 100644
--- a/lisp/epa.el
+++ b/lisp/epa.el
@@ -267,7 +267,7 @@ You should bind this variable with `let', but do not set it globally.")
(defvar epa-exit-buffer-function #'quit-window)
(define-widget 'epa-key 'push-button
- "Button for representing a epg-key object."
+ "Button for representing an epg-key object."
:format "%[%v%]"
:button-face-get 'epa--key-widget-button-face-get
:value-create 'epa--key-widget-value-create
diff --git a/lisp/eshell/esh-cmd.el b/lisp/eshell/esh-cmd.el
index ddab3350493..61c0ebc71d0 100644
--- a/lisp/eshell/esh-cmd.el
+++ b/lisp/eshell/esh-cmd.el
@@ -80,7 +80,7 @@
;;
;; echo x$(+ 1 2) "String $(+ 1 2)"
;;
-;; To pass a Lisp symbol as a argument, use the alternate quoting
+;; To pass a Lisp symbol as an argument, use the alternate quoting
;; syntax, since the single quote character is far too overused in
;; shell syntax:
;;
diff --git a/lisp/eshell/esh-proc.el b/lisp/eshell/esh-proc.el
index 841a95006f1..59fb9b926d4 100644
--- a/lisp/eshell/esh-proc.el
+++ b/lisp/eshell/esh-proc.el
@@ -87,7 +87,7 @@ variable's value to take effect."
"Called each time a process is exec'd by `eshell-gather-process-output'.
It is passed one argument, which is the process that was just started.
It is useful for things that must be done each time a process is
-executed in a eshell mode buffer (e.g., `process-kill-without-query').
+executed in an eshell mode buffer (e.g., `process-kill-without-query').
In contrast, `eshell-mode-hook' is only executed once when the buffer
is created."
:type 'hook
diff --git a/lisp/faces.el b/lisp/faces.el
index 0fe839d620e..18b821a0b69 100644
--- a/lisp/faces.el
+++ b/lisp/faces.el
@@ -698,7 +698,7 @@ Otherwise, VALUE must be a property list of the form:
`(:color COLOR :style STYLE)'.
-COLOR can be a either a color name string or `foreground-color'.
+COLOR can be either a color name string or `foreground-color'.
STYLE can be either `line' or `wave'.
If a keyword/value pair is missing from the property list, a
default value will be used for the value.
diff --git a/lisp/ffap.el b/lisp/ffap.el
index d584692533a..4e479d1b82b 100644
--- a/lisp/ffap.el
+++ b/lisp/ffap.el
@@ -1081,7 +1081,7 @@ If a given RFC isn't in these then `ffap-rfc-path' is offered."
;; * strip trailing "@" and ":"
;; * no commas (good for latex)
(file "--:\\\\${}+<>@-Z_[:alpha:]~*?" "<@" "@>;.,!:")
- ;; An url, or maybe a email/news message-id:
+ ;; An url, or maybe an email/news message-id:
(url "--:=&?$+@-Z_[:alpha:]~#,%;*()!'" "^[0-9a-zA-Z]" ":;.,!?")
;; Find a string that does *not* contain a colon:
(nocolon "--9$+<>@-Z_[:alpha:]~" "<@" "@>;.,!?")
diff --git a/lisp/filenotify.el b/lisp/filenotify.el
index d88578b65c8..5d37f39a70b 100644
--- a/lisp/filenotify.el
+++ b/lisp/filenotify.el
@@ -424,7 +424,7 @@ DESCRIPTOR should be an object returned by `file-notify-add-watch'."
;; TODO:
;; * Watching a /dir/file may receive events for dir.
;; (This may be the desired behaviour.)
-;; * Watching a file in a already watched directory
+;; * Watching a file in an already watched directory
;; If the file is created and *then* a watch is added to that file, the
;; watch might receive events which occurred prior to it being created,
;; due to the way events are propagated during idle time. Note: This
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index 6f28569fc32..29d3bc58646 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -1835,7 +1835,7 @@ If SYNTACTIC-KEYWORDS is non-nil, it means these keywords are used for
(eval keywords)))))
(defun font-lock-value-in-major-mode (values)
- "If VALUES is an list, use `major-mode' as a key and return the `assq' value.
+ "If VALUES is a list, use `major-mode' as a key and return the `assq' value.
VALUES should then be an alist on the form ((MAJOR-MODE . VALUE) ...) where
MAJOR-MODE may be t.
If VALUES isn't a list, return VALUES."
diff --git a/lisp/gnus/deuglify.el b/lisp/gnus/deuglify.el
index ce3ead3568f..d2bc87caa27 100644
--- a/lisp/gnus/deuglify.el
+++ b/lisp/gnus/deuglify.el
@@ -284,7 +284,7 @@
:group 'gnus-outlook-deuglify)
(defcustom gnus-outlook-display-hook nil
- "A hook called after an deuglified article has been prepared.
+ "A hook called after a deuglified article has been prepared.
It is run after `gnus-article-prepare-hook'."
:version "22.1"
:type 'hook
diff --git a/lisp/gnus/gnus-agent.el b/lisp/gnus/gnus-agent.el
index c786a9c82de..ada148d20b2 100644
--- a/lisp/gnus/gnus-agent.el
+++ b/lisp/gnus/gnus-agent.el
@@ -451,7 +451,7 @@ manipulated as follows:
(defvar gnus-agent-mode-status '(gnus-agent-mode " Plugged"))
(defun gnus-agent-mode ()
- "Minor mode for providing a agent support in Gnus buffers."
+ "Minor mode for providing agent support in Gnus buffers."
(let* ((buffer (progn (string-match "^gnus-\\(.*\\)-mode$"
(symbol-name major-mode))
(match-string 1 (symbol-name major-mode))))
diff --git a/lisp/gnus/gnus-cache.el b/lisp/gnus/gnus-cache.el
index d1324fef633..1cdfea625fc 100644
--- a/lisp/gnus/gnus-cache.el
+++ b/lisp/gnus/gnus-cache.el
@@ -443,7 +443,7 @@ A group name is decoded according to
decoded again according to `nnmail-pathname-coding-system',
`file-name-coding-system', or `default-file-name-coding-system'.
-It is used when asking for a original group name from a cache
+It is used when asking for an original group name from a cache
directory name, in which non-ASCII characters might have been unified
into the ones of a certain charset particularly if the `utf-8' coding
system for example was used.")
diff --git a/lisp/gnus/gnus-cus.el b/lisp/gnus/gnus-cus.el
index 00ccfb7e3dd..f4c0aa73327 100644
--- a/lisp/gnus/gnus-cus.el
+++ b/lisp/gnus/gnus-cus.el
@@ -365,7 +365,7 @@ category."))
(unless (or group topic)
(error "No group on current line"))
(when (and group topic)
- (error "Both a group an topic on current line"))
+ (error "Both a group and topic on current line"))
(unless (or topic (setq info (gnus-get-info group)))
(error "Killed group; can't be edited"))
;; Ready.
diff --git a/lisp/gnus/gnus-fun.el b/lisp/gnus/gnus-fun.el
index d0557dc7e4d..40c6d511115 100644
--- a/lisp/gnus/gnus-fun.el
+++ b/lisp/gnus/gnus-fun.el
@@ -66,7 +66,7 @@
(defcustom gnus-convert-image-to-x-face-command
"convert -scale 48x48! %s xbm:- | xbm2xface.pl"
"Command for converting an image to an X-Face.
-The command must take a image filename (use \"%s\") as input.
+The command must take an image filename (use \"%s\") as input.
The output must be the X-Face header data on stdout."
:version "22.1"
:group 'gnus-fun
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el
index 0edde630fcb..123b64ac6cc 100644
--- a/lisp/gnus/gnus.el
+++ b/lisp/gnus/gnus.el
@@ -2378,11 +2378,11 @@ This variable is persisted in the user's .newsrc.eld file.")
;; Propagate flags to server, with the following exceptions:
;; `seen' is private to each gnus installation
-;; `cache' is a internal gnus flag for each gnus installation
-;; `download' is a agent flag private to each gnus installation
+;; `cache' is an internal gnus flag for each gnus installation
+;; `download' is an agent flag private to each gnus installation
;; `unsend' are for nndraft groups only
;; `score' is not a proper mark
-;; `bookmark': don't propagated it, or fix the bug in update-mark.
+;; `bookmark': don't propagate it, or fix the bug in update-mark.
(defconst gnus-article-unpropagated-mark-lists
'(seen cache download unsend score bookmark unexist)
"Marks that shouldn't be propagated to back ends.
diff --git a/lisp/hexl.el b/lisp/hexl.el
index 681a26b6809..d716405f97a 100644
--- a/lisp/hexl.el
+++ b/lisp/hexl.el
@@ -890,7 +890,7 @@ This discards the buffer's undo information."
(error "Invalid hex digit `%c'" ch)))))
(defun hexl-oct-char-to-integer (character)
- "Take a char and return its value as if it was a octal digit."
+ "Take a char and return its value as if it was an octal digit."
(if (and (>= character ?0) (<= character ?7))
(- character ?0)
(error "Invalid octal digit `%c'" character)))
diff --git a/lisp/htmlfontify.el b/lisp/htmlfontify.el
index 82c0a89561d..dfa6bde2972 100644
--- a/lisp/htmlfontify.el
+++ b/lisp/htmlfontify.el
@@ -1630,7 +1630,7 @@ TEXT-ID marks a unique position within a block. It is set to
value of `point' at the current buffer position.
TEXT-BEGINS-BLOCK-P is a boolean and is non-nil if the current
-span also begins a invisible portion of text.
+span also begins an invisible portion of text.
An implementation can use TEXT-BLOCK, TEXT-ID,
TEXT-BEGINS-BLOCK-P to implement fold/unfold-on-mouse-click like
diff --git a/lisp/image/gravatar.el b/lisp/image/gravatar.el
index fe44f0dc834..e7c472db1df 100644
--- a/lisp/image/gravatar.el
+++ b/lisp/image/gravatar.el
@@ -60,11 +60,11 @@
"Base URL for getting gravatars.")
(defun gravatar-hash (mail-address)
- "Create an hash from MAIL-ADDRESS."
+ "Create a hash from MAIL-ADDRESS."
(md5 (downcase mail-address)))
(defun gravatar-build-url (mail-address)
- "Return an URL to retrieve MAIL-ADDRESS gravatar."
+ "Return a URL to retrieve MAIL-ADDRESS gravatar."
(format "%s/%s?d=404&r=%s&s=%d"
gravatar-base-url
(gravatar-hash mail-address)
diff --git a/lisp/international/fontset.el b/lisp/international/fontset.el
index 45eabfcb40f..6f912074517 100644
--- a/lisp/international/fontset.el
+++ b/lisp/international/fontset.el
@@ -823,7 +823,7 @@
'("FreeMono" . "iso10646-1") nil 'prepend)
;; Since standard-fontset-spec on X uses fixed-medium font, which
- ;; gets mapped to a iso8859-1 variant, we would like to prefer its
+ ;; gets mapped to an iso8859-1 variant, we would like to prefer its
;; iso10646-1 variant for symbols, where the coverage is known to be
;; good.
(dolist (symbol-subgroup
diff --git a/lisp/mail/rmailedit.el b/lisp/mail/rmailedit.el
index 623a8291245..91aeb4187db 100644
--- a/lisp/mail/rmailedit.el
+++ b/lisp/mail/rmailedit.el
@@ -410,7 +410,7 @@ or else nil to insert it at the beginning.
DELETED's elements are elements of OLD-HEADERS.
CHANGED's elements have the form (OLD . NEW)
-where OLD is a element of OLD-HEADERS and NEW is an element of NEW-HEADERS."
+where OLD is an element of OLD-HEADERS and NEW is an element of NEW-HEADERS."
(let ((reverse-new (reverse new-headers))
inserted deleted changed)
diff --git a/lisp/mh-e/mh-e.el b/lisp/mh-e/mh-e.el
index 63d7a2973fb..05ff672da52 100644
--- a/lisp/mh-e/mh-e.el
+++ b/lisp/mh-e/mh-e.el
@@ -831,7 +831,7 @@ This assumes that a temporary buffer is set up."
(expand-file-name "flists" dir)))))))))
(defun mh-file-command-p (file)
- "Return t if file FILE is the name of a executable regular file."
+ "Return t if file FILE is the name of an executable regular file."
(and (file-regular-p file) (file-executable-p file)))
(defun mh-variant-set-variant (variant)
diff --git a/lisp/mh-e/mh-mime.el b/lisp/mh-e/mh-mime.el
index 967eb869a25..e2c682a3996 100644
--- a/lisp/mh-e/mh-mime.el
+++ b/lisp/mh-e/mh-mime.el
@@ -1242,7 +1242,7 @@ MESSAGE number."
"message/rfc822"
(if (string= "" description) nil description)
"inline"))
- (t (error "The message number, %s, is not a integer" msg)))))
+ (t (error "The message number, %s, is not an integer" msg)))))
(defun mh-mh-forward-message (&optional description folder messages)
"Add tag to forward a message.
diff --git a/lisp/mh-e/mh-search.el b/lisp/mh-e/mh-search.el
index 3e591c65383..8b8ba964560 100644
--- a/lisp/mh-e/mh-search.el
+++ b/lisp/mh-e/mh-search.el
@@ -443,7 +443,7 @@ search all folders."
(setq redo-flag t))
((mh-folder-exists-p new-folder)
;; Folder exists but we don't have it open. That means they are
- ;; stale results from a old flists search. Clear it out.
+ ;; stale results from an old flists search. Clear it out.
(mh-exec-cmd-quiet nil "rmf" new-folder)))
(setq message (mh-search "+" mh-flists-results-folder
redo-flag window-config)
@@ -1583,7 +1583,7 @@ If the folder returned doesn't exist then it is created."
chosen-name))
(defun mh-index-folder-search-regexp (folder)
- "If FOLDER was created by a index search, return the search regexp.
+ "If FOLDER was created by an index search, return the search regexp.
Return nil if FOLDER doesn't exist or the .mhe_index file is
garbled."
(ignore-errors
@@ -1912,7 +1912,7 @@ origin-index) map is updated too."
(defun mh-index-update-single-msg (msg checksum origin-map)
"Update various maps for one message.
-MSG is a index folder message, CHECKSUM its MD5 hash and
+MSG is an index folder message, CHECKSUM its MD5 hash and
ORIGIN-MAP, if non-nil, a hash table containing which maps each
message in the index folder to the folder and message that it was
copied from. The function updates the hash tables
diff --git a/lisp/net/gnutls.el b/lisp/net/gnutls.el
index ea17fb518e2..85c9308c0d2 100644
--- a/lisp/net/gnutls.el
+++ b/lisp/net/gnutls.el
@@ -202,7 +202,7 @@ For the meaning of the rest of the parameters, see `gnutls-boot-parameters'."
"boot: %s" params)
(when (gnutls-errorp ret)
- ;; This is a error from the underlying C code.
+ ;; This is an error from the underlying C code.
(signal 'gnutls-error (list process ret)))
process))
diff --git a/lisp/net/mailcap.el b/lisp/net/mailcap.el
index 748fb398933..4ec00450f4e 100644
--- a/lisp/net/mailcap.el
+++ b/lisp/net/mailcap.el
@@ -92,7 +92,7 @@ replaced with the file.
MIME-TYPE is a regular expression being matched against the
actual MIME type. It is implicitly surrounded with ^ and $.
-TEST is an lisp form which is evaluated in order to test if the
+TEST is a lisp form which is evaluated in order to test if the
entry should be chosen. The `test' entry is optional.
When selecting a viewer for a given MIME type, the first viewer
@@ -555,7 +555,7 @@ MAILCAPS if set; otherwise (on Unix) use the path from RFC 1524, plus
(defun mailcap-mailcap-entry-passes-test (info)
"Replace the test clause of INFO itself with a boolean for some cases.
This function supports only `test -n $DISPLAY' and `test -z $DISPLAY',
-replaces them with t or nil. As for others or if INFO has a interactive
+replaces them with t or nil. As for others or if INFO has an interactive
spec (needsterm, needsterminal, or needsx11) but DISPLAY is not set,
the test clause will be unchanged."
(let ((test (assq 'test info)) ; The test clause
diff --git a/lisp/nxml/xsd-regexp.el b/lisp/nxml/xsd-regexp.el
index f83dad57510..54f56dded37 100644
--- a/lisp/nxml/xsd-regexp.el
+++ b/lisp/nxml/xsd-regexp.el
@@ -208,7 +208,7 @@ Signal an error if it is not."
(nreverse (xsdre-compile-regexp re nil))))
(defun xsdre-compile-regexp (re accum)
- "Return a Emacs regular expression for the symbolic regexp RE.
+ "Return an Emacs regular expression for the symbolic regexp RE.
Returns a list of strings whose head is the regexp for RE
and whose tail is ACCUM."
(cond ((not (consp re))
@@ -271,7 +271,7 @@ and whose tail is ACCUM."
(t (xsdre-compile-char-class re accum))))
(defun xsdre-compile-char-class (cc accum)
- "Return a Emacs regular expression for the symbolic character class CC.
+ "Return an Emacs regular expression for the symbolic character class CC.
Returns a list of strings whose head is the regexp for CC
and whose tail is ACCUM."
(cons (if (integerp cc)
@@ -450,7 +450,7 @@ LOWER ::= UNICODE
UPPER ::= UNICODE
SYMBOLIC-CHAR-CLASS ::= SYMBOL
-where UNICODE is a integer specifying a Unicode code-point and
+where UNICODE is an integer specifying a Unicode code-point and
SYMBOLIC-CHAR-CLASS is a symbol which has either a `xsdre-char-class'
property whose value is a CHAR-CLASS, or a `xsdre-ranges' property
whose value is a range-list."
diff --git a/lisp/org/ob-calc.el b/lisp/org/ob-calc.el
index f491a6cdef9..4ed5dd4be05 100644
--- a/lisp/org/ob-calc.el
+++ b/lisp/org/ob-calc.el
@@ -37,7 +37,7 @@
(declare-function org-trim "org" (s &optional keep-lead))
(defvar org-babel-default-header-args:calc nil
- "Default arguments for evaluating an calc source block.")
+ "Default arguments for evaluating a calc source block.")
(defun org-babel-expand-body:calc (body _params)
"Expand BODY according to PARAMS, return the expanded body." body)
diff --git a/lisp/org/ob-core.el b/lisp/org/ob-core.el
index 5f378b2173f..0e2e78a6710 100644
--- a/lisp/org/ob-core.el
+++ b/lisp/org/ob-core.el
@@ -363,7 +363,7 @@ a window into the `org-babel-get-src-block-info' function."
;;;###autoload
(defun org-babel-expand-src-block-maybe ()
"Conditionally expand a source block.
-Detect if this is context for a org-babel src-block and if so
+Detect if this is context for an org-babel src-block and if so
then run `org-babel-expand-src-block'."
(interactive)
(org-babel-when-in-src-block
@@ -372,7 +372,7 @@ then run `org-babel-expand-src-block'."
;;;###autoload
(defun org-babel-load-in-session-maybe ()
"Conditionally load a source block in a session.
-Detect if this is context for a org-babel src-block and if so
+Detect if this is context for an org-babel src-block and if so
then run `org-babel-load-in-session'."
(interactive)
(org-babel-when-in-src-block
@@ -383,7 +383,7 @@ then run `org-babel-load-in-session'."
;;;###autoload
(defun org-babel-pop-to-session-maybe ()
"Conditionally pop to a session.
-Detect if this is context for a org-babel src-block and if so
+Detect if this is context for an org-babel src-block and if so
then run `org-babel-switch-to-session'."
(interactive)
(org-babel-when-in-src-block
diff --git a/lisp/org/ob-org.el b/lisp/org/ob-org.el
index e52283848e4..310aaec3f39 100644
--- a/lisp/org/ob-org.el
+++ b/lisp/org/ob-org.el
@@ -34,7 +34,7 @@
(defvar org-babel-default-header-args:org
'((:results . "raw silent") (:exports . "code"))
- "Default arguments for evaluating a org source block.")
+ "Default arguments for evaluating an org source block.")
(defvar org-babel-org-default-header
"#+TITLE: default empty header\n"
diff --git a/lisp/org/ob-picolisp.el b/lisp/org/ob-picolisp.el
index b6dc8986f95..fd129b899b2 100644
--- a/lisp/org/ob-picolisp.el
+++ b/lisp/org/ob-picolisp.el
@@ -35,7 +35,7 @@
;; (http://picolisp.com/5000/-2.html). PicoLisp is included in some
;; GNU/Linux Distributions, and can be downloaded here:
;; http://software-lab.de/down.html. It ships with a picolisp-mode and
-;; a inferior-picolisp-mode for Emacs (to be found in the /lib/el/
+;; an inferior-picolisp-mode for Emacs (to be found in the /lib/el/
;; directory).
;; Although it might seem more natural to use Emacs Lisp for most
diff --git a/lisp/org/org-clock.el b/lisp/org/org-clock.el
index 9bc1f0c06d7..4c5fcc64b0f 100644
--- a/lisp/org/org-clock.el
+++ b/lisp/org/org-clock.el
@@ -1394,7 +1394,7 @@ the default behavior."
;;;###autoload
(defun org-clock-in-last (&optional arg)
"Clock in the last closed clocked item.
-When already clocking in, send an warning.
+When already clocking in, send a warning.
With a universal prefix argument, select the task you want to
clock in from the last clocked in tasks.
With two universal prefix arguments, start clocking using the
diff --git a/lisp/org/org-eww.el b/lisp/org/org-eww.el
index 0792c87a6a4..3d9dddcac03 100644
--- a/lisp/org/org-eww.el
+++ b/lisp/org/org-eww.el
@@ -25,9 +25,9 @@
;;; Commentary:
;; When this module is active `org-store-link' (often on key C-c l) in
-;; a eww buffer stores a link to the current url of the eww buffer.
+;; an EWW buffer stores a link to the current url of the eww buffer.
-;; In an eww buffer function `org-eww-copy-for-org-mode' kills either
+;; In an EWW buffer function `org-eww-copy-for-org-mode' kills either
;; a region or the whole buffer if no region is set and transforms the
;; text on the fly so that it can be pasted into an Org buffer with
;; hot links.
@@ -58,7 +58,7 @@
;; Store Org-link in eww-mode buffer
(org-link-set-parameters "eww" :follow #'eww :store #'org-eww-store-link)
(defun org-eww-store-link ()
- "Store a link to the url of a Eww buffer."
+ "Store a link to the url of an EWW buffer."
(when (eq major-mode 'eww-mode)
(org-store-link-props
:type "eww"
diff --git a/lisp/org/org-protocol.el b/lisp/org/org-protocol.el
index 3cbbc78dce5..27c2bb28d0f 100644
--- a/lisp/org/org-protocol.el
+++ b/lisp/org/org-protocol.el
@@ -663,7 +663,7 @@ to deal with new-style links.")
;;; Org specific functions:
(defun org-protocol-create-for-org ()
- "Create a Org protocol project for the current file's project.
+ "Create an Org protocol project for the current file's project.
The visited file needs to be part of a publishing project in
`org-publish-project-alist' for this to work. The function
delegates most of the work to `org-protocol-create'."
diff --git a/lisp/org/ox-html.el b/lisp/org/ox-html.el
index 06edb821e1a..83f6479bd4a 100644
--- a/lisp/org/ox-html.el
+++ b/lisp/org/ox-html.el
@@ -2697,7 +2697,7 @@ holding contextual information."
(defun org-html-format-inlinetask-default-function
(todo todo-type priority text tags contents info)
- "Default format function for a inlinetasks.
+ "Default format function for inlinetasks.
See `org-html-format-inlinetask-function' for details."
(format "<div class=\"inlinetask\">\n<b>%s</b>%s\n%s</div>"
(org-html-format-headline-default-function
diff --git a/lisp/org/ox-latex.el b/lisp/org/ox-latex.el
index a656e065b94..c32aa298047 100644
--- a/lisp/org/ox-latex.el
+++ b/lisp/org/ox-latex.el
@@ -2125,7 +2125,7 @@ holding contextual information."
(defun org-latex-format-inlinetask-default-function
(todo _todo-type priority title tags contents _info)
- "Default format function for a inlinetasks.
+ "Default format function for inlinetasks.
See `org-latex-format-inlinetask-function' for details."
(let ((full-title
(concat (when todo (format "\\textbf{\\textsf{\\textsc{%s}}} " todo))
diff --git a/lisp/org/ox-odt.el b/lisp/org/ox-odt.el
index e0c51662d10..cdee568fc81 100644
--- a/lisp/org/ox-odt.el
+++ b/lisp/org/ox-odt.el
@@ -600,8 +600,7 @@ allow document of a given class (irrespective of its source
format) to be converted to any of the export formats associated
with that class.
-See default setting of this variable for an typical
-configuration."
+See default setting of this variable for a typical configuration."
:group 'org-export-odt
:version "24.1"
:type
@@ -1938,7 +1937,7 @@ holding contextual information."
(defun org-odt-format-inlinetask-default-function
(todo todo-type priority name tags contents)
- "Default format function for a inlinetasks.
+ "Default format function for inlinetasks.
See `org-odt-format-inlinetask-function' for details."
(format "\n<text:p text:style-name=\"%s\">%s</text:p>"
"Text_20_body"
diff --git a/lisp/org/ox-texinfo.el b/lisp/org/ox-texinfo.el
index fd4235a79df..d877c9c63a2 100644
--- a/lisp/org/ox-texinfo.el
+++ b/lisp/org/ox-texinfo.el
@@ -958,7 +958,7 @@ holding contextual information."
(defun org-texinfo-format-inlinetask-default-function
(todo _todo-type priority title tags contents)
- "Default format function for a inlinetasks.
+ "Default format function for inlinetasks.
See `org-texinfo-format-inlinetask-function' for details."
(let ((full-title
(concat (when todo (format "@strong{%s} " todo))
diff --git a/lisp/progmodes/ada-mode.el b/lisp/progmodes/ada-mode.el
index d09ee52c97b..2d3f6e22a6c 100644
--- a/lisp/progmodes/ada-mode.el
+++ b/lisp/progmodes/ada-mode.el
@@ -2479,7 +2479,7 @@ and the offset."
(forward-word-strictly -1))
;; If there is a parameter list, and we have a function declaration
- ;; or a access to subprogram declaration
+ ;; or access to subprogram declaration
(let ((num-back 1))
(if (and (= (following-char) ?\()
(save-excursion
diff --git a/lisp/progmodes/ada-stmt.el b/lisp/progmodes/ada-stmt.el
index 02f7e3954ec..f1ed01e3cc7 100644
--- a/lisp/progmodes/ada-stmt.el
+++ b/lisp/progmodes/ada-stmt.el
@@ -415,13 +415,13 @@ Invoke right after `ada-function-spec' or `ada-procedure-spec'."
(define-skeleton ada-entry-family-prompt-discriminant
- "Insert a entry specification, prompting for the entry name."
+ "Insert an entry specification, prompting for the entry name."
"[discriminant name]: "
str)
(define-skeleton ada-entry-family
- "Insert a entry specification, prompting for the entry name."
+ "Insert an entry specification, prompting for the entry name."
"[entry name]: "
"entry " str
" (" (ada-entry-family-prompt-discriminant) ")"
diff --git a/lisp/progmodes/antlr-mode.el b/lisp/progmodes/antlr-mode.el
index 921db6b46d8..1d4fd4f2bce 100644
--- a/lisp/progmodes/antlr-mode.el
+++ b/lisp/progmodes/antlr-mode.el
@@ -1562,7 +1562,7 @@ The search for a correct position is as follows:
* If search is within an area where options can be inserted, use the
position of point. Inside the options section and if point is in
- the middle of a option definition, skip the rest of it.
+ the middle of an option definition, skip the rest of it.
* If an options section already exists, insert the options at the end.
If only the beginning of the area is visible, insert at the
beginning.
diff --git a/lisp/progmodes/cc-engine.el b/lisp/progmodes/cc-engine.el
index be7e86beefc..cddf79b351c 100644
--- a/lisp/progmodes/cc-engine.el
+++ b/lisp/progmodes/cc-engine.el
@@ -3304,7 +3304,7 @@ comment at the start of cc-engine.el for more info."
(point)
here)))
pa+1 ; pos just after an opening PAren (or brace).
- (ren+1 from) ; usually a pos just after an closing paREN etc.
+ (ren+1 from) ; usually a pos just after a closing paREN etc.
; Is actually the pos. to scan for a (/{/[ from,
; which sometimes is after a silly )/}/].
paren+1 ; Pos after some opening or closing paren.
@@ -10345,7 +10345,7 @@ comment at the start of cc-engine.el for more info."
b-pos)))
(defun c-backward-typed-enum-colon ()
- ;; We're at a "{" which might be the opening brace of a enum which is
+ ;; We're at a "{" which might be the opening brace of an enum which is
;; strongly typed (by a ":" followed by a type). If this is the case, leave
;; point before the colon and return t. Otherwise leave point unchanged and return nil.
;; Match data will be clobbered.
diff --git a/lisp/progmodes/cc-menus.el b/lisp/progmodes/cc-menus.el
index ae7759ef451..a42fe27b96c 100644
--- a/lisp/progmodes/cc-menus.el
+++ b/lisp/progmodes/cc-menus.el
@@ -360,7 +360,7 @@ Example:
(setq char (aref method p)
p (1+ p))
(cond
- ;; Is CHAR part of a objc token?
+ ;; Is CHAR part of an objc token?
((and (not inargvar) ; Ignore if CHAR is part of an argument variable.
(eq 0 betweenparen) ; Ignore if CHAR is in parentheses.
(or (and (<= ?a char) (<= char ?z))
diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el
index 2ce3d962257..664f01012b8 100644
--- a/lisp/progmodes/cc-mode.el
+++ b/lisp/progmodes/cc-mode.el
@@ -622,7 +622,7 @@ that requires a literal mode spec at compile time."
;; buffer local value has its own alist structure.
(setq c-offsets-alist (copy-alist c-offsets-alist))
- ;; setup the comment indent variable in a Emacs version portable way
+ ;; setup the comment indent variable in an Emacs version portable way
(set (make-local-variable 'comment-indent-function) 'c-comment-indent)
;; What sort of comments are default for M-;?
(setq c-block-comment-flag c-block-comment-is-default)
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 92e202a0258..422974379ba 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -919,7 +919,7 @@ from a different message."
;; COLUMN and LINE are numbers parsed from an error message. COLUMN and maybe
;; LINE will be nil for a message that doesn't contain them. Then the
-;; location refers to a indented beginning of line or beginning of file.
+;; location refers to an indented beginning of line or beginning of file.
;; Once any location in some file has been jumped to, the list is extended to
;; (COLUMN LINE FILE-STRUCTURE MARKER TIMESTAMP . VISITED)
;; for all LOCs pertaining to that file.
diff --git a/lisp/progmodes/icon.el b/lisp/progmodes/icon.el
index 68bff26902a..6e02392c154 100644
--- a/lisp/progmodes/icon.el
+++ b/lisp/progmodes/icon.el
@@ -90,7 +90,7 @@
:group 'icon)
(defcustom icon-brace-imaginary-offset 0
- "Imagined indentation of a Icon open brace that actually follows a statement."
+ "Imagined indentation of an Icon open brace that actually follows a statement."
:type 'integer
:group 'icon)
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 8ff7a300d48..530eb2fb95e 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -422,7 +422,7 @@
(string-delimiter . ,(rx (and
;; Match even number of backslashes.
(or (not (any ?\\ ?\' ?\")) point
- ;; Quotes might be preceded by a escaped quote.
+ ;; Quotes might be preceded by an escaped quote.
(and (or (not (any ?\\)) point) ?\\
(* ?\\ ?\\) (any ?\' ?\")))
(* ?\\ ?\\)
@@ -925,7 +925,7 @@ keyword
(back-to-indentation)
(python-syntax-closing-paren-p))
(cons :inside-paren-at-closing-nested-paren start))
- ;; This line starts from a opening block in its own line.
+ ;; This line starts from an opening block in its own line.
((save-excursion
(goto-char start)
(when (and
@@ -1641,7 +1641,7 @@ ARG move forward only one sexp, else move backwards."
(defun python-nav--lisp-forward-sexp-safe (&optional arg)
"Safe version of standard `forward-sexp'.
-When at end of sexp (i.e. looking at a opening/closing paren)
+When at end of sexp (i.e. looking at an opening/closing paren)
skips it instead of throwing an error. With positive ARG move
forward only one sexp, else move backwards."
(let* ((arg (if (or (not arg) (> arg 0)) 1 -1))
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index 1b9e10af29a..aaa86b5816f 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -3019,7 +3019,7 @@ If INFO is supplied it is used, else it is calculated."
;; line -- it is the PREVIOUS line which is continued, not the one
;; we are going to!
;; Also, we want to treat a whole "here document" as one big line,
-;; because we may want to a align to the beginning of it.
+;; because we may want to align to the beginning of it.
;;
;; What we do:
;; - go back to previous non-empty line
diff --git a/lisp/progmodes/sql.el b/lisp/progmodes/sql.el
index 7bc3a5a2f7a..d20c579f660 100644
--- a/lisp/progmodes/sql.el
+++ b/lisp/progmodes/sql.el
@@ -2774,7 +2774,7 @@ local variable."
;; Our start must be between them
(goto-char last)
- ;; Find an beginning-of-stmt that's not in a comment
+ ;; Find a beginning-of-stmt that's not in a comment
(while (and (re-search-forward regexp next t 1)
(nth 7 (syntax-ppss)))
(goto-char (match-end 0)))
@@ -4225,7 +4225,7 @@ the call to \\[sql-product-interactive] with
(symbolp product)) product)
(t sql-product))) ; Default to sql-product
- ;; If we have a product and it has a interactive mode
+ ;; If we have a product and it has an interactive mode
(if product
(when (sql-get-product-feature product :sqli-comint-func)
;; If no new name specified, try to pop to an active SQL
diff --git a/lisp/progmodes/vhdl-mode.el b/lisp/progmodes/vhdl-mode.el
index db29435bff9..a841f87f3c3 100644
--- a/lisp/progmodes/vhdl-mode.el
+++ b/lisp/progmodes/vhdl-mode.el
@@ -4890,7 +4890,7 @@ Key bindings:
(set (make-local-variable 'indent-tabs-mode) vhdl-indent-tabs-mode)
(set (make-local-variable 'hippie-expand-verbose) nil)
- ;; setup the comment indent variable in a Emacs version portable way
+ ;; setup the comment indent variable in an Emacs version portable way
;; ignore any byte compiler warnings you might get here
(when (boundp 'comment-indent-function)
(set (make-local-variable 'comment-indent-function) 'vhdl-comment-indent))
diff --git a/lisp/tempo.el b/lisp/tempo.el
index 6c395582901..5d4dea5325a 100644
--- a/lisp/tempo.el
+++ b/lisp/tempo.el
@@ -154,7 +154,7 @@ setting it to (upcase), for example.")
(defvar tempo-local-tags '((tempo-tags . nil))
"A list of locally installed tag completion lists.
-It is a association list where the car of every element is a symbol
+It is an association list where the car of every element is a symbol
whose variable value is a template list. The cdr part, if non-nil,
is a function or a regexp that defines the string to match. See the
documentation for the function `tempo-complete-tag' for more info.
diff --git a/lisp/term/README b/lisp/term/README
index d5453e1a8a7..4ab1a4300db 100644
--- a/lisp/term/README
+++ b/lisp/term/README
@@ -60,7 +60,7 @@ they'll frustrate you after you've forgotten about them.
For another, the X keysyms provide a standard set of names that Emacs knows
about. It tries to bind many of them to useful things at startup, before your
.emacs is read (so you can override them). In some ways, the X keysym standard
-is a admittedly poor one; it's incomplete, and not well matched to the set of
+is an admittedly poor one; it's incomplete, and not well matched to the set of
'virtual keys' that UNIX terminfo(3) provides. But, trust us, the alternatives
were worse.
diff --git a/lisp/textmodes/artist.el b/lisp/textmodes/artist.el
index 73419072536..af7bcc77cdf 100644
--- a/lisp/textmodes/artist.el
+++ b/lisp/textmodes/artist.el
@@ -1025,78 +1025,78 @@ If DRAW-HOW is `artist-do-poly':
(defsubst artist-go-get-keyword (info-variant-part)
"Retrieve the keyword component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 0))
(defsubst artist-go-get-symbol (info-variant-part)
"Retrieve the symbol component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 1))
(defsubst artist-go-get-mode-line (info-variant-part)
"Retrieve the mode line component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 2))
(defsubst artist-go-get-arrow-pred (info-variant-part)
"Retrieve the arrow predicate component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 3))
(defsubst artist-go-get-arrow-set-fn (info-variant-part)
"Retrieve the arrow set component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 4))
(defsubst artist-go-get-init-fn (info-variant-part)
"Retrieve the init function component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 5))
(defsubst artist-go-get-prep-fill-fn (info-variant-part)
"Retrieve the fill preparation function component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 6))
(defsubst artist-go-get-exit-fn (info-variant-part)
"Retrieve the exit component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 7))
(defsubst artist-go-get-draw-how (info-variant-part)
"Retrieve the draw how component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 8))
(defsubst artist-go-get-draw-fn (info-variant-part)
"Retrieve the draw function component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part."
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part."
(elt info-variant-part 9))
(defsubst artist-go-get-undraw-fn (info-variant-part)
"Retrieve the undraw function component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part.
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part.
This interval function component is available only if the `draw-how'
component is other than `artist-do-continously' or 1."
(elt (elt info-variant-part 10) 0))
(defsubst artist-go-get-interval-fn (info-variant-part)
"Retrieve the interval function component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part.
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part.
This interval function component is available only if the `draw-how'
component is `artist-do-continously'."
(elt (elt info-variant-part 10) 0))
(defsubst artist-go-get-fill-pred (info-variant-part)
"Retrieve the fill predicate component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part.
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part.
This interval function component is available only if the `draw-how'
component is other than `artist-do-continously' or 1."
(elt (elt info-variant-part 10) 1))
(defsubst artist-go-get-fill-fn (info-variant-part)
"Retrieve the fill function component from an INFO-VARIANT-PART.
-An INFO-VARIANT-PART is the shifted or unshifted info from a info-part.
+An INFO-VARIANT-PART is the shifted or unshifted info from an info-part.
This interval function component is available only if the `draw-how'
component is other than `artist-do-continously' or 1."
(elt (elt info-variant-part 10) 2))
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el
index 353d4352f60..5568bbb1d97 100644
--- a/lisp/textmodes/flyspell.el
+++ b/lisp/textmodes/flyspell.el
@@ -1732,7 +1732,7 @@ FLYSPELL-BUFFER."
;;*---------------------------------------------------------------------*/
;;* flyspell-properties-at-p ... */
;;* ------------------------------------------------------------- */
-;;* Is there an highlight properties at position pos? */
+;;* Is there a highlight property at position pos? */
;;*---------------------------------------------------------------------*/
(defun flyspell-properties-at-p (pos)
"Return t if there is a text property at POS, not counting `local-map'.
diff --git a/lisp/textmodes/reftex-vars.el b/lisp/textmodes/reftex-vars.el
index 6d253f1c205..01ee4f5fa4d 100644
--- a/lisp/textmodes/reftex-vars.el
+++ b/lisp/textmodes/reftex-vars.el
@@ -1405,7 +1405,7 @@ the text, so that the text has to be repeated outside the index macro.
Needed for `reftex-index-selection-or-word' and for indexing from the
phrase buffer.
-The final entry may also be a symbol if this entry has a association
+The final entry may also be a symbol if this entry has an association
in the variable `reftex-index-macros-builtin' to specify the main
indexing package you are using. Valid values are currently
default The LaTeX default - unnecessary to specify this one
diff --git a/lisp/textmodes/rst.el b/lisp/textmodes/rst.el
index c93e4e474cb..48c01289347 100644
--- a/lisp/textmodes/rst.el
+++ b/lisp/textmodes/rst.el
@@ -631,7 +631,7 @@ After interpretation of ARGS the results are concatenated as for
&aux
(char (rst-Ado--validate-char char-arg))
(-style 'simple)))
- ;; Construct a over-and-under section header.
+ ;; Construct an over-and-under section header.
(:constructor
rst-Ado-new-over-and-under
(char-arg
@@ -696,7 +696,7 @@ Return CHAR if so or signal an error otherwise."
(defun rst-Ado-is-over-and-under (self)
;; testcover: ok.
- "Return non-nil if SELF is a over-and-under section adornment."
+ "Return non-nil if SELF is an over-and-under section adornment."
(cl-check-type self rst-Ado)
(eq (rst-Ado--style self) 'over-and-under))
@@ -834,7 +834,7 @@ Return ADO if so or signal an error otherwise."
(defun rst-Hdr-is-over-and-under (self)
;; testcover: ok.
- "Return non-nil if SELF is a over-and-under section header."
+ "Return non-nil if SELF is an over-and-under section header."
(cl-check-type self rst-Hdr)
(rst-Ado-is-over-and-under (rst-Hdr-ado self)))
@@ -937,7 +937,7 @@ This type is immutable."
(or (null und-beg) (integer-or-marker-p und-beg))
(or (null und-end) (integer-or-marker-p und-end)))
(signal 'args-out-of-range
- '("For a over-and-under section adornment all match pairs must be set."))))))
+ '("For an over-and-under section adornment all match pairs must be set."))))))
match)
(defun rst-Ttl--validate-indent (indent ado)
@@ -1224,7 +1224,7 @@ as well but give an additional message."
;; Makes paragraphs in region as a bullet list.
(rst-define-key map [?\C-c ?\C-l ?\C-b] #'rst-bullet-list-region
[?\C-c ?\C-b])
- ;; Makes paragraphs in region as a enumeration.
+ ;; Makes paragraphs in region an enumeration.
(rst-define-key map [?\C-c ?\C-l ?\C-e] #'rst-enumerate-region
[?\C-c ?\C-e])
;; Converts bullets to an enumeration.
@@ -1529,7 +1529,7 @@ file."
(defcustom rst-default-indent 1
"Number of characters to indent the section title.
This is only used while toggling adornment styles when switching
-from a simple adornment style to a over-and-under adornment
+from a simple adornment style to an over-and-under adornment
style. In addition this is used in cases where the adornments
found in the buffer are to be used but the indentation for
over-and-under adornments is inconsistent across the buffer."
diff --git a/lisp/thumbs.el b/lisp/thumbs.el
index 7aaed28a2a2..26c9935429f 100644
--- a/lisp/thumbs.el
+++ b/lisp/thumbs.el
@@ -48,7 +48,7 @@
;; That should be a directory containing image files.
;; from dired, C-t m enter in thumbs-mode with all marked files
;; C-t a enter in thumbs-mode with all files in current-directory
-;; In thumbs-mode, pressing <return> on a image will bring you in image view
+;; In thumbs-mode, pressing <return> on an image will bring you in image view
;; mode for that image. C-h m will give you a list of available keybinding.
;;; History:
diff --git a/lisp/vc/add-log.el b/lisp/vc/add-log.el
index ea2e8ec874a..bc2be4aadb4 100644
--- a/lisp/vc/add-log.el
+++ b/lisp/vc/add-log.el
@@ -1163,7 +1163,7 @@ Has a preference of looking backwards."
(goto-char (match-end 0)))
(defun change-log-get-method-definition ()
-"For Objective C, return the method name if we are in a method."
+ "For Objective C, return the method name if we are in a method."
(let ((change-log-get-method-definition-md "["))
(save-excursion
(if (re-search-backward "^@implementation\\s-*\\([A-Za-z_]*\\)" nil t)
diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el
index 9274714cc60..26af99805d0 100644
--- a/lisp/vc/vc-git.el
+++ b/lisp/vc/vc-git.el
@@ -227,7 +227,7 @@ Should be consistent with the Git config value i18n.logOutputEncoding."
(concat name "\0"))))))))
(defun vc-git--state-code (code)
- "Convert from a string to a added/deleted/modified state."
+ "Convert from a string to an added/deleted/modified state."
(pcase (string-to-char code)
(?M 'edited)
(?A 'added)
diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el
index b87701536f8..01dc47e8089 100644
--- a/lisp/vc/vc.el
+++ b/lisp/vc/vc.el
@@ -2415,7 +2415,10 @@ When called interactively with a prefix argument, prompt for REMOTE-LOCATION."
;;;###autoload
(defun vc-region-history (from to)
- "Show the history of the region FROM..TO."
+ "Show the history of the region between FROM and TO.
+
+If called interactively, show the history between point and
+mark."
(interactive "r")
(let* ((lfrom (line-number-at-pos from t))
(lto (line-number-at-pos (1- to) t))
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index 8828236e3ea..bee7f8069ee 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -1229,7 +1229,7 @@ When not inside a field, signal an error."
(save-restriction
;; `widget-narrow-to-field' can be
;; active when this function is called
- ;; from an change-functions hook. So
+ ;; from a change-functions hook. So
;; temporarily remove field narrowing
;; before to call `get-char-property'.
(widen)
@@ -1802,7 +1802,7 @@ If END is omitted, it defaults to the length of LIST."
;;; The `url-link' Widget.
(define-widget 'url-link 'link
- "A link to an www page."
+ "A link to a web page."
:action 'widget-url-link-action)
(defun widget-url-link-action (widget &optional _event)
diff --git a/src/.gdbinit b/src/.gdbinit
index 9fdcaf86611..eb4d57a5fbb 100644
--- a/src/.gdbinit
+++ b/src/.gdbinit
@@ -564,7 +564,7 @@ define pgi
end
document pgi
Pretty print glyph structure glyph[I].
-Takes one argument, a integer I.
+Takes one argument, an integer I.
end
define pgn
diff --git a/src/character.c b/src/character.c
index 4a934c7801c..6a689808043 100644
--- a/src/character.c
+++ b/src/character.c
@@ -983,7 +983,7 @@ alphabeticp (int c)
|| gen_cat == UNICODE_CATEGORY_Nl);
}
-/* Return true if C is a alphabetic or decimal-number character. */
+/* Return true if C is an alphabetic or decimal-number character. */
bool
alphanumericp (int c)
{
diff --git a/src/character.h b/src/character.h
index d9e2d7bfc67..1e420ba54cb 100644
--- a/src/character.h
+++ b/src/character.h
@@ -695,7 +695,7 @@ INLINE int
char_table_translate (Lisp_Object obj, int ch)
{
/* This internal function is expected to be called with valid arguments,
- so there is a eassert instead of CHECK_xxx for the sake of speed. */
+ so there is an eassert instead of CHECK_xxx for the sake of speed. */
eassert (CHAR_VALID_P (ch));
eassert (CHAR_TABLE_P (obj));
obj = CHAR_TABLE_REF (obj, ch);
diff --git a/src/charset.c b/src/charset.c
index cc61300b6bd..05290e86b4e 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -2332,7 +2332,7 @@ init_charset_once (void)
Don't make the value so small that the table is reallocated during
bootstrapping, as glibc malloc calls larger than just under 64 KiB
during an initial bootstrap wreak havoc after dumping; see the
- M_MMAP_THRESHOLD value in alloc.c, plus there is a extra overhead
+ M_MMAP_THRESHOLD value in alloc.c, plus there is an extra overhead
internal to glibc malloc and perhaps to Emacs malloc debugging. */
static struct charset charset_table_init[180];
diff --git a/src/coding.c b/src/coding.c
index 901f806e44b..a16142a9b41 100644
--- a/src/coding.c
+++ b/src/coding.c
@@ -252,7 +252,7 @@ decode_coding_XXXX (struct coding_system *coding)
CODING_RESULT_XXX indicating how the encoding finished.
DST_BYTES zero means that source area and destination area are
- overlapped, which means that we can produce a encoded text until it
+ overlapped, which means that we can produce an encoded text until it
reaches at the head of not-yet-encoded source text.
Below is a template of these functions. */
@@ -3973,7 +3973,7 @@ decode_coding_iso_2022 (struct coding_system *coding)
/* Reset the invocation and designation status to the safest
one; i.e. designate ASCII to the graphic register 0, and
invoke that register to the graphic plane 0. This typically
- helps the case that an designation sequence for ASCII "ESC (
+ helps the case that a designation sequence for ASCII "ESC (
B" is somehow broken (e.g. broken by a newline). */
CODING_ISO_INVOCATION (coding, 0) = 0;
CODING_ISO_DESIGNATION (coding, 0) = charset_ascii;
diff --git a/src/dbusbind.c b/src/dbusbind.c
index 63dda583529..ec3707d18f3 100644
--- a/src/dbusbind.c
+++ b/src/dbusbind.c
@@ -1401,7 +1401,7 @@ usage: (dbus-message-internal &rest REST) */)
if ((mtype == DBUS_MESSAGE_TYPE_ERROR)
&& (!dbus_message_set_error_name (dmessage, DBUS_ERROR_FAILED)))
- XD_SIGNAL1 (build_string ("Unable to create a error message"));
+ XD_SIGNAL1 (build_string ("Unable to create an error message"));
}
/* Check for timeout parameter. */
diff --git a/src/eval.c b/src/eval.c
index 3c2b300096b..08a73b1e4a5 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1604,7 +1604,10 @@ signal_or_quit (Lisp_Object error_symbol, Lisp_Object data, bool keyboard_quit)
/* This hook is used by edebug. */
if (! NILP (Vsignal_hook_function)
- && ! NILP (error_symbol))
+ && ! NILP (error_symbol)
+ /* Don't try to call a lisp function if we've already overflowed
+ the specpdl stack. */
+ && specpdl_ptr < specpdl + specpdl_size)
{
/* Edebug takes care of restoring these variables when it exits. */
if (lisp_eval_depth + 20 > max_lisp_eval_depth)
diff --git a/src/image.c b/src/image.c
index 6e860834378..37416c16168 100644
--- a/src/image.c
+++ b/src/image.c
@@ -8281,7 +8281,7 @@ extern WandExport void PixelGetMagickColor (const PixelWand *,
#endif
/* Log ImageMagick error message.
- Useful when a ImageMagick function returns the status `MagickFalse'. */
+ Useful when an ImageMagick function returns the status `MagickFalse'. */
static void
imagemagick_error (MagickWand *wand)
diff --git a/src/inotify.c b/src/inotify.c
index 08da308c978..e06cc97c6a7 100644
--- a/src/inotify.c
+++ b/src/inotify.c
@@ -503,7 +503,7 @@ DEFUN ("inotify-watch-list", Finotify_watch_list, Sinotify_watch_list, 0, 0, 0,
}
DEFUN ("inotify-allocated-p", Finotify_allocated_p, Sinotify_allocated_p, 0, 0, 0,
- doc: /* Return non-nil, if a inotify instance is allocated. */)
+ doc: /* Return non-nil, if an inotify instance is allocated. */)
{
return inotifyfd < 0 ? Qnil : Qt;
}
diff --git a/src/keymap.c b/src/keymap.c
index 80a899b5755..c8cc933e782 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -1278,7 +1278,7 @@ append_key (Lisp_Object key_sequence, Lisp_Object key)
return CALLN (Fvconcat, key_sequence, key_list);
}
-/* Given a event type C which is a symbol,
+/* Given an event type C which is a symbol,
signal an error if is a mistake such as RET or M-RET or C-DEL, etc. */
static void
diff --git a/src/process.c b/src/process.c
index 496b1f2b70c..6ba27a33f4d 100644
--- a/src/process.c
+++ b/src/process.c
@@ -3733,7 +3733,7 @@ setting of the remote datagram address. When specified for a client
process, the FAMILY, HOST, and SERVICE args are ignored.
The format of ADDRESS depends on the address family:
-- An IPv4 address is represented as an vector of integers [A B C D P]
+- An IPv4 address is represented as a vector of integers [A B C D P]
corresponding to numeric IP address A.B.C.D and port number P.
- A local address is represented as a string with the address in the
local address space.
diff --git a/src/regex.c b/src/regex.c
index 122cf712422..a4e6441cce3 100644
--- a/src/regex.c
+++ b/src/regex.c
@@ -5787,7 +5787,7 @@ re_match_2_internal (struct re_pattern_buffer *bufp, re_char *string1,
EXTRACT_NUMBER (mcnt, p2 - 2);
- /* Ensure this is a indeed the trivial kind of loop
+ /* Ensure this is indeed the trivial kind of loop
we are expecting. */
assert (skip_one_char (p1) == p2 - 3);
assert ((re_opcode_t) p2[-3] == jump && p2 + mcnt == p);
diff --git a/src/syntax.c b/src/syntax.c
index 52cec23cd7e..20c607420c1 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -3049,7 +3049,7 @@ Comments are ignored if `parse-sexp-ignore-comments' is non-nil.
If we reach the beginning or end of the accessible part of the buffer
before we have scanned over COUNT lists, return nil if the depth at
-that point is zero, and signal a error if the depth is nonzero. */)
+that point is zero, and signal an error if the depth is nonzero. */)
(Lisp_Object from, Lisp_Object count, Lisp_Object depth)
{
CHECK_NUMBER (from);
diff --git a/src/xdisp.c b/src/xdisp.c
index f6fcdec6624..14286447d13 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -32499,7 +32499,7 @@ or `nobreak-hyphen' face respectively.
U+00A0 (no-break space), U+00AD (soft hyphen), U+2010 (hyphen), and
U+2011 (non-breaking hyphen) are affected.
-Any other non-nil value means to display these characters as a escape
+Any other non-nil value means to display these characters as an escape
glyph followed by an ordinary space or hyphen.
A value of nil means no special handling of these characters. */);
diff --git a/src/xsettings.c b/src/xsettings.c
index ac2d86f5922..81c8f9b2919 100644
--- a/src/xsettings.c
+++ b/src/xsettings.c
@@ -53,7 +53,7 @@ static char *current_font;
static struct x_display_info *first_dpyinfo;
static Lisp_Object current_tool_bar_style;
-/* Store an config changed event in to the event queue. */
+/* Store a config changed event in to the event queue. */
static void
store_config_changed_event (Lisp_Object arg, Lisp_Object display_name)
diff --git a/test/src/eval-tests.el b/test/src/eval-tests.el
index 201382da9c4..e68fd136113 100644
--- a/test/src/eval-tests.el
+++ b/test/src/eval-tests.el
@@ -79,4 +79,24 @@ Bug#24912 and Bug#24913."
(let ((clauses (list '((progn (setcdr clauses "ouch") nil)))))
(should-error (eval (cons 'cond clauses)))))
+(defun eval-tests--exceed-specbind-limit ()
+ (defvar eval-tests--var1)
+ (defvar eval-tests--var2)
+ ;; Bind two variables, to make extra sure we hit the
+ ;; `max-specpdl-size' limit before the `max-lisp-eval-depth' limit.
+ (let ((eval-tests--var1 1)
+ (eval-tests--var2 2))
+ ;; Recurse until we hit the limit.
+ (eval-tests--exceed-specbind-limit)))
+
+(ert-deftest eval-exceed-specbind-with-signal-hook ()
+ "Test for Bug#30481.
+Check that Emacs doesn't crash when exceeding specbind limit with
+`signal-hook-function' bound. NOTE: Without the fix for
+Bug#30481, this test can appear to pass, but cause a
+crash/abort/malloc assert failure on the next test."
+ (let ((max-specpdl-size (/ max-lisp-eval-depth 2))
+ (signal-hook-function #'ignore))
+ (should-error (eval-tests--exceed-specbind-limit))))
+
;;; eval-tests.el ends here