annotate man/cmdargs.texi @ 42374:0f5f05b4b9c0

(notice_overwritten_cursor): Don't depend on output_cursor and updated_area. Compare pixel coordinates with window's cursor pixel coordinates. (x_draw_glyphs, x_clear_end_of_line, show_mouse_face): Call notice_overwritten_cursor with new arg list. (show_mouse_face): Fix bug setting a row's mouse_face_p flag unconditionally.
author Gerd Moellmann <gerd@gnu.org>
date Fri, 28 Dec 2001 13:33:37 +0000
parents 608e18d9fb18
children dced9cd23927
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.
39287
3b40423b9355 Update the copyright years.
Eli Zaretskii <eliz@gnu.org>
parents: 39286
diff changeset
2 @c Copyright (C) 1985,86,87,93,94,95,1997,2001 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)
Dave Love <fx@gnu.org>
parents:
diff changeset
49 Most options specify how to initialize Emacs, or set parameters for
Dave Love <fx@gnu.org>
parents:
diff changeset
50 the Emacs session. We call them @dfn{initial options}. A few options
Dave Love <fx@gnu.org>
parents:
diff changeset
51 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
52 terminate Emacs. These are called @dfn{action options}. These and file
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
53 names together are called @dfn{action arguments}. Emacs processes all
Dave Love <fx@gnu.org>
parents:
diff changeset
54 the action arguments in the order they are written.
Dave Love <fx@gnu.org>
parents:
diff changeset
55
Dave Love <fx@gnu.org>
parents:
diff changeset
56 @menu
Dave Love <fx@gnu.org>
parents:
diff changeset
57 * Action Arguments:: Arguments to visit files, load libraries,
Dave Love <fx@gnu.org>
parents:
diff changeset
58 and call functions.
Dave Love <fx@gnu.org>
parents:
diff changeset
59 * Initial Options:: Arguments that take effect while starting Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
60 * Command Example:: Examples of using command line arguments.
Dave Love <fx@gnu.org>
parents:
diff changeset
61 * Resume Arguments:: Specifying arguments when you resume a running Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
62 * 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
63 * Display X:: Changing the default display and using remote login.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
64 * Font X:: Choosing a font for text, under X.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
65 * Colors X:: Choosing colors, under X.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
66 * Window Size X:: Start-up window size, under X.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
67 * Borders X:: Internal and external borders, under X.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
68 * 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
69 * Icons X:: Choosing what sort of icon to use, under X.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
70 @end menu
Dave Love <fx@gnu.org>
parents:
diff changeset
71
Dave Love <fx@gnu.org>
parents:
diff changeset
72 @node Action Arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
73 @appendixsec Action Arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
74
Dave Love <fx@gnu.org>
parents:
diff changeset
75 Here is a table of the action arguments and options:
Dave Love <fx@gnu.org>
parents:
diff changeset
76
Dave Love <fx@gnu.org>
parents:
diff changeset
77 @table @samp
Dave Love <fx@gnu.org>
parents:
diff changeset
78 @item @var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
79 @opindex --visit
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
80 @itemx --visit=@var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
81 @opindex --file
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
82 @itemx --file=@var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
83 @cindex visiting files, command-line argument
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
84 Visit @var{file} using @code{find-file}. @xref{Visiting}.
Dave Love <fx@gnu.org>
parents:
diff changeset
85
Dave Love <fx@gnu.org>
parents:
diff changeset
86 @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
87 @opindex +@var{linenum}
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
88 Visit @var{file} using @code{find-file}, then go to line number
Dave Love <fx@gnu.org>
parents:
diff changeset
89 @var{linenum} in it.
Dave Love <fx@gnu.org>
parents:
diff changeset
90
38466
7f9fe7268ee4 Add description of +LINE:COLUMN.
Gerd Moellmann <gerd@gnu.org>
parents: 37835
diff changeset
91 @item +@var{linenum}:@var{columnnum} @var{file}
7f9fe7268ee4 Add description of +LINE:COLUMN.
Gerd Moellmann <gerd@gnu.org>
parents: 37835
diff changeset
92 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
93 @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
94
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
95 @need 3000
Dave Love <fx@gnu.org>
parents:
diff changeset
96 @item -l @var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
97 @opindex -l
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
98 @itemx --load=@var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
99 @opindex --load
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
100 @cindex loading Lisp libraries, command-line argument
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
101 Load a Lisp library named @var{file} with the function @code{load}.
Dave Love <fx@gnu.org>
parents:
diff changeset
102 @xref{Lisp Libraries}. The library can be found either in the current
Dave Love <fx@gnu.org>
parents:
diff changeset
103 directory, or in the Emacs library search path as specified
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
104 with @env{EMACSLOADPATH} (@pxref{General Variables}).
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
105
Dave Love <fx@gnu.org>
parents:
diff changeset
106 @item -f @var{function}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
107 @opindex -f
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
108 @itemx --funcall=@var{function}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
109 @opindex --funcall
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
110 @cindex call Lisp functions, command-line argument
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
111 Call Lisp function @var{function} with no arguments.
Dave Love <fx@gnu.org>
parents:
diff changeset
112
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
113 @item --eval=@var{expression}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
114 @opindex --eval
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
115 @itemx --execute=@var{expression}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
116 @opindex --execute
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
117 @cindex evaluate expression, command-line argument
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
118 Evaluate Lisp expression @var{expression}.
Dave Love <fx@gnu.org>
parents:
diff changeset
119
Dave Love <fx@gnu.org>
parents:
diff changeset
120 @item --insert=@var{file}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
121 @opindex --insert
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
122 @cindex insert file contents, command-line argument
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
123 Insert the contents of @var{file} into the current buffer. This is like
Dave Love <fx@gnu.org>
parents:
diff changeset
124 what @kbd{M-x insert-file} does. @xref{Misc File Ops}.
Dave Love <fx@gnu.org>
parents:
diff changeset
125
Dave Love <fx@gnu.org>
parents:
diff changeset
126 @item --kill
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
127 @opindex --kill
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
128 Exit from Emacs without asking for confirmation.
Dave Love <fx@gnu.org>
parents:
diff changeset
129 @end table
Dave Love <fx@gnu.org>
parents:
diff changeset
130
Dave Love <fx@gnu.org>
parents:
diff changeset
131 @vindex command-line-args
Dave Love <fx@gnu.org>
parents:
diff changeset
132 The init file can access the values of the action arguments as the
Dave Love <fx@gnu.org>
parents:
diff changeset
133 elements of a list in the variable @code{command-line-args}. The init
Dave Love <fx@gnu.org>
parents:
diff changeset
134 file can override the normal processing of the action arguments, or
Dave Love <fx@gnu.org>
parents:
diff changeset
135 define new ones, by reading and setting this variable.
Dave Love <fx@gnu.org>
parents:
diff changeset
136
Dave Love <fx@gnu.org>
parents:
diff changeset
137 @node Initial Options
Dave Love <fx@gnu.org>
parents:
diff changeset
138 @appendixsec Initial Options
Dave Love <fx@gnu.org>
parents:
diff changeset
139
Dave Love <fx@gnu.org>
parents:
diff changeset
140 The initial options specify parameters for the Emacs session. This
Dave Love <fx@gnu.org>
parents:
diff changeset
141 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
142 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
143 sections.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
144
Dave Love <fx@gnu.org>
parents:
diff changeset
145 Some initial options affect the loading of init files. The normal
Dave Love <fx@gnu.org>
parents:
diff changeset
146 actions of Emacs are to first load @file{site-start.el} if it exists,
Dave Love <fx@gnu.org>
parents:
diff changeset
147 then your own init file @file{~/.emacs} if it exists, and finally
Dave Love <fx@gnu.org>
parents:
diff changeset
148 @file{default.el} if it exists; certain options prevent loading of some
Dave Love <fx@gnu.org>
parents:
diff changeset
149 of these files or substitute other files for them.
Dave Love <fx@gnu.org>
parents:
diff changeset
150
Dave Love <fx@gnu.org>
parents:
diff changeset
151 @table @samp
Dave Love <fx@gnu.org>
parents:
diff changeset
152 @item -t @var{device}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
153 @opindex -t
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
154 @itemx --terminal=@var{device}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
155 @opindex --terminal
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
156 @cindex device for Emacs terminal I/O
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
157 Use @var{device} as the device for terminal input and output.
Dave Love <fx@gnu.org>
parents:
diff changeset
158
Dave Love <fx@gnu.org>
parents:
diff changeset
159 @item -d @var{display}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
160 @opindex -d
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
161 @itemx --display=@var{display}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
162 @opindex --display
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
163 @cindex display for Emacs frame
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
164 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
165 the initial Emacs frame. @xref{Display X}, for more details.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
166
Dave Love <fx@gnu.org>
parents:
diff changeset
167 @item -nw
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
168 @opindex -nw
40563
62cd2910ba80 (Initial Options): Document command line option --no-window-system instead
Pavel Janík <Pavel@Janik.cz>
parents: 40524
diff changeset
169 @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
170 @opindex --no-window-system
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
171 @cindex disable window system
33012
df207c5f631f (Colors X): Document support for -fg, -bg, and -rv
Eli Zaretskii <eliz@gnu.org>
parents: 31169
diff changeset
172 Don't communicate directly with the window system, disregarding the
40652
8dc305c093c1 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 40584
diff changeset
173 @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
174 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
175 and input.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
176
Dave Love <fx@gnu.org>
parents:
diff changeset
177 @need 3000
Dave Love <fx@gnu.org>
parents:
diff changeset
178 @cindex batch mode
Dave Love <fx@gnu.org>
parents:
diff changeset
179 @item -batch
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
180 @opindex --batch
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
181 @itemx --batch
Dave Love <fx@gnu.org>
parents:
diff changeset
182 Run Emacs in @dfn{batch mode}, which means that the text being edited is
Dave Love <fx@gnu.org>
parents:
diff changeset
183 not displayed and the standard terminal interrupt characters such as
Dave Love <fx@gnu.org>
parents:
diff changeset
184 @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
185 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
186 in the echo area under program control, and functions which would
6a6141e694a5 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36841
diff changeset
187 normally read from the minibuffer take their input from @code{stdin}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
188
Dave Love <fx@gnu.org>
parents:
diff changeset
189 Batch mode is used for running programs written in Emacs Lisp from
Dave Love <fx@gnu.org>
parents:
diff changeset
190 shell scripts, makefiles, and so on. Normally the @samp{-l} option
Dave Love <fx@gnu.org>
parents:
diff changeset
191 or @samp{-f} option will be used as well, to invoke a Lisp program
Dave Love <fx@gnu.org>
parents:
diff changeset
192 to do the batch processing.
Dave Love <fx@gnu.org>
parents:
diff changeset
193
38745
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
194 @samp{-batch} implies @samp{-q} (do not load an init file). It also
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
195 causes Emacs to exit after processing all the command options. In
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
196 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
197 been explicitly requested.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
198
Dave Love <fx@gnu.org>
parents:
diff changeset
199 @item -q
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
200 @opindex -q
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
201 @itemx --no-init-file
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
202 @opindex --no-init-file
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
203 @cindex bypassing init and site-start file
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
204 @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
205 @cindex @file{default.el} file, not loading
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
206 Do not load your Emacs init file @file{~/.emacs}, or @file{default.el}
38659
492c796cd5af Fix "allows to save".
Eli Zaretskii <eliz@gnu.org>
parents: 38648
diff changeset
207 either. 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
208 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
209 @xref{Easy Customization}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
210
Dave Love <fx@gnu.org>
parents:
diff changeset
211 @item --no-site-file
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
212 @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
213 @cindex @file{site-start.el} file, not loading
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
214 Do not load @file{site-start.el}. The options @samp{-q}, @samp{-u}
Dave Love <fx@gnu.org>
parents:
diff changeset
215 and @samp{-batch} have no effect on the loading of this file---this is
Dave Love <fx@gnu.org>
parents:
diff changeset
216 the only option that blocks it.
Dave Love <fx@gnu.org>
parents:
diff changeset
217
Dave Love <fx@gnu.org>
parents:
diff changeset
218 @item -u @var{user}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
219 @opindex -u
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
220 @itemx --user=@var{user}
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
221 @opindex --user
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
222 @cindex load init file of another user
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
223 Load @var{user}'s Emacs init file @file{~@var{user}/.emacs} instead of
Dave Love <fx@gnu.org>
parents:
diff changeset
224 your own.
Dave Love <fx@gnu.org>
parents:
diff changeset
225
Dave Love <fx@gnu.org>
parents:
diff changeset
226 @item --debug-init
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
227 @opindex --debug-init
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
228 @cindex errors in init file
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
229 Enable the Emacs Lisp debugger for errors in the init file.
Dave Love <fx@gnu.org>
parents:
diff changeset
230
Dave Love <fx@gnu.org>
parents:
diff changeset
231 @item --unibyte
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
232 @opindex --unibyte
31142
7d0a8b91a6c0 Mention that Lisp files are normally read as multibyte.
Eli Zaretskii <eliz@gnu.org>
parents: 30967
diff changeset
233 @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
234 Do almost everything with single-byte buffers and strings.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
235 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
236 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
237 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
238 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
239 variable @env{EMACS_UNIBYTE} has the same effect.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
240
Dave Love <fx@gnu.org>
parents:
diff changeset
241 @item --multibyte
37451
ff30b541575a Add @opindex entries to index all command-line options.
Eli Zaretskii <eliz@gnu.org>
parents: 37425
diff changeset
242 @opindex --multibyte
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
243 Inhibit the effect of @env{EMACS_UNIBYTE}, so that Emacs
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
244 uses multibyte characters by default, as usual.
Dave Love <fx@gnu.org>
parents:
diff changeset
245 @end table
Dave Love <fx@gnu.org>
parents:
diff changeset
246
Dave Love <fx@gnu.org>
parents:
diff changeset
247 @node Command Example
Dave Love <fx@gnu.org>
parents:
diff changeset
248 @appendixsec Command Argument Example
Dave Love <fx@gnu.org>
parents:
diff changeset
249
Dave Love <fx@gnu.org>
parents:
diff changeset
250 Here is an example of using Emacs with arguments and options. It
Dave Love <fx@gnu.org>
parents:
diff changeset
251 assumes you have a Lisp program file called @file{hack-c.el} which, when
Dave Love <fx@gnu.org>
parents:
diff changeset
252 loaded, performs some useful operation on the current buffer, expected
Dave Love <fx@gnu.org>
parents:
diff changeset
253 to be a C program.
Dave Love <fx@gnu.org>
parents:
diff changeset
254
Dave Love <fx@gnu.org>
parents:
diff changeset
255 @example
Dave Love <fx@gnu.org>
parents:
diff changeset
256 emacs -batch foo.c -l hack-c -f save-buffer >& log
Dave Love <fx@gnu.org>
parents:
diff changeset
257 @end example
Dave Love <fx@gnu.org>
parents:
diff changeset
258
Dave Love <fx@gnu.org>
parents:
diff changeset
259 @noindent
Dave Love <fx@gnu.org>
parents:
diff changeset
260 This says to visit @file{foo.c}, load @file{hack-c.el} (which makes
Dave Love <fx@gnu.org>
parents:
diff changeset
261 changes in the visited file), save @file{foo.c} (note that
Dave Love <fx@gnu.org>
parents:
diff changeset
262 @code{save-buffer} is the function that @kbd{C-x C-s} is bound to), and
Dave Love <fx@gnu.org>
parents:
diff changeset
263 then exit back to the shell (because of @samp{-batch}). @samp{-batch}
Dave Love <fx@gnu.org>
parents:
diff changeset
264 also guarantees there will be no problem redirecting output to
Dave Love <fx@gnu.org>
parents:
diff changeset
265 @file{log}, because Emacs will not assume that it has a display terminal
Dave Love <fx@gnu.org>
parents:
diff changeset
266 to work with.
Dave Love <fx@gnu.org>
parents:
diff changeset
267
Dave Love <fx@gnu.org>
parents:
diff changeset
268 @node Resume Arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
269 @appendixsec Resuming Emacs with Arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
270
Dave Love <fx@gnu.org>
parents:
diff changeset
271 You can specify action arguments for Emacs when you resume it after
Dave Love <fx@gnu.org>
parents:
diff changeset
272 a suspension. To prepare for this, put the following code in your
Dave Love <fx@gnu.org>
parents:
diff changeset
273 @file{.emacs} file (@pxref{Hooks}):
Dave Love <fx@gnu.org>
parents:
diff changeset
274
37835
a4f04496cfb0 Update description of visiting multiple files with the command line.
Richard M. Stallman <rms@gnu.org>
parents: 37796
diff changeset
275 @c `resume-suspend-hook' is correct. It is the name of a function.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
276 @example
Dave Love <fx@gnu.org>
parents:
diff changeset
277 (add-hook 'suspend-hook 'resume-suspend-hook)
Dave Love <fx@gnu.org>
parents:
diff changeset
278 (add-hook 'suspend-resume-hook 'resume-process-args)
Dave Love <fx@gnu.org>
parents:
diff changeset
279 @end example
Dave Love <fx@gnu.org>
parents:
diff changeset
280
Dave Love <fx@gnu.org>
parents:
diff changeset
281 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
282 @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
283 (if you use bash as your shell). These scripts define an alias named
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
284 @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
285 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
286 @file{etc} subdirectory of the Emacs distribution.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
287
Dave Love <fx@gnu.org>
parents:
diff changeset
288 Only action arguments work properly when you resume Emacs. Initial
Dave Love <fx@gnu.org>
parents:
diff changeset
289 arguments are not recognized---it's too late to execute them anyway.
Dave Love <fx@gnu.org>
parents:
diff changeset
290
Dave Love <fx@gnu.org>
parents:
diff changeset
291 Note that resuming Emacs (with or without arguments) must be done from
Dave Love <fx@gnu.org>
parents:
diff changeset
292 within the shell that is the parent of the Emacs job. This is why
Dave Love <fx@gnu.org>
parents:
diff changeset
293 @code{edit} is an alias rather than a program or a shell script. It is
Dave Love <fx@gnu.org>
parents:
diff changeset
294 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
295 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
296 be made the value of @env{EDITOR}, for example. Therefore, this feature
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
297 does not take the place of the Emacs Server feature (@pxref{Emacs
Dave Love <fx@gnu.org>
parents:
diff changeset
298 Server}).
Dave Love <fx@gnu.org>
parents:
diff changeset
299
Dave Love <fx@gnu.org>
parents:
diff changeset
300 The aliases use the Emacs Server feature if you appear to have a
Dave Love <fx@gnu.org>
parents:
diff changeset
301 server Emacs running. However, they cannot determine this with complete
Dave Love <fx@gnu.org>
parents:
diff changeset
302 accuracy. They may think that a server is still running when in
Dave Love <fx@gnu.org>
parents:
diff changeset
303 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
304 @file{/tmp/esrv@dots{}} still exists. If this happens, find that
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
305 file and delete it.
Dave Love <fx@gnu.org>
parents:
diff changeset
306
Dave Love <fx@gnu.org>
parents:
diff changeset
307 @node Environment
Dave Love <fx@gnu.org>
parents:
diff changeset
308 @appendixsec Environment Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
309 @cindex environment variables
Dave Love <fx@gnu.org>
parents:
diff changeset
310
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
311 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
312 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
313 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
314 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
315 letters only. The values are all text strings.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
316
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
317 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
318 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
319 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
320 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
321 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
322 software) inherit the environment from Emacs, too.
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
323
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
324 @findex setenv
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
325 @findex getenv
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
326 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
327 environment variable. @kbd{M-x setenv} sets a variable in the Emacs
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
328 environment. The way to set environment variables outside of Emacs
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
329 depends on the operating system, and especially the shell that you are
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
330 using. For example, here's how to set the environment variable
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
331 @env{ORGANIZATION} to @samp{not very much} using Bash:
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
332
Dave Love <fx@gnu.org>
parents:
diff changeset
333 @example
Dave Love <fx@gnu.org>
parents:
diff changeset
334 export ORGANIZATION="not very much"
Dave Love <fx@gnu.org>
parents:
diff changeset
335 @end example
Dave Love <fx@gnu.org>
parents:
diff changeset
336
Dave Love <fx@gnu.org>
parents:
diff changeset
337 @noindent
Dave Love <fx@gnu.org>
parents:
diff changeset
338 and here's how to do it in csh or tcsh:
Dave Love <fx@gnu.org>
parents:
diff changeset
339
Dave Love <fx@gnu.org>
parents:
diff changeset
340 @example
Dave Love <fx@gnu.org>
parents:
diff changeset
341 setenv ORGANIZATION "not very much"
Dave Love <fx@gnu.org>
parents:
diff changeset
342 @end example
Dave Love <fx@gnu.org>
parents:
diff changeset
343
38648
66e920bfc687 Fix typos; from Eric Hanchrow <offby1@blarg.net>.
Eli Zaretskii <eliz@gnu.org>
parents: 38466
diff changeset
344 When Emacs is uses the X Window System, it inherits the use
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
345 of a large number of environment variables from the X libraries. See
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
346 the X documentation for more information.
Dave Love <fx@gnu.org>
parents:
diff changeset
347
Dave Love <fx@gnu.org>
parents:
diff changeset
348 @menu
Dave Love <fx@gnu.org>
parents:
diff changeset
349 * General Variables:: Environment variables that all versions of Emacs use.
Dave Love <fx@gnu.org>
parents:
diff changeset
350 * Misc Variables:: Certain system-specific variables.
Dave Love <fx@gnu.org>
parents:
diff changeset
351 @end menu
Dave Love <fx@gnu.org>
parents:
diff changeset
352
Dave Love <fx@gnu.org>
parents:
diff changeset
353 @node General Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
354 @appendixsubsec General Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
355
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
356 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
357 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
358 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
359 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
360 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
361
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
362 @table @env
36362
193e0fa6c140 (General Variables): Fix a typo in the CDPATH entry.
Eli Zaretskii <eliz@gnu.org>
parents: 36346
diff changeset
363 @item CDPATH
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
364 Used by the @code{cd} command to search for the directory you specify,
Dave Love <fx@gnu.org>
parents:
diff changeset
365 when you specify a relative directory name.
Dave Love <fx@gnu.org>
parents:
diff changeset
366 @item EMACS_UNIBYTE
31142
7d0a8b91a6c0 Mention that Lisp files are normally read as multibyte.
Eli Zaretskii <eliz@gnu.org>
parents: 30967
diff changeset
367 @cindex unibyte operation, environment variable
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
368 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
369 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
370 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
371 invocation. @xref{Initial Options}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
372 @item EMACSDATA
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
373 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
374 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
375 @item EMACSDOC
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
376 Directory for the documentation string file,
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
377 @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
378 variable @code{doc-directory}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
379 @item EMACSLOADPATH
36364
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
380 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
381 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
382 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
383 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
384 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
385 to search for Emacs Lisp files---used to initialize @code{load-path}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
386 @item EMACSPATH
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
387 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
388 files---used to initialize @code{exec-path}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
389 @item ESHELL
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
390 Used for shell-mode to override the @env{SHELL} environment variable.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
391 @item HISTFILE
Dave Love <fx@gnu.org>
parents:
diff changeset
392 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
393 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
394 @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
395 otherwise.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
396 @item HOME
Dave Love <fx@gnu.org>
parents:
diff changeset
397 The location of the user's files in the directory tree; used for
Dave Love <fx@gnu.org>
parents:
diff changeset
398 expansion of file names starting with a tilde (@file{~}). On MS-DOS, it
Dave Love <fx@gnu.org>
parents:
diff changeset
399 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
400 removed from the end if it was present. On Windows, the default value
5bd8f163760f (General Variables): Document the default value of $HOME on Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 36297
diff changeset
401 of @code{HOME} is @file{C:/}, the root directory of drive @file{C:}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
402 @item HOSTNAME
Dave Love <fx@gnu.org>
parents:
diff changeset
403 The name of the machine that Emacs is running on.
Dave Love <fx@gnu.org>
parents:
diff changeset
404 @item INCPATH
Dave Love <fx@gnu.org>
parents:
diff changeset
405 A colon-separated list of directories. Used by the @code{complete} package
Dave Love <fx@gnu.org>
parents:
diff changeset
406 to search for files.
Dave Love <fx@gnu.org>
parents:
diff changeset
407 @item INFOPATH
36295
1203ee52391f (General Variables) <EMACSDOC>: It's used to
Gerd Moellmann <gerd@gnu.org>
parents: 36293
diff changeset
408 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
409 @item LC_ALL
37085
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
410 @itemx LC_COLLATE
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
411 @itemx LC_CTYPE
37085
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
412 @itemx LC_MESSAGES
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
413 @itemx LC_MONETARY
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
414 @itemx LC_NUMERIC
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
415 @itemx LC_TIME
26140
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 25829
diff changeset
416 @itemx LANG
37085
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
417 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
418 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
419 @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
420 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
421 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
422 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
423 @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
424 @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
425 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
426
37085
cce9b46e707b (General Variables): Update the docs according to current behavior
Eli Zaretskii <eliz@gnu.org>
parents: 36875
diff changeset
427 The value of the LC_CTYPE category is
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
428 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
429 @code{locale-charset-language-names}, and
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
430 @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
431 environment and coding system. @xref{Language Environments}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
432 @item LOGNAME
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
433 The user's login name. See also @env{USER}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
434 @item MAIL
Dave Love <fx@gnu.org>
parents:
diff changeset
435 The name of the user's system mail inbox.
Dave Love <fx@gnu.org>
parents:
diff changeset
436 @item MAILRC
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
437 Name of file containing mail aliases. (The default is
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
438 @file{~/.mailrc}.)
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
439 @item MH
36146
885408f5ce84 New general discussion of the environment.
Richard M. Stallman <rms@gnu.org>
parents: 35490
diff changeset
440 Name of setup file for the mh system. (The default is @file{~/.mh_profile}.)
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
441 @item NAME
Dave Love <fx@gnu.org>
parents:
diff changeset
442 The real-world name of the user.
Dave Love <fx@gnu.org>
parents:
diff changeset
443 @item NNTPSERVER
36293
1bca8e306103 (General Variables): Remove description of
Gerd Moellmann <gerd@gnu.org>
parents: 36186
diff changeset
444 The name of the news server. Used by the mh and Gnus packages.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
445 @item ORGANIZATION
Dave Love <fx@gnu.org>
parents:
diff changeset
446 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
447 `Organization:' header in your posts from the Gnus package.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
448 @item PATH
36364
fca71f0d9dc4 (General Variables): Add a footnote that all *PATH variables use
Eli Zaretskii <eliz@gnu.org>
parents: 36363
diff changeset
449 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
450 is used to initialize the Emacs Lisp variable @code{exec-path}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
451 @item PWD
Dave Love <fx@gnu.org>
parents:
diff changeset
452 If set, this should be the default directory when Emacs was started.
Dave Love <fx@gnu.org>
parents:
diff changeset
453 @item REPLYTO
Dave Love <fx@gnu.org>
parents:
diff changeset
454 If set, this specifies an initial value for the variable
Dave Love <fx@gnu.org>
parents:
diff changeset
455 @code{mail-default-reply-to}. @xref{Mail Headers}.
Dave Love <fx@gnu.org>
parents:
diff changeset
456 @item SAVEDIR
Dave Love <fx@gnu.org>
parents:
diff changeset
457 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
458 Used by the Gnus package.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
459 @item SHELL
Dave Love <fx@gnu.org>
parents:
diff changeset
460 The name of an interpreter used to parse and execute programs run from
Dave Love <fx@gnu.org>
parents:
diff changeset
461 inside Emacs.
33017
4c7241b226fc Document that if $TERM says we are on xterm, the default background
Eli Zaretskii <eliz@gnu.org>
parents: 33012
diff changeset
462 @cindex background mode, on @code{xterm}
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
463 @item TERM
38745
5464ee1ba8e2 Minor cleanups.
Richard M. Stallman <rms@gnu.org>
parents: 38669
diff changeset
464 The type of the terminal that Emacs is using. This variable must be
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
465 set unless Emacs is run in batch mode. On MS-DOS, it defaults to
Dave Love <fx@gnu.org>
parents:
diff changeset
466 @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
467 handles the machine's own display. If the value of @env{TERM} indicates
4c7241b226fc Document that if $TERM says we are on xterm, the default background
Eli Zaretskii <eliz@gnu.org>
parents: 33012
diff changeset
468 that Emacs runs in non-windowed mode from @code{xterm} or a similar
4c7241b226fc Document that if $TERM says we are on xterm, the default background
Eli Zaretskii <eliz@gnu.org>
parents: 33012
diff changeset
469 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
470 Emacs will choose colors that are appropriate for a light background.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
471 @item TERMCAP
Dave Love <fx@gnu.org>
parents:
diff changeset
472 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
473 terminal specified by the @env{TERM} variable. This defaults to
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
474 @file{/etc/termcap}.
Dave Love <fx@gnu.org>
parents:
diff changeset
475 @item TMPDIR
Dave Love <fx@gnu.org>
parents:
diff changeset
476 Used by the Emerge package as a prefix for temporary files.
Dave Love <fx@gnu.org>
parents:
diff changeset
477 @item TZ
36186
e391cbe3a2fe Correction for TZ on Microsoft systems.
Richard M. Stallman <rms@gnu.org>
parents: 36146
diff changeset
478 This specifies the current time zone and possibly also daylight
36617
756d21b874ec (General Variables): "daylight savings" -> "daylight saving".
Eli Zaretskii <eliz@gnu.org>
parents: 36544
diff changeset
479 saving time information. On MS-DOS, if @code{TZ} is not set in the
36186
e391cbe3a2fe Correction for TZ on Microsoft systems.
Richard M. Stallman <rms@gnu.org>
parents: 36146
diff changeset
480 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
481 appropriate for the country code returned by DOS. On MS-Windows, Emacs
36186
e391cbe3a2fe Correction for TZ on Microsoft systems.
Richard M. Stallman <rms@gnu.org>
parents: 36146
diff changeset
482 does not use @code{TZ} at all.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
483 @item USER
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
484 The user's login name. See also @env{LOGNAME}. On MS-DOS, this
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
485 defaults to @samp{root}.
Dave Love <fx@gnu.org>
parents:
diff changeset
486 @item VERSION_CONTROL
Dave Love <fx@gnu.org>
parents:
diff changeset
487 Used to initialize the @code{version-control} variable (@pxref{Backup
Dave Love <fx@gnu.org>
parents:
diff changeset
488 Names}).
Dave Love <fx@gnu.org>
parents:
diff changeset
489 @end table
Dave Love <fx@gnu.org>
parents:
diff changeset
490
Dave Love <fx@gnu.org>
parents:
diff changeset
491 @node Misc Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
492 @appendixsubsec Miscellaneous Variables
Dave Love <fx@gnu.org>
parents:
diff changeset
493
Dave Love <fx@gnu.org>
parents:
diff changeset
494 These variables are used only on particular configurations:
Dave Love <fx@gnu.org>
parents:
diff changeset
495
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
496 @table @env
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
497 @item COMSPEC
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
498 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
499 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
500 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
501 variable.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
502
Dave Love <fx@gnu.org>
parents:
diff changeset
503 @item NAME
29107
203ba1f77b7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26236
diff changeset
504 On MS-DOS, this variable defaults to the value of the @env{USER}
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
505 variable.
Dave Love <fx@gnu.org>
parents:
diff changeset
506
Dave Love <fx@gnu.org>
parents:
diff changeset
507 @item TEMP
Dave Love <fx@gnu.org>
parents:
diff changeset
508 @itemx TMP
36500
3dfa039c6a8c Many typo-fixes and clarifications from Dr Francis J. Wright
Eli Zaretskii <eliz@gnu.org>
parents: 36364
diff changeset
509 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
510 storing temporary files in.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
511
Dave Love <fx@gnu.org>
parents:
diff changeset
512 @item EMACSTEST
Dave Love <fx@gnu.org>
parents:
diff changeset
513 On MS-DOS, this specifies a file to use to log the operation of the
Dave Love <fx@gnu.org>
parents:
diff changeset
514 internal terminal emulator. This feature is useful for submitting bug
Dave Love <fx@gnu.org>
parents:
diff changeset
515 reports.
Dave Love <fx@gnu.org>
parents:
diff changeset
516
Dave Love <fx@gnu.org>
parents:
diff changeset
517 @item EMACSCOLORS
36502
3f0def4a4210 Minor cleanups. Rename `Motif Resources' node to `LessTif Resources'.
Richard M. Stallman <rms@gnu.org>
parents: 36500
diff changeset
518 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
519 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
520 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
521
3f0def4a4210 Minor cleanups. Rename `Motif Resources' node to `LessTif Resources'.
Richard M. Stallman <rms@gnu.org>
parents: 36500
diff changeset
522 The value of this variable should be the two-character encoding of the
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
523 foreground (the first character) and the background (the second
Dave Love <fx@gnu.org>
parents:
diff changeset
524 character) colors of the default face. Each character should be the
Dave Love <fx@gnu.org>
parents:
diff changeset
525 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
526 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
527 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
528 7 is the code of the light gray color.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
529
Dave Love <fx@gnu.org>
parents:
diff changeset
530 The PC display usually supports only eight background colors. However,
Dave Love <fx@gnu.org>
parents:
diff changeset
531 Emacs switches the DOS display to a mode where all 16 colors can be used
Dave Love <fx@gnu.org>
parents:
diff changeset
532 for the background, so all four bits of the background color are
Dave Love <fx@gnu.org>
parents:
diff changeset
533 actually used.
Dave Love <fx@gnu.org>
parents:
diff changeset
534
Dave Love <fx@gnu.org>
parents:
diff changeset
535 @item WINDOW_GFX
Dave Love <fx@gnu.org>
parents:
diff changeset
536 Used when initializing the Sun windows system.
Dave Love <fx@gnu.org>
parents:
diff changeset
537 @end table
41369
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
538
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
539 @node Display X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
540 @appendixsec Specifying the Display Name
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
541 @cindex display name (X Window System)
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
542 @cindex @env{DISPLAY} environment variable
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
543
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
544 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
545 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
546 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
547 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
548 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
549 remotely, displaying on your local screen.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
550
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
551 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
552 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
553 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
554 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
555 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
556
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
557 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
558 @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
559 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
560 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
561 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
562 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
563 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
564 included, @var{screen} is usually zero.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
565
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
566 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
567 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
568 @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
569
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
570 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
571 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
572 @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
573
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
574 @smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
575 emacs --display=glasperle:0 &
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
576 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
577
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
578 You can inhibit the direct use of the window system and GUI with the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
579 @samp{-nw} option. It tells Emacs to display using ordinary ASCII on
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
580 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
581
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
582 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
583 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
584 produces messages like this:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
585
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
586 @smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
587 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
588 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
589
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
590 @noindent
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
591 You might be able to overcome this problem by using the @code{xhost}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
592 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
593 remote machine.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
594
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
595 @node Font X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
596 @appendixsec Font Specification Options
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
597 @cindex font name (X Window System)
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
598
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
599 By default, Emacs displays text in the font named @samp{9x15}, which
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
600 makes each character nine pixels wide and fifteen pixels high. You can
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
601 specify a different font on your command line through the option
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
602 @samp{-fn @var{name}} (or @samp{--font}, which is an alias for
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
603 @samp{-fn}).
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
604
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
605 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
606 @item -fn @var{name}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
607 @opindex -fn
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
608 @itemx --font=@var{name}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
609 @opindex --font
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
610 @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
611 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
612 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
613
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
614 Under X, each font has a long name which consists of eleven words or
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
615 numbers, separated by dashes. Some fonts also have shorter
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
616 nicknames---@samp{9x15} is such a nickname. You can use either kind of
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
617 name. You can use wildcard patterns for the font name; then Emacs lets
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
618 X choose one of the fonts that match the pattern. Here is an example,
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
619 which happens to specify the font whose nickname is @samp{6x13}:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
620
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
621 @smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
622 emacs -fn "-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
623 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
624
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
625 @noindent
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
626 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
627
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
628 @smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
629 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
630 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
631
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
632 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
633
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
634 @smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
635 -@var{maker}-@var{family}-@var{weight}-@var{slant}-@var{widthtype}-@var{style}@dots{}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
636 @dots{}-@var{pixels}-@var{height}-@var{horiz}-@var{vert}-@var{spacing}-@var{width}-@var{charset}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
637 @end smallexample
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
638
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
639 @table @var
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
640 @item maker
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
641 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
642 @item family
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
643 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
644 @item weight
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
645 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
646 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
647 @item slant
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
648 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
649 @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
650 @item widthtype
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
651 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
652 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
653 @item style
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
654 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
655 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
656 @item pixels
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
657 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
658 @item height
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
659 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
660 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
661 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
662 @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
663 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
664 @item horiz
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
665 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
666 which the font is intended.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
667 @item vert
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
668 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
669 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
670 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
671 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
672 @item spacing
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
673 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
674 (character cell).
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
675 @item width
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
676 This is the average character width, in pixels, multiplied by ten.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
677 @item charset
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
678 This is the character set that the font depicts.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
679 Normally you should use @samp{iso8859-1}.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
680 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
681
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
682 @cindex listing system fonts
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
683 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
684 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
685 @samp{m} or @samp{c} in the @var{spacing} field of the long name is a
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
686 fixed-width font. Here's how to use the @code{xlsfonts} program to
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
687 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
688
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
689 @example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
690 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
691 xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-m*'
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
692 xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-c*'
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
693 @end example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
694
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
695 @noindent
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
696 To see what a particular font looks like, use the @code{xfd} command.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
697 For example:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
698
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
699 @example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
700 xfd -fn 6x13
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
701 @end example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
702
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
703 @noindent
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
704 displays the entire font @samp{6x13}.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
705
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
706 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
707 (@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
708 (@pxref{Faces}).
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
709
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
710 @node Colors X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
711 @appendixsec Window Color Options
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
712 @cindex color of window
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
713 @cindex text colors, from command line
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
714
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
715 @findex list-colors-display
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
716 @cindex available colors
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
717 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
718 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
719 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
720 @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
721 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
722 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
723 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
724 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
725 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
726
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
727 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
728
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
729 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
730 @item -fg @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
731 @opindex -fg
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
732 @itemx --foreground-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
733 @opindex --foreground-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
734 @cindex foreground color, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
735 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
736 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
737 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
738 @item -bg @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
739 @opindex -bg
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
740 @itemx --background-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
741 @opindex --background-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
742 @cindex background color, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
743 Specify the background color.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
744 @item -bd @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
745 @opindex -bd
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
746 @itemx --border-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
747 @opindex --border-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
748 @cindex border color, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
749 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
750 @item -cr @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
751 @opindex -cr
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
752 @itemx --cursor-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
753 @opindex --cursor-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
754 @cindex cursor color, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
755 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
756 @item -ms @var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
757 @opindex -ms
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
758 @itemx --mouse-color=@var{color}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
759 @opindex --mouse-color
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
760 @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
761 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
762 @item -r
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
763 @opindex -r
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
764 @itemx -rv
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
765 @opindex -rv
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
766 @itemx --reverse-video
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
767 @opindex --reverse-video
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
768 @cindex reverse video, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
769 Reverse video---swap the foreground and background colors.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
770 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
771
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
772 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
773 enter:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
774
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
775 @example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
776 emacs -ms coral -cr 'slate blue' &
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
777 @end example
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
778
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
779 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
780 @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
781
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
782 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
783 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
784
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
785 @node Window Size X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
786 @appendixsec Options for Window Geometry
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
787 @cindex geometry of Emacs window
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
788 @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
789 @cindex width and height of Emacs frame
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
790
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
791 The @samp{--geometry} option controls the size and position of the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
792 initial Emacs frame. Here is the format for specifying the window
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
793 geometry:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
794
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
795 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
796 @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
797 @opindex -g
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
798 Specify window size @var{width} and @var{height} (measured in character
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
799 columns and lines), and positions @var{xoffset} and @var{yoffset}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
800 (measured in pixels).
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
801
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
802 @item --geometry=@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
803 @opindex --geometry
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
804 This is another way of writing the same thing.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
805 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
806
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
807 @noindent
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
808 @code{@r{@{}+-@r{@}}} means either a plus sign or a minus sign. A plus
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
809 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
810 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
811 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
812 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
813 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
814 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
815
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
816 Emacs uses the same units as @code{xterm} does to interpret the geometry.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
817 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
818 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
819 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
820 @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
821
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
822 Since the mode line and the echo area occupy the last 2 lines of the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
823 frame, the height of the initial text window is 2 less than the height
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
824 specified in your geometry. In non-X-toolkit versions of Emacs, the
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
825 menu bar also takes one line of the specified number. But in the X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
826 toolkit version, the menu bar is additional and does not count against
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
827 the specified height. The tool bar, if present, is also additional.
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 You do not have to specify all of the fields in the geometry
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
830 specification.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
831
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
832 If you omit both @var{xoffset} and @var{yoffset}, the window manager
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
833 decides where to put the Emacs frame, possibly by letting you place
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
834 it with the mouse. For example, @samp{164x55} specifies a window 164
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
835 columns wide, enough for two ordinary width windows side by side, and 55
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
836 lines tall.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
837
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
838 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
839 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
840 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
841 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
842 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
843 @samp{x45} specifies just the height.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
844
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
845 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
846 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
847 @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
848 @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
849 @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
850
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
851 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
852 @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
853 @samp{--geometry} option.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
854
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
855 @node Borders X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
856 @appendixsec Internal and External Borders
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
857 @cindex borders (X Window System)
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
858
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
859 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
860 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
861 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
862 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
863 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
864 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
865
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
866 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
867 @item -ib @var{width}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
868 @opindex -ib
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
869 @itemx --internal-border=@var{width}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
870 @opindex --internal-border
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
871 @cindex border width, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
872 Specify @var{width} as the width of the internal border, in pixels.
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 @item -bw @var{width}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
875 @opindex -bw
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
876 @itemx --border-width=@var{width}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
877 @opindex --border-width
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
878 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
879 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
880
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
881 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
882 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
883 external border.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
884
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
885 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
886 @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
887 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
888 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
889 external border is 2.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
890
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
891 @node Title X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
892 @appendixsec Frame Titles
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
893
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
894 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
895 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
896 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
897 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
898 (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
899 there is more than one frame).
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
900
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
901 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
902 line option:
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
903
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
904 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
905 @item -title @var{title}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
906 @opindex --title
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
907 @itemx --title=@var{title}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
908 @itemx -T @var{title}
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
909 @opindex -T
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
910 @cindex frame title, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
911 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
912 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
913
41374
608e18d9fb18 Fix cross-references to "Resources".
Eli Zaretskii <eliz@gnu.org>
parents: 41369
diff changeset
914 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
915 for the initial Emacs frame.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
916
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
917 @node Icons X
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
918 @appendixsec Icons
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
919 @cindex icons (X Window System)
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
920
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
921 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
922 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
923 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
924 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
925 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
926
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
927 @table @samp
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
928 @item -i
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
929 @opindex -i
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
930 @itemx --icon-type
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
931 @opindex --icon-type
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
932 @cindex Emacs icon, a gnu
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
933 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
934
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
935 @item -iconic
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
936 @opindex --iconic
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
937 @itemx --iconic
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
938 @cindex start iconified, command-line argument
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
939 Start Emacs in iconified state.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
940 @end table
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
941
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
942 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
943 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
944 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
945 rectangle containing the frame's title.
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
946
72709f10af2b Some nodes moved back from xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents: 40652
diff changeset
947 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
948 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
949 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
950 appear until you deiconify it.