annotate man/cmdargs.texi @ 89909:68c22ea6027c

Sync to HEAD
author Kenichi Handa <handa@m17n.org>
date Fri, 16 Apr 2004 12:51:06 +0000
parents 375f2633d815
children 4c90ffeb71c5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
1 @c This is part of the Emacs manual.
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
2 @c Copyright (C) 1985,86,87,93,94,95,97,2001,03,2004 Free Software Foundation, Inc.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
3 @c See file emacs.texi for copying conditions.
40524
5c00f23a93ec Everything about X resources moved to xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 39287
diff changeset
4 @node Command Arguments, X Resources, Service, Top
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
5 @appendix Command Line Arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
6 @cindex command line arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
7 @cindex arguments (command line)
Dave Love <fx@gnu.org>
parents:
diff changeset
8 @cindex options (command line)
Dave Love <fx@gnu.org>
parents:
diff changeset
9 @cindex switches (command line)
Dave Love <fx@gnu.org>
parents:
diff changeset
10 @cindex startup (command line arguments)
Dave Love <fx@gnu.org>
parents:
diff changeset
11
Dave Love <fx@gnu.org>
parents:
diff changeset
12 GNU Emacs supports command line arguments to request various actions
Dave Love <fx@gnu.org>
parents:
diff changeset
13 when invoking Emacs. These are for compatibility with other editors and
Dave Love <fx@gnu.org>
parents:
diff changeset
14 for sophisticated activities. We don't recommend using them for
Dave Love <fx@gnu.org>
parents:
diff changeset
15 ordinary editing.
Dave Love <fx@gnu.org>
parents:
diff changeset
16
Dave Love <fx@gnu.org>
parents:
diff changeset
17 Arguments starting with @samp{-} are @dfn{options}. Other arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
18 specify files to visit. Emacs visits the specified files while it
37835
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
19 starts up. The last file name on your command line becomes the
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
20 current buffer; the other files are also visited in other buffers. If
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
21 there are two files, they are both displayed; otherwise the last file
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
22 is displayed along with a buffer list that shows what other buffers
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
23 there are. As with most programs, the special argument @samp{--} says
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
24 that all subsequent arguments are file names, not options, even if
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
25 they start with @samp{-}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
26
Dave Love <fx@gnu.org>
parents:
diff changeset
27 Emacs command options can specify many things, such as the size and
Dave Love <fx@gnu.org>
parents:
diff changeset
28 position of the X window Emacs uses, its colors, and so on. A few
Dave Love <fx@gnu.org>
parents:
diff changeset
29 options support advanced usage, such as running Lisp functions on files
Dave Love <fx@gnu.org>
parents:
diff changeset
30 in batch mode. The sections of this chapter describe the available
Dave Love <fx@gnu.org>
parents:
diff changeset
31 options, arranged according to their purpose.
Dave Love <fx@gnu.org>
parents:
diff changeset
32
Dave Love <fx@gnu.org>
parents:
diff changeset
33 There are two ways of writing options: the short forms that start with
Dave Love <fx@gnu.org>
parents:
diff changeset
34 a single @samp{-}, and the long forms that start with @samp{--}. For
Dave Love <fx@gnu.org>
parents:
diff changeset
35 example, @samp{-d} is a short form and @samp{--display} is the
Dave Love <fx@gnu.org>
parents:
diff changeset
36 corresponding long form.
Dave Love <fx@gnu.org>
parents:
diff changeset
37
Dave Love <fx@gnu.org>
parents:
diff changeset
38 The long forms with @samp{--} are easier to remember, but longer to
Dave Love <fx@gnu.org>
parents:
diff changeset
39 type. However, you don't have to spell out the whole option name; any
Dave Love <fx@gnu.org>
parents:
diff changeset
40 unambiguous abbreviation is enough. When a long option takes an
Dave Love <fx@gnu.org>
parents:
diff changeset
41 argument, you can use either a space or an equal sign to separate the
Dave Love <fx@gnu.org>
parents:
diff changeset
42 option name and the argument. Thus, you can write either
Dave Love <fx@gnu.org>
parents:
diff changeset
43 @samp{--display sugar-bombs:0.0} or @samp{--display=sugar-bombs:0.0}.
Dave Love <fx@gnu.org>
parents:
diff changeset
44 We recommend an equal sign because it makes the relationship clearer,
Dave Love <fx@gnu.org>
parents:
diff changeset
45 and the tables below always show an equal sign.
Dave Love <fx@gnu.org>
parents:
diff changeset
46
Dave Love <fx@gnu.org>
parents:
diff changeset
47 @cindex initial options (command line)
Dave Love <fx@gnu.org>
parents:
diff changeset
48 @cindex action options (command line)
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
49 @vindex command-line-args
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
50 Most options specify how to initialize Emacs, or set parameters for
Dave Love <fx@gnu.org>
parents:
diff changeset
51 the Emacs session. We call them @dfn{initial options}. A few options
Dave Love <fx@gnu.org>
parents:
diff changeset
52 specify things to do: for example, load libraries, call functions, or
38745
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
53 terminate Emacs. These are called @dfn{action options}. These and file
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
54 names together are called @dfn{action arguments}. Emacs processes all
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
55 the action arguments in the order they are written. The @file{.emacs} file
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
56 can access the values of the action arguments as the elements of a list in
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
57 the variable @code{command-line-args}.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
58
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
59
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
60
Dave Love <fx@gnu.org>
parents:
diff changeset
61 @menu
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
62 * Action Arguments:: Arguments to visit files, load libraries,
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
63 and call functions.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
64 * Initial Options:: Arguments that take effect while starting Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
65 * Command Example:: Examples of using command line arguments.
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
66 * Resume Arguments:: Specifying arguments when you resume a running Emacs.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
67 * Environment:: Environment variables that Emacs uses.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
68 * Display X:: Changing the default display and using remote login.
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
69 * Font X:: Choosing a font for text, under X.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
70 * Colors:: Choosing display colors.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
71 * Window Size X:: Start-up window size, under X.
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
72 * Borders X:: Internal and external borders, under X.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
73 * Title X:: Specifying the initial frame's title.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
74 * Icons X:: Choosing what sort of icon to use, under X.
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
75 * Misc X:: Other display options.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
76 @end menu
Dave Love <fx@gnu.org>
parents:
diff changeset
77
Dave Love <fx@gnu.org>
parents:
diff changeset
78 @node Action Arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
79 @appendixsec Action Arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
80
Dave Love <fx@gnu.org>
parents:
diff changeset
81 Here is a table of the action arguments and options:
Dave Love <fx@gnu.org>
parents:
diff changeset
82
Dave Love <fx@gnu.org>
parents:
diff changeset
83 @table @samp
Dave Love <fx@gnu.org>
parents:
diff changeset
84 @item @var{file}
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
85 @opindex --file
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
86 @itemx --file=@var{file}
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
87 @opindex --find-file
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
88 @itemx --find-file=@var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
89 @opindex --visit
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
90 @itemx --visit=@var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
91 @cindex visiting files, command-line argument
45875
a4199c98c1eb Document inhibit-startup-buffer-menu.
Richard M. Stallman <rms@gnu.org>
parents: 45532
diff changeset
92 @vindex inhibit-startup-buffer-menu
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
93 Visit @var{file} using @code{find-file}. @xref{Visiting}.
45875
a4199c98c1eb Document inhibit-startup-buffer-menu.
Richard M. Stallman <rms@gnu.org>
parents: 45532
diff changeset
94 If you visit several files at startup in this way, Emacs
a4199c98c1eb Document inhibit-startup-buffer-menu.
Richard M. Stallman <rms@gnu.org>
parents: 45532
diff changeset
95 also displays a Buffer Menu buffer to show you what files it
a4199c98c1eb Document inhibit-startup-buffer-menu.
Richard M. Stallman <rms@gnu.org>
parents: 45532
diff changeset
96 has visited. You can inhibit that by setting @code{inhibit-startup-buffer-menu} to @code{t}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
97
Dave Love <fx@gnu.org>
parents:
diff changeset
98 @item +@var{linenum} @var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
99 @opindex +@var{linenum}
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
100 Visit @var{file} using @code{find-file}, then go to line number
Dave Love <fx@gnu.org>
parents:
diff changeset
101 @var{linenum} in it.
Dave Love <fx@gnu.org>
parents:
diff changeset
102
38466
7f9fe7268ee4 Add description of +LINE:COLUMN.
Gerd Moellmann <gerd@gnu.org>
parents: 37835
diff changeset
103 @item +@var{linenum}:@var{columnnum} @var{file}
7f9fe7268ee4 Add description of +LINE:COLUMN.
Gerd Moellmann <gerd@gnu.org>
parents: 37835
diff changeset
104 Visit @var{file} using @code{find-file}, then go to line number
38745
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
105 @var{linenum} and put point at column number @var{columnnum}.
38466
7f9fe7268ee4 Add description of +LINE:COLUMN.
Gerd Moellmann <gerd@gnu.org>
parents: 37835
diff changeset
106
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
107 @need 3000
Dave Love <fx@gnu.org>
parents:
diff changeset
108 @item -l @var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
109 @opindex -l
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
110 @itemx --load=@var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
111 @opindex --load
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
112 @cindex loading Lisp libraries, command-line argument
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
113 Load a Lisp library named @var{file} with the function @code{load}.
Dave Love <fx@gnu.org>
parents:
diff changeset
114 @xref{Lisp Libraries}. The library can be found either in the current
Dave Love <fx@gnu.org>
parents:
diff changeset
115 directory, or in the Emacs library search path as specified
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
116 with @env{EMACSLOADPATH} (@pxref{General Variables}).
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
117
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
118 @item -L @var{dir}
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
119 @opindex -L
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
120 @itemx --directory=@var{dir}
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
121 @opindex --directory
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
122 Add directory @var{dir} to the variable @code{load-path}.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
123
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
124 @item -f @var{function}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
125 @opindex -f
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
126 @itemx --funcall=@var{function}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
127 @opindex --funcall
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
128 @cindex call Lisp functions, command-line argument
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
129 Call Lisp function @var{function}. If it is an interactive function
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
130 (a command), it reads the arguments interactively just as if you had
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
131 called the same function with a key sequence. Otherwise, it calls the
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
132 function with no arguments.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
133
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
134 @item --eval=@var{expression}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
135 @opindex --eval
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
136 @itemx --execute=@var{expression}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
137 @opindex --execute
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
138 @cindex evaluate expression, command-line argument
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
139 Evaluate Lisp expression @var{expression}.
Dave Love <fx@gnu.org>
parents:
diff changeset
140
Dave Love <fx@gnu.org>
parents:
diff changeset
141 @item --insert=@var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
142 @opindex --insert
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
143 @cindex insert file contents, command-line argument
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
144 Insert the contents of @var{file} into the current buffer. This is like
Dave Love <fx@gnu.org>
parents:
diff changeset
145 what @kbd{M-x insert-file} does. @xref{Misc File Ops}.
Dave Love <fx@gnu.org>
parents:
diff changeset
146
Dave Love <fx@gnu.org>
parents:
diff changeset
147 @item --kill
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
148 @opindex --kill
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
149 Exit from Emacs without asking for confirmation.
Dave Love <fx@gnu.org>
parents:
diff changeset
150
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
151 @item --help
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
152 @opindex --help
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
153 Print a usage message listing all available options, then exit
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
154 successfully.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
155
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
156 @item --version
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
157 @opindex --version
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
158 Print Emacs version, then exit successfully.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
159 @end table
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
160
Dave Love <fx@gnu.org>
parents:
diff changeset
161 @node Initial Options
Dave Love <fx@gnu.org>
parents:
diff changeset
162 @appendixsec Initial Options
Dave Love <fx@gnu.org>
parents:
diff changeset
163
Dave Love <fx@gnu.org>
parents:
diff changeset
164 The initial options specify parameters for the Emacs session. This
Dave Love <fx@gnu.org>
parents:
diff changeset
165 section describes the more general initial options; some other options
35188
94d46968a93f Don't say "X Windows". From Colin Walters <walters@cis.ohio-state.edu>.
Eli Zaretskii <eliz@gnu.org>
parents: 34221
diff changeset
166 specifically related to the X Window System appear in the following
94d46968a93f Don't say "X Windows". From Colin Walters <walters@cis.ohio-state.edu>.
Eli Zaretskii <eliz@gnu.org>
parents: 34221
diff changeset
167 sections.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
168
Dave Love <fx@gnu.org>
parents:
diff changeset
169 Some initial options affect the loading of init files. The normal
Dave Love <fx@gnu.org>
parents:
diff changeset
170 actions of Emacs are to first load @file{site-start.el} if it exists,
Dave Love <fx@gnu.org>
parents:
diff changeset
171 then your own init file @file{~/.emacs} if it exists, and finally
Dave Love <fx@gnu.org>
parents:
diff changeset
172 @file{default.el} if it exists; certain options prevent loading of some
Dave Love <fx@gnu.org>
parents:
diff changeset
173 of these files or substitute other files for them.
Dave Love <fx@gnu.org>
parents:
diff changeset
174
Dave Love <fx@gnu.org>
parents:
diff changeset
175 @table @samp
Dave Love <fx@gnu.org>
parents:
diff changeset
176 @item -t @var{device}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
177 @opindex -t
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
178 @itemx --terminal=@var{device}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
179 @opindex --terminal
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
180 @cindex device for Emacs terminal I/O
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
181 Use @var{device} as the device for terminal input and output.
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
182 @samp{--terminal} implies @samp{--no-window-system}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
183
Dave Love <fx@gnu.org>
parents:
diff changeset
184 @item -d @var{display}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
185 @opindex -d
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
186 @itemx --display=@var{display}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
187 @opindex --display
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
188 @cindex display for Emacs frame
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
189 Use the X Window System and use the display named @var{display} to open
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
190 the initial Emacs frame. @xref{Display X}, for more details.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
191
Dave Love <fx@gnu.org>
parents:
diff changeset
192 @item -nw
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
193 @opindex -nw
40563
62cd2910ba80 (Initial Options): Document command line option --no-window-system instead
Pavel Janík <Pavel@Janik.cz>
parents: 40524
diff changeset
194 @itemx --no-window-system
62cd2910ba80 (Initial Options): Document command line option --no-window-system instead
Pavel Janík <Pavel@Janik.cz>
parents: 40524
diff changeset
195 @opindex --no-window-system
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
196 @cindex disable window system
33012
df207c5f631f (Colors X): Document support for -fg, -bg, and -rv
Eli Zaretskii <eliz@gnu.org>
parents: 31169
diff changeset
197 Don't communicate directly with the window system, disregarding the
40652
8dc305c093c1 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 40584
diff changeset
198 @env{DISPLAY} environment variable even if it is set. This means that
8dc305c093c1 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 40584
diff changeset
199 Emacs uses the terminal from which it was launched for all its display
8dc305c093c1 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 40584
diff changeset
200 and input.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
201
Dave Love <fx@gnu.org>
parents:
diff changeset
202 @need 3000
Dave Love <fx@gnu.org>
parents:
diff changeset
203 @cindex batch mode
Dave Love <fx@gnu.org>
parents:
diff changeset
204 @item -batch
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
205 @opindex --batch
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
206 @itemx --batch
Dave Love <fx@gnu.org>
parents:
diff changeset
207 Run Emacs in @dfn{batch mode}, which means that the text being edited is
Dave Love <fx@gnu.org>
parents:
diff changeset
208 not displayed and the standard terminal interrupt characters such as
Dave Love <fx@gnu.org>
parents:
diff changeset
209 @kbd{C-z} and @kbd{C-c} continue to have their normal effect. Emacs in
38870
d44abb4e68b2 Don't use "print" for displaying a message.
Richard M. Stallman <rms@gnu.org>
parents: 38773
diff changeset
210 batch mode outputs to @code{stderr} only what would normally be displayed
36875
6a6141e694a5 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36841
diff changeset
211 in the echo area under program control, and functions which would
6a6141e694a5 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36841
diff changeset
212 normally read from the minibuffer take their input from @code{stdin}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
213
Dave Love <fx@gnu.org>
parents:
diff changeset
214 Batch mode is used for running programs written in Emacs Lisp from
Dave Love <fx@gnu.org>
parents:
diff changeset
215 shell scripts, makefiles, and so on. Normally the @samp{-l} option
Dave Love <fx@gnu.org>
parents:
diff changeset
216 or @samp{-f} option will be used as well, to invoke a Lisp program
Dave Love <fx@gnu.org>
parents:
diff changeset
217 to do the batch processing.
Dave Love <fx@gnu.org>
parents:
diff changeset
218
47323
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
219 @samp{--batch} implies @samp{-q} (do not load an init file). It also
38745
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
220 causes Emacs to exit after processing all the command options. In
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
221 addition, it disables auto-saving except in buffers for which it has
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
222 been explicitly requested.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
223
47323
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
224 @item --script @var{file}
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
225 @opindex --script
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
226 @cindex script mode
47323
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
227 Run Emacs in batch mode, like @samp{--batch}, and then read and
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
228 execute the Lisp code in @var{file}.
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
229
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
230 The normal use of this option is in executable script files that run
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
231 Emacs. They can start with this text on the first line
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
232
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
233 @example
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
234 #!/usr/bin/emacs --script
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
235 @end example
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
236
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
237 @noindent
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
238 which will invoke Emacs with @samp{--script} and supply the name of
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
239 the script file as @var{file}. Emacs Lisp then treats @samp{#!} as a
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
240 comment delimiter.
ff0c55c69b84 Document --script.
Richard M. Stallman <rms@gnu.org>
parents: 46717
diff changeset
241
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
242 @item -q
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
243 @opindex -q
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
244 @itemx --no-init-file
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
245 @opindex --no-init-file
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
246 @cindex bypassing init and @file{default.el} file
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
247 @cindex init file, not loading
37595
fe04457ea88a (Initial Options): Add index entries for not loading startup files.
Eli Zaretskii <eliz@gnu.org>
parents: 37451
diff changeset
248 @cindex @file{default.el} file, not loading
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
249 Do not load your Emacs init file @file{~/.emacs}, or @file{default.el}
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
250 either. Regardless of this switch, @file{site-start.el} is still loaded.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
251 When invoked like this, Emacs does not allow saving options
37619
3b026479775e (Initial Options): Document that -q disables customizations saving.
Eli Zaretskii <eliz@gnu.org>
parents: 37595
diff changeset
252 changed with the @kbd{M-x customize} command and its variants.
3b026479775e (Initial Options): Document that -q disables customizations saving.
Eli Zaretskii <eliz@gnu.org>
parents: 37595
diff changeset
253 @xref{Easy Customization}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
254
Dave Love <fx@gnu.org>
parents:
diff changeset
255 @item --no-site-file
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
256 @opindex --no-site-file
37595
fe04457ea88a (Initial Options): Add index entries for not loading startup files.
Eli Zaretskii <eliz@gnu.org>
parents: 37451
diff changeset
257 @cindex @file{site-start.el} file, not loading
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
258 Do not load @file{site-start.el}. The options @samp{-q}, @samp{-u}
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
259 and @samp{--batch} have no effect on the loading of this file---this is
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
260 the only option that blocks it.
Dave Love <fx@gnu.org>
parents:
diff changeset
261
45532
6d0025248c2b Fix previous change.
Colin Walters <walters@gnu.org>
parents: 45531
diff changeset
262 @item --no-splash
6d0025248c2b Fix previous change.
Colin Walters <walters@gnu.org>
parents: 45531
diff changeset
263 @opindex --no-splash
45531
8873fff421e7 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44326
diff changeset
264 @vindex inhibit-startup-message
45875
a4199c98c1eb Document inhibit-startup-buffer-menu.
Richard M. Stallman <rms@gnu.org>
parents: 45532
diff changeset
265 Do not display a splash screen on startup; this is equivalent to
a4199c98c1eb Document inhibit-startup-buffer-menu.
Richard M. Stallman <rms@gnu.org>
parents: 45532
diff changeset
266 setting the variable @code{inhibit-startup-message} to non-@code{nil}.
45531
8873fff421e7 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44326
diff changeset
267
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
268 @item --no-desktop
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
269 @opindex --no-desktop
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
270 Do not reload any saved desktop. @xref{Saving Emacs Sessions}.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
271
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
272 @item -u @var{user}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
273 @opindex -u
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
274 @itemx --user=@var{user}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
275 @opindex --user
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
276 @cindex load init file of another user
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
277 Load @var{user}'s Emacs init file @file{~@var{user}/.emacs} instead of
Dave Love <fx@gnu.org>
parents:
diff changeset
278 your own.
Dave Love <fx@gnu.org>
parents:
diff changeset
279
Dave Love <fx@gnu.org>
parents:
diff changeset
280 @item --debug-init
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
281 @opindex --debug-init
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
282 @cindex errors in init file
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
283 Enable the Emacs Lisp debugger for errors in the init file.
Dave Love <fx@gnu.org>
parents:
diff changeset
284
Dave Love <fx@gnu.org>
parents:
diff changeset
285 @item --unibyte
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
286 @opindex --unibyte
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
287 @itemx --no-multibyte
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
288 @opindex --no-multibyte
31142
7d0a8b91a6c0 Mention that Lisp files are normally read as multibyte.
Eli Zaretskii <eliz@gnu.org>
parents: 30967
diff changeset
289 @cindex unibyte operation, command-line argument
38648
66e920bfc687 Fix typos; from Eric Hanchrow <offby1@blarg.net>.
Eli Zaretskii <eliz@gnu.org>
parents: 38466
diff changeset
290 Do almost everything with single-byte buffers and strings.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
291 All buffers and strings are unibyte unless you (or a Lisp program)
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
292 explicitly ask for a multibyte buffer or string. (Note that Emacs
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
293 always loads Lisp files in multibyte mode, even if @samp{--unibyte} is
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
294 specified; see @ref{Enabling Multibyte}.) Setting the environment
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
295 variable @env{EMACS_UNIBYTE} has the same effect.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
296
Dave Love <fx@gnu.org>
parents:
diff changeset
297 @item --multibyte
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
298 @opindex --multibyte
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
299 @itemx --no-unibyte
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
300 @opindex --no-unibyte
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
301 Inhibit the effect of @env{EMACS_UNIBYTE}, so that Emacs
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
302 uses multibyte characters by default, as usual.
Dave Love <fx@gnu.org>
parents:
diff changeset
303 @end table
Dave Love <fx@gnu.org>
parents:
diff changeset
304
Dave Love <fx@gnu.org>
parents:
diff changeset
305 @node Command Example
Dave Love <fx@gnu.org>
parents:
diff changeset
306 @appendixsec Command Argument Example
Dave Love <fx@gnu.org>
parents:
diff changeset
307
Dave Love <fx@gnu.org>
parents:
diff changeset
308 Here is an example of using Emacs with arguments and options. It
Dave Love <fx@gnu.org>
parents:
diff changeset
309 assumes you have a Lisp program file called @file{hack-c.el} which, when
Dave Love <fx@gnu.org>
parents:
diff changeset
310 loaded, performs some useful operation on the current buffer, expected
Dave Love <fx@gnu.org>
parents:
diff changeset
311 to be a C program.
Dave Love <fx@gnu.org>
parents:
diff changeset
312
Dave Love <fx@gnu.org>
parents:
diff changeset
313 @example
Dave Love <fx@gnu.org>
parents:
diff changeset
314 emacs -batch foo.c -l hack-c -f save-buffer >& log
Dave Love <fx@gnu.org>
parents:
diff changeset
315 @end example
Dave Love <fx@gnu.org>
parents:
diff changeset
316
Dave Love <fx@gnu.org>
parents:
diff changeset
317 @noindent
Dave Love <fx@gnu.org>
parents:
diff changeset
318 This says to visit @file{foo.c}, load @file{hack-c.el} (which makes
Dave Love <fx@gnu.org>
parents:
diff changeset
319 changes in the visited file), save @file{foo.c} (note that
Dave Love <fx@gnu.org>
parents:
diff changeset
320 @code{save-buffer} is the function that @kbd{C-x C-s} is bound to), and
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
321 then exit back to the shell (because of @samp{--batch}). @samp{--batch}
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
322 also guarantees there will be no problem redirecting output to
Dave Love <fx@gnu.org>
parents:
diff changeset
323 @file{log}, because Emacs will not assume that it has a display terminal
Dave Love <fx@gnu.org>
parents:
diff changeset
324 to work with.
Dave Love <fx@gnu.org>
parents:
diff changeset
325
Dave Love <fx@gnu.org>
parents:
diff changeset
326 @node Resume Arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
327 @appendixsec Resuming Emacs with Arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
328
Dave Love <fx@gnu.org>
parents:
diff changeset
329 You can specify action arguments for Emacs when you resume it after
Dave Love <fx@gnu.org>
parents:
diff changeset
330 a suspension. To prepare for this, put the following code in your
Dave Love <fx@gnu.org>
parents:
diff changeset
331 @file{.emacs} file (@pxref{Hooks}):
Dave Love <fx@gnu.org>
parents:
diff changeset
332
37835
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
333 @c `resume-suspend-hook' is correct. It is the name of a function.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
334 @example
Dave Love <fx@gnu.org>
parents:
diff changeset
335 (add-hook 'suspend-hook 'resume-suspend-hook)
Dave Love <fx@gnu.org>
parents:
diff changeset
336 (add-hook 'suspend-resume-hook 'resume-process-args)
Dave Love <fx@gnu.org>
parents:
diff changeset
337 @end example
Dave Love <fx@gnu.org>
parents:
diff changeset
338
Dave Love <fx@gnu.org>
parents:
diff changeset
339 As further preparation, you must execute the shell script
37835
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
340 @file{emacs.csh} (if you use csh as your shell) or @file{emacs.bash}
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
341 (if you use bash as your shell). These scripts define an alias named
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
342 @code{edit}, which will resume Emacs giving it new command line
37835
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
343 arguments such as files to visit. The scripts are found in the
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
344 @file{etc} subdirectory of the Emacs distribution.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
345
Dave Love <fx@gnu.org>
parents:
diff changeset
346 Only action arguments work properly when you resume Emacs. Initial
Dave Love <fx@gnu.org>
parents:
diff changeset
347 arguments are not recognized---it's too late to execute them anyway.
Dave Love <fx@gnu.org>
parents:
diff changeset
348
Dave Love <fx@gnu.org>
parents:
diff changeset
349 Note that resuming Emacs (with or without arguments) must be done from
Dave Love <fx@gnu.org>
parents:
diff changeset
350 within the shell that is the parent of the Emacs job. This is why
Dave Love <fx@gnu.org>
parents:
diff changeset
351 @code{edit} is an alias rather than a program or a shell script. It is
Dave Love <fx@gnu.org>
parents:
diff changeset
352 not possible to implement a resumption command that could be run from
38648
66e920bfc687 Fix typos; from Eric Hanchrow <offby1@blarg.net>.
Eli Zaretskii <eliz@gnu.org>
parents: 38466
diff changeset
353 other subjobs of the shell; there is no way to define a command that could
66e920bfc687 Fix typos; from Eric Hanchrow <offby1@blarg.net>.
Eli Zaretskii <eliz@gnu.org>
parents: 38466
diff changeset
354 be made the value of @env{EDITOR}, for example. Therefore, this feature
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
355 does not take the place of the Emacs Server feature (@pxref{Emacs
Dave Love <fx@gnu.org>
parents:
diff changeset
356 Server}).
Dave Love <fx@gnu.org>
parents:
diff changeset
357
Dave Love <fx@gnu.org>
parents:
diff changeset
358 The aliases use the Emacs Server feature if you appear to have a
Dave Love <fx@gnu.org>
parents:
diff changeset
359 server Emacs running. However, they cannot determine this with complete
Dave Love <fx@gnu.org>
parents:
diff changeset
360 accuracy. They may think that a server is still running when in
Dave Love <fx@gnu.org>
parents:
diff changeset
361 actuality you have killed that Emacs, because the file
37835
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
362 @file{/tmp/esrv@dots{}} still exists. If this happens, find that
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
363 file and delete it.
Dave Love <fx@gnu.org>
parents:
diff changeset
364
Dave Love <fx@gnu.org>
parents:
diff changeset
365 @node Environment
Dave Love <fx@gnu.org>
parents:
diff changeset
366 @appendixsec Environment Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
367 @cindex environment variables
Dave Love <fx@gnu.org>
parents:
diff changeset
368
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
369 The @dfn{environment} is a feature of the operating system; it
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
370 consists of a collection of variables with names and values. Each
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
371 variable is called an @dfn{environment variable}; environment variable
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
372 names are case-sensitive, and it is conventional to use upper case
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
373 letters only. The values are all text strings.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
374
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
375 What makes the environment useful is that subprocesses inherit the
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
376 environment automatically from their parent process. This means you
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
377 can set up an environment variable in your login shell, and all the
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
378 programs you run (including Emacs) will automatically see it.
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
379 Subprocesses of Emacs (such as shells, compilers, and version-control
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
380 software) inherit the environment from Emacs, too.
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
381
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
382 @findex setenv
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
383 @findex getenv
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
384 Inside Emacs, the command @kbd{M-x getenv} gets the value of an
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
385 environment variable. @kbd{M-x setenv} sets a variable in the Emacs
46202
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
386 environment. (Environment variable substitutions with @samp{$} work
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
387 in the value just as in file names; see @ref{File Names with $}.)
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
388
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
389 The way to set environment variables outside of Emacs depends on the
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
390 operating system, and especially the shell that you are using. For
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
391 example, here's how to set the environment variable @env{ORGANIZATION}
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
392 to @samp{not very much} using Bash:
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
393
Dave Love <fx@gnu.org>
parents:
diff changeset
394 @example
Dave Love <fx@gnu.org>
parents:
diff changeset
395 export ORGANIZATION="not very much"
Dave Love <fx@gnu.org>
parents:
diff changeset
396 @end example
Dave Love <fx@gnu.org>
parents:
diff changeset
397
Dave Love <fx@gnu.org>
parents:
diff changeset
398 @noindent
Dave Love <fx@gnu.org>
parents:
diff changeset
399 and here's how to do it in csh or tcsh:
Dave Love <fx@gnu.org>
parents:
diff changeset
400
Dave Love <fx@gnu.org>
parents:
diff changeset
401 @example
Dave Love <fx@gnu.org>
parents:
diff changeset
402 setenv ORGANIZATION "not very much"
Dave Love <fx@gnu.org>
parents:
diff changeset
403 @end example
Dave Love <fx@gnu.org>
parents:
diff changeset
404
46202
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
405 When Emacs is using the X Window System, various environment
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
406 variables that control X work for Emacs as well. See the X
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
407 documentation for more information.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
408
Dave Love <fx@gnu.org>
parents:
diff changeset
409 @menu
Dave Love <fx@gnu.org>
parents:
diff changeset
410 * General Variables:: Environment variables that all versions of Emacs use.
Dave Love <fx@gnu.org>
parents:
diff changeset
411 * Misc Variables:: Certain system-specific variables.
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
412 * MS-Windows Registry:: An alternative to the environment on MS-Windows.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
413 @end menu
Dave Love <fx@gnu.org>
parents:
diff changeset
414
Dave Love <fx@gnu.org>
parents:
diff changeset
415 @node General Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
416 @appendixsubsec General Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
417
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
418 Here is an alphabetical list of specific environment variables that
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
419 have special meanings in Emacs, giving the name of each variable and
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
420 its meaning. Most of these variables are also used by some other
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
421 programs. Emacs does not require any of these environment variables
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
422 to be set, but it uses their values if they are set.
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
423
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
424 @table @env
36362
193e0fa6c140 (General Variables): Fix a typo in the CDPATH entry.
Eli Zaretskii <eliz@gnu.org>
parents: 36346
diff changeset
425 @item CDPATH
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
426 Used by the @code{cd} command to search for the directory you specify,
Dave Love <fx@gnu.org>
parents:
diff changeset
427 when you specify a relative directory name.
Dave Love <fx@gnu.org>
parents:
diff changeset
428 @item EMACS_UNIBYTE
31142
7d0a8b91a6c0 Mention that Lisp files are normally read as multibyte.
Eli Zaretskii <eliz@gnu.org>
parents: 30967
diff changeset
429 @cindex unibyte operation, environment variable
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
430 Defining this environment variable with a nonempty value directs Emacs
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
431 to do almost everything with single-byte buffers and strings. It is
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
432 equivalent to using the @samp{--unibyte} command-line option on each
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
433 invocation. @xref{Initial Options}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
434 @item EMACSDATA
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
435 Directory for the architecture-independent files that come with Emacs.
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
436 This is used to initialize the Lisp variable @code{data-directory}.
35490
2e4bf60771ea (General Variables): Document $EMACSDOC.
Eli Zaretskii <eliz@gnu.org>
parents: 35188
diff changeset
437 @item EMACSDOC
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
438 Directory for the documentation string file,
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
439 @file{DOC-@var{emacsversion}}. This is used to initialize the Lisp
36295
1203ee52391f (General Variables) <EMACSDOC>: It's used to
Gerd Moellmann <gerd@gnu.org>
parents: 36293
diff changeset
440 variable @code{doc-directory}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
441 @item EMACSLOADPATH
36364
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
442 A colon-separated list of directories@footnote{
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
443 Here and below, whenever we say ``colon-separated list of directories'',
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
444 it pertains to Unix and GNU/Linux systems. On MS-DOS and MS-Windows,
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
445 the directories are separated by semi-colons instead, since DOS/Windows
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
446 file names might include a colon after a drive letter.}
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
447 to search for Emacs Lisp files---used to initialize @code{load-path}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
448 @item EMACSPATH
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
449 A colon-separated list of directories to search for executable
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
450 files---used to initialize @code{exec-path}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
451 @item ESHELL
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
452 Used for shell-mode to override the @env{SHELL} environment variable.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
453 @item HISTFILE
Dave Love <fx@gnu.org>
parents:
diff changeset
454 The name of the file that shell commands are saved in between logins.
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
455 This variable defaults to @file{~/.bash_history} if you use Bash, to
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
456 @file{~/.sh_history} if you use ksh, and to @file{~/.history}
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
457 otherwise.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
458 @item HOME
Dave Love <fx@gnu.org>
parents:
diff changeset
459 The location of the user's files in the directory tree; used for
Dave Love <fx@gnu.org>
parents:
diff changeset
460 expansion of file names starting with a tilde (@file{~}). On MS-DOS, it
Dave Love <fx@gnu.org>
parents:
diff changeset
461 defaults to the directory from which Emacs was started, with @samp{/bin}
36346
5bd8f163760f (General Variables): Document the default value of $HOME on Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 36297
diff changeset
462 removed from the end if it was present. On Windows, the default value
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
463 of @env{HOME} is @file{C:/}, the root directory of drive @file{C:}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
464 @item HOSTNAME
Dave Love <fx@gnu.org>
parents:
diff changeset
465 The name of the machine that Emacs is running on.
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 47323
diff changeset
466 @item INCPATH
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
467 A colon-separated list of directories. Used by the @code{complete} package
Dave Love <fx@gnu.org>
parents:
diff changeset
468 to search for files.
Dave Love <fx@gnu.org>
parents:
diff changeset
469 @item INFOPATH
36295
1203ee52391f (General Variables) <EMACSDOC>: It's used to
Gerd Moellmann <gerd@gnu.org>
parents: 36293
diff changeset
470 A colon-separated list of directories in which to search for Info files.
26140
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 25829
diff changeset
471 @item LC_ALL
37085
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
472 @itemx LC_COLLATE
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
473 @itemx LC_CTYPE
37085
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
474 @itemx LC_MESSAGES
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
475 @itemx LC_MONETARY
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
476 @itemx LC_NUMERIC
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
477 @itemx LC_TIME
26140
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 25829
diff changeset
478 @itemx LANG
37085
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
479 The user's preferred locale. The locale has six categories, specified
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
480 by the environment variables @env{LC_COLLATE} for sorting,
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
481 @env{LC_CTYPE} for character encoding, @env{LC_MESSAGES} for system
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
482 messages, @env{LC_MONETARY} for monetary formats, @env{LC_NUMERIC} for
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
483 numbers, and @env{LC_TIME} for dates and times. If one of these
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
484 variables is not set, the category defaults to the value of the
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
485 @env{LANG} environment variable, or to the default @samp{C} locale if
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
486 @env{LANG} is not set. But if @env{LC_ALL} is specified, it overrides
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
487 the settings of all the other locale environment variables.
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
488
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
489 On MS-Windows, if @env{LANG} is not already set in the environment
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
490 when Emacs starts, Emacs sets it based on the system-wide default
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
491 language, which you can set in the @samp{Regional Settings} Control Panel
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
492 on some versions of MS-Windows.
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
493
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
494 The value of the @env{LC_CTYPE} category is
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
495 matched against entries in @code{locale-language-names},
26140
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 25829
diff changeset
496 @code{locale-charset-language-names}, and
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
497 @code{locale-preferred-coding-systems}, to select a default language
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
498 environment and coding system. @xref{Language Environments}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
499 @item LOGNAME
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
500 The user's login name. See also @env{USER}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
501 @item MAIL
Dave Love <fx@gnu.org>
parents:
diff changeset
502 The name of the user's system mail inbox.
Dave Love <fx@gnu.org>
parents:
diff changeset
503 @item MH
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
504 Name of setup file for the mh system. (The default is @file{~/.mh_profile}.)
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
505 @item NAME
Dave Love <fx@gnu.org>
parents:
diff changeset
506 The real-world name of the user.
Dave Love <fx@gnu.org>
parents:
diff changeset
507 @item NNTPSERVER
36293
1bca8e306103 (General Variables): Remove description of
Gerd Moellmann <gerd@gnu.org>
parents: 36186
diff changeset
508 The name of the news server. Used by the mh and Gnus packages.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
509 @item ORGANIZATION
Dave Love <fx@gnu.org>
parents:
diff changeset
510 The name of the organization to which you belong. Used for setting the
36293
1bca8e306103 (General Variables): Remove description of
Gerd Moellmann <gerd@gnu.org>
parents: 36186
diff changeset
511 `Organization:' header in your posts from the Gnus package.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
512 @item PATH
36364
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
513 A colon-separated list of directories in which executables reside. This
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
514 is used to initialize the Emacs Lisp variable @code{exec-path}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
515 @item PWD
Dave Love <fx@gnu.org>
parents:
diff changeset
516 If set, this should be the default directory when Emacs was started.
Dave Love <fx@gnu.org>
parents:
diff changeset
517 @item REPLYTO
Dave Love <fx@gnu.org>
parents:
diff changeset
518 If set, this specifies an initial value for the variable
Dave Love <fx@gnu.org>
parents:
diff changeset
519 @code{mail-default-reply-to}. @xref{Mail Headers}.
Dave Love <fx@gnu.org>
parents:
diff changeset
520 @item SAVEDIR
Dave Love <fx@gnu.org>
parents:
diff changeset
521 The name of a directory in which news articles are saved by default.
36293
1bca8e306103 (General Variables): Remove description of
Gerd Moellmann <gerd@gnu.org>
parents: 36186
diff changeset
522 Used by the Gnus package.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
523 @item SHELL
Dave Love <fx@gnu.org>
parents:
diff changeset
524 The name of an interpreter used to parse and execute programs run from
Dave Love <fx@gnu.org>
parents:
diff changeset
525 inside Emacs.
49925
417d86de4023 Document SMTPSERVER environment variable.
Simon Josefsson <jas@extundo.com>
parents: 49600
diff changeset
526 @item SMTPSERVER
417d86de4023 Document SMTPSERVER environment variable.
Simon Josefsson <jas@extundo.com>
parents: 49600
diff changeset
527 The name of the outgoing mail server. Used by the SMTP library
50475
b65aa1d740eb Fix cross references.
Juanma Barranquero <lekktu@gmail.com>
parents: 49925
diff changeset
528 (@pxref{Top,,Sending mail via SMTP,smtpmail}).
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
529 @cindex background mode, on @command{xterm}
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
530 @item TERM
38745
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
531 The type of the terminal that Emacs is using. This variable must be
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
532 set unless Emacs is run in batch mode. On MS-DOS, it defaults to
Dave Love <fx@gnu.org>
parents:
diff changeset
533 @samp{internal}, which specifies a built-in terminal emulation that
33017
4c7241b226fc Document that if $TERM says we are on xterm, the default background
Eli Zaretskii <eliz@gnu.org>
parents: 33012
diff changeset
534 handles the machine's own display. If the value of @env{TERM} indicates
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
535 that Emacs runs in non-windowed mode from @command{xterm} or a similar
33017
4c7241b226fc Document that if $TERM says we are on xterm, the default background
Eli Zaretskii <eliz@gnu.org>
parents: 33012
diff changeset
536 terminal emulator, the background mode defaults to @samp{light}, and
4c7241b226fc Document that if $TERM says we are on xterm, the default background
Eli Zaretskii <eliz@gnu.org>
parents: 33012
diff changeset
537 Emacs will choose colors that are appropriate for a light background.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
538 @item TERMCAP
Dave Love <fx@gnu.org>
parents:
diff changeset
539 The name of the termcap library file describing how to program the
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
540 terminal specified by the @env{TERM} variable. This defaults to
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
541 @file{/etc/termcap}.
Dave Love <fx@gnu.org>
parents:
diff changeset
542 @item TMPDIR
Dave Love <fx@gnu.org>
parents:
diff changeset
543 Used by the Emerge package as a prefix for temporary files.
Dave Love <fx@gnu.org>
parents:
diff changeset
544 @item TZ
36186
e391cbe3a2fe Correction for TZ on Microsoft systems.
Richard M. Stallman <rms@gnu.org>
parents: 36146
diff changeset
545 This specifies the current time zone and possibly also daylight
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
546 saving time information. On MS-DOS, if @env{TZ} is not set in the
36186
e391cbe3a2fe Correction for TZ on Microsoft systems.
Richard M. Stallman <rms@gnu.org>
parents: 36146
diff changeset
547 environment when Emacs starts, Emacs defines a default value as
36502
3f0def4a4210 Minor cleanups. Rename `Motif Resources' node to `LessTif Resources'.
Richard M. Stallman <rms@gnu.org>
parents: 36500
diff changeset
548 appropriate for the country code returned by DOS. On MS-Windows, Emacs
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
549 does not use @env{TZ} at all.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
550 @item USER
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
551 The user's login name. See also @env{LOGNAME}. On MS-DOS, this
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
552 defaults to @samp{root}.
Dave Love <fx@gnu.org>
parents:
diff changeset
553 @item VERSION_CONTROL
Dave Love <fx@gnu.org>
parents:
diff changeset
554 Used to initialize the @code{version-control} variable (@pxref{Backup
Dave Love <fx@gnu.org>
parents:
diff changeset
555 Names}).
Dave Love <fx@gnu.org>
parents:
diff changeset
556 @end table
Dave Love <fx@gnu.org>
parents:
diff changeset
557
Dave Love <fx@gnu.org>
parents:
diff changeset
558 @node Misc Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
559 @appendixsubsec Miscellaneous Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
560
Dave Love <fx@gnu.org>
parents:
diff changeset
561 These variables are used only on particular configurations:
Dave Love <fx@gnu.org>
parents:
diff changeset
562
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
563 @table @env
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
564 @item COMSPEC
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
565 On MS-DOS and MS-Windows, the name of the command interpreter to use
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
566 when invoking batch files and commands internal to the shell. On MS-DOS
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
567 this is also used to make a default value for the @env{SHELL} environment
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
568 variable.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
569
Dave Love <fx@gnu.org>
parents:
diff changeset
570 @item NAME
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
571 On MS-DOS, this variable defaults to the value of the @env{USER}
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
572 variable.
Dave Love <fx@gnu.org>
parents:
diff changeset
573
Dave Love <fx@gnu.org>
parents:
diff changeset
574 @item TEMP
Dave Love <fx@gnu.org>
parents:
diff changeset
575 @itemx TMP
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
576 On MS-DOS and MS-Windows, these specify the name of the directory for
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
577 storing temporary files in.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
578
Dave Love <fx@gnu.org>
parents:
diff changeset
579 @item EMACSTEST
Dave Love <fx@gnu.org>
parents:
diff changeset
580 On MS-DOS, this specifies a file to use to log the operation of the
Dave Love <fx@gnu.org>
parents:
diff changeset
581 internal terminal emulator. This feature is useful for submitting bug
Dave Love <fx@gnu.org>
parents:
diff changeset
582 reports.
Dave Love <fx@gnu.org>
parents:
diff changeset
583
Dave Love <fx@gnu.org>
parents:
diff changeset
584 @item EMACSCOLORS
36502
3f0def4a4210 Minor cleanups. Rename `Motif Resources' node to `LessTif Resources'.
Richard M. Stallman <rms@gnu.org>
parents: 36500
diff changeset
585 On MS-DOS, this specifies the screen colors. It is useful to set them
3f0def4a4210 Minor cleanups. Rename `Motif Resources' node to `LessTif Resources'.
Richard M. Stallman <rms@gnu.org>
parents: 36500
diff changeset
586 this way, since otherwise Emacs would display the default colors
3f0def4a4210 Minor cleanups. Rename `Motif Resources' node to `LessTif Resources'.
Richard M. Stallman <rms@gnu.org>
parents: 36500
diff changeset
587 momentarily when it starts up.
3f0def4a4210 Minor cleanups. Rename `Motif Resources' node to `LessTif Resources'.
Richard M. Stallman <rms@gnu.org>
parents: 36500
diff changeset
588
3f0def4a4210 Minor cleanups. Rename `Motif Resources' node to `LessTif Resources'.
Richard M. Stallman <rms@gnu.org>
parents: 36500
diff changeset
589 The value of this variable should be the two-character encoding of the
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
590 foreground (the first character) and the background (the second
Dave Love <fx@gnu.org>
parents:
diff changeset
591 character) colors of the default face. Each character should be the
Dave Love <fx@gnu.org>
parents:
diff changeset
592 hexadecimal code for the desired color on a standard PC text-mode
39267
a8c0a02f6129 Spelling corrections.
Richard M. Stallman <rms@gnu.org>
parents: 39074
diff changeset
593 display. For example, to get blue text on a light gray background,
36505
a7400c1ee57f (Misc Variables): Add example for setting EMACSCOLORS on MS-DOS.
Eli Zaretskii <eliz@gnu.org>
parents: 36502
diff changeset
594 specify @samp{EMACSCOLORS=17}, since 1 is the code of the blue color and
39267
a8c0a02f6129 Spelling corrections.
Richard M. Stallman <rms@gnu.org>
parents: 39074
diff changeset
595 7 is the code of the light gray color.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
596
Dave Love <fx@gnu.org>
parents:
diff changeset
597 The PC display usually supports only eight background colors. However,
Dave Love <fx@gnu.org>
parents:
diff changeset
598 Emacs switches the DOS display to a mode where all 16 colors can be used
Dave Love <fx@gnu.org>
parents:
diff changeset
599 for the background, so all four bits of the background color are
Dave Love <fx@gnu.org>
parents:
diff changeset
600 actually used.
Dave Love <fx@gnu.org>
parents:
diff changeset
601
Dave Love <fx@gnu.org>
parents:
diff changeset
602 @item WINDOW_GFX
Dave Love <fx@gnu.org>
parents:
diff changeset
603 Used when initializing the Sun windows system.
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
604
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
605 @item PRELOAD_WINSOCK
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
606 On MS-Windows, if you set this variable, Emacs will load and initialize
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
607 the network library at startup, instead of waiting until the first
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
608 time it is required.
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
609
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
610 @item emacs_dir
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
611 On MS-Windows, @env{emacs_dir} is a special environment variable, which
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
612 indicates the full path of the directory in which Emacs is installed.
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
613 If Emacs is installed in the standard directory structure, it
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
614 calculates this value automatically. It is not much use setting this
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
615 variable yourself unless your installation is non-standard, since
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
616 unlike other environment variables, it will be overridden by Emacs at
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
617 startup. When setting other environment variables, such as
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
618 @env{EMACSLOADPATH}, you may find it useful to use @env{emacs_dir}
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
619 rather than hard-coding an absolute path. This allows multiple
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
620 versions of Emacs to share the same environment variable settings, and
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
621 it allows you to move the Emacs installation directory, without
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
622 changing any environment or registry settings.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
623 @end table
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
624
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
625 @node MS-Windows Registry
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
626 @appendixsubsec The MS-Windows System Registry
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
627 @pindex addpm, MS-Windows installation program
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
628 @cindex registry, setting environment variables and resources on MS-Windows
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
629
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
630 On MS-Windows, the installation program @command{addpm.exe} adds values
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
631 for @env{emacs_dir}, @env{EMACSLOADPATH}, @env{EMACSDATA},
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
632 @env{EMACSPATH}, @env{EMACSDOC}, @env{SHELL} and @env{TERM} to the
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
633 @file{HKEY_LOCAL_MACHINE} section of the system registry, under
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
634 @file{/Software/GNU/Emacs}. It does this because there is no standard
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
635 place to set environment variables across different versions of
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
636 Windows. Running @command{addpm.exe} is no longer strictly
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
637 necessary in recent versions of Emacs, but if you are upgrading from
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
638 an older version, running @command{addpm.exe} ensures that you do not have
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
639 older registry entries from a previous installation, which may not be
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
640 compatible with the latest version of Emacs.
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
641
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
642 When Emacs starts, as well as checking the environment, it also checks
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
643 the System Registry for those variables and for @env{HOME}, @env{LANG}
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
644 and @env{PRELOAD_WINSOCK}.
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
645
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
646 To determine the value of those variables, Emacs goes through the
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
647 following procedure. First, the environment is checked. If the
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
648 variable is not found there, Emacs looks for registry keys by that
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
649 name under @file{/Software/GNU/Emacs}; first in the
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
650 @file{HKEY_CURRENT_USER} section of the registry, and if not found
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
651 there, in the @file{HKEY_LOCAL_MACHINE} section. Finally, if Emacs
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
652 still cannot determine the values, compiled-in defaults are used.
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
653
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
654 In addition to the environment variables above, you can also add many
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
655 of the settings which on X belong in the @file{.Xdefaults} file
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
656 (@pxref{X Resources}) to the @file{/Software/GNU/Emacs} registry key.
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
657 Settings you add to the @file{HKEY_LOCAL_MACHINE} section will affect
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
658 all users of the machine. Settings you add to the
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
659 @file{HKEY_CURRENT_USER} section will only affect you, and will
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
660 override machine wide settings.
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
661
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
662 @node Display X
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 47323
diff changeset
663 @appendixsec Specifying the Display Name
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
664 @cindex display name (X Window System)
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
665 @cindex @env{DISPLAY} environment variable
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
666
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
667 The environment variable @env{DISPLAY} tells all X clients, including
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
668 Emacs, where to display their windows. Its value is set by default
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
669 in ordinary circumstances, when you start an X server and run jobs
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
670 locally. Occasionally you may need to specify the display yourself; for
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
671 example, if you do a remote login and want to run a client program
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
672 remotely, displaying on your local screen.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
673
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
674 With Emacs, the main reason people change the default display is to
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
675 let them log into another system, run Emacs on that system, but have the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
676 window displayed at their local terminal. You might need to log in
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
677 to another system because the files you want to edit are there, or
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
678 because the Emacs executable file you want to run is there.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
679
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
680 The syntax of the @env{DISPLAY} environment variable is
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
681 @samp{@var{host}:@var{display}.@var{screen}}, where @var{host} is the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
682 host name of the X Window System server machine, @var{display} is an
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
683 arbitrarily-assigned number that distinguishes your server (X terminal)
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
684 from other servers on the same machine, and @var{screen} is a
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
685 rarely-used field that allows an X server to control multiple terminal
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
686 screens. The period and the @var{screen} field are optional. If
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
687 included, @var{screen} is usually zero.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
688
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
689 For example, if your host is named @samp{glasperle} and your server is
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
690 the first (or perhaps the only) server listed in the configuration, your
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
691 @env{DISPLAY} is @samp{glasperle:0.0}.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
692
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
693 You can specify the display name explicitly when you run Emacs, either
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
694 by changing the @env{DISPLAY} variable, or with the option @samp{-d
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
695 @var{display}} or @samp{--display=@var{display}}. Here is an example:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
696
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
697 @smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
698 emacs --display=glasperle:0 &
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
699 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
700
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
701 You can inhibit the direct use of the window system and GUI with the
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
702 @samp{-nw} option. It tells Emacs to display using ordinary @acronym{ASCII} on
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
703 its controlling terminal. This is also an initial option.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
704
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
705 Sometimes, security arrangements prevent a program on a remote system
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
706 from displaying on your local system. In this case, trying to run Emacs
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
707 produces messages like this:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
708
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
709 @smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
710 Xlib: connection to "glasperle:0.0" refused by server
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
711 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
712
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
713 @noindent
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
714 You might be able to overcome this problem by using the @command{xhost}
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
715 command on the local system to give permission for access from your
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
716 remote machine.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
717
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
718 @node Font X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
719 @appendixsec Font Specification Options
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
720 @cindex font name (X Window System)
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
721
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
722 By default, Emacs displays text in a twelve point Courier font (when
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
723 using X). You can specify a different font on your command line
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
724 through the option @samp{-fn @var{name}} (or @samp{--font}, which is
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
725 an alias for @samp{-fn}).
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
726
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
727 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
728 @item -fn @var{name}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
729 @opindex -fn
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
730 @itemx --font=@var{name}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
731 @opindex --font
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
732 @cindex specify default font from the command line
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
733 Use font @var{name} as the default font.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
734 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
735
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
736 Under X, each font has a long name which consists of fourteen words
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
737 or numbers, separated by dashes. Some fonts also have shorter
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
738 nicknames. For instance, @samp{9x15} is such a nickname. This font
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
739 makes each character nine pixels wide and fifteen pixels high. You
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
740 can use either kind of name. Case is insignificant in both kinds.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
741 You can use wildcard patterns for the font name; then Emacs lets X
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
742 choose one of the fonts that match the pattern. The wildcard
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
743 character @samp{*} matches any sequence of characters (including none)
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
744 and @samp{?} matches any single character. However, matching is
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
745 implementation-dependent, and can be inaccurate when wildcards match
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
746 dashes in a long name. For reliable results, supply all 14 dashes and
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
747 use wildcards only within a field. Here is an example, which happens
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
748 to specify the font whose nickname is @samp{6x13}:
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
749
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
750 @smallexample
44326
c69907b4eb03 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 42750
diff changeset
751 emacs -fn \
c69907b4eb03 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 42750
diff changeset
752 "-misc-fixed-medium-r-semicondensed--13-*-*-*-c-60-iso8859-1" &
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
753 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
754
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
755 @noindent
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
756 You can also specify the font in your @file{.Xdefaults} file:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
757
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
758 @smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
759 emacs.font: -misc-fixed-medium-r-semicondensed--13-*-*-*-c-60-iso8859-1
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
760 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
761
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
762 Note that if you use a wildcard pattern on the command line, you
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
763 need to enclose it in single or double quotes, to prevent the shell
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
764 from accidentally expanding it into a list of file names. On the
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
765 other hand, you should not quote the name in the @file{.Xdefaults}
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
766 file.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
767
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
768 The default font used by Emacs (under X) is:
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
769
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
770 @smallexample
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
771 -adobe-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-1
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
772 @end smallexample
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
773
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
774 A long font name has the following form:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
775
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
776 @smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
777 -@var{maker}-@var{family}-@var{weight}-@var{slant}-@var{widthtype}-@var{style}@dots{}
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
778 @dots{}-@var{pixels}-@var{height}-@var{horiz}-@var{vert}-@var{spacing}-@var{width}-@var{registry}-@var{encoding}
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
779 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
780
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
781 @table @var
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
782 @item maker
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
783 This is the name of the font manufacturer.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
784 @item family
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
785 This is the name of the font family---for example, @samp{courier}.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
786 @item weight
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
787 This is normally @samp{bold}, @samp{medium} or @samp{light}. Other
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
788 words may appear here in some font names.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
789 @item slant
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
790 This is @samp{r} (roman), @samp{i} (italic), @samp{o} (oblique),
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
791 @samp{ri} (reverse italic), or @samp{ot} (other).
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
792 @item widthtype
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
793 This is normally @samp{condensed}, @samp{extended}, @samp{semicondensed}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
794 or @samp{normal}. Other words may appear here in some font names.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
795 @item style
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
796 This is an optional additional style name. Usually it is empty---most
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
797 long font names have two hyphens in a row at this point.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
798 @item pixels
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
799 This is the font height, in pixels.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
800 @item height
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
801 This is the font height on the screen, measured in tenths of a printer's
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
802 point---approximately 1/720 of an inch. In other words, it is the point
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
803 size of the font, times ten. For a given vertical resolution,
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
804 @var{height} and @var{pixels} are proportional; therefore, it is common
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
805 to specify just one of them and use @samp{*} for the other.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
806 @item horiz
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
807 This is the horizontal resolution, in pixels per inch, of the screen for
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
808 which the font is intended.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
809 @item vert
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
810 This is the vertical resolution, in pixels per inch, of the screen for
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
811 which the font is intended. Normally the resolution of the fonts on
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
812 your system is the right value for your screen; therefore, you normally
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
813 specify @samp{*} for this and @var{horiz}.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
814 @item spacing
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
815 This is @samp{m} (monospace), @samp{p} (proportional) or @samp{c}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
816 (character cell).
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
817 @item width
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
818 This is the average character width, in pixels, multiplied by ten.
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
819 @item registry
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
820 @itemx encoding
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
821 These together make up the X font character set that the font depicts.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
822 (X font character sets are not the same as Emacs charsets, but they
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
823 are solutions for the same problem.) You can use the
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
824 @command{xfontsel} program to check which choices you have. However,
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
825 normally you should use @samp{iso8859} for @var{registry} and @samp{1}
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
826 for @var{encoding}.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
827 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
828
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
829 @cindex listing system fonts
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
830 You will probably want to use a fixed-width default font---that is,
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
831 a font in which all characters have the same width. Any font with
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
832 @samp{m} or @samp{c} in the @var{spacing} field of the long name is a
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
833 fixed-width font. Here's how to use the @command{xlsfonts} program to
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
834 list all the fixed-width fonts available on your system:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
835
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
836 @example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
837 xlsfonts -fn '*x*' | egrep "^[0-9]+x[0-9]+"
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
838 xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-m*'
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
839 xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-c*'
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
840 @end example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
841
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
842 @noindent
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
843 To see what a particular font looks like, use the @command{xfd} command.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
844 For example:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
845
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
846 @example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
847 xfd -fn 6x13
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
848 @end example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
849
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
850 @noindent
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
851 displays the entire font @samp{6x13}.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
852
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
853 While running Emacs, you can set the font of the current frame
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
854 (@pxref{Frame Parameters}) or for a specific kind of text
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
855 (@pxref{Faces}).
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
856
42750
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
857 @node Colors
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
858 @appendixsec Window Color Options
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
859 @cindex color of window
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
860 @cindex text colors, from command line
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
861
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
862 @findex list-colors-display
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
863 @cindex available colors
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
864 On a color display, you can specify which color to use for various
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
865 parts of the Emacs display. To find out what colors are available on
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
866 your system, type @kbd{M-x list-colors-display}, or press
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
867 @kbd{C-Mouse-2} and select @samp{Display Colors} from the pop-up menu.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
868 If you do not specify colors, on windowed displays the default for the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
869 background is white and the default for all other colors is black. On a
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
870 monochrome display, the foreground is black, the background is white,
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
871 and the border is gray if the display supports that. On terminals, the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
872 background is usually black and the foreground is white.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
873
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
874 Here is a list of the command-line options for specifying colors:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
875
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
876 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
877 @item -fg @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
878 @opindex -fg
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
879 @itemx --foreground-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
880 @opindex --foreground-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
881 @cindex foreground color, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
882 Specify the foreground color. @var{color} should be a standard color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
883 name, or a numeric specification of the color's red, green, and blue
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
884 components as in @samp{#4682B4} or @samp{RGB:46/82/B4}.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
885 @item -bg @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
886 @opindex -bg
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
887 @itemx --background-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
888 @opindex --background-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
889 @cindex background color, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
890 Specify the background color.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
891 @item -bd @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
892 @opindex -bd
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
893 @itemx --border-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
894 @opindex --border-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
895 @cindex border color, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
896 Specify the color of the border of the X window.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
897 @item -cr @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
898 @opindex -cr
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
899 @itemx --cursor-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
900 @opindex --cursor-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
901 @cindex cursor color, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
902 Specify the color of the Emacs cursor which indicates where point is.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
903 @item -ms @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
904 @opindex -ms
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
905 @itemx --mouse-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
906 @opindex --mouse-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
907 @cindex mouse pointer color, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
908 Specify the color for the mouse cursor when the mouse is in the Emacs window.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
909 @item -r
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
910 @opindex -r
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
911 @itemx -rv
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
912 @opindex -rv
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
913 @itemx --reverse-video
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
914 @opindex --reverse-video
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
915 @cindex reverse video, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
916 Reverse video---swap the foreground and background colors.
42750
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
917 @item --color=@var{mode}
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
918 @opindex --color
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
919 @cindex standard colors on a character terminal
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
920 For a character terminal only, specify the mode of color support. The
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
921 parameter @var{mode} can be one of the following:
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
922 @table @samp
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
923 @item never
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
924 @itemx no
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
925 Don't use colors even if the terminal's capabilities specify color
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
926 support.
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
927 @item default
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
928 @itemx auto
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
929 Same as when @option{--color} is not used at all: Emacs detects at
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
930 startup whether the terminal supports colors, and if it does, turns on
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
931 colored display.
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
932 @item always
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
933 @itemx yes
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
934 @itemx ansi8
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
935 Turn on the color support unconditionally, and use color commands
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
936 specified by the ANSI escape sequences for the 8 standard colors.
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
937 @item @var{num}
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
938 Use color mode for @var{num} colors. If @var{num} is -1, turn off
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
939 color support (equivalent to @samp{never}); if it is 0, use the
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
940 default color support for this terminal (equivalent to @samp{auto});
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
941 otherwise use an appropriate standard mode for @var{num} colors. If
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
942 there is no mode that supports @var{num} colors, Emacs acts as if
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
943 @var{num} were 0, i.e.@: it uses the terminal's default color support
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
944 mode.
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
945 @end table
671f1c59f989 (Colors): Rename from "Colors X". All cross-references changed.
Eli Zaretskii <eliz@gnu.org>
parents: 42712
diff changeset
946 If @var{mode} is omitted, it defaults to @var{ansi8}.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
947 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
948
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
949 For example, to use a coral mouse cursor and a slate blue text cursor,
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
950 enter:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
951
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
952 @example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
953 emacs -ms coral -cr 'slate blue' &
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
954 @end example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
955
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
956 You can reverse the foreground and background colors through the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
957 @samp{-rv} option or with the X resource @samp{reverseVideo}.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
958
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
959 The @samp{-fg}, @samp{-bg}, and @samp{-rv} options function on
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
960 text-only terminals as well as on window systems.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
961
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
962 @node Window Size X
42712
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
963 @appendixsec Options for Window Size and Position
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
964 @cindex geometry of Emacs window
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
965 @cindex position and size of Emacs frame
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
966 @cindex width and height of Emacs frame
42712
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
967 @cindex specifying fullscreen for Emacs frame
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
968
42712
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
969 Here is a list of the command-line options for specifying size and
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 47323
diff changeset
970 position of the initial Emacs frame:
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
971
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
972 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
973 @item -g @var{width}x@var{height}@r{[@{}+-@r{@}}@var{xoffset}@r{@{}+-@r{@}}@var{yoffset}@r{]]}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
974 @opindex -g
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
975 @itemx --geometry=@var{width}x@var{height}@r{[@{}+-@r{@}}@var{xoffset}@r{@{}+-@r{@}}@var{yoffset}@r{]]}
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
976 @opindex --geometry
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
977 @cindex geometry, command-line argument
46202
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
978 Specify the size @var{width} and @var{height} (measured in character
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
979 columns and lines), and positions @var{xoffset} and @var{yoffset}
46202
abfe123bd6ff setenv allows $-substitution.
Richard M. Stallman <rms@gnu.org>
parents: 45933
diff changeset
980 (measured in pixels). This applies to all frames.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
981
42712
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
982 @item -fs
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
983 @opindex -fs
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
984 @itemx --fullscreen
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
985 @opindex --fullscreen
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
986 @cindex fullscreen, command-line argument
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
987 Specify that width and height shall be the size of the screen.
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
988
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
989 @item -fh
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
990 @opindex -fh
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
991 @itemx --fullheight
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
992 @opindex --fullheight
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
993 @cindex fullheight, command-line argument
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
994 Specify that the height shall be the height of the screen.
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
995
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
996 @item -fw
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
997 @opindex -fw
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
998 @itemx --fullwidth
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
999 @opindex --fullwidth
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1000 @cindex fullwidth, command-line argument
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1001 Specify that the width shall be the width of the screen.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1002 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1003
42712
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1004
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1005 @noindent
42712
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1006 In the @samp{--geometry} option, @code{@r{@{}+-@r{@}}} means either a plus
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1007 sign or a minus sign. A plus
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1008 sign before @var{xoffset} means it is the distance from the left side of
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1009 the screen; a minus sign means it counts from the right side. A plus
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1010 sign before @var{yoffset} means it is the distance from the top of the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1011 screen, and a minus sign there indicates the distance from the bottom.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1012 The values @var{xoffset} and @var{yoffset} may themselves be positive or
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1013 negative, but that doesn't change their meaning, only their direction.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1014
45933
8f591d9d9080 Add MS-Windows specific docs for envvars
Jason Rumney <jasonr@gnu.org>
parents: 45875
diff changeset
1015 Emacs uses the same units as @command{xterm} does to interpret the geometry.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1016 The @var{width} and @var{height} are measured in characters, so a large font
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1017 creates a larger frame than a small font. (If you specify a proportional
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1018 font, Emacs uses its maximum bounds width as the width unit.) The
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1019 @var{xoffset} and @var{yoffset} are measured in pixels.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1020
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1021 You do not have to specify all of the fields in the geometry
46717
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1022 specification. If you omit both @var{xoffset} and @var{yoffset}, the
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1023 window manager decides where to put the Emacs frame, possibly by
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1024 letting you place it with the mouse. For example, @samp{164x55}
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1025 specifies a window 164 columns wide, enough for two ordinary width
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1026 windows side by side, and 55 lines tall.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1027
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1028 The default width for Emacs is 80 characters and the default height is
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1029 40 lines. You can omit either the width or the height or both. If
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1030 you start the geometry with an integer, Emacs interprets it as the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1031 width. If you start with an @samp{x} followed by an integer, Emacs
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1032 interprets it as the height. Thus, @samp{81} specifies just the width;
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1033 @samp{x45} specifies just the height.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1034
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1035 If you start with @samp{+} or @samp{-}, that introduces an offset,
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1036 which means both sizes are omitted. Thus, @samp{-3} specifies the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1037 @var{xoffset} only. (If you give just one offset, it is always
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1038 @var{xoffset}.) @samp{+3-3} specifies both the @var{xoffset} and the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1039 @var{yoffset}, placing the frame near the bottom left of the screen.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1040
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1041 You can specify a default for any or all of the fields in
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1042 @file{.Xdefaults} file, and then override selected fields with a
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1043 @samp{--geometry} option.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1044
46717
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1045 Since the mode line and the echo area occupy the last 2 lines of the
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1046 frame, the height of the initial text window is 2 less than the height
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1047 specified in your geometry. In non-X-toolkit versions of Emacs, the
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1048 menu bar also takes one line of the specified number. But in the X
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1049 toolkit version, the menu bar is additional and does not count against
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1050 the specified height. The tool bar, if present, is also additional.
42712
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1051
46717
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1052 Enabling or disabling the menu bar or tool bar alters the amount of
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1053 space available for ordinary text. Therefore, if Emacs starts up with
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1054 a tool bar (which is the default), and handles the geometry
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1055 specification assuming there is a tool bar, and then your
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1056 @file{~/.emacs} file disables the tool bar, you will end up with a
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1057 frame geometry different from what you asked for. To get the intended
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1058 size with no tool bar, use an X resource to specify ``no tool bar''
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1059 (@pxref{Table of Resources}); then Emacs will already know there's no
46717
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1060 tool bar when it processes the specified geometry.
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1061
505956923015 Explain how enabling or disabling the tool bar affects specified geometry.
Richard M. Stallman <rms@gnu.org>
parents: 46202
diff changeset
1062 When using one of @samp{--fullscreen}, @samp{--fullwidth} or
42712
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1063 @samp{--fullheight} there may be some space around the frame
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1064 anyway. That is because Emacs rounds the sizes so they are an
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1065 even number of character heights and widths.
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1066
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1067 Some window managers have options that can make them ignore both
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1068 program-specified and user-specified positions (sawfish is one).
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1069 If these are set, Emacs fails to position the window correctly.
dced9cd23927 (Window Size X): Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 41374
diff changeset
1070
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1071 @node Borders X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1072 @appendixsec Internal and External Borders
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1073 @cindex borders (X Window System)
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1074
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1075 An Emacs frame has an internal border and an external border. The
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1076 internal border is an extra strip of the background color around the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1077 text portion of the frame. Emacs itself draws the internal border.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1078 The external border is added by the window manager outside the frame;
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1079 depending on the window manager you use, it may contain various boxes
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1080 you can click on to move or iconify the window.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1081
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1082 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1083 @item -ib @var{width}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1084 @opindex -ib
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1085 @itemx --internal-border=@var{width}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1086 @opindex --internal-border
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1087 @cindex internal border width, command-line argument
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1088 Specify @var{width} as the width of the internal border (between the text
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1089 and the main border), in pixels.
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1090
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1091 @item -bw @var{width}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1092 @opindex -bw
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1093 @itemx --border-width=@var{width}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1094 @opindex --border-width
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1095 @cindex main border width, command-line argument
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1096 Specify @var{width} as the width of the main border, in pixels.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1097 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1098
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1099 When you specify the size of the frame, that does not count the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1100 borders. The frame's position is measured from the outside edge of the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1101 external border.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1102
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1103 Use the @samp{-ib @var{n}} option to specify an internal border
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1104 @var{n} pixels wide. The default is 1. Use @samp{-bw @var{n}} to
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1105 specify the width of the external border (though the window manager may
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1106 not pay attention to what you specify). The default width of the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1107 external border is 2.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1108
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1109 @node Title X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1110 @appendixsec Frame Titles
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1111
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1112 An Emacs frame may or may not have a specified title. The frame
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1113 title, if specified, appears in window decorations and icons as the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1114 name of the frame. If an Emacs frame has no specified title, the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1115 default title has the form @samp{@var{invocation-name}@@@var{machine}}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1116 (if there is only one frame) or the selected window's buffer name (if
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1117 there is more than one frame).
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1118
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1119 You can specify a title for the initial Emacs frame with a command
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1120 line option:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1121
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1122 @table @samp
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1123 @item -T @var{title}
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1124 @opindex -T
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1125 @itemx --title=@var{title}
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1126 @opindex --title
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1127 @cindex frame title, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1128 Specify @var{title} as the title for the initial Emacs frame.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1129 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1130
41374
608e18d9fb18 Fix cross-references to "Resources".
Eli Zaretskii <eliz@gnu.org>
parents: 41369
diff changeset
1131 The @samp{--name} option (@pxref{Resources}) also specifies the title
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1132 for the initial Emacs frame.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1133
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1134 @node Icons X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1135 @appendixsec Icons
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1136 @cindex icons (X Window System)
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1137
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1138 Most window managers allow the user to ``iconify'' a frame, removing
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1139 it from sight, and leaving a small, distinctive ``icon'' window in its
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1140 place. Clicking on the icon window makes the frame itself appear again.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1141 If you have many clients running at once, you can avoid cluttering up
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1142 the screen by iconifying most of the clients.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1143
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1144 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1145 @item -i
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1146 @opindex -i
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1147 @itemx --icon-type
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1148 @opindex --icon-type
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1149 @cindex Emacs icon, a gnu
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1150 Use a picture of a gnu as the Emacs icon.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1151
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1152 @item -iconic
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1153 @opindex --iconic
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1154 @itemx --iconic
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1155 @cindex start iconified, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1156 Start Emacs in iconified state.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1157 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1158
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1159 The @samp{-i} or @samp{--icon-type} option tells Emacs to use an icon
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1160 window containing a picture of the GNU gnu. If omitted, Emacs lets the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1161 window manager choose what sort of icon to use---usually just a small
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1162 rectangle containing the frame's title.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1163
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1164 The @samp{-iconic} option tells Emacs to begin running as an icon,
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1165 rather than showing a frame right away. In this situation, the icon
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1166 is the only indication that Emacs has started; the text frame doesn't
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
1167 appear until you deiconify it.
89909
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1168
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1169 @node Misc X
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1170 @appendixsec Other Display Options
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1171
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1172 @table @samp
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1173 @item -hb
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1174 @opindex -hb
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1175 @itemx --horizontal-scroll-bars
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1176 @opindex --horizontal-scroll-bars
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1177 @cindex horizontal scroll bars, command-line argument
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1178 Enable horizontal scroll bars.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1179
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1180 @item -vb
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1181 @opindex -vb
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1182 @itemx --vertical-scroll-bars
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1183 @opindex --vertical-scroll-bars
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1184 @cindex vertical scroll bars, command-line argument
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1185 Enable vertical scroll bars.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1186
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1187 @item -lsp @var{pixels}
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1188 @opindex -lsp
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1189 @itemx --line-spacing=@var{pixels}
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1190 @opindex --line-spacing
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1191 @cindex line spacing, command-line argument
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1192 Specify @var{pixels} as additional space to put between lines, in pixels.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1193 @end table
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1194
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1195 The @samp{--xrm} option (@pxref{Resources}) specifies additional
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1196 X resource values.
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1197
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1198 @ignore
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1199 arch-tag: fffecd9e-7329-4a51-a3cc-dd4a9889340e
68c22ea6027c Sync to HEAD
Kenichi Handa <handa@m17n.org>
parents: 88123
diff changeset
1200 @end ignore