aboutsummaryrefslogtreecommitdiffstats
path: root/doc/lispref
diff options
context:
space:
mode:
authorGlenn Morris2012-04-13 18:46:06 -0700
committerGlenn Morris2012-04-13 18:46:06 -0700
commit35dc09a19c606f9e7a078df32d030451c7c90ba1 (patch)
tree8df2ade99ad8620568094d61bba9dd4ac8856c43 /doc/lispref
parent327732d994c98849c765659aa2164a7482b6beab (diff)
parentad3a2b411dc2b34f5d6fa434aee3ca56fa7a88e7 (diff)
downloademacs-35dc09a19c606f9e7a078df32d030451c7c90ba1.tar.gz
emacs-35dc09a19c606f9e7a078df32d030451c7c90ba1.zip
Merge from emacs-24, up to 2012-04-10T02:06:19Z!larsi@gnus.org
Diffstat (limited to 'doc/lispref')
-rw-r--r--doc/lispref/ChangeLog37
-rw-r--r--doc/lispref/Makefile.in11
-rw-r--r--doc/lispref/buffers.texi4
-rw-r--r--doc/lispref/compile.texi8
-rw-r--r--doc/lispref/customize.texi196
-rw-r--r--doc/lispref/debugging.texi10
-rw-r--r--doc/lispref/display.texi75
-rw-r--r--doc/lispref/edebug.texi18
-rw-r--r--doc/lispref/elisp.texi6
-rw-r--r--doc/lispref/eval.texi2
-rw-r--r--doc/lispref/files.texi10
-rw-r--r--doc/lispref/frames.texi2
-rw-r--r--doc/lispref/help.texi12
-rw-r--r--doc/lispref/intro.texi2
-rw-r--r--doc/lispref/keymaps.texi6
-rw-r--r--doc/lispref/loading.texi4
-rw-r--r--doc/lispref/minibuf.texi4
-rw-r--r--doc/lispref/modes.texi16
-rw-r--r--doc/lispref/objects.texi2
-rw-r--r--doc/lispref/os.texi46
-rw-r--r--doc/lispref/processes.texi32
-rw-r--r--doc/lispref/strings.texi2
-rw-r--r--doc/lispref/text.texi2
-rw-r--r--doc/lispref/vol1.texi6
-rw-r--r--doc/lispref/vol2.texi6
25 files changed, 360 insertions, 159 deletions
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index b5bdba1296f..6b3aba6d799 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,3 +1,40 @@
12012-04-14 Chong Yidong <cyd@gnu.org>
2
3 * customize.texi (Applying Customizations):
4 (Custom Themes): New nodes.
5
6 * display.texi (Defining Faces): Reference custom-set-faces.
7
8 * modes.texi (Defining Minor Modes, Defining Minor Modes):
9 * os.texi (Startup Summary): Copyedits.
10
112012-04-14 Glenn Morris <rgm@gnu.org>
12
13 * loading.texi (Loading Non-ASCII): "unibyte:" can also be at the end.
14
15 * strings.texi (Case Tables):
16 * objects.texi (General Escape Syntax):
17 * keymaps.texi (Key Sequences): Use @acronym with "ASCII".
18
19 * buffers.texi, compile.texi, customize.texi, debugging.texi:
20 * display.texi, edebug.texi, eval.texi, help.texi, intro.texi:
21 * keymaps.texi, minibuf.texi, modes.texi, os.texi, processes.texi:
22 * text.texi: Use @file for buffers, per the Texinfo manual.
23
24 * compile.texi (Compiler Errors): Add missing space in buffer name.
25
262012-04-14 Chong Yidong <cyd@gnu.org>
27
28 * processes.texi (Query Before Exit): Remove obsolete function
29 process-kill-without-query (Bug#11190).
30
312012-04-14 Glenn Morris <rgm@gnu.org>
32
33 * files.texi, frames.texi, loading.texi, os.texi, processes.texi:
34 Use @env for environment variables.
35
36 * Makefile.in: Replace non-portable use of $< in ordinary rules.
37
12012-04-12 Jari Aalto <jari.aalto@cante.net> 382012-04-12 Jari Aalto <jari.aalto@cante.net>
2 39
3 * processes.texi (Synchronous Processes): Mention 40 * processes.texi (Synchronous Processes): Mention
diff --git a/doc/lispref/Makefile.in b/doc/lispref/Makefile.in
index 5094a3f8ab6..10ec236eaee 100644
--- a/doc/lispref/Makefile.in
+++ b/doc/lispref/Makefile.in
@@ -106,21 +106,22 @@ html: elisp.html
106pdf: elisp.pdf 106pdf: elisp.pdf
107ps: elisp.ps 107ps: elisp.ps
108 108
109## Note: "<" is not portable in ordinary make rules.
109$(infodir)/elisp: $(srcs) 110$(infodir)/elisp: $(srcs)
110 $(mkinfodir) 111 $(mkinfodir)
111 $(MAKEINFO) $(MAKEINFO_OPTS) -o $@ $< 112 $(MAKEINFO) $(MAKEINFO_OPTS) -o $@ $(srcdir)/elisp.texi
112 113
113elisp.dvi: $(srcs) 114elisp.dvi: $(srcs)
114 $(ENVADD) $(TEXI2DVI) $< 115 $(ENVADD) $(TEXI2DVI) $(srcdir)/elisp.texi
115 116
116elisp.html: $(srcs) 117elisp.html: $(srcs)
117 $(MAKEINFO) $(MAKEINFO_OPTS) --html -o $@ $< 118 $(MAKEINFO) $(MAKEINFO_OPTS) --html -o $@ $(srcdir)/elisp.texi
118 119
119elisp.ps: elisp.dvi 120elisp.ps: elisp.dvi
120 $(DVIPS) -o $@ $< 121 $(DVIPS) -o $@ elisp.dvi
121 122
122elisp.pdf: $(srcs) 123elisp.pdf: $(srcs)
123 $(ENVADD) $(TEXI2PDF) $< 124 $(ENVADD) $(TEXI2PDF) $(srcdir)/elisp.texi
124 125
125.PHONY: mostlyclean clean distclean maintainer-clean infoclean 126.PHONY: mostlyclean clean distclean maintainer-clean infoclean
126 127
diff --git a/doc/lispref/buffers.texi b/doc/lispref/buffers.texi
index 125a886ecb2..433663b4260 100644
--- a/doc/lispref/buffers.texi
+++ b/doc/lispref/buffers.texi
@@ -863,7 +863,7 @@ a buffer visible in any window on any visible frame, except as a last
863resort. If @var{visible-ok} is non-@code{nil}, then it does not matter 863resort. If @var{visible-ok} is non-@code{nil}, then it does not matter
864whether a buffer is displayed somewhere or not. 864whether a buffer is displayed somewhere or not.
865 865
866If no suitable buffer exists, the buffer @samp{*scratch*} is returned 866If no suitable buffer exists, the buffer @file{*scratch*} is returned
867(and created, if necessary). 867(and created, if necessary).
868@end defun 868@end defun
869 869
@@ -874,7 +874,7 @@ selected frame's buffer list.
874 874
875The argument @var{visible-ok} is handled as with @code{other-buffer}, 875The argument @var{visible-ok} is handled as with @code{other-buffer},
876see above. If no suitable buffer can be found, the buffer 876see above. If no suitable buffer can be found, the buffer
877@samp{*scratch*} is returned. 877@file{*scratch*} is returned.
878@end defun 878@end defun
879 879
880@deffn Command bury-buffer &optional buffer-or-name 880@deffn Command bury-buffer &optional buffer-or-name
diff --git a/doc/lispref/compile.texi b/doc/lispref/compile.texi
index 90d038c29d6..093c91f02b0 100644
--- a/doc/lispref/compile.texi
+++ b/doc/lispref/compile.texi
@@ -92,7 +92,7 @@ the @code{byte-compile} function. You can compile a whole file with
92 92
93 Sometimes, the byte compiler produces warning and/or error messages 93 Sometimes, the byte compiler produces warning and/or error messages
94(@pxref{Compiler Errors}, for details). These messages are recorded 94(@pxref{Compiler Errors}, for details). These messages are recorded
95in a buffer called @samp{*Compile-Log*}, which uses Compilation mode. 95in a buffer called @file{*Compile-Log*}, which uses Compilation mode.
96@xref{Compilation Mode,,,emacs, The GNU Emacs Manual}. 96@xref{Compilation Mode,,,emacs, The GNU Emacs Manual}.
97 97
98@cindex macro compilation 98@cindex macro compilation
@@ -443,14 +443,14 @@ to what @code{eval-when-compile} does.
443@cindex compiler errors 443@cindex compiler errors
444 444
445 Byte compilation outputs all errors and warnings into the buffer 445 Byte compilation outputs all errors and warnings into the buffer
446@samp{*Compile-Log*}. The messages include file names and line 446@file{*Compile-Log*}. The messages include file names and line
447numbers that identify the location of the problem. The usual Emacs 447numbers that identify the location of the problem. The usual Emacs
448commands for operating on compiler diagnostics work properly on these 448commands for operating on compiler diagnostics work properly on these
449messages. 449messages.
450 450
451 When an error is due to invalid syntax in the program, the byte 451 When an error is due to invalid syntax in the program, the byte
452compiler might get confused about the errors' exact location. One way 452compiler might get confused about the errors' exact location. One way
453to investigate is to switch to the buffer @w{@samp{*Compiler Input*}}. 453to investigate is to switch to the buffer @w{@file{ *Compiler Input*}}.
454(This buffer name starts with a space, so it does not show up in 454(This buffer name starts with a space, so it does not show up in
455@kbd{M-x list-buffers}.) This buffer contains the program being 455@kbd{M-x list-buffers}.) This buffer contains the program being
456compiled, and point shows how far the byte compiler was able to read; 456compiled, and point shows how far the byte compiler was able to read;
@@ -602,7 +602,7 @@ the stack.
602@deffn Command disassemble object &optional buffer-or-name 602@deffn Command disassemble object &optional buffer-or-name
603This command displays the disassembled code for @var{object}. In 603This command displays the disassembled code for @var{object}. In
604interactive use, or if @var{buffer-or-name} is @code{nil} or omitted, 604interactive use, or if @var{buffer-or-name} is @code{nil} or omitted,
605the output goes in a buffer named @samp{*Disassemble*}. If 605the output goes in a buffer named @file{*Disassemble*}. If
606@var{buffer-or-name} is non-@code{nil}, it must be a buffer or the 606@var{buffer-or-name} is non-@code{nil}, it must be a buffer or the
607name of an existing buffer. Then the output goes there, at point, and 607name of an existing buffer. Then the output goes there, at point, and
608point is left before the output. 608point is left before the output.
diff --git a/doc/lispref/customize.texi b/doc/lispref/customize.texi
index d86aea24fbc..ea84afdd408 100644
--- a/doc/lispref/customize.texi
+++ b/doc/lispref/customize.texi
@@ -4,20 +4,25 @@
4@c See the file elisp.texi for copying conditions. 4@c See the file elisp.texi for copying conditions.
5@setfilename ../../info/customize 5@setfilename ../../info/customize
6@node Customization, Loading, Macros, Top 6@node Customization, Loading, Macros, Top
7@chapter Writing Customization Definitions 7@chapter Customization Settings
8 8
9@cindex customization definitions 9@cindex customization item
10 This chapter describes how to declare user options for customization, 10 This chapter describes how to declare customizable variables and
11and also customization groups for classifying them. We use the term 11customization groups for classifying them. We use the term
12@dfn{customization item} to include both kinds of customization 12@dfn{customization item} to include customizable variables,
13definitions---as well as face definitions (@pxref{Defining Faces}). 13customization groups, as well as faces.
14
15 @xref{Defining Faces}, for the @code{defface} macro, which is used
16for declaring customizable faces.
14 17
15@menu 18@menu
16* Common Keywords:: Common keyword arguments for all kinds of 19* Common Keywords:: Common keyword arguments for all kinds of
17 customization declarations. 20 customization declarations.
18* Group Definitions:: Writing customization group definitions. 21* Group Definitions:: Writing customization group definitions.
19* Variable Definitions:: Declaring user options. 22* Variable Definitions:: Declaring user options.
20* Customization Types:: Specifying the type of a user option. 23* Customization Types:: Specifying the type of a user option.
24* Applying Customizations:: Functions to apply customization settings.
25* Custom Themes:: Writing Custom themes.
21@end menu 26@end menu
22 27
23@node Common Keywords 28@node Common Keywords
@@ -306,7 +311,7 @@ individual types for a description of how to use @code{:options}.
306@item :set @var{setfunction} 311@item :set @var{setfunction}
307@kindex set@r{, @code{defcustom} keyword} 312@kindex set@r{, @code{defcustom} keyword}
308Specify @var{setfunction} as the way to change the value of this 313Specify @var{setfunction} as the way to change the value of this
309option when using the Customize user interface. The function 314option when using the Customize interface. The function
310@var{setfunction} should take two arguments, a symbol (the option 315@var{setfunction} should take two arguments, a symbol (the option
311name) and the new value, and should do whatever is necessary to update 316name) and the new value, and should do whatever is necessary to update
312the value properly for this option (which may not mean simply setting 317the value properly for this option (which may not mean simply setting
@@ -588,7 +593,7 @@ The value must be a coding-system name, and you can do completion with
588@item color 593@item color
589The value must be a valid color name. The widget provides completion 594The value must be a valid color name. The widget provides completion
590for color names, as well as a sample and a button for selecting a 595for color names, as well as a sample and a button for selecting a
591color name from a list of color names shown in a @samp{*Colors*} 596color name from a list of color names shown in a @file{*Colors*}
592buffer. 597buffer.
593@end table 598@end table
594 599
@@ -1242,3 +1247,168 @@ the inferior widgets will convert @emph{their} inferior widgets. If
1242the data structure is itself recursive, this conversion is an infinite 1247the data structure is itself recursive, this conversion is an infinite
1243recursion. The @code{lazy} widget prevents the recursion: it convert 1248recursion. The @code{lazy} widget prevents the recursion: it convert
1244its @code{:type} argument only when needed. 1249its @code{:type} argument only when needed.
1250
1251@node Applying Customizations
1252@section Applying Customizations
1253
1254The following functions are responsible for installing the user's
1255customization settings for variables and faces, respectively. When
1256the user invokes @samp{Save for future sessions} in the Customize
1257interface, that takes effect by writing a @code{custom-set-variables}
1258and/or a @code{custom-set-faces} form into the custom file, to be
1259evaluated the next time Emacs starts up.
1260
1261@defun custom-set-variables &rest args
1262This function installs the variable customizations specified by
1263@var{args}. Each argument in @var{args} should have the form
1264
1265@example
1266(@var{var} @var{expression} [@var{now} [@var{request} [@var{comment}]]])
1267@end example
1268
1269@noindent
1270@var{var} is a variable name (a symbol), and @var{expression} is an
1271expression which evaluates to the desired customized value.
1272
1273If the @code{defcustom} form for @var{var} has been evaluated prior to
1274this @code{custom-set-variables} call, @var{expression} is immediately
1275evaluated, and the variable's value is set to the result. Otherwise,
1276@var{expression} is stored into the variable's @code{saved-value}
1277property, to be evaluated when the relevant @code{defcustom} is called
1278(usually when the library defining that variable is loaded into
1279Emacs).
1280
1281The @var{now}, @var{request}, and @var{comment} entries are for
1282internal use only, and may be omitted. @var{now}, if non-@code{nil},
1283means to set the variable's value now, even if the variable's
1284@code{defcustom} form has not been evaluated. @var{request} is a list
1285of features to be loaded immediately (@pxref{Named Features}).
1286@var{comment} is a string describing the customization.
1287@end defun
1288
1289@defun custom-set-faces &rest args
1290This function installs the face customizations specified by
1291@var{args}. Each argument in @var{args} should have the form
1292
1293@example
1294(@var{face} @var{spec} [@var{now} [@var{comment}]])
1295@end example
1296
1297@noindent
1298@var{face} is a face name (a symbol), and @var{spec} is the customized
1299face specification for that face (@pxref{Defining Faces}).
1300
1301The @var{now} and @var{comment} entries are for internal use only, and
1302may be omitted. @var{now}, if non-@code{nil}, means to install the
1303face specification now, even if the @code{defface} form has not been
1304evaluated. @var{comment} is a string describing the customization.
1305@end defun
1306
1307@node Custom Themes
1308@section Custom Themes
1309
1310 @dfn{Custom themes} are collections of settings that can be enabled
1311or disabled as a unit. @xref{Custom Themes,,, emacs, The GNU Emacs
1312Manual}. Each Custom theme is defined by an Emacs Lisp source file,
1313which should follow the conventions described in this section.
1314(Instead of writing a Custom theme by hand, you can also create one
1315using a Customize-like interface; @pxref{Creating Custom Themes,,,
1316emacs, The GNU Emacs Manual}.)
1317
1318 A Custom theme file should be named @file{@var{foo}-theme.el}, where
1319@var{foo} is the theme name. The first Lisp form in the file should
1320be a call to @code{deftheme}, and the last form should be a call to
1321@code{provide-theme}.
1322
1323@defmac deftheme theme &optional doc
1324This macro declares @var{theme} (a symbol) as the name of a Custom
1325theme. The optional argument @var{doc} should be a string describing
1326the theme; this is the description shown when the user invokes the
1327@code{describe-theme} command or types @kbd{?} in the @samp{*Custom
1328Themes*} buffer.
1329
1330Two special theme names are disallowed: @code{user} is a ``dummy''
1331theme which stores the user's direct customization settings, and
1332@code{changed} is a ``dummy'' theme which stores changes made outside
1333of the Customize system. If you specify either of these as the
1334@var{theme} argument, @code{deftheme} signals an error.
1335@end defmac
1336
1337@defmac provide-theme theme
1338This macro declares that the theme named @var{theme} has been fully
1339specified.
1340@end defmac
1341
1342 In between @code{deftheme} and @code{provide-theme} are Lisp forms
1343specifying the theme settings: usually a call to
1344@code{custom-theme-set-variables} and/or a call to
1345@code{custom-theme-set-faces}.
1346
1347@defun custom-theme-set-variables theme &rest args
1348This function specifies the Custom theme @var{theme}'s variable
1349settings. @var{theme} should be a symbol. Each argument in
1350@var{args} should be a list of the form
1351
1352@example
1353(@var{var} @var{expression} [@var{now} [@var{request} [@var{comment}]]])
1354@end example
1355
1356@noindent
1357where the list entries have the same meanings as in
1358@code{custom-set-variables}. @xref{Applying Customizations}.
1359@end defun
1360
1361@defun custom-theme-set-faces theme &rest args
1362This function specifies the Custom theme @var{theme}'s face settings.
1363@var{theme} should be a symbol. Each argument in @var{args} should be
1364a list of the form
1365
1366@example
1367(@var{face} @var{spec} [@var{now} [@var{comment}]])
1368@end example
1369
1370@noindent
1371where the list entries have the same meanings as in
1372@code{custom-set-faces}. @xref{Applying Customizations}.
1373@end defun
1374
1375 In theory, a theme file can also contain other Lisp forms, which
1376would be evaluated when loading the theme, but that is ``bad form''.
1377To protect against loading themes containing malicious code, Emacs
1378displays the source file and asks for confirmation from the user
1379before loading any non-built-in theme for the first time.
1380
1381 The following functions are useful for programmatically enabling and
1382disabling Custom themes:
1383
1384@defun custom-theme-p theme
1385This function return a non-@code{nil} value if @var{theme} (a symbol)
1386is the name of a Custom theme (i.e.@: a Custom theme which has been
1387loaded into Emacs, whether or not the theme is enabled). Otherwise,
1388it returns @code{nil}.
1389@end defun
1390
1391@deffn Command load-theme theme &optional no-confirm no-enable
1392This function loads the Custom theme named @var{theme} from its source
1393file, looking for the source file in the directories specified by the
1394variable @code{custom-theme-load-path}. @xref{Custom Themes,,, emacs,
1395The GNU Emacs Manual}. It also @dfn{enables} the theme, causing its
1396variable and face settings to take effect.
1397
1398If the optional argument @var{no-confirm} is non-@code{nil}, this
1399skips prompting the user for confirmation before loading the theme.
1400
1401If the optional argument @var{no-enable} is non-@code{nil}, the theme
1402is loaded but not enabled.
1403@end deffn
1404
1405@deffn Command enable-theme theme
1406This function enables the Custom theme named @var{theme}. It signals
1407an error if no such theme has been loaded.
1408@end deffn
1409
1410@deffn Command disable-theme theme
1411This function disables the Custom theme named @var{theme}. The theme
1412remains loaded, so that a subsequent call to @code{enable-theme} will
1413re-enable it.
1414@end deffn
diff --git a/doc/lispref/debugging.texi b/doc/lispref/debugging.texi
index 6e7d0078e07..115d8ff42de 100644
--- a/doc/lispref/debugging.texi
+++ b/doc/lispref/debugging.texi
@@ -303,7 +303,7 @@ an implicit @code{progn} (@pxref{Sequencing}).
303@subsection Using the Debugger 303@subsection Using the Debugger
304 304
305 When the debugger is entered, it displays the previously selected 305 When the debugger is entered, it displays the previously selected
306buffer in one window and a buffer named @samp{*Backtrace*} in another 306buffer in one window and a buffer named @file{*Backtrace*} in another
307window. The backtrace buffer contains one line for each level of Lisp 307window. The backtrace buffer contains one line for each level of Lisp
308function execution currently going on. At the beginning of this buffer 308function execution currently going on. At the beginning of this buffer
309is a message describing the reason that the debugger was invoked (such 309is a message describing the reason that the debugger was invoked (such
@@ -412,7 +412,7 @@ the variable values within the debugger.
412 412
413@item R 413@item R
414Like @kbd{e}, but also save the result of evaluation in the 414Like @kbd{e}, but also save the result of evaluation in the
415buffer @samp{*Debugger-record*}. 415buffer @file{*Debugger-record*}.
416 416
417@item q 417@item q
418Terminate the program being debugged; return to top-level Emacs 418Terminate the program being debugged; return to top-level Emacs
@@ -450,7 +450,7 @@ to invoke the debugger.
450 450
451@defun debug &rest debugger-args 451@defun debug &rest debugger-args
452This function enters the debugger. It switches buffers to a buffer 452This function enters the debugger. It switches buffers to a buffer
453named @samp{*Backtrace*} (or @samp{*Backtrace*<2>} if it is the second 453named @file{*Backtrace*} (or @file{*Backtrace*<2>} if it is the second
454recursive entry to the debugger, etc.), and fills it with information 454recursive entry to the debugger, etc.), and fills it with information
455about the stack of Lisp function calls. It then enters a recursive 455about the stack of Lisp function calls. It then enters a recursive
456edit, showing the backtrace buffer in Debugger mode. 456edit, showing the backtrace buffer in Debugger mode.
@@ -461,7 +461,7 @@ buffer and returns to whatever called @code{debug}. This is the only
461way the function @code{debug} can return to its caller. 461way the function @code{debug} can return to its caller.
462 462
463The use of the @var{debugger-args} is that @code{debug} displays the 463The use of the @var{debugger-args} is that @code{debug} displays the
464rest of its arguments at the top of the @samp{*Backtrace*} buffer, so 464rest of its arguments at the top of the @file{*Backtrace*} buffer, so
465that the user can see them. Except as described below, this is the 465that the user can see them. Except as described below, this is the
466@emph{only} way these arguments are used. 466@emph{only} way these arguments are used.
467 467
@@ -560,7 +560,7 @@ of @code{debug} (@pxref{Invoking the Debugger}).
560@cindex call stack 560@cindex call stack
561This function prints a trace of Lisp function calls currently active. 561This function prints a trace of Lisp function calls currently active.
562This is the function used by @code{debug} to fill up the 562This is the function used by @code{debug} to fill up the
563@samp{*Backtrace*} buffer. It is written in C, since it must have access 563@file{*Backtrace*} buffer. It is written in C, since it must have access
564to the stack to determine which function calls are active. The return 564to the stack to determine which function calls are active. The return
565value is always @code{nil}. 565value is always @code{nil}.
566 566
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index 8382c2a1555..cc48133113f 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -268,7 +268,7 @@ objects for its format specifications, like in the @code{format}
268function (@pxref{Formatting Strings}). The resulting formatted string 268function (@pxref{Formatting Strings}). The resulting formatted string
269is displayed in the echo area; if it contains @code{face} text 269is displayed in the echo area; if it contains @code{face} text
270properties, it is displayed with the specified faces (@pxref{Faces}). 270properties, it is displayed with the specified faces (@pxref{Faces}).
271The string is also added to the @samp{*Messages*} buffer, but without 271The string is also added to the @file{*Messages*} buffer, but without
272text properties (@pxref{Logging Messages}). 272text properties (@pxref{Logging Messages}).
273 273
274In batch mode, the message is printed to the standard error stream, 274In batch mode, the message is printed to the standard error stream,
@@ -341,7 +341,7 @@ buffer is used, the window used to display it.
341 341
342If @var{message} is a string, then the optional argument 342If @var{message} is a string, then the optional argument
343@var{buffer-name} is the name of the buffer used to display it when a 343@var{buffer-name} is the name of the buffer used to display it when a
344pop-up buffer is used, defaulting to @samp{*Message*}. In the case 344pop-up buffer is used, defaulting to @file{*Message*}. In the case
345where @var{message} is a string and displayed in the echo area, it is 345where @var{message} is a string and displayed in the echo area, it is
346not specified whether the contents are inserted into the buffer anyway. 346not specified whether the contents are inserted into the buffer anyway.
347 347
@@ -474,16 +474,16 @@ this macro this way:
474@end defmac 474@end defmac
475 475
476@node Logging Messages 476@node Logging Messages
477@subsection Logging Messages in @samp{*Messages*} 477@subsection Logging Messages in @file{*Messages*}
478@cindex logging echo-area messages 478@cindex logging echo-area messages
479 479
480 Almost all the messages displayed in the echo area are also recorded 480 Almost all the messages displayed in the echo area are also recorded
481in the @samp{*Messages*} buffer so that the user can refer back to 481in the @file{*Messages*} buffer so that the user can refer back to
482them. This includes all the messages that are output with 482them. This includes all the messages that are output with
483@code{message}. 483@code{message}.
484 484
485@defopt message-log-max 485@defopt message-log-max
486This variable specifies how many lines to keep in the @samp{*Messages*} 486This variable specifies how many lines to keep in the @file{*Messages*}
487buffer. The value @code{t} means there is no limit on how many lines to 487buffer. The value @code{t} means there is no limit on how many lines to
488keep. The value @code{nil} disables message logging entirely. Here's 488keep. The value @code{nil} disables message logging entirely. Here's
489how to display a message and prevent it from being logged: 489how to display a message and prevent it from being logged:
@@ -494,7 +494,7 @@ how to display a message and prevent it from being logged:
494@end example 494@end example
495@end defopt 495@end defopt
496 496
497 To make @samp{*Messages*} more convenient for the user, the logging 497 To make @file{*Messages*} more convenient for the user, the logging
498facility combines successive identical messages. It also combines 498facility combines successive identical messages. It also combines
499successive related messages for the sake of two cases: question 499successive related messages for the sake of two cases: question
500followed by answer, and a series of progress messages. 500followed by answer, and a series of progress messages.
@@ -624,7 +624,7 @@ and @var{type} as the warning type. @var{level} should be the
624severity level, with @code{:warning} being the default. 624severity level, with @code{:warning} being the default.
625 625
626@var{buffer-name}, if non-@code{nil}, specifies the name of the buffer 626@var{buffer-name}, if non-@code{nil}, specifies the name of the buffer
627for logging the warning. By default, it is @samp{*Warnings*}. 627for logging the warning. By default, it is @file{*Warnings*}.
628@end defun 628@end defun
629 629
630@defun lwarn type level message &rest args 630@defun lwarn type level message &rest args
@@ -1885,7 +1885,7 @@ in all frames. But you can also assign a face name a special set of
1885attributes in one frame (@pxref{Attribute Functions}). 1885attributes in one frame (@pxref{Attribute Functions}).
1886 1886
1887@menu 1887@menu
1888* Defining Faces:: How to define a face with @code{defface}. 1888* Defining Faces:: How to define a face.
1889* Face Attributes:: What is in a face? 1889* Face Attributes:: What is in a face?
1890* Attribute Functions:: Functions to examine and set face attributes. 1890* Attribute Functions:: Functions to examine and set face attributes.
1891* Displaying Faces:: How Emacs combines the faces specified for a character. 1891* Displaying Faces:: How Emacs combines the faces specified for a character.
@@ -1904,22 +1904,17 @@ attributes in one frame (@pxref{Attribute Functions}).
1904@node Defining Faces 1904@node Defining Faces
1905@subsection Defining Faces 1905@subsection Defining Faces
1906 1906
1907 The way to define a new face is with @code{defface}. This creates a 1907 The @code{defface} macro defines a face and specifies its default
1908kind of customization item which the user can customize using the 1908appearance. The user can subsequently customize the face using the
1909Customization buffer (@pxref{Customization}). 1909Customize interface (@pxref{Customization}).
1910
1911 People are sometimes tempted to create variables whose values specify
1912which faces to use (for example, Font-Lock does this). In the vast
1913majority of cases, this is not necessary, and simply using faces
1914directly is preferable.
1915 1910
1916@defmac defface face spec doc [keyword value]@dots{} 1911@defmac defface face spec doc [keyword value]@dots{}
1917This declares @var{face} as a customizable face whose default 1912This macro declares @var{face} as a customizable face whose default
1918attributes are given by @var{spec}. You should not quote the symbol 1913attributes are given by @var{spec}. You should not quote the symbol
1919@var{face}, and it should not end in @samp{-face} (that would be 1914@var{face}, and it should not end in @samp{-face} (that would be
1920redundant). The argument @var{doc} specifies the face documentation. 1915redundant). The argument @var{doc} is a documentation string for the
1921The keywords you can use in @code{defface} are the same as in 1916face. The additional @var{keyword} arguments have the same meanings
1922@code{defgroup} and @code{defcustom} (@pxref{Common Keywords}). 1917as in @code{defgroup} and @code{defcustom} (@pxref{Common Keywords}).
1923 1918
1924When @code{defface} executes, it defines the face according to 1919When @code{defface} executes, it defines the face according to
1925@var{spec}, then uses any customizations that were read from the 1920@var{spec}, then uses any customizations that were read from the
@@ -1930,12 +1925,14 @@ Lisp mode (@code{eval-defun}), a special feature of @code{eval-defun}
1930overrides any customizations of the face. This way, the face reflects 1925overrides any customizations of the face. This way, the face reflects
1931exactly what the @code{defface} says. 1926exactly what the @code{defface} says.
1932 1927
1933The purpose of @var{spec} is to specify how the face should appear on 1928@cindex face specification
1934different kinds of terminals. It should be an alist whose elements 1929The @var{spec} argument is a @dfn{face specification}, which states
1935have the form @code{(@var{display} @var{atts})}. @var{display} 1930how the face should appear on different kinds of terminals. It should
1936specifies a class of terminals (see below), while @var{atts} is a 1931be an alist whose elements each have the form @code{(@var{display}
1937property list of face attributes and their values, specifying the 1932@var{atts})}. @var{display} specifies a class of terminals (see
1938appearance of the face on matching terminals 1933below), while @var{atts} is a property list of face attributes and
1934their values, specifying the appearance of the face on matching
1935terminals
1939@iftex 1936@iftex
1940(see the next section for details about face attributes). 1937(see the next section for details about face attributes).
1941@end iftex 1938@end iftex
@@ -2022,14 +2019,22 @@ frame must match one of the @var{value}s specified for it in
2022 :group 'basic-faces) 2019 :group 'basic-faces)
2023@end example 2020@end example
2024 2021
2025 Internally, @code{defface} uses the symbol property 2022 Internally, Emacs stores the face's default specification in its
2026@code{face-defface-spec} to record the specified face attributes. The 2023@code{face-defface-spec} symbol property (@pxref{Property Lists}).
2027attributes saved by the user with the customization buffer are 2024The @code{saved-face} property stores the face specification saved by
2028recorded in the symbol property @code{saved-face}; the attributes 2025the user, using the customization buffer; the @code{customized-face}
2029customized by the user for the current session, but not saved, are 2026property stores the face specification customized for the current
2030recorded in the symbol property @code{customized-face}. The 2027session, but not saved; and the @code{theme-face} property stores an
2031documentation string is recorded in the symbol property 2028alist associating the active customization settings and Custom themes
2032@code{face-documentation}. 2029with their specifications for that face. The face's documentation
2030string is stored in the @code{face-documentation} property. But
2031normally you should not try to set any of these properties directly.
2032@xref{Applying Customizations}, for the @code{custom-set-faces}
2033function, which is used to apply customized face settings.
2034
2035 People are sometimes tempted to create variables whose values
2036specify a face to use. In the vast majority of cases, this is not
2037necessary; it is preferable to simply use faces directly.
2033 2038
2034@defopt frame-background-mode 2039@defopt frame-background-mode
2035This option, if non-@code{nil}, specifies the background type to use for 2040This option, if non-@code{nil}, specifies the background type to use for
@@ -2752,7 +2757,7 @@ For text matching a search command.
2752@itemx warning 2757@itemx warning
2753@itemx success 2758@itemx success
2754For text concerning errors, warnings, or successes. For example, 2759For text concerning errors, warnings, or successes. For example,
2755these are used for messages in @samp{*Compilation*} buffers. 2760these are used for messages in @file{*Compilation*} buffers.
2756@end table 2761@end table
2757 2762
2758@node Font Selection 2763@node Font Selection
diff --git a/doc/lispref/edebug.texi b/doc/lispref/edebug.texi
index 245aaf94c6d..9d50f5fb31f 100644
--- a/doc/lispref/edebug.texi
+++ b/doc/lispref/edebug.texi
@@ -622,7 +622,7 @@ back to the stop point in the source code buffer from any buffer using
622saved outside window configuration---so that even if you turn saving 622saved outside window configuration---so that even if you turn saving
623back @emph{on}, the current window configuration remains unchanged when 623back @emph{on}, the current window configuration remains unchanged when
624you next exit Edebug (by continuing the program). However, the 624you next exit Edebug (by continuing the program). However, the
625automatic redisplay of @samp{*edebug*} and @samp{*edebug-trace*} may 625automatic redisplay of @file{*edebug*} and @file{*edebug-trace*} may
626conflict with the buffers you wish to see unless you have enough windows 626conflict with the buffers you wish to see unless you have enough windows
627open. 627open.
628 628
@@ -661,18 +661,18 @@ lexically bound symbols created by the following constructs in
661@node Eval List 661@node Eval List
662@subsection Evaluation List Buffer 662@subsection Evaluation List Buffer
663 663
664 You can use the @dfn{evaluation list buffer}, called @samp{*edebug*}, to 664 You can use the @dfn{evaluation list buffer}, called @file{*edebug*}, to
665evaluate expressions interactively. You can also set up the 665evaluate expressions interactively. You can also set up the
666@dfn{evaluation list} of expressions to be evaluated automatically each 666@dfn{evaluation list} of expressions to be evaluated automatically each
667time Edebug updates the display. 667time Edebug updates the display.
668 668
669@table @kbd 669@table @kbd
670@item E 670@item E
671Switch to the evaluation list buffer @samp{*edebug*} 671Switch to the evaluation list buffer @file{*edebug*}
672(@code{edebug-visit-eval-list}). 672(@code{edebug-visit-eval-list}).
673@end table 673@end table
674 674
675 In the @samp{*edebug*} buffer you can use the commands of Lisp 675 In the @file{*edebug*} buffer you can use the commands of Lisp
676Interaction mode (@pxref{Lisp Interaction,,, emacs, The GNU Emacs 676Interaction mode (@pxref{Lisp Interaction,,, emacs, The GNU Emacs
677Manual}) as well as these special commands: 677Manual}) as well as these special commands:
678 678
@@ -699,7 +699,7 @@ Switch back to the source code buffer at the current stop point
699@end table 699@end table
700 700
701 You can evaluate expressions in the evaluation list window with 701 You can evaluate expressions in the evaluation list window with
702@kbd{C-j} or @kbd{C-x C-e}, just as you would in @samp{*scratch*}; 702@kbd{C-j} or @kbd{C-x C-e}, just as you would in @file{*scratch*};
703but they are evaluated in the context outside of Edebug. 703but they are evaluated in the context outside of Edebug.
704 704
705 The expressions you enter interactively (and their results) are lost 705 The expressions you enter interactively (and their results) are lost
@@ -758,8 +758,8 @@ the expression at a suitable place, insert a new comment line, then type
758@kbd{C-c C-u}. You need not insert dashes in the comment line---its 758@kbd{C-c C-u}. You need not insert dashes in the comment line---its
759contents don't matter. 759contents don't matter.
760 760
761After selecting @samp{*edebug*}, you can return to the source code 761After selecting @file{*edebug*}, you can return to the source code
762buffer with @kbd{C-c C-w}. The @samp{*edebug*} buffer is killed when 762buffer with @kbd{C-c C-w}. The @file{*edebug*} buffer is killed when
763you continue execution, and recreated next time it is needed. 763you continue execution, and recreated next time it is needed.
764 764
765@node Printing in Edebug 765@node Printing in Edebug
@@ -819,7 +819,7 @@ for details.
819@cindex trace buffer 819@cindex trace buffer
820 820
821 Edebug can record an execution trace, storing it in a buffer named 821 Edebug can record an execution trace, storing it in a buffer named
822@samp{*edebug-trace*}. This is a log of function calls and returns, 822@file{*edebug-trace*}. This is a log of function calls and returns,
823showing the function names and their arguments and values. To enable 823showing the function names and their arguments and values. To enable
824trace recording, set @code{edebug-trace} to a non-@code{nil} value. 824trace recording, set @code{edebug-trace} to a non-@code{nil} value.
825 825
@@ -1567,7 +1567,7 @@ The default value is @code{step}.
1567 1567
1568@defopt edebug-trace 1568@defopt edebug-trace
1569If this is non-@code{nil}, trace each function entry and exit. 1569If this is non-@code{nil}, trace each function entry and exit.
1570Tracing output is displayed in a buffer named @samp{*edebug-trace*}, one 1570Tracing output is displayed in a buffer named @file{*edebug-trace*}, one
1571function entry or exit per line, indented by the recursion level. 1571function entry or exit per line, indented by the recursion level.
1572 1572
1573Also see @code{edebug-tracing}, in @ref{Trace Buffer}. 1573Also see @code{edebug-tracing}, in @ref{Trace Buffer}.
diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi
index dc835347235..76397556b01 100644
--- a/doc/lispref/elisp.texi
+++ b/doc/lispref/elisp.texi
@@ -123,7 +123,7 @@ Cover art by Etienne Suvasa.
123* Functions:: A function is a Lisp program 123* Functions:: A function is a Lisp program
124 that can be invoked from other functions. 124 that can be invoked from other functions.
125* Macros:: Macros are a way to extend the Lisp language. 125* Macros:: Macros are a way to extend the Lisp language.
126* Customization:: Writing customization declarations. 126* Customization:: Making variables and faces customizable.
127 127
128* Loading:: Reading files of Lisp code into Lisp. 128* Loading:: Reading files of Lisp code into Lisp.
129* Byte Compilation:: Compilation makes programs run faster. 129* Byte Compilation:: Compilation makes programs run faster.
@@ -500,6 +500,8 @@ Writing Customization Definitions
500* Group Definitions:: Writing customization group definitions. 500* Group Definitions:: Writing customization group definitions.
501* Variable Definitions:: Declaring user options. 501* Variable Definitions:: Declaring user options.
502* Customization Types:: Specifying the type of a user option. 502* Customization Types:: Specifying the type of a user option.
503* Applying Customizations:: Functions to apply customization settings.
504* Custom Themes:: Writing Custom themes.
503 505
504Customization Types 506Customization Types
505 507
@@ -1295,7 +1297,7 @@ Overlays
1295 1297
1296Faces 1298Faces
1297 1299
1298* Defining Faces:: How to define a face with @code{defface}. 1300* Defining Faces:: How to define a face.
1299* Face Attributes:: What is in a face? 1301* Face Attributes:: What is in a face?
1300* Attribute Functions:: Functions to examine and set face attributes. 1302* Attribute Functions:: Functions to examine and set face attributes.
1301* Displaying Faces:: How Emacs combines the faces specified for 1303* Displaying Faces:: How Emacs combines the faces specified for
diff --git a/doc/lispref/eval.texi b/doc/lispref/eval.texi
index 429d999a2c8..7f25b33eb43 100644
--- a/doc/lispref/eval.texi
+++ b/doc/lispref/eval.texi
@@ -807,7 +807,7 @@ The value of this variable is a list of the values returned by all the
807expressions that were read, evaluated, and printed from buffers 807expressions that were read, evaluated, and printed from buffers
808(including the minibuffer) by the standard Emacs commands which do 808(including the minibuffer) by the standard Emacs commands which do
809this. (Note that this does @emph{not} include evaluation in 809this. (Note that this does @emph{not} include evaluation in
810@samp{*ielm*} buffers, nor evaluation using @kbd{C-j} in 810@file{*ielm*} buffers, nor evaluation using @kbd{C-j} in
811@code{lisp-interaction-mode}.) The elements are ordered most recent 811@code{lisp-interaction-mode}.) The elements are ordered most recent
812first. 812first.
813 813
diff --git a/doc/lispref/files.texi b/doc/lispref/files.texi
index b49e56158ad..3e96a448963 100644
--- a/doc/lispref/files.texi
+++ b/doc/lispref/files.texi
@@ -2154,7 +2154,7 @@ double all @samp{$} characters to prevent subsequent incorrect
2154results. 2154results.
2155 2155
2156@c Wordy to avoid overfull hbox. --rjc 15mar92 2156@c Wordy to avoid overfull hbox. --rjc 15mar92
2157Here we assume that the environment variable @code{HOME}, which holds 2157Here we assume that the environment variable @env{HOME}, which holds
2158the user's home directory name, has value @samp{/xcssun/users/rms}. 2158the user's home directory name, has value @samp{/xcssun/users/rms}.
2159 2159
2160@example 2160@example
@@ -2239,9 +2239,9 @@ non-@code{nil}. To use it, you should expand the prefix against
2239the proper directory before calling @code{make-temp-file}. 2239the proper directory before calling @code{make-temp-file}.
2240 2240
2241@defopt temporary-file-directory 2241@defopt temporary-file-directory
2242@cindex @code{TMPDIR} environment variable 2242@cindex @env{TMPDIR} environment variable
2243@cindex @code{TMP} environment variable 2243@cindex @env{TMP} environment variable
2244@cindex @code{TEMP} environment variable 2244@cindex @env{TEMP} environment variable
2245This variable specifies the directory name for creating temporary files. 2245This variable specifies the directory name for creating temporary files.
2246Its value should be a directory name (@pxref{Directory Names}), but it 2246Its value should be a directory name (@pxref{Directory Names}), but it
2247is good for Lisp programs to cope if the value is a directory's file 2247is good for Lisp programs to cope if the value is a directory's file
@@ -2249,7 +2249,7 @@ name instead. Using the value as the second argument to
2249@code{expand-file-name} is a good way to achieve that. 2249@code{expand-file-name} is a good way to achieve that.
2250 2250
2251The default value is determined in a reasonable way for your operating 2251The default value is determined in a reasonable way for your operating
2252system; it is based on the @code{TMPDIR}, @code{TMP} and @code{TEMP} 2252system; it is based on the @env{TMPDIR}, @env{TMP} and @env{TEMP}
2253environment variables, with a fall-back to a system-dependent name if 2253environment variables, with a fall-back to a system-dependent name if
2254none of these variables is defined. 2254none of these variables is defined.
2255 2255
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi
index 125d6071cab..1bd4cf4854b 100644
--- a/doc/lispref/frames.texi
+++ b/doc/lispref/frames.texi
@@ -488,7 +488,7 @@ frame. @code{title} and @code{name} are meaningful on all terminals.
488@item display 488@item display
489The display on which to open this frame. It should be a string of the 489The display on which to open this frame. It should be a string of the
490form @code{"@var{host}:@var{dpy}.@var{screen}"}, just like the 490form @code{"@var{host}:@var{dpy}.@var{screen}"}, just like the
491@code{DISPLAY} environment variable. 491@env{DISPLAY} environment variable.
492 492
493@vindex display-type, a frame parameter 493@vindex display-type, a frame parameter
494@item display-type 494@item display-type
diff --git a/doc/lispref/help.texi b/doc/lispref/help.texi
index c703e7810f8..42de3f1e358 100644
--- a/doc/lispref/help.texi
+++ b/doc/lispref/help.texi
@@ -180,7 +180,7 @@ face.
180@c Wordy to prevent overfull hboxes. --rjc 15mar92 180@c Wordy to prevent overfull hboxes. --rjc 15mar92
181Here is an example of using the two functions, @code{documentation} and 181Here is an example of using the two functions, @code{documentation} and
182@code{documentation-property}, to display the documentation strings for 182@code{documentation-property}, to display the documentation strings for
183several symbols in a @samp{*Help*} buffer. 183several symbols in a @file{*Help*} buffer.
184 184
185@anchor{describe-symbols example} 185@anchor{describe-symbols example}
186@smallexample 186@smallexample
@@ -535,7 +535,7 @@ seems to be as a match. Each of the remaining elements is a
535documentation string, or @code{nil}, for @var{symbol} as a function, 535documentation string, or @code{nil}, for @var{symbol} as a function,
536variable, etc. 536variable, etc.
537 537
538It also displays the symbols in a buffer named @samp{*Apropos*}, each 538It also displays the symbols in a buffer named @file{*Apropos*}, each
539with a one-line description taken from the beginning of its 539with a one-line description taken from the beginning of its
540documentation string. 540documentation string.
541 541
@@ -648,7 +648,7 @@ certain documentation and text files that come with Emacs.
648 648
649@defun help-buffer 649@defun help-buffer
650This function returns the name of the help buffer, which is normally 650This function returns the name of the help buffer, which is normally
651@samp{*Help*}; if such a buffer does not exist, it is first created. 651@file{*Help*}; if such a buffer does not exist, it is first created.
652@end defun 652@end defun
653 653
654@defmac with-help-window buffer-name body@dots{} 654@defmac with-help-window buffer-name body@dots{}
@@ -662,16 +662,16 @@ scroll the help window.
662@end defmac 662@end defmac
663 663
664@defun help-setup-xref item interactive-p 664@defun help-setup-xref item interactive-p
665This function updates the cross reference data in the @samp{*Help*} 665This function updates the cross reference data in the @file{*Help*}
666buffer, which is used to regenerate the help information when the user 666buffer, which is used to regenerate the help information when the user
667clicks on the @samp{Back} or @samp{Forward} buttons. Most commands 667clicks on the @samp{Back} or @samp{Forward} buttons. Most commands
668that use the @samp{*Help*} buffer should invoke this function before 668that use the @file{*Help*} buffer should invoke this function before
669clearing the buffer. The @var{item} argument should have the form 669clearing the buffer. The @var{item} argument should have the form
670@code{(@var{function} . @var{args})}, where @var{function} is a function 670@code{(@var{function} . @var{args})}, where @var{function} is a function
671to call, with argument list @var{args}, to regenerate the help buffer. 671to call, with argument list @var{args}, to regenerate the help buffer.
672The @var{interactive-p} argument is non-@code{nil} if the calling 672The @var{interactive-p} argument is non-@code{nil} if the calling
673command was invoked interactively; in that case, the stack of items 673command was invoked interactively; in that case, the stack of items
674for the @samp{*Help*} buffer's @samp{Back} buttons is cleared. 674for the @file{*Help*} buffer's @samp{Back} buttons is cleared.
675@end defun 675@end defun
676 676
677@xref{describe-symbols example}, for an example of using 677@xref{describe-symbols example}, for an example of using
diff --git a/doc/lispref/intro.texi b/doc/lispref/intro.texi
index 365c5f3122e..c963ba03545 100644
--- a/doc/lispref/intro.texi
+++ b/doc/lispref/intro.texi
@@ -247,7 +247,7 @@ indicated with @samp{@equiv{}}.
247 247
248 Many of the examples in this manual print text when they are 248 Many of the examples in this manual print text when they are
249evaluated. If you execute example code in a Lisp Interaction buffer 249evaluated. If you execute example code in a Lisp Interaction buffer
250(such as the buffer @samp{*scratch*}), the printed text is inserted into 250(such as the buffer @file{*scratch*}), the printed text is inserted into
251the buffer. If you execute the example by other means (such as by 251the buffer. If you execute the example by other means (such as by
252evaluating the function @code{eval-region}), the printed text is 252evaluating the function @code{eval-region}), the printed text is
253displayed in the echo area. 253displayed in the echo area.
diff --git a/doc/lispref/keymaps.texi b/doc/lispref/keymaps.texi
index 5dd57ccb4ac..65666217e16 100644
--- a/doc/lispref/keymaps.texi
+++ b/doc/lispref/keymaps.texi
@@ -64,7 +64,7 @@ constituent events; thus, @code{"\C-xl"} represents the key sequence
64@kbd{C-x l}. 64@kbd{C-x l}.
65 65
66 Key sequences containing function keys, mouse button events, or 66 Key sequences containing function keys, mouse button events, or
67non-ASCII characters such as @kbd{C-=} or @kbd{H-a} cannot be 67non-@acronym{ASCII} characters such as @kbd{C-=} or @kbd{H-a} cannot be
68represented as strings; they have to be represented as vectors. 68represented as strings; they have to be represented as vectors.
69 69
70 In the vector representation, each element of the vector represents 70 In the vector representation, each element of the vector represents
@@ -808,7 +808,7 @@ bindings.
808@defun current-local-map 808@defun current-local-map
809This function returns the current buffer's local keymap, or @code{nil} 809This function returns the current buffer's local keymap, or @code{nil}
810if it has none. In the following example, the keymap for the 810if it has none. In the following example, the keymap for the
811@samp{*scratch*} buffer (using Lisp Interaction mode) is a sparse keymap 811@file{*scratch*} buffer (using Lisp Interaction mode) is a sparse keymap
812in which the entry for @key{ESC}, @acronym{ASCII} code 27, is another sparse 812in which the entry for @key{ESC}, @acronym{ASCII} code 27, is another sparse
813keymap. 813keymap.
814 814
@@ -1922,7 +1922,7 @@ other command. However, if @var{no-remap} is non-@code{nil}.
1922 1922
1923@deffn Command describe-bindings &optional prefix buffer-or-name 1923@deffn Command describe-bindings &optional prefix buffer-or-name
1924This function creates a listing of all current key bindings, and 1924This function creates a listing of all current key bindings, and
1925displays it in a buffer named @samp{*Help*}. The text is grouped by 1925displays it in a buffer named @file{*Help*}. The text is grouped by
1926modes---minor modes first, then the major mode, then global bindings. 1926modes---minor modes first, then the major mode, then global bindings.
1927 1927
1928If @var{prefix} is non-@code{nil}, it should be a prefix key; then the 1928If @var{prefix} is non-@code{nil}, it should be a prefix key; then the
diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi
index 47a2a39ed63..0c02f338c7b 100644
--- a/doc/lispref/loading.texi
+++ b/doc/lispref/loading.texi
@@ -235,7 +235,7 @@ it skips the latter group.
235in a list of directories specified by the variable @code{load-path}. 235in a list of directories specified by the variable @code{load-path}.
236 236
237@defvar load-path 237@defvar load-path
238@cindex @code{EMACSLOADPATH} environment variable 238@cindex @env{EMACSLOADPATH} environment variable
239The value of this variable is a list of directories to search when 239The value of this variable is a list of directories to search when
240loading files with @code{load}. Each element is a string (which must be 240loading files with @code{load}. Each element is a string (which must be
241a directory name) or @code{nil} (which stands for the current working 241a directory name) or @code{nil} (which stands for the current working
@@ -375,7 +375,7 @@ strings are multibyte strings should not be noticeable, since
375inserting them in unibyte buffers converts them to unibyte 375inserting them in unibyte buffers converts them to unibyte
376automatically. However, if this does make a difference, you can force 376automatically. However, if this does make a difference, you can force
377a particular Lisp file to be interpreted as unibyte by writing 377a particular Lisp file to be interpreted as unibyte by writing
378@samp{-*-unibyte: t;-*-} in a comment on the file's first line. With 378@samp{unibyte: t} in a local variables section. With
379that designator, the file will unconditionally be interpreted as 379that designator, the file will unconditionally be interpreted as
380unibyte, even in an ordinary multibyte Emacs session. This can matter 380unibyte, even in an ordinary multibyte Emacs session. This can matter
381when making keybindings to non-@acronym{ASCII} characters written as 381when making keybindings to non-@acronym{ASCII} characters written as
diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi
index 437a2daa8e3..247e052784a 100644
--- a/doc/lispref/minibuf.texi
+++ b/doc/lispref/minibuf.texi
@@ -1062,7 +1062,7 @@ using the value of the variable @code{minibuffer-completion-table} as
1062the @var{collection} argument, and the value of 1062the @var{collection} argument, and the value of
1063@code{minibuffer-completion-predicate} as the @var{predicate} argument. 1063@code{minibuffer-completion-predicate} as the @var{predicate} argument.
1064The list of completions is displayed as text in a buffer named 1064The list of completions is displayed as text in a buffer named
1065@samp{*Completions*}. 1065@file{*Completions*}.
1066@end deffn 1066@end deffn
1067 1067
1068@defun display-completion-list completions &optional common-substring 1068@defun display-completion-list completions &optional common-substring
@@ -1756,7 +1756,7 @@ completion behavior is overridden. @xref{Completion Variables}.
1756The value should be a function for @dfn{annotating} completions. The 1756The value should be a function for @dfn{annotating} completions. The
1757function should take one argument, @var{string}, which is a possible 1757function should take one argument, @var{string}, which is a possible
1758completion. It should return a string, which is displayed after the 1758completion. It should return a string, which is displayed after the
1759completion @var{string} in the @samp{*Completions*} buffer. 1759completion @var{string} in the @file{*Completions*} buffer.
1760 1760
1761@item display-sort-function 1761@item display-sort-function
1762The value should be a function for sorting completions. The function 1762The value should be a function for sorting completions. The function
diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi
index 946dcb91317..83fbd02b16c 100644
--- a/doc/lispref/modes.texi
+++ b/doc/lispref/modes.texi
@@ -628,7 +628,7 @@ have set.
628This function sets the major mode of @var{buffer} to the default value of 628This function sets the major mode of @var{buffer} to the default value of
629@code{major-mode}; if that is @code{nil}, it uses the 629@code{major-mode}; if that is @code{nil}, it uses the
630current buffer's major mode (if that is suitable). As an exception, 630current buffer's major mode (if that is suitable). As an exception,
631if @var{buffer}'s name is @samp{*scratch*}, it sets the mode to 631if @var{buffer}'s name is @file{*scratch*}, it sets the mode to
632@code{initial-major-mode}. 632@code{initial-major-mode}.
633 633
634The low-level primitives for creating buffers do not use this function, 634The low-level primitives for creating buffers do not use this function,
@@ -637,9 +637,9 @@ but medium-level commands such as @code{switch-to-buffer} and
637@end defun 637@end defun
638 638
639@defopt initial-major-mode 639@defopt initial-major-mode
640@cindex @samp{*scratch*} 640@cindex @file{*scratch*}
641The value of this variable determines the major mode of the initial 641The value of this variable determines the major mode of the initial
642@samp{*scratch*} buffer. The value should be a symbol that is a major 642@file{*scratch*} buffer. The value should be a symbol that is a major
643mode command. The default value is @code{lisp-interaction-mode}. 643mode command. The default value is @code{lisp-interaction-mode}.
644@end defopt 644@end defopt
645 645
@@ -908,7 +908,7 @@ common bindings, including @kbd{q} for @code{quit-window}, @kbd{z} for
908(@pxref{Reverting}). 908(@pxref{Reverting}).
909 909
910An example of a major mode derived from Special mode is Buffer Menu 910An example of a major mode derived from Special mode is Buffer Menu
911mode, which is used by the @samp{*Buffer List*} buffer. @xref{List 911mode, which is used by the @file{*Buffer List*} buffer. @xref{List
912Buffers,,Listing Existing Buffers, emacs, The GNU Emacs Manual}. 912Buffers,,Listing Existing Buffers, emacs, The GNU Emacs Manual}.
913@end deffn 913@end deffn
914 914
@@ -1571,8 +1571,8 @@ rather than buffer-local. It defaults to @code{nil}.
1571 1571
1572One of the effects of making a minor mode global is that the 1572One of the effects of making a minor mode global is that the
1573@var{mode} variable becomes a customization variable. Toggling it 1573@var{mode} variable becomes a customization variable. Toggling it
1574through the Custom interface turns the mode on and off, and its value 1574through the Customize interface turns the mode on and off, and its
1575can be saved for future Emacs sessions (@pxref{Saving 1575value can be saved for future Emacs sessions (@pxref{Saving
1576Customizations,,, emacs, The GNU Emacs Manual}. For the saved 1576Customizations,,, emacs, The GNU Emacs Manual}. For the saved
1577variable to work, you should ensure that the @code{define-minor-mode} 1577variable to work, you should ensure that the @code{define-minor-mode}
1578form is evaluated each time Emacs starts; for packages that are not 1578form is evaluated each time Emacs starts; for packages that are not
@@ -1691,7 +1691,7 @@ Fundamental mode; but it does not detect the creation of a new buffer
1691in Fundamental mode. 1691in Fundamental mode.
1692 1692
1693This defines the customization option @var{global-mode} (@pxref{Customization}), 1693This defines the customization option @var{global-mode} (@pxref{Customization}),
1694which can be toggled in the Custom interface to turn the minor mode on 1694which can be toggled in the Customize interface to turn the minor mode on
1695and off. As with @code{define-minor-mode}, you should ensure that the 1695and off. As with @code{define-minor-mode}, you should ensure that the
1696@code{define-globalized-minor-mode} form is evaluated each time Emacs 1696@code{define-globalized-minor-mode} form is evaluated each time Emacs
1697starts, for example by providing a @code{:require} keyword. 1697starts, for example by providing a @code{:require} keyword.
@@ -2016,7 +2016,7 @@ identify the mode name in the mode line, use @code{format-mode-line}
2016This buffer-local variable contains the mode line information on process 2016This buffer-local variable contains the mode line information on process
2017status in modes used for communicating with subprocesses. It is 2017status in modes used for communicating with subprocesses. It is
2018displayed immediately following the major mode name, with no intervening 2018displayed immediately following the major mode name, with no intervening
2019space. For example, its value in the @samp{*shell*} buffer is 2019space. For example, its value in the @file{*shell*} buffer is
2020@code{(":%s")}, which allows the shell to display its status along 2020@code{(":%s")}, which allows the shell to display its status along
2021with the major mode as: @samp{(Shell:run)}. Normally this variable 2021with the major mode as: @samp{(Shell:run)}. Normally this variable
2022is @code{nil}. 2022is @code{nil}.
diff --git a/doc/lispref/objects.texi b/doc/lispref/objects.texi
index ba4803c73f2..7901f27c4f5 100644
--- a/doc/lispref/objects.texi
+++ b/doc/lispref/objects.texi
@@ -352,7 +352,7 @@ following text.)
352 352
353 In addition to the specific escape sequences for special important 353 In addition to the specific escape sequences for special important
354control characters, Emacs provides several types of escape syntax that 354control characters, Emacs provides several types of escape syntax that
355you can use to specify non-ASCII text characters. 355you can use to specify non-@acronym{ASCII} text characters.
356 356
357@cindex unicode character escape 357@cindex unicode character escape
358 You can specify characters by their Unicode values. 358 You can specify characters by their Unicode values.
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi
index 8a57ed2c1f0..35ac7c20384 100644
--- a/doc/lispref/os.texi
+++ b/doc/lispref/os.texi
@@ -89,7 +89,7 @@ that Emacs is being initialized.
89@c set-locale-environment 89@c set-locale-environment
90@item 90@item
91It sets the language environment and the terminal coding system, 91It sets the language environment and the terminal coding system,
92if requested by environment variables such as @code{LANG}. 92if requested by environment variables such as @env{LANG}.
93 93
94@item 94@item
95It does some basic parsing of the command-line arguments. 95It does some basic parsing of the command-line arguments.
@@ -170,7 +170,7 @@ measurement of how long it took.
170It runs the normal hook @code{after-init-hook}. 170It runs the normal hook @code{after-init-hook}.
171 171
172@item 172@item
173If the buffer @samp{*scratch*} exists and is still in Fundamental mode 173If the buffer @file{*scratch*} exists and is still in Fundamental mode
174(as it should be by default), it sets its major mode according to 174(as it should be by default), it sets its major mode according to
175@code{initial-major-mode}. 175@code{initial-major-mode}.
176 176
@@ -196,7 +196,7 @@ It now exits if the option @code{--batch} was specified.
196 196
197@item 197@item
198If @code{initial-buffer-choice} is a string, it visits the file with 198If @code{initial-buffer-choice} is a string, it visits the file with
199that name. If the @samp{*scratch*} buffer exists and is 199that name. If the @file{*scratch*} buffer exists and is
200empty, it inserts @code{initial-scratch-message} into that buffer. 200empty, it inserts @code{initial-scratch-message} into that buffer.
201 201
202@c To make things nice and confusing, the next three items can be 202@c To make things nice and confusing, the next three items can be
@@ -254,7 +254,7 @@ The following options affect some aspects of the startup sequence.
254 254
255@defopt inhibit-startup-screen 255@defopt inhibit-startup-screen
256This variable, if non-@code{nil}, inhibits the startup screen. In 256This variable, if non-@code{nil}, inhibits the startup screen. In
257that case, Emacs typically displays the @samp{*scratch*} buffer; but 257that case, Emacs typically displays the @file{*scratch*} buffer; but
258see @code{initial-buffer-choice}, below. 258see @code{initial-buffer-choice}, below.
259 259
260Do not set this variable in the init file of a new user, or in a way 260Do not set this variable in the init file of a new user, or in a way
@@ -274,7 +274,7 @@ startup screen.
274@ignore 274@ignore
275@c I do not think this should be mentioned. AFAICS it is just a dodge 275@c I do not think this should be mentioned. AFAICS it is just a dodge
276@c around inhibit-startup-screen not being settable on a site-wide basis. 276@c around inhibit-startup-screen not being settable on a site-wide basis.
277If its value is @code{t}, Emacs displays the @samp{*scratch*} buffer. 277If its value is @code{t}, Emacs displays the @file{*scratch*} buffer.
278@end ignore 278@end ignore
279@end defopt 279@end defopt
280 280
@@ -290,17 +290,17 @@ form to your init file:
290 290
291Emacs explicitly checks for an expression as shown above in your init 291Emacs explicitly checks for an expression as shown above in your init
292file; your login name must appear in the expression as a Lisp string 292file; your login name must appear in the expression as a Lisp string
293constant. You can also use the Custom interface. Other methods of setting 293constant. You can also use the Customize interface. Other methods of
294@code{inhibit-startup-echo-area-message} to the same value do not 294setting @code{inhibit-startup-echo-area-message} to the same value do
295inhibit the startup message. This way, you can easily inhibit the 295not inhibit the startup message. This way, you can easily inhibit the
296message for yourself if you wish, but thoughtless copying of your init 296message for yourself if you wish, but thoughtless copying of your init
297file will not inhibit the message for someone else. 297file will not inhibit the message for someone else.
298@end defopt 298@end defopt
299 299
300@defopt initial-scratch-message 300@defopt initial-scratch-message
301This variable, if non-@code{nil}, should be a string, which is 301This variable, if non-@code{nil}, should be a string, which is
302inserted into the @samp{*scratch*} buffer when Emacs starts up. If it 302inserted into the @file{*scratch*} buffer when Emacs starts up. If it
303is @code{nil}, the @samp{*scratch*} buffer is empty. 303is @code{nil}, the @file{*scratch*} buffer is empty.
304@end defopt 304@end defopt
305 305
306@noindent 306@noindent
@@ -352,8 +352,8 @@ control whether and where to find the init file; @samp{-q} (and the
352stronger @samp{-Q}) says not to load an init file, while @samp{-u 352stronger @samp{-Q}) says not to load an init file, while @samp{-u
353@var{user}} says to load @var{user}'s init file instead of yours. 353@var{user}} says to load @var{user}'s init file instead of yours.
354@xref{Entering Emacs,,, emacs, The GNU Emacs Manual}. If neither 354@xref{Entering Emacs,,, emacs, The GNU Emacs Manual}. If neither
355option is specified, Emacs uses the @code{LOGNAME} environment 355option is specified, Emacs uses the @env{LOGNAME} environment
356variable, or the @code{USER} (most systems) or @code{USERNAME} (MS 356variable, or the @env{USER} (most systems) or @env{USERNAME} (MS
357systems) variable, to find your home directory and thus your init 357systems) variable, to find your home directory and thus your init
358file; this way, even if you have su'd, Emacs still loads your own init 358file; this way, even if you have su'd, Emacs still loads your own init
359file. If those environment variables are absent, though, Emacs uses 359file. If those environment variables are absent, though, Emacs uses
@@ -430,7 +430,7 @@ This variable holds the name of the @file{.emacs.d} directory. It is
430 Each terminal type can have its own Lisp library that Emacs loads when 430 Each terminal type can have its own Lisp library that Emacs loads when
431run on that type of terminal. The library's name is constructed by 431run on that type of terminal. The library's name is constructed by
432concatenating the value of the variable @code{term-file-prefix} and the 432concatenating the value of the variable @code{term-file-prefix} and the
433terminal type (specified by the environment variable @code{TERM}). 433terminal type (specified by the environment variable @env{TERM}).
434Normally, @code{term-file-prefix} has the value 434Normally, @code{term-file-prefix} has the value
435@code{"term/"}; changing this is not recommended. Emacs finds the file 435@code{"term/"}; changing this is not recommended. Emacs finds the file
436in the normal manner, by searching the @code{load-path} directories, and 436in the normal manner, by searching the @code{load-path} directories, and
@@ -468,7 +468,7 @@ use this hook to define initializations for terminals that do not
468have their own libraries. @xref{Hooks}. 468have their own libraries. @xref{Hooks}.
469 469
470@defvar term-file-prefix 470@defvar term-file-prefix
471@cindex @code{TERM} environment variable 471@cindex @env{TERM} environment variable
472If the value of this variable is non-@code{nil}, Emacs loads a 472If the value of this variable is non-@code{nil}, Emacs loads a
473terminal-specific initialization file as follows: 473terminal-specific initialization file as follows:
474 474
@@ -481,7 +481,7 @@ You may set the @code{term-file-prefix} variable to @code{nil} in your
481init file if you do not wish to load the 481init file if you do not wish to load the
482terminal-initialization file. 482terminal-initialization file.
483 483
484On MS-DOS, Emacs sets the @code{TERM} environment variable to @samp{internal}. 484On MS-DOS, Emacs sets the @env{TERM} environment variable to @samp{internal}.
485@end defvar 485@end defvar
486 486
487@defvar term-setup-hook 487@defvar term-setup-hook
@@ -1010,7 +1010,7 @@ value is @code{":"} for Unix and GNU systems, and @code{";"} for MS systems.
1010 1010
1011@defun parse-colon-path path 1011@defun parse-colon-path path
1012This function takes a search path string such as the value of 1012This function takes a search path string such as the value of
1013the @code{PATH} environment variable, and splits it at the separators, 1013the @env{PATH} environment variable, and splits it at the separators,
1014returning a list of directory names. @code{nil} in this list means 1014returning a list of directory names. @code{nil} in this list means
1015the current directory. Although the function's name says 1015the current directory. Although the function's name says
1016``colon'', it actually uses the value of @code{path-separator}. 1016``colon'', it actually uses the value of @code{path-separator}.
@@ -1113,7 +1113,7 @@ want to use the default value.
1113 1113
1114@defun user-login-name &optional uid 1114@defun user-login-name &optional uid
1115This function returns the name under which the user is logged in. 1115This function returns the name under which the user is logged in.
1116It uses the environment variables @code{LOGNAME} or @code{USER} if 1116It uses the environment variables @env{LOGNAME} or @env{USER} if
1117either is set. Otherwise, the value is based on the effective 1117either is set. Otherwise, the value is based on the effective
1118@acronym{UID}, not the real @acronym{UID}. 1118@acronym{UID}, not the real @acronym{UID}.
1119 1119
@@ -1124,12 +1124,12 @@ corresponds to @var{uid}, or @code{nil} if there is no such user.
1124@defun user-real-login-name 1124@defun user-real-login-name
1125This function returns the user name corresponding to Emacs's real 1125This function returns the user name corresponding to Emacs's real
1126@acronym{UID}. This ignores the effective @acronym{UID}, and the 1126@acronym{UID}. This ignores the effective @acronym{UID}, and the
1127environment variables @code{LOGNAME} and @code{USER}. 1127environment variables @env{LOGNAME} and @env{USER}.
1128@end defun 1128@end defun
1129 1129
1130@defun user-full-name &optional uid 1130@defun user-full-name &optional uid
1131This function returns the full name of the logged-in user---or the value 1131This function returns the full name of the logged-in user---or the value
1132of the environment variable @code{NAME}, if that is set. 1132of the environment variable @env{NAME}, if that is set.
1133 1133
1134If the Emacs process's user-id does not correspond to any known user (and 1134If the Emacs process's user-id does not correspond to any known user (and
1135provided @code{NAME} is not set), the result is @code{"unknown"}. 1135provided @code{NAME} is not set), the result is @code{"unknown"}.
@@ -1249,9 +1249,9 @@ The argument @var{time-value}, if given, specifies a time (represented
1249as a list of integers) to analyze instead of the current time. 1249as a list of integers) to analyze instead of the current time.
1250@end defun 1250@end defun
1251 1251
1252The current time zone is determined by the @samp{TZ} environment 1252The current time zone is determined by the @env{TZ} environment
1253variable. @xref{System Environment}. For example, you can tell Emacs 1253variable. @xref{System Environment}. For example, you can tell Emacs
1254to use universal time with @code{(setenv "TZ" "UTC0")}. If @samp{TZ} 1254to use universal time with @code{(setenv "TZ" "UTC0")}. If @env{TZ}
1255is not in the environment, Emacs uses a platform-dependent default 1255is not in the environment, Emacs uses a platform-dependent default
1256time zone. 1256time zone.
1257 1257
@@ -1325,7 +1325,7 @@ yourself before you call @code{encode-time}.
1325The optional argument @var{zone} defaults to the current time zone and 1325The optional argument @var{zone} defaults to the current time zone and
1326its daylight saving time rules. If specified, it can be either a list 1326its daylight saving time rules. If specified, it can be either a list
1327(as you would get from @code{current-time-zone}), a string as in the 1327(as you would get from @code{current-time-zone}), a string as in the
1328@code{TZ} environment variable, @code{t} for Universal Time, or an 1328@env{TZ} environment variable, @code{t} for Universal Time, or an
1329integer (as you would get from @code{decode-time}). The specified 1329integer (as you would get from @code{decode-time}). The specified
1330zone is used without any further alteration for daylight saving time. 1330zone is used without any further alteration for daylight saving time.
1331 1331
@@ -2233,7 +2233,7 @@ non-@code{nil}, Emacs tells the session manager to cancel the
2233shutdown. 2233shutdown.
2234@end defvar 2234@end defvar
2235 2235
2236Here is an example that just inserts some text into @samp{*scratch*} when 2236Here is an example that just inserts some text into @file{*scratch*} when
2237Emacs is restarted by the session manager. 2237Emacs is restarted by the session manager.
2238 2238
2239@example 2239@example
diff --git a/doc/lispref/processes.texi b/doc/lispref/processes.texi
index 39b146e3017..ab35dceb1ff 100644
--- a/doc/lispref/processes.texi
+++ b/doc/lispref/processes.texi
@@ -77,14 +77,14 @@ sections. Since the three functions are all called in a similar
77fashion, their common arguments are described here. 77fashion, their common arguments are described here.
78 78
79@cindex execute program 79@cindex execute program
80@cindex @code{PATH} environment variable 80@cindex @env{PATH} environment variable
81@cindex @code{HOME} environment variable 81@cindex @env{HOME} environment variable
82 In all cases, the function's @var{program} argument specifies the 82 In all cases, the function's @var{program} argument specifies the
83program to be run. An error is signaled if the file is not found or 83program to be run. An error is signaled if the file is not found or
84cannot be executed. If the file name is relative, the variable 84cannot be executed. If the file name is relative, the variable
85@code{exec-path} contains a list of directories to search. Emacs 85@code{exec-path} contains a list of directories to search. Emacs
86initializes @code{exec-path} when it starts up, based on the value of 86initializes @code{exec-path} when it starts up, based on the value of
87the environment variable @code{PATH}. The standard file name 87the environment variable @env{PATH}. The standard file name
88constructs, @samp{~}, @samp{.}, and @samp{..}, are interpreted as 88constructs, @samp{~}, @samp{.}, and @samp{..}, are interpreted as
89usual in @code{exec-path}, but environment variable substitutions 89usual in @code{exec-path}, but environment variable substitutions
90(@samp{$HOME}, etc.) are not recognized; use 90(@samp{$HOME}, etc.) are not recognized; use
@@ -717,7 +717,7 @@ This command displays a listing of all living processes. In addition,
717it finally deletes any process whose status was @samp{Exited} or 717it finally deletes any process whose status was @samp{Exited} or
718@samp{Signaled}. It returns @code{nil}. 718@samp{Signaled}. It returns @code{nil}.
719 719
720The processes are shown in a buffer named @samp{*Process List*}, whose 720The processes are shown in a buffer named @file{*Process List*}, whose
721major mode is named Process Menu mode. 721major mode is named Process Menu mode.
722 722
723If @var{query-only} is non-@code{nil} then it lists only processes 723If @var{query-only} is non-@code{nil} then it lists only processes
@@ -1632,35 +1632,17 @@ This returns the query flag of @var{process}.
1632This function sets the query flag of @var{process} to @var{flag}. It 1632This function sets the query flag of @var{process} to @var{flag}. It
1633returns @var{flag}. 1633returns @var{flag}.
1634 1634
1635Here is an example of using @code{set-process-query-on-exit-flag} on a
1636shell process to avoid querying:
1637
1635@smallexample 1638@smallexample
1636@group 1639@group
1637;; @r{Don't query about the shell process}
1638(set-process-query-on-exit-flag (get-process "shell") nil) 1640(set-process-query-on-exit-flag (get-process "shell") nil)
1639 @result{} t 1641 @result{} t
1640@end group 1642@end group
1641@end smallexample 1643@end smallexample
1642@end defun 1644@end defun
1643 1645
1644@defun process-kill-without-query process &optional do-query
1645This function clears the query flag of @var{process}, so that
1646Emacs will not query the user on account of that process.
1647
1648Actually, the function does more than that: it returns the old value of
1649the process's query flag, and sets the query flag to @var{do-query}.
1650Please don't use this function to do those things any more---please
1651use the newer, cleaner functions @code{process-query-on-exit-flag} and
1652@code{set-process-query-on-exit-flag} in all but the simplest cases.
1653The only way you should use @code{process-kill-without-query} nowadays
1654is like this:
1655
1656@smallexample
1657@group
1658;; @r{Don't query about the shell process}
1659(process-kill-without-query (get-process "shell"))
1660@end group
1661@end smallexample
1662@end defun
1663
1664@node System Processes 1646@node System Processes
1665@section Accessing Other Processes 1647@section Accessing Other Processes
1666@cindex system processes 1648@cindex system processes
diff --git a/doc/lispref/strings.texi b/doc/lispref/strings.texi
index 7813283ade5..3b8c62af313 100644
--- a/doc/lispref/strings.texi
+++ b/doc/lispref/strings.texi
@@ -1117,7 +1117,7 @@ Exits}).
1117@acronym{ASCII} characters; for example, in the Turkish language 1117@acronym{ASCII} characters; for example, in the Turkish language
1118environment, the @acronym{ASCII} character @samp{I} is downcased into 1118environment, the @acronym{ASCII} character @samp{I} is downcased into
1119a Turkish ``dotless i''. This can interfere with code that requires 1119a Turkish ``dotless i''. This can interfere with code that requires
1120ordinary ASCII case conversion, such as implementations of 1120ordinary @acronym{ASCII} case conversion, such as implementations of
1121@acronym{ASCII}-based network protocols. In that case, use the 1121@acronym{ASCII}-based network protocols. In that case, use the
1122@code{with-case-table} macro with the variable @var{ascii-case-table}, 1122@code{with-case-table} macro with the variable @var{ascii-case-table},
1123which stores the unmodified case table for the @acronym{ASCII} 1123which stores the unmodified case table for the @acronym{ASCII}
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi
index 770dd5b5777..bae145c1694 100644
--- a/doc/lispref/text.texi
+++ b/doc/lispref/text.texi
@@ -4345,7 +4345,7 @@ changed text, its length is simply the difference between the first two
4345arguments. 4345arguments.
4346@end defvar 4346@end defvar
4347 4347
4348 Output of messages into the @samp{*Messages*} buffer does not 4348 Output of messages into the @file{*Messages*} buffer does not
4349call these functions. 4349call these functions.
4350 4350
4351@defmac combine-after-change-calls body@dots{} 4351@defmac combine-after-change-calls body@dots{}
diff --git a/doc/lispref/vol1.texi b/doc/lispref/vol1.texi
index df269868e09..45a0dee3b1c 100644
--- a/doc/lispref/vol1.texi
+++ b/doc/lispref/vol1.texi
@@ -141,7 +141,7 @@ Reference Manual, corresponding to GNU Emacs version @value{EMACSVER}.
141* Functions:: A function is a Lisp program 141* Functions:: A function is a Lisp program
142 that can be invoked from other functions. 142 that can be invoked from other functions.
143* Macros:: Macros are a way to extend the Lisp language. 143* Macros:: Macros are a way to extend the Lisp language.
144* Customization:: Writing customization declarations. 144* Customization:: Making variables and faces customizable.
145 145
146* Loading:: Reading files of Lisp code into Lisp. 146* Loading:: Reading files of Lisp code into Lisp.
147* Byte Compilation:: Compilation makes programs run faster. 147* Byte Compilation:: Compilation makes programs run faster.
@@ -520,6 +520,8 @@ Writing Customization Definitions
520* Group Definitions:: Writing customization group definitions. 520* Group Definitions:: Writing customization group definitions.
521* Variable Definitions:: Declaring user options. 521* Variable Definitions:: Declaring user options.
522* Customization Types:: Specifying the type of a user option. 522* Customization Types:: Specifying the type of a user option.
523* Applying Customizations:: Functions to apply customization settings.
524* Custom Themes:: Writing Custom themes.
523 525
524Customization Types 526Customization Types
525 527
@@ -1317,7 +1319,7 @@ Overlays
1317 1319
1318Faces 1320Faces
1319 1321
1320* Defining Faces:: How to define a face with @code{defface}. 1322* Defining Faces:: How to define a face.
1321* Face Attributes:: What is in a face? 1323* Face Attributes:: What is in a face?
1322* Attribute Functions:: Functions to examine and set face attributes. 1324* Attribute Functions:: Functions to examine and set face attributes.
1323* Displaying Faces:: How Emacs combines the faces specified for 1325* Displaying Faces:: How Emacs combines the faces specified for
diff --git a/doc/lispref/vol2.texi b/doc/lispref/vol2.texi
index 2a2578158bf..01a3e3c129e 100644
--- a/doc/lispref/vol2.texi
+++ b/doc/lispref/vol2.texi
@@ -140,7 +140,7 @@ Reference Manual, corresponding to GNU Emacs version @value{EMACSVER}.
140* Functions:: A function is a Lisp program 140* Functions:: A function is a Lisp program
141 that can be invoked from other functions. 141 that can be invoked from other functions.
142* Macros:: Macros are a way to extend the Lisp language. 142* Macros:: Macros are a way to extend the Lisp language.
143* Customization:: Writing customization declarations. 143* Customization:: Making variables and faces customizable.
144 144
145* Loading:: Reading files of Lisp code into Lisp. 145* Loading:: Reading files of Lisp code into Lisp.
146* Byte Compilation:: Compilation makes programs run faster. 146* Byte Compilation:: Compilation makes programs run faster.
@@ -519,6 +519,8 @@ Writing Customization Definitions
519* Group Definitions:: Writing customization group definitions. 519* Group Definitions:: Writing customization group definitions.
520* Variable Definitions:: Declaring user options. 520* Variable Definitions:: Declaring user options.
521* Customization Types:: Specifying the type of a user option. 521* Customization Types:: Specifying the type of a user option.
522* Applying Customizations:: Functions to apply customization settings.
523* Custom Themes:: Writing Custom themes.
522 524
523Customization Types 525Customization Types
524 526
@@ -1316,7 +1318,7 @@ Overlays
1316 1318
1317Faces 1319Faces
1318 1320
1319* Defining Faces:: How to define a face with @code{defface}. 1321* Defining Faces:: How to define a face.
1320* Face Attributes:: What is in a face? 1322* Face Attributes:: What is in a face?
1321* Attribute Functions:: Functions to examine and set face attributes. 1323* Attribute Functions:: Functions to examine and set face attributes.
1322* Displaying Faces:: How Emacs combines the faces specified for 1324* Displaying Faces:: How Emacs combines the faces specified for