summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/emacs/ChangeLog.1 (renamed from doc/emacs/ChangeLog)0
-rw-r--r--doc/emacs/Makefile.in2
-rw-r--r--doc/emacs/ack.texi2
-rw-r--r--doc/emacs/building.texi8
-rw-r--r--doc/emacs/calendar.texi4
-rw-r--r--doc/emacs/cmdargs.texi4
-rw-r--r--doc/emacs/custom.texi14
-rw-r--r--doc/emacs/dired.texi2
-rw-r--r--doc/emacs/emacs.texi10
-rw-r--r--doc/emacs/files.texi4
-rw-r--r--doc/emacs/glossary.texi40
-rw-r--r--doc/emacs/gnu.texi2
-rw-r--r--doc/emacs/indent.texi2
-rw-r--r--doc/emacs/macos.texi2
-rw-r--r--doc/emacs/maintaining.texi4
-rw-r--r--doc/emacs/makefile.w32-in4
-rw-r--r--doc/emacs/misc.texi14
-rw-r--r--doc/emacs/programs.texi4
-rw-r--r--doc/emacs/rmail.texi4
-rw-r--r--doc/emacs/search.texi2
-rw-r--r--doc/emacs/trouble.texi17
-rw-r--r--doc/emacs/vc1-xtra.texi4
-rw-r--r--doc/lispintro/ChangeLog.1 (renamed from doc/lispintro/ChangeLog)0
-rw-r--r--doc/lispintro/emacs-lisp-intro.texi574
-rw-r--r--doc/lispref/ChangeLog.1 (renamed from doc/lispref/ChangeLog)2
-rw-r--r--doc/lispref/README6
-rw-r--r--doc/lispref/buffers.texi2
-rw-r--r--doc/lispref/commands.texi6
-rw-r--r--doc/lispref/control.texi2
-rw-r--r--doc/lispref/customize.texi2
-rw-r--r--doc/lispref/display.texi53
-rw-r--r--doc/lispref/elisp.texi4
-rw-r--r--doc/lispref/files.texi10
-rw-r--r--doc/lispref/frames.texi6
-rw-r--r--doc/lispref/hash.texi2
-rw-r--r--doc/lispref/help.texi2
-rw-r--r--doc/lispref/internals.texi8
-rw-r--r--doc/lispref/loading.texi2
-rw-r--r--doc/lispref/makefile.w32-in4
-rw-r--r--doc/lispref/markers.texi5
-rw-r--r--doc/lispref/modes.texi8
-rw-r--r--doc/lispref/nonascii.texi6
-rw-r--r--doc/lispref/objects.texi6
-rw-r--r--doc/lispref/os.texi8
-rw-r--r--doc/lispref/positions.texi2
-rw-r--r--doc/lispref/processes.texi54
-rw-r--r--doc/lispref/searching.texi11
-rw-r--r--doc/lispref/sequences.texi32
-rw-r--r--doc/lispref/strings.texi12
-rw-r--r--doc/lispref/syntax.texi2
-rw-r--r--doc/lispref/text.texi2
-rw-r--r--doc/lispref/tips.texi31
-rw-r--r--doc/lispref/two-volume-cross-refs.txt6
-rw-r--r--doc/lispref/windows.texi2
-rw-r--r--doc/man/ChangeLog.1 (renamed from doc/man/ChangeLog)0
-rw-r--r--doc/man/ebrowse.12
-rw-r--r--doc/man/emacs.1.in14
-rw-r--r--doc/man/emacsclient.132
-rw-r--r--doc/man/etags.110
-rw-r--r--doc/misc/ChangeLog.1 (renamed from doc/misc/ChangeLog)0
-rw-r--r--doc/misc/Makefile.in2
-rw-r--r--doc/misc/auth.texi6
-rw-r--r--doc/misc/autotype.texi11
-rw-r--r--doc/misc/calc.texi86
-rw-r--r--doc/misc/cc-mode.texi16
-rw-r--r--doc/misc/cl.texi8
-rw-r--r--doc/misc/ebrowse.texi2
-rw-r--r--doc/misc/ede.texi10
-rw-r--r--doc/misc/ediff.texi60
-rw-r--r--doc/misc/edt.texi2
-rw-r--r--doc/misc/efaq-w32.texi10
-rw-r--r--doc/misc/efaq.texi6
-rw-r--r--doc/misc/eieio.texi109
-rw-r--r--doc/misc/erc.texi48
-rw-r--r--doc/misc/ert.texi4
-rw-r--r--doc/misc/eshell.texi23
-rw-r--r--doc/misc/eudc.texi137
-rw-r--r--doc/misc/forms.texi2
-rw-r--r--doc/misc/gnus-faq.texi4
-rw-r--r--doc/misc/gnus-news.el4
-rw-r--r--doc/misc/gnus-news.texi4
-rw-r--r--doc/misc/gnus.texi36
-rw-r--r--doc/misc/htmlfontify.texi10
-rw-r--r--doc/misc/idlwave.texi20
-rw-r--r--doc/misc/info.texi4
-rw-r--r--doc/misc/mairix-el.texi21
-rw-r--r--doc/misc/makefile.w32-in4
-rw-r--r--doc/misc/message.texi6
-rw-r--r--doc/misc/newsticker.texi2
-rw-r--r--doc/misc/octave-mode.texi8
-rw-r--r--doc/misc/org.texi33
-rw-r--r--doc/misc/rcirc.texi2
-rw-r--r--doc/misc/reftex.texi12
-rw-r--r--doc/misc/remember.texi8
-rw-r--r--doc/misc/sc.texi2
-rw-r--r--doc/misc/semantic.texi2
-rw-r--r--doc/misc/speedbar.texi20
-rw-r--r--doc/misc/todo-mode.texi10
-rw-r--r--doc/misc/tramp.texi12
-rw-r--r--doc/misc/url.texi2
-rw-r--r--doc/misc/vhdl-mode.texi2
-rw-r--r--doc/misc/vip.texi8
-rw-r--r--doc/misc/viper.texi65
-rw-r--r--doc/misc/widget.texi2
-rw-r--r--doc/misc/woman.texi6
105 files changed, 1037 insertions, 893 deletions
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog.1
index 469fdc39cea..469fdc39cea 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog.1
diff --git a/doc/emacs/Makefile.in b/doc/emacs/Makefile.in
index 9f04f0d7704..9932348ba67 100644
--- a/doc/emacs/Makefile.in
+++ b/doc/emacs/Makefile.in
@@ -23,7 +23,7 @@ SHELL = @SHELL@
# update the sed rules in the dist target below.
# Where to find the source code. $(srcdir) will be the doc/emacs subdirectory
-# of the source tree. This is set by configure's `--srcdir' option.
+# of the source tree. This is set by configure's '--srcdir' option.
srcdir=@srcdir@
top_srcdir = @top_srcdir@
diff --git a/doc/emacs/ack.texi b/doc/emacs/ack.texi
index 151c3f1b848..f612a7b04d8 100644
--- a/doc/emacs/ack.texi
+++ b/doc/emacs/ack.texi
@@ -1201,7 +1201,7 @@ Ken Stevens wrote @file{ispell.el}, a spell-checker interface.
@item
Kim F. Storm made many improvements to the Emacs display engine,
-process support, and networking support. He also wrote
+process support, and networking support. He also wrote
@file{bindat.el}, a package for encoding and decoding binary data;
CUA mode, which allows Emacs to emulate the standard CUA key
bindings; @file{ido.el}, a package for selecting buffers and files
diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi
index b0e6538d1af..b4a99a1c25e 100644
--- a/doc/emacs/building.texi
+++ b/doc/emacs/building.texi
@@ -947,7 +947,7 @@ of the window. Disabled breakpoints are indicated with @samp{b}.
(The margin is only displayed if a breakpoint is present.)
A solid arrow in the left fringe of a source buffer indicates the
-line of the innermost frame where the debugged program has stopped. A
+line of the innermost frame where the debugged program has stopped. A
hollow arrow indicates the current execution line of a higher-level
frame. If you drag the arrow in the fringe with @kbd{Mouse-1}, that
causes execution to advance to the line where you release the button.
@@ -1138,7 +1138,7 @@ size for these data items.
When @code{gdb-many-windows} is non-@code{nil}, the locals buffer
shares its window with the registers buffer, just like breakpoints and
-threads buffers. To switch from one to the other, click with
+threads buffers. To switch from one to the other, click with
@kbd{Mouse-1} on the relevant button in the header line.
@node Watch Expressions
@@ -1457,8 +1457,8 @@ Evaluate all the Emacs Lisp expressions in the buffer.
@end table
@ifinfo
-@c This uses ``colon'' instead of a literal `:' because Info cannot
-@c cope with a `:' in a menu
+@c This uses 'colon' instead of a literal ':' because Info cannot
+@c cope with a ':' in a menu.
@kindex M-@key{colon}
@end ifinfo
@ifnotinfo
diff --git a/doc/emacs/calendar.texi b/doc/emacs/calendar.texi
index d3f3a559bd3..03a484b338d 100644
--- a/doc/emacs/calendar.texi
+++ b/doc/emacs/calendar.texi
@@ -379,7 +379,7 @@ between years will not work.
If the variable @code{cal-html-print-day-number-flag} is
non-@code{nil}, then the monthly calendars show the day-of-the-year
-number. The variable @code{cal-html-year-index-cols} specifies the
+number. The variable @code{cal-html-year-index-cols} specifies the
number of columns in the yearly index page.
@cindex calendar and @LaTeX{}
@@ -827,7 +827,7 @@ Display Mayan date for selected day (@code{calendar-mayan-print-date}).
Otherwise, move point to the date you want to convert, then type the
appropriate command starting with @kbd{p} from the table above. The
prefix @kbd{p} is a mnemonic for ``print'', since Emacs ``prints'' the
-equivalent date in the echo area. @kbd{p o} displays the
+equivalent date in the echo area. @kbd{p o} displays the
date in all forms known to Emacs. You can also use @kbd{Mouse-3} and
then choose @kbd{Other calendars} from the menu that appears. This
displays the equivalent forms of the date in all the calendars Emacs
diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi
index 071cd68f906..60fe97720c3 100644
--- a/doc/emacs/cmdargs.texi
+++ b/doc/emacs/cmdargs.texi
@@ -10,7 +10,7 @@
@cindex switches (command line)
@cindex startup (command line arguments)
@cindex invocation (command line arguments)
-@c FIXME: Document `--smid'? --xfq
+@c FIXME: Document '--smid'? --xfq
Emacs supports command line arguments to request various actions
when invoking Emacs. These are for compatibility with other editors
@@ -582,7 +582,7 @@ The name of the news server. Used by the mh and Gnus packages.
@item ORGANIZATION
@vindex ORGANIZATION, environment variable
The name of the organization to which you belong. Used for setting the
-`Organization:' header in your posts from the Gnus package.
+``Organization:'' header in your posts from the Gnus package.
@item PATH
@vindex PATH, environment variable
A colon-separated list of directories containing executable files.
diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi
index 9fd823bbae1..a2bea2463e7 100644
--- a/doc/emacs/custom.texi
+++ b/doc/emacs/custom.texi
@@ -778,7 +778,7 @@ fill-column's value is 70
Automatically becomes buffer-local when set.
This variable is safe as a file local variable if its value
-satisfies the predicate `integerp'.
+satisfies the predicate @code{integerp}.
Documentation:
Column beyond which automatic line-wrapping should happen.
@@ -2213,10 +2213,10 @@ require one and some contexts require the other.
keys which send non-@acronym{ASCII} characters.
@item True:
-@code{t} stands for `true'.
+@code{t} stands for ``true''.
@item False:
-@code{nil} stands for `false'.
+@code{nil} stands for ``false''.
@item Other Lisp objects:
@cindex Lisp object syntax
@@ -2247,8 +2247,8 @@ line.
(setq c-tab-always-indent nil)
@end example
-Here we have a variable whose value is normally @code{t} for `true'
-and the alternative is @code{nil} for `false'.
+Here we have a variable whose value is normally @code{t} for ``true''
+and the alternative is @code{nil} for ``false''.
@item
Make searches case sensitive by default (in all buffers that do not
@@ -2440,9 +2440,7 @@ You can also simply disregard the errors that occur if the
function is not defined.
@example
-(condition case ()
- (set-face-background 'region "grey75")
- (error nil))
+(ignore-errors (set-face-background 'region "grey75"))
@end example
A @code{setq} on a variable which does not exist is generally
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi
index 141bb66001b..4adb698450b 100644
--- a/doc/emacs/dired.texi
+++ b/doc/emacs/dired.texi
@@ -376,7 +376,7 @@ for @file{..} and typing @kbd{f} there.
@end table
@node Marks vs Flags
-@section Dired Marks vs. Flags
+@section Dired Marks vs.@: Flags
@cindex marking many files (in Dired)
Instead of flagging a file with @samp{D}, you can @dfn{mark} the
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi
index c1ad6887a68..caec373938d 100644
--- a/doc/emacs/emacs.texi
+++ b/doc/emacs/emacs.texi
@@ -115,7 +115,7 @@ display editor. This manual describes how to edit with Emacs and
some of the ways to customize it; it corresponds to GNU Emacs version
@value{EMACSVER}.
-@c See `manual-html-mono' and `manual-html-node' in admin/admin.el.
+@c See 'manual-html-mono' and 'manual-html-node' in admin/admin.el.
@ifset WWW_GNU_ORG
@html
The homepage for GNU Emacs is at
@@ -239,9 +239,9 @@ Indexes (each index contains a large menu)
* Concept Index:: An item for each concept.
@c Do NOT modify the following 3 lines! They must have this form to
-@c be correctly identified by `texinfo-multiple-files-update'. In
+@c be correctly identified by 'texinfo-multiple-files-update'. In
@c particular, the detailed menu header line MUST be identical to the
-@c value of `texinfo-master-menu-header'. See texnfo-upd.el.
+@c value of 'texinfo-master-menu-header'. See texnfo-upd.el.
@detailmenu
--- The Detailed Node Listing ---
@@ -391,7 +391,7 @@ Searching and Replacement
* Symbol Search:: Search for a source code symbol.
* Regexp Search:: Search for match for a regexp.
* Regexps:: Syntax of regular expressions.
-* Regexp Backslash:: Regular expression constructs starting with `\'.
+* Regexp Backslash:: Regular expression constructs starting with '\'.
* Regexp Example:: A complex regular expression explained.
* Search Case:: To ignore case while searching, or not.
* Replace:: Search, and replace some or all matches.
@@ -1149,7 +1149,7 @@ The Emacs Initialization File
Dealing with Emacs Trouble
* DEL Does Not Delete:: What to do if @key{DEL} doesn't delete.
-* Stuck Recursive:: `[...]' in mode line around the parentheses.
+* Stuck Recursive:: '[...]' in mode line around the parentheses.
* Screen Garbled:: Garbage on the screen.
* Text Garbled:: Garbage in the text.
* Memory Full:: How to cope when you run out of memory.
diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi
index 21957d03ae9..3a281d223b3 100644
--- a/doc/emacs/files.texi
+++ b/doc/emacs/files.texi
@@ -429,7 +429,7 @@ by mistake. One thing you can do is type @kbd{M-~}
(@code{not-modified}), which clears out the indication that the buffer
is modified. If you do this, none of the save commands will believe
that the buffer needs to be saved. (@samp{~} is often used as a
-mathematical symbol for `not'; thus @kbd{M-~} is `not', metafied.)
+mathematical symbol for ``not''; thus @kbd{M-~} is ``not'', metafied.)
Alternatively, you can cancel all the changes made since the file was
visited or saved, by reading the text from the file again. This is
called @dfn{reverting}. @xref{Reverting}. (You could also undo all
@@ -1272,7 +1272,7 @@ minibuffer, and displays the differences between the two files in a
buffer named @file{*diff*}. This works by running the @command{diff}
program, using options taken from the variable @code{diff-switches}.
The value of @code{diff-switches} should be a string; the default is
-@code{"-c"} to specify a context diff.
+@code{"-u"} to specify a unified context diff.
@c Note that the actual name of the info file is diffutils.info,
@c but it adds a dir entry for diff too.
@c On older systems, only "info diff" works, not "info diffutils".
diff --git a/doc/emacs/glossary.texi b/doc/emacs/glossary.texi
index a764c257293..9101f1c1331 100644
--- a/doc/emacs/glossary.texi
+++ b/doc/emacs/glossary.texi
@@ -60,7 +60,7 @@ be preserved if the buffer is lost due to a system error or user error.
@item Autoloading
Emacs can automatically load Lisp libraries when a Lisp program requests a
-function from those libraries. This is called `autoloading'.
+function from those libraries. This is called ``autoloading''.
@xref{Lisp Libraries}.
@item Backtrace
@@ -100,7 +100,7 @@ A base buffer is a buffer whose text is shared by an indirect buffer
Some human languages, such as English, are written from left to right.
Others, such as Arabic, are written from right to left. Emacs
supports both of these forms, as well as any mixture of them---this
-is `bidirectional text'. @xref{Bidirectional Editing}.
+is ``bidirectional text''. @xref{Bidirectional Editing}.
@item Bind
To bind a key sequence means to give it a binding (q.v.).
@@ -135,7 +135,7 @@ X}). Borders are not the same as fringes (q.v.).
@item Buffer
The buffer is the basic editing unit; one buffer corresponds to one text
being edited. You normally have several buffers, but at any time you are
-editing only one, the `current buffer', though several can be visible
+editing only one, the ``current buffer'', though several can be visible
when you are using multiple windows or frames (q.v.). Most buffers
are visiting (q.v.@:) some file. @xref{Buffers}.
@@ -265,7 +265,7 @@ normally (but see @ref{Glossary---Truncation}) takes up more than one
screen line when displayed. We say that the text line is continued, and all
screen lines used for it after the first are called continuation
lines. @xref{Continuation Lines}. A related Emacs feature is
-`filling' (q.v.).
+``filling'' (q.v.).
@item Control Character
A control character is a character that you type by holding down the
@@ -310,8 +310,8 @@ between defuns, the current defun is the one that follows point.
The cursor is the rectangle on the screen which indicates the position
(called point; q.v.@:) at which insertion and deletion takes place.
The cursor is on or under the character that follows point. Often
-people speak of `the cursor' when, strictly speaking, they mean
-`point'. @xref{Point,Cursor}.
+people speak of ``the cursor'' when, strictly speaking, they mean
+``point''. @xref{Point,Cursor}.
@item Customization
Customization is making minor changes in the way Emacs works, to
@@ -351,7 +351,7 @@ it is interpreted relative to the current buffer's default directory.
@item Defun
A defun is a major definition at the top level in a program. The name
-`defun' comes from Lisp, where most such definitions use the construct
+``defun'' comes from Lisp, where most such definitions use the construct
@code{defun}. @xref{Defuns}.
@item @key{DEL}
@@ -405,7 +405,7 @@ confirmation. The usual reason for disabling a command is that it is
confusing for beginning users. @xref{Disabling}.
@item Down Event
-Short for `button down event' (q.v.).
+Short for ``button down event'' (q.v.).
@item Drag Event
A drag event is the kind of input event (q.v.@:) generated when you
@@ -598,7 +598,7 @@ correspond to any character. @xref{Function Keys}.
@item Global
Global means ``independent of the current environment; in effect
throughout Emacs''. It is the opposite of local (q.v.). Particular
-examples of the use of `global' appear below.
+examples of the use of ``global'' appear below.
@item Global Abbrev
A global definition of an abbrev (q.v.@:) is effective in all major
@@ -824,8 +824,8 @@ lists. @xref{Moving by Parens}.
@item Local
Local means ``in effect only in a particular context''; the relevant
kind of context is a particular function execution, a particular
-buffer, or a particular major mode. It is the opposite of `global'
-(q.v.). Specific uses of `local' in Emacs terminology appear below.
+buffer, or a particular major mode. It is the opposite of ``global''
+(q.v.). Specific uses of ``local'' in Emacs terminology appear below.
@item Local Abbrev
A local abbrev definition is effective only if a particular major mode
@@ -848,7 +848,7 @@ one of the modifier keys that can accompany any character.
@item @kbd{M-C-}
@kbd{M-C-} in the name of a character is an abbreviation for
-Control-Meta; it means the same thing as `@kbd{C-M-}' (q.v.).
+Control-Meta; it means the same thing as @kbd{C-M-} (q.v.).
@item @kbd{M-x}
@kbd{M-x} is the key sequence that is used to call an Emacs command by
@@ -1121,7 +1121,7 @@ Many commands operate on the text of the region. @xref{Mark,Region}.
@item Register
Registers are named slots in which text, buffer positions, or
rectangles can be saved for later use. @xref{Registers}. A related
-Emacs feature is `bookmarks' (q.v.).
+Emacs feature is ``bookmarks'' (q.v.).
@anchor{Glossary---Regular Expression}
@item Regular Expression
@@ -1233,15 +1233,15 @@ Emacs has commands for moving by or killing by sentences.
@anchor{Glossary---Server}
@item Server
-Within Emacs, you can start a `server' process, which listens for
-connections from `clients'. This offers a faster alternative to
+Within Emacs, you can start a ``server'' process, which listens for
+connections from ``clients''. This offers a faster alternative to
starting several Emacs instances. @xref{Emacs Server}, and
@ref{Glossary---Daemon}.
@c This is only covered in the lispref, not the user manual.
@ignore
@item Session Manager
-Some window systems (q.v.@:) provide a tool called a `session manager'.
+Some window systems (q.v.@:) provide a tool called a ``session manager''.
This offers the ability to save your windows when you log off,
and restore them after you log in again.
@end ignore
@@ -1250,7 +1250,7 @@ and restore them after you log in again.
A sexp (short for ``s-expression'') is the basic syntactic unit of
Lisp in its textual form: either a list, or Lisp atom. Sexps are also
the balanced expressions (q.v.@:) of the Lisp language; this is why
-the commands for editing balanced expressions have `sexp' in their
+the commands for editing balanced expressions have @samp{sexp} in their
name. @xref{Expressions,Sexps}.
@item Simultaneous Editing
@@ -1327,7 +1327,7 @@ Emacs does not make a termscript file unless you tell it to.
@xref{Bugs}.
@item Text
-`Text' has two meanings (@pxref{Text}):
+``Text'' has two meanings (@pxref{Text}):
@itemize @bullet
@item
@@ -1420,7 +1420,7 @@ that you can customize Emacs by setting it to a new value.
@item Variable
A variable is an object in Lisp that can store an arbitrary value.
Emacs uses some variables for internal purposes, and has others (known
-as `user options'; q.v.@:) just so that you can set their values to
+as ``user options''; q.v.@:) just so that you can set their values to
control the behavior of Emacs. The variables used in Emacs that you
are likely to be interested in are listed in the Variables Index in
this manual (@pxref{Variable Index}). @xref{Variables}, for
@@ -1448,7 +1448,7 @@ Emacs divides a frame (q.v.@:) into one or more windows, each of which
can display the contents of one buffer (q.v.@:) at any time.
@xref{Screen}, for basic information on how Emacs uses the screen.
@xref{Windows}, for commands to control the use of windows. Some
-other editors use the term ``window'' for what we call a `frame'
+other editors use the term ``window'' for what we call a ``frame''
(q.v.@:) in Emacs.
@item Window System
diff --git a/doc/emacs/gnu.texi b/doc/emacs/gnu.texi
index 327ee3cb06d..3c23b9c6048 100644
--- a/doc/emacs/gnu.texi
+++ b/doc/emacs/gnu.texi
@@ -83,7 +83,7 @@ memory, because they are the easiest machines to make it run on. The extra
effort to make it run on smaller machines will be left to someone who wants
to use it on them.
-To avoid horrible confusion, please pronounce the `G' in the word `GNU'
+To avoid horrible confusion, please pronounce the ``G'' in the word ``GNU''
when it is the name of this project.
@unnumberedsec Why I Must Write GNU
diff --git a/doc/emacs/indent.texi b/doc/emacs/indent.texi
index 10cd1310d61..b45839e664f 100644
--- a/doc/emacs/indent.texi
+++ b/doc/emacs/indent.texi
@@ -198,7 +198,7 @@ are always displayed as empty spaces extending to the next
@dfn{display tab stop}. @xref{Text Display}.
@node Just Spaces
-@section Tabs vs. Spaces
+@section Tabs vs.@: Spaces
@vindex tab-width
Normally, indentation commands insert (or remove) an optimal mix of
diff --git a/doc/emacs/macos.texi b/doc/emacs/macos.texi
index a93cbfbe675..97d423e1e4b 100644
--- a/doc/emacs/macos.texi
+++ b/doc/emacs/macos.texi
@@ -190,7 +190,7 @@ font are stored in the variables @code{ns-input-font} and
@item ns-power-off
This event occurs when the user logs out and Emacs is still running, or when
-`Quit Emacs' is chosen from the application menu.
+``Quit Emacs'' is chosen from the application menu.
The default behavior is to save all file-visiting buffers.
@end table
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi
index 9074cdfb883..a1298864df6 100644
--- a/doc/emacs/maintaining.texi
+++ b/doc/emacs/maintaining.texi
@@ -188,7 +188,7 @@ basic editing operations under Bazaar.
@cindex src
@item
SRC (src) is RCS, reloaded - a specialized version-control system
-designed for single-file projects worked on by only one person. It
+designed for single-file projects worked on by only one person. It
allows multiple files with independent version-control histories to
exist in one directory, and is thus particularly well suited for
maintaining small documents, scripts, and dotfiles. While it uses RCS
@@ -1570,7 +1570,7 @@ dated in May 1993, with two items and one item respectively.
@smallexample
1993-05-25 Richard Stallman <rms@@gnu.org>
- * man.el: Rename symbols `man-*' to `Man-*'.
+ * man.el: Rename symbols 'man-*' to 'Man-*'.
(manual-entry): Make prompt string clearer.
* simple.el (blink-matching-paren-distance):
diff --git a/doc/emacs/makefile.w32-in b/doc/emacs/makefile.w32-in
index 91f9d37a1f7..99da4ab125c 100644
--- a/doc/emacs/makefile.w32-in
+++ b/doc/emacs/makefile.w32-in
@@ -21,7 +21,7 @@
# Where to find the source code. The source code for Emacs's C kernel is
# expected to be in $(srcdir)/src, and the source code for Emacs's
# utility programs is expected to be in $(srcdir)/lib-src. This is
-# set by the configure script's `--srcdir' option.
+# set by the configure script's '--srcdir' option.
srcdir=.
infodir = $(srcdir)/../../info
@@ -36,7 +36,7 @@ INFO_TARGETS = $(infodir)/emacs$(INFO_EXT)
DVI_TARGETS = emacs.dvi
INFOSOURCES = info.texi
-# The following rule does not work with all versions of `make'.
+# The following rule does not work with all versions of 'make'.
.SUFFIXES: .texi .dvi
.texi.dvi:
texi2dvi $<
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
index 46585ed52d7..20996c2a2eb 100644
--- a/doc/emacs/misc.texi
+++ b/doc/emacs/misc.texi
@@ -787,15 +787,10 @@ also change the coding system for a running subshell by typing
Coding}.
@cindex @env{INSIDE_EMACS} environment variable
-@cindex @env{EMACS} environment variable
Emacs sets the environment variable @env{INSIDE_EMACS} in the
subshell to @samp{@var{version},comint}, where @var{version} is the
Emacs version (e.g., @samp{24.1}). Programs can check this variable
-to determine whether they are running inside an Emacs subshell. (It
-also sets the @env{EMACS} environment variable to @code{t}, if that
-environment variable is not already defined. However, this
-environment variable is deprecated; programs that use it should switch
-to using @env{INSIDE_EMACS} instead.)
+to determine whether they are running inside an Emacs subshell.
@node Shell Mode
@subsection Shell Mode
@@ -2124,13 +2119,14 @@ to @code{sort-numeric-base}, but numbers beginning with @samp{0x} or
@item M-x sort-columns
Like @kbd{M-x sort-fields} except that the text within each line
-used for comparison comes from a fixed range of columns. See below
-for an explanation.
+used for comparison comes from a fixed range of columns. With a
+prefix argument, sort in reverse order. See below for more details
+on this command.
@findex reverse-region
@item M-x reverse-region
Reverse the order of the lines in the region. This is useful for
-sorting into descending order by fields or columns, since those sort
+sorting into descending order by fields, since those sort
commands do not have a feature for doing that.
@end table
diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi
index 1fffa233e56..2eb999d2c28 100644
--- a/doc/emacs/programs.texi
+++ b/doc/emacs/programs.texi
@@ -843,9 +843,9 @@ show-paren-mode}.
Electric Pair mode, a global minor mode, provides a way to easily
insert matching delimiters. Whenever you insert an opening delimiter,
the matching closing delimiter is automatically inserted as well,
-leaving point between the two. Conversely, when you insert a closing
+leaving point between the two. Conversely, when you insert a closing
delimiter over an existing one, no inserting takes places and that
-position is simply skipped over. These variables control additional
+position is simply skipped over. These variables control additional
features of Electric Pair mode:
@itemize @bullet
diff --git a/doc/emacs/rmail.texi b/doc/emacs/rmail.texi
index 0c39ea785db..82ac99f4776 100644
--- a/doc/emacs/rmail.texi
+++ b/doc/emacs/rmail.texi
@@ -1004,10 +1004,10 @@ Here is a list of these commands:
@table @kbd
@item n
-Move to next line, skipping lines saying `deleted', and select its
+Move to next line, skipping lines saying ``deleted'', and select its
message (@code{rmail-summary-next-msg}).
@item p
-Move to previous line, skipping lines saying `deleted', and select
+Move to previous line, skipping lines saying ``deleted'', and select
its message (@code{rmail-summary-previous-msg}).
@item M-n
Move to next line and select its message (@code{rmail-summary-next-all}).
diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi
index e91e2c4f81f..b69146a992a 100644
--- a/doc/emacs/search.texi
+++ b/doc/emacs/search.texi
@@ -24,7 +24,7 @@ thing, but search for patterns instead of fixed strings.
* Symbol Search:: Search for a source code symbol.
* Regexp Search:: Search for match for a regexp.
* Regexps:: Syntax of regular expressions.
-* Regexp Backslash:: Regular expression constructs starting with `\'.
+* Regexp Backslash:: Regular expression constructs starting with '\'.
* Regexp Example:: A complex regular expression explained.
* Search Case:: To ignore case while searching, or not.
* Replace:: Search, and replace some or all matches.
diff --git a/doc/emacs/trouble.texi b/doc/emacs/trouble.texi
index 22ec215d5e6..42022cd14f6 100644
--- a/doc/emacs/trouble.texi
+++ b/doc/emacs/trouble.texi
@@ -146,7 +146,7 @@ Emacs.
@menu
* DEL Does Not Delete:: What to do if @key{DEL} doesn't delete.
-* Stuck Recursive:: `[...]' in mode line around the parentheses.
+* Stuck Recursive:: '[...]' in mode line around the parentheses.
* Screen Garbled:: Garbage on the screen.
* Text Garbled:: Garbage in the text.
* Memory Full:: How to cope when you run out of memory.
@@ -743,7 +743,7 @@ unmodified Emacs. But if you've made modifications and you don't tell
us, you are sending us on a wild goose chase.)
Be precise about these changes. A description in English is not
-enough---send a context diff for them.
+enough---send a unified context diff for them.
Adding files of your own, or porting to another machine, is a
modification of the source.
@@ -1131,13 +1131,12 @@ is important.
@item
The patch itself.
-Use @samp{diff -c} to make your diffs. Diffs without context are hard
+Use @samp{diff -u} to make your diffs. Diffs without context are hard
to install reliably. More than that, they are hard to study; we must
-always study a patch to decide whether we want to install it. Unidiff
-format is better than contextless diffs, but not as easy to read as
-@samp{-c} format.
+always study a patch to decide whether we want to install it. Context
+format is better than contextless diffs, but we prefer we unified format.
-If you have GNU diff, use @samp{diff -c -F'^[_a-zA-Z0-9$]+ *('} when
+If you have GNU diff, use @samp{diff -u -F'^[_a-zA-Z0-9$]\+ *('} when
making diffs of C code. This shows the name of the function that each
change occurs in.
@@ -1171,7 +1170,7 @@ feel that the purpose needs explaining, it probably does---but put the
explanation in comments in the code. It will be more useful there.
Please look at the change log entries of recent commits to see what
-sorts of information to put in, and to learn the style that we use. Note that,
+sorts of information to put in, and to learn the style that we use. Note that,
unlike some other projects, we do require change logs for
documentation, i.e., Texinfo files.
@xref{Change Log},
@@ -1280,7 +1279,7 @@ See the Emacs project page
It is important to write your patch based on the current working
version. If you start from an older version, your patch may be
outdated (so that maintainers will have a hard time applying it), or
-changes in Emacs may have made your patch unnecessary. After you have
+changes in Emacs may have made your patch unnecessary. After you have
downloaded the repository source, you should read the file
@file{INSTALL.REPO} for build instructions (they differ to some extent
from a normal build).
diff --git a/doc/emacs/vc1-xtra.texi b/doc/emacs/vc1-xtra.texi
index a2bf2493809..8dccbf9f81c 100644
--- a/doc/emacs/vc1-xtra.texi
+++ b/doc/emacs/vc1-xtra.texi
@@ -59,7 +59,7 @@ As above, but only find entries for the current buffer's file.
For example, suppose the first line of @file{ChangeLog} is dated
1999-04-10, and that the only check-in since then was by Nathaniel
Bowditch to @file{rcs2log} on 1999-05-22 with log entry @samp{Ignore
-log messages that start with `#'.}. Then @kbd{C-x v a} inserts this
+log messages that start with '#'.}. Then @kbd{C-x v a} inserts this
@file{ChangeLog} entry:
@iftex
@@ -69,7 +69,7 @@ log messages that start with `#'.}. Then @kbd{C-x v a} inserts this
@group
1999-05-22 Nathaniel Bowditch <nat@@apn.org>
- * rcs2log: Ignore log messages that start with `#'.
+ * rcs2log: Ignore log messages that start with '#'.
@end group
@end smallexample
@iftex
diff --git a/doc/lispintro/ChangeLog b/doc/lispintro/ChangeLog.1
index c54c165d22c..c54c165d22c 100644
--- a/doc/lispintro/ChangeLog
+++ b/doc/lispintro/ChangeLog.1
diff --git a/doc/lispintro/emacs-lisp-intro.texi b/doc/lispintro/emacs-lisp-intro.texi
index ed125bb3747..46dc41a5a65 100644
--- a/doc/lispintro/emacs-lisp-intro.texi
+++ b/doc/lispintro/emacs-lisp-intro.texi
@@ -30,7 +30,7 @@
@c @set largebook
@c (Note: if you edit the book so as to change the length of the
-@c table of contents, you may have to change the value of `pageno' below.)
+@c table of contents, you may have to change the value of 'pageno' below.)
@c <<<< For hard copy printing, this file is now
@c set for smallbook, which works for all sizes
@@ -157,7 +157,7 @@ supports it in developing GNU and promoting software freedom.''
@end quotation
@end copying
-@c half title; two lines here, so do not use `shorttitlepage'
+@c half title; two lines here, so do not use 'shorttitlepage'
@tex
{\begingroup%
\hbox{}\vskip 1.5in \chaprm \centerline{An Introduction to}%
@@ -808,7 +808,7 @@ In addition, I have written several programs as extended examples.
Although these are examples, the programs are real. I use them.
Other people use them. You may use them. Beyond the fragments of
programs used for illustrations, there is very little in here that is
-`just for teaching purposes'; what you see is used. This is a great
+``just for teaching purposes''; what you see is used. This is a great
advantage of Emacs Lisp: it is easy to learn to use it for work.
@end ignore
@@ -854,8 +854,8 @@ information so you won't be surprised later when the additional
information is formally introduced.)
When you read this text, you are not expected to learn everything the
-first time. Frequently, you need only make, as it were, a `nodding
-acquaintance' with some of the items mentioned. My hope is that I have
+first time. Frequently, you need only make, as it were, a ``nodding
+acquaintance'' with some of the items mentioned. My hope is that I have
structured the text and given you enough hints that you will be alert to
what is important, and concentrate on it.
@@ -928,7 +928,7 @@ along with the key that is labeled @key{ALT} and, at the same time,
press the @key{\} key.
In addition to typing a lone keychord, you can prefix what you type
-with @kbd{C-u}, which is called the `universal argument'. The
+with @kbd{C-u}, which is called the ``universal argument''. The
@kbd{C-u} keychord passes an argument to the subsequent command.
Thus, to indent a region of plain text by 6 spaces, mark the region,
and then type @w{@kbd{C-u 6 M-C-\}}. (If you do not specify a number,
@@ -1000,7 +1000,7 @@ bob@@gnu.org
To the untutored eye, Lisp is a strange programming language. In Lisp
code there are parentheses everywhere. Some people even claim that
-the name stands for `Lots of Isolated Silly Parentheses'. But the
+the name stands for ``Lots of Isolated Silly Parentheses''. But the
claim is unwarranted. Lisp stands for LISt Processing, and the
programming language handles @emph{lists} (and lists of lists) by
putting them between parentheses. The parentheses mark the boundaries
@@ -1090,7 +1090,7 @@ list is made up of the words @samp{a}, @samp{list}, @samp{inside},
In Lisp, what we have been calling words are called @dfn{atoms}. This
term comes from the historical meaning of the word atom, which means
-`indivisible'. As far as Lisp is concerned, the words we have been
+``indivisible''. As far as Lisp is concerned, the words we have been
using in the lists cannot be divided into any smaller parts and still
mean the same thing as part of a program; likewise with numbers and
single character symbols like @samp{+}. On the other hand, unlike an
@@ -1159,7 +1159,7 @@ paragraphs---is also an atom. Here is an example:
@noindent
In Lisp, all of the quoted text including the punctuation mark and the
blank spaces is a single atom. This kind of atom is called a
-@dfn{string} (for `string of characters') and is the sort of thing that
+@dfn{string} (for ``string of characters'') and is the sort of thing that
is used for messages that a computer can print for a human to read.
Strings are a different kind of atom than numbers or symbols and are
used differently.
@@ -1303,7 +1303,7 @@ signposts to a traveler in a strange country; deciphering them can be
hard, but once understood, they can point the way.
The error message is generated by a built-in GNU Emacs debugger. We
-will `enter the debugger'. You get out of the debugger by typing @code{q}.
+will ``enter the debugger''. You get out of the debugger by typing @code{q}.
What we will do is evaluate a list that is not quoted and does not
have a meaningful command as its first element. Here is a list almost
@@ -1365,9 +1365,9 @@ Based on what we already know, we can almost read this error message.
You read the @file{*Backtrace*} buffer from the bottom up; it tells
you what Emacs did. When you typed @kbd{C-x C-e}, you made an
interactive call to the command @code{eval-last-sexp}. @code{eval} is
-an abbreviation for `evaluate' and @code{sexp} is an abbreviation for
-`symbolic expression'. The command means `evaluate last symbolic
-expression', which is the expression just before your cursor.
+an abbreviation for ``evaluate'' and @code{sexp} is an abbreviation for
+``symbolic expression''. The command means ``evaluate last symbolic
+expression'', which is the expression just before your cursor.
Each line above tells you what the Lisp interpreter evaluated next.
The most recent action is at the top. The buffer is called the
@@ -1401,7 +1401,7 @@ definition of any set of instructions for the computer to carry out.
The slightly odd word, @samp{void-function}, is designed to cover the
way Emacs Lisp is implemented, which is that when a symbol does not
have a function definition attached to it, the place that should
-contain the instructions is `void'.
+contain the instructions is ``void''.
On the other hand, since we were able to add 2 plus 2 successfully, by
evaluating @code{(+ 2 2)}, we can infer that the symbol @code{+} must
@@ -1570,9 +1570,9 @@ compilation.
When the Lisp interpreter works on an expression, the term for the
activity is called @dfn{evaluation}. We say that the interpreter
-`evaluates the expression'. I've used this term several times before.
-The word comes from its use in everyday language, `to ascertain the
-value or amount of; to appraise', according to @cite{Webster's New
+``evaluates the expression''. I've used this term several times before.
+The word comes from its use in everyday language, ``to ascertain the
+value or amount of; to appraise'', according to @cite{Webster's New
Collegiate Dictionary}.
@menu
@@ -1592,7 +1592,7 @@ instructions it found in the function definition, or perhaps it will
give up on that function and produce an error message. (The interpreter
may also find itself tossed, so to speak, to a different function or it
may attempt to repeat continually what it is doing for ever and ever in
-what is called an `infinite loop'. These actions are less common; and
+what is called an ``infinite loop''. These actions are less common; and
we can ignore them.) Most frequently, the interpreter returns a value.
@cindex @samp{side effect} defined
@@ -1637,9 +1637,9 @@ evaluate, the interpreter prints that value in the echo area.
Now it is easy to understand the name of the command invoked by the
keystrokes @kbd{C-x C-e}: the name is @code{eval-last-sexp}. The
-letters @code{sexp} are an abbreviation for `symbolic expression', and
-@code{eval} is an abbreviation for `evaluate'. The command means
-`evaluate last symbolic expression'.
+letters @code{sexp} are an abbreviation for ``symbolic expression'', and
+@code{eval} is an abbreviation for ``evaluate''. The command means
+``evaluate last symbolic expression''.
As an experiment, you can try evaluating the expression by putting the
cursor at the beginning of the next line immediately following the
@@ -1838,7 +1838,7 @@ typing @kbd{q} in the @file{*Backtrace*} buffer.)
This backtrace is different from the very first error message we saw,
which said, @samp{Debugger entered--Lisp error: (void-function this)}.
In this case, the function does not have a value as a variable; while
-in the other error message, the function (the word `this') did not
+in the other error message, the function (the word @samp{this}) did not
have a definition.
In this experiment with the @code{+}, what we did was cause the Lisp
@@ -1887,22 +1887,22 @@ The numbers added by @code{+} are called the @dfn{arguments} of the
function @code{+}. These numbers are the information that is given to
or @dfn{passed} to the function.
-The word `argument' comes from the way it is used in mathematics and
+The word ``argument'' comes from the way it is used in mathematics and
does not refer to a disputation between two people; instead it refers to
the information presented to the function, in this case, to the
@code{+}. In Lisp, the arguments to a function are the atoms or lists
that follow the function. The values returned by the evaluation of
these atoms or lists are passed to the function. Different functions
require different numbers of arguments; some functions require none at
-all.@footnote{It is curious to track the path by which the word `argument'
+all.@footnote{It is curious to track the path by which the word ``argument''
came to have two different meanings, one in mathematics and the other in
everyday English. According to the @cite{Oxford English Dictionary},
the word derives from the Latin for @samp{to make clear, prove}; thus it
-came to mean, by one thread of derivation, `the evidence offered as
-proof', which is to say, `the information offered', which led to its
+came to mean, by one thread of derivation, ``the evidence offered as
+proof'', which is to say, ``the information offered'', which led to its
meaning in Lisp. But in the other thread of derivation, it came to mean
-`to assert in a manner against which others may make counter
-assertions', which led to the meaning of the word as a disputation.
+``to assert in a manner against which others may make counter
+assertions'', which led to the meaning of the word as a disputation.
(Note here that the English word has two different definitions attached
to it at the same time. By contrast, in Emacs Lisp, a symbol cannot
have two different function definitions at the same time.)}
@@ -1967,7 +1967,7 @@ Note that the string passed to @code{substring} is a single atom even
though it is made up of several words separated by spaces. Lisp counts
everything between the two quotation marks as part of the string,
including the spaces. You can think of the @code{substring} function as
-a kind of `atom smasher' since it takes an otherwise indivisible atom
+a kind of ``atom smasher'' since it takes an otherwise indivisible atom
and extracts a part. However, @code{substring} is only able to extract
a substring from an argument that is a string, not from another type of
atom such as a number or symbol.
@@ -2022,7 +2022,7 @@ Some functions, such as @code{concat}, @code{+} or @code{*}, take any
number of arguments. (The @code{*} is the symbol for multiplication.)
This can be seen by evaluating each of the following expressions in
the usual way. What you will see in the echo area is printed in this
-text after @samp{@result{}}, which you may read as `evaluates to'.
+text after @samp{@result{}}, which you may read as ``evaluates to''.
@need 1250
In the first set, the functions have no arguments:
@@ -2123,7 +2123,7 @@ numeric value of marker positions as numbers.
The @samp{p} of @code{number-or-marker-p} is the embodiment of a
practice started in the early days of Lisp programming. The @samp{p}
-stands for `predicate'. In the jargon used by the early Lisp
+stands for ``predicate''. In the jargon used by the early Lisp
researchers, a predicate refers to a function to determine whether some
property is true or false. So the @samp{p} tells us that
@code{number-or-marker-p} is the name of a function that determines
@@ -2390,11 +2390,11 @@ to the symbol @code{herbivores}:
not have fit on a page; and humans find it easier to read nicely
formatted lists.)
-Although I have been using the term `assign', there is another way of
+Although I have been using the term ``assign'', there is another way of
thinking about the workings of @code{set} and @code{setq}; and that is to
say that @code{set} and @code{setq} make the symbol @emph{point} to the
list. This latter way of thinking is very common and in forthcoming
-chapters we shall come upon at least one symbol that has `pointer' as
+chapters we shall come upon at least one symbol that has ``pointer'' as
part of its name. The name is chosen because the symbol has a value,
specifically a list, attached to it; or, expressed another way,
the symbol is set to ``point'' to the list.
@@ -2639,9 +2639,9 @@ The former is the name of the buffer and the latter is the name of the
file. In Info, the buffer name is @file{"*info*"}. Info does not
point to any file, so the result of evaluating
@code{(buffer-file-name)} is @file{nil}. The symbol @code{nil} is
-from the Latin word for `nothing'; in this case, it means that the
+from the Latin word for ``nothing''; in this case, it means that the
buffer is not associated with any file. (In Lisp, @code{nil} is also
-used to mean `false' and is a synonym for the empty list, @code{()}.)
+used to mean ``false'' and is a synonym for the empty list, @code{()}.)
When I am writing, the name of my buffer is
@file{"introduction.texinfo"}. The name of the file to which it
@@ -2661,7 +2661,7 @@ computer programs, however, it is important to keep the distinction in mind,
since the computer is not as smart as a person.
@cindex Buffer, history of word
-The word `buffer', by the way, comes from the meaning of the word as a
+The word ``buffer'', by the way, comes from the meaning of the word as a
cushion that deadens the force of a collision. In early computers, a
buffer cushioned the interaction between files and the computer's
central processing unit. The drums or tapes that held a file and the
@@ -2864,7 +2864,7 @@ there until the command finishes running).
Also, we have just introduced another jargon term, the word @dfn{call}.
When you evaluate a list in which the first symbol is a function, you
are calling that function. The use of the term comes from the notion of
-the function as an entity that can do something for you if you `call'
+the function as an entity that can do something for you if you ``call''
it---just as a plumber is an entity who can fix a leak if you call him
or her.
@@ -3082,9 +3082,9 @@ function.
Instead of choosing the word @code{number} for the name of the argument,
I could have picked any other name. For example, I could have chosen
-the word @code{multiplicand}. I picked the word `number' because it
+the word @code{multiplicand}. I picked the word ``number'' because it
tells what kind of value is intended for this slot; but I could just as
-well have chosen the word `multiplicand' to indicate the role that the
+well have chosen the word ``multiplicand'' to indicate the role that the
value placed in this slot will play in the workings of the function. I
could have called it @code{foogle}, but that would have been a bad
choice because it would not tell humans what it means. The choice of
@@ -3096,16 +3096,16 @@ list, even the name of a symbol used in some other function: the name
you use in an argument list is private to that particular definition.
In that definition, the name refers to a different entity than any use
of the same name outside the function definition. Suppose you have a
-nick-name `Shorty' in your family; when your family members refer to
-`Shorty', they mean you. But outside your family, in a movie, for
-example, the name `Shorty' refers to someone else. Because a name in an
+nick-name ``Shorty'' in your family; when your family members refer to
+``Shorty'', they mean you. But outside your family, in a movie, for
+example, the name ``Shorty'' refers to someone else. Because a name in an
argument list is private to the function definition, you can change the
value of such a symbol inside the body of a function without changing
its value outside the function. The effect is similar to that produced
by a @code{let} expression. (@xref{let, , @code{let}}.)
@ignore
-Note also that we discuss the word `number' in two different ways: as a
+Note also that we discuss the word ``number'' in two different ways: as a
symbol that appears in the code, and as the name of something that will
be replaced by a something else during the evaluation of the function.
In the first case, @code{number} is a symbol, not a number; it happens
@@ -3161,7 +3161,7 @@ definition begins.
If you evaluate this example, you are likely to get an error message.
(Go ahead, try it!) This is because we have written the function
definition, but not yet told the computer about the definition---we have
-not yet installed (or `loaded') the function definition in Emacs.
+not yet installed (or ``loaded'') the function definition in Emacs.
Installing a function is the process that tells the Lisp interpreter the
definition of the function. Installation is described in the next
section.
@@ -3453,7 +3453,7 @@ is
The first part of the argument to @code{interactive} is @samp{p}, with
which you are already familiar. This argument tells Emacs to
-interpret a `prefix', as a number to be passed to the function. You
+interpret a ``prefix'', as a number to be passed to the function. You
can specify a prefix either by typing @kbd{C-u} followed by a number
or by typing @key{META} followed by a number. The prefix is the
number of specified characters. Thus, if your prefix is three and the
@@ -3567,8 +3567,8 @@ variable of the same name that is not part of the function.
To understand why the @code{let} special form is necessary, consider
the situation in which you own a home that you generally refer to as
-`the house', as in the sentence, ``The house needs painting.'' If you
-are visiting a friend and your host refers to `the house', he is
+``the house'', as in the sentence, ``The house needs painting.'' If you
+are visiting a friend and your host refers to ``the house'', he is
likely to be referring to @emph{his} house, not yours, that is, to a
different house.
@@ -3596,7 +3596,7 @@ and the two are not intended to refer to the same value. The
The @code{let} special form prevents confusion. @code{let} creates a
name for a @dfn{local variable} that overshadows any use of the same
name outside the @code{let} expression. This is like understanding
-that whenever your host refers to `the house', he means his house, not
+that whenever your host refers to ``the house'', he means his house, not
yours. (Symbols used in argument lists work the same way.
@xref{defun, , The @code{defun} Macro}.)
@@ -3616,14 +3616,14 @@ in Emacs Lisp, scoping is dynamic, not lexical.''
@code{let} can create more than one variable at once. Also,
@code{let} gives each variable it creates an initial value, either a
value specified by you, or @code{nil}. (In the jargon, this is called
-`binding the variable to the value'.) After @code{let} has created
+``binding the variable to the value''.) After @code{let} has created
and bound the variables, it executes the code in the body of the
@code{let}, and returns the value of the last expression in the body,
-as the value of the whole @code{let} expression. (`Execute' is a jargon
+as the value of the whole @code{let} expression. (``Execute'' is a jargon
term that means to evaluate a list; it comes from the use of the word
-meaning `to give practical effect to' (@cite{Oxford English
+meaning ``to give practical effect to'' (@cite{Oxford English
Dictionary}). Since you evaluate an expression to perform an action,
-`execute' has evolved as a synonym to `evaluate'.)
+``execute'' has evolved as a synonym to ``evaluate''.)
@node Parts of let Expression
@subsection The Parts of a @code{let} Expression
@@ -3800,7 +3800,7 @@ such as, ``if it is warm and sunny, then go to the beach!''
@cindex @samp{if-part} defined
@cindex @samp{then-part} defined
-An @code{if} expression written in Lisp does not use the word `then';
+An @code{if} expression written in Lisp does not use the word ``then'';
the test and the action are the second and third elements of the list
whose first element is @code{if}. Nonetheless, the test part of an
@code{if} expression is often called the @dfn{if-part} and the second
@@ -4066,10 +4066,10 @@ and write your program accordingly.)
@findex nil
There is an important aspect to the truth test in an @code{if}
-expression. So far, we have spoken of `true' and `false' as values of
+expression. So far, we have spoken of ``true'' and ``false'' as values of
predicates as if they were new kinds of Emacs Lisp objects. In fact,
-`false' is just our old friend @code{nil}. Anything else---anything
-at all---is `true'.
+``false'' is just our old friend @code{nil}. Anything else---anything
+at all---is ``true''.
The expression that tests for truth is interpreted as @dfn{true}
if the result of evaluating it is a value that is not @code{nil}. In
@@ -4351,7 +4351,7 @@ The name of an existing buffer.
The name of an existing file.
@item p
-The numeric prefix argument. (Note that this `p' is lower case.)
+The numeric prefix argument. (Note that this @code{p} is lower case.)
@item r
Point and the mark, as two numeric arguments, smallest first. This
@@ -4443,7 +4443,7 @@ markers, are equal.
@item equal
@itemx eq
Test whether two objects are the same. @code{equal} uses one meaning
-of the word `same' and @code{eq} uses another: @code{equal} returns
+of the word ``same'' and @code{eq} uses another: @code{equal} returns
true if the two objects have a similar structure and contents, such as
two copies of the same book. On the other hand, @code{eq}, returns
true if both arguments are actually the same object.
@@ -4472,7 +4472,7 @@ shorter, alternative name is @code{string=}. There are no string test
functions that correspond to @var{>}, @code{>=}, or @code{<=}.
@item message
-Print a message in the echo area. The first argument is a string that
+Print a message in the echo area. The first argument is a string that
can contain @samp{%s}, @samp{%d}, or @samp{%c} to print the value of
arguments that follow the string. The argument used by @samp{%s} must
be a string or a symbol; the argument used by @samp{%d} must be a
@@ -4588,7 +4588,7 @@ function definition.
Put point into the name of the file that contains the function and
press the @key{RET} key. In this case, @key{RET} means
-@code{push-button} rather than `return' or `enter'. Emacs will take
+@code{push-button} rather than ``return'' or ``enter''. Emacs will take
you directly to the function definition.
@ignore
@@ -4596,7 +4596,7 @@ Not In version 22
If you move point over the file name and press
the @key{RET} key, which in this case means @code{help-follow} rather
-than `return' or `enter', Emacs will take you directly to the function
+than ``return'' or ``enter'', Emacs will take you directly to the function
definition.
@end ignore
@@ -4606,7 +4606,7 @@ file, you can use the @code{find-tag} function to jump to it.
Lisp, and C, and it works with non-programming text as well. For
example, @code{find-tag} will jump to the various nodes in the
Texinfo source file of this document.
-The @code{find-tag} function depends on `tags tables' that record
+The @code{find-tag} function depends on ``tags tables'' that record
the locations of the functions, variables, and other items to which
@code{find-tag} jumps.
@@ -4624,7 +4624,7 @@ screen. To switch back to your current buffer, type @kbd{C-x b
@cindex TAGS table, specifying
@findex find-tag
Depending on how the initial default values of your copy of Emacs are
-set, you may also need to specify the location of your `tags table',
+set, you may also need to specify the location of your ``tags table'',
which is a file called @file{TAGS}. For example, if you are
interested in Emacs sources, the tags table you will most likely want,
if it has already been created for you, will be in a subdirectory of
@@ -4650,7 +4650,7 @@ After you become more familiar with Emacs Lisp, you will find that you will
frequently use @code{find-tag} to navigate your way around source code;
and you will create your own @file{TAGS} tables.
-@cindex Library, as term for `file'
+@cindex Library, as term for ``file''
Incidentally, the files that contain Lisp code are conventionally
called @dfn{libraries}. The metaphor is derived from that of a
specialized library, such as a law library or an engineering library,
@@ -4916,7 +4916,7 @@ The expression works nearly the same as before. It sets a mark at the
highest numbered place in the buffer that it can. However, in this
version, @code{push-mark} has two additional arguments. The second
argument to @code{push-mark} is @code{nil}. This tells the function
-it @emph{should} display a message that says `Mark set' when it pushes
+it @emph{should} display a message that says ``Mark set'' when it pushes
the mark. The third argument is @code{t}. This tells
@code{push-mark} to activate the mark when Transient Mark mode is
turned on. Transient Mark mode highlights the currently active
@@ -5522,7 +5522,7 @@ the buffer you are in (and you have not seen the computer shift its
attention, so you don't know that that buffer is now called
@code{oldbuf}).
-Incidentally, this is what is meant by `replacement'. To replace text,
+Incidentally, this is what is meant by ``replacement''. To replace text,
Emacs erases the previous text and then inserts new text.
@need 1250
@@ -6135,7 +6135,7 @@ size of the buffer. The reason for this is that the old version 18
Emacs used numbers that are no bigger than eight million or so and in
the computation that followed, the programmer feared that Emacs might
try to use over-large numbers if the buffer were large. The term
-`overflow', mentioned in the comment, means numbers that are over
+``overflow'', mentioned in the comment, means numbers that are over
large. More recent versions of Emacs use larger numbers, but this
code has not been touched, if only because people now look at buffers
that are far, far larger than ever before.
@@ -6155,7 +6155,7 @@ was that function called several times, it gave the size of the whole
buffer, not the accessible part. The computation makes much more
sense when it handles just the accessible part. (@xref{Narrowing &
Widening, , Narrowing and Widening}, for more information on focusing
-attention to an `accessible' part.)
+attention to an ``accessible'' part.)
@need 800
The line looks like this:
@@ -6403,7 +6403,7 @@ tenths of the way through the buffer, which is a nicety that is,
perhaps, not necessary, but which, if it did not occur, would be sure
to draw complaints. (The @code{(not (consp arg))} portion is so that
if you specify the command with a @kbd{C-u}, but without a number,
-that is to say, if the `raw prefix argument' is simply a cons cell,
+that is to say, if the ``raw prefix argument'' is simply a cons cell,
the command does not put you at the beginning of the second line.)
@node Second Buffer Related Review
@@ -6432,7 +6432,7 @@ is optional; this means that the function can be evaluated without the
argument, if desired.
@item prefix-numeric-value
-Convert the `raw prefix argument' produced by @code{(interactive
+Convert the ``raw prefix argument'' produced by @code{(interactive
"P")} to a numeric value.
@item forward-line
@@ -6814,11 +6814,11 @@ namely, @code{setcdr} and @code{nthcdr}. (@xref{copy-region-as-kill}.)
@end ifnottex
The name of the @code{cons} function is not unreasonable: it is an
-abbreviation of the word `construct'. The origins of the names for
+abbreviation of the word ``construct''. The origins of the names for
@code{car} and @code{cdr}, on the other hand, are esoteric: @code{car}
-is an acronym from the phrase `Contents of the Address part of the
-Register'; and @code{cdr} (pronounced `could-er') is an acronym from
-the phrase `Contents of the Decrement part of the Register'. These
+is an acronym from the phrase ``Contents of the Address part of the
+Register''; and @code{cdr} (pronounced ``could-er'') is an acronym from
+the phrase ``Contents of the Decrement part of the Register''. These
phrases refer to specific pieces of hardware on the very early
computer on which the original Lisp was developed. Besides being
obsolete, the phrases have been completely irrelevant for more than 25
@@ -6853,7 +6853,7 @@ Clearly, a more reasonable name for the @code{car} function would be
@code{car} does not remove the first item from the list; it only reports
what it is. After @code{car} has been applied to a list, the list is
still the same as it was. In the jargon, @code{car} is
-`non-destructive'. This feature turns out to be important.
+``non-destructive''. This feature turns out to be important.
The @sc{cdr} of a list is the rest of the list, that is, the
@code{cdr} function returns the part of the list that follows the
@@ -6975,8 +6975,8 @@ appear in the echo area. @code{cons} causes the creation of a new
list in which the element is followed by the elements of the original
list.
-We often say that `@code{cons} puts a new element at the beginning of
-a list; it attaches or pushes elements onto the list', but this
+We often say that ``@code{cons} puts a new element at the beginning of
+a list; it attaches or pushes elements onto the list'', but this
phrasing can be misleading, since @code{cons} does not change an
existing list, but creates a new one.
@@ -7001,7 +7001,7 @@ need to provide at least an empty list at the beginning. Here is a
series of @code{cons} expressions that build up a list of flowers. If
you are reading this in Info in GNU Emacs, you can evaluate each of
the expressions in the usual way; the value is printed in this text
-after @samp{@result{}}, which you may read as `evaluates to'.
+after @samp{@result{}}, which you may read as ``evaluates to''.
@smallexample
@group
@@ -7114,7 +7114,7 @@ In an earlier version:
This is written with a special notation, @samp{#<subr},
that indicates that the function @code{length} is one of the primitive
functions written in C rather than in Emacs Lisp. (@samp{subr} is an
- abbreviation for `subroutine'.) @xref{What Is a Function, , What Is a
+ abbreviation for ``subroutine''.) @xref{What Is a Function, , What Is a
Function?, elisp , The GNU Emacs Lisp Reference Manual}, for more
about subroutines.
@end ignore
@@ -7273,9 +7273,9 @@ This can be very convenient.
Note that the elements are numbered from zero, not one. That is to
say, the first element of a list, its @sc{car} is the zeroth element.
-This is called `zero-based' counting and often bothers people who
+This is called ``zero-based'' counting and often bothers people who
are accustomed to the first element in a list being number one, which
-is `one-based'.
+is ``one-based''.
@need 1250
For example:
@@ -7446,17 +7446,17 @@ fish. Replace the rest of that list with a list of other fish.
@cindex Erasing text
@cindex Deleting text
-Whenever you cut or clip text out of a buffer with a `kill' command in
+Whenever you cut or clip text out of a buffer with a ``kill'' command in
GNU Emacs, it is stored in a list and you can bring it back with a
-`yank' command.
+``yank'' command.
-(The use of the word `kill' in Emacs for processes which specifically
+(The use of the word ``kill'' in Emacs for processes which specifically
@emph{do not} destroy the values of the entities is an unfortunate
-historical accident. A much more appropriate word would be `clip' since
+historical accident. A much more appropriate word would be ``clip'' since
that is what the kill commands do; they clip text out of a buffer and
put it into storage from which it can be brought back. I have often
-been tempted to replace globally all occurrences of `kill' in the Emacs
-sources with `clip' and all occurrences of `killed' with `clipped'.)
+been tempted to replace globally all occurrences of ``kill'' in the Emacs
+sources with ``clip'' and all occurrences of ``killed'' with ``clipped''.)
@menu
* Storing Text:: Text is stored in a list.
@@ -7485,7 +7485,7 @@ look like this:
@need 1200
@noindent
The function @code{cons} can be used to create a new list from a piece
-of text (an `atom', to use the jargon) and an existing list, like
+of text (an ``atom'', to use the jargon) and an existing list, like
this:
@smallexample
@@ -7529,7 +7529,7 @@ than nothing at all.
The list that holds the pieces of text is called the @dfn{kill ring}.
This chapter leads up to a description of the kill ring and how it is
used by first tracing how the @code{zap-to-char} function works. This
-function uses (or `calls') a function that invokes a function that
+function uses (or ``calls'') a function that invokes a function that
manipulates the kill ring. Thus, before reaching the mountains, we
climb the foothills.
@@ -7610,7 +7610,7 @@ Goes backward if ARG is negative; error if CHAR not found."
@end smallexample
The documentation is thorough. You do need to know the jargon meaning
-of the word `kill'.
+of the word ``kill''.
@node zap-to-char interactive
@subsection The @code{interactive} Expression
@@ -7627,7 +7627,7 @@ The part within quotation marks, @code{"p\ncZap to char:@: "}, specifies
two different things. First, and most simply, is the @samp{p}.
This part is separated from the next part by a newline, @samp{\n}.
The @samp{p} means that the first argument to the function will be
-passed the value of a `processed prefix'. The prefix argument is
+passed the value of a ``processed prefix''. The prefix argument is
passed by typing @kbd{C-u} and a number, or @kbd{M-} and a number. If
the function is called interactively without a prefix, 1 is passed to
this argument.
@@ -7698,7 +7698,7 @@ function @code{char-to-string} to ensure that the computer treats that
character as a string.) If the search is backwards,
@code{search-forward} leaves point just before the first character in
the target. Also, @code{search-forward} returns @code{t} for true.
-(Moving point is therefore a `side effect'.)
+(Moving point is therefore a ``side effect''.)
@need 1250
In @code{zap-to-char}, the @code{search-forward} function looks like this:
@@ -7928,13 +7928,13 @@ The command \\[yank] can retrieve it from there. @dots{} "
;; @bullet{} Since order matters, pass point first.
(interactive (list (point) (mark)))
;; @bullet{} And tell us if we cannot cut the text.
- ;; `unless' is an `if' without a then-part.
+ ;; 'unless' is an 'if' without a then-part.
(unless (and beg end)
(error "The mark is not set now, so there is no region"))
@end group
@group
- ;; @bullet{} `condition-case' takes three arguments.
+ ;; @bullet{} 'condition-case' takes three arguments.
;; If the first argument is nil, as it is here,
;; information about the error signal is not
;; stored for use by another function.
@@ -7942,33 +7942,33 @@ The command \\[yank] can retrieve it from there. @dots{} "
@end group
@group
- ;; @bullet{} The second argument to `condition-case' tells the
+ ;; @bullet{} The second argument to 'condition-case' tells the
;; Lisp interpreter what to do when all goes well.
@end group
@group
- ;; It starts with a `let' function that extracts the string
+ ;; It starts with a 'let' function that extracts the string
;; and tests whether it exists. If so (that is what the
- ;; `when' checks), it calls an `if' function that determines
+ ;; 'when' checks), it calls an 'if' function that determines
;; whether the previous command was another call to
- ;; `kill-region'; if it was, then the new text is appended to
+ ;; 'kill-region'; if it was, then the new text is appended to
;; the previous text; if not, then a different function,
- ;; `kill-new', is called.
+ ;; 'kill-new', is called.
@end group
@group
- ;; The `kill-append' function concatenates the new string and
- ;; the old. The `kill-new' function inserts text into a new
+ ;; The 'kill-append' function concatenates the new string and
+ ;; the old. The 'kill-new' function inserts text into a new
;; item in the kill ring.
@end group
@group
- ;; `when' is an `if' without an else-part. The second `when'
+ ;; 'when' is an 'if' without an else-part. The second 'when'
;; again checks whether the current string exists; in
;; addition, it checks whether the previous command was
- ;; another call to `kill-region'. If one or the other
+ ;; another call to 'kill-region'. If one or the other
;; condition is true, then it sets the current command to
- ;; be `kill-region'.
+ ;; be 'kill-region'.
@end group
@group
(let ((string (filter-buffer-substring beg end t)))
@@ -7977,10 +7977,10 @@ The command \\[yank] can retrieve it from there. @dots{} "
(if (eq last-command 'kill-region)
@end group
@group
- ;; @minus{} `yank-handler' is an optional argument to
- ;; `kill-region' that tells the `kill-append' and
- ;; `kill-new' functions how deal with properties
- ;; added to the text, such as `bold' or `italics'.
+ ;; @minus{} 'yank-handler' is an optional argument to
+ ;; 'kill-region' that tells the 'kill-append' and
+ ;; 'kill-new' functions how deal with properties
+ ;; added to the text, such as 'bold' or 'italics'.
(kill-append string (< end beg) yank-handler)
(kill-new string nil yank-handler)))
(when (or string (eq last-command 'kill-region))
@@ -7989,7 +7989,7 @@ The command \\[yank] can retrieve it from there. @dots{} "
@end group
@group
- ;; @bullet{} The third argument to `condition-case' tells the interpreter
+ ;; @bullet{} The third argument to 'condition-case' tells the interpreter
;; what to do with an error.
@end group
@group
@@ -8032,7 +8032,7 @@ The text is deleted but saved in the kill ring."
@end group
@group
- ;; 1. `condition-case' takes three arguments.
+ ;; 1. 'condition-case' takes three arguments.
;; If the first argument is nil, as it is here,
;; information about the error signal is not
;; stored for use by another function.
@@ -8040,25 +8040,25 @@ The text is deleted but saved in the kill ring."
@end group
@group
- ;; 2. The second argument to `condition-case'
+ ;; 2. The second argument to 'condition-case'
;; tells the Lisp interpreter what to do when all goes well.
@end group
@group
- ;; The `delete-and-extract-region' function usually does the
+ ;; The 'delete-and-extract-region' function usually does the
;; work. If the beginning and ending of the region are both
- ;; the same, then the variable `string' will be empty, or nil
+ ;; the same, then the variable 'string' will be empty, or nil
(let ((string (delete-and-extract-region beg end)))
@end group
@group
- ;; `when' is an `if' clause that cannot take an `else-part'.
- ;; Emacs normally sets the value of `last-command' to the
+ ;; 'when' is an 'if' clause that cannot take an 'else-part'.
+ ;; Emacs normally sets the value of 'last-command' to the
;; previous command.
@end group
@group
- ;; `kill-append' concatenates the new string and the old.
- ;; `kill-new' inserts text into a new item in the kill ring.
+ ;; 'kill-append' concatenates the new string and the old.
+ ;; 'kill-new' inserts text into a new item in the kill ring.
(when string
(if (eq last-command 'kill-region)
;; if true, prepend string
@@ -8068,7 +8068,7 @@ The text is deleted but saved in the kill ring."
@end group
@group
- ;; 3. The third argument to `condition-case' tells the interpreter
+ ;; 3. The third argument to 'condition-case' tells the interpreter
;; what to do with an error.
@end group
@group
@@ -8136,7 +8136,7 @@ However, if an error occurs, among its other actions, the function
generating the error signal will define one or more error condition
names.
-An error handler is the third argument to @code{condition case}.
+An error handler is the third argument to @code{condition-case}.
An error handler has two parts, a @var{condition-name} and a
@var{body}. If the @var{condition-name} part of an error handler
matches a condition name generated by an error, then the @var{body}
@@ -8198,7 +8198,7 @@ Technically speaking, @code{when} is a Lisp macro. A Lisp macro
enables you to define new control constructs and other language
features. It tells the interpreter how to compute another Lisp
expression which will in turn compute the value. In this case, the
-`other expression' is an @code{if} expression.
+``other expression'' is an @code{if} expression.
The @code{kill-region} function definition also has an @code{unless}
macro; it is the converse of @code{when}. The @code{unless} macro is
@@ -8232,7 +8232,7 @@ The then-part is evaluated if the previous command was another call to
@code{yank-handler} is an optional argument to @code{kill-region} that
tells the @code{kill-append} and @code{kill-new} functions how deal
-with properties added to the text, such as `bold' or `italics'.
+with properties added to the text, such as ``bold'' or ``italics''.
@code{last-command} is a variable that comes with Emacs that we have
not seen before. Normally, whenever a function is executed, Emacs
@@ -8320,7 +8320,7 @@ document from the beginning, understanding these parts of a function is
almost becoming routine.
The documentation is somewhat confusing unless you remember that the
-word `kill' has a meaning different from usual. The `Transient Mark'
+word ``kill'' has a meaning different from usual. The ``Transient Mark''
and @code{interprogram-cut-function} comments explain certain
side-effects.
@@ -8472,8 +8472,8 @@ a moment.
(Also, the function provides an optional argument called
@code{yank-handler}; when invoked, this argument tells the function
-how to deal with properties added to the text, such as `bold' or
-`italics'.)
+how to deal with properties added to the text, such as ``bold'' or
+``italics''.)
@c !!! bug in GNU Emacs 22 version of kill-append ?
It has a @code{let*} function to set the value of the first element of
@@ -8643,7 +8643,7 @@ As usual, we can look at this function in parts.
The function definition has an optional @code{yank-handler} argument,
which when invoked tells the function how to deal with properties
-added to the text, such as `bold' or `italics'. We will skip that.
+added to the text, such as ``bold'' or ``italics''. We will skip that.
@need 1200
The first line of the documentation makes sense:
@@ -8887,7 +8887,7 @@ It starts with an @code{if} expression
In this case, the expression tests first to see whether
@code{menu-bar-update-yank-menu} exists as a function, and if so,
calls it. The @code{fboundp} function returns true if the symbol it
-is testing has a function definition that `is not void'. If the
+is testing has a function definition that ``is not void''. If the
symbol's function definition were void, we would receive an error
message, as we did when we created errors intentionally (@pxref{Making
Errors, , Generate an Error Message}).
@@ -8914,7 +8914,7 @@ The expression determines whether the second argument to
@end ignore
@code{menu-bar-update-yank-menu} is one of the functions that make it
-possible to use the `Select and Paste' menu in the Edit item of a menu
+possible to use the ``Select and Paste'' menu in the Edit item of a menu
bar; using a mouse, you can look at the various pieces of text you
have saved and select one piece to paste.
@@ -8950,7 +8950,7 @@ an existing element or as a new element, leads us to the code for
bringing back text that has been cut out of the buffer---the yank
commands. However, before discussing the yank commands, it is better
to learn how lists are implemented in a computer. This will make
-clear such mysteries as the use of the term `pointer'. But before
+clear such mysteries as the use of the term ``pointer''. But before
that, we will digress into C.
@ignore
@@ -8961,7 +8961,7 @@ expression is true, @code{kill-append} prepends the string to the just
previously clipped text. For a detailed discussion, see
@ref{kill-append function, , The @code{kill-append} function}.)
-If you then yank back the text, i.e., `paste' it, you get both
+If you then yank back the text, i.e., ``paste'' it, you get both
pieces of text at once. That way, if you delete two words in a row,
and then yank them back, you get both words, in their proper order,
with one yank. (The @w{@code{(< end beg))}} expression makes sure the
@@ -9067,7 +9067,7 @@ The sixth part is nearly like the argument that follows the
@code{interactive} declaration in a function written in Lisp: a letter
followed, perhaps, by a prompt. The only difference from the Lisp is
when the macro is called with no arguments. Then you write a @code{0}
-(which is a `null string'), as in this macro.
+(which is a ``null string''), as in this macro.
If you were to specify arguments, you would place them between
quotation marks. The C macro for @code{goto-char} includes
@@ -9084,8 +9084,8 @@ these comments and uses them to make the ``real'' documentation.)
@need 1200
In a C macro, the formal parameters come next, with a statement of
-what kind of object they are, followed by what might be called the `body'
-of the macro. For @code{delete-and-extract-region} the `body'
+what kind of object they are, followed by what might be called the ``body''
+of the macro. For @code{delete-and-extract-region} the ``body''
consists of the following four lines:
@smallexample
@@ -9111,13 +9111,13 @@ passed to @code{del_range}. These are @w{@code{XINT (start)}} and
As far as the C language is concerned, @code{start} and @code{end} are
two integers that mark the beginning and end of the region to be
deleted@footnote{More precisely, and requiring more expert knowledge
-to understand, the two integers are of type `Lisp_Object', which can
+to understand, the two integers are of type @code{Lisp_Object}, which can
also be a C union instead of an integer type.}.
In early versions of Emacs, these two numbers were thirty-two bits
long, but the code is slowly being generalized to handle other
lengths. Three of the available bits are used to specify the type of
-information; the remaining bits are used as `content'.
+information; the remaining bits are used as ``content''.
@samp{XINT} is a C macro that extracts the relevant number from the
longer collection of bits; the three other bits are discarded.
@@ -9326,7 +9326,7 @@ For example:
its remaining arguments to its first argument.
@item nthcdr
-Return the result of taking @sc{cdr} `n' times on a list.
+Return the result of taking @sc{cdr} @var{n} times on a list.
@iftex
The
@tex
@@ -9334,7 +9334,7 @@ $n^{th}$
@end tex
@code{cdr}.
@end iftex
-The `rest of the rest', as it were.
+The ``rest of the rest'', as it were.
@need 1250
For example:
@@ -9643,7 +9643,7 @@ address-boxes for the list.)
If a symbol is set to the @sc{cdr} of a list, the list itself is not
changed; the symbol simply has an address further down the list. (In
-the jargon, @sc{car} and @sc{cdr} are `non-destructive'.) Thus,
+the jargon, @sc{car} and @sc{cdr} are ``non-destructive''.) Thus,
evaluation of the following expression
@smallexample
@@ -9813,7 +9813,7 @@ and in one of its drawers you found a map giving you directions to
where the buried treasure lies.
(In addition to its name, symbol definition, and variable value, a
-symbol has a `drawer' for a @dfn{property list} which can be used to
+symbol has a ``drawer'' for a @dfn{property list} which can be used to
record other information. Property lists are not discussed here; see
@ref{Property Lists, , Property Lists, elisp, The GNU Emacs Lisp
Reference Manual}.)
@@ -9907,8 +9907,8 @@ What does the @code{more-flowers} list now contain?
@cindex Retrieving text
@cindex Pasting text
-Whenever you cut text out of a buffer with a `kill' command in GNU Emacs,
-you can bring it back with a `yank' command. The text that is cut out of
+Whenever you cut text out of a buffer with a ``kill'' command in GNU Emacs,
+you can bring it back with a ``yank'' command. The text that is cut out of
the buffer is put in the kill ring and the yank commands insert the
appropriate contents of the kill ring back into a buffer (not necessarily
the original buffer).
@@ -9920,7 +9920,7 @@ the second element. Successive @kbd{M-y} commands replace the second
element with the third, fourth, or fifth element, and so on. When the
last element in the kill ring is reached, it is replaced by the first
element and the cycle is repeated. (Thus the kill ring is called a
-`ring' rather than just a `list'. However, the actual data structure
+``ring'' rather than just a ``list''. However, the actual data structure
that holds the text is a list.
@xref{Kill Ring, , Handling the Kill Ring}, for the details of how the
list is handled as a ring.)
@@ -10064,7 +10064,7 @@ These two ways of talking about the same thing sound confusing at first but
make sense on reflection. The kill ring is generally thought of as the
complete structure of data that holds the information of what has recently
been cut out of the Emacs buffers. The @code{kill-ring-yank-pointer}
-on the other hand, serves to indicate---that is, to `point to'---that part
+on the other hand, serves to indicate---that is, to ``point to''---that part
of the kill ring of which the first element (the @sc{car}) will be
inserted.
@@ -10148,7 +10148,7 @@ their kin; but you can use recursion, which provides a very powerful
way to think about and then to solve problems@footnote{You can write
recursive functions to be frugal or wasteful of mental or computer
resources; as it happens, methods that people find easy---that are
-frugal of `mental resources'---sometimes use considerable computer
+frugal of ``mental resources''---sometimes use considerable computer
resources. Emacs was designed to run on machines that we now consider
limited and its default settings are conservative. You may want to
increase the values of @code{max-specpdl-size} and
@@ -10211,7 +10211,7 @@ evaluated. This process is called a loop since the Lisp interpreter
repeats the same thing again and again, like an airplane doing a loop.
When the result of evaluating the true-or-false-test is false, the
Lisp interpreter does not evaluate the rest of the @code{while}
-expression and `exits the loop'.
+expression and ``exits the loop''.
Clearly, if the value returned by evaluating the first argument to
@code{while} is always true, the body following will be evaluated
@@ -10372,7 +10372,7 @@ expression, @code{(print-elements-of-list animals)}, by typing
to be printed in the @file{*scratch*} buffer instead of being printed
in the echo area. (Otherwise you will see something like this in your
echo area: @code{^Jgazelle^J^Jgiraffe^J^Jlion^J^Jtiger^Jnil}, in which
-each @samp{^J} stands for a `newline'.)
+each @samp{^J} stands for a ``newline''.)
@need 1500
In a recent instance of GNU Emacs, you can evaluate these expressions
@@ -10941,8 +10941,8 @@ provide for looping. Sometimes these are quicker to write than the
equivalent @code{while} loop. Both are Lisp macros. (@xref{Macros, ,
Macros, elisp, The GNU Emacs Lisp Reference Manual}. )
-@code{dolist} works like a @code{while} loop that `@sc{cdr}s down a
-list': @code{dolist} automatically shortens the list each time it
+@code{dolist} works like a @code{while} loop that ``@sc{cdr}s down a
+list'': @code{dolist} automatically shortens the list each time it
loops---takes the @sc{cdr} of the list---and binds the @sc{car} of
each shorter version of the list to the first of its arguments.
@@ -11043,7 +11043,7 @@ of the work you have to do when writing a @code{while} expression.
Like a @code{while} loop, a @code{dolist} loops. What is different is
that it automatically shortens the list each time it loops---it
-`@sc{cdr}s down the list' on its own---and it automatically binds
+``@sc{cdr}s down the list'' on its own---and it automatically binds
the @sc{car} of each shorter version of the list to the first of its
arguments.
@@ -11116,10 +11116,10 @@ call a program that runs exactly like itself, but with slightly
different arguments. The code runs exactly the same because it has
the same name. However, even though the program has the same name, it
is not the same entity. It is different. In the jargon, it is a
-different `instance'.
+different ``instance''.
-Eventually, if the program is written correctly, the `slightly
-different arguments' will become sufficiently different from the first
+Eventually, if the program is written correctly, the ``slightly
+different arguments'' will become sufficiently different from the first
arguments that the final instance will stop.
@menu
@@ -11159,10 +11159,10 @@ install a function definition, that is, when you evaluate a
@code{defun} macro, you install the necessary equipment to build
robots. It is as if you were in a factory, setting up an assembly
line. Robots with the same name are built according to the same
-blueprints. So they have, as it were, the same `model number', but a
-different `serial number'.
+blueprints. So they have, as it were, the same ``model number'', but a
+different ``serial number''.
-We often say that a recursive function `calls itself'. What we mean
+We often say that a recursive function ``calls itself''. What we mean
is that the instructions in a recursive function cause the Lisp
interpreter to run a different function that has the same name and
does the same job as the first, but with different arguments.
@@ -11273,7 +11273,7 @@ Uses recursion."
The @code{print-elements-recursively} function first tests whether
there is any content in the list; if there is, the function prints the
first element of the list, the @sc{car} of the list. Then the
-function `invokes itself', but gives itself as its argument, not the
+function ``invokes itself'', but gives itself as its argument, not the
whole list, but the second and subsequent elements of the list, the
@sc{cdr} of the list.
@@ -11289,16 +11289,16 @@ a different individual from the first, but is the same model.
When the second evaluation occurs, the @code{when} expression is
evaluated and if true, prints the first element of the list it
receives as its argument (which is the second element of the original
-list). Then the function `calls itself' with the @sc{cdr} of the list
+list). Then the function ``calls itself'' with the @sc{cdr} of the list
it is invoked with, which (the second time around) is the @sc{cdr} of
the @sc{cdr} of the original list.
-Note that although we say that the function `calls itself', what we
+Note that although we say that the function ``calls itself'', what we
mean is that the Lisp interpreter assembles and instructs a new
instance of the program. The new instance is a clone of the first,
but is a separate individual.
-Each time the function `invokes itself', it invokes itself on a
+Each time the function ``invokes itself'', it invokes itself on a
shorter version of the original list. It creates a new instance that
works on a shorter list.
@@ -11716,7 +11716,7 @@ the @code{accumulate} recursive pattern, an action is performed on
every element of a list and the result of that action is accumulated
with the results of performing the action on the other elements.
-This is very like the `every' pattern using @code{cons}, except that
+This is very like the ``every'' pattern using @code{cons}, except that
@code{cons} is not used, but some other combiner.
@need 1500
@@ -11767,7 +11767,7 @@ In the @code{keep} recursive pattern, each element of a list is tested;
the element is acted on and the results are kept only if the element
meets a criterion.
-Again, this is very like the `every' pattern, except the element is
+Again, this is very like the ``every'' pattern, except the element is
skipped unless it meets a criterion.
@need 1500
@@ -11868,7 +11868,7 @@ think of it as a little robot---cannot complete its job. It must hand
off the calculation for @code{(triangle-recursively 6)} to a second
instance of the program, to a second robot. This second individual is
completely different from the first one; it is, in the jargon, a
-`different instantiation'. Or, put another way, it is a different
+``different instantiation''. Or, put another way, it is a different
robot. It is the same model as the first; it calculates triangle
numbers recursively; but it has a different serial number.
@@ -11917,12 +11917,12 @@ more steps.
The solution to the problem of deferred operations is to write in a
manner that does not defer operations@footnote{The phrase @dfn{tail
recursive} is used to describe such a process, one that uses
-`constant space'.}. This requires
+``constant space''.}. This requires
writing to a different pattern, often one that involves writing two
-function definitions, an `initialization' function and a `helper'
+function definitions, an ``initialization'' function and a ``helper''
function.
-The `initialization' function sets up the job; the `helper' function
+The ``initialization'' function sets up the job; the ``helper'' function
does the work.
@need 1200
@@ -11964,21 +11964,21 @@ Install both function definitions by evaluating them, then call
@end group
@end smallexample
-The `initialization' function calls the first instance of the `helper'
+The ``initialization'' function calls the first instance of the ``helper''
function with three arguments: zero, zero, and a number which is the
number of rows in the triangle.
-The first two arguments passed to the `helper' function are
+The first two arguments passed to the ``helper'' function are
initialization values. These values are changed when
@code{triangle-recursive-helper} invokes new instances.@footnote{The
jargon is mildly confusing: @code{triangle-recursive-helper} uses a
process that is iterative in a procedure that is recursive. The
process is called iterative because the computer need only record the
three values, @code{sum}, @code{counter}, and @code{number}; the
-procedure is recursive because the function `calls itself'. On the
+procedure is recursive because the function ``calls itself''. On the
other hand, both the process and the procedure used by
@code{triangle-recursively} are called recursive. The word
-`recursive' has different meanings in the two contexts.}
+``recursive'' has different meanings in the two contexts.}
Let's see what happens when we have a triangle that has one row. (This
triangle will have one pebble in it!)
@@ -12131,8 +12131,8 @@ Documentation Format}.
Regular expression searches are used extensively in GNU Emacs. The
two functions, @code{forward-sentence} and @code{forward-paragraph},
illustrate these searches well. They use regular expressions to find
-where to move point. The phrase `regular expression' is often written
-as `regexp'.
+where to move point. The phrase ``regular expression'' is often written
+as ``regexp''.
Regular expression searches are described in @ref{Regexp Search, ,
Regular Expression Search, emacs, The GNU Emacs Manual}, as well as in
@@ -12329,7 +12329,7 @@ search is successful, it leaves point immediately after the last
character in the target. If the search is backwards, it leaves point
just before the first character in the target. You may tell
@code{re-search-forward} to return @code{t} for true. (Moving point
-is therefore a `side effect'.)
+is therefore a ``side effect''.)
Like @code{search-forward}, the @code{re-search-forward} function takes
four arguments:
@@ -12631,7 +12631,7 @@ evaluates its then-part; otherwise, the Emacs Lisp interpreter
evaluates the else-part. The true-or-false-test of the @code{if}
expression is the regular expression search.
-It may seem odd to have what looks like the `real work' of
+It may seem odd to have what looks like the ``real work'' of
the @code{forward-sentence} function buried here, but this is a common
way this kind of operation is carried out in Lisp.
@@ -13362,7 +13362,7 @@ of which I load 12---you can create a @file{TAGS} file for the Emacs
Lisp files in that directory.
@need 1250
-The @code{etags} program takes all the usual shell `wildcards'. For
+The @code{etags} program takes all the usual shell ``wildcards''. For
example, if you have two directories for which you want a single
@file{TAGS} file, type @w{@code{etags *.el ../elisp/*.el}}, where
@file{../elisp/} is the second directory:
@@ -13401,7 +13401,7 @@ program to attempt to find it.
Type @w{@kbd{M-x locate @key{RET} TAGS @key{RET}}} and Emacs will list
for you the full path names of all your @file{TAGS} files. On my
system, this command lists 34 @file{TAGS} files. On the other hand, a
-`plain vanilla' system I recently installed did not contain any
+``plain vanilla'' system I recently installed did not contain any
@file{TAGS} files.
If the tags table you want has been created, you can use the @code{M-x
@@ -13417,7 +13417,7 @@ visit-tags-table}.
The GNU Emacs sources come with a @file{Makefile} that contains a
sophisticated @code{etags} command that creates, collects, and merges
tags tables from all over the Emacs sources and puts the information
-into one @file{TAGS} file in the @file{src/} directory. (The
+into one @file{TAGS} file in the @file{src/} directory. (The
@file{src/} directory is below the top level of your Emacs directory.)
@need 1250
@@ -13505,8 +13505,8 @@ For example:
@group
(let* ((foo 7)
(bar (* 3 foo)))
- (message "`bar' is %d." bar))
- @result{} `bar' is 21.
+ (message "'bar' is %d." bar))
+ @result{} 'bar' is 21.
@end group
@end smallexample
@@ -13535,7 +13535,7 @@ Write a function to search for a regular expression that matches two
or more blank lines in sequence.
@item
-Write a function to search for duplicated words, such as `the the'.
+Write a function to search for duplicated words, such as ``the the''.
@xref{Regexps, , Syntax of Regular Expressions, emacs, The GNU Emacs
Manual}, for information on how to write a regexp (a regular
expression) to match a string that is composed of two identical
@@ -13670,7 +13670,7 @@ forward, and false when point is at the end of the region.
We could use @code{(forward-word 1)} as the expression for moving point
forward word by word, but it is easier to see what Emacs identifies as a
-`word' if we use a regular expression search.
+``word'' if we use a regular expression search.
A regular expression search that finds the pattern for which it is
searching leaves point after the last character matched. This means
@@ -13714,7 +13714,7 @@ single backslash has special meaning to the Emacs Lisp interpreter.
It indicates that the following character is interpreted differently
than usual. For example, the two characters, @samp{\n}, stand for
@samp{newline}, rather than for a backslash followed by @samp{n}. Two
-backslashes in a row stand for an ordinary, `unspecial' backslash, so
+backslashes in a row stand for an ordinary, ``unspecial'' backslash, so
Emacs Lisp interpreter ends of seeing a single backslash followed by a
letter. So it discovers the letter is special.)
@@ -14106,8 +14106,8 @@ the region, as returned by the recursive call; and then the
user.
Often, one thinks of the binding within a @code{let} expression as
-somehow secondary to the `primary' work of a function. But in this
-case, what you might consider the `primary' job of the function,
+somehow secondary to the ``primary'' work of a function. But in this
+case, what you might consider the ``primary'' job of the function,
counting words, is done within the @code{let} expression.
@need 1250
@@ -14148,8 +14148,8 @@ Using @code{let}, the function definition looks like this:
Next, we need to write the recursive counting function.
-A recursive function has at least three parts: the `do-again-test', the
-`next-step-expression', and the recursive call.
+A recursive function has at least three parts: the ``do-again-test'', the
+``next-step-expression'', and the recursive call.
The do-again-test determines whether the function will or will not be
called again. Since we are counting words in a region and can use a
@@ -14173,7 +14173,7 @@ the expression that moves point forward, word by word.
The third part of a recursive function is the recursive call.
-Somewhere, also, we also need a part that does the `work' of the
+Somewhere, also, we also need a part that does the ``work'' of the
function, a part that does the counting. A vital part!
@need 1250
@@ -14499,9 +14499,9 @@ be difficult.
When we first start thinking about how to count the words in a
function definition, the first question is (or ought to be) what are
-we going to count? When we speak of `words' with respect to a Lisp
+we going to count? When we speak of ``words'' with respect to a Lisp
function definition, we are actually speaking, in large part, of
-`symbols'. For example, the following @code{multiply-by-seven}
+``symbols''. For example, the following @code{multiply-by-seven}
function contains the five symbols @code{defun},
@code{multiply-by-seven}, @code{number}, @code{*}, and @code{7}. In
addition, in the documentation string, it contains the four words
@@ -14543,8 +14543,8 @@ regexp is:
@noindent
This regular expression is a pattern defining one or more word
constituent characters possibly followed by one or more characters
-that are not word constituents. What is meant by `word constituent
-characters' brings us to the issue of syntax, which is worth a section
+that are not word constituents. What is meant by ``word constituent
+characters'' brings us to the issue of syntax, which is worth a section
of its own.
@node Syntax
@@ -14562,9 +14562,9 @@ character. (For more information, @pxref{Syntax Tables, , Syntax
Tables, elisp, The GNU Emacs Lisp Reference Manual}.)
Syntax tables specify which characters belong to which categories.
-Usually, a hyphen is not specified as a `word constituent character'.
-Instead, it is specified as being in the `class of characters that are
-part of symbol names but not words.' This means that the
+Usually, a hyphen is not specified as a ``word constituent character''.
+Instead, it is specified as being in the ``class of characters that are
+part of symbol names but not words.'' This means that the
@code{@value{COUNT-WORDS}} function treats it in the same way it treats
an interword white space, which is why @code{@value{COUNT-WORDS}}
counts @samp{multiply-by-seven} as three words.
@@ -14967,7 +14967,7 @@ The task is easy: use @code{find-file-noselect} and @code{set-buffer}.
@section @code{lengths-list-file} in Detail
The core of the @code{lengths-list-file} function is a @code{while}
-loop containing a function to move point forward `defun by defun' and
+loop containing a function to move point forward ``defun by defun'' and
a function to count the number of words and symbols in each defun.
This core must be surrounded by functions that do various other tasks,
including finding the file, and ensuring that point starts out at the
@@ -14983,7 +14983,7 @@ Each number is the number of words or
symbols in one function definition."
@end group
@group
- (message "Working on `%s' ... " filename)
+ (message "Working on '%s' ... " filename)
(save-excursion
(let ((buffer (find-file-noselect filename))
(lengths-list))
@@ -15033,14 +15033,14 @@ Next comes a call to widen the buffer if it is narrowed. This
function is usually not needed---Emacs creates a fresh buffer if none
already exists; but if a buffer visiting the file already exists Emacs
returns that one. In this case, the buffer may be narrowed and must
-be widened. If we wanted to be fully `user-friendly', we would
+be widened. If we wanted to be fully ``user-friendly'', we would
arrange to save the restriction and the location of point, but we
won't.
The @code{(goto-char (point-min))} expression moves point to the
beginning of the buffer.
-Then comes a @code{while} loop in which the `work' of the function is
+Then comes a @code{while} loop in which the ``work'' of the function is
carried out. In the loop, Emacs determines the length of each
definition and constructs a lengths' list containing the information.
@@ -15261,11 +15261,11 @@ Besides a @code{while} loop, you can work on each of a list of files
with recursion. A recursive version of @code{lengths-list-many-files}
is short and simple.
-The recursive function has the usual parts: the `do-again-test', the
-`next-step-expression', and the recursive call. The `do-again-test'
+The recursive function has the usual parts: the ``do-again-test'', the
+``next-step-expression'', and the recursive call. The ``do-again-test''
determines whether the function should call itself again, which it
will do if the @code{list-of-files} contains any remaining elements;
-the `next-step-expression' resets the @code{list-of-files} to the
+the ``next-step-expression'' resets the @code{list-of-files} to the
@sc{cdr} of itself, so eventually the list will be empty; and the
recursive call calls itself on the shorter list. The complete
function is shorter than this description!
@@ -15366,7 +15366,7 @@ numbers.
@end ifnottex
Based on what we have done before, we can readily foresee that it
-should not be too hard to write a function that `@sc{cdr}s' down the
+should not be too hard to write a function that ``@sc{cdr}s'' down the
lengths' list, looks at each element, determines which length range it
is in, and increments a counter for that range.
@@ -15505,7 +15505,7 @@ as a list that looks like this (but with more elements):
The @code{directory-files-and-attributes} function returns a list of
lists. Each of the lists within the main list consists of 13
elements. The first element is a string that contains the name of the
-file---which, in GNU/Linux, may be a `directory file', that is to
+file---which, in GNU/Linux, may be a ``directory file'', that is to
say, a file with the special attributes of a directory. The second
element of the list is @code{t} for a directory, a string
for symbolic link (the string is the name linked to), or @code{nil}.
@@ -15604,7 +15604,7 @@ Let's write a function definition to do these tasks. We will use a
@code{while} loop to move from one filename to another within a
directory, checking what needs to be done; and we will use a recursive
call to repeat the actions on each sub-directory. The recursive
-pattern is `accumulate'
+pattern is ``accumulate''
(@pxref{Accumulate}),
using @code{append} as the combiner.
@@ -15640,7 +15640,7 @@ Here is the function:
@end group
@group
(cond
- ;; check to see whether filename ends in `.el'
+ ;; check to see whether filename ends in '.el'
;; and if so, append its name to a list.
((equal ".el" (substring (car (car current-directory-list)) -3))
(setq el-files-list
@@ -16062,7 +16062,7 @@ the function to label the axes automatically.
Since Emacs is designed to be flexible and work with all kinds of
terminals, including character-only terminals, the graph will need to
-be made from one of the `typewriter' symbols. An asterisk will do; as
+be made from one of the ``typewriter'' symbols. An asterisk will do; as
we enhance the graph-printing function, we can make the choice of
symbol a user option.
@@ -16092,7 +16092,7 @@ a regular expression, including functions that are not interactive.
What we want to look for is some command that prints or inserts
columns. Very likely, the name of the function will contain either
-the word `print' or the word `insert' or the word `column'.
+the word ``print'' or the word ``insert'' or the word ``column''.
Therefore, we can simply type @kbd{M-x apropos RET
print\|insert\|column RET} and look at the result. On my system, this
command once too takes quite some time, and then produced a list of 79
@@ -16229,7 +16229,7 @@ Wrong type of argument: number-or-marker-p, (3 4 6 5 7 3)
@findex apply
We need a function that passes a list of arguments to a function.
-This function is @code{apply}. This function `applies' its first
+This function is @code{apply}. This function ``applies'' its first
argument (a function) to its remaining arguments, the last of which
may be a list.
@@ -16247,7 +16247,7 @@ returns 8.
without a book such as this. It is possible to discover other
functions, like @code{search-forward} or @code{insert-rectangle}, by
guessing at a part of their names and then using @code{apropos}. Even
-though its base in metaphor is clear---`apply' its first argument to
+though its base in metaphor is clear---``apply'' its first argument to
the rest---I doubt a novice would come up with that particular word
when using @code{apropos} or other aid. Of course, I could be wrong;
after all, the function was first named by someone who had to invent
@@ -16335,7 +16335,7 @@ returns
As written, @code{column-of-graph} contains a major flaw: the symbols
used for the blank and for the marked entries in the column are
-`hard-coded' as a space and asterisk. This is fine for a prototype,
+``hard-coded'' as a space and asterisk. This is fine for a prototype,
but you, or another user, may wish to use other symbols. For example,
in testing the graph function, you many want to use a period in place
of the space, to make sure the point is being repositioned properly
@@ -16414,7 +16414,7 @@ is no more than a bar graph in which the part of each bar that is
below the top is blank. To construct a column for a line graph, the
function first constructs a list of blanks that is one shorter than
the value, then it uses @code{cons} to attach a graph symbol to the
-list; then it uses @code{cons} again to attach the `top blanks' to
+list; then it uses @code{cons} again to attach the ``top blanks'' to
the list.
It is easy to see how to write such a function, but since we don't
@@ -16530,7 +16530,7 @@ The one unexpected expression in this function is the
@w{@code{(sit-for 0)}} expression in the @code{while} loop. This
expression makes the graph printing operation more interesting to
watch than it would be otherwise. The expression causes Emacs to
-`sit' or do nothing for a zero length of time and then redraw the
+``sit'' or do nothing for a zero length of time and then redraw the
screen. Placed here, it causes Emacs to redraw the screen column by
column. Without it, Emacs would not redraw the screen until the
function exits.
@@ -16592,14 +16592,14 @@ Emacs will print a graph like this:
@findex recursive-graph-body-print
The @code{graph-body-print} function may also be written recursively.
-The recursive solution is divided into two parts: an outside `wrapper'
+The recursive solution is divided into two parts: an outside ``wrapper''
that uses a @code{let} expression to determine the values of several
variables that need only be found once, such as the maximum height of
the graph, and an inside function that is called recursively to print
the graph.
@need 1250
-The `wrapper' is uncomplicated:
+The ``wrapper'' is uncomplicated:
@smallexample
@group
@@ -16617,13 +16617,13 @@ The numbers-list consists of the Y-axis values."
@end smallexample
The recursive function is a little more difficult. It has four parts:
-the `do-again-test', the printing code, the recursive call, and the
-`next-step-expression'. The `do-again-test' is a @code{when}
+the ``do-again-test'', the printing code, the recursive call, and the
+``next-step-expression''. The ``do-again-test'' is a @code{when}
expression that determines whether the @code{numbers-list} contains
any remaining elements; if it does, the function prints one column of
the graph using the printing code and calls itself again. The
function calls itself again according to the value produced by the
-`next-step-expression' which causes the call to act on a shorter
+``next-step-expression'' which causes the call to act on a shorter
version of the @code{numbers-list}.
@smallexample
@@ -16699,8 +16699,8 @@ Write a line graph version of the graph printing functions.
@cindex Initialization file
``You don't have to like Emacs to like it''---this seemingly
-paradoxical statement is the secret of GNU Emacs. The plain, `out of
-the box' Emacs is a generic tool. Most people who use it, customize
+paradoxical statement is the secret of GNU Emacs. The plain, ``out of
+the box'' Emacs is a generic tool. Most people who use it, customize
it to suit themselves.
GNU Emacs is mostly written in Emacs Lisp; this means that by writing
@@ -16738,7 +16738,7 @@ person hopes to do with an unadorned file? Fundamental mode is the
right default for such a file, just as C mode is the right default for
editing C code. (Enough programming languages have syntaxes
that enable them to share or nearly share features, so C mode is
-now provided by CC mode, the `C Collection'.)
+now provided by CC mode, the ``C Collection''.)
But when you do know who is going to use Emacs---you,
yourself---then it makes sense to customize Emacs.
@@ -16783,8 +16783,8 @@ have the same form as your @file{.emacs} file, but are loaded by
everyone.
Two site-wide initialization files, @file{site-load.el} and
-@file{site-init.el}, are loaded into Emacs and then `dumped' if a
-`dumped' version of Emacs is created, as is most common. (Dumped
+@file{site-init.el}, are loaded into Emacs and then ``dumped'' if a
+``dumped'' version of Emacs is created, as is most common. (Dumped
copies of Emacs load more quickly. However, once a file is loaded and
dumped, a change to it does not lead to a change in Emacs unless you
load it yourself or re-dump Emacs. @xref{Building Emacs, , Building
@@ -16896,7 +16896,7 @@ M-x customize
@end smallexample
@noindent
-and find that the group for editing files of data is called `data'.
+and find that the group for editing files of data is called ``data''.
Enter that group. Text Mode Hook is the first member. You can click
on its various options, such as @code{turn-on-auto-fill}, to set the
values. After you click on the button to
@@ -17056,7 +17056,7 @@ Just remember: type @kbd{C-h} two times for help.
@end smallexample
@noindent
-`Mode help', as I call this, is very helpful. Usually, it tells you
+``Mode help'', as I call this, is very helpful. Usually, it tells you
all you need to know.
Of course, you don't need to include comments like these in your
@@ -17067,7 +17067,7 @@ remember to look here to remind myself.
@node Text and Auto-fill
@section Text and Auto Fill Mode
-Now we come to the part that `turns on' Text mode and
+Now we come to the part that ``turns on'' Text mode and
Auto Fill mode.
@smallexample
@@ -17152,7 +17152,7 @@ In this line, the @code{add-hook} command adds
@code{turn-on-auto-fill} is the name of a program, that, you guessed
it!, turns on Auto Fill mode.
-Every time Emacs turns on Text mode, Emacs runs the commands `hooked'
+Every time Emacs turns on Text mode, Emacs runs the commands ``hooked''
onto Text mode. So every time Emacs turns on Text mode, Emacs also
turns on Auto Fill mode.
@@ -17189,15 +17189,15 @@ fill commands to insert two spaces after a colon:
@node Mail Aliases
@section Mail Aliases
-Here is a @code{setq} that `turns on' mail aliases, along with more
+Here is a @code{setq} that ``turns on'' mail aliases, along with more
reminders.
@smallexample
@group
;;; Mail mode
-; To enter mail mode, type `C-x m'
+; To enter mail mode, type 'C-x m'
; To enter RMAIL (for reading mail),
-; type `M-x rmail'
+; type 'M-x rmail'
(setq mail-aliases t)
@end group
@end smallexample
@@ -17209,7 +17209,7 @@ This @code{setq} command sets the value of the variable
says, in effect, ``Yes, use mail aliases.''
Mail aliases are convenient short names for long email addresses or
-for lists of email addresses. The file where you keep your `aliases'
+for lists of email addresses. The file where you keep your ``aliases''
is @file{~/.mailrc}. You write an alias like this:
@smallexample
@@ -17247,7 +17247,7 @@ command sets values only in buffers that do not have their own local
values for the variable.
@ifinfo
-@xref{Just Spaces, , Tabs vs. Spaces, emacs, The GNU Emacs Manual}.
+@xref{Just Spaces, , Tabs vs.@: Spaces, emacs, The GNU Emacs Manual}.
@xref{File Variables, , Local Variables in Files, emacs, The GNU Emacs
Manual}.
@@ -17284,9 +17284,9 @@ This also shows how to set a key globally, for all modes.
@findex global-set-key
The command is @code{global-set-key}. It is followed by the
keybinding. In a @file{.emacs} file, the keybinding is written as
-shown: @code{\C-c} stands for `control-c', which means `press the
-control key and the @key{c} key at the same time'. The @code{w} means
-`press the @key{w} key'. The keybinding is surrounded by double
+shown: @code{\C-c} stands for ``control-c'', which means ``press the
+control key and the @key{c} key at the same time''. The @code{w} means
+``press the @key{w} key''. The keybinding is surrounded by double
quotation marks. In documentation, you would write this as
@w{@kbd{C-c w}}. (If you were binding a @key{META} key, such as
@kbd{M-c}, rather than a @key{CTRL} key, you would write
@@ -17307,19 +17307,19 @@ adapt what is there.
As for the keybinding itself: @kbd{C-c w}. This combines the prefix
key, @kbd{C-c}, with a single character, in this case, @kbd{w}. This
set of keys, @kbd{C-c} followed by a single character, is strictly
-reserved for individuals' own use. (I call these `own' keys, since
+reserved for individuals' own use. (I call these ``own'' keys, since
these are for my own use.) You should always be able to create such a
keybinding for your own use without stomping on someone else's
keybinding. If you ever write an extension to Emacs, please avoid
taking any of these keys for public use. Create a key like @kbd{C-c
-C-w} instead. Otherwise, we will run out of `own' keys.
+C-w} instead. Otherwise, we will run out of ``own'' keys.
@need 1250
Here is another keybinding, with a comment:
@smallexample
@group
-;;; Keybinding for `occur'
+;;; Keybinding for 'occur'
; I use occur a lot, so let's bind it to a key:
(global-set-key "\C-co" 'occur)
@end group
@@ -17340,7 +17340,7 @@ work:
@smallexample
@group
-;;; Unbind `C-x f'
+;;; Unbind 'C-x f'
(global-unset-key "\C-xf")
@end group
@end smallexample
@@ -17358,7 +17358,7 @@ The following rebinds an existing key:
@smallexample
@group
-;;; Rebind `C-x C-b' for `buffer-menu'
+;;; Rebind 'C-x C-b' for 'buffer-menu'
(global-set-key "\C-x\C-b" 'buffer-menu)
@end group
@end smallexample
@@ -17523,7 +17523,7 @@ This is an interface to the function `load'."
@end smallexample
The name of the function, @code{load-library}, comes from the use of
-`library' as a conventional synonym for `file'. The source for the
+``library'' as a conventional synonym for ``file''. The source for the
@code{load-library} command is in the @file{files.el} library.
Another interactive command that does a slightly different job is
@@ -17550,13 +17550,13 @@ first use such a function, while its containing file is evaluated.
Rarely used functions are frequently autoloaded. The
@file{loaddefs.el} library contains thousands of autoloaded functions,
from @code{5x5} to @code{zone}. Of course, you may
-come to use a `rare' function frequently. When you do, you should
+come to use a ``rare'' function frequently. When you do, you should
load that function's file with a @code{load} expression in your
@file{.emacs} file.
In my @file{.emacs} file, I load 14 libraries that contain functions
that would otherwise be autoloaded. (Actually, it would have been
-better to include these files in my `dumped' Emacs, but I forgot.
+better to include these files in my ``dumped'' Emacs, but I forgot.
@xref{Building Emacs, , Building Emacs, elisp, The GNU Emacs Lisp
Reference Manual}, and the @file{INSTALL} file for more about
dumping.)
@@ -17683,7 +17683,7 @@ emacs -Q -D
@group
(when (>= emacs-major-version 21)
(blink-cursor-mode 0)
- ;; Insert newline when you press `C-n' (next-line)
+ ;; Insert newline when you press 'C-n' (next-line)
;; at the end of the buffer
(setq next-line-add-newlines t)
@end group
@@ -17804,9 +17804,9 @@ Set the shape and color of the mouse cursor:
@smallexample
@group
; Cursor shapes are defined in
-; `/usr/include/X11/cursorfont.h';
-; for example, the `target' cursor is number 128;
-; the `top_left_arrow' cursor is number 132.
+; '/usr/include/X11/cursorfont.h';
+; for example, the 'target' cursor is number 128;
+; the 'top_left_arrow' cursor is number 132.
@end group
@group
@@ -17857,10 +17857,10 @@ problem recently.)
@smallexample
@group
-;; Translate `C-h' to <DEL>.
+;; Translate 'C-h' to <DEL>.
; (keyboard-translate ?\C-h ?\C-?)
-;; Translate <DEL> to `C-h'.
+;; Translate <DEL> to 'C-h'.
(keyboard-translate ?\C-? ?\C-h)
@end group
@end smallexample
@@ -17878,7 +17878,7 @@ problem recently.)
or start GNU Emacs with the command @code{emacs -nbc}.
@need 1250
-@item When using `grep'@*
+@item When using @command{grep}@*
@samp{-i}@w{ } Ignore case distinctions@*
@samp{-n}@w{ } Prefix each line of output with line number@*
@samp{-H}@w{ } Print the filename for each match.@*
@@ -17917,7 +17917,7 @@ This avoids problems with symbolic links.
@end group
@end smallexample
-If you want to write with Chinese `GB' characters, set this instead:
+If you want to write with Chinese ``GB'' characters, set this instead:
@smallexample
@group
@@ -17960,7 +17960,7 @@ Lock} key is at the far left of the home row:
@smallexample
@group
-# Bind the key labeled `Caps Lock' to `Control'
+# Bind the key labeled 'Caps Lock' to 'Control'
# (Such a broken user interface suggests that keyboard manufacturers
# think that computers are typewriters from 1885.)
@@ -18097,7 +18097,7 @@ beginning @code{(#("%12b" 0 4 @dots{}}.
The @code{#(} begins the list.
The @samp{"%12b"} displays the current buffer name, using the
-@code{buffer-name} function with which we are familiar; the `12'
+@code{buffer-name} function with which we are familiar; the @samp{12}
specifies the maximum number of characters that will be displayed.
When a name has fewer characters, whitespace is added to fill out to
this number. (Buffer names can and often should be longer than 12
@@ -18107,7 +18107,7 @@ window.)
@code{:eval} says to evaluate the following form and use the result as
a string to display. In this case, the expression displays the first
component of the full system name. The end of the first component is
-a @samp{.} (`period'), so I use the @code{string-match} function to
+a @samp{.} (``period''), so I use the @code{string-match} function to
tell me the length of the first component. The substring from the
zeroth character to that length is the name of the machine.
@@ -18122,10 +18122,10 @@ This is the expression:
@end smallexample
@samp{%[} and @samp{%]} cause a pair of square brackets
-to appear for each recursive editing level. @samp{%n} says `Narrow'
+to appear for each recursive editing level. @samp{%n} says ``Narrow''
when narrowing is in effect. @samp{%P} tells you the percentage of
-the buffer that is above the bottom of the window, or `Top', `Bottom',
-or `All'. (A lower case @samp{p} tell you the percentage above the
+the buffer that is above the bottom of the window, or ``Top'', ``Bottom'',
+or ``All''. (A lower case @samp{p} tell you the percentage above the
@emph{top} of the window.) @samp{%-} inserts enough dashes to fill
out the line.
@@ -18133,7 +18133,7 @@ Remember, ``You don't have to like Emacs to like it''---your own
Emacs can have different colors, different commands, and different
keys than a default Emacs.
-On the other hand, if you want to bring up a plain `out of the box'
+On the other hand, if you want to bring up a plain ``out of the box''
Emacs, with no customization, type:
@smallexample
@@ -18234,9 +18234,9 @@ Debugger entered--Lisp error: (void-function 1=)
long lines. As usual, you can quit the debugger by typing @kbd{q} in
the @file{*Backtrace*} buffer.)
-In practice, for a bug as simple as this, the `Lisp error' line will
+In practice, for a bug as simple as this, the ``Lisp error'' line will
tell you what you need to know to correct the definition. The
-function @code{1=} is `void'.
+function @code{1=} is ``void''.
@ignore
@need 800
@@ -18532,7 +18532,7 @@ beginning of the @code{if} line of the function. Also, you will see
an arrowhead at the left hand side of that line. The arrowhead marks
the line where the function is executing. (In the following examples,
we show the arrowhead with @samp{=>}; in a windowing system, you may
-see the arrowhead as a solid triangle in the window `fringe'.)
+see the arrowhead as a solid triangle in the window ``fringe''.)
@smallexample
=>@point{}(if (= number 1)
@@ -18567,7 +18567,7 @@ Result: 3 (#o3, #x3, ?\C-c)
@noindent
This means the value of @code{number} is 3, which is octal three,
-hexadecimal three, and @sc{ascii} `control-c' (the third letter of the
+hexadecimal three, and @sc{ascii} ``control-c'' (the third letter of the
alphabet, in case you need to know this information).
You can continue moving through the code until you reach the line with
@@ -18614,7 +18614,7 @@ Lisp Reference Manual}.
Install the @code{@value{COUNT-WORDS}} function and then cause it to
enter the built-in debugger when you call it. Run the command on a
region containing two words. You will need to press @kbd{d} a
-remarkable number of times. On your system, is a `hook' called after
+remarkable number of times. On your system, is a ``hook'' called after
the command finishes? (For information on hooks, see @ref{Command
Overview, , Command Loop Overview, elisp, The GNU Emacs Lisp Reference
Manual}.)
@@ -18735,7 +18735,7 @@ customize the @code{interactive} expression without using the standard
character codes; and it shows how to create a temporary buffer.
(The @code{indent-to} function is written in C rather than Emacs Lisp;
-it is a `built-in' function. @code{help-follow} takes you to its
+it is a ``built-in'' function. @code{help-follow} takes you to its
source as does @code{find-tag}, when properly set up.)
You can look at a function's source using @code{find-tag}, which is
@@ -18803,7 +18803,7 @@ The GNU Emacs Lisp Reference Manual}.)
You might try searching just for duplicated word-constituent
characters but that does not work since the pattern detects doubles
-such as the two occurrences of `th' in `with the'.
+such as the two occurrences of ``th'' in ``with the''.
Another possible regexp searches for word-constituent characters
followed by non-word-constituent characters, reduplicated. Here,
@@ -18850,7 +18850,7 @@ Here is the @code{the-the} function, as I include it in my
@end group
@group
-;; Bind `the-the' to C-c \
+;; Bind 'the-the' to C-c \
(global-set-key "\C-c\\" 'the-the)
@end group
@end smallexample
@@ -19091,7 +19091,7 @@ The @code{if} expression has two parts, one if there exists
@code{interprogram-paste} and one if not.
@need 2000
-Let us consider the `if not' or else-part of the @code{current-kill}
+Let us consider the ``if not'' or else-part of the @code{current-kill}
function. (The then-part uses the @code{kill-new} function, which
we have already described. @xref{kill-new function, , The
@code{kill-new} function}.)
@@ -19155,14 +19155,14 @@ list even if the @code{do-not-move} argument is true.
@ifnottex
@node Digression concerning error
-@unnumberedsubsubsec Digression about the word `error'
+@unnumberedsubsubsec Digression about the word ``error''
@end ifnottex
In my opinion, it is slightly misleading, at least to humans, to use
-the term `error' as the name of the @code{error} function. A better
-term would be `cancel'. Strictly speaking, of course, you cannot
+the term ``error'' as the name of the @code{error} function. A better
+term would be ``cancel''. Strictly speaking, of course, you cannot
point to, much less rotate a pointer to a list that has no length, so
-from the point of view of the computer, the word `error' is correct.
+from the point of view of the computer, the word ``error'' is correct.
But a human expects to attempt this sort of thing, if only to find out
whether the kill ring is full or empty. This is an act of
exploration.
@@ -19172,8 +19172,8 @@ not necessarily an error, and therefore should not be labeled as one,
even in the bowels of a computer. As it is, the code in Emacs implies
that a human who is acting virtuously, by exploring his or her
environment, is making an error. This is bad. Even though the computer
-takes the same steps as it does when there is an `error', a term such as
-`cancel' would have a clearer connotation.
+takes the same steps as it does when there is an ``error'', a term such as
+``cancel'' would have a clearer connotation.
@ifnottex
@node Determining the Element
@@ -19789,9 +19789,9 @@ For example, if you evaluate the following, the result is 15:
(* (1+ (/ 12 5)) 5)
@end smallexample
-All through this discussion, we have been using `five' as the value
+All through this discussion, we have been using ``five'' as the value
for spacing labels on the Y axis; but we may want to use some other
-value. For generality, we should replace `five' with a variable to
+value. For generality, we should replace ``five'' with a variable to
which we can assign a value. The best name I can think of for this
variable is @code{Y-axis-label-spacing}.
@@ -19915,7 +19915,7 @@ row, and the value of the width of the top line, which is calculated
@group
(defun Y-axis-element (number full-Y-label-width)
"Construct a NUMBERed label element.
-A numbered element looks like this ` 5 - ',
+A numbered element looks like this ' 5 - ',
and is padded as needed so all line up with
the element for the largest number."
@end group
@@ -20016,7 +20016,7 @@ the @code{print-Y-axis} function, which inserts the list as a column.
Height must be the maximum height of the graph.
Full width is the width of the highest label element."
;; Value of height and full-Y-label-width
-;; are passed by `print-graph'.
+;; are passed by 'print-graph'.
@end group
@group
(let ((start (point)))
@@ -20706,9 +20706,9 @@ The graph looks like this:
@end smallexample
@noindent
-(A question: is the `2' on the bottom of the vertical axis a bug or a
-feature? If you think it is a bug, and should be a `1' instead, (or
-even a `0'), you can modify the sources.)
+(A question: is the @samp{2} on the bottom of the vertical axis a bug or a
+feature? If you think it is a bug, and should be a @samp{1} instead, (or
+even a @samp{0}), you can modify the sources.)
@node Graphing words in defuns
@appendixsubsec Graphing Numbers of Words and Symbols
@@ -20816,8 +20816,8 @@ Thus,
@end smallexample
@noindent
-is a function definition that says `return the value resulting from
-dividing whatever is passed to me as @code{arg} by 50'.
+is a function definition that says ``return the value resulting from
+dividing whatever is passed to me as @code{arg} by 50''.
@need 1200
Earlier, for example, we had a function @code{multiply-by-seven}; it
@@ -20958,7 +20958,7 @@ element of its second argument, in turn. The second argument must be
a sequence.
The @samp{map} part of the name comes from the mathematical phrase,
-`mapping over a domain', meaning to apply a function to each of the
+``mapping over a domain'', meaning to apply a function to each of the
elements in a domain. The mathematical phrase is based on the
metaphor of a surveyor walking, one step at a time, over an area he is
mapping. And @samp{car}, of course, comes from the Lisp notion of the
@@ -21038,7 +21038,7 @@ that none had that many words or symbols.)
@cindex Bug, most insidious type
@cindex Insidious type of bug
-I said `almost ready to print'! Of course, there is a bug in the
+I said ``almost ready to print''! Of course, there is a bug in the
@code{print-graph} function @dots{} It has a @code{vertical-step}
option, but not a @code{horizontal-step} option. The
@code{top-of-range} scale goes from 10 to 300 by tens. But the
@@ -21141,7 +21141,7 @@ each column."
@end group
@group
;; Value of symbol-width and full-Y-label-width
-;; are passed by `print-graph'.
+;; are passed by 'print-graph'.
(let* ((leading-spaces
(make-string full-Y-label-width ? ))
;; symbol-width @r{is provided by} graph-body-print
@@ -21309,7 +21309,7 @@ symbols in one function definition."
@end group
@group
- (message "Working on `%s' ... " filename)
+ (message "Working on '%s' ... " filename)
(save-excursion
(let ((buffer (find-file-noselect filename))
(lengths-list))
@@ -21439,7 +21439,7 @@ The strings are either graph-blank or graph-symbol."
@group
(defun Y-axis-element (number full-Y-label-width)
"Construct a NUMBERed label element.
-A numbered element looks like this ` 5 - ',
+A numbered element looks like this ' 5 - ',
and is padded as needed so all line up with
the element for the largest number."
@end group
@@ -21469,7 +21469,7 @@ Optionally, print according to VERTICAL-STEP."
@end group
@group
;; Value of height and full-Y-label-width
-;; are passed by `print-graph'.
+;; are passed by 'print-graph'.
(let ((start (point)))
(insert-rectangle
(Y-axis-column height full-Y-label-width vertical-step))
@@ -21634,7 +21634,7 @@ each column."
@end group
@group
;; Value of symbol-width and full-Y-label-width
-;; are passed by `print-graph'.
+;; are passed by 'print-graph'.
(let* ((leading-spaces
(make-string full-Y-label-width ? ))
;; symbol-width @r{is provided by} graph-body-print
@@ -21872,7 +21872,7 @@ users think that a proprietary manual is good enough---so they don't
see the need to write a free manual. They do not see that the free
operating system has a gap that needs filling.
-Why do users think that proprietary manuals are good enough? Some have
+Why do users think that proprietary manuals are good enough? Some have
not considered the issue. I hope this article will do something to
change that.
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog.1
index c24bb646fa6..e508839cd5b 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog.1
@@ -50,7 +50,7 @@
2015-03-02 Daniel Colascione <dancol@dancol.org>
* control.texi (Generators): New section
- * elisp.text: Reference new section.
+ * elisp.texi: Reference new section.
2015-02-28 Eli Zaretskii <eliz@gnu.org>
diff --git a/doc/lispref/README b/doc/lispref/README
index 5ca18a8446a..fd943ce97c2 100644
--- a/doc/lispref/README
+++ b/doc/lispref/README
@@ -21,15 +21,15 @@ Buying a manual from the Free Software Foundation helps support our GNU
development work. See <http://shop.fsf.org/>.
(At time of writing, this manual is out of print.)
-* The master file for formatting this manual for Tex is called `elisp.texi'.
+* The master file for formatting this manual for Tex is called 'elisp.texi'.
It contains @include commands to include all the chapters that make up
the manual.
* This distribution contains a Makefile that you can use with GNU Make.
-** To make an Info file, you need to install Texinfo, then run `make info'.
+** To make an Info file, you need to install Texinfo, then run 'make info'.
-** Use `make elisp.pdf' or `make elisp.html' to create PDF or HTML versions.
+** Use 'make elisp.pdf' or 'make elisp.html' to create PDF or HTML versions.
This file is part of GNU Emacs.
diff --git a/doc/lispref/buffers.texi b/doc/lispref/buffers.texi
index 1c1c423171d..49bfe82a3e1 100644
--- a/doc/lispref/buffers.texi
+++ b/doc/lispref/buffers.texi
@@ -844,7 +844,7 @@ names start with a space are not considered at all.
If @var{buffer} is not supplied (or if it is not a live buffer), then
@code{other-buffer} returns the first buffer in the selected frame's
-local buffer list. (If @var{frame} is non-@code{nil}, it returns the
+local buffer list. (If @var{frame} is non-@code{nil}, it returns the
first buffer in @var{frame}'s local buffer list instead.)
If @var{frame} has a non-@code{nil} @code{buffer-predicate} parameter,
diff --git a/doc/lispref/commands.texi b/doc/lispref/commands.texi
index 5e986debd8a..aec7674284d 100644
--- a/doc/lispref/commands.texi
+++ b/doc/lispref/commands.texi
@@ -1462,7 +1462,7 @@ the symbols @code{handle} (the scroll bar handle), @code{above-handle}
(the area above the handle), @code{below-handle} (the area below the
handle), @code{up} (the up arrow at one end of the scroll bar), or
@code{down} (the down arrow at one end of the scroll bar).
-@c The `top', `bottom', and `end-scroll' codes don't seem to be used.
+@c The 'top', 'bottom', and 'end-scroll' codes don't seem to be used.
@end table
@@ -1720,7 +1720,7 @@ occurred.
@vindex mouse-wheel-up-event
@vindex mouse-wheel-down-event
-This kind of event is generated only on some kinds of systems. On some
+This kind of event is generated only on some kinds of systems. On some
systems, @code{mouse-4} and @code{mouse-5} are used instead. For
portable code, use the variables @code{mouse-wheel-up-event} and
@code{mouse-wheel-down-event} defined in @file{mwheel.el} to determine
@@ -1856,7 +1856,7 @@ into another window. That produces a pair of events like these:
@end smallexample
The frame with input focus might not take up the entire screen, and
-the user might move the mouse outside the scope of the frame. Inside
+the user might move the mouse outside the scope of the frame. Inside
the @code{track-mouse} special form, that produces an event like this:
@smallexample
diff --git a/doc/lispref/control.texi b/doc/lispref/control.texi
index f512ad990bd..fb2e1bccb10 100644
--- a/doc/lispref/control.texi
+++ b/doc/lispref/control.texi
@@ -1025,7 +1025,7 @@ the circumstances of the error.
The argument @var{error-symbol} must be an @dfn{error symbol}---a symbol
defined with @code{define-error}. This is how Emacs Lisp classifies different
-sorts of errors. @xref{Error Symbols}, for a description of error symbols,
+sorts of errors. @xref{Error Symbols}, for a description of error symbols,
error conditions and condition names.
If the error is not handled, the two arguments are used in printing
diff --git a/doc/lispref/customize.texi b/doc/lispref/customize.texi
index 0d1b6fac8c0..f984dbe5870 100644
--- a/doc/lispref/customize.texi
+++ b/doc/lispref/customize.texi
@@ -842,7 +842,7 @@ symbols, and symbols are not treated like other Lisp expressions.
@item (radio @var{element-types}@dots{})
This is similar to @code{choice}, except that the choices are displayed
-using `radio buttons' rather than a menu. This has the advantage of
+using ``radio buttons'' rather than a menu. This has the advantage of
displaying documentation for the choices when applicable and so is often
a good choice for a choice between constant functions
(@code{function-item} customization types).
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index b73e70d1079..d5d9bb5f66d 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -257,6 +257,9 @@ text properties (@pxref{Logging Messages}).
In batch mode, the message is printed to the standard error stream,
followed by a newline.
+When @code{inhibit-message} is non-@code{nil}, no message will be displayed
+in the echo area, it will only be logged to @samp{*Messages*}.
+
If @var{format-string} is @code{nil} or the empty string,
@code{message} clears the echo area; if the echo area has been
expanded automatically, this brings it back to its normal size. If
@@ -282,6 +285,11 @@ To automatically display a message in the echo area or in a pop-buffer,
depending on its size, use @code{display-message-or-buffer} (see below).
@end defun
+@defvar inhibit-message
+When this variable is non-@code{nil}, @code{message} and related functions
+will not use the Echo Area to display messages.
+@end defvar
+
@defmac with-temp-message message &rest body
This construct displays a message in the echo area temporarily, during
the execution of @var{body}. It displays @var{message}, executes
@@ -1310,6 +1318,7 @@ beginning and end. It also has properties that you can examine and set;
these affect the display of the text within the overlay.
@cindex scalability of overlays
+@cindex overlays, scalability
The visual effect of an overlay is the same as of the corresponding
text property (@pxref{Text Properties}). However, due to a different
implementation, overlays generally don't scale well (many operations
@@ -1351,6 +1360,15 @@ and @var{end} must specify buffer positions; they may be integers or
markers. If @var{buffer} is omitted, the overlay is created in the
current buffer.
+@cindex empty overlay
+@cindex overlay, empty
+An overlay whose @var{start} and @var{end} specify the same buffer
+position is known as @dfn{empty}. A non-empty overlay can become
+empty if the text between its @var{start} and @var{end} is deleted.
+When that happens, the overlay is by default not deleted, but you can
+cause it to be deleted by giving it the @samp{evaporate} property
+(@pxref{Overlay Properties, evaporate property}).
+
The arguments @var{front-advance} and @var{rear-advance} specify the
marker insertion type for the start of the overlay and for the end of
the overlay, respectively. @xref{Marker Insertion Types}. If they
@@ -1720,8 +1738,11 @@ line at display-time. @xref{Truncation}.
@kindex evaporate @r{(overlay property)}
If this property is non-@code{nil}, the overlay is deleted automatically
if it becomes empty (i.e., if its length becomes zero). If you give
-an empty overlay a non-@code{nil} @code{evaporate} property, that deletes
-it immediately.
+an empty overlay (@pxref{Managing Overlays, empty overlay}) a
+non-@code{nil} @code{evaporate} property, that deletes it immediately.
+Note that, unless an overlay has this property, it will not be deleted
+when the text between its starting and ending positions is deleted
+from the buffer.
@item keymap
@cindex keymap of character (and overlays)
@@ -1777,10 +1798,10 @@ overlays that specify property @var{prop} for the character at point:
This function returns a list of the overlays that overlap the region
@var{beg} through @var{end}. ``Overlap'' means that at least one
character is contained within the overlay and also contained within the
-specified region; however, empty overlays are included in the result if
-they are located at @var{beg}, strictly between @var{beg} and @var{end},
-or at @var{end} when @var{end} denotes the position at the end of the
-buffer.
+specified region; however, empty overlays (@pxref{Managing Overlays,
+empty overlay}) are included in the result if they are located at
+@var{beg}, strictly between @var{beg} and @var{end}, or at @var{end}
+when @var{end} denotes the position at the end of the buffer.
@end defun
@defun next-overlay-change pos
@@ -2790,7 +2811,7 @@ then the new definition of the @code{mode-line} face inherits from the
functions instead of setting @code{face-remapping-alist} directly, to
avoid trampling on remappings applied elsewhere. These functions are
intended for buffer-local remappings, so they all make
-@code{face-remapping-alist} buffer-local as a side-effect. They manage
+@code{face-remapping-alist} buffer-local as a side-effect. They manage
@code{face-remapping-alist} entries of the form
@example
@@ -2820,11 +2841,11 @@ pass this object as an argument to @code{face-remap-remove-relative}
if you need to remove the remapping later.
@example
-;; Remap the `escape-glyph' face into a combination
-;; of the `highlight' and `italic' faces:
+;; Remap the 'escape-glyph' face into a combination
+;; of the 'highlight' and 'italic' faces:
(face-remap-add-relative 'escape-glyph 'highlight 'italic)
-;; Increase the size of the `default' face by 50%:
+;; Increase the size of the 'default' face by 50%:
(face-remap-add-relative 'default :height 1.5)
@end example
@end defun
@@ -4557,7 +4578,7 @@ not affect the amount of raising or lowering, which is based on the
faces used for the text.
@end table
-@c We put all the `@code{(when ...)}' on one line to encourage
+@c We put all the '@code{(when ...)}' on one line to encourage
@c makeinfo's end-of-sentence heuristics to DTRT. Previously, the dot
@c was at eol; the info file ended up w/ two spaces rendered after it.
You can make any display specification conditional. To do that,
@@ -5628,7 +5649,7 @@ so that it's easy to define special-purpose types of buttons for
specific tasks.
@defun define-button-type name &rest properties
-Define a `button type' called @var{name} (a symbol).
+Define a ``button type'' called @var{name} (a symbol).
The remaining arguments
form a sequence of @var{property value} pairs, specifying default
property values for buttons with this type (a button's type may be set
@@ -5781,7 +5802,7 @@ Return @code{t} if button-type @var{type} is a subtype of @var{supertype}.
These are commands and functions for locating and operating on
buttons in an Emacs buffer.
-@code{push-button} is the command that a user uses to actually `push'
+@code{push-button} is the command that a user uses to actually ``push''
a button, and is bound by default in the button itself to @key{RET}
and to @key{mouse-2} using a local keymap in the button's overlay or
text properties. Commands that are useful outside the buttons itself,
@@ -6643,7 +6664,7 @@ Non-@acronym{ASCII}, non-printing characters @code{U+0080} to
@samp{\230}).
@item format-control
-Characters of Unicode General Category `Cf', such as @samp{U+200E}
+Characters of Unicode General Category ``Cf'', such as @samp{U+200E}
(Left-to-Right Mark), but excluding characters that have graphic
images, such as @samp{U+00AD} (Soft Hyphen).
@@ -6652,9 +6673,9 @@ Characters for there is no suitable font, or which cannot be encoded
by the terminal's coding system.
@end table
-@c FIXME: this can also be `acronym', but that's not currently
+@c FIXME: this can also be 'acronym', but that's not currently
@c completely implemented; it applies only to the format-control
-@c group, and only works if the acronym is in `char-acronym-table'.
+@c group, and only works if the acronym is in 'char-acronym-table'.
The @var{method} symbol should be one of @code{zero-width},
@code{thin-space}, @code{empty-box}, or @code{hex-code}. These have
the same meanings as in @code{glyphless-char-display}, above.
diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi
index fc8ba7b4116..bf1fc4db173 100644
--- a/doc/lispref/elisp.texi
+++ b/doc/lispref/elisp.texi
@@ -247,9 +247,9 @@ Appendices
@end ignore
@c Do NOT modify the following 3 lines! They must have this form to
-@c be correctly identified by `texinfo-multiple-files-update'. In
+@c be correctly identified by 'texinfo-multiple-files-update'. In
@c particular, the detailed menu header line MUST be identical to the
-@c value of `texinfo-master-menu-header'. See texnfo-upd.el.
+@c value of 'texinfo-master-menu-header'. See texnfo-upd.el.
@detailmenu
--- The Detailed Node Listing ---
diff --git a/doc/lispref/files.texi b/doc/lispref/files.texi
index 2739e3e509d..f4c9abd5468 100644
--- a/doc/lispref/files.texi
+++ b/doc/lispref/files.texi
@@ -423,7 +423,7 @@ To do so, execute the following code:
You might wish to save the file modes value returned by
@code{backup-buffer} and use that (if non-@code{nil}) to set the mode
bits of the file that you write. This is what @code{save-buffer}
-normally does. @xref{Making Backups,, Making Backup Files}.
+normally does. @xref{Making Backups,, Making Backup Files}.
The hook functions in @code{write-file-functions} are also responsible
for encoding the data (if desired): they must choose a suitable coding
@@ -3352,8 +3352,8 @@ from the buffer is actually written to the file, it intermixes the
specified annotations at the corresponding positions. All this takes
place without modifying the buffer.
-@c ??? What about ``overriding'' conversions like those allowed
-@c ??? for `write-region-annotate-functions', below? --ttn
+@c ??? What about "overriding" conversions like those allowed
+@c ??? for 'write-region-annotate-functions', below? --ttn
In contrast, when reading, the annotations intermixed with the text
are handled immediately. @code{insert-file-contents} sets point to
@@ -3406,8 +3406,8 @@ with one argument, the number of characters inserted, and with point
at the beginning of the inserted text. Each function should leave
point unchanged, and return the new character count describing the
inserted text as modified by the function.
-@c ??? The docstring mentions a handler from `file-name-handler-alist'
-@c "intercepting" `insert-file-contents'. Hmmm. --ttn
+@c ??? The docstring mentions a handler from 'file-name-handler-alist'
+@c "intercepting" 'insert-file-contents'. Hmmm. --ttn
@end defvar
We invite users to write Lisp programs to store and retrieve text
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi
index 85695c614c8..e19472e3ca3 100644
--- a/doc/lispref/frames.texi
+++ b/doc/lispref/frames.texi
@@ -2693,7 +2693,7 @@ This function returns @code{t} if the screen can display shades of gray.
This function returns non-@code{nil} if all the face attributes in
@var{attributes} are supported (@pxref{Face Attributes}).
-The definition of `supported' is somewhat heuristic, but basically
+The definition of ``supported'' is somewhat heuristic, but basically
means that a face containing all the attributes in @var{attributes},
when merged with the default face for display, can be represented in a
way that's
@@ -2703,14 +2703,14 @@ way that's
different in appearance than the default face, and
@item
-`close in spirit' to what the attributes specify, if not exact.
+``close in spirit'' to what the attributes specify, if not exact.
@end enumerate
Point (2) implies that a @code{:weight black} attribute will be
satisfied by any display that can display bold, as will
@code{:foreground "yellow"} as long as some yellowish color can be
displayed, but @code{:slant italic} will @emph{not} be satisfied by
-the tty display code's automatic substitution of a `dim' face for
+the tty display code's automatic substitution of a ``dim'' face for
italic.
@end defun
diff --git a/doc/lispref/hash.texi b/doc/lispref/hash.texi
index bfa60e0d2a6..98da321297c 100644
--- a/doc/lispref/hash.texi
+++ b/doc/lispref/hash.texi
@@ -154,7 +154,7 @@ This is equivalent to @code{make-hash-table}, but with a different style
argument list. The argument @var{test} specifies the method
of key lookup.
-This function is obsolete. Use @code{make-hash-table} instead.
+This function is obsolete. Use @code{make-hash-table} instead.
@end defun
You can also create a new hash table using the printed representation
diff --git a/doc/lispref/help.texi b/doc/lispref/help.texi
index 5b3dd58dfc5..868d2843569 100644
--- a/doc/lispref/help.texi
+++ b/doc/lispref/help.texi
@@ -171,7 +171,7 @@ several symbols in a @file{*Help*} buffer.
(defun describe-symbols (pattern)
"Describe the Emacs Lisp symbols matching PATTERN.
All symbols that have PATTERN in their name are described
-in the `*Help*' buffer."
+in the *Help* buffer."
(interactive "sDescribe symbols matching: ")
(let ((describe-func
(function
diff --git a/doc/lispref/internals.texi b/doc/lispref/internals.texi
index a5fff724ea1..0b8e28839fc 100644
--- a/doc/lispref/internals.texi
+++ b/doc/lispref/internals.texi
@@ -898,14 +898,14 @@ DEFUN ("coordinates-in-window-p", Fcoordinates_in_window_p,
@group
switch (coordinates_in_window (w, x, y))
@{
- case ON_NOTHING: /* NOT in window at all. */
+ case ON_NOTHING: /* NOT in window at all. */
return Qnil;
@end group
...
@group
- case ON_MODE_LINE: /* In mode line of window. */
+ case ON_MODE_LINE: /* In mode line of window. */
return Qmode_line;
@end group
@@ -1317,8 +1317,8 @@ except to shape their child windows. Emacs Lisp programs usually have
no access to the parent windows; they operate on the windows at the
leaves of the tree, which actually display buffers.
-@c FIXME: These two slots and the `buffer' slot below were replaced
-@c with a single slot `contents' on 2013-03-28. --xfq
+@c FIXME: These two slots and the 'buffer' slot below were replaced
+@c with a single slot 'contents' on 2013-03-28. --xfq
@item hchild
@itemx vchild
These fields contain the window's leftmost child and its topmost child
diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi
index 0ae8fbd0686..fc1def60207 100644
--- a/doc/lispref/loading.texi
+++ b/doc/lispref/loading.texi
@@ -76,7 +76,7 @@ If Auto Compression mode is enabled, as it is by default, then if
of the file before trying other file names. It decompresses and loads
it if it exists. It looks for compressed versions by appending each
of the suffixes in @code{jka-compr-load-suffixes} to the file name.
-The value of this variable must be a list of strings. Its standard
+The value of this variable must be a list of strings. Its standard
value is @code{(".gz")}.
If the optional argument @var{nosuffix} is non-@code{nil}, then
diff --git a/doc/lispref/makefile.w32-in b/doc/lispref/makefile.w32-in
index 4185629180e..c30d6e2d1a4 100644
--- a/doc/lispref/makefile.w32-in
+++ b/doc/lispref/makefile.w32-in
@@ -31,7 +31,7 @@ texinfodir = $(srcdir)/../misc
INFO_EXT=.info
INFO_OPTS=--no-split
-# Redefine `TEX' if `tex' does not invoke plain TeX. For example:
+# Redefine 'TEX' if 'tex' does not invoke plain TeX. For example:
# TEX=platex
TEX=tex
INSTALL_INFO = install-info
@@ -102,7 +102,7 @@ srcs = \
.PHONY: clean
-# The info file is named `elisp'.
+# The info file is named 'elisp'.
info: $(infodir)/elisp$(INFO_EXT)
diff --git a/doc/lispref/markers.texi b/doc/lispref/markers.texi
index 48ac9f05085..109e9359f2c 100644
--- a/doc/lispref/markers.texi
+++ b/doc/lispref/markers.texi
@@ -287,8 +287,8 @@ This function returns the position that @var{marker} points to, or
This function returns the buffer that @var{marker} points into, or
@code{nil} if it points nowhere.
-@c FIXME: The `buffer' argument of `set-marker' already defaults to
-@c the current buffer, why use `(current-buffer)' explicitly here?
+@c FIXME: The 'buffer' argument of 'set-marker' already defaults to
+@c the current buffer, why use '(current-buffer)' explicitly here?
@example
@group
(setq m (make-marker))
@@ -712,4 +712,3 @@ A region is valid if it has a non-zero size, or if the user option
cases, you should not use @code{region-active-p}, since if the region
is empty it is often more appropriate to operate on point.
@end defun
-
diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi
index bc247a969c1..8cb0f3db246 100644
--- a/doc/lispref/modes.texi
+++ b/doc/lispref/modes.texi
@@ -749,7 +749,7 @@ The new mode has its own abbrev table, kept in the variable
@item
The new mode has its own mode hook, @code{@var{variant}-hook}. It
runs this hook, after running the hooks of its ancestor modes, with
-@code{run-mode-hooks}, as the last thing it does. @xref{Mode Hooks}.
+@code{run-mode-hooks}, as the last thing it does. @xref{Mode Hooks}.
@end itemize
In addition, you can specify how to override other aspects of
@@ -1122,7 +1122,7 @@ the conventions listed above:
(let ((st (make-syntax-table)))
(modify-syntax-entry ?\" ". " st)
(modify-syntax-entry ?\\ ". " st)
- ;; Add `p' so M-c on `hello' leads to `Hello', not `hello'.
+ ;; Add 'p' so M-c on 'hello' leads to 'Hello', not 'hello'.
(modify-syntax-entry ?' "w p" st)
st)
"Syntax table used while in `text-mode'.")
@@ -3425,7 +3425,7 @@ provided grammar is precise enough, @code{transpose-sexps} can correctly
transpose the two arguments of a @code{+} operator, taking into account
the precedence rules of the language.
-Calling `smie-setup' is also sufficient to make TAB indentation work in
+Calling @code{smie-setup} is also sufficient to make TAB indentation work in
the expected way, extends @code{blink-matching-paren} to apply to
elements like @code{begin...end}, and provides some commands that you
can bind in the major mode keymap.
@@ -3874,7 +3874,7 @@ of instructions (enclosed in a @code{@{...@}} or @code{begin...end}
block).
@var{method} should be the method name that was passed to
-`smie-rules-function'.
+@code{smie-rules-function}.
@end defun
@node SMIE Indentation Example
diff --git a/doc/lispref/nonascii.texi b/doc/lispref/nonascii.texi
index 50e50ff39a6..05d5ca48043 100644
--- a/doc/lispref/nonascii.texi
+++ b/doc/lispref/nonascii.texi
@@ -248,7 +248,7 @@ unibyte string, it is returned unchanged. Use this function for
characters.
@end defun
-@c FIXME: Should `@var{character}' be `@var{byte}'?
+@c FIXME: Should '@var{character}' be '@var{byte}'?
@defun byte-to-string byte
@cindex byte to string
This function returns a unibyte string containing a single byte of
@@ -1375,7 +1375,7 @@ alternatives described above.
The optional argument @var{accept-default-p}, if non-@code{nil},
should be a function to determine whether a coding system selected
-without user interaction is acceptable. @code{select-safe-coding-system}
+without user interaction is acceptable. @code{select-safe-coding-system}
calls this function with one argument, the base coding system of the
selected coding system. If @var{accept-default-p} returns @code{nil},
@code{select-safe-coding-system} rejects the silently selected coding
@@ -1437,7 +1437,7 @@ don't change these variables; instead, override them using
@cindex file contents, and default coding system
@defopt auto-coding-regexp-alist
This variable is an alist of text patterns and corresponding coding
-systems. Each element has the form @code{(@var{regexp}
+systems. Each element has the form @code{(@var{regexp}
. @var{coding-system})}; a file whose first few kilobytes match
@var{regexp} is decoded with @var{coding-system} when its contents are
read into a buffer. The settings in this alist take priority over
diff --git a/doc/lispref/objects.texi b/doc/lispref/objects.texi
index f4beca822cd..c7d71d2aba9 100644
--- a/doc/lispref/objects.texi
+++ b/doc/lispref/objects.texi
@@ -595,8 +595,8 @@ FOO ; @r{A symbol named @samp{FOO}, different from @samp{foo}.}
@cindex @samp{##} read syntax
@ifinfo
-@c This uses ``colon'' instead of a literal `:' because Info cannot
-@c cope with a `:' in a menu
+@c This uses "colon" instead of a literal ':' because Info cannot
+@c cope with a ':' in a menu.
@cindex @samp{#@var{colon}} read syntax
@end ifinfo
@ifnotinfo
@@ -999,7 +999,7 @@ of a string returns the same string.
The read syntax for a string is a double-quote, an arbitrary number
of characters, and another double-quote, @code{"like this"}. To
include a double-quote in a string, precede it with a backslash; thus,
-@code{"\""} is a string containing just a single double-quote
+@code{"\""} is a string containing just one double-quote
character. Likewise, you can include a backslash by preceding it with
another backslash, like this: @code{"this \\ is a single embedded
backslash"}.
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi
index 4df4a597ea6..97fa083e07d 100644
--- a/doc/lispref/os.texi
+++ b/doc/lispref/os.texi
@@ -974,7 +974,7 @@ to access the value of @var{variable}. If @var{value} is omitted or
removes @var{variable} from the environment. Otherwise, @var{value}
should be a string.
-@c FIXME: Document `substitute-env-vars'? --xfq
+@c FIXME: Document 'substitute-env-vars'? --xfq
If the optional argument @var{substitute} is non-@code{nil}, Emacs
calls the function @code{substitute-env-vars} to expand any
environment variables in @var{value}.
@@ -2384,7 +2384,7 @@ The path to a sound file to play when the notification pops up.
@item :sound-name @var{name}
A themable named sound from the freedesktop.org sound naming
specification from @samp{$XDG_DATA_DIRS/sounds}, to play when the
-notification pops up. Similar to the icon name, only for sounds. An
+notification pops up. Similar to the icon name, only for sounds. An
example would be @samp{"message-new-instant"}.
@item :suppress-sound
@@ -2393,9 +2393,9 @@ ability.
@item :resident
When set the server will not automatically remove the notification
-when an action has been invoked. The notification will remain resident
+when an action has been invoked. The notification will remain resident
in the server until it is explicitly removed by the user or by the
-sender. This hint is likely only useful when the server has the
+sender. This hint is likely only useful when the server has the
@code{:persistence} capability.
@item :transient
diff --git a/doc/lispref/positions.texi b/doc/lispref/positions.texi
index 103161c7ae2..fc47f1c7a78 100644
--- a/doc/lispref/positions.texi
+++ b/doc/lispref/positions.texi
@@ -664,7 +664,7 @@ quotes are ignored.)
This function moves forward out of @var{arg} (default 1) levels of
parentheses. A negative argument means move backward but still to a
less deep spot. If @var{escape-strings} is non-@code{nil} (as it is
-interactively), move out of enclosing strings as well. If
+interactively), move out of enclosing strings as well. If
@var{no-syntax-crossing} is non-@code{nil} (as it is interactively), prefer
to break out of any enclosing string instead of moving to the start of
a list broken across multiple strings. On error, location of point is
diff --git a/doc/lispref/processes.texi b/doc/lispref/processes.texi
index 3e9cc50de52..2bc6a1843c4 100644
--- a/doc/lispref/processes.texi
+++ b/doc/lispref/processes.texi
@@ -196,7 +196,7 @@ Here's an example of using @code{shell-quote-argument} to construct
a shell command:
@example
-(concat "diff -c "
+(concat "diff -u "
(shell-quote-argument oldfile)
" "
(shell-quote-argument newfile))
@@ -741,6 +741,58 @@ Initialize the process filter to @var{filter}.
@item :sentinel @var{sentinel}
Initialize the process sentinel to @var{sentinel}.
+
+@item :stderr @var{stderr}
+Associate @var{stderr} with the standard error of the process.
+@var{stderr} is either a buffer or a pipe process created with
+@code{make-pipe-process}.
+@end table
+
+The original argument list, modified with the actual connection
+information, is available via the @code{process-contact} function.
+@end defun
+
+@defun make-pipe-process &rest args
+This function creates a bidirectional pipe which can be attached to a
+child process (currently only useful with the @code{:stderr} keyword
+of @code{make-process}).
+
+The arguments @var{args} are a list of keyword/argument pairs.
+Omitting a keyword is always equivalent to specifying it with value
+@code{nil}, except for @code{:coding}.
+Here are the meaningful keywords:
+
+@table @asis
+@item :name @var{name}
+Use the string @var{name} as the process name. It is modified if
+necessary to make it unique.
+
+@item :buffer @var{buffer}
+Use @var{buffer} as the process buffer.
+
+@item :coding @var{coding}
+If @var{coding} is a symbol, it specifies the coding system to be
+used for both reading and writing of data from and to the
+connection. If @var{coding} is a cons cell
+@w{@code{(@var{decoding} . @var{encoding})}}, then @var{decoding}
+will be used for reading and @var{encoding} for writing.
+
+If @var{coding} is @code{nil}, the default rules for finding the
+coding system will apply. @xref{Default Coding Systems}.
+
+@item :noquery @var{query-flag}
+Initialize the process query flag to @var{query-flag}.
+@xref{Query Before Exit}.
+
+@item :stop @var{stopped}
+If @var{stopped} is non-@code{nil}, start the process in the
+``stopped'' state.
+
+@item :filter @var{filter}
+Initialize the process filter to @var{filter}.
+
+@item :sentinel @var{sentinel}
+Initialize the process sentinel to @var{sentinel}.
@end table
The original argument list, modified with the actual connection
diff --git a/doc/lispref/searching.texi b/doc/lispref/searching.texi
index 87513e8f9ce..5a05c7c729d 100644
--- a/doc/lispref/searching.texi
+++ b/doc/lispref/searching.texi
@@ -558,8 +558,11 @@ This matches any @acronym{ASCII} control character.
This matches @samp{0} through @samp{9}. Thus, @samp{[-+[:digit:]]}
matches any digit, as well as @samp{+} and @samp{-}.
@item [:graph:]
-This matches graphic characters---everything except @acronym{ASCII} control
-characters, space, and the delete character.
+This matches graphic characters---everything except whitespace,
+@acronym{ASCII} and non-@acronym{ASCII} control characters,
+surrogates, and codepoints unassigned by Unicode, as indicated by the
+Unicode @samp{general-category} property (@pxref{Character
+Properties}).
@item [:lower:]
This matches any lower-case letter, as determined by the current case
table (@pxref{Case Tables}). If @code{case-fold-search} is
@@ -569,8 +572,8 @@ This matches any multibyte character (@pxref{Text Representations}).
@item [:nonascii:]
This matches any non-@acronym{ASCII} character.
@item [:print:]
-This matches printing characters---everything except @acronym{ASCII} control
-characters and the delete character.
+This matches any printing character---either whitespace, or a graphic
+character matched by @samp{[:graph:]}.
@item [:punct:]
This matches any punctuation character. (At present, for multibyte
characters, it matches anything that has non-word syntax.)
diff --git a/doc/lispref/sequences.texi b/doc/lispref/sequences.texi
index 1af353590cf..b48fae4741f 100644
--- a/doc/lispref/sequences.texi
+++ b/doc/lispref/sequences.texi
@@ -723,6 +723,35 @@ contain less elements than @var{n}. @var{n} must be an integer. If
@end example
@end defun
+@defun seq-intersection sequence1 sequence2 &optional function
+ This function returns a list of the elements that appear both in
+@var{sequence1} and @var{sequence2}. If the optional argument
+@var{function} is non-@code{nil}, it is a function of two arguments to
+use to compare elements instead of the default @code{equal}.
+
+@example
+@group
+(seq-intersection [2 3 4 5] [1 3 5 6 7])
+@result{} (3 5)
+@end group
+@end example
+@end defun
+
+
+@defun seq-difference sequence1 sequence2 &optional function
+ This function returns a list of the elements that appear in
+@var{sequence1} but not in @var{sequence2}. If the optional argument
+@var{function} is non-@code{nil}, it is a function of two arguments to
+use to compare elements instead of the default @code{equal}.
+
+@example
+@group
+(seq-difference '(2 3 4 5) [1 3 5 6 7])
+@result{} (2 4)
+@end group
+@end example
+@end defun
+
@defun seq-group-by function sequence
This function separates the elements of @var{sequence} into an alist
whose keys are the result of applying @var{function} to each element
@@ -761,8 +790,7 @@ of type @var{type}. @var{type} can be one of the following symbols:
@end example
@end defun
-
-@defmac seq-doseq (var sequence [result]) body@dots{}
+@defmac seq-doseq (var sequence) body@dots{}
@cindex sequence iteration
This macro is like @code{dolist}, except that @var{sequence} can be a list,
vector or string (@pxref{Iteration} for more information about the
diff --git a/doc/lispref/strings.texi b/doc/lispref/strings.texi
index aca6189d7bf..c2f06079cb6 100644
--- a/doc/lispref/strings.texi
+++ b/doc/lispref/strings.texi
@@ -956,12 +956,12 @@ is not truncated.
@example
@group
-(format "The word `%7s' has %d letters in it."
+(format "The word '%7s' has %d letters in it."
"foo" (length "foo"))
- @result{} "The word ` foo' has 3 letters in it."
-(format "The word `%7s' has %d letters in it."
+ @result{} "The word ' foo' has 3 letters in it."
+(format "The word '%7s' has %d letters in it."
"specification" (length "specification"))
- @result{} "The word `specification' has 13 letters in it."
+ @result{} "The word 'specification' has 13 letters in it."
@end group
@end example
@@ -1003,9 +1003,9 @@ ignored.
(format "%-6d is padded on the right" 123)
@result{} "123 is padded on the right"
-(format "The word `%-7s' actually has %d letters in it."
+(format "The word '%-7s' actually has %d letters in it."
"foo" (length "foo"))
- @result{} "The word `foo ' actually has 3 letters in it."
+ @result{} "The word 'foo ' actually has 3 letters in it."
@end group
@end example
diff --git a/doc/lispref/syntax.texi b/doc/lispref/syntax.texi
index 1f1dd6e8bef..90daf34f0dc 100644
--- a/doc/lispref/syntax.texi
+++ b/doc/lispref/syntax.texi
@@ -203,7 +203,7 @@ suppressed.
The Lisp modes have two string quote characters: double-quote (@samp{"})
and vertical bar (@samp{|}). @samp{|} is not used in Emacs Lisp, but it
is used in Common Lisp. C also has two string quote characters:
-double-quote for strings, and single-quote (@samp{'}) for character
+double-quote for strings, and apostrophe (@samp{'}) for character
constants.
Human text has no string quote characters. We do not want quotation
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi
index da67ec2b541..d4b6950ee95 100644
--- a/doc/lispref/text.texi
+++ b/doc/lispref/text.texi
@@ -512,7 +512,7 @@ non-@code{nil} and the character inserted is in the table
@c Cross refs reworded to prevent overfull hbox. --rjc 15mar92
This command performs abbrev expansion if Abbrev mode is enabled and
the inserted character does not have word-constituent
-syntax. (@xref{Abbrevs}, and @ref{Syntax Class Table}.) It is also
+syntax. (@xref{Abbrevs}, and @ref{Syntax Class Table}.) It is also
responsible for calling @code{blink-paren-function} when the inserted
character has close parenthesis syntax (@pxref{Blinking}).
diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi
index 8970efe72fb..cc1f0e42750 100644
--- a/doc/lispref/tips.texi
+++ b/doc/lispref/tips.texi
@@ -657,23 +657,18 @@ starting double-quote is not part of the string!
@anchor{Docstring hyperlinks}
@item
-@iftex
When a documentation string refers to a Lisp symbol, write it as it
-would be printed (which usually means in lower case), with single-quotes
-around it. For example: @samp{`lambda'}. There are two exceptions:
-write @code{t} and @code{nil} without single-quotes.
-@end iftex
-@ifnottex
-When a documentation string refers to a Lisp symbol, write it as it
-would be printed (which usually means in lower case), with single-quotes
-around it. For example: @samp{lambda}. There are two exceptions: write
-t and nil without single-quotes. (In this manual, we use a different
-convention, with single-quotes for all symbols.)
-@end ifnottex
+would be printed (which usually means in lower case), with a grave
+accent @samp{`} before and apostrophe @samp{'} after it. There are
+two exceptions: write @code{t} and @code{nil} without surrounding
+punctuation. For example: @samp{CODE can be `lambda', nil, or t.}
+(In this manual, we use a different convention, with single-quotes
+around symbols.)
@cindex hyperlinks in documentation strings
Help mode automatically creates a hyperlink when a documentation string
-uses a symbol name inside single quotes, if the symbol has either a
+uses a symbol name between grave accent and apostrophe, if the symbol
+has either a
function or a variable definition. You do not need to do anything
special to make use of this feature. However, when a symbol has both a
function definition and a variable definition, and you want to refer to
@@ -716,16 +711,16 @@ documentation will be shown, even if the symbol is also defined as a
variable or as a function.
To make a hyperlink to Info documentation, write the name of the Info
-node (or anchor) in single quotes, preceded by @samp{info node},
-@samp{Info node}, @samp{info anchor} or @samp{Info anchor}. The Info
-file name defaults to @samp{emacs}. For example,
+node (or anchor) between grave accent and apostrophe, preceded by
+@samp{info node}, @samp{Info node}, @samp{info anchor} or @samp{Info
+anchor}. The Info file name defaults to @samp{emacs}. For example,
@smallexample
See Info node `Font Lock' and Info node `(elisp)Font Lock Basics'.
@end smallexample
-Finally, to create a hyperlink to URLs, write the URL in single
-quotes, preceded by @samp{URL}. For example,
+Finally, to create a hyperlink to URLs, write the URL between grave
+accent and apostrophe, preceded by @samp{URL}. For example,
@smallexample
The home page for the GNU project has more information (see URL
diff --git a/doc/lispref/two-volume-cross-refs.txt b/doc/lispref/two-volume-cross-refs.txt
index eded8c44f2e..89336e1d43b 100644
--- a/doc/lispref/two-volume-cross-refs.txt
+++ b/doc/lispref/two-volume-cross-refs.txt
@@ -108,8 +108,8 @@ on elisp2-fn-vol-number-added
(volume-index-markup "II")
to create elisp2-fn-vol-number-added
-insert elisp2-fn-vol-number-added into vol1.fn: do following `cat'
-insert elisp1-fn-vol-number-added into vol2.fn: do following `cat'
+insert elisp2-fn-vol-number-added into vol1.fn: do following 'cat'
+insert elisp1-fn-vol-number-added into vol2.fn: do following 'cat'
% cat elisp2-fn-vol-number-added >> vol1.fn
% cat elisp1-fn-vol-number-added >> vol2.fn
@@ -126,7 +126,7 @@ Be sure that .fn file has no blank lines.
### Create merged .toc file with volume number headings.
-append vol2.toc to vol1.toc with following `cat'
+append vol2.toc to vol1.toc with following 'cat'
% cat vol1.toc vol2.toc > elisp-toc-2vol.toc
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi
index 8d6e1249478..6da3582ddd1 100644
--- a/doc/lispref/windows.texi
+++ b/doc/lispref/windows.texi
@@ -2412,7 +2412,7 @@ the window split and the values of
and @code{split-width-threshold} (@pxref{Choosing Window Options}).
Now suppose we combine this call with a preexisting setup for
-`display-buffer-alist' as follows.
+@code{display-buffer-alist} as follows.
@example
@group
diff --git a/doc/man/ChangeLog b/doc/man/ChangeLog.1
index 205e9b900cc..205e9b900cc 100644
--- a/doc/man/ChangeLog
+++ b/doc/man/ChangeLog.1
diff --git a/doc/man/ebrowse.1 b/doc/man/ebrowse.1
index a4f0c790be5..40c82a46482 100644
--- a/doc/man/ebrowse.1
+++ b/doc/man/ebrowse.1
@@ -16,7 +16,7 @@ is used to create the database used by the class browser in Emacs.
.PP
.SH OPTIONS
The program follows the usual GNU command line syntax, with long
-options starting with two dashes (`-').
+options starting with two dashes ("\-").
.TP
.B \-a, \-\-append
append output to existing file
diff --git a/doc/man/emacs.1.in b/doc/man/emacs.1.in
index 259acb9bba8..98322aac810 100644
--- a/doc/man/emacs.1.in
+++ b/doc/man/emacs.1.in
@@ -251,8 +251,8 @@ Set additional X resources.
.BI "\-\-color\fR,\fP \-\-color=" mode
Override color mode for character terminals;
.I mode
-defaults to `auto', and can also be `never', `auto', `always',
-or a mode name like `ansi8'.
+defaults to "auto", and can also be "never", "auto", "always",
+or a mode name like "ansi8".
.TP
.BI \-bw " pixels\fR,\fP " \-\-border\-width " pixels"
Set the
@@ -420,8 +420,8 @@ The value can be one of
.IR fullwidth ,
or
.IR fullheight ,
-which correspond to the command-line options `\-fs', `\-mm', `\-fw',
-and `\-fh', respectively.
+which correspond to the command-line options "\-fs", "\-mm", "\-fw",
+and "\-fh", respectively.
Note that this applies to the initial frame only.
.TP
.BR geometry " (class " Geometry )
@@ -482,11 +482,11 @@ the window will be displayed in reverse video.
.TP
.BR screenGamma " (class "ScreenGamma )
Gamma correction for colors, equivalent to the frame parameter
-`screen\-gamma'.
+"screen\-gamma".
.TP
.BR scrollBarWidth " (class "ScrollBarWidth )
The scroll bar width in pixels, equivalent to the frame parameter
-`scroll\-bar\-width'.
+"scroll\-bar\-width".
.TP
.BR selectionFont " (class " SelectionFont )
Font name for pop-up menu items, in non-toolkit versions of
@@ -583,7 +583,7 @@ There is a mailing list, @PACKAGE_BUGREPORT@, for reporting Emacs
bugs and fixes.
But before reporting something as a bug, please try to be sure that
it really is a bug, not a misunderstanding or a deliberate feature.
-We ask you to read the section ``Reporting Bugs'' in the Emacs manual
+We ask you to read the section "Reporting Bugs" in the Emacs manual
for hints on how and when to report bugs.
Also, include the version number of the Emacs you are running in
\fIevery\fR bug report that you send in.
diff --git a/doc/man/emacsclient.1 b/doc/man/emacsclient.1
index 6930271e548..e62fe930152 100644
--- a/doc/man/emacsclient.1
+++ b/doc/man/emacsclient.1
@@ -31,28 +31,31 @@ default editor.
For
.B emacsclient
to work, you need an already running Emacs with a server. Within Emacs,
-call the functions `server-start' or `server-mode'. (Your `.emacs' file
-can do this automatically if you add either `(server-start)' or
-`(server-mode 1)' to it.)
+call the functions "server-start" or "server-mode". (Your ".emacs" file
+can do this automatically if you add either "(server-start)" or
+"(server-mode 1)" to it.)
-When you've finished editing the buffer, type `C-x #'
-(`server-edit'). This saves the file and sends a message back to the
-`emacsclient' program telling it to exit. The programs that use
-`EDITOR' wait for the "editor" (actually, `emacsclient') to exit. `C-x
-#' also checks for other pending external requests to edit various
+When you've finished editing the buffer, type "C-x #"
+("server-edit"). This saves the file and sends a message back to the
+.B emacsclient
+program telling it to exit. The programs that use
+EDITOR wait for the "editor" (actually,
+.BR emacsclient )
+to exit. "C-x #" also checks for other pending external requests to
+edit various
files, and selects the next such file.
-If you set the variable `server-window' to a window or a frame, `C-x
-#' displays the server buffer in that window or in that frame.
+If you set the variable "server-window" to a window or a frame, "C-x
+#" displays the server buffer in that window or in that frame.
.SH OPTIONS
The programs follow the usual GNU command line syntax, with long
-options starting with two dashes (`-').
+options starting with two dashes ("\-").
.TP
.B \-a, \-\-alternate-editor=EDITOR
if the Emacs server is not running, run the specified editor instead.
-This can also be specified via the `ALTERNATE_EDITOR' environment variable.
-If the value of EDITOR is the empty string, run `emacs \-\-daemon' to
+This can also be specified via the ALTERNATE_EDITOR environment variable.
+If the value of EDITOR is the empty string, run "emacs \-\-daemon" to
start Emacs in daemon mode, and try to connect to it.
.TP
.B -c, \-\-create-frame
@@ -70,7 +73,7 @@ Lisp expressions.
.TP
.B \-f, \-\-server-file=FILENAME
use TCP configuration file FILENAME for communication.
-This can also be specified via the `EMACS_SERVER_FILE' environment variable.
+This can also be specified via the EMACS_SERVER_FILE environment variable.
.TP
.B \-n, \-\-no-wait
returns
@@ -99,4 +102,3 @@ This manual page was written by Stephane Bortzmeyer <bortzmeyer@debian.org>,
for the Debian GNU/Linux system (but may be used by others).
.SH COPYING
This manual page is in the public domain.
-
diff --git a/doc/man/etags.1 b/doc/man/etags.1
index 08db3430d35..245d9b48198 100644
--- a/doc/man/etags.1
+++ b/doc/man/etags.1
@@ -80,8 +80,8 @@ Append to existing tag file. (For \fBvi\fP-format tag files, see also
.B \-B, \-\-backward\-search
Tag files written in the format expected by \fBvi\fP contain regular
expression search instructions; the \fB\-B\fP option writes them using
-the delimiter `\|\fB?\fP\|', to search \fIbackwards\fP through files.
-The default is to use the delimiter `\|\fB/\fP\|', to search \fIforwards\fP
+the delimiter "\|\fB?\fP\|", to search \fIbackwards\fP through files.
+The default is to use the delimiter "\|\fB/\fP\|", to search \fIforwards\fP
through files.
Only \fBctags\fP accepts this option.
.TP
@@ -117,8 +117,8 @@ final brace of a function or structure definition in C and C++.
Parse the following files according to the given language. More than
one such options may be intermixed with filenames. Use \fB\-\-help\fP
to get a list of the available languages and their default filename
-extensions. The `auto' language can be used to restore automatic
-detection of language based on the file name. The `none'
+extensions. The "auto" language can be used to restore automatic
+detection of language based on the file name. The "none"
language may be used to disable language parsing altogether; only
regexp matching is done in this case (see the \fB\-\-regex\fP option).
.TP
@@ -256,7 +256,7 @@ Print the current version of the program (same as the version of the
emacs \fBetags\fP is shipped with).
.SH "SEE ALSO"
-`\|\fBemacs\fP\|' entry in \fBinfo\fP; \fIGNU Emacs Manual\fP, Richard
+"\|\fBemacs\fP\|" entry in \fBinfo\fP; \fIGNU Emacs Manual\fP, Richard
Stallman.
.br
.BR cxref ( 1 ),
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog.1
index 2fd0d2c3eba..2fd0d2c3eba 100644
--- a/doc/misc/ChangeLog
+++ b/doc/misc/ChangeLog.1
diff --git a/doc/misc/Makefile.in b/doc/misc/Makefile.in
index e2de06d1636..1f21f829380 100644
--- a/doc/misc/Makefile.in
+++ b/doc/misc/Makefile.in
@@ -20,7 +20,7 @@
SHELL = @SHELL@
# Where to find the source code. $(srcdir) will be the doc/misc subdirectory
-# of the source tree. This is set by configure's `--srcdir' option.
+# of the source tree. This is set by configure's '--srcdir' option.
srcdir=@srcdir@
## Where the output files go.
diff --git a/doc/misc/auth.texi b/doc/misc/auth.texi
index 7a2fd9b2e35..177f7ccada0 100644
--- a/doc/misc/auth.texi
+++ b/doc/misc/auth.texi
@@ -110,11 +110,11 @@ The @code{user} is the user name. It's known as @var{:user} in
You can use spaces inside a password or other token by surrounding the
token with either single or double quotes.
-You can use single quotes inside a password or other token by
+You can use apostrophes inside a password or other token by
surrounding it with double quotes, e.g., @code{"he'llo"}. Similarly you
can use double quotes inside a password or other token by surrounding
-it with single quotes, e.g., @code{'he"llo'}. You can't mix both (so a
-password or other token can't have both single and double quotes).
+it with apostrophes, e.g., @code{'he"llo'}. You can't mix both (so a
+password or other token can't have both apostrophes and double quotes).
All this is optional. You could just say (but we don't recommend it,
we're just showing that it's possible)
diff --git a/doc/misc/autotype.texi b/doc/misc/autotype.texi
index 65cbae523ff..51880d8afe9 100644
--- a/doc/misc/autotype.texi
+++ b/doc/misc/autotype.texi
@@ -331,8 +331,9 @@ character is part of a word. If you want pairing to occur even then, set
@vindex skeleton-pair-alist
Pairing is possible for all visible characters. By default the
parenthesis @samp{(}, the square bracket @samp{[}, the brace
-@samp{@{}, the pointed bracket @samp{<} and the backquote @samp{`} all
-pair with the symmetrical character. All other characters pair
+@samp{@{} and the pointed bracket @samp{<} all
+pair with the symmetrical character, and the grave accent @samp{`}
+pairs with the apostrophe @samp{'}. All other characters pair
themselves. This behavior can be modified by the variable
@code{skeleton-pair-alist}. This is in fact an alist of skeletons
(@pxref{Skeleton Language}), with the first part of each sublist
@@ -341,8 +342,8 @@ but since pairs don't need the @code{str} element, this is ignored.
Some modes have bound the command @code{skeleton-pair-insert-maybe}
to relevant keys. These modes also configure the pairs as
-appropriate. For example, when typing english prose, you'd expect the
-backquote (@samp{`}) to pair with the quote (@samp{'}), while in Shell
+appropriate. For example, when typing @TeX{} input, you'd expect the
+grave accent (@samp{`}) to pair with the apostrophe (@samp{'}), while in Shell
script mode it must pair to itself. They can also inhibit pairing in
certain contexts. For example an escaped character stands for itself.
@@ -626,7 +627,7 @@ See the commentary in @file{tempo.el} for more information on using the
Tempo package.
@node Hippie Expand
-@chapter `Hippie' Expansion
+@chapter ``Hippie'' Expansion
@findex hippie-expand
@kindex M-/
diff --git a/doc/misc/calc.texi b/doc/misc/calc.texi
index 62a81b81ec7..84eb274bb49 100644
--- a/doc/misc/calc.texi
+++ b/doc/misc/calc.texi
@@ -12,9 +12,9 @@
@c The following macros are used for conditional output for single lines.
@c @texline foo
-@c `foo' will appear only in TeX output
+@c 'foo' will appear only in TeX output
@c @infoline foo
-@c `foo' will appear only in non-TeX output
+@c 'foo' will appear only in non-TeX output
@c @expr{expr} will typeset an expression;
@c $x$ in TeX, @samp{x} otherwise.
@@ -431,7 +431,7 @@ Type @kbd{2 @key{RET} 3 + Q} to compute
@noindent
Type @kbd{P 2 ^} to compute
@texline @math{\pi^2 = 9.86960440109}.
-@infoline the value of `pi' squared, 9.86960440109.
+@infoline the value of @cpi{} squared, 9.86960440109.
@noindent
Type @key{TAB} to exchange the order of these two results.
@@ -455,7 +455,7 @@ Type @kbd{' sqrt(2+3) @key{RET}} to compute
@noindent
Type @kbd{' pi^2 @key{RET}} to enter
@texline @math{\pi^2}.
-@infoline `pi' squared.
+@infoline @cpi{} squared.
To evaluate this symbolic formula as a number, type @kbd{=}.
@noindent
@@ -1241,7 +1241,7 @@ finished in two weeks.
@c [tutorial]
@ifinfo
-@c This node is accessed by the `C-x * t' command.
+@c This node is accessed by the 'C-x * t' command.
@node Interactive Tutorial, Tutorial, Getting Started, Top
@chapter Tutorial
@@ -2164,7 +2164,7 @@ the prefix.
One more way to correct an error is by editing the stack entries.
The actual Stack buffer is marked read-only and must not be edited
-directly, but you can press @kbd{`} (the backquote or accent grave)
+directly, but you can press @kbd{`} (grave accent)
to edit a stack entry.
Try entering @samp{3.141439} now. If this is supposed to represent
@@ -2471,7 +2471,7 @@ We don't have enough space here to show all the zeros! They won't
fit on a typical screen, either, so you will have to use horizontal
scrolling to see them all. Press @kbd{<} and @kbd{>} to scroll the
stack window left and right by half its width. Another way to view
-something large is to press @kbd{`} (back-quote) to edit the top of
+something large is to press @kbd{`} (grave accent) to edit the top of
stack in a separate window. (Press @kbd{C-c C-c} when you are done.)
You can enter non-decimal numbers using the @kbd{#} symbol, too.
@@ -3658,7 +3658,7 @@ fast! (But of course if you use @kbd{t .} you will lose the ability
to get old vectors back using the @kbd{t y} command.)
An easy way to view a full vector when @kbd{v .} mode is active is
-to press @kbd{`} (back-quote) to edit the vector; editing always works
+to press @kbd{`} (grave accent) to edit the vector; editing always works
with the full, unabbreviated value.
@cindex Least-squares for fitting a straight line
@@ -6012,7 +6012,7 @@ fix, though:
@end smallexample
@noindent
-When we type @kbd{Z `} (that's a back-quote character), Calc saves
+When we type @kbd{Z `} (that's a grave accent), Calc saves
its mode settings and the contents of the ten ``quick variables''
for later reference. When we type @kbd{Z '} (that's an apostrophe
now), Calc restores those saved values. Thus the @kbd{p 4} and
@@ -9042,7 +9042,7 @@ matrix (or other value) to the power @expr{n} in only
@texline @math{\log_2 n}
@infoline @expr{log(n,2)}
steps. For example, this program can compute the 1000th Fibonacci
-number (a 209-digit integer!) in about 10 steps; even though the
+number (a 209-digit integer!)@: in about 10 steps; even though the
@kbd{Z < ... Z >} solution had much simpler steps, it would have
required so many steps that it would not have been practical.
@@ -10029,7 +10029,7 @@ this would be to fix a typo, as the full Emacs cursor motion and editing
keys are available during algebraic entry but not during numeric entry.
In the same vein, during either numeric or algebraic entry you can
-press @kbd{`} (backquote) to switch to @code{calc-edit} mode, where
+press @kbd{`} (grave accent) to switch to @code{calc-edit} mode, where
you complete your half-finished entry in a separate buffer.
@xref{Editing Stack Entries}.
@@ -10174,7 +10174,7 @@ an ASCII character.
For example, the quoted character @samp{"x"} produces the vector
result @samp{[120]} (because 120 is the ASCII code of the lower-case
-`x'; @pxref{Strings}). Since this is a vector, not an integer, it
+``x''; @pxref{Strings}). Since this is a vector, not an integer, it
is displayed only according to the current mode settings. But
running Quick Calc again and entering @samp{120} will produce the
result @samp{120 (16#78, 8#170, x)} which shows the number in its
@@ -11098,12 +11098,12 @@ noon GMT@.) Julian day numbering is largely used in astronomy.
@cindex Unix time format
The Unix operating system measures time as an integer number of
seconds since midnight, Jan 1, 1970. To convert a Calc date
-value into a Unix time stamp, first subtract 719164 (the code
+value into a Unix time stamp, first subtract 719163 (the code
for @samp{<Jan 1, 1970>}), then multiply by 86400 (the number of
seconds in a day) and press @kbd{R} to round to the nearest
integer. If you have a date form, you can simply subtract the
day @samp{<Jan 1, 1970>} instead of unpacking and subtracting
-719164. Likewise, divide by 86400 and add @samp{<Jan 1, 1970>}
+719163. Likewise, divide by 86400 and add @samp{<Jan 1, 1970>}
to convert from Unix time to a Calc date form. (Note that
Unix normally maintains the time in the GMT time zone; you may
need to subtract five hours to get New York time, or eight hours
@@ -11871,10 +11871,10 @@ the stack objects at the levels determined by the point and the mark.
@cindex Editing the stack with Emacs
The @kbd{`} (@code{calc-edit}) command creates a temporary buffer
(@file{*Calc Edit*}) for editing the top-of-stack value using regular
-Emacs commands. Note that @kbd{`} is a backquote, not a quote. With a
-numeric prefix argument, it edits the specified number of stack entries
-at once. (An argument of zero edits the entire stack; a negative
-argument edits one specific stack entry.)
+Emacs commands. Note that @kbd{`} is a grave accent, not an apostrophe.
+With a numeric prefix argument, it edits the specified number of stack
+entries at once. (An argument of zero edits the entire stack; a
+negative argument edits one specific stack entry.)
When you are done editing, press @kbd{C-c C-c} to finish and return
to Calc. The @key{RET} and @key{LFD} keys also work to finish most
@@ -13609,11 +13609,11 @@ Weekday: ``Sunday'' for Sunday.
@item Iww
Week number: ISO 8601 week number, ``W01'' for week 1.
@item d
-Day of year: ``34'' for Feb. 3.
+Day of year: ``34'' for Feb.@: 3.
@item ddd
-Day of year: ``034'' for Feb. 3.
+Day of year: ``034'' for Feb.@: 3.
@item bdd
-Day of year: `` 34'' for Feb. 3.
+Day of year: `` 34'' for Feb.@: 3.
@item T
Letter: Literal ``T''.
@item h
@@ -19228,7 +19228,7 @@ non-empty sets, respectively.
The @kbd{k p} (@code{calc-prime-test}) command checks if the integer on
the top of the stack is prime. For integers less than eight million, the
answer is always exact and reasonably fast. For larger integers, a
-probabilistic method is used (see Knuth vol. II, section 4.5.4, algorithm P).
+probabilistic method is used (see Knuth vol.@: II, section 4.5.4, algorithm P).
The number is first checked against small prime factors (up to 13). Then,
any number of iterations of the algorithm are performed. Each step either
discovers that the number is non-prime, or substantially increases the
@@ -27860,14 +27860,20 @@ while typing @kbd{u c au/yr @key{RET}} produces
If the units you request are inconsistent with the original units, the
number will be converted into your units times whatever ``remainder''
-units are left over. (This can be disabled; @pxref{Customizing Calc}.)
-For example, converting @samp{55 mph} into acres
-produces @samp{6.08e-3 acre / m s}. (Recall that multiplication binds
-more strongly than division in Calc formulas, so the units here are
-acres per meter-second.) Remainder units are expressed in terms of
+units are left over. For example, converting @samp{55 mph} into acres
+produces @samp{6.08e-3 acre / (m s)}. Remainder units are expressed in terms of
``fundamental'' units like @samp{m} and @samp{s}, regardless of the
input units.
+@kindex u n
+@pindex calc-convert-exact-units
+If you intend that your new units be consistent with the original
+units, the @kbd{u n} (@code{calc-convert-exact-units}) command will
+check the units before the conversion. For example, to change
+@samp{mi/hr} to @samp{km/hr}, you could type @kbd{u c km @key{RET}},
+but @kbd{u n km @key{RET}} would signal an error.
+You would need to type @kbd{u n km/hr @key{RET}}.
+
One special exception is that if you specify a single unit name, and
a compatible unit appears somewhere in the units expression, then
that compatible unit will be converted to the new unit and the
@@ -31842,7 +31848,7 @@ local variables inside the macro should not affect any variables
outside the macro. The @kbd{Z `} (@code{calc-kbd-push}) and @kbd{Z '}
(@code{calc-kbd-pop}) commands give you both of these capabilities.
-When you type @kbd{Z `} (with a backquote or accent grave character),
+When you type @kbd{Z `} (with a grave accent),
the values of various mode settings are saved away. The ten ``quick''
variables @code{q0} through @code{q9} are also saved. When
you type @w{@kbd{Z '}} (with an apostrophe), these values are restored.
@@ -34278,7 +34284,7 @@ you can call it again with the same @var{n} to get a greater certainty;
@defun to-simple-fraction f
If @var{f} is a floating-point number which can be represented exactly
-as a small rational number. return that number, else return @var{f}.
+as a small rational number, return that number, else return @var{f}.
For example, 0.75 would be converted to 3:4. This function is very
fast.
@end defun
@@ -35684,19 +35690,6 @@ as @samp{a/(b*c)}. If @code{calc-multiplication-has-precedence} is
of @code{calc-multiplication-has-precedence} is @code{t}.
@end defvar
-@defvar calc-ensure-consistent-units
-When converting units, the variable @code{calc-ensure-consistent-units}
-determines whether or not the target units need to be consistent with the
-original units. If @code{calc-ensure-consistent-units} is @code{nil}, then
-the target units don't need to have the same dimensions as the original units;
-for example, converting @samp{100 ft/s} to @samp{m} will produce @samp{30.48 m/s}.
-If @code{calc-ensure-consistent-units} is non-@code{nil}, then the target units
-need to have the same dimensions as the original units; for example, converting
-@samp{100 ft/s} to @samp{m} will result in an error, since @samp{ft/s} and @samp{m}
-have different dimensions. The default value of @code{calc-ensure-consistent-units}
-is @code{nil}.
-@end defvar
-
@defvar calc-context-sensitive-enter
The commands @code{calc-enter} and @code{calc-pop} will typically
duplicate the top of the stack. If
@@ -36497,6 +36490,7 @@ keystrokes are not listed in this summary.
@r{ defn@: u d @:unit, descr @: @:calc-define-unit@:}
@r{ @: u e @: @: @:calc-explain-units@:}
@r{ @: u g @:unit @: @:calc-get-unit-definition@:}
+@r{ @: u n @:units @: 18 @:calc-convert-exact-units@:}
@r{ @: u p @: @: @:calc-permanent-units@:}
@r{ a@: u r @: @: @:calc-remove-units@:}
@r{ a@: u s @: @: @:usimplify@:(a)}
@@ -36661,6 +36655,8 @@ keystrokes are not listed in this summary.
@end format
+@c Avoid '@:' from here on, as it now means \sumsep in tex mode.
+
@noindent
NOTES
@@ -36799,9 +36795,9 @@ The @expr{op} prompt can be answered with the key sequence for the
desired function, or with @kbd{x} or @kbd{z} followed by a function name,
or with @kbd{$} to take a formula from the top of the stack, or with
@kbd{'} and a typed formula. In the last two cases, the formula may
-be a nameless function like @samp{<#1+#2>} or @samp{<x, y : x+y>}, or it
-may include @kbd{$}, @kbd{$$}, etc.@: (where @kbd{$} will correspond to the
-last argument of the created function), or otherwise you will be
+be a nameless function like @samp{<#1+#2>} or @samp{<x, y : x+y>}; or it
+may include @kbd{$}, @kbd{$$}, etc., where @kbd{$} will correspond to the
+last argument of the created function; or otherwise you will be
prompted for an argument list. The number of vectors popped from the
stack by @kbd{V M} depends on the number of arguments of the function.
diff --git a/doc/misc/cc-mode.texi b/doc/misc/cc-mode.texi
index 068706a9158..b86df189bd8 100644
--- a/doc/misc/cc-mode.texi
+++ b/doc/misc/cc-mode.texi
@@ -88,7 +88,7 @@ the second with them pointing to the XEmacs manuals.
@c The following four macros generate the filenames and titles of the
@c main (X)Emacs manual and the Elisp/Lispref manual. Leave the
-@c Texinfo variable `XEMACS' unset to generate a GNU Emacs version, set it
+@c Texinfo variable 'XEMACS' unset to generate a GNU Emacs version, set it
@c to generate an XEmacs version, e.g., with
@c "makeinfo -DXEMACS cc-mode.texi".
@ifset XEMACS
@@ -1156,7 +1156,7 @@ When this is enabled (which it normally is), indentation commands such
as @kbd{C-j} indent lines of code according to their syntactic
structure. Otherwise, a line is simply indented to the same level as
the previous one and @kbd{@key{TAB}} adjusts the indentation in steps
-of `c-basic-offset'.
+of @code{c-basic-offset}.
@end table
Full details on how these minor modes work are at @ref{Electric Keys},
@@ -2045,7 +2045,7 @@ conflict).
The value may also be an association list to specify different comment
styles for different languages. The symbol for the major mode is then
looked up in the alist, and the value of that element is interpreted as
-above if found. If it isn't found then the symbol `other' is looked up
+above if found. If it isn't found then the symbol @code{other} is looked up
and its value is used instead.
The default value for @code{c-doc-comment-style} is
@@ -3299,7 +3299,7 @@ only the symbol @code{after}, then the brace hangs on the right side
of the line, as in:
@example
-// here, open braces always `hang'
+// here, open braces always 'hang'
void spam( int i ) @{
if( i == 7 ) @{
dosomething(i);
@@ -3992,7 +3992,7 @@ Hitting @kbd{C-c C-s} on line 4 gives us:
@cindex substatement block
@noindent
which tells us that this is a brace that @emph{opens} a substatement
-block. @footnote{A @dfn{substatement} is the line after a
+block.@footnote{A @dfn{substatement} is the line after a
conditional statement, such as @code{if}, @code{else}, @code{while},
@code{do}, @code{switch}, etc. A @dfn{substatement
block} is a brace block following one of these conditional statements.}
@@ -4765,10 +4765,10 @@ covered are illustrated by this C++ example:
2: const
3: @{
4: /* this line starts a multiline
- 5: * comment. This line should get `c' syntax */
+ 5: * comment. This line should get 'c' syntax */
6:
7: char* a_multiline_string = "This line starts a multiline \
- 8: string. This line should get `string' syntax.";
+ 8: string. This line should get 'string' syntax.";
9:
10: note:
11: @{
@@ -7174,7 +7174,7 @@ Emacs Lisp code that triggers the bug and include it in your report.
@cindex bug report mailing list
Bug reports should be sent to @email{bug-cc-mode@@gnu.org}. You can
-also send other questions and suggestions (kudos? @t{;-)} to that
+also send other questions and suggestions (kudos?@: @t{;-)} to that
address. It's a mailing list which you can join or browse an archive
of; see the web site at @uref{http://cc-mode.sourceforge.net/} for
further details.
diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi
index c6076babacd..00e47b9f742 100644
--- a/doc/misc/cl.texi
+++ b/doc/misc/cl.texi
@@ -570,20 +570,20 @@ When @file{foo.el} is compiled, these variables will be set during
the compilation itself:
@example
-foo1 foo3 foo5 foo7 ; `compile'
+foo1 foo3 foo5 foo7 ; 'compile'
@end example
When @file{foo.elc} is loaded, these variables will be set:
@example
-foo2 foo3 foo6 foo7 ; `load'
+foo2 foo3 foo6 foo7 ; 'load'
@end example
And if @file{foo.el} is loaded uncompiled, these variables will
be set:
@example
-foo4 foo5 foo6 foo7 ; `eval'
+foo4 foo5 foo6 foo7 ; 'eval'
@end example
If these seven @code{cl-eval-when}s had been, say, inside a @code{defun},
@@ -978,7 +978,7 @@ a
The generalized variable @code{buffer-substring}, listed above,
also works in this way by replacing a portion of the current buffer.
-@c FIXME? Also `eq'? (see cl-lib.el)
+@c FIXME? Also 'eq'? (see cl-lib.el)
@c Currently commented out in cl.el.
@ignore
diff --git a/doc/misc/ebrowse.texi b/doc/misc/ebrowse.texi
index 943b98df96f..1b240079b70 100644
--- a/doc/misc/ebrowse.texi
+++ b/doc/misc/ebrowse.texi
@@ -973,7 +973,7 @@ displayed in the member buffer.
@cindex @code{public} members
@item F a u
This command toggles the display of @code{public} members. The
-@samp{a} stands for `access'.
+@samp{a} stands for ``access''.
@cindex @code{protected} members
@item F a o
diff --git a/doc/misc/ede.texi b/doc/misc/ede.texi
index ecf1d0380c8..dfe22b7b054 100644
--- a/doc/misc/ede.texi
+++ b/doc/misc/ede.texi
@@ -868,7 +868,7 @@ It would look like this:
(defun MY-ROOT-FCN ()
"Return the root fcn for `default-directory'"
- ;; You might be able to use `ede-cpp-root-project-root'
+ ;; You might be able to use 'ede-cpp-root-project-root'
;; and not write this at all.
)
@@ -1856,7 +1856,7 @@ Preprocessor symbols will be used while parsing your files.
These macros might be passed in through the command line compiler, or
are critical symbols derived from header files. Providing header files
macro values through this slot improves accuracy and performance.
-Use `:spp-files' to use these files directly.
+Use @code{:spp-files} to use these files directly.
@item :spp-files
Type: @code{list} @*
@@ -2799,7 +2799,7 @@ Default Value: @code{t}
Non @code{nil} means the rule created is part of the all target.
Setting this to @code{nil} creates the rule to build this item, but does not
-include it in the ALL`all:' rule.
+include it in the @code{all:} rule.
@item :configuration-variables
Type: @code{list} @*
@@ -3457,7 +3457,7 @@ Return the variable name for @var{THIS}'s sources.
@deffn Method ede-proj-makefile-insert-dist-dependencies :AFTER this
Insert any symbols that the DIST rule should depend on.
-Texinfo files want to insert generated `.info' files.
+Texinfo files want to insert generated @file{.info} files.
Argument @var{THIS} is the target which needs to insert an info file.
@end deffn
@@ -3473,7 +3473,7 @@ files in the project.
@deffn Method ede-proj-makefile-insert-dist-filepatterns :AFTER this
Insert any symbols that the DIST rule should depend on.
-Texinfo files want to insert generated `.info' files.
+Texinfo files want to insert generated @file{.info} files.
Argument @var{THIS} is the target which needs to insert an info file.
@end deffn
diff --git a/doc/misc/ediff.texi b/doc/misc/ediff.texi
index 36c6ae24b12..de54f288146 100644
--- a/doc/misc/ediff.texi
+++ b/doc/misc/ediff.texi
@@ -556,9 +556,9 @@ Makes the next difference region current.
@kindex j
Makes the very first difference region current.
-@kbd{-j} makes the last region current. Typing a number, N, and then `j'
+@kbd{-j} makes the last region current. Typing a number, N, and then @kbd{j}
makes the difference region N current. Typing @minus{}N (a negative number) then
-`j' makes current the region Last @minus{} N.
+@kbd{j} makes current the region Last @minus{} N.
@item ga
@kindex ga
@@ -615,8 +615,8 @@ no longer current, due to user editing.
@item m
@kindex m
Displays the current Ediff session in a frame as wide as the physical
-display. This is useful when comparing files side-by-side. Typing `m' again
-restores the original size of the frame.
+display. This is useful when comparing files side-by-side.
+Typing @kbd{m} again restores the original size of the frame.
@item |
@kindex |
@@ -675,7 +675,7 @@ Tell Ediff to skip over regions that disagree among themselves only in the
amount of white space and line breaks.
Even though such regions will be skipped over, you can still jump to any
-one of them by typing the region number and then `j'. Typing @kbd{##}
+one of them by typing the region number and then @kbd{j}. Typing @kbd{##}
again puts Ediff back in the original state.
@item #c
@@ -695,7 +695,8 @@ and @code{ediff-ignore-case}, which are explained elsewhere.
Ediff works hard to ameliorate the effects of boredom in the workplace...
Quite often differences are due to identical replacements (e.g., the word
-`foo' is replaced with the word `bar' everywhere). If the number of regions
+``foo'' is replaced with the word ``bar'' everywhere). If the number
+of regions
with such boring differences exceeds your tolerance threshold, you may be
tempted to tell Ediff to skip these regions altogether (you will still be able
to jump to them via the command @kbd{j}). The above commands, @kbd{#h}
@@ -750,7 +751,7 @@ You can then restart any of these sessions by either clicking on a session
record or by putting the cursor over it and then typing the return key.
(Some poor souls leave so many active Ediff sessions around that they lose
-track of them completely... The `R' command is designed to save these
+track of them completely... The @kbd{R} command is designed to save these
people from the recently discovered Ediff Proficiency Syndrome.)
Typing @kbd{R} brings up Ediff Registry only if it is typed into an Ediff
@@ -800,8 +801,8 @@ is that this difference region in buffer A is as old as that in the
ancestor buffer, so the contents of that region in buffer B represents real
change.
-You may want to ignore such `obvious' merges and concentrate on difference
-regions where both files `clash' with the ancestor, since this means that
+You may want to ignore such ``obvious'' merges and concentrate on difference
+regions where both files ``clash'' with the ancestor, since this means that
two different people have been changing this region independently and they
had different ideas on how to do this.
@@ -818,10 +819,10 @@ precisely this.
To be more precise, this toggles the check for whether the current merge is
identical to its default setting, as originally decided by Ediff. For
-instance, if Ediff is merging according to the `combined' policy, then the
+instance, if Ediff is merging according to the ``combined'' policy, then the
merge region is skipped over if it is different from the combination of the
regions in buffers A and B@. (Warning: swapping buffers A and B will confuse
-things in this respect.) If the merge region is marked as `prefer-A' then
+things in this respect.) If the merge region is marked as ``prefer-A'' then
this region will be skipped if it differs from the current difference
region in buffer A, etc.
@@ -851,7 +852,7 @@ corresponding region from buffer B.
@item s
@kindex s
Causes the merge window shrink to its minimum size, thereby exposing as much
-of the variant buffers as possible. Typing `s' again restores
+of the variant buffers as possible. Typing @kbd{s} again restores
the original size of that window.
With a positive prefix argument, this command enlarges the merge window.
@@ -1164,7 +1165,7 @@ customization and faces) can be done by putting appropriate lines in
@file{.Xdefaults}, @file{.xrdb}, or whatever X resource file is in use.
With respect to the latter, please note that the X resource
-for Ediff customization is `Ediff', @emph{not} `emacs'.
+for Ediff customization is ``Ediff'', @emph{not} ``emacs''.
@xref{Window and Frame Configuration},
@xref{Highlighting Difference Regions}, for further details. Please also
refer to Emacs manual for the information on how to set Emacs X resources.
@@ -1510,7 +1511,7 @@ We shall call these regular expressions @var{regexp-A}, @var{regexp-B} and
@var{regexp-C}.
Ediff will then start stepping through only those difference regions
where the region in buffer A matches @var{regexp-A} and/or the region in
-buffer B matches @var{regexp-B}, etc. Whether `and' or `or' will be used
+buffer B matches @var{regexp-B}, etc. Whether ``and'' or ``or'' will be used
depends on how you respond to a question.
When scanning difference regions for the aforesaid regular expressions,
@@ -1888,10 +1889,11 @@ Otherwise, you may have to tune the values of the variables
@item ediff-patch-options
Options to pass to @code{ediff-patch-program}.
-Note: the `-b' and `-z' options should be specified in
-`ediff-backup-specs', not in @code{ediff-patch-options}.
+Note: the @option{-b} and @option{-z} options should be specified in
+@code{ediff-backup-specs}, not in @code{ediff-patch-options}.
-It is recommended to pass the `-f' option to the patch program, so it won't
+It is recommended to pass the @option{-f} option to the patch program,
+so it won't
ask questions. However, some implementations don't accept this option, in
which case the default value of this variable should be changed.
@@ -1901,19 +1903,23 @@ Backup extension used by the patch program. Must be specified, even if
@item ediff-backup-specs
Backup directives to pass to the patch program.
Ediff requires that the old version of the file (before applying the patch)
-is saved in a file named @file{the-patch-file.extension}. Usually
-`extension' is `.orig', but this can be changed by the user, and may also be
+is saved in a file named @file{the-patch-file.@var{extension}}.
+Usually @var{extension} is @file{.orig}, but this can be changed by
+the user, and may also be
system-dependent. Therefore, Ediff needs to know the backup extension used
by the patch program.
-Some versions of the patch program let the user specify `-b backup-extension'.
-Other versions only permit `-b', which (usually) assumes the extension `.orig'.
-Yet others force you to use `-z<backup-extension>'.
+Some versions of the patch program let the user specify @option{-b
+@var{extension}} to specify a backup file name extension. Other
+versions only permit @option{-b}, which (usually) assumes the
+extension @file{.orig}. Yet others force you to use
+@option{-z@var{extension}}.
-Note that both `ediff-backup-extension' and `ediff-backup-specs' must be
-properly set. If your patch program takes the option `-b', but not
-`-b extension', the variable `ediff-backup-extension' must still
-be set so Ediff will know which extension to use.
+Both @code{ediff-backup-extension} and @var{ediff-backup-specs} must
+be properly set. If your patch program takes the option @option{-b},
+but not @option{-b @var{extension}}, the variable
+@code{ediff-backup-extension} must still be set so Ediff will know
+which extension to use.
@item ediff-custom-diff-program
@itemx ediff-custom-diff-options
@@ -2105,7 +2111,7 @@ typing @kbd{s}. This change is temporary, until Ediff finds a reason to
redraw the screen. Typing @kbd{s} again restores the original window size.
With a positive prefix argument, the @kbd{s} command will make the merge
-window slightly taller. This change is persistent. With `@kbd{-}' or
+window slightly taller. This change is persistent. With ``@kbd{-}'' or
with a negative prefix argument, the command @kbd{s} makes the merge
window slightly shorter. This change also persistent.
diff --git a/doc/misc/edt.texi b/doc/misc/edt.texi
index aa0ef63e1d7..c72aca27ef9 100644
--- a/doc/misc/edt.texi
+++ b/doc/misc/edt.texi
@@ -710,7 +710,7 @@ functions are bound to @key{F7}, @key{F8}, @kbd{GOLD-F8}, @key{F9},
@item
The original EDT emulation package set up many default regular and GOLD
-bindings. We tried to preserve most (but not all!) of these, so users
+bindings. We tried to preserve most (but not all!)@: of these, so users
of the original emulation package will feel more at home.
Nevertheless, there are still many GOLD key sequences which are not
diff --git a/doc/misc/efaq-w32.texi b/doc/misc/efaq-w32.texi
index ab5eb066918..566a6d75886 100644
--- a/doc/misc/efaq-w32.texi
+++ b/doc/misc/efaq-w32.texi
@@ -22,7 +22,7 @@ Copyright @copyright{} 2008, 2010-2015 Free Software Foundation, Inc.
@quotation
This list of frequently asked questions about GNU Emacs on MS Windows
with answers (``FAQ'') may be translated into other languages,
-transformed into other formats (e.g. Texinfo, Info, WWW), and updated
+transformed into other formats (e.g., Texinfo, Info, WWW), and updated
with new information.
The same conditions apply to any derivative of the FAQ as apply to the FAQ
@@ -594,7 +594,7 @@ Subject: Re: Re[2]: problem with caps/ctrl swap on NT 4.0
@smallexample
It's a binary value that lets you map keystrokes in the low-level keyboard
drivers in NT. As a result you don't have to worry about applications
-bypassing mappings that you've done at a higher level (i.e. it just works).
+bypassing mappings that you've done at a higher level (i.e., it just works).
Here's the format of the value:
@@ -674,7 +674,7 @@ The minor mode @code{transient-mark-mode} changes the behavior of
the mark in two ways. First, it distinguishes between an active mark
that has just been defined or reactivated, and an inactive mark. When
the mark is active, some commands that normally act on lines, words,
-buffers etc. will instead act on the region. An inactive mark needs
+buffers, etc., will instead act on the region. An inactive mark needs
to be reactivated to operate on it, unless @code{mark-even-if-inactive}
is set. Secondly, @code{transient-mark-mode} also highlights the
region when it is active, providing the same visual clue that you get
@@ -2029,8 +2029,8 @@ select it. For arguments, use @option{+$(CurLine)}
(the quotes around FilePath handle paths with spaces in them). Set the
Menu Text to say "Em&acs". The @option{+$(CurLine)} will set point in
Emacs to the same line as the cursor position in VC++. The ampersand
-in the word @code{Em&acs} allows you to select emacs from the keyboard. (E
-is already used for the OLE control test container.)
+in the word @code{Em&acs} allows you to select emacs from the keyboard.
+(E is already used for the OLE control test container.)
You should now be able to go to any source file in your project. Then,
use the pull-down menu @code{Tools->Emacs}. The active file in your
diff --git a/doc/misc/efaq.texi b/doc/misc/efaq.texi
index cdf944041b6..9fc8cfcd33c 100644
--- a/doc/misc/efaq.texi
+++ b/doc/misc/efaq.texi
@@ -3670,7 +3670,7 @@ for deleting the previous character outside of Emacs. On many Unix
systems, this command will remap @key{DEL}:
@example
-stty erase `^?'
+stty erase '^?'
@end example
@item
@@ -3766,8 +3766,8 @@ You can swap two keys (or key sequences) by using the
into @key{DEL} and @key{DEL} to @kbd{C-h}, use
@lisp
-(keyboard-translate ?\C-h ?\C-?) ; translate `C-h' to DEL
-(keyboard-translate ?\C-? ?\C-h) ; translate DEL to `C-h'.
+(keyboard-translate ?\C-h ?\C-?) ; translate 'C-h' to DEL
+(keyboard-translate ?\C-? ?\C-h) ; translate DEL to 'C-h'.
@end lisp
@noindent
diff --git a/doc/misc/eieio.texi b/doc/misc/eieio.texi
index f17fd31a7f2..5d1a8cf0702 100644
--- a/doc/misc/eieio.texi
+++ b/doc/misc/eieio.texi
@@ -140,13 +140,13 @@ constructor. The constructor is a function with the same name as your
class which returns a new instance of that class. Here is an example:
@example
-(setq rec (record "Eric" :name "Eric" :birthday "June" :phone "555-5555"))
+(setq rec (record :name "Eric" :birthday "June" :phone "555-5555"))
@end example
@noindent
-The first argument is the name given to this instance. Each instance
-is given a name, so different instances can be easily distinguished
-when debugging.
+For backward compatibility reasons, the first argument can be a string (a name
+given to this instance). Each instance used to be given a name, so different
+instances could be easily distinguished when debugging.
It can be a bit repetitive to also have a :name slot. To avoid doing
this, it is sometimes handy to use the base class @code{eieio-named}.
@@ -233,7 +233,7 @@ first argument, and this one must be an @eieio{} type.
@item Support for metaclasses
There is just one default metaclass, @code{eieio-default-superclass},
and you cannot define your own. The @code{:metaclass} tag in
-@code{defclass} is ignored. Also, functions like `find-class', which
+@code{defclass} is ignored. Also, functions like @code{find-class}, which
should return instances of the metaclass, behave differently in
@eieio{} in that they return symbols or plain structures instead.
@@ -244,7 +244,7 @@ EIEIO does not support it.
This CLOS method tag is non-functional.
@item :default-initargs in @code{defclass}
-Each slot has an @code{:initarg} tag, so this is not really necessary.
+Each slot can have an @code{:initform} tag, so this is not really necessary.
@item Mock object initializers
Each class contains a mock object used for fast initialization of
@@ -266,10 +266,9 @@ To create a new class, use the @code{defclass} macro:
@defmac defclass class-name superclass-list slot-list &rest options-and-doc
Create a new class named @var{class-name}. The class is represented
-by a self-referential symbol with the name @var{class-name}. @eieio{}
-stores the structure of the class as a symbol property of
-@var{class-name} (@pxref{Symbol Components,,,elisp,GNU Emacs Lisp
-Reference Manual}).
+by a symbol with the name @var{class-name}. @eieio{} stores the structure of
+the class as a symbol property of @var{class-name} (@pxref{Symbol
+Components,,,elisp,GNU Emacs Lisp Reference Manual}).
The @var{class-name} symbol's variable documentation string is a
modified version of the doc string found in @var{options-and-doc}.
@@ -292,17 +291,12 @@ or @code{:protection}.
@end defmac
@noindent
-Whenever defclass is used to create a new class, two predicates are
-created for it, named @code{@var{CLASS-NAME}-p} and
-@code{@var{CLASS-NAME}-child-p}:
+Whenever defclass is used to create a new class, a predicate is
+created for it, named @code{@var{CLASS-NAME}-p}:
@defun CLASS-NAME-p object
-Return @code{t} if @var{OBJECT} is of the class @var{CLASS-NAME}.
-@end defun
-
-@defun CLASS-NAME-child-p object
-Return @code{t} if @var{OBJECT} is of the class @var{CLASS-NAME},
-or is of a subclass of @var{CLASS-NAME}.
+Return non-@code{nil} if and only if @var{OBJECT} is of the class
+@var{CLASS-NAME}.
@end defun
@defvar eieio-error-unsupported-class-tags
@@ -418,7 +412,7 @@ Valid tags are:
@table @code
@item :initarg
A symbol that can be used in the argument list of the constructor to
-specify a value for the new instance being created.
+specify a value for this slot of the new instance being created.
A good symbol to use for initarg is one that starts with a colon @code{:}.
@@ -428,13 +422,13 @@ The slot specified like this:
@end example
could then be initialized to the number 1 like this:
@example
- (myobject "name" :myslot 1)
+ (myobject :myslot 1)
@end example
@xref{Making New Objects}.
@item :initform
-A expression used as the default value for this slot.
+An expression used as the default value for this slot.
If @code{:initform} is left out, that slot defaults to being unbound.
It is an error to reference an unbound slot, so if you need
@@ -445,19 +439,13 @@ Use @code{slot-boundp} to test if a slot is unbound
(@pxref{Predicates}). Use @code{slot-makeunbound} to set a slot to
being unbound after giving it a value (@pxref{Accessing Slots}).
-The value passed to initform is automatically quoted. Thus,
+The value passed to initform used to be automatically quoted. Thus,
@example
:initform (1 2 3)
@end example
-appears as the specified list in the default object.
-A symbol that is a function like this:
-@example
-:initform +
-@end example
-will set the initial value as that symbol.
-
-After a class has been created with @code{defclass}, you can change
-that default value with @code{oset-default}. @ref{Accessing Slots}.
+will use the list as a value. This is incompatible with CLOS (which would
+signal an error since 1 is not a valid function) and will likely change in the
+future, so better quote your initforms if they're just values.
@item :type
An unquoted type specifier used to validate data set into this slot.
@@ -669,7 +657,7 @@ can do any valid Lispy thing you want with it, such as
Example of creating an object from a class:
@example
-(record "test" :value 3 :reference nil)
+(record :value 3 :reference nil)
@end example
@end defun
@@ -692,15 +680,6 @@ for each slot. For example:
(make-instance @code{'foo} @code{:slot1} value1 @code{:slotN} valueN)
@end example
-Compatibility note:
-
-If the first element of @var{initargs} is a string, it is used as the
-name of the class.
-
-In @eieio{}, the class' constructor requires a name for use when printing.
-@dfn{make-instance} in CLOS doesn't use names the way Emacs does, so the
-class is used as the name slot instead when @var{initargs} doesn't start with
-a string.
@end defun
@node Accessing Slots
@@ -717,14 +696,9 @@ This macro sets the value behind @var{slot} to @var{value} in
@end defmac
@defmac oset-default class slot value
-This macro sets the @code{:initform} for @var{slot} in @var{class} to
+This macro sets the value for the class-allocated @var{slot} in @var{class} to
@var{value}.
-This allows the user to set both public and private defaults after the
-class has been constructed, and provides a way to configure the
-default behavior of packages built with classes (the same way
-@code{setq-default} does for buffer-local variables).
-
For example, if a user wanted all @code{data-objects} (@pxref{Building
Classes}) to inform a special object of his own devising when they
changed, this can be arranged by simply executing this bit of code:
@@ -737,16 +711,12 @@ changed, this can be arranged by simply executing this bit of code:
@defmac oref obj slot
@anchor{oref}
Retrieve the value stored in @var{obj} in the slot named by @var{slot}.
-Slot is the name of the slot when created by @dfn{defclass} or the label
-created by the @code{:initarg} tag.
+Slot is the name of the slot when created by @dfn{defclass}.
@end defmac
-@defmac oref-default obj slot
+@defmac oref-default class slot
@anchor{oref-default}
-Gets the default value of @var{obj} (maybe a class) for @var{slot}.
-The default value is the value installed in a class with the @code{:initform}
-tag. @var{slot} can be the slot name, or the tag specified by the @code{:initarg}
-tag in the @dfn{defclass} call.
+Get the value of the class-allocated @var{slot} from @var{class}.
@end defmac
The following accessors are defined by CLOS to reference or modify
@@ -812,7 +782,7 @@ Where each @var{var} is the local variable given to the associated
variable name of the same name as the slot.
@example
-(defclass myclass () (x :initarg 1))
+(defclass myclass () (x :initform 1))
(setq mc (make-instance 'myclass))
(with-slots (x) mc x) => 1
(with-slots ((something x)) mc something) => 1
@@ -986,15 +956,14 @@ allows the first argument to be cast.
@section Static Methods
Static methods do not depend on an object instance, but instead
-operate on an object's class. You can create a static method by using
+operate on a class. You can create a static method by using
the @code{:static} key with @code{defmethod}.
-Do not treat the first argument of a @code{:static} method as an
-object unless you test it first. Use the functions
-@code{oref-default} or @code{oset-default} which will work on a class,
-or on the class of an object.
+The first argument of a @code{:static} method will be a class rather than an
+object. Use the functions @code{oref-default} or @code{oset-default} which
+will work on a class.
-A Class' @code{constructor} method is defined as a @code{:static}
+A class's @code{make-instance} method is defined as a @code{:static}
method.
@b{Note:} The @code{:static} keyword is unique to @eieio{}.
@@ -1085,13 +1054,6 @@ For example:
Will fetch the documentation string for @code{eieio-default-superclass}.
@end defun
-@defun class-constructor class
-Return a symbol used as a constructor for @var{class}. The
-constructor is a function used to create new instances of
-@var{CLASS}. This function provides a way to make an object of a class
-without knowing what it is. This is not a part of CLOS.
-@end defun
-
@defun eieio-object-name obj
Return a string of the form @samp{#<object-class myobjname>} for @var{obj}.
This should look like Lisp symbols from other parts of Emacs such as
@@ -1105,11 +1067,6 @@ information into the symbol.
Returns the class symbol from @var{obj}.
@end defun
-@defun eieio--object-class obj
-Same as @code{eieio-object-class} except this is a macro, and no
-type-checking is performed.
-@end defun
-
@defun eieio-object-class-name obj
Returns the symbol of @var{obj}'s class.
@end defun
@@ -1267,7 +1224,7 @@ Return the list of public slots for @var{obj}.
@end defun
@defun class-slot-initarg class slot
-For the given @var{class} return the :initarg associated with
+For the given @var{class} return an :initarg associated with
@var{slot}. Not all slots have initargs, so the return value can be
@code{nil}.
@end defun
@@ -1612,7 +1569,7 @@ is a list of name/value pairs. These are actually just passed to
Sets slots of @var{obj} with @var{slots} which is a list of name/value
pairs.
-This is called from the default @code{constructor}.
+This is called from the default constructor.
@end defun
@node Basic Methods
diff --git a/doc/misc/erc.texi b/doc/misc/erc.texi
index 3a86e1ba1ad..9cdfe7702e5 100644
--- a/doc/misc/erc.texi
+++ b/doc/misc/erc.texi
@@ -266,54 +266,54 @@ This is a summary of keystrokes available in every ERC buffer.
@table @kbd
-@item C-a or <home> (`erc-bol')
+@item C-a or <home> (@code{erc-bol})
Go to beginning of line or end of prompt.
-@item RET (`erc-send-current-line')
+@item RET (@code{erc-send-current-line})
Send the current line
-@item TAB (`erc-complete-word')
+@item TAB (@code{erc-complete-word})
If at prompt, complete the current word.
Otherwise, move to the next link or button.
-@item M-TAB (`ispell-complete-word')
+@item M-TAB (@code{ispell-complete-word})
Complete the given word, using ispell.
-@item C-c C-a (`erc-bol')
+@item C-c C-a (@code{erc-bol})
Go to beginning of line or end of prompt.
-@item C-c C-b (`erc-iswitchb')
-Use `iswitchb-read-buffer' to prompt for a ERC buffer to switch to.
+@item C-c C-b (@code{erc-iswitchb})
+Use @code{iswitchb-read-buffer} to prompt for a ERC buffer to switch to.
-@item C-c C-c (`erc-toggle-interpret-controls')
+@item C-c C-c (@code{erc-toggle-interpret-controls})
Toggle interpretation of control sequences in messages.
-@item C-c C-d (`erc-input-action')
+@item C-c C-d (@code{erc-input-action})
Interactively input a user action and send it to IRC.
-@item C-c C-e (`erc-toggle-ctcp-autoresponse')
+@item C-c C-e (@code{erc-toggle-ctcp-autoresponse})
Toggle automatic CTCP replies (like VERSION and PING).
-@item C-c C-f (`erc-toggle-flood-control')
+@item C-c C-f (@code{erc-toggle-flood-control})
Toggle use of flood control on sent messages.
-@item C-c TAB (`erc-invite-only-mode')
+@item C-c TAB (@code{erc-invite-only-mode})
Turn on the invite only mode (+i) for the current channel.
-@item C-c C-j (`erc-join-channel')
+@item C-c C-j (@code{erc-join-channel})
Join channel. If point is at the beginning of a channel name, use that
as default.
-@item C-c C-k (`erc-go-to-log-matches-buffer')
+@item C-c C-k (@code{erc-go-to-log-matches-buffer})
Interactively open an erc-log-matches buffer
-@item C-c C-l (`erc-save-buffer-in-logs')
+@item C-c C-l (@code{erc-save-buffer-in-logs})
Append buffer contents to the log file, if logging is enabled.
-@item C-c C-n (`erc-channel-names')
+@item C-c C-n (@code{erc-channel-names})
Run "/names #channel" in the current channel.
-@item C-c C-o (`erc-get-channel-mode-from-keypress')
+@item C-c C-o (@code{erc-get-channel-mode-from-keypress})
Read a key sequence and call the corresponding channel mode function.
After doing @kbd{C-c C-o}, type in a channel mode letter.
@@ -321,22 +321,22 @@ After doing @kbd{C-c C-o}, type in a channel mode letter.
@kbd{RET} lets you type more than one mode at a time.
If @kbd{l} is pressed, @code{erc-set-channel-limit} gets called.
If @kbd{k} is pressed, @code{erc-set-channel-key} gets called.
-Anything else will be sent to `erc-toggle-channel-mode'.
+Anything else will be sent to @code{erc-toggle-channel-mode}.
-@item C-c C-p (`erc-part-from-channel')
+@item C-c C-p (@code{erc-part-from-channel})
Part from the current channel and prompt for a reason.
-@item C-c C-q (`erc-quit-server')
+@item C-c C-q (@code{erc-quit-server})
Disconnect from current server after prompting for reason.
-@item C-c C-r (`erc-remove-text-properties-region')
+@item C-c C-r (@code{erc-remove-text-properties-region})
Clears the region (start,end) in object from all colors, etc.
-@item C-c C-t (`erc-set-topic')
+@item C-c C-t (@code{erc-set-topic})
Prompt for a topic for the current channel.
-@item C-c C-u (`erc-kill-input')
-Kill current input line using `erc-bol' followed by `kill-line'.
+@item C-c C-u (@code{erc-kill-input})
+Kill current input line using @code{erc-bol} followed by @code{kill-line}.
@end table
diff --git a/doc/misc/ert.texi b/doc/misc/ert.texi
index 51e9586991a..710ebbba454 100644
--- a/doc/misc/ert.texi
+++ b/doc/misc/ert.texi
@@ -822,7 +822,7 @@ functions.
While fixtures are a useful syntactic simplification in other
languages, this does not apply to Lisp, where higher-order functions
-and `unwind-protect' are available. One way to implement and use a
+and @code{unwind-protect} are available. One way to implement and use a
fixture in ERT is
@lisp
@@ -851,7 +851,7 @@ be added but would provide only a minor simplification.
(If you are interested in such syntax, note that splitting set-up and
tear-down into separate functions, like *Unit tools usually do, makes
-it impossible to establish dynamic `let' bindings as part of the
+it impossible to establish dynamic @code{let} bindings as part of the
fixture. So, blindly imitating the way fixtures are implemented in
other languages would be counter-productive in Lisp.)
diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi
index 6d57a78d170..b2fbd7ac267 100644
--- a/doc/misc/eshell.texi
+++ b/doc/misc/eshell.texi
@@ -250,7 +250,7 @@ need to use a function that takes some other data type, you will need to
call it in an Elisp expression (which can also be used with
@ref{Expansion, expansions}). As with other shells, you can
escape special characters and spaces with the backslash (@code{\}) and
-the single (@code{''}) and double (@code{""}) quotes.
+apostrophes (@code{''}) and double quotes (@code{""}).
@node Built-ins
@@ -298,6 +298,12 @@ with no arguments, prints the current paths in this variable.
Define an alias (@pxref{Aliases}). This does not add it to the aliases
file.
+@item clear
+@cmindex clear
+Scrolls the contents of the eshell window out of sight, leaving a blank window.
+If provided with an optional non-nil argument, the scrollback contents are
+cleared instead.
+
@item date
@cmindex date
Similar to, but slightly different from, the GNU Coreutils
@@ -654,6 +660,16 @@ not @samp{git status} -- use @code{eshell-visual-subcommands}; and for
commands that are visual only when passed certain options, use
@code{eshell-visual-options}.
+Caution: Some tools such as Git use the pager @samp{less} by default
+to paginate their output but call it with its @samp{-F} option. This
+option causes @samp{less} to echo the output instead of paginating it
+if the output is less than one page long. This causes undesirable
+behavior if, e.g., @samp{git diff}, is defined as a visual subcommand.
+It'll work if the output is big enough and fail if it is less than one
+page long. If that occurs to you, search for configuration options
+for calling @samp{less} without the @samp{-F} option. For Git, you
+can do that using @samp{git config --global core.pager 'less -+F'}.
+
@section Redirection
Redirection is mostly the same in Eshell as it is in other command
shells. The output redirection operators @code{>} and @code{>>} as
@@ -1136,7 +1152,7 @@ auto-revert mode in that buffer at frequent intervals---and a
@item Make @command{dgrep} load @code{dired}, mark everything, then invoke @code{dired-do-search}
-@item Write mesh.c
+@item Write @file{mesh.c}
This would run Emacs with the appropriate arguments to invoke Eshell
only. That way, it could be listed as a login shell.
@@ -1145,7 +1161,8 @@ only. That way, it could be listed as a login shell.
@item Auto-detect when a command is visual, by checking @code{TERMCAP} usage
-@item The first keypress after @kbd{M-x watson} triggers `eshell-send-input'
+@item The first keypress after @kbd{M-x watson} triggers
+@code{eshell-send-input}
@item Make @kbd{/} electric
diff --git a/doc/misc/eudc.texi b/doc/misc/eudc.texi
index 9757c82fe7e..064f5705777 100644
--- a/doc/misc/eudc.texi
+++ b/doc/misc/eudc.texi
@@ -4,6 +4,8 @@
@settitle Emacs Unified Directory Client (EUDC) Manual
@afourpaper
@documentencoding UTF-8
+@syncodeindex fn cp
+@syncodeindex vr cp
@c %**end of header
@copying
@@ -61,8 +63,7 @@ modify this GNU manual.''
* Usage:: The various usage possibilities explained
* Credits:: Who's done what
* GNU Free Documentation License:: The license for this documentation.
-* Command and Function Index::
-* Variables Index::
+* Index::
@end menu
@@ -220,15 +221,36 @@ email composition buffers (@pxref{Inline Query Expansion})
@section LDAP Configuration
LDAP support is added by means of @file{ldap.el}, which is part of
-Emacs. @file{ldap.el} needs an external command line utility named
-@file{ldapsearch}, available as part of OpenLDAP
+Emacs. @file{ldap.el} needs an external program called
+@command{ldapsearch}, available as part of OpenLDAP
(@url{http://www.openldap.org/}). The configurations in this section
were tested with OpenLDAP 2.4.23.
+Most servers use LDAP-over-SSL these days; the examples here reflect
+that. The other possibilities are:
+
+@vindex ldap-host-parameters-alist
+@vindex ldap-ldapsearch-args
+@itemize @bullet
+
+@item
+Servers that do not require authentication or that do not encrypt
+authentication traffic.
+
+Include @code{auth simple} in @code{ldap-host-parameters-alist}, which
+causes the @code{-x} option to be passed to @command{ldapsearch}.
+
+@item
+Servers that require SASL authentication.
+
+Pass any required extra options to @command{ldapsearch} using
+@code{ldap-ldapsearch-args}.
+@end itemize
+
The following examples use a base of
-@code{ou=people,dc=example,dc=com} and the host name
-@code{directory.example.com}, a server that supports LDAP-over-SSL
-(the @code{ldaps} protocol, with default port @code{636}) and which
+@code{ou=people,dc=gnu,dc=org} and the host name
+@code{ldap.gnu.org}, a server that supports LDAP-over-SSL (the
+@code{ldaps} protocol, with default port @code{636}) and which
requires authentication by the user @code{emacsuser} with password
@code{s3cr3t}.
@@ -244,14 +266,22 @@ example, attempting to TAB-complete the following:
To: * Smith
@end example
+@noindent
will return all LDAP entries with surnames that begin with
@code{Smith}. In every LDAP query it makes, EUDC implicitly appends
the wildcard character to the end of the last word.
+@menu
+* Emacs-only Configuration:: Configure with @file{.emacs}
+* External Configuration:: Configure with @file{/etc/openldap/ldap.conf}
+* Troubleshooting:: Debug @command{ldapsearch} failures
+@end menu
+
+@node Emacs-only Configuration
@subsection Emacs-only Configuration
Emacs can pass most required configuration options via the
-@file{ldapsearch} command-line. One exception is certificate
+@command{ldapsearch} command-line. One exception is certificate
configuration for LDAP-over-SSL, which must be specified in
@file{/etc/openldap/ldap.conf}. On systems that provide such
certificates as part of the @code{OpenLDAP} installation, this can be
@@ -264,19 +294,28 @@ TLS_CACERTDIR /etc/openldap/certs
In @file{.emacs}, these expressions suffice to configure EUDC for
LDAP:
+@vindex message-mode-map
+@findex eudc-expand-inline
+@vindex eudc-server-hotlist
+@vindex ldap-host-parameters-alist
@lisp
(eval-after-load "message"
'(define-key message-mode-map (kbd "TAB") 'eudc-expand-inline))
(customize-set-variable 'eudc-server-hotlist
'(("" . bbdb)
- ("ldaps://directory.example.com" . ldap)))
+ ("ldaps://ldap.gnu.org" . ldap)))
(customize-set-variable 'ldap-host-parameters-alist
- '(("ldaps://directory.example.com"
- base "ou=people,dc=example,dc=com"
- binddn "example\\emacsuser"
+ '(("ldaps://ldap.gnu.org"
+ base "ou=people,dc=gnu,dc=org"
+ binddn "gnu\\emacsuser"
passwd ldap-password-read)))
@end lisp
+@findex ldap-password-read
+@vindex passwd
+@vindex password-cache
+@vindex password-cache-expiry
+@findex password-reset
Specifying the function @code{ldap-password-read} for @code{passwd}
will cause Emacs to prompt interactively for the password. The
password will then be validated and cached, unless
@@ -285,60 +324,91 @@ password will then be validated and cached, unless
password is cached. If you want to clear the cache, call
@code{password-reset}.
+@node External Configuration
@subsection External Configuration
Your system may already be configured for a default LDAP server. For
example, @file{/etc/openldap/ldap.conf} might contain:
@example
-BASE ou=people,dc=example,dc=com
-URI ldaps://directory.example.com
+BASE ou=people,dc=gnu,dc=org
+URI ldaps://ldap.gnu.org
TLS_CACERTDIR /etc/openldap/certs
@end example
-To authenticate, the @dfn{bind distinguished name (binddn)} is
-required, in this case, @code{example\emacsuser}, along with the
-password. These can be specified in @file{~/.authinfo.gpg} with the
-following line:
+@cindex bind distinguished name
+@cindex binddn
+Authentication requires a password, and a @dfn{bind distinguished name
+(binddn)} representing the user, in this case,
+@code{gnu\emacsuser}. These can be specified in
+@file{~/.authinfo.gpg} with the following line:
@example
-machine ldaps://directory.example.com binddn example\emacsuser password s3cr3t
+machine ldaps://ldap.gnu.org binddn gnu\emacsuser password s3cr3t
@end example
Then in the @file{.emacs} init file, these expressions suffice to
configure EUDC for LDAP:
+@vindex message-mode-map
+@findex eudc-expand-inline
+@vindex eudc-server-hotlist
+@vindex ldap-host-parameters-alist
@lisp
(eval-after-load "message"
'(define-key message-mode-map (kbd "TAB") 'eudc-expand-inline))
(customize-set-variable 'eudc-server-hotlist
'(("" . bbdb)
- ("ldaps://directory.example.com" . ldap)))
+ ("ldaps://ldap.gnu.org" . ldap)))
(customize-set-variable 'ldap-host-parameters-alist
- '(("ldaps://directory.example.com"
+ '(("ldaps://ldap.gnu.org"
auth-source t)))
@end lisp
For this example where we only care about one server, the server name
can be omitted in @file{~/.authinfo.gpg} and @file{.emacs}, in which
-case @file{ldapsearch} defaults to the host name in
+case @command{ldapsearch} defaults to the host name in
@file{/etc/openldap/ldap.conf}.
The @file{~/.authinfo.gpg} line becomes:
@example
-binddn example\emacsuser password s3cr3t
+binddn gnu\emacsuser password s3cr3t
@end example
+@noindent
and the @file{.emacs} expressions become:
+@vindex message-mode-map
+@findex eudc-expand-inline
+@vindex eudc-server-hotlist
+@vindex ldap-host-parameters-alist
@lisp
(eval-after-load "message"
'(define-key message-mode-map (kbd "TAB") 'eudc-expand-inline))
-(customize-set-variable 'eudc-server-hotlist '(("" . bbdb) ("" . ldap)))
-(customize-set-variable 'ldap-host-parameters-alist '(("" auth-source t)))
+(customize-set-variable 'eudc-server-hotlist
+ '(("" . bbdb) ("" . ldap)))
+(customize-set-variable 'ldap-host-parameters-alist
+ '(("" auth-source t)))
@end lisp
+@node Troubleshooting
+@subsection Troubleshooting
+
+If @command{ldapsearch} exits with an error, you'll see a message like
+this in the @code{*Messages*} buffer (all on one line):
+
+@example
+ldap-search-internal: Failed ldapsearch invocation:
+ ldapsearch "-Hldaps://ldap.gnu.org" "-bou=people,dc=gnu,dc=org"
+ "-Dgnu\emacsuser" "-W" "-LL" "-tt" "(&(mail=name*))"
+ "givenname" "sn" "mail"
+@end example
+
+The @command{ldapsearch} command is formatted such that it can be
+copied and pasted into a terminal. Set the @command{ldapsearch} debug
+level to 5 by appending @code{-d 5} to the command line.
+
@node Usage
@chapter Usage
@@ -397,7 +467,7 @@ may be specified by appending a colon and a number to the name of the
server. You will not need this unless your server runs on a port other
than the default (which depends on the protocol).
If the directory server resides on your own computer (which is the case
-if you use the BBDB back end) then `localhost' is a reasonable value but
+if you use the BBDB back end) then @samp{localhost} is a reasonable value but
it will be ignored anyway.
@end defvar
@@ -810,11 +880,11 @@ trying to perform an inline query. Possible values are:
Only the current directory server is tried
@item hotlist
The servers in the hotlist are tried in order until one finds a match
-for the query or `eudc-max-servers-to-query' is reached
+for the query or @code{eudc-max-servers-to-query} is reached
@item server-then-hotlist
The current server then the servers in the hotlist are tried in the
order they appear in the hotlist until one of them finds a match or
-`eudc-max-servers-to-query' is reached. This is the default.
+@code{eudc-max-servers-to-query} is reached. This is the default.
@end table
@end defvar
@@ -1043,14 +1113,9 @@ in testing and proofreading the code and docs of @file{ph.el}.
@appendix GNU Free Documentation License
@include doclicense.texi
-@node Command and Function Index
-@unnumbered Command and Function Index
-
-@printindex fn
-
-@node Variables Index
-@unnumbered Variables Index
+@node Index
+@unnumbered Index
-@printindex vr
+@printindex cp
@bye
diff --git a/doc/misc/forms.texi b/doc/misc/forms.texi
index 433009c8719..ab284bd99bc 100644
--- a/doc/misc/forms.texi
+++ b/doc/misc/forms.texi
@@ -854,7 +854,7 @@ number of records actually present in the data file.
@item Problem saving buffers?
An error occurred while saving the data file buffer. Most likely, Emacs
did ask to confirm deleting the buffer because it had been modified, and
-you said `no'.
+you said ``no''.
@end table
@node Long Example
diff --git a/doc/misc/gnus-faq.texi b/doc/misc/gnus-faq.texi
index 8eb7c771ab7..8126827ffbd 100644
--- a/doc/misc/gnus-faq.texi
+++ b/doc/misc/gnus-faq.texi
@@ -1112,7 +1112,7 @@ resulting in:
:O \-> ... | 115 |Raymond Scholz | 1:24
:O \-> ... | 19 |Lars Magne Ingebrigt |15:33
:O Slow mailing list | 13 |Lars Magne Ingebrigt |Sat 23:49
-:O Re: `@@' mark not documented | 13 |Lars Magne Ingebrigt |Sat 23:50
+:O Re: '@@' mark not documented | 13 |Lars Magne Ingebrigt |Sat 23:50
:R > Re: Gnus still doesn't count messages prope| 23 |Lars Magne Ingebrigt |Sat 23:57
:O \-> ... | 18 |Kai Grossjohann | 0:35
:O \-> ... | 13 |Lars Magne Ingebrigt | 0:56
@@ -1501,7 +1501,7 @@ entries. Say @samp{c} to create a new
entry, @samp{b} to search your BBDB and
@samp{C-o} to add a new field to an
entry. If you want to add a sender to the BBDB you can
-also just hit `:' on the posting in the summary buffer and
+also just hit @kbd{:} on the posting in the summary buffer and
you are done. When you now compose a new mail,
hit @samp{TAB} to cycle through know
recipients.
diff --git a/doc/misc/gnus-news.el b/doc/misc/gnus-news.el
index 81986f2dd24..ba8a4631261 100644
--- a/doc/misc/gnus-news.el
+++ b/doc/misc/gnus-news.el
@@ -85,7 +85,7 @@ paragraph-separate: \"[ ]*$\"\nend:\n")
(infile (concat dir infile))
(buffer (find-file-noselect (concat dir outfile))))
(with-temp-buffer
- ;; Could be done using `texinfmt' stuff as in `infohack.el'.
+ ;; Could be done using 'texinfmt' stuff as in 'infohack.el'.
(insert
(shell-command-to-string
(concat gnus-news-makeinfo-command " "
@@ -102,7 +102,7 @@ paragraph-separate: \"[ ]*$\"\nend:\n")
(save-excursion
(while (re-search-forward "^ " nil t)
(replace-match "")))
- ;; Avoid `*' from @ref at beginning of line:
+ ;; Avoid '*' from @ref at beginning of line:
(save-excursion
(while (re-search-forward "^\\*Note" nil t)
(replace-match " \\&")))
diff --git a/doc/misc/gnus-news.texi b/doc/misc/gnus-news.texi
index c5b96e740cc..ef6573fc73e 100644
--- a/doc/misc/gnus-news.texi
+++ b/doc/misc/gnus-news.texi
@@ -13,8 +13,8 @@
@c carry prominent notices stating who last changed them.
@c This file contains a list of news features Gnus. It is supposed to be
-@c included in `gnus.texi'. `GNUS-NEWS' is automatically generated from
-@c this file (see `gnus-news.el').
+@c included in 'gnus.texi'. 'GNUS-NEWS' is automatically generated from
+@c this file (see 'gnus-news.el').
@itemize @bullet
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi
index ed4d1a58f79..97e56e19cc0 100644
--- a/doc/misc/gnus.texi
+++ b/doc/misc/gnus.texi
@@ -11913,8 +11913,8 @@ controlling variable is a predicate list, as described above.
@ifinfo
@c Avoid sort of redundant entries in the same section for the printed
-@c manual, but add them in info to allow `i gnus-treat-foo-bar RET' or
-@c `i foo-bar'.
+@c manual, but add them in info to allow 'i gnus-treat-foo-bar RET' or
+@c 'i foo-bar'.
@vindex gnus-treat-buttonize
@vindex gnus-treat-buttonize-head
@vindex gnus-treat-capitalize-sentences
@@ -14987,7 +14987,7 @@ this means @samp{gssapi}, @samp{kerberos4}, @samp{digest-md5},
@samp{cram-md5}, @samp{anonymous} or the default @samp{login}.
@item :program
-When using the `shell' :stream, the contents of this variable is
+When using the @samp{shell} :stream, the contents of this variable is
mapped into the @code{imap-shell-program} variable. This should be a
@code{format}-like string (or list of strings). Here's an example:
@@ -17768,7 +17768,7 @@ So you send a ``reminder'' message (actually, a diary one) to yourself.
@item
You forget all about it and keep on getting and reading new mail, as usual.
@item
-From time to time, as you type `g' in the group buffer and as the date
+From time to time, as you type @kbd{g} in the group buffer and as the date
is getting closer, the message will pop up again to remind you of your
appointment, just as if it were new and unread.
@item
@@ -19648,7 +19648,7 @@ Immediately scoring.
@end table
@item
-If you are scoring on `e' (extra) headers, you will then be prompted for
+If you are scoring on @samp{e} (extra) headers, you will then be prompted for
the header name on which you wish to score. This must be a header named
in gnus-extra-headers, and @samp{TAB} completion is available.
@@ -21354,8 +21354,8 @@ variable.
To work correctly the @code{nnir-namazu-remove-prefix} variable must
also be correct. This is the prefix to remove from each file name
-returned by Namazu in order to get a proper group name (albeit with `/'
-instead of `.').
+returned by Namazu in order to get a proper group name (albeit with @samp{/}
+instead of @samp{.}).
For example, suppose that Namazu returns file names such as
@samp{/home/john/Mail/mail/misc/42}. For this example, use the
@@ -21368,18 +21368,20 @@ correct group name @samp{mail.misc}.
Extra switches may be passed to the namazu search command by setting the
variable @code{nnir-namazu-additional-switches}. It is particularly
important not to pass any any switches to namazu that will change the
-output format. Good switches to use include `--sort', `--ascending',
-`--early' and `--late'. Refer to the Namazu documentation for further
+output format. Good switches to use include @option{--sort},
+@option{--ascending}, @option{--early} and @option{--late}.
+Refer to the Namazu documentation for further
information on valid switches.
-Mail must first be indexed with the `mknmz' program. Read the documentation
-for namazu to create a configuration file. Here is an example:
+Mail must first be indexed with the @command{mknmz} program. Read the
+documentation for namazu to create a configuration file. Here is an
+example:
@cartouche
@example
package conf; # Don't remove this line!
- # Paths which will not be indexed. Don't use `^' or `$' anchors.
+ # Paths which will not be indexed. Don't use '^' or '$' anchors.
$EXCLUDE_PATH = "spam|sent";
# Header fields which should be searchable. case-insensitive
@@ -21451,7 +21453,7 @@ when searching all groups on a server.
@item nnir-summary-line-format
The format specification to be used for lines in an nnir summary buffer.
-All the items from `gnus-summary-line-format' are available, along with
+All the items from @code{gnus-summary-line-format} are available, along with
three items unique to nnir summary buffers:
@example
@@ -21465,7 +21467,7 @@ If @code{nil} (the default) this will use @code{gnus-summary-line-format}.
@item nnir-retrieve-headers-override-function
If non-@code{nil}, a function that retrieves article headers rather than using
the gnus built-in function. This function takes an article list and
-group as arguments and populates the `nntp-server-buffer' with the
+group as arguments and populates the @code{nntp-server-buffer} with the
retrieved headers. It should then return either 'nov or 'headers
indicating the retrieved header format. Failure to retrieve headers
should return @code{nil}.
@@ -26124,10 +26126,10 @@ their @code{:char} property, or showing the marks as full strings.
@lisp
;; show the marks as single characters (see the :char property in
-;; `gnus-registry-marks'):
+;; 'gnus-registry-marks'):
;; (defalias 'gnus-user-format-function-M 'gnus-registry-article-marks-to-chars)
-;; show the marks by name (see `gnus-registry-marks'):
+;; show the marks by name (see 'gnus-registry-marks'):
;; (defalias 'gnus-user-format-function-M 'gnus-registry-article-marks-to-names)
@end lisp
@@ -27817,7 +27819,7 @@ As a result of the following change, the @file{~/News/overview/}
directory is not used any more. You can safely delete the entire
hierarchy.
-@c FIXME: `gnus-load' is mentioned in README, which is not included in
+@c FIXME: 'gnus-load' is mentioned in README, which is not included in
@c the repository. We should find a better place for this item.
@item
@code{(require 'gnus-load)}
diff --git a/doc/misc/htmlfontify.texi b/doc/misc/htmlfontify.texi
index 6579cd6c7d1..8140b43e783 100644
--- a/doc/misc/htmlfontify.texi
+++ b/doc/misc/htmlfontify.texi
@@ -840,7 +840,7 @@ See @ref{hfy-display-class} for details of valid values for @var{class}.
@end lisp
Find face in effect at point P@. If overlays are to be considered
-(see @ref{hfy-optimisations}) then this may return a @code{defface} style
+(see @ref{hfy-optimizations}) then this may return a @code{defface} style
list of face properties instead of a face symbol.
@item hfy-bgcol
@@ -950,7 +950,7 @@ Is @var{srcdir}/@var{file} text? Uses @ref{hfy-istext-command} to determine thi
(hfy-opt @var{symbol})
@end lisp
-Is @ref{hfy-optimisations} member @var{symbol} set or not?
+Is @ref{hfy-optimizations} member @var{symbol} set or not?
@item hfy-dirname
@findex hfy-dirname
@@ -1395,9 +1395,9 @@ for the more complex shell interactions needed by Htmlfontify.
Currently this is only required/used when using GNU etags, see
@ref{hfy-etags-cmd-alist} for details.
-@item hfy-optimisations
-@vindex hfy-optimisations
-@anchor{hfy-optimisations}
+@item hfy-optimizations
+@vindex hfy-optimizations
+@anchor{hfy-optimizations}
Optimizations to turn on. So far, the following have been implemented:
diff --git a/doc/misc/idlwave.texi b/doc/misc/idlwave.texi
index 496674cd64b..ca449e44d0f 100644
--- a/doc/misc/idlwave.texi
+++ b/doc/misc/idlwave.texi
@@ -129,7 +129,7 @@ Completion
Actions
* Block Boundary Check:: Is the END statement correct?
-* Padding Operators:: Enforcing space around `=' etc
+* Padding Operators:: Enforcing space around @samp{=} etc
* Case Changes:: Enforcing upper case keywords
The IDLWAVE Shell
@@ -501,7 +501,7 @@ plot_wday,1,1
@noindent and press @key{RET}. This fails with an error message telling
you the @code{YT} keyword to plot is ambiguous. What are the allowed
keywords again? Go back to the source window and put the cursor into
-the `plot' line and press @kbd{C-c ?}. This shows the routine info
+the ``plot'' line and press @kbd{C-c ?}. This shows the routine info
window for the plot routine, which contains a list of keywords, along
with the argument list. Oh, we wanted @code{YTITLE}. Fix that up.
Recompile with @kbd{C-c C-d C-c}. Jump back into the shell with
@@ -608,7 +608,7 @@ Group}. Here you'll be presented with all the various variables grouped
into categories. You can navigate the hierarchy (e.g., @samp{IDLWAVE
Code Formatting->Idlwave Abbrev And Indent Action->Idlwave Expand
Generic End} to turn on @code{END} expansion), read about the variables,
-change them, and `Save for Future Sessions'. Few of these variables
+change them, and ``Save for Future Sessions''. Few of these variables
need customization, but you can exercise considerable control over
IDLWAVE's functionality with them.
@@ -705,7 +705,7 @@ library:
a=readf@key{M-@key{TAB}}
@end example
-expands to `readfits('. Then try
+expands to ``readfits(''. Then try
@example
a=readfits(@key{C-c ?}
@@ -1599,7 +1599,7 @@ completed keywords.
@defopt idlwave-function-completion-adds-paren (@code{t})
Non-@code{nil} means completion automatically adds @samp{(} after
-completed function. A value of `2' means also add the closing
+completed function. A value of 2 means also add the closing
parenthesis and position the cursor between the two.
@end defopt
@@ -2121,7 +2121,7 @@ settings are described below and set separately.
@menu
* Block Boundary Check:: Is the END statement correct?
-* Padding Operators:: Enforcing space around `=' etc
+* Padding Operators:: Enforcing space around @samp{=} etc
* Case Changes:: Enforcing upper case keywords
@end menu
@@ -2490,7 +2490,7 @@ The frame parameters for a dedicated idlwave-shell frame.
@end defopt
@defopt idlwave-shell-raise-frame (@code{t})
-Non-@code{nil} means `idlwave-shell' raises the frame showing the shell
+Non-@code{nil} means @code{idlwave-shell} raises the frame showing the shell
window.
@end defopt
@@ -3943,7 +3943,7 @@ user is King!
w3m-use-header-line nil
w3m-use-toolbar nil)
-;; Close my help window or frame when w3m closes with `q'
+;; Close my help window or frame when w3m closes with 'q'.
(defadvice w3m-close-window (after idlwave-close activate)
(if (boundp 'idlwave-help-frame)
(idlwave-help-quit)))
@@ -3969,11 +3969,11 @@ user is King!
(idlwave-action-and-binding "," '(idlwave-surround nil 1))
(idlwave-action-and-binding "&" '(idlwave-surround 1 1))
- ;; Pad only after `->', remove any space before the arrow
+ ;; Pad only after '->', remove any space before the arrow
(idlwave-action-and-binding "->" '(idlwave-surround 0 -1 nil 2))
;; Set some personal bindings
- ;; (In this case, makes `,' have the normal self-insert behavior.)
+ ;; (In this case, makes ',' have the normal self-insert behavior.)
(local-set-key "," 'self-insert-command)
(local-set-key [f5] 'idlwave-shell-break-here)
(local-set-key [f6] 'idlwave-shell-clear-current-bp)
diff --git a/doc/misc/info.texi b/doc/misc/info.texi
index 759956d21dc..7337b467156 100644
--- a/doc/misc/info.texi
+++ b/doc/misc/info.texi
@@ -67,8 +67,8 @@ type the command @kbd{h} now. It brings you to a programmed
instruction sequence.
To read about advanced Info commands, type @kbd{n} twice. This
-brings you to @cite{Advanced Info Commands}, skipping over the `Getting
-Started' chapter.
+brings you to @cite{Advanced Info Commands}, skipping over the ``Getting
+Started'' chapter.
Type @kbd{H} to see a summary of all available commands.
@end ifinfo
diff --git a/doc/misc/mairix-el.texi b/doc/misc/mairix-el.texi
index 5cf9ab01be6..16f490270fd 100644
--- a/doc/misc/mairix-el.texi
+++ b/doc/misc/mairix-el.texi
@@ -140,7 +140,7 @@ not tested (yet).
You should make sure that you don't accidentally index the search
results produced by mairix. This can be done by pointing
-`mairix-file-path' to a directory which is surely not indexed by mairix.
+@code{mairix-file-path} to a directory which is surely not indexed by mairix.
Another possibility is to use something like
@example
@@ -222,12 +222,12 @@ Here's a description of the available interactive functions:
@vindex mairix-search-options
Call mairix with a search query. You will also be asked if you want to
include whole threads. The results are saved by mairix in the default
-mail file, which is set through the variable `mairix-search-file', which
-again is prefixed by `mairix-file-path'. The results will then be
+mail file, which is set through the variable @code{mairix-search-file}, which
+again is prefixed by @code{mairix-file-path}. The results will then be
displayed with the chosen mail program. The command used to call mairix
-is specified by the variable `mairix-command', together with the options
-`mairix-search-options'. The latter has the default ``-F'' for making
-searching faster.
+is specified by the variable @code{mairix-command}, together with the options
+@code{mairix-search-options}. The latter has the default @option{-F}
+for making searching faster.
@item mairix-widget-search
@kindex M-x mairix-widget-search
@@ -239,7 +239,7 @@ how it works. You can then directly call mairix with the search term or
save it for future use. Since mairix allows almost arbitrary
combinations of search commands (like ``tc'' for ``to or cc''), you
might want to include some other fields. This can be easily done by
-modifying `mairix-widget-fields-list'.
+modifying @code{mairix-widget-fields-list}.
@item mairix-widget-search-based-on-article
@kindex M-x mairix-widget-search-based-on-article
@@ -270,7 +270,7 @@ for the search and will then be asked if you want to save your saved
searches in your @file{.emacs}. If you answer with yes, the variable
@code{mairix-saved-searches} will be saved in the customize section of
your @file{.emacs}. You can also do this later by using
-`mairix-edit-saved-searches'.
+@code{mairix-edit-saved-searches}.
@item mairix-use-saved-search
@kindex M-x mairix-use-saved-search
@@ -303,10 +303,11 @@ maybe you like it.
@vindex mairix-update-options
@vindex mairix-synchronous-update
Call mairix to update the database. Mairix will be called with the
-options `mairix-update-options'; the default is ``-F'' and ``-Q'' to
+options @code{mairix-update-options}; the default is @option{-F} and
+@option{-Q} to
make updates as fast as possible. Note that by using these options,
absolutely no integrity checking is done. If your database somehow gets
-corrupted, simply delete it and update. If `mairix-synchronous-update'
+corrupted, simply delete it and update. If @code{mairix-synchronous-update}
is @code{nil} (the default), mairix will be called in a subprocess so Emacs
will still be usable while the update is done.
diff --git a/doc/misc/makefile.w32-in b/doc/misc/makefile.w32-in
index 6869d946ac9..398b774c481 100644
--- a/doc/misc/makefile.w32-in
+++ b/doc/misc/makefile.w32-in
@@ -21,7 +21,7 @@
# Where to find the source code. The source code for Emacs's C kernel is
# expected to be in $(srcdir)/src, and the source code for Emacs's
# utility programs is expected to be in $(srcdir)/lib-src. This is
-# set by the configure script's `--srcdir' option.
+# set by the configure script's '--srcdir' option.
srcdir=.
infodir = $(srcdir)/../../info
@@ -71,7 +71,7 @@ DVI_TARGETS = calc.dvi cc-mode.dvi cl.dvi dbus.dvi dired-x.dvi \
wisent.dvi htmlfontify.dvi
INFOSOURCES = info.texi
-# The following rule does not work with all versions of `make'.
+# The following rule does not work with all versions of 'make'.
.SUFFIXES: .texi .dvi
.texi.dvi:
texi2dvi $<
diff --git a/doc/misc/message.texi b/doc/misc/message.texi
index 6e49c0a347c..884d8299921 100644
--- a/doc/misc/message.texi
+++ b/doc/misc/message.texi
@@ -2006,13 +2006,13 @@ that look like:
Hallvard B Furuseth <h.b.furuseth@@usit.uio.no> writes:
@end example
-@c FIXME: Add `message-insert-formatted-citation-line' and
-@c `message-citation-line-format'
+@c FIXME: Add 'message-insert-formatted-citation-line' and
+@c 'message-citation-line-format'.
Point will be at the beginning of the body of the message when this
function is called.
-Note that Gnus provides a feature where clicking on `writes:' hides the
+Note that Gnus provides a feature where clicking on @samp{writes:} hides the
cited text. If you change the citation line too much, readers of your
messages will have to adjust their Gnus, too. See the variable
@code{gnus-cite-attribution-suffix}. @xref{Article Highlighting, ,
diff --git a/doc/misc/newsticker.texi b/doc/misc/newsticker.texi
index 0520a4eec44..dfabb9290dd 100644
--- a/doc/misc/newsticker.texi
+++ b/doc/misc/newsticker.texi
@@ -178,7 +178,7 @@ are kept until @code{newsticker-obsolete-item-max-age} is reached.
@vindex newsticker-automatically-mark-items-as-old
@item newsticker-automatically-mark-items-as-old
-If this is set to `t' then a ``new'' item becomes ``old'' as soon as
+If this is set to @code{t} then a ``new'' item becomes ``old'' as soon as
it is retrieved a second time.
@end table
diff --git a/doc/misc/octave-mode.texi b/doc/misc/octave-mode.texi
index b65c5ee380a..3199ec4d146 100644
--- a/doc/misc/octave-mode.texi
+++ b/doc/misc/octave-mode.texi
@@ -232,7 +232,7 @@ to directly start an inferior Octave process.
This will start Octave in a special buffer the name of which is
specified by the variable @code{inferior-octave-buffer} and defaults
to @file{*Inferior Octave*}. From within this buffer, you can
-interact with the inferior Octave process `as usual', i.e., by
+interact with the inferior Octave process ``as usual'', i.e., by
entering Octave commands at the prompt. The buffer is in Inferior
Octave mode, which is derived from the standard Comint mode, a major
mode for interacting with an inferior interpreter. See the
@@ -282,7 +282,7 @@ then sourcing the buffer by using @kbd{C-c C-l}
@item C-c C-i s
@kindex C-c C-i s
@findex octave-show-process-buffer
-Make sure that `inferior-octave-buffer' is displayed
+Make sure that @code{inferior-octave-buffer} is displayed
(@code{octave-show-process-buffer}).
@item C-c C-i q
@@ -350,7 +350,7 @@ The startup of the inferior Octave process is highly customizable.
The variable @code{inferior-octave-startup-args} can be used for
specifying command lines arguments to be passed to Octave on startup
as a list of strings. For example, to suppress the startup message
-and use `traditional' mode, set this to @code{("-q" "--traditional")}.
+and use ``traditional'' mode, set this to @code{("-q" "--traditional")}.
You can also specify a startup file of Octave commands to be loaded on
startup; note that these commands will not produce any visible output
in the process buffer. Which file to use is controlled by the
@@ -433,7 +433,7 @@ when Octave is waiting for input, or done sending output.
@c @noindent
@c to your @file{.emacs} file.
-@c You can use either `plain' Emacs Info or the function @code{octave-help}
+@c You can use either 'plain' Emacs Info or the function @code{octave-help}
@c as your Octave info reader (for @samp{help -i}). In the former case,
@c use @code{info_program ("info-emacs-info")}.
@c The latter is perhaps more attractive because it allows to look up keys
diff --git a/doc/misc/org.texi b/doc/misc/org.texi
index d2721f6e35e..a2cc51ec259 100644
--- a/doc/misc/org.texi
+++ b/doc/misc/org.texi
@@ -1053,7 +1053,7 @@ is not necessary. In that case it is sufficient to start Emacs as
shown below.
@lisp
-;;; Minimal setup to load latest `org-mode'
+;;; Minimal setup to load latest 'org-mode'
;; activate debugging
(setq debug-on-error t
@@ -2356,7 +2356,7 @@ Fields that are wider become clipped and end in the string @samp{=>}.
Note that the full text is still in the buffer but is hidden.
To see the full text, hold the mouse over the field---a tool-tip window
will show the full content. To edit such a field, use the command
-@kbd{C-c `} (that is @kbd{C-c} followed by the backquote). This will
+@kbd{C-c `} (that is @kbd{C-c} followed by the grave accent). This will
open a new window with the full field. Edit it and finish with @kbd{C-c
C-c}.
@@ -2770,7 +2770,7 @@ It is also possible to write a formula in Emacs Lisp. This can be useful
for string manipulation and control structures, if Calc's functionality is
not enough.
-If a formula starts with a single-quote followed by an opening parenthesis,
+If a formula starts with an apostrophe followed by an opening parenthesis,
then it is evaluated as a Lisp form. The evaluation should return either a
string or a number. Just as with @file{calc} formulas, you can specify modes
and a printf format after a semicolon.
@@ -6330,7 +6330,8 @@ you stop working on that task, or when you mark the task done, the clock is
stopped and the corresponding time interval is recorded. It also computes
the total time spent on each subtree@footnote{Clocking only works if all
headings are indented with less than 30 stars. This is a hardcoded
-limitation of `lmax' in `org-clock-sum'.} of a project. And it remembers a
+limitation of @code{lmax} in @code{org-clock-sum}.} of a project. And it
+remembers a
history or tasks recently clocked, to that you can jump quickly between a
number of tasks absorbing your time.
@@ -10312,14 +10313,14 @@ macro, they are removed again (depending on the variable
@code{cdlatex-simplify-sub-super-scripts}).
@item
@kindex `
-Pressing the backquote @kbd{`} followed by a character inserts math
+Pressing the grave accent @kbd{`} followed by a character inserts math
macros, also outside @LaTeX{} fragments. If you wait more than 1.5 seconds
-after the backquote, a help window will pop up.
+after the grave accent, a help window will pop up.
@item
@kindex '
-Pressing the single-quote @kbd{'} followed by another character modifies
+Pressing the apostrophe @kbd{'} followed by another character modifies
the symbol before point with an accent or a font. If you wait more than
-1.5 seconds after the single-quote, a help window will pop up. Character
+1.5 seconds after the apostrophe, a help window will pop up. Character
modification will work only inside @LaTeX{} fragments; outside the quote
is normal.
@end itemize
@@ -12192,7 +12193,7 @@ You can control the size and scale of the embedded images using the
The exporter specifies the desired size of the image in the final document in
units of centimeters. In order to scale the embedded images, the exporter
queries for pixel dimensions of the images using one of a) ImageMagick's
-@file{identify} program or b) Emacs `create-image' and `image-size'
+@file{identify} program or b) Emacs @code{create-image} and @code{image-size}
APIs@footnote{Use of @file{ImageMagick} is only desirable. However, if you
routinely produce documents that have large images or you export your Org
files that has images using a Emacs batch script, then the use of
@@ -13390,9 +13391,9 @@ the Org buffer and get them translated into @LaTeX{} without using the
@lisp
@group
(defun my-latex-filter-nobreaks (text backend info)
- "Ensure \" \" are properly handled in LaTeX export."
+ "Ensure \"_\" are properly handled in LaTeX export."
(when (org-export-derived-backend-p backend 'latex)
- (replace-regexp-in-string " " "~" text)))
+ (replace-regexp-in-string "_" "~" text)))
(add-to-list 'org-export-filter-plain-text-functions
'my-latex-filter-nobreaks)
@@ -15730,7 +15731,7 @@ process. For example, compare the following two blocks:
: bye
@end example
-In non-session mode, the `2' is not printed and does not appear.
+In non-session mode, the ``2'' is not printed and does not appear.
@example
#+BEGIN_SRC python :results output :session
@@ -15745,8 +15746,8 @@ In non-session mode, the `2' is not printed and does not appear.
: bye
@end example
-But in @code{:session} mode, the interactive interpreter receives input `2'
-and prints out its value, `2'. (Indeed, the other print statements are
+But in @code{:session} mode, the interactive interpreter receives input ``2''
+and prints out its value, ``2''. (Indeed, the other print statements are
unnecessary here).
@node Noweb reference syntax, Key bindings and useful functions, Results of evaluation, Working With Source Code
@@ -17814,8 +17815,8 @@ scheduled, and clocking, and any additional properties defined in the
entry. The return value is an alist. Keys may occur multiple times
if the property key was used several times.@*
POM may also be @code{nil}, in which case the current entry is used.
-If WHICH is @code{nil} or `all', get all properties. If WHICH is
-`special' or `standard', only get that subclass.
+If WHICH is @code{nil} or @code{all}, get all properties. If WHICH is
+@code{special} or @code{standard}, only get that subclass.
@end defun
@vindex org-use-property-inheritance
@findex org-insert-property-drawer
diff --git a/doc/misc/rcirc.texi b/doc/misc/rcirc.texi
index f0241f04f8f..646122bf897 100644
--- a/doc/misc/rcirc.texi
+++ b/doc/misc/rcirc.texi
@@ -296,7 +296,7 @@ send it to a channel.
@cindex quotes
@cindex double-quotes
Many commands take parameters. IRC commands usually ignore string
-delimiters. Neither quote nor double-quote have special meanings in
+delimiters. Neither apostrophe nor double-quote have special meanings in
IRC.
@example
diff --git a/doc/misc/reftex.texi b/doc/misc/reftex.texi
index 1497b1f5f1d..6488ae289a2 100644
--- a/doc/misc/reftex.texi
+++ b/doc/misc/reftex.texi
@@ -1000,7 +1000,7 @@ In eqs. (1), (2), (3)--(4), (5) and (6)
@item u
Unmark a marked entry.
-@c FIXME: Do we need `A' as well for consistency?
+@c FIXME: Do we need 'A' as well for consistency?
@cindex LaTeX packages, @code{saferef}
@cindex @code{saferef}, LaTeX package
@item a
@@ -4192,7 +4192,7 @@ List of magic words which identify a reference to be of this type. If
the word before point is equal to one of these words when calling
@code{reftex-reference}, the label list offered will be automatically
restricted to labels of the correct type. If the first element of this
-word list is the symbol `regexp', the strings are interpreted as regular
+word list is the symbol @code{regexp}, the strings are interpreted as regular
expressions.
@item @var{toc-level}
@@ -4247,7 +4247,7 @@ but this process can be slow when a document contains thousands of
labels. If you use label prefixes consistently, you may speed up
document parsing by setting this variable to a non-@code{nil} value. RefTeX
will then compare the label prefix with the prefixes found in
-`reftex-label-alist' and derive the correct label type in this way.
+@code{reftex-label-alist} and derive the correct label type in this way.
Possible values for this option are:
@example
@@ -4913,7 +4913,7 @@ The keymap which is active in the @file{*Index*} buffer
@defopt reftex-view-crossref-extra
Macros which can be used for the display of cross references.
-This is used when `reftex-view-crossref' is called with point in an
+This is used when @code{reftex-view-crossref} is called with point in an
argument of a macro. Note that crossref viewing for citations,
references (both ways) and index entries is hard-coded. This variable
is only to configure additional structures for which crossreference
@@ -5447,7 +5447,7 @@ deleted from the toc buffer with the @kbd{d} key.
@noindent @b{Version 4.19}
@itemize @bullet
@item
-New command `reftex-toc-recenter' (@kbd{C-c -}) which shows the current
+New command @code{reftex-toc-recenter} (@kbd{C-c -}) which shows the current
section in the TOC buffer without selecting the TOC window.
@item
Recentering happens automatically in idle time when the option
@@ -5459,7 +5459,7 @@ buffer.
The highlight in the TOC buffer stays when the focus moves to a
different window.
@item
-New command `reftex-goto-label'.
+New command @code{reftex-goto-label}.
@item
Part numbers are no longer included in chapter numbers, and a new
part does not reset the chapter counter. See new option
diff --git a/doc/misc/remember.texi b/doc/misc/remember.texi
index c0d2ba3c771..13594d97a97 100644
--- a/doc/misc/remember.texi
+++ b/doc/misc/remember.texi
@@ -115,8 +115,8 @@ Have you ever noticed that having a laptop to write on doesn't
@emph{actually} increase the amount of quality material that you turn
out, in the long run? Perhaps it's because the time we save
electronically in one way, we're losing electronically in another; the
-tool should never dominate one's focus. As the mystic Faridu'd-Din
-`Attar wrote: ``Be occupied as little as possible with things of the
+tool should never dominate one's focus. As the mystic Farīd ud-Dīn
+ʿAṭṭār wrote: ``Be occupied as little as possible with things of the
outer world but much with things of the inner world; then right action
will overcome inaction.''
@@ -318,10 +318,10 @@ Save (if it is modified) and bury the current buffer.
@item C-c C-c
@itemx C-x C-s
-Remember the contents of the current buffer (`remember-finalize').
+Remember the contents of the current buffer (@code{remember-finalize}).
@item C-c C-k
-Destroy the current @file{*Remember*} buffer (`remember-destroy').
+Destroy the current @file{*Remember*} buffer (@code{remember-destroy}).
@end table
diff --git a/doc/misc/sc.texi b/doc/misc/sc.texi
index a97e504cb28..a851fa2d981 100644
--- a/doc/misc/sc.texi
+++ b/doc/misc/sc.texi
@@ -1790,7 +1790,7 @@ a mail message to the Supercite mailing list:
Martin> tends to be a "full blown" version rather than to be
Martin> stripped down.
- Martin> 2: `point' is at the start of the header, `mark' at the
+ Martin> 2: 'point' is at the start of the header, 'mark' at the
Martin> end of the message body.
Martin> 3: (run-hooks 'mail-yank-hooks)
diff --git a/doc/misc/semantic.texi b/doc/misc/semantic.texi
index 090724056a6..5f4a7821fec 100644
--- a/doc/misc/semantic.texi
+++ b/doc/misc/semantic.texi
@@ -604,7 +604,7 @@ Emacs Lisp. It is an LALR parser suitable for complex languages.
@c Following comments are for the benefit of ispell.
@c LocalWords: alist API APIs arg argc args argv asis assoc autoload Wisent
-@c LocalWords: backquote bnf bovinate bovinates LALR
+@c LocalWords: bnf bovinate bovinates LALR
@c LocalWords: bovinating bovination bovinator bucketize
@c LocalWords: cb cdr charquote checkcache cindex CLOS
@c LocalWords: concat concocting const ctxt Decl defcustom
diff --git a/doc/misc/speedbar.texi b/doc/misc/speedbar.texi
index 726f749e05e..da507dbb83c 100644
--- a/doc/misc/speedbar.texi
+++ b/doc/misc/speedbar.texi
@@ -43,16 +43,16 @@ modify this GNU manual.''
Speedbar is a program for Emacs which can be used to summarize
information related to the current buffer. Its original inspiration
-is the `explorer' often used in modern development environments, office
+is the ``explorer'' often used in modern development environments, office
packages, and web browsers.
Speedbar displays a narrow frame in which a tree view is shown. This
tree view defaults to containing a list of files and directories. Files
-can be `expanded' to list tags inside. Directories can be expanded to
+can be ``expanded'' to list tags inside. Directories can be expanded to
list the files within itself. Each file or tag can be jumped to
immediately.
-Speedbar expands upon `explorer' windows by maintaining context with the
+Speedbar expands upon ``explorer'' windows by maintaining context with the
user. For example, when using the file view, the current buffer's file
is highlighted. Speedbar also mimics the explorer windows by providing
multiple display modes. These modes come in two flavors. Major display
@@ -61,8 +61,8 @@ only when a buffer of the applicable type is shown. This allows
authors of other packages to provide speedbar summaries customized to
the needs of that mode.
-Throughout this manual, activities are defined as `clicking on', or
-`expanding' items. Clicking means using @kbd{Mouse-2} on a
+Throughout this manual, activities are defined as ``clicking on'', or
+``expanding'' items. Clicking means using @kbd{Mouse-2} on a
button. Expanding refers to clicking on an expansion button to display
an expanded summary of the entry the expansion button is
on. @xref{Basic Navigation}.
@@ -231,9 +231,9 @@ Groups summarize information in a single line, and provide a high level
view of more complex systems, like a directory tree, or manual chapters.
Groups appear at different indentation levels, and are prefixed with a
-@samp{+} in some sort of `box'. The group name will summarize the
+@samp{+} in some sort of ``box''. The group name will summarize the
information within it, and the expansion box will display that
-information inline. In File mode, directories and files are `groups'
+information inline. In File mode, directories and files are ``groups''
where the @samp{+} is surrounded by brackets like this:
@example
@@ -246,7 +246,7 @@ In this example, we see both open and closed directories, in addition to
a file. The directories have a box consisting of angle brackets, and a
file uses square brackets.
-In all modes, a group can be `edited' by pressing @kbd{RET}, meaning a
+In all modes, a group can be ``edited'' by pressing @kbd{RET}, meaning a
file will be opened, or a directory explicitly opened in speedbar. A
group can be expanded or contracted using @kbd{+} or
@kbd{-}. @xref{Basic Key Bindings}.
@@ -292,7 +292,7 @@ Unadorned text will generally be colorless, and not clickable.
Each type of Group, item indicator, and label is given a different
color. The colors chosen are dependent on whether the background color
is light or dark.
-Of important note is that the `current item', which may be a buffer or
+Of important note is that the ``current item'', which may be a buffer or
file name, is highlighted red, and underlined.
Colors can be customized from the group @code{speedbar-faces}. Some
@@ -1128,7 +1128,7 @@ The conventions allow almost anything to be inserted, but several helper
functions are provided to make it easy to create the standardized
buttons.
-To understand the built in functions, each `button' in speedbar consists
+To understand the built in functions, each ``button'' in speedbar consists
of four important pieces of data. The text to be displayed, token
data to be associated with the text, a function to call, and some face to
display it in.
diff --git a/doc/misc/todo-mode.texi b/doc/misc/todo-mode.texi
index f58965cadab..3032da34e28 100644
--- a/doc/misc/todo-mode.texi
+++ b/doc/misc/todo-mode.texi
@@ -702,13 +702,13 @@ prompt, after typing @kbd{i} to invoke @code{todo-insert-item}, looks
like this:
@example
-Press a key (so far `i'): @{ i=>default p=>copy @} @{ y=>diary k=>nonmarking @} @{ c=>calendar d=>date n=>dayname @} t=>time @{ h=>here r=>region @}
+Press a key (so far @kbd{i}): @{ i=>default p=>copy @} @{ y=>diary k=>nonmarking @} @{ c=>calendar d=>date n=>dayname @} t=>time @{ h=>here r=>region @}
@end example
@noindent If you now type @kbd{y}, the prompt changes to this:
@example
-Press a key (so far `i y'): y=>diary:GO! @{ c=>calendar d=>date n=>dayname @} t=>time @{ h=>here r=>region @}
+Press a key (so far @kbd{i y}): y=>diary:GO! @{ c=>calendar d=>date n=>dayname @} t=>time @{ h=>here r=>region @}
@end example
@noindent Notice that the pair @samp{k=>nonmarking} is now absent, since it
@@ -892,7 +892,7 @@ is on a done item, this displays the following prompt in the echo
area:
@example
-Press a key (so far `e'): c=>add/edit comment d=>delete comment
+Press a key (so far @kbd{e}): c=>add/edit comment d=>delete comment
@end example
@noindent
@@ -903,7 +903,7 @@ echo area, and you can continue or complete the invocation only by
typing one of the listed keys:
@example
-Press a key (so far `e'): e=>edit h=>header m=>multiline y=>diary k=>nonmarking d=>date t=>time
+Press a key (so far @kbd{e}): e=>edit h=>header m=>multiline y=>diary k=>nonmarking d=>date t=>time
@end example
As noted above, passing the @samp{date} parameter does not complete
@@ -912,7 +912,7 @@ following prompt, and typing any of these keys does complete the
invocation:
@example
-Press a key (so far `e d'): f=>full c=>calendar a=>today n=>dayname y=>year m=>month d=>daynum
+Press a key (so far @kbd{e d}): f=>full c=>calendar a=>today n=>dayname y=>year m=>month d=>daynum
@end example
In addition to the item-level invocations @kbd{e y}, to change the
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi
index d9cb933cb6c..1875a70af43 100644
--- a/doc/misc/tramp.texi
+++ b/doc/misc/tramp.texi
@@ -105,8 +105,8 @@ copy and modify this GNU manual.''
This file documents @value{tramp} version @value{trampver}, a remote file
editing package for @value{emacsname}.
-@value{tramp} stands for `Transparent Remote (file) Access, Multiple
-Protocol'. This package provides remote file editing, similar to
+@value{tramp} stands for ``Transparent Remote (file) Access, Multiple
+Protocol''. This package provides remote file editing, similar to
@value{ftppackagename}.
The difference is that @value{ftppackagename} uses FTP to transfer
@@ -704,7 +704,7 @@ the remote host, this option uses @samp{ssh -t -t @var{host} -l
@var{user} /bin/sh} to open a connection. This is useful for users
where the normal login shell is set up to ask them a number of
questions when logging in. This procedure avoids these questions, and
-just gives @value{tramp} a more-or-less `standard' login shell to work
+just gives @value{tramp} a more-or-less ``standard'' login shell to work
with.
Note that this procedure does not eliminate questions asked by
@@ -856,7 +856,7 @@ the remote host, this option uses @samp{ssh -t -t @var{host} -l
@var{user} /bin/sh} to open a connection. This is useful for users
where the normal login shell is set up to ask them a number of
questions when logging in. This procedure avoids these questions, and
-just gives @value{tramp} a more-or-less `standard' login shell to work
+just gives @value{tramp} a more-or-less ``standard'' login shell to work
with.
This is also useful for Windows users where @command{ssh}, when
@@ -2210,7 +2210,7 @@ When
is @code{nil} (the default), such problems do not occur.
Therefore, it is useful to set special values for @value{tramp}
-files. For example, the following statement effectively `turns off'
+files. For example, the following statement effectively ``turns off''
the effect of
@ifset emacs
@code{backup-directory-alist}
@@ -3256,7 +3256,7 @@ file name completion, report a bug to the @value{tramp} developers.
File name completion does not work in large directories
@value{tramp} uses globbing for some operations. (Globbing means to use the
-shell to expand wildcards such as `*.c'.) This might create long
+shell to expand wildcards such as @samp{*.c}.) This might create long
command lines, especially in directories with many files. Some shells
choke on long command lines, or don't cope well with the globbing
itself.
diff --git a/doc/misc/url.texi b/doc/misc/url.texi
index a1fa31fe6ce..8c4afbe28b6 100644
--- a/doc/misc/url.texi
+++ b/doc/misc/url.texi
@@ -1116,7 +1116,7 @@ This the @samp{nslookup} program. It is @code{"nslookup"} by default.
@cindex network connections, suppressing
@cindex suppressing network connections
@cindex bugs, HTML
-@cindex HTML `bugs'
+@cindex HTML ``bugs''
In some circumstances it is desirable to suppress making network
connections. A typical case is when rendering HTML in a mail user
agent, when external URLs should not be activated, particularly to
diff --git a/doc/misc/vhdl-mode.texi b/doc/misc/vhdl-mode.texi
index 777bb107772..829c4f6564b 100644
--- a/doc/misc/vhdl-mode.texi
+++ b/doc/misc/vhdl-mode.texi
@@ -898,7 +898,7 @@ The official Emacs VHDL Mode Home Page can be found at
@chapter Sample @file{.emacs} file
@cindex Sample @file{.emacs} file
-Most customizations can be done using the `Customize' entry in the
+Most customizations can be done using the ``Customize'' entry in the
VHDL Mode menu, which requires no editing of the .emacs file.
If you want to customize indentation, here you go:
diff --git a/doc/misc/vip.texi b/doc/misc/vip.texi
index ebb14944e24..250ced951b1 100644
--- a/doc/misc/vip.texi
+++ b/doc/misc/vip.texi
@@ -1023,14 +1023,14 @@ Jump to mark (and pop mark off the mark ring).
Emacs uses the @dfn{mark ring} to store marked positions. The commands
@kbd{m <}, @kbd{m >} and @kbd{m .}@: not only set mark but also add it as the
latest element of the mark ring (replacing the oldest one). By repeating
-the command `@kbd{m ,}' you can visit older and older marked positions. You
+the command @kbd{m ,} you can visit older and older marked positions. You
will eventually be in a loop as the mark ring is a ring.
@node Motion Commands
@section Motion Commands
Commands for moving around in the current buffer are collected here. These
-commands are used as an `argument' for the delete, change and yank commands
+commands are used as an ``argument'' for the delete, change and yank commands
to be described in the next section.
@table @kbd
@@ -1113,7 +1113,7 @@ considered as a sequence of non-white characters (@code{vip-end-of-Word}).
@end table
@noindent
@cindex syntax table
-Here the meaning of the word `word' for the @kbd{w}, @kbd{b} and @kbd{e}
+Here the meaning of the word ``word'' for the @kbd{w}, @kbd{b} and @kbd{e}
commands is determined by the @dfn{syntax table} effective in the current
buffer. Each major mode has its syntax mode, and therefore the meaning of
a word also changes as the major mode changes. See GNU Emacs Manual for
@@ -1380,7 +1380,7 @@ Delete a character before point. Given @var{n}, delete @var{n} characters
@cindex yank
Yank commands @dfn{yank} a text of buffer into a (usually anonymous) register.
-Here the word `yank' is used in Vi's sense. Thus yank commands do not
+Here the word ``yank'' is used in Vi's sense. Thus yank commands do not
alter the content of the buffer, and useful only in combination with
commands that put back the yanked text into the buffer.
diff --git a/doc/misc/viper.texi b/doc/misc/viper.texi
index 0ccc6ac91d5..cfaf4e66d85 100644
--- a/doc/misc/viper.texi
+++ b/doc/misc/viper.texi
@@ -655,11 +655,12 @@ alone as a default is meaningless, since this command requires a file
argument.
@end table
@noindent
-As in Vi, Viper's destructive commands can be re-executed by typing `@kbd{.}'.
+As in Vi, Viper's destructive commands can be re-executed by typing
+a period (@kbd{.}).
However, in addition, Viper keeps track of the history of such commands. This
history can be perused by typing @kbd{C-c M-p} and @kbd{C-c M-n}.
Having found the appropriate command, it can be then executed by typing
-`@kbd{.}'.
+a period.
@xref{Improvements over Vi}, for more information.
@node Insert State
@@ -877,7 +878,8 @@ want to change this.
@noindent
Currently undisplayed files can be listed using the @kbd{:ar} command. The
command @kbd{:n} can be given counts from the @kbd{:ar} list to switch to
-other files. For example, use `:n3' to move to the third file in that list.
+other files. For example, use @samp{:n3} to move to the third file in
+that list.
@node Unimplemented Features
@section Unimplemented Features
@@ -1457,8 +1459,8 @@ In Vi state, these commands let the user peruse the history of Vi-style
destructive commands, such as @kbd{dw}, @kbd{J}, @kbd{a}, etc.
By repeatedly typing @kbd{C-c M-p} or @kbd{C-c M-n} you will cycle Viper
through the recent history of Vi commands, displaying the commands one by
-one. Once
-an appropriate command is found, it can be executed by typing `@kbd{.}'.
+one. Once an appropriate command is found, it can be executed by
+typing a period.
Since typing @kbd{C-c M-p} is tedious, it is more convenient to bind an
appropriate function to a function key on the keyboard and use that key.
@@ -1626,7 +1628,7 @@ values. The corresponding :se command is also indicated. (The symbols
Viper supports both the abbreviated Vi variable names and their full
names. Variable completion is done on full names only. @key{TAB} and
@key{SPC} complete
-variable names. Typing `=' will complete the name and then will prompt for
+variable names. Typing @kbd{=} will complete the name and then will prompt for
a value, if applicable. For instance, @kbd{:se au @key{SPC}} will complete the
command to @kbd{:set autoindent}; @kbd{:se ta @key{SPC}} will complete the command
and prompt further like this: @kbd{:set tabstop = }.
@@ -1800,8 +1802,8 @@ unless you are a novice, as this precludes the use
of language-specific features provided by the major modes.
@item viper-keep-point-on-repeat t
If not @code{nil}, point is not moved when the user repeats the previous
-command by typing `.' This is very useful for doing repeated changes with
-the @kbd{.} key.
+command by typing a period. This is very useful for doing repeated
+changes with the @kbd{.} key.
@item viper-repeat-from-history-key 'f12
Prefix key used to invoke the macros @kbd{f12 1} and @kbd{f12 2} that repeat
the second-last and the third-last destructive command.
@@ -2375,23 +2377,24 @@ shown above, and then setting it in the desired major modes as follows:
@end example
@item Vi-isms in Emacs state
-Some people find it useful to use the Vi-style search key, `/', to invoke
+Some people find it useful to use the Vi-style search key, @kbd{/}, to invoke
search in modes which Viper leaves in emacs-state. These modes are:
@code{dired-mode}, @code{mh-folder-mode},
@code{Info-mode}, and @code{Buffer-menu-mode}
-(more may be added in the future). So, in the above modes, Viper binds `/'
+(more may be added in the future). So, in the above modes, Viper binds @kbd{/}
so that it will behave Vi-style. Furthermore, in those major modes, Viper
-binds `:' to invoke ex-style commands, like in vi-state. And, as described
-above, `//' and `///' get bound to Vi-style macros that toggle
+binds @kbd{:} to invoke ex-style commands, like in vi-state. And, as described
+above, @kbd{//} and @kbd{///} get bound to Vi-style macros that toggle
case-insensitivity and regexp-search.
If you don't like these features---which I don't really understand---you
-can unbind `/' and `:' in @code{viper-dired-modifier-map} (for Dired) or in
-@code{viper-slash-and-colon-map}, for other modes.
+can unbind @kbd{/} and @kbd{:} in @code{viper-dired-modifier-map} (for
+Dired) or in @code{viper-slash-and-colon-map}, for other modes.
@vindex @code{viper-slash-and-colon-map}
@vindex @code{viper-dired-modifier-map}
-To unbind the macros `//' and `///' for a major mode where you feel they
+To unbind the macros @kbd{//} and @kbd{///} for a major mode where you
+feel they
are undesirable, execute @code{viper-set-emacs-state-searchstyle-macros} with a
non-@code{nil} argument. This can be done either interactively, by supplying a
prefix argument, or by placing
@@ -2419,16 +2422,17 @@ Change your user level interactively.
Viper supports Emacs-style file completion when it prompts the user for a
file name. However, in many cases, the same directory may contain files
with identical prefix but different suffixes, e.g., prog.c, prog.o,
-paper.tex, paper.dvi. In such cases, completion will stop at the `.'.
+paper.tex, paper.dvi. In such cases, completion will stop at the period.
If the above variable is a list of strings representing suffixes, Viper will
try these suffixes
in the order listed and will check if the corresponding file exists.
-For instance, if completion stopped at `paper.'@: and the user typed
-@key{RET},
-then Viper will check if the files `paper.', `paper.tex', `paper.c', etc., exist.
+For instance, if completion stopped at @samp{paper.} and the user
+typed @key{RET}, then Viper will check if the files @file{paper.},
+@file{paper.tex}, @file{paper.c}, etc., exist.
It will take the first such file. If no file exists, Viper will give a chance
-to complete the file name by typing the appropriate suffix. If `paper.'@: was
+to complete the file name by typing the appropriate suffix.
+If @file{paper.} was
the intended file name, hitting return will accept it.
To turn this feature off, set the above variable to @code{nil}.
@@ -2473,9 +2477,9 @@ major modes.
Viper keeps track of the recent history of destructive
commands, such as @kbd{dw}, @kbd{i}, etc.
In Vi state,
-the most recent command can be re-executed by hitting `@kbd{.}', as in Vi.
+the most recent command can be re-executed by hitting a period, as in Vi.
However, repeated typing @kbd{C-c M-p} will cause Viper to show the
-previous destructive commands in the minibuffer. Subsequent hitting `@kbd{.}'
+previous destructive commands in the minibuffer. Subsequent hitting period
will execute the command that was displayed last.
The key @kbd{C-c M-n} will cycle through the command history in the
opposite direction.
@@ -2598,8 +2602,8 @@ your Viper customization file:
This would bind mouse search to the action invoked by pressing the
Meta key and clicking mouse button 1. The allowed values of
@code{viper-mouse-search-key} are lists that contain a mouse-button number
-(1,2, or 3) and any combination of the words `control', `meta', and
-`shift'.
+(1,2, or 3) and any combination of the words ``control'', ``meta'', and
+``shift''.
If the requested mouse action (e.g., (meta 1)) is already taken for other
purposes then you have to confirm your intention by placing the following
@@ -2616,9 +2620,9 @@ The region that is chosen as a pattern to search for is determined as
follows. If search is invoked via a single click, Viper chooses the region
that lies between the beginning of the ``word'' under the pointer (``word''
is understood in Vi sense) and the end of that word. The only difference
-with Vi's words is that in Lisp major modes `-' is considered an
+with Vi's words is that in Lisp major modes @samp{-} is considered an
alphanumeric symbol. This is done for the convenience of working with Lisp
-symbols, which often have an `-' in them. Also, if you click on a
+symbols, which often have an @samp{-} in them. Also, if you click on a
non-alphanumeric character that is not a word separator (in Vi sense) then
this character will also be considered alphanumeric, provided that it is
adjacent (from either side) to an alphanumeric character. This useful
@@ -3164,7 +3168,8 @@ By default, Viper syntax preference is @code{reformed-vi}, which means that
Viper considers only those symbols to be part of a word that are specified
as word-symbols by the current Emacs syntax table (which may be different
for different major modes) plus the underscore symbol @kbd{_}, minus the
-symbols that are not considered words in Vi (e.g., `,',;, etc.), but may be
+symbols that are not considered words in Vi (e.g., @samp{,}, @samp{;},
+etc.), but may be
considered as word-symbols by various Emacs major modes. Reformed-Vi works
very close to Vi, and it also recognizes words in other
alphabets. Therefore, this is the most appropriate mode for editing text
@@ -3546,7 +3551,7 @@ the direction
of older commands, while hitting @kbd{C-c M-n} does so in reverse
order. Each command in the history is displayed in the minibuffer. The
displayed command can
-then be executed by typing `@kbd{.}'.
+then be executed by typing a period.
Since typing the above sequences of keys may be tedious, the
functions doing the perusing can be bound to unused keyboard keys in the
@@ -4261,7 +4266,7 @@ character on the previous line.
This setting affects the current buffer only.
@item autoindent-global
@itemx ai-global
-Same as `autoindent', but affects all buffers.
+Same as @code{autoindent}, but affects all buffers.
@item noautoindent
@itemx noai
Cancel autoindent.
@@ -4320,7 +4325,7 @@ their normal length (default 8 positions).
This setting affects the current buffer only.
@item tabstop-global
@itemx ts-g
-Same as `tabstop', but affects all buffers.
+Same as @code{tabstop}, but affects all buffers.
@item wrapmargin=<count>
@itemx wm=<count>
@cindex auto fill
diff --git a/doc/misc/widget.texi b/doc/misc/widget.texi
index 6d5b6d37afd..1942b79977a 100644
--- a/doc/misc/widget.texi
+++ b/doc/misc/widget.texi
@@ -66,7 +66,7 @@ modify this GNU manual.''
@chapter Introduction
Most graphical user interface toolkits provide a number of standard
-user interface controls (sometimes known as `widgets' or `gadgets').
+user interface controls (sometimes known as ``widgets'' or ``gadgets'').
Emacs doesn't really support anything like this, except for an
incredibly powerful text ``widget.'' On the other hand, Emacs does
provide the necessary primitives to implement many other widgets
diff --git a/doc/misc/woman.texi b/doc/misc/woman.texi
index a25924919a5..a935bedd47f 100644
--- a/doc/misc/woman.texi
+++ b/doc/misc/woman.texi
@@ -12,8 +12,8 @@
@c %**end of header
@copying
-This file documents WoMan: A program to browse Unix manual pages `W.O.
-(without) man'.
+This file documents WoMan: A program to browse Unix manual pages ``W.O.
+(without) man''.
Copyright @copyright{} 2001--2015 Free Software Foundation, Inc.
@@ -172,7 +172,7 @@ is important I will refer to them both ambiguously as @code{roff}.
@code{roff} markup consists of @dfn{requests} and @dfn{escape
sequences}. A request occupies a complete line and begins with either a
-period or a single forward quote. An escape sequences is embedded
+period or an apostrophe. An escape sequence is embedded
within the input text and begins (by default) with a backslash. The
original man macro package defines 20 new @code{roff} requests
implemented as macros, which were considered to be sufficient for