aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerd Moellmann2000-05-23 11:12:04 +0000
committerGerd Moellmann2000-05-23 11:12:04 +0000
commit60a963715f5bd6e456da0062a3cc636660ac9804 (patch)
tree4ffae71f6368faf7d61a9c4781d6e7dca1df2250
parentd23ee514831a01d1d36d18de2bae63e7373b807f (diff)
downloademacs-60a963715f5bd6e456da0062a3cc636660ac9804.tar.gz
emacs-60a963715f5bd6e456da0062a3cc636660ac9804.zip
*** empty log message ***
-rw-r--r--man/ChangeLog9
-rw-r--r--man/cmdargs.texi38
-rw-r--r--man/custom.texi8
-rw-r--r--man/ebrowse.texi318
-rw-r--r--man/ediff.texi20
-rw-r--r--man/entering.texi8
-rw-r--r--man/files.texi10
-rw-r--r--man/frames.texi2
-rw-r--r--man/misc.texi34
-rw-r--r--man/msdog.texi10
-rw-r--r--man/mule.texi2
-rw-r--r--man/programs.texi2
-rw-r--r--man/rmail.texi8
-rw-r--r--man/sending.texi4
-rw-r--r--man/text.texi4
-rw-r--r--man/trouble.texi10
16 files changed, 261 insertions, 226 deletions
diff --git a/man/ChangeLog b/man/ChangeLog
index 5116212a9f4..a5bd422b27c 100644
--- a/man/ChangeLog
+++ b/man/ChangeLog
@@ -1,9 +1,16 @@
12000-05-20 Karl Eichwalder <ke@suse.de> 12000-05-23 Gerd Moellmann <gerd@gnu.org>
2 2
3 * cmdargs.texi, custom.texi, dired-x.texi, ediff.texi, 3 * cmdargs.texi, custom.texi, dired-x.texi, ediff.texi,
4 entering.texi, files.texi, frames.texi, misc.texi, msdog.texi, 4 entering.texi, files.texi, frames.texi, misc.texi, msdog.texi,
5 mule.texi, programs.texi, rmail.texi, sending.texi, text.texi, 5 mule.texi, programs.texi, rmail.texi, sending.texi, text.texi,
6 trouble.texi: Fix markup; mostly replace @code with @env. 6 trouble.texi: Fix markup; mostly replace @code with @env.
7
8 * ebrowse.texi: Use @command. Change title page.
9
102000-05-23 Eli Zaretskii <eliz@is.elta.co.il>
11
12 * ebrowse.texi: Various markup and index fixes. Changes for
13 MS-DOS.
7 14
82000-05-11 Gerd Moellmann <gerd@gnu.org> 152000-05-11 Gerd Moellmann <gerd@gnu.org>
9 16
diff --git a/man/cmdargs.texi b/man/cmdargs.texi
index 887fe34f949..b82649aa2f2 100644
--- a/man/cmdargs.texi
+++ b/man/cmdargs.texi
@@ -91,7 +91,7 @@ Visit @var{file} using @code{find-file}, then go to line number
91Load a Lisp library named @var{file} with the function @code{load}. 91Load a Lisp library named @var{file} with the function @code{load}.
92@xref{Lisp Libraries}. The library can be found either in the current 92@xref{Lisp Libraries}. The library can be found either in the current
93directory, or in the Emacs library search path as specified 93directory, or in the Emacs library search path as specified
94with @code{EMACSLOADPATH} (@pxref{General Variables}). 94with @env{EMACSLOADPATH} (@pxref{General Variables}).
95 95
96@item -f @var{function} 96@item -f @var{function}
97@itemx --funcall=@var{function} 97@itemx --funcall=@var{function}
@@ -140,7 +140,7 @@ the initial Emacs frame.
140 140
141@item -nw 141@item -nw
142@itemx --no-windows 142@itemx --no-windows
143Don't communicate directly with X, disregarding the @code{DISPLAY} 143Don't communicate directly with X, disregarding the @env{DISPLAY}
144environment variable even if it is set. 144environment variable even if it is set.
145 145
146@need 3000 146@need 3000
@@ -186,10 +186,10 @@ Enable the Emacs Lisp debugger for errors in the init file.
186Set up to do almost everything with single-byte buffers and strings. 186Set up to do almost everything with single-byte buffers and strings.
187All buffers and strings are unibyte unless you (or a Lisp program) 187All buffers and strings are unibyte unless you (or a Lisp program)
188explicitly ask for a multibyte buffer or string. Setting the 188explicitly ask for a multibyte buffer or string. Setting the
189environment variable @code{EMACS_UNIBYTE} has the same effect. 189environment variable @env{EMACS_UNIBYTE} has the same effect.
190 190
191@item --multibyte 191@item --multibyte
192Inhibit the effect of @code{EMACS_UNIBYTE}, so that Emacs 192Inhibit the effect of @env{EMACS_UNIBYTE}, so that Emacs
193uses multibyte characters by default, as usual. 193uses multibyte characters by default, as usual.
194@end table 194@end table
195 195
@@ -240,7 +240,7 @@ within the shell that is the parent of the Emacs job. This is why
240@code{edit} is an alias rather than a program or a shell script. It is 240@code{edit} is an alias rather than a program or a shell script. It is
241not possible to implement a resumption command that could be run from 241not possible to implement a resumption command that could be run from
242other subjobs of the shell; no way to define a command that could be 242other subjobs of the shell; no way to define a command that could be
243made the value of @code{EDITOR}, for example. Therefore, this feature 243made the value of @env{EDITOR}, for example. Therefore, this feature
244does not take the place of the Emacs Server feature (@pxref{Emacs 244does not take the place of the Emacs Server feature (@pxref{Emacs
245Server}). 245Server}).
246 246
@@ -264,7 +264,7 @@ conventional to use upper case letters only.
264Because environment variables come from the operating system there is no 264Because environment variables come from the operating system there is no
265general way to set them; it depends on the operating system and 265general way to set them; it depends on the operating system and
266especially the shell that you are using. For example, here's how to set 266especially the shell that you are using. For example, here's how to set
267the environment variable @code{ORGANIZATION} to @samp{not very much} 267the environment variable @env{ORGANIZATION} to @samp{not very much}
268using bash: 268using bash:
269 269
270@example 270@example
@@ -290,7 +290,7 @@ the X documentation for more information.
290@node General Variables 290@node General Variables
291@appendixsubsec General Variables 291@appendixsubsec General Variables
292 292
293@table @code 293@table @env
294@item AUTHORCOPY 294@item AUTHORCOPY
295The name of a file used to archive news articles posted with the @sc{gnus} 295The name of a file used to archive news articles posted with the @sc{gnus}
296package. 296package.
@@ -322,7 +322,7 @@ overrides the setting in @file{paths.h} when Emacs was built.
322The location of Emacs-specific binaries. Setting this variable 322The location of Emacs-specific binaries. Setting this variable
323overrides the setting in @file{paths.h} when Emacs was built. 323overrides the setting in @file{paths.h} when Emacs was built.
324@item ESHELL 324@item ESHELL
325Used for shell-mode to override the @code{SHELL} environment variable. 325Used for shell-mode to override the @env{SHELL} environment variable.
326@item HISTFILE 326@item HISTFILE
327The name of the file that shell commands are saved in between logins. 327The name of the file that shell commands are saved in between logins.
328This variable defaults to @file{~/.history} if you use (t)csh as shell, 328This variable defaults to @file{~/.history} if you use (t)csh as shell,
@@ -355,7 +355,7 @@ entries in @code{locale-language-names},
355environment and coding system. The first of these environment variables 355environment and coding system. The first of these environment variables
356with a nonempty value specifies the locale. 356with a nonempty value specifies the locale.
357@item LOGNAME 357@item LOGNAME
358The user's login name. See also @code{USER}. 358The user's login name. See also @env{USER}.
359@item MAIL 359@item MAIL
360The name of the user's system mail inbox. 360The name of the user's system mail inbox.
361@item MAILRC 361@item MAILRC
@@ -394,7 +394,7 @@ set unless Emacs is run in batch mode. On MS-DOS, it defaults to
394handles the machine's own display. 394handles the machine's own display.
395@item TERMCAP 395@item TERMCAP
396The name of the termcap library file describing how to program the 396The name of the termcap library file describing how to program the
397terminal specified by the @code{TERM} variable. This defaults to 397terminal specified by the @env{TERM} variable. This defaults to
398@file{/etc/termcap}. 398@file{/etc/termcap}.
399@item TMPDIR 399@item TMPDIR
400Used by the Emerge package as a prefix for temporary files. 400Used by the Emerge package as a prefix for temporary files.
@@ -403,7 +403,7 @@ This specifies the current time zone and possibly also daylight savings
403information. On MS-DOS, the default is based on country code; see the 403information. On MS-DOS, the default is based on country code; see the
404file @file{msdos.c} for details. 404file @file{msdos.c} for details.
405@item USER 405@item USER
406The user's login name. See also @code{LOGNAME}. On MS-DOS, this 406The user's login name. See also @env{LOGNAME}. On MS-DOS, this
407defaults to @samp{root}. 407defaults to @samp{root}.
408@item VERSION_CONTROL 408@item VERSION_CONTROL
409Used to initialize the @code{version-control} variable (@pxref{Backup 409Used to initialize the @code{version-control} variable (@pxref{Backup
@@ -415,13 +415,13 @@ Names}).
415 415
416These variables are used only on particular configurations: 416These variables are used only on particular configurations:
417 417
418@table @code 418@table @env
419@item COMSPEC 419@item COMSPEC
420On MS-DOS, the name of the command interpreter to use. This is used to 420On MS-DOS, the name of the command interpreter to use. This is used to
421make a default value for the @code{SHELL} environment variable. 421make a default value for the @env{SHELL} environment variable.
422 422
423@item NAME 423@item NAME
424On MS-DOS, this variable defaults to the value of the @code{USER} 424On MS-DOS, this variable defaults to the value of the @env{USER}
425variable. 425variable.
426 426
427@item TEMP 427@item TEMP
@@ -455,9 +455,9 @@ Used when initializing the Sun windows system.
455@node Display X 455@node Display X
456@appendixsec Specifying the Display Name 456@appendixsec Specifying the Display Name
457@cindex display name (X Windows) 457@cindex display name (X Windows)
458@cindex @code{DISPLAY} environment variable 458@cindex @env{DISPLAY} environment variable
459 459
460 The environment variable @code{DISPLAY} tells all X clients, including 460 The environment variable @env{DISPLAY} tells all X clients, including
461Emacs, where to display their windows. Its value is set up by default 461Emacs, where to display their windows. Its value is set up by default
462in ordinary circumstances, when you start an X server and run jobs 462in ordinary circumstances, when you start an X server and run jobs
463locally. Occasionally you may need to specify the display yourself; for 463locally. Occasionally you may need to specify the display yourself; for
@@ -470,7 +470,7 @@ window displayed at their local terminal. You might need to use login
470to another system because the files you want to edit are there, or 470to another system because the files you want to edit are there, or
471because the Emacs executable file you want to run is there. 471because the Emacs executable file you want to run is there.
472 472
473 The syntax of the @code{DISPLAY} environment variable is 473 The syntax of the @env{DISPLAY} environment variable is
474@samp{@var{host}:@var{display}.@var{screen}}, where @var{host} is the 474@samp{@var{host}:@var{display}.@var{screen}}, where @var{host} is the
475host name of the X Window System server machine, @var{display} is an 475host name of the X Window System server machine, @var{display} is an
476arbitrarily-assigned number that distinguishes your server (X terminal) 476arbitrarily-assigned number that distinguishes your server (X terminal)
@@ -481,10 +481,10 @@ included, @var{screen} is usually zero.
481 481
482 For example, if your host is named @samp{glasperle} and your server is 482 For example, if your host is named @samp{glasperle} and your server is
483the first (or perhaps the only) server listed in the configuration, your 483the first (or perhaps the only) server listed in the configuration, your
484@code{DISPLAY} is @samp{glasperle:0.0}. 484@env{DISPLAY} is @samp{glasperle:0.0}.
485 485
486 You can specify the display name explicitly when you run Emacs, either 486 You can specify the display name explicitly when you run Emacs, either
487by changing the @code{DISPLAY} variable, or with the option @samp{-d 487by changing the @env{DISPLAY} variable, or with the option @samp{-d
488@var{display}} or @samp{--display=@var{display}}. Here is an example: 488@var{display}} or @samp{--display=@var{display}}. Here is an example:
489 489
490@smallexample 490@smallexample
diff --git a/man/custom.texi b/man/custom.texi
index 9fd6c363cf8..891e3e17113 100644
--- a/man/custom.texi
+++ b/man/custom.texi
@@ -2286,7 +2286,7 @@ library. @xref{Hooks}.
2286@node Find Init 2286@node Find Init
2287@subsection How Emacs Finds Your Init File 2287@subsection How Emacs Finds Your Init File
2288 2288
2289 Normally Emacs uses the environment variable @code{HOME} to find 2289 Normally Emacs uses the environment variable @env{HOME} to find
2290@file{.emacs}; that's what @samp{~} means in a file name. But if you 2290@file{.emacs}; that's what @samp{~} means in a file name. But if you
2291have done @code{su}, Emacs tries to find your own @file{.emacs}, not 2291have done @code{su}, Emacs tries to find your own @file{.emacs}, not
2292that of the user you are currently pretending to be. The idea is 2292that of the user you are currently pretending to be. The idea is
@@ -2294,9 +2294,9 @@ that you should get your own editor customizations even if you are
2294running as the super user. 2294running as the super user.
2295 2295
2296 More precisely, Emacs first determines which user's init file to use. 2296 More precisely, Emacs first determines which user's init file to use.
2297It gets the user name from the environment variables @code{LOGNAME} and 2297It gets the user name from the environment variables @env{LOGNAME} and
2298@code{USER}; if neither of those exists, it uses effective user-ID. 2298@env{USER}; if neither of those exists, it uses effective user-ID.
2299If that user name matches the real user-ID, then Emacs uses @code{HOME}; 2299If that user name matches the real user-ID, then Emacs uses @env{HOME};
2300otherwise, it looks up the home directory corresponding to that user 2300otherwise, it looks up the home directory corresponding to that user
2301name in the system's data base of users. 2301name in the system's data base of users.
2302@c LocalWords: backtab 2302@c LocalWords: backtab
diff --git a/man/ebrowse.texi b/man/ebrowse.texi
index cfafef5c044..89eda96503a 100644
--- a/man/ebrowse.texi
+++ b/man/ebrowse.texi
@@ -8,6 +8,7 @@
8@setfilename ../info/ebrowse 8@setfilename ../info/ebrowse
9@settitle A Class Browser for C++ 9@settitle A Class Browser for C++
10@setchapternewpage odd 10@setchapternewpage odd
11@syncodeindex fn cp
11@comment %**end of header 12@comment %**end of header
12 13
13@ifinfo 14@ifinfo
@@ -24,7 +25,7 @@ this manual provided the copyright notice and this permission notice
24are preserved on all copies. 25are preserved on all copies.
25 26
26@ignore 27@ignore
27Permission is granted to process this file through Tex and print the 28Permission is granted to process this file through TeX and print the
28results, provided the printed document carries copying permission 29results, provided the printed document carries copying permission
29notice identical to this one except for the removal of this paragraph 30notice identical to this one except for the removal of this paragraph
30(this paragraph not being relevant to the printed manual). 31(this paragraph not being relevant to the printed manual).
@@ -45,36 +46,34 @@ translation approved by the Free Software Foundation instead of in the
45original English. 46original English.
46@end ifinfo 47@end ifinfo
47 48
49@iftex
48@titlepage 50@titlepage
49@sp 10 51@title Ebrowse User's Manual
50@center @titlefont{A C++ Browser for GNU Emacs} 52@sp 4
51@vskip 0pt plus 1filll 53@subtitle Ebrowse/Emacs 21
52Copyright @copyright{} 1992--1999, 2000 Free Software Foundation, Inc. 54@sp 1
53 55@subtitle May 2000
54Permission is granted to make and distribute verbatim copies of this 56@sp 5
55manual provided the copyright notice and this permission notice are 57@author Gerd Moellmann
56preserved on all copies. 58@page
57 59
58Permission is granted to copy and distribute modified versions of this 60@vskip 0pt plus 1filll
59manual under the conditions for verbatim copying, provided also that the 61@noindent
60sections entitled ``Distribution'' and ``General Public License'' are 62Copyright @copyright{} 2000 Free Software Foundation, Inc.
61included exactly as in the original, and provided that the entire
62resulting derived work is distributed under the terms of a permission
63notice identical to this one.
64 63
65Permission is granted to copy and distribute translations of this manual 64Permission is granted to make and distribute verbatim copies of
66into another language, under the above conditions for modified versions, 65this manual provided the copyright notice and this permission notice
67except that the sections entitled ``Distribution'' and ``General Public 66are preserved on all copies.
68License'' may be included in a translation approved by the author
69instead of in the original English.
70@end titlepage 67@end titlepage
71 68@page
72 69@end iftex
73 70
74@node Top, Overview, (dir), (dir) 71@node Top, Overview, (dir), (dir)
75 72
73@ifnottex
76You can browse C++ class hierarchies from within Emacs by using 74You can browse C++ class hierarchies from within Emacs by using
77Ebrowse. 75Ebrowse.
76@end ifnottex
78 77
79@menu 78@menu
80* Overview:: What is it and now does it work? 79* Overview:: What is it and now does it work?
@@ -91,11 +90,6 @@ Ebrowse.
91 90
92@node Overview, Generating browser files, Top, Top 91@node Overview, Generating browser files, Top, Top
93@chapter Introduction 92@chapter Introduction
94@cindex tree buffer
95@cindex member buffer
96@cindex major modes
97@cindex parser
98@cindex @samp{*Globals*}
99 93
100When working in software projects using C++, I frequently missed 94When working in software projects using C++, I frequently missed
101software support for two things: 95software support for two things:
@@ -120,6 +114,7 @@ The design of Ebrowse reflects these two needs.
120 114
121How does it work? 115How does it work?
122 116
117@cindex parser for C++ sources
123A fast parser written in C is used to process C++ source files. 118A fast parser written in C is used to process C++ source files.
124The parser generates a data base containing information about classes, 119The parser generates a data base containing information about classes,
125members, global functions, defines, types etc. found in the sources. 120members, global functions, defines, types etc. found in the sources.
@@ -129,15 +124,18 @@ the data base generated by the parser. It displays its contents in
129various forms and allows you to perform operations on it, or do 124various forms and allows you to perform operations on it, or do
130something with the help of the knowledge contained in the data base. 125something with the help of the knowledge contained in the data base.
131 126
127@cindex major modes, of Ebrowse buffers
132@dfn{Navigational} use of Ebrowse is centered around two 128@dfn{Navigational} use of Ebrowse is centered around two
133types of buffers which define their own major modes: 129types of buffers which define their own major modes:
134 130
131@cindex tree buffer
135@dfn{Tree buffers} are used to view class hierarchies in tree form. 132@dfn{Tree buffers} are used to view class hierarchies in tree form.
136They allow you to quickly find classes, find or view class declarations, 133They allow you to quickly find classes, find or view class declarations,
137perform operations like query replace on sets of your source files, and 134perform operations like query replace on sets of your source files, and
138finally tree buffers are used to produce the second buffer form---member 135finally tree buffers are used to produce the second buffer form---member
139buffers. 136buffers. @xref{Tree Buffers}.
140 137
138@cindex member buffer
141Members are displayed in @dfn{member buffers}. Ebrowse 139Members are displayed in @dfn{member buffers}. Ebrowse
142distinguishes between six different types of members; each type is 140distinguishes between six different types of members; each type is
143displayed as a member list of its own: 141displayed as a member list of its own:
@@ -168,7 +166,7 @@ You can switch member buffers from one list to another, or to another
168class. You can include inherited members in the display, you can set 166class. You can include inherited members in the display, you can set
169filters that remove categories of members from the display, and most 167filters that remove categories of members from the display, and most
170importantly you can find or view member declarations and definitions 168importantly you can find or view member declarations and definitions
171with a keystroke. 169with a keystroke. @xref{Member Buffers}.
172 170
173These two buffer types and the commands they provide support the 171These two buffer types and the commands they provide support the
174navigational use of the browser. The second form resembles Emacs' Tags 172navigational use of the browser. The second form resembles Emacs' Tags
@@ -181,7 +179,7 @@ To list just a subset of what you can use the Tags part of Ebrowse for:
181@itemize @bullet 179@itemize @bullet
182@item 180@item
183Jump to the definition or declaration of an identifier in your source 181Jump to the definition or declaration of an identifier in your source
184code, with an electric position stack that let's you easily navigate 182code, with an electric position stack that lets you easily navigate
185back and forth. 183back and forth.
186 184
187@item 185@item
@@ -203,16 +201,15 @@ them, if you like.
203@node Generating browser files, Loading a Tree, Overview, Top 201@node Generating browser files, Loading a Tree, Overview, Top
204@comment node-name, next, previous, up 202@comment node-name, next, previous, up
205@chapter Processing Source Files 203@chapter Processing Source Files
206@cindex command line
207@cindex options
208@cindex switches
209@cindex parser switches
210 204
205@cindex @command{ebrowse}, the program
206@cindex class data base creation
211Before you can start browsing a class hierarchy, you must run the parser 207Before you can start browsing a class hierarchy, you must run the parser
212@file{ebrowse} on your source files in order to generate a Lisp data 208@command{ebrowse} on your source files in order to generate a Lisp data
213base describing your program. 209base describing your program.
214 210
215The operation of @file{ebrowse} can be tailored with command line 211@cindex command line for @command{ebrowse}
212The operation of @command{ebrowse} can be tailored with command line
216options. Under normal circumstances it suffices to let the parser use 213options. Under normal circumstances it suffices to let the parser use
217its default settings. If you want to do that, call it with a command 214its default settings. If you want to do that, call it with a command
218line like: 215line like:
@@ -222,7 +219,7 @@ ebrowse *.h *.cc
222@end example 219@end example
223 220
224@noindent 221@noindent
225or, if your shell doesn't allow all file names to be specified on 222or, if your shell doesn't allow all the file names to be specified on
226the command line, 223the command line,
227 224
228@example 225@example
@@ -233,7 +230,8 @@ ebrowse --files=@var{file}
233where @var{file} contains the names of the files to be parsed, one 230where @var{file} contains the names of the files to be parsed, one
234per line. 231per line.
235 232
236When invoked with option @samp{--help}, @file{ebrowse} prints a list of 233@findex --help
234When invoked with option @samp{--help}, @command{ebrowse} prints a list of
237available command line options.@refill 235available command line options.@refill
238 236
239@menu 237@menu
@@ -250,19 +248,15 @@ available command line options.@refill
250@comment name, next, prev, up 248@comment name, next, prev, up
251@node Input files, Output file, Generating browser files, Generating browser files 249@node Input files, Output file, Generating browser files, Generating browser files
252@section Specifying Input Files 250@section Specifying Input Files
253@cindex input files
254@cindex response files
255@cindex @samp{--files}
256@cindex @samp{--search-path}
257@cindex standard input
258@cindex header files
259@cindex friend functions
260 251
261@table @samp 252@table @samp
253@cindex input files, for @command{ebrowse}
262@item file 254@item file
263Each file name on the command line tells @file{ebrowse} to parse 255Each file name on the command line tells @command{ebrowse} to parse
264that file. 256that file.
265 257
258@cindex response files
259@findex --files
266@item --files=@var{file} 260@item --files=@var{file}
267This command line switch specifies that @var{file} contains a list of 261This command line switch specifies that @var{file} contains a list of
268file names to parse. Each line in @var{file} must contain one file 262file names to parse. Each line in @var{file} must contain one file
@@ -270,18 +264,22 @@ name. More than one option of this kind is allowed. You might, for
270instance, want to use one file for header files, and another for source 264instance, want to use one file for header files, and another for source
271files. 265files.
272 266
267@cindex standard input, specifying input files
273@item standard input 268@item standard input
274When @file{ebrowse} finds no file names on the command line, and no 269When @command{ebrowse} finds no file names on the command line, and no
275@samp{--file} option is specified, it reads file names from standard 270@samp{--file} option is specified, it reads file names from standard
276input. This is sometimes convenient when @file{ebrowse} is used as part 271input. This is sometimes convenient when @command{ebrowse} is used as part
277of a command pipe. 272of a command pipe.
278 273
274@findex --search-path
279@item --search-path=@var{paths} 275@item --search-path=@var{paths}
280This option let's you specify search paths for your input files. 276This option let's you specify search paths for your input files.
281@var{paths} is a list of directory names, separated from each other by a 277@var{paths} is a list of directory names, separated from each other by a
282either a colon or a semicolon, depending on the operating system. 278either a colon or a semicolon, depending on the operating system.
283@end table 279@end table
284 280
281@cindex header files
282@cindex friend functions
285It is generally a good idea to specify input files so that header files 283It is generally a good idea to specify input files so that header files
286are parsed before source files. This facilitates the parser's work of 284are parsed before source files. This facilitates the parser's work of
287properly identifying friend functions of a class. 285properly identifying friend functions of a class.
@@ -291,20 +289,18 @@ properly identifying friend functions of a class.
291@comment name, next, prev, up 289@comment name, next, prev, up
292@node Output file, Structs and unions, Input files, Generating browser files 290@node Output file, Structs and unions, Input files, Generating browser files
293@section Changing the Output File Name 291@section Changing the Output File Name
294@cindex output file name
295@cindex @samp{BROWSE}
296@cindex appending output
297@cindex @samp{--output-file}
298@cindex @samp{--append}
299 292
300@table @samp 293@table @samp
294@cindex output file name
295@findex --output-file
296@cindex @file{BROWSE} file
301@item --output-file=@var{file} 297@item --output-file=@var{file}
302This option instructs @file{ebrowse} to generate a Lisp data base with 298This option instructs @command{ebrowse} to generate a Lisp data base with
303name @var{file}. By default, the data base is named @file{BROWSE}, and 299name @var{file}. By default, the data base is named @file{BROWSE}, and
304is written in the directory in which @file{ebrowse} is invoked. 300is written in the directory in which @command{ebrowse} is invoked.
305 301
306If you regularly use data base names different from the default, you 302If you regularly use data base names different from the default, you
307might want to add this to your init file 303might want to add this to your init file:
308 304
309@lisp 305@lisp
310(add-to-list 'auto-mode-alist '(@var{NAME} . ebrowse-tree-mode)) 306(add-to-list 'auto-mode-alist '(@var{NAME} . ebrowse-tree-mode))
@@ -313,9 +309,11 @@ might want to add this to your init file
313@noindent 309@noindent
314where @var{NAME} is the Lisp data base name you are using. 310where @var{NAME} is the Lisp data base name you are using.
315 311
312@findex --append
313@cindex appending output to class data base
316@item --append 314@item --append
317By default, each run of @file{ebrowse} erases the old contents of the 315By default, each run of @command{ebrowse} erases the old contents of the
318output file when writing to it. You can instruct @file{ebrowse} to 316output file when writing to it. You can instruct @command{ebrowse} to
319append its output to an existing file with this command line option. 317append its output to an existing file with this command line option.
320@end table 318@end table
321 319
@@ -327,9 +325,9 @@ append its output to an existing file with this command line option.
327@section Structs and Unions 325@section Structs and Unions
328@cindex structs 326@cindex structs
329@cindex unions 327@cindex unions
330@cindex @samp{--no-structs-or-unions}
331 328
332@table @samp 329@table @samp
330@findex --no-structs-or-unions
333@item --no-structs-or-unions 331@item --no-structs-or-unions
334This switch suppresses all classes in the data base declared as 332This switch suppresses all classes in the data base declared as
335@code{struct} or @code{union} in the output. 333@code{struct} or @code{union} in the output.
@@ -345,19 +343,14 @@ tree.
345@comment name, next, prev, up 343@comment name, next, prev, up
346@node Matching, Verbosity, Structs and unions, Generating browser files 344@node Matching, Verbosity, Structs and unions, Generating browser files
347@section Regular Expressions 345@section Regular Expressions
348@cindex regular expressions
349@cindex minimum regexp length
350@cindex maximum regexp length
351@cindex @samp{--min-regexp-length}
352@cindex @samp{--max-regexp-length}
353@cindex @samp{--no-regexps}
354 346
355The parser @file{ebrowse} normally writes strings to its output file 347@cindex regular expressions, recording
356that help the Lisp part of Ebrowse to find functions, variables etc. in 348The parser @command{ebrowse} normally writes regular expressions to its
357their source files. 349output file that help the Lisp part of Ebrowse to find functions,
350variables etc. in their source files.
358 351
359You can instruct @file{ebrowse} to omit these strings by calling it 352You can instruct @command{ebrowse} to omit these regular expressions by
360with the command line switch @samp{--no-regexps}. 353calling it with the command line switch @samp{--no-regexps}.
361 354
362When you do this, the Lisp part of Ebrowse tries to guess, from member 355When you do this, the Lisp part of Ebrowse tries to guess, from member
363or class names, suitable regular expressions to locate that class or 356or class names, suitable regular expressions to locate that class or
@@ -366,25 +359,30 @@ automatic generation of regular expressions can be too weak if unusual
366coding styles are used. 359coding styles are used.
367 360
368@table @samp 361@table @samp
362@findex --no-regexps
369@item --no-regexps 363@item --no-regexps
370This option turns regular expression recording off. 364This option turns regular expression recording off.
371 365
366@findex --min-regexp-length
367@cindex minimum regexp length for recording
372@item --min-regexp-length=@var{n} 368@item --min-regexp-length=@var{n}
373The number @var{n} following this option specifies the minimum length of 369The number @var{n} following this option specifies the minimum length of
374the regular expressions recorded to match class and member declarations 370the regular expressions recorded to match class and member declarations
375and definitions. The default value is set at compilation time of 371and definitions. The default value is set at compilation time of
376@file{ebrowse}. 372@command{ebrowse}.
377 373
378The smaller the minimum length the higher the probability that 374The smaller the minimum length the higher the probability that
379Ebrowse will find a wrong match. The larger the value, the 375Ebrowse will find a wrong match. The larger the value, the
380larger the output file and therefore the memory consumption once the 376larger the output file and therefore the memory consumption once the
381file is read from Emacs. 377file is read from Emacs.
382 378
379@findex --max-regexp-length
380@cindex maximum regexp length for recording
383@item --max-regexp-length=@var{n} 381@item --max-regexp-length=@var{n}
384The number following this option specifies the maximum length of the 382The number following this option specifies the maximum length of the
385regular expressions used to match class and member declarations and 383regular expressions used to match class and member declarations and
386definitions. The default value is set at compilation time of 384definitions. The default value is set at compilation time of
387@file{ebrowse}. 385@command{ebrowse}.
388 386
389The larger the maximum length the higher the probability that the 387The larger the maximum length the higher the probability that the
390browser will find a correct match, but the larger the value the larger 388browser will find a correct match, but the larger the value the larger
@@ -399,18 +397,18 @@ the probability that it will no longer match after editing the file.
399@node Verbosity, , Matching, Generating browser files 397@node Verbosity, , Matching, Generating browser files
400@comment node-name, next, previous, up 398@comment node-name, next, previous, up
401@section Verbose Mode 399@section Verbose Mode
402@cindex verbose 400@cindex verbose operation
403@cindex @samp{--verbose}
404@cindex @samp{--very-verbose}
405 401
406@table @samp 402@table @samp
403@findex --verbose
407@item --verbose 404@item --verbose
408When this option is specified on the command line, @file{ebrowse} prints 405When this option is specified on the command line, @command{ebrowse} prints
409a period for each file parsed, and it displays a @samp{+} for each 406a period for each file parsed, and it displays a @samp{+} for each
410class written to the output file. 407class written to the output file.
411 408
409@findex --very-verbose
412@item --very-verbose 410@item --very-verbose
413This option makes @file{ebrowse} print out the names of the files and 411This option makes @command{ebrowse} print out the names of the files and
414the names of the classes seen. 412the names of the classes seen.
415@end table 413@end table
416 414
@@ -423,7 +421,7 @@ the names of the classes seen.
423@cindex loading 421@cindex loading
424@cindex browsing 422@cindex browsing
425 423
426You start browsing a class hierarchy parsed by @file{ebrowse} by just 424You start browsing a class hierarchy parsed by @command{ebrowse} by just
427finding the @file{BROWSE} file with @kbd{C-x C-f}. 425finding the @file{BROWSE} file with @kbd{C-x C-f}.
428 426
429An example of a tree buffer display is shown below. 427An example of a tree buffer display is shown below.
@@ -437,12 +435,14 @@ An example of a tree buffer display is shown below.
437| Dictionary 435| Dictionary
438@end example 436@end example
439 437
440When you run Emacs under X, you will notice that that certain areas in 438@cindex mouse highlight in tree buffers
441the tree buffer are highlighted when you move the mouse over them. This 439When you run Emacs on a display which supports colors and the mouse, you
442highlight marks mouse-sensitive regions in the buffer. Please notice 440will notice that that certain areas in the tree buffer are highlighted
443the help strings in the echo area when the mouse moves over a sensitive 441when you move the mouse over them. This highlight marks mouse-sensitive
444region. 442regions in the buffer. Please notice the help strings in the echo area
443when the mouse moves over a sensitive region.
445 444
445@cindex context menu
446A click with @kbd{mouse-3} on a mouse-sensitive region opens a context 446A click with @kbd{mouse-3} on a mouse-sensitive region opens a context
447menu. In addition to this, each buffer also has a buffer-specific menu 447menu. In addition to this, each buffer also has a buffer-specific menu
448that is opened with a click with @kbd{mouse-3} somewhere in the buffer 448that is opened with a click with @kbd{mouse-3} somewhere in the buffer
@@ -459,8 +459,6 @@ where no highlight is displayed.
459@node Tree Buffers, Member Buffers, Loading a Tree, Top 459@node Tree Buffers, Member Buffers, Loading a Tree, Top
460@comment node-name, next, previous, up 460@comment node-name, next, previous, up
461@chapter Tree Buffers 461@chapter Tree Buffers
462@cindex tree buffers
463@cindex tree
464@cindex tree buffer mode 462@cindex tree buffer mode
465@cindex class trees 463@cindex class trees
466 464
@@ -494,7 +492,7 @@ buffers.
494@comment node-name, next, previous, up 492@comment node-name, next, previous, up
495@section Viewing and Finding Class Declarations 493@section Viewing and Finding Class Declarations
496@cindex viewing, class 494@cindex viewing, class
497@cindex finding, class 495@cindex finding a class
498@cindex class declaration 496@cindex class declaration
499 497
500You can view or find a class declaration when the cursor is on a class 498You can view or find a class declaration when the cursor is on a class
@@ -522,10 +520,10 @@ The same functionality is available from the menu opened with
522@node Member Display, Go to Class, Source Display, Tree Buffers 520@node Member Display, Go to Class, Source Display, Tree Buffers
523@comment node-name, next, previous, up 521@comment node-name, next, previous, up
524@section Displaying Members 522@section Displaying Members
525@cindex @samp{*Members*} 523@cindex @samp{*Members*} buffer
526@cindex @samp{*Globals*} 524@cindex @samp{*Globals*}
527@cindex freezing 525@cindex freezing a member buffer
528@cindex member lists 526@cindex member lists, in tree buffers
529 527
530Ebrowse distinguishes six different kinds of members, each of 528Ebrowse distinguishes six different kinds of members, each of
531which is displayed as a separate @dfn{member list}: instance variables, 529which is displayed as a separate @dfn{member list}: instance variables,
@@ -550,23 +548,29 @@ pop to a member buffer displaying the member list. With prefix argument,
550the member buffer will additionally be @dfn{frozen}. 548the member buffer will additionally be @dfn{frozen}.
551 549
552@table @kbd 550@table @kbd
551@cindex instance member variables, list
553@item L v 552@item L v
554This command displays the list of instance member variables. 553This command displays the list of instance member variables.
555 554
555@cindex static variables, list
556@item L V 556@item L V
557Display the list of static variables. 557Display the list of static variables.
558 558
559@cindex friend functions, list
559@item L d 560@item L d
560Display the list of friend functions. This list is used for defines if 561Display the list of friend functions. This list is used for defines if
561you are viewing the class @samp{*Globals*} which is a place holder for 562you are viewing the class @samp{*Globals*} which is a place holder for
562global symbols. 563global symbols.
563 564
565@cindex member functions, list
564@item L f 566@item L f
565Display the list of member functions. 567Display the list of member functions.
566 568
569@cindex static member functions, list
567@item L F 570@item L F
568Display the list of static member functions. 571Display the list of static member functions.
569 572
573@cindex types, list
570@item L t 574@item L t
571Display a list of types. 575Display a list of types.
572@end table 576@end table
@@ -582,15 +586,17 @@ These lists are also available from the class' context menu invoked with
582@section Finding a Class 586@section Finding a Class
583@cindex locate class 587@cindex locate class
584@cindex expanding branches 588@cindex expanding branches
589@cindex class location
585 590
586@table @kbd 591@table @kbd
592@cindex search for class
587@item / 593@item /
588This command reads a class name from the minibuffer with completion and 594This command reads a class name from the minibuffer with completion and
589positions the cursor on the class in the class tree. 595positions the cursor on the class in the class tree.
590 596
591If the branch of the class tree containing the class searched for is 597If the branch of the class tree containing the class searched for is
592currently collapsed, the class itself and all its base classes are 598currently collapsed, the class itself and all its base classes are
593recursively made visible. (See also @xref{Expanding and 599recursively made visible. (See also @ref{Expanding and
594Collapsing}.)@refill 600Collapsing}.)@refill
595 601
596This function is also available from the tree buffer's context menu. 602This function is also available from the tree buffer's context menu.
@@ -606,7 +612,7 @@ local copy of the regular expression last searched in it.
606@node Quitting, File Name Display, Go to Class, Tree Buffers 612@node Quitting, File Name Display, Go to Class, Tree Buffers
607@comment node-name, next, previous, up 613@comment node-name, next, previous, up
608@section Burying a Tree Buffer 614@section Burying a Tree Buffer
609@cindex burying buffer, tree 615@cindex burying tree buffer
610 616
611@table @kbd 617@table @kbd
612@item q 618@item q
@@ -619,9 +625,9 @@ Is a synonym for @kbd{M-x bury-buffer}.
619@node File Name Display, Expanding and Collapsing, Quitting, Tree Buffers 625@node File Name Display, Expanding and Collapsing, Quitting, Tree Buffers
620@comment node-name, next, previous, up 626@comment node-name, next, previous, up
621@section Displaying File Names 627@section Displaying File Names
622@cindex file name display
623 628
624@table @kbd 629@table @kbd
630@cindex file names in tree buffers
625@item T f 631@item T f
626This command toggles the display of file names in a tree buffer. If 632This command toggles the display of file names in a tree buffer. If
627file name display is switched on, the names of the files containing the 633file name display is switched on, the names of the files containing the
@@ -652,14 +658,15 @@ Here is an example of a tree buffer with file names displayed.
652@node Expanding and Collapsing, Tree Indentation, File Name Display, Tree Buffers 658@node Expanding and Collapsing, Tree Indentation, File Name Display, Tree Buffers
653@comment node-name, next, previous, up 659@comment node-name, next, previous, up
654@section Expanding and Collapsing a Tree 660@section Expanding and Collapsing a Tree
655@cindex expand 661@cindex expand tree branch
656@cindex collapse 662@cindex collapse tree branch
657@cindex branches 663@cindex branches of class tree
664@cindex class tree, collapse or expand
658 665
659You can expand and collapse parts of a tree to reduce the complexity of 666You can expand and collapse parts of a tree to reduce the complexity of
660large class hierarchies. Expanding or collapsing branches of a tree has 667large class hierarchies. Expanding or collapsing branches of a tree has
661no impact on the functionality of other commands, like @kbd{/}. (See 668no impact on the functionality of other commands, like @kbd{/}. (See
662also @xref{Go to Class}.)@refill 669also @ref{Go to Class}.)@refill
663 670
664Collapsed branches are indicated with an ellipsis following the class 671Collapsed branches are indicated with an ellipsis following the class
665name like in the example below. 672name like in the example below.
@@ -692,7 +699,7 @@ This command expands all collapsed branches in the tree.
692@comment node-name, next, previous, up 699@comment node-name, next, previous, up
693@section Changing the Tree Indentation 700@section Changing the Tree Indentation
694@cindex tree indentation 701@cindex tree indentation
695@cindex indentation 702@cindex indentation of the tree
696 703
697@table @kbd 704@table @kbd
698@item T w 705@item T w
@@ -708,6 +715,7 @@ available from the tree buffer's context menu.
708@comment node-name, next, previous, up 715@comment node-name, next, previous, up
709@section Removing Classes from the Tree 716@section Removing Classes from the Tree
710@cindex killing classes 717@cindex killing classes
718@cindex class, remove from tree
711 719
712@table @kbd 720@table @kbd
713@item C-k 721@item C-k
@@ -723,7 +731,9 @@ deletion is actually performed.
723@comment node-name, next, previous, up 731@comment node-name, next, previous, up
724@comment node-name, next, previous, up 732@comment node-name, next, previous, up
725@section Saving a Tree 733@section Saving a Tree
726@cindex saving tree 734@cindex save tree to a file
735@cindex tree, save to a file
736@cindex class tree, save to a file
727 737
728@table @kbd 738@table @kbd
729@item C-x C-s 739@item C-x C-s
@@ -739,7 +749,9 @@ Writes the tree to a file whose name is read from the minibuffer.
739 749
740@node Statistics, Marking Classes, Saving a Tree, Tree Buffers 750@node Statistics, Marking Classes, Saving a Tree, Tree Buffers
741@comment node-name, next, previous, up 751@comment node-name, next, previous, up
742@cindex statistics 752@cindex statistics for a tree
753@cindex tree statistics
754@cindex class statistics
743 755
744@table @kbd 756@table @kbd
745@item x 757@item x
@@ -754,17 +766,20 @@ context menu.
754@node Marking Classes, , Statistics, Tree Buffers 766@node Marking Classes, , Statistics, Tree Buffers
755@comment node-name, next, previous, up 767@comment node-name, next, previous, up
756@cindex marking classes 768@cindex marking classes
769@cindex operations on marked classes
757 770
758Classes can be marked for operations similar to the standard Emacs 771Classes can be marked for operations similar to the standard Emacs
759commands @kbd{M-x tags-search} and @kbd{M-x tags-query-replace} (see 772commands @kbd{M-x tags-search} and @kbd{M-x tags-query-replace} (see
760also @xref{Tags-like Functions}.)@refill 773also @xref{Tags-like Functions}.)@refill
761 774
762@table @kbd 775@table @kbd
776@cindex toggle mark
763@item M t 777@item M t
764Toggle the mark of the line point is in or for as many lines as given by 778Toggle the mark of the line point is in or for as many lines as given by
765a prefix command. This command can also be found in the class' context 779a prefix command. This command can also be found in the class' context
766menu. 780menu.
767 781
782@cindex unmark all
768@item M a 783@item M a
769Unmark all classes. With prefix argument @kbd{C-u}, mark all classes in 784Unmark all classes. With prefix argument @kbd{C-u}, mark all classes in
770the tree. Since this command operates on the whole buffer, it can also be 785the tree. Since this command operates on the whole buffer, it can also be
@@ -793,10 +808,11 @@ display, like in the following example
793@node Member Buffers, Tags-like Functions, Tree Buffers, Top 808@node Member Buffers, Tags-like Functions, Tree Buffers, Top
794@comment node-name, next, previous, up 809@comment node-name, next, previous, up
795@chapter Member Buffers 810@chapter Member Buffers
796@cindex member buffer
797@cindex members 811@cindex members
798@cindex member buffer mode 812@cindex member buffer mode
799 813
814@cindex class members, types
815@cindex types of class members
800@dfn{Member buffers} are used to operate on lists of members of a class. 816@dfn{Member buffers} are used to operate on lists of members of a class.
801Ebrowse distinguishes six kinds of lists: 817Ebrowse distinguishes six kinds of lists:
802 818
@@ -843,16 +859,18 @@ buffer: members, classes, and the buffer itself.
843@node Switching Member Lists, Finding/Viewing, Member Buffers, Member Buffers 859@node Switching Member Lists, Finding/Viewing, Member Buffers, Member Buffers
844@comment node-name, next, previous, up 860@comment node-name, next, previous, up
845@section Switching Member Lists 861@section Switching Member Lists
846@cindex member lists 862@cindex member lists, in member buffers
847@cindex static members 863@cindex static members
848@cindex friends 864@cindex friends
849@cindex types 865@cindex types
850@cindex defines 866@cindex defines
851 867
852@table @kbd 868@table @kbd
869@cindex next member list
853@item L n 870@item L n
854This command switches the member buffer display to the next member list. 871This command switches the member buffer display to the next member list.
855 872
873@cindex previous member list
856@item L p 874@item L p
857This command switches the member buffer display to the previous member 875This command switches the member buffer display to the previous member
858list. 876list.
@@ -860,6 +878,7 @@ list.
860@item L f 878@item L f
861Switch to the list of member functions. 879Switch to the list of member functions.
862 880
881@cindex static
863@item L F 882@item L F
864Switch to the list of static member functions. 883Switch to the list of static member functions.
865 884
@@ -887,12 +906,12 @@ context menu.
887@node Finding/Viewing, Inherited Members, Switching Member Lists, Member Buffers 906@node Finding/Viewing, Inherited Members, Switching Member Lists, Member Buffers
888@comment node-name, next, previous, up 907@comment node-name, next, previous, up
889@section Finding and Viewing Member Source 908@section Finding and Viewing Member Source
890@cindex finding members 909@cindex finding members, in member buffers
891@cindex viewing members 910@cindex viewing members, in member buffers
892@cindex member definitions 911@cindex member definitions, in member buffers
893@cindex member declarations 912@cindex member declarations, in member buffers
894@cindex definitions 913@cindex definition of a member, in member buffers
895@cindex declarations 914@cindex declaration of a member, in member buffers
896 915
897@table @kbd 916@table @kbd
898@item RET 917@item RET
@@ -925,8 +944,8 @@ displayed when clicking @kbd{mouse-2} on a member name.
925@node Inherited Members, Searching Members, Finding/Viewing, Member Buffers 944@node Inherited Members, Searching Members, Finding/Viewing, Member Buffers
926@comment node-name, next, previous, up 945@comment node-name, next, previous, up
927@section Display of Inherited Members 946@section Display of Inherited Members
928@cindex superclasses 947@cindex superclasses, members
929@cindex base classes 948@cindex base classes, members
930@cindex inherited members 949@cindex inherited members
931 950
932@table @kbd 951@table @kbd
@@ -971,7 +990,7 @@ a mouse.
971@node Switching to Tree, Filters, Searching Members, Member Buffers 990@node Switching to Tree, Filters, Searching Members, Member Buffers
972@comment node-name, next, previous, up 991@comment node-name, next, previous, up
973@section Switching to Tree Buffer 992@section Switching to Tree Buffer
974@cindex tree buffer 993@cindex tree buffer, switch to
975@cindex buffer switching 994@cindex buffer switching
976@cindex switching buffers 995@cindex switching buffers
977 996
@@ -991,37 +1010,38 @@ displayed in the member buffer.
991@comment node-name, next, previous, up 1010@comment node-name, next, previous, up
992@section Filters 1011@section Filters
993@cindex filters 1012@cindex filters
994@cindex @code{public}
995@cindex @code{protected}
996@cindex @code{private}
997@cindex @code{virtual}
998@cindex @code{inline}
999@cindex @code{const}
1000@cindex pure virtual members
1001 1013
1002@table @kbd 1014@table @kbd
1015@cindex @code{public} members
1003@item F a u 1016@item F a u
1004This command toggles the display of @code{public} members. The 1017This command toggles the display of @code{public} members. The
1005@samp{a} stands for `access'. 1018@samp{a} stands for `access'.
1006 1019
1020@cindex @code{protected} members
1007@item F a o 1021@item F a o
1008This command toggles the display of @code{protected} members. 1022This command toggles the display of @code{protected} members.
1009 1023
1024@cindex @code{private} members
1010@item F a i 1025@item F a i
1011This command toggles the display of @code{private} members. 1026This command toggles the display of @code{private} members.
1012 1027
1028@cindex @code{virtual} members
1013@item F v 1029@item F v
1014This command toggles the display of @code{virtual} members. 1030This command toggles the display of @code{virtual} members.
1015 1031
1032@cindex @code{inline} members
1016@item F i 1033@item F i
1017This command toggles the display of @code{inline} members. 1034This command toggles the display of @code{inline} members.
1018 1035
1036@cindex @code{const} members
1019@item F c 1037@item F c
1020This command toggles the display of @code{const} members. 1038This command toggles the display of @code{const} members.
1021 1039
1040@cindex pure virtual members
1022@item F p 1041@item F p
1023This command toggles the display of pure virtual members. 1042This command toggles the display of pure virtual members.
1024 1043
1044@cindex remove filters
1025@item F r 1045@item F r
1026This command removes all filters. 1046This command removes all filters.
1027@end table 1047@end table
@@ -1035,15 +1055,7 @@ These commands are also found in the buffer's context menu.
1035@comment node-name, next, previous, up 1055@comment node-name, next, previous, up
1036@section Displaying Member Attributes 1056@section Displaying Member Attributes
1037@cindex attributes 1057@cindex attributes
1038@cindex member attributes 1058@cindex member attribute display
1039@cindex @code{virtual}
1040@cindex @code{extern "C"}
1041@cindex @code{mutable}
1042@cindex @code{explicit}
1043@cindex @code{template}
1044@cindex @code{inline}
1045@cindex @code{const}
1046@cindex pure virtual
1047 1059
1048@table @kbd 1060@table @kbd
1049@item D a 1061@item D a
@@ -1055,27 +1067,35 @@ the of the member's name. A @samp{-} at a given position means that
1055the attribute is false. The list of attributes from left to right is 1067the attribute is false. The list of attributes from left to right is
1056 1068
1057@table @samp 1069@table @samp
1070@cindex @code{template} attribute
1058@item T 1071@item T
1059The member is a template. 1072The member is a template.
1060 1073
1074@cindex @code{extern "C"} attribute
1061@item C 1075@item C
1062The member is declared @code{extern "C"}. 1076The member is declared @code{extern "C"}.
1063 1077
1078@cindex @code{virtual} attribute
1064@item v 1079@item v
1065Means the member is declared @code{virtual}. 1080Means the member is declared @code{virtual}.
1066 1081
1082@cindex @code{inline}
1067@item i 1083@item i
1068The member is declared @code{inline}. 1084The member is declared @code{inline}.
1069 1085
1086@cindex @code{const} attribute
1070@item c 1087@item c
1071The member is @code{const}. 1088The member is @code{const}.
1072 1089
1090@cindex pure virtual function attribute
1073@item 0 1091@item 0
1074The member is a pure virtual function. 1092The member is a pure virtual function.
1075 1093
1094@cindex @code{mutable} attribute
1076@item m 1095@item m
1077The member is declared @code{mutable}. 1096The member is declared @code{mutable}.
1078 1097
1098@cindex @code{explicit} attribute
1079@item e 1099@item e
1080The member is declared @code{explicit}. 1100The member is declared @code{explicit}.
1081 1101
@@ -1094,7 +1114,6 @@ This command is also in the buffer's context menu.
1094@cindex display form 1114@cindex display form
1095@cindex long display 1115@cindex long display
1096@cindex short display 1116@cindex short display
1097@cindex @samp{--no-regexps}
1098 1117
1099@table @kbd 1118@table @kbd
1100@item D l 1119@item D l
@@ -1117,7 +1136,8 @@ expressions matching the member (if known):
1117@end example 1136@end example
1118 1137
1119Regular expressions will only be displayed when the Lisp database has 1138Regular expressions will only be displayed when the Lisp database has
1120not been produced with the @file{ebrowse} option @samp{--no-regexps}. 1139not been produced with the @command{ebrowse} option @samp{--no-regexps}.
1140@xref{Matching, --no-regexps, Regular Expressions}.
1121@end table 1141@end table
1122 1142
1123 1143
@@ -1136,7 +1156,8 @@ matching member definitions.
1136@end table 1156@end table
1137 1157
1138Regular expressions will only be displayed when the Lisp database has 1158Regular expressions will only be displayed when the Lisp database has
1139not been produced with the @file{ebrowse} option @samp{--no-regexps}. 1159not been produced with the @command{ebrowse} option @samp{--no-regexps},
1160see @ref{Matching, --no-regexps, Regular Expressions}.
1140 1161
1141 1162
1142 1163
@@ -1144,10 +1165,10 @@ not been produced with the @file{ebrowse} option @samp{--no-regexps}.
1144@node Switching Classes, Killing/Burying, Regexp Display, Member Buffers 1165@node Switching Classes, Killing/Burying, Regexp Display, Member Buffers
1145@comment node-name, next, previous, up 1166@comment node-name, next, previous, up
1146@section Displaying Another Class 1167@section Displaying Another Class
1147@cindex base classes 1168@cindex base class, display
1148@cindex derived classes 1169@cindex derived class, display
1149@cindex superclasses 1170@cindex superclass, display
1150@cindex subclasses 1171@cindex subclass, display
1151@cindex class display 1172@cindex class display
1152 1173
1153@table @kbd 1174@table @kbd
@@ -1206,7 +1227,7 @@ This command sets the column width depending on the display form used
1206@node Redisplay, Getting Help, Column Width, Member Buffers 1227@node Redisplay, Getting Help, Column Width, Member Buffers
1207@comment node-name, next, previous, up 1228@comment node-name, next, previous, up
1208@section Forced Redisplay 1229@section Forced Redisplay
1209@cindex redisplay 1230@cindex redisplay of member buffers
1210 1231
1211@table @kbd 1232@table @kbd
1212@item C-l 1233@item C-l
@@ -1258,11 +1279,16 @@ Emacs Tags facility, but better suited to the needs of C++ programmers.
1258@node Finding and Viewing, Position Stack, Tags-like Functions, Tags-like Functions 1279@node Finding and Viewing, Position Stack, Tags-like Functions, Tags-like Functions
1259@comment node-name, next, previous, up 1280@comment node-name, next, previous, up
1260@section Finding and Viewing Members 1281@section Finding and Viewing Members
1261@cindex finding member 1282@cindex finding class member, in C++ source
1262@cindex viewing member 1283@cindex viewing class member, in C++ source
1263@cindex tags 1284@cindex tags
1264@cindex member definition 1285@cindex member definition, finding, in C++ source
1265@cindex member declaration 1286@cindex member declaration, finding, in C++ source
1287
1288The functions in this section are similar to those described in
1289@ref{Source Display}, and also in @ref{Finding/Viewing}, except that
1290they work in a C++ source buffer, not in member and tree buffers created
1291by Ebrowse.
1266 1292
1267@table @kbd 1293@table @kbd
1268@item C-c b f 1294@item C-c b f
@@ -1275,7 +1301,7 @@ front of the member name, this class name is used as initial input for
1275the completion. 1301the completion.
1276 1302
1277@item C-c b F 1303@item C-c b F
1278Fin the declaration of the member around point. 1304Find the declaration of the member around point.
1279 1305
1280@item C-c b v 1306@item C-c b v
1281View the definition of the member around point. 1307View the definition of the member around point.
@@ -1322,6 +1348,7 @@ jump and the position where you jumped to are recorded in a
1322move to positions in the stack:@refill 1348move to positions in the stack:@refill
1323 1349
1324@table @kbd 1350@table @kbd
1351@cindex return to original position
1325@item C-c b - 1352@item C-c b -
1326This command sets point to the previous position in the position stack. 1353This command sets point to the previous position in the position stack.
1327Directly after you performed a jump, this will put you back to the 1354Directly after you performed a jump, this will put you back to the
@@ -1346,11 +1373,11 @@ view a position with @kbd{v}.
1346 1373
1347 1374
1348 1375
1349@node Search & Replace, Members in Files, Position Stack, Tags-like Functions 1376@node Search & Replace, Members in Files, Position Stack, Tags-like Functions
1350@comment node-name, next, previous, up 1377@comment node-name, next, previous, up
1351@section Searching and Replacing 1378@section Searching and Replacing
1352@cindex searching 1379@cindex searching multiple C++ files
1353@cindex replacing 1380@cindex replacing in multiple C++ files
1354@cindex restart tags-operation 1381@cindex restart tags-operation
1355 1382
1356Ebrowse allows you to perform operations on all or a subset of the files 1383Ebrowse allows you to perform operations on all or a subset of the files
@@ -1388,7 +1415,8 @@ This restarts the last tags operation with the next file in the list.
1388@comment node-name, next, previous, up 1415@comment node-name, next, previous, up
1389@section Members in Files 1416@section Members in Files
1390@cindex files 1417@cindex files
1391@cindex members in file 1418@cindex members in file, listing
1419@cindex list class members in a file
1392@cindex file, members 1420@cindex file, members
1393 1421
1394The command @kbd{C-c b l}, lists all members in a given file. The file 1422The command @kbd{C-c b l}, lists all members in a given file. The file
@@ -1400,7 +1428,7 @@ name is read from the minibuffer with completion.
1400@node Apropos, Symbol Completion, Members in Files, Tags-like Functions 1428@node Apropos, Symbol Completion, Members in Files, Tags-like Functions
1401@comment node-name, next, previous, up 1429@comment node-name, next, previous, up
1402@section Member Apropos 1430@section Member Apropos
1403@cindex apropos 1431@cindex apropos on class members
1404@cindex members, matching regexp 1432@cindex members, matching regexp
1405 1433
1406The command @kbd{C-c b a} can be used to display all members matching a 1434The command @kbd{C-c b a} can be used to display all members matching a
@@ -1428,7 +1456,7 @@ The command @kbd{C-c b TAB} completes the symbol in front of point.
1428 1456
1429@node Member Buffer Display, , Symbol Completion, Tags-like Functions 1457@node Member Buffer Display, , Symbol Completion, Tags-like Functions
1430@section Quick Member Display 1458@section Quick Member Display
1431@cindex member buffer 1459@cindex member buffer, for member at point
1432 1460
1433You can quickly display a member buffer containing the member the cursor 1461You can quickly display a member buffer containing the member the cursor
1434in on with the command @kbd{C-c b m}. 1462in on with the command @kbd{C-c b m}.
diff --git a/man/ediff.texi b/man/ediff.texi
index 8547b3fb72a..d0832ec68f5 100644
--- a/man/ediff.texi
+++ b/man/ediff.texi
@@ -114,7 +114,7 @@ you don't like).
114Ediff even understands multi-file patches and can apply them interactively! 114Ediff even understands multi-file patches and can apply them interactively!
115(Ediff can recognize multi-file patches only if they are in the context 115(Ediff can recognize multi-file patches only if they are in the context
116format or GNU unified format. All other patches are treated as 1-file 116format or GNU unified format. All other patches are treated as 1-file
117patches. Ediff is [hopefully] using the same algorithm as @file{patch} to 117patches. Ediff is [hopefully] using the same algorithm as @command{patch} to
118determine which files need to be patched.) 118determine which files need to be patched.)
119 119
120Ediff is aware of version control, which lets you compare 120Ediff is aware of version control, which lets you compare
@@ -222,7 +222,7 @@ the case. To avoid this extra prompt, you can invoke this command with a
222prefix argument. With an odd prefix argument, Ediff assumes the patch 222prefix argument. With an odd prefix argument, Ediff assumes the patch
223is in a file; with an even argument, a buffer is assumed. 223is in a file; with an even argument, a buffer is assumed.
224 224
225Note that @code{ediff-patch-file} will actually use the @file{patch} 225Note that @code{ediff-patch-file} will actually use the @command{patch}
226utility to change the the original files on disk. This is not that 226utility to change the the original files on disk. This is not that
227dangerous, since you will always have the original contents of the file 227dangerous, since you will always have the original contents of the file
228saved in another file that has the extension @file{.orig}. 228saved in another file that has the extension @file{.orig}.
@@ -249,7 +249,7 @@ appears in some other buffer that has the name ending with @emph{_patched}.
249 249
250This function would refuse to apply a multifile patch to a buffer. Use 250This function would refuse to apply a multifile patch to a buffer. Use
251@code{ediff-patch-file} for that (and when you want the original file to be 251@code{ediff-patch-file} for that (and when you want the original file to be
252modified by the @file{patch} utility). 252modified by the @command{patch} utility).
253 253
254Since the patch might be in a buffer or a file, you will be asked which is 254Since the patch might be in a buffer or a file, you will be asked which is
255the case. To avoid this extra prompt, you can invoke this command with a 255the case. To avoid this extra prompt, you can invoke this command with a
@@ -340,7 +340,7 @@ the VMS version of @code{diff}.
340 340
341The functions @code{ediff-files}, @code{ediff-buffers}, 341The functions @code{ediff-files}, @code{ediff-buffers},
342@code{ediff-files3}, @code{ediff-buffers3} first display the coarse, 342@code{ediff-files3}, @code{ediff-buffers3} first display the coarse,
343line-based difference regions, as reported by the @file{diff} program. The 343line-based difference regions, as reported by the @command{diff} program. The
344total number of difference regions and the current difference number are 344total number of difference regions and the current difference number are
345always displayed in the mode line of the control window. 345always displayed in the mode line of the control window.
346 346
@@ -446,9 +446,9 @@ Scrolls buffers to the right.
446@item wd 446@item wd
447Saves the output from the diff utility, for further reference. 447Saves the output from the diff utility, for further reference.
448 448
449With prefix argument, saves the plain output from @file{diff} (see 449With prefix argument, saves the plain output from @command{diff} (see
450@code{ediff-diff-program} and @code{ediff-diff-options}). Without the 450@code{ediff-diff-program} and @code{ediff-diff-options}). Without the
451argument, it saves customized @file{diff} output (see 451argument, it saves customized @command{diff} output (see
452@code{ediff-custom-diff-program} and @code{ediff-custom-diff-options}), if 452@code{ediff-custom-diff-program} and @code{ediff-custom-diff-options}), if
453it is available. 453it is available.
454 454
@@ -669,7 +669,7 @@ Runs @code{ediff-custom-diff-program} on the variants and displays the
669buffer containing the output. This is useful when you must send the output 669buffer containing the output. This is useful when you must send the output
670to your Mom. 670to your Mom.
671 671
672With a prefix argument, displays the plain @file{diff} output. 672With a prefix argument, displays the plain @command{diff} output.
673@xref{Patch and Diff Programs}, for details. 673@xref{Patch and Diff Programs}, for details.
674 674
675@item R 675@item R
@@ -980,7 +980,7 @@ change this variable.
980 980
981@cindex Multi-file patches 981@cindex Multi-file patches
982A multi-file patch is a concatenated output of several runs of the Unix 982A multi-file patch is a concatenated output of several runs of the Unix
983@file{diff} command (some versions of @file{diff} let you create a 983@command{diff} command (some versions of @command{diff} let you create a
984multi-file patch in just one run). Ediff facilitates creation of 984multi-file patch in just one run). Ediff facilitates creation of
985multi-file patches as follows. If you are in a session group buffer 985multi-file patches as follows. If you are in a session group buffer
986created in response to @code{ediff-directories} or 986created in response to @code{ediff-directories} or
@@ -988,7 +988,7 @@ created in response to @code{ediff-directories} or
988desired Ediff sessions and then type @kbd{P} to create a 988desired Ediff sessions and then type @kbd{P} to create a
989multi-file patch of those marked sessions. 989multi-file patch of those marked sessions.
990Ediff will then display a buffer containing the patch. 990Ediff will then display a buffer containing the patch.
991The patch is generated by invoking @file{diff} on all marked individual 991The patch is generated by invoking @command{diff} on all marked individual
992sessions (represented by files) and session groups (represented by 992sessions (represented by files) and session groups (represented by
993directories). Ediff will also recursively descend into any @emph{unmarked} 993directories). Ediff will also recursively descend into any @emph{unmarked}
994session group and will search for marked sessions there. In this way, you 994session group and will search for marked sessions there. In this way, you
@@ -1762,7 +1762,7 @@ output from @code{diff} in your preferred format, which is specified via
1762the above two variables. 1762the above two variables.
1763 1763
1764The output generated by @code{ediff-custom-diff-program} (which doesn't 1764The output generated by @code{ediff-custom-diff-program} (which doesn't
1765even have to be a standard-style @file{diff}!)@: is not used by Ediff. It is 1765even have to be a standard-style @command{diff}!)@: is not used by Ediff. It is
1766provided exclusively so that you can 1766provided exclusively so that you can
1767refer to 1767refer to
1768it later, send it over email, etc. For instance, after reviewing the 1768it later, send it over email, etc. For instance, after reviewing the
diff --git a/man/entering.texi b/man/entering.texi
index 3835b47f376..384cfb5a7a3 100644
--- a/man/entering.texi
+++ b/man/entering.texi
@@ -6,7 +6,7 @@
6@cindex entering Emacs 6@cindex entering Emacs
7@cindex starting Emacs 7@cindex starting Emacs
8 8
9 The usual way to invoke Emacs is with the shell command @samp{emacs}. 9 The usual way to invoke Emacs is with the shell command @command{emacs}.
10Emacs clears the screen and then displays an initial help message and 10Emacs clears the screen and then displays an initial help message and
11copyright notice. Some operating systems discard all type-ahead when 11copyright notice. Some operating systems discard all type-ahead when
12Emacs starts up; they give Emacs no way to prevent this. Therefore, it 12Emacs starts up; they give Emacs no way to prevent this. Therefore, it
@@ -14,7 +14,7 @@ is advisable to wait until Emacs clears the screen before typing your
14first editing command. 14first editing command.
15 15
16 If you run Emacs from a shell window under the X Window System, run it 16 If you run Emacs from a shell window under the X Window System, run it
17in the background with @samp{emacs&}. This way, Emacs does not tie up 17in the background with @command{emacs&}. This way, Emacs does not tie up
18the shell window, so you can use that to run other shell commands while 18the shell window, so you can use that to run other shell commands while
19Emacs operates its own X windows. You can begin typing Emacs commands 19Emacs operates its own X windows. You can begin typing Emacs commands
20as soon as you direct your keyboard input to the Emacs frame. 20as soon as you direct your keyboard input to the Emacs frame.
@@ -86,12 +86,12 @@ Kill Emacs (@code{save-buffers-kill-emacs}).
86@findex suspend-emacs 86@findex suspend-emacs
87 To suspend Emacs, type @kbd{C-z} (@code{suspend-emacs}). This takes 87 To suspend Emacs, type @kbd{C-z} (@code{suspend-emacs}). This takes
88you back to the shell from which you invoked Emacs. You can resume 88you back to the shell from which you invoked Emacs. You can resume
89Emacs with the shell command @samp{%emacs} in most common shells. 89Emacs with the shell command @command{%emacs} in most common shells.
90 90
91 On systems that do not support suspending programs, @kbd{C-z} starts 91 On systems that do not support suspending programs, @kbd{C-z} starts
92an inferior shell that communicates directly with the terminal. 92an inferior shell that communicates directly with the terminal.
93Emacs waits until you exit the subshell. (The way to do that is 93Emacs waits until you exit the subshell. (The way to do that is
94probably with @kbd{C-d} or @samp{exit}, but it depends on which shell 94probably with @kbd{C-d} or @command{exit}, but it depends on which shell
95you use.) The only way on these systems to get back to the shell from 95you use.) The only way on these systems to get back to the shell from
96which Emacs was run (to log out, for example) is to kill Emacs. 96which Emacs was run (to log out, for example) is to kill Emacs.
97 97
diff --git a/man/files.texi b/man/files.texi
index 4fbaabc989c..ce4d37fe538 100644
--- a/man/files.texi
+++ b/man/files.texi
@@ -98,7 +98,7 @@ first slash in the double slash; the result is @samp{/x1/rms/foo}.
98 98
99 @samp{$} in a file name is used to substitute environment variables. 99 @samp{$} in a file name is used to substitute environment variables.
100For example, if you have used the shell command @samp{export 100For example, if you have used the shell command @samp{export
101FOO=rms/hacks} to set up an environment variable named @code{FOO}, then 101FOO=rms/hacks} to set up an environment variable named @env{FOO}, then
102you can use @file{/u/$FOO/test.c} or @file{/u/$@{FOO@}/test.c} as an 102you can use @file{/u/$FOO/test.c} or @file{/u/$@{FOO@}/test.c} as an
103abbreviation for @file{/u/rms/hacks/test.c}. The environment variable 103abbreviation for @file{/u/rms/hacks/test.c}. The environment variable
104name consists of all the alphanumeric characters after the @samp{$}; 104name consists of all the alphanumeric characters after the @samp{$};
@@ -543,8 +543,8 @@ control the making of backups for that buffer's file. For example,
543Rmail mode locally sets @code{version-control} to @code{never} to make sure 543Rmail mode locally sets @code{version-control} to @code{never} to make sure
544that there is only one backup for an Rmail file. @xref{Locals}. 544that there is only one backup for an Rmail file. @xref{Locals}.
545 545
546@cindex @code{VERSION_CONTROL} environment variable 546@cindex @env{VERSION_CONTROL} environment variable
547 If you set the environment variable @code{VERSION_CONTROL}, to tell 547 If you set the environment variable @env{VERSION_CONTROL}, to tell
548various GNU utilities what to do with backup files, Emacs also obeys the 548various GNU utilities what to do with backup files, Emacs also obeys the
549environment variable by setting the Lisp variable @code{version-control} 549environment variable by setting the Lisp variable @code{version-control}
550accordingly at startup. If the environment variable's value is @samp{t} 550accordingly at startup. If the environment variable's value is @samp{t}
@@ -2079,13 +2079,13 @@ file at any time. However, there are ways to restrict this, resulting
2079in behavior that resembles locking. 2079in behavior that resembles locking.
2080 2080
2081@cindex CVSREAD environment variable (CVS) 2081@cindex CVSREAD environment variable (CVS)
2082 For one thing, you can set the @code{CVSREAD} environment variable to 2082 For one thing, you can set the @env{CVSREAD} environment variable to
2083an arbitrary value. If this variable is defined, CVS makes your work 2083an arbitrary value. If this variable is defined, CVS makes your work
2084files read-only by default. In Emacs, you must type @kbd{C-x C-q} to 2084files read-only by default. In Emacs, you must type @kbd{C-x C-q} to
2085make the file writeable, so that editing works in fact similar as if 2085make the file writeable, so that editing works in fact similar as if
2086locking was used. Note however, that no actual locking is performed, so 2086locking was used. Note however, that no actual locking is performed, so
2087several users can make their files writeable at the same time. When 2087several users can make their files writeable at the same time. When
2088setting @code{CVSREAD} for the first time, make sure to check out all 2088setting @env{CVSREAD} for the first time, make sure to check out all
2089your modules anew, so that the file protections are set correctly. 2089your modules anew, so that the file protections are set correctly.
2090 2090
2091@cindex cvs watch feature 2091@cindex cvs watch feature
diff --git a/man/frames.texi b/man/frames.texi
index 4421318cd6b..a2d03e35b45 100644
--- a/man/frames.texi
+++ b/man/frames.texi
@@ -443,7 +443,7 @@ speedbar for it.
443 443
444 A single Emacs can talk to more than one X Windows display. 444 A single Emacs can talk to more than one X Windows display.
445Initially, Emacs uses just one display---the one specified with the 445Initially, Emacs uses just one display---the one specified with the
446@code{DISPLAY} environment variable or with the @samp{--display} option 446@env{DISPLAY} environment variable or with the @samp{--display} option
447(@pxref{Initial Options}). To connect to another display, use the 447(@pxref{Initial Options}). To connect to another display, use the
448command @code{make-frame-on-display}: 448command @code{make-frame-on-display}:
449 449
diff --git a/man/misc.texi b/man/misc.texi
index 87d72d9f040..bc9a913629d 100644
--- a/man/misc.texi
+++ b/man/misc.texi
@@ -370,11 +370,11 @@ returns the command's exit status when it is called from a Lisp program.
370@vindex shell-file-name 370@vindex shell-file-name
371@cindex environment 371@cindex environment
372 Both @kbd{M-!} and @kbd{M-|} use @code{shell-file-name} to specify the 372 Both @kbd{M-!} and @kbd{M-|} use @code{shell-file-name} to specify the
373shell to use. This variable is initialized based on your @code{SHELL} 373shell to use. This variable is initialized based on your @env{SHELL}
374environment variable when Emacs is started. If the file name does not 374environment variable when Emacs is started. If the file name does not
375specify a directory, the directories in the list @code{exec-path} are 375specify a directory, the directories in the list @code{exec-path} are
376searched; this list is initialized based on the environment variable 376searched; this list is initialized based on the environment variable
377@code{PATH} when Emacs is started. Your @file{.emacs} file can override 377@env{PATH} when Emacs is started. Your @file{.emacs} file can override
378either or both of these default initializations.@refill 378either or both of these default initializations.@refill
379 379
380 Both @kbd{M-!} and @kbd{M-|} wait for the shell command to complete. 380 Both @kbd{M-!} and @kbd{M-|} wait for the shell command to complete.
@@ -419,15 +419,15 @@ subshell. If you rename this buffer as well, you can create a third
419one, and so on. All the subshells run independently and in parallel. 419one, and so on. All the subshells run independently and in parallel.
420 420
421@vindex explicit-shell-file-name 421@vindex explicit-shell-file-name
422@cindex @code{ESHELL} environment variable 422@cindex @env{ESHELL} environment variable
423@cindex @code{SHELL} environment variable 423@cindex @env{SHELL} environment variable
424 The file name used to load the subshell is the value of the variable 424 The file name used to load the subshell is the value of the variable
425@code{explicit-shell-file-name}, if that is non-@code{nil}. Otherwise, 425@code{explicit-shell-file-name}, if that is non-@code{nil}. Otherwise,
426the environment variable @code{ESHELL} is used, or the environment 426the environment variable @env{ESHELL} is used, or the environment
427variable @code{SHELL} if there is no @code{ESHELL}. If the file name 427variable @env{SHELL} if there is no @env{ESHELL}. If the file name
428specified is relative, the directories in the list @code{exec-path} are 428specified is relative, the directories in the list @code{exec-path} are
429searched; this list is initialized based on the environment variable 429searched; this list is initialized based on the environment variable
430@code{PATH} when Emacs is started. Your @file{.emacs} file can override 430@env{PATH} when Emacs is started. Your @file{.emacs} file can override
431either or both of these default initializations. 431either or both of these default initializations.
432 432
433 To specify a coding system for the shell, you can use the command 433 To specify a coding system for the shell, you can use the command
@@ -473,7 +473,7 @@ most common command syntax; it may not work for unusual shells.
473alternative and more aggressive method of tracking changes in the 473alternative and more aggressive method of tracking changes in the
474current directory. 474current directory.
475 475
476 Emacs defines the environment variable @code{EMACS} in the subshell, 476 Emacs defines the environment variable @env{EMACS} in the subshell,
477with value @code{t}. A shell script can check this variable to 477with value @code{t}. A shell script can check this variable to
478determine whether it has been run from an Emacs subshell. 478determine whether it has been run from an Emacs subshell.
479 479
@@ -1032,7 +1032,7 @@ type of terminal your using. Terminal types @samp{ansi}
1032or @samp{vt100} will work on most systems. 1032or @samp{vt100} will work on most systems.
1033 1033
1034@c If you are talking to a Bourne-compatible 1034@c If you are talking to a Bourne-compatible
1035@c shell, and your system understands the @code{TERMCAP} variable, 1035@c shell, and your system understands the @env{TERMCAP} variable,
1036@c you can use the command @kbd{M-x shell-send-termcap}, which 1036@c you can use the command @kbd{M-x shell-send-termcap}, which
1037@c sends a string specifying the terminal type and size. 1037@c sends a string specifying the terminal type and size.
1038@c (This command is also useful after the window has changed size.) 1038@c (This command is also useful after the window has changed size.)
@@ -1096,13 +1096,13 @@ off directory tracking.
1096@pindex emacsclient 1096@pindex emacsclient
1097@cindex Emacs as a server 1097@cindex Emacs as a server
1098@cindex server, using Emacs as 1098@cindex server, using Emacs as
1099@cindex @code{EDITOR} environment variable 1099@cindex @env{EDITOR} environment variable
1100 1100
1101 Various programs such as @code{mail} can invoke your choice of editor 1101 Various programs such as @code{mail} can invoke your choice of editor
1102to edit a particular piece of text, such as a message that you are 1102to edit a particular piece of text, such as a message that you are
1103sending. By convention, most of these programs use the environment 1103sending. By convention, most of these programs use the environment
1104variable @code{EDITOR} to specify which editor to run. If you set 1104variable @env{EDITOR} to specify which editor to run. If you set
1105@code{EDITOR} to @samp{emacs}, they invoke Emacs---but in an 1105@env{EDITOR} to @samp{emacs}, they invoke Emacs---but in an
1106inconvenient fashion, by starting a new, separate Emacs process. This 1106inconvenient fashion, by starting a new, separate Emacs process. This
1107is inconvenient because it takes time and because the new Emacs process 1107is inconvenient because it takes time and because the new Emacs process
1108doesn't share the buffers in the existing Emacs process. 1108doesn't share the buffers in the existing Emacs process.
@@ -1111,18 +1111,18 @@ doesn't share the buffers in the existing Emacs process.
1111programs like @code{mail} by using the Emacs client and Emacs server 1111programs like @code{mail} by using the Emacs client and Emacs server
1112programs. Here is how. 1112programs. Here is how.
1113 1113
1114@cindex @code{TEXEDIT} environment variable 1114@cindex @env{TEXEDIT} environment variable
1115 First, the preparation. Within Emacs, call the function 1115 First, the preparation. Within Emacs, call the function
1116@code{server-start}. (Your @file{.emacs} file can do this automatically 1116@code{server-start}. (Your @file{.emacs} file can do this automatically
1117if you add the expression @code{(server-start)} to it.) Then, outside 1117if you add the expression @code{(server-start)} to it.) Then, outside
1118Emacs, set the @code{EDITOR} environment variable to @samp{emacsclient}. 1118Emacs, set the @env{EDITOR} environment variable to @samp{emacsclient}.
1119(Note that some programs use a different environment variable; for 1119(Note that some programs use a different environment variable; for
1120example, to make @TeX{} use @samp{emacsclient}, you should set the 1120example, to make @TeX{} use @samp{emacsclient}, you should set the
1121@code{TEXEDIT} environment variable to @samp{emacsclient +%d %s}.) 1121@env{TEXEDIT} environment variable to @samp{emacsclient +%d %s}.)
1122 1122
1123@kindex C-x # 1123@kindex C-x #
1124@findex server-edit 1124@findex server-edit
1125 Then, whenever any program invokes your specified @code{EDITOR} 1125 Then, whenever any program invokes your specified @env{EDITOR}
1126program, the effect is to send a message to your principal Emacs telling 1126program, the effect is to send a message to your principal Emacs telling
1127it to visit a file. (That's what the program @code{emacsclient} does.) 1127it to visit a file. (That's what the program @code{emacsclient} does.)
1128Emacs displays the buffer immediately and you can immediately begin 1128Emacs displays the buffer immediately and you can immediately begin
@@ -1131,7 +1131,7 @@ editing it.
1131 When you've finished editing that buffer, type @kbd{C-x #} 1131 When you've finished editing that buffer, type @kbd{C-x #}
1132(@code{server-edit}). This saves the file and sends a message back to 1132(@code{server-edit}). This saves the file and sends a message back to
1133the @code{emacsclient} program telling it to exit. The programs that 1133the @code{emacsclient} program telling it to exit. The programs that
1134use @code{EDITOR} wait for the ``editor'' (actually, @code{emacsclient}) 1134use @env{EDITOR} wait for the ``editor'' (actually, @code{emacsclient})
1135to exit. @kbd{C-x #} also checks for other pending external requests 1135to exit. @kbd{C-x #} also checks for other pending external requests
1136to edit various files, and selects the next such file. 1136to edit various files, and selects the next such file.
1137 1137
diff --git a/man/msdog.texi b/man/msdog.texi
index 1c8747b1085..a584a2e796d 100644
--- a/man/msdog.texi
+++ b/man/msdog.texi
@@ -249,20 +249,20 @@ example, the name of a backup file for @file{docs.txt} is
249turn on support for long file names. If you do that, Emacs doesn't 249turn on support for long file names. If you do that, Emacs doesn't
250truncate file names or convert them to lower case; instead, it uses the 250truncate file names or convert them to lower case; instead, it uses the
251file names that you specify, verbatim. To enable long file name 251file names that you specify, verbatim. To enable long file name
252support, set the environment variable @code{LFN} to @samp{y} before 252support, set the environment variable @env{LFN} to @samp{y} before
253starting Emacs. Unfortunately, Windows NT doesn't allow DOS programs to 253starting Emacs. Unfortunately, Windows NT doesn't allow DOS programs to
254access long file names, so Emacs built for MS-DOS will only see their 254access long file names, so Emacs built for MS-DOS will only see their
255short 8+3 aliases. 255short 8+3 aliases.
256 256
257@cindex @code{HOME} directory under MS-DOS 257@cindex @env{HOME} directory under MS-DOS
258 MS-DOS has no notion of home directory, so Emacs on MS-DOS pretends 258 MS-DOS has no notion of home directory, so Emacs on MS-DOS pretends
259that the directory where it is installed is the value of @code{HOME} 259that the directory where it is installed is the value of @env{HOME}
260environment variable. That is, if your Emacs binary, 260environment variable. That is, if your Emacs binary,
261@file{emacs.exe}, is in the directory @file{c:/utils/emacs/bin}, then 261@file{emacs.exe}, is in the directory @file{c:/utils/emacs/bin}, then
262Emacs acts as if @code{HOME} were set to @samp{c:/utils/emacs}. In 262Emacs acts as if @env{HOME} were set to @samp{c:/utils/emacs}. In
263particular, that is where Emacs looks for the init file @file{_emacs}. 263particular, that is where Emacs looks for the init file @file{_emacs}.
264With this in mind, you can use @samp{~} in file names as an alias for 264With this in mind, you can use @samp{~} in file names as an alias for
265the home directory, as you would in Unix. You can also set @code{HOME} 265the home directory, as you would in Unix. You can also set @env{HOME}
266variable in the environment before starting Emacs; its value will then 266variable in the environment before starting Emacs; its value will then
267override the above default behavior. 267override the above default behavior.
268 268
diff --git a/man/mule.texi b/man/mule.texi
index 7f78888a72b..b16d4802ecd 100644
--- a/man/mule.texi
+++ b/man/mule.texi
@@ -111,7 +111,7 @@ conversion, uncompression and auto mode selection as
111@vindex default-enable-multibyte-characters 111@vindex default-enable-multibyte-characters
112 To turn off multibyte character support by default, start Emacs with 112 To turn off multibyte character support by default, start Emacs with
113the @samp{--unibyte} option (@pxref{Initial Options}), or set the 113the @samp{--unibyte} option (@pxref{Initial Options}), or set the
114environment variable @samp{EMACS_UNIBYTE}. You can also customize 114environment variable @env{EMACS_UNIBYTE}. You can also customize
115@code{enable-multibyte-characters} or, equivalently, directly set the 115@code{enable-multibyte-characters} or, equivalently, directly set the
116variable @code{default-enable-multibyte-characters} in your init file to 116variable @code{default-enable-multibyte-characters} in your init file to
117have basically the same effect as @samp{--unibyte}. 117have basically the same effect as @samp{--unibyte}.
diff --git a/man/programs.texi b/man/programs.texi
index febed8f4f64..6b2b89e3f94 100644
--- a/man/programs.texi
+++ b/man/programs.texi
@@ -1806,7 +1806,7 @@ In La@TeX{} text, the argument of any of the commands @code{\chapter},
1806tag.@refill 1806tag.@refill
1807 1807
1808Other commands can make tags as well, if you specify them in the 1808Other commands can make tags as well, if you specify them in the
1809environment variable @code{TEXTAGS} before invoking @code{etags}. The 1809environment variable @env{TEXTAGS} before invoking @code{etags}. The
1810value of this environment variable should be a colon-separated list of 1810value of this environment variable should be a colon-separated list of
1811command names. For example, 1811command names. For example,
1812 1812
diff --git a/man/rmail.texi b/man/rmail.texi
index 12a3d494024..0376ef93a6a 100644
--- a/man/rmail.texi
+++ b/man/rmail.texi
@@ -302,10 +302,10 @@ mail with Rmail. This operation is called @dfn{getting new mail}. You
302can get new mail at any time in Rmail by typing @kbd{g}. 302can get new mail at any time in Rmail by typing @kbd{g}.
303 303
304@vindex rmail-primary-inbox-list 304@vindex rmail-primary-inbox-list
305@cindex @code{MAIL} environment variable 305@cindex @env{MAIL} environment variable
306 The variable @code{rmail-primary-inbox-list} contains a list of the 306 The variable @code{rmail-primary-inbox-list} contains a list of the
307files which are inboxes for your primary Rmail file. If you don't set 307files which are inboxes for your primary Rmail file. If you don't set
308this variable explicitly, it is initialized from the @code{MAIL} 308this variable explicitly, it is initialized from the @env{MAIL}
309environment variable, or, as a last resort, set to @code{nil}, which 309environment variable, or, as a last resort, set to @code{nil}, which
310means to use the default inbox. The default inbox is 310means to use the default inbox. The default inbox is
311@file{/var/mail/@var{username}}, @file{/usr/spool/mail/@var{username}}, 311@file{/var/mail/@var{username}}, @file{/usr/spool/mail/@var{username}},
@@ -1122,13 +1122,13 @@ with POP if you compile it with the macro @code{MAIL_USE_POP} defined.
1122@code{movemail} only works with POP3, not with older 1122@code{movemail} only works with POP3, not with older
1123versions of POP. 1123versions of POP.
1124 1124
1125@cindex @code{MAILHOST} environment variable 1125@cindex @env{MAILHOST} environment variable
1126@cindex POP inboxes 1126@cindex POP inboxes
1127 Assuming you have compiled and installed @code{movemail} 1127 Assuming you have compiled and installed @code{movemail}
1128appropriately, you can specify a POP inbox by using a ``file name'' of 1128appropriately, you can specify a POP inbox by using a ``file name'' of
1129the form @samp{po:@var{username}}, in the inbox list of an Rmail file. 1129the form @samp{po:@var{username}}, in the inbox list of an Rmail file.
1130@code{movemail} handles such a name by opening a connection to the POP 1130@code{movemail} handles such a name by opening a connection to the POP
1131server. The @code{MAILHOST} environment variable specifies the machine 1131server. The @env{MAILHOST} environment variable specifies the machine
1132to look for the server on; alternatively, you can specify the POP server 1132to look for the server on; alternatively, you can specify the POP server
1133host name as part of the mailbox name using the syntax 1133host name as part of the mailbox name using the syntax
1134@samp{po:@var{username}:@var{hostname}}. 1134@samp{po:@var{username}:@var{hostname}}.
diff --git a/man/sending.texi b/man/sending.texi
index bbaf83db65d..eecf8ba1274 100644
--- a/man/sending.texi
+++ b/man/sending.texi
@@ -171,14 +171,14 @@ the @samp{Reply-to} address in preference to the @samp{From} address.
171By adding a @samp{Reply-to} field to your header, you can work around 171By adding a @samp{Reply-to} field to your header, you can work around
172any problems your @samp{From} address may cause for replies. 172any problems your @samp{From} address may cause for replies.
173 173
174@cindex @code{REPLYTO} environment variable 174@cindex @env{REPLYTO} environment variable
175@vindex mail-default-reply-to 175@vindex mail-default-reply-to
176To put a fixed @samp{Reply-to} address into every outgoing message, set 176To put a fixed @samp{Reply-to} address into every outgoing message, set
177the variable @code{mail-default-reply-to} to that address (as a string). 177the variable @code{mail-default-reply-to} to that address (as a string).
178Then @code{mail} initializes the message with a @samp{Reply-to} field as 178Then @code{mail} initializes the message with a @samp{Reply-to} field as
179specified. You can delete or alter that header field before you send 179specified. You can delete or alter that header field before you send
180the message, if you wish. When Emacs starts up, if the environment 180the message, if you wish. When Emacs starts up, if the environment
181variable @code{REPLYTO} is set, @code{mail-default-reply-to} is 181variable @env{REPLYTO} is set, @code{mail-default-reply-to} is
182initialized from that environment variable. 182initialized from that environment variable.
183 183
184@item In-reply-to 184@item In-reply-to
diff --git a/man/text.texi b/man/text.texi
index b0cc13e3997..c9bde2550fb 100644
--- a/man/text.texi
+++ b/man/text.texi
@@ -1440,11 +1440,11 @@ view the progress of your output towards being printed. If your terminal
1440has the ability to display @TeX{} output files, you can preview the 1440has the ability to display @TeX{} output files, you can preview the
1441output on the terminal with @kbd{C-c C-v} (@code{tex-view}). 1441output on the terminal with @kbd{C-c C-v} (@code{tex-view}).
1442 1442
1443@cindex @code{TEXINPUTS} environment variable 1443@cindex @env{TEXINPUTS} environment variable
1444@vindex tex-directory 1444@vindex tex-directory
1445 You can specify the directory to use for running @TeX{} by setting the 1445 You can specify the directory to use for running @TeX{} by setting the
1446variable @code{tex-directory}. @code{"."} is the default value. If 1446variable @code{tex-directory}. @code{"."} is the default value. If
1447your environment variable @code{TEXINPUTS} contains relative directory 1447your environment variable @env{TEXINPUTS} contains relative directory
1448names, or if your files contains @samp{\input} commands with relative 1448names, or if your files contains @samp{\input} commands with relative
1449file names, then @code{tex-directory} @emph{must} be @code{"."} or you 1449file names, then @code{tex-directory} @emph{must} be @code{"."} or you
1450will get the wrong results. Otherwise, it is safe to specify some other 1450will get the wrong results. Otherwise, it is safe to specify some other
diff --git a/man/trouble.texi b/man/trouble.texi
index 0d942ffa705..9c480d55b96 100644
--- a/man/trouble.texi
+++ b/man/trouble.texi
@@ -570,9 +570,9 @@ specified dribble file until the Emacs process is killed.
570@item 570@item
571@findex open-termscript 571@findex open-termscript
572@cindex termscript file 572@cindex termscript file
573@cindex @code{TERM} environment variable 573@cindex @env{TERM} environment variable
574For possible display bugs, the terminal type (the value of environment 574For possible display bugs, the terminal type (the value of environment
575variable @code{TERM}), the complete termcap entry for the terminal from 575variable @env{TERM}), the complete termcap entry for the terminal from
576@file{/etc/termcap} (since that file is not identical on all machines), 576@file{/etc/termcap} (since that file is not identical on all machines),
577and the output that Emacs actually sent to the terminal. 577and the output that Emacs actually sent to the terminal.
578 578
@@ -946,14 +946,14 @@ form that is clearly safe to install.
946 946
947If you would like to help pretest Emacs releases to assure they work 947If you would like to help pretest Emacs releases to assure they work
948well, or if you would like to work on improving Emacs, please contact 948well, or if you would like to work on improving Emacs, please contact
949the maintainers at @code{bug-gnu-emacs@@gnu.org}. A pretester 949the maintainers at @email{bug-gnu-emacs@@gnu.org}. A pretester
950should be prepared to investigate bugs as well as report them. If you'd 950should be prepared to investigate bugs as well as report them. If you'd
951like to work on improving Emacs, please ask for suggested projects or 951like to work on improving Emacs, please ask for suggested projects or
952suggest your own ideas. 952suggest your own ideas.
953 953
954If you have already written an improvement, please tell us about it. If 954If you have already written an improvement, please tell us about it. If
955you have not yet started work, it is useful to contact 955you have not yet started work, it is useful to contact
956@code{bug-gnu-emacs@@gnu.org} before you start; it might be 956@email{bug-gnu-emacs@@gnu.org} before you start; it might be
957possible to suggest ways to make your extension fit in better with the 957possible to suggest ways to make your extension fit in better with the
958rest of Emacs. 958rest of Emacs.
959 959
@@ -966,7 +966,7 @@ ways to find it:
966@itemize @bullet 966@itemize @bullet
967@item 967@item
968Send a message to the mailing list 968Send a message to the mailing list
969@code{help-gnu-emacs@@gnu.org}, or post your request on 969@email{help-gnu-emacs@@gnu.org}, or post your request on
970newsgroup @code{gnu.emacs.help}. (This mailing list and newsgroup 970newsgroup @code{gnu.emacs.help}. (This mailing list and newsgroup
971interconnect, so it does not matter which one you use.) 971interconnect, so it does not matter which one you use.)
972 972